From 7d3e02e9645f3be4c46a805036cb88a3b4c76680 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:00:21 +0200 Subject: [PATCH 001/609] Add carriers for 1.7.7 --- .gitignore | 1 + src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/.gitignore b/.gitignore index 8618acfec..e0671cba8 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ ## IDE /.vscode/ +/.idea/ diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts new file mode 100644 index 000000000..81ebe88aa --- /dev/null +++ b/src/versions/1.7.7/pages/BO/carriers/index.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; +import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; + + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; + } +} + +module.exports = new BOCarriersPage(); From c22a76d438d368b8d3b582af6458385462a4ef3e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:17:12 +0200 Subject: [PATCH 002/609] Add condition to main carriers page --- src/pages/BO/shipping/carriers/index.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 12eae1d7c..cfe56273a 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/shipping/carriers'); + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers'); } @@ -13,4 +16,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); +export default requirePage(); \ No newline at end of file From b971701f842cac9a876a19f0ae55743a4dfcd36b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:24:42 +0200 Subject: [PATCH 003/609] Move carriers folder to shipping folder --- src/versions/1.7.7/pages/BO/{ => shipping}/carriers/index.ts | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/versions/1.7.7/pages/BO/{ => shipping}/carriers/index.ts (100%) diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts similarity index 100% rename from src/versions/1.7.7/pages/BO/carriers/index.ts rename to src/versions/1.7.7/pages/BO/shipping/carriers/index.ts From 7f15566fe12f8fe82a9d6a3d51b34320a3494fa2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:11:00 +0200 Subject: [PATCH 004/609] Add 1.7.7 version for addresses create --- src/pages/BO/shipping/carriers/index.ts | 2 +- .../pages/BO/customers/addresses/create.ts | 18 ++++++++++++++++++ .../1.7.7/pages/BO/shipping/carriers/index.ts | 5 ++--- .../pages/BO/customers/addresses/create.ts | 6 ++++-- 4 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/customers/addresses/create.ts diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index cfe56273a..01ef94380 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -16,4 +16,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); \ No newline at end of file +export default requirePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..ab4567b10 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.saveAddressButton = '.form-horizontal button'; + } +} + +module.exports = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 81ebe88aa..49b02fc63 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,7 +1,6 @@ // Import pages -import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; -import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; - +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/develop/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 78f3ce245..1a7c09262 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -49,7 +49,7 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI private readonly customerAddressOtherInput: string; - private readonly saveAddressButton: string; + protected saveAddressButton: string; /** * @constructs @@ -164,4 +164,6 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI } } -module.exports = new BOAddressesCreatePage(); +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; +//module.exports = new BOAddressesCreatePage(); From 83f5452c859ff454095db6a10ab70804b0c21f4c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:13:10 +0200 Subject: [PATCH 005/609] Add condition for addresses page --- src/pages/BO/customers/addresses/create.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 8fb29a5b5..61cf7ee4d 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -1,7 +1,14 @@ import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/customers/addresses/create'); + } return require('@versions/develop/pages/BO/customers/addresses/create'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ From 9d3d0dbfbd6d3a1382c0d93b372858b79201a6c2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 09:51:42 +0200 Subject: [PATCH 006/609] Commit review change suggestions --- src/pages/BO/customers/addresses/create.ts | 2 +- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 +- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 3 ++- src/versions/develop/pages/BO/customers/addresses/create.ts | 1 - 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 61cf7ee4d..65ff0efba 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/customers/addresses/create'); + return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } return require('@versions/develop/pages/BO/customers/addresses/create'); } diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 49b02fc63..26ebad73c 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,6 +1,6 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; -import {BOCarriersPage as BOCarriersPageVersion} from '@versions/develop/pages/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index c818fbec3..55480c5bd 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -376,4 +376,5 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte } } -module.exports = new BOCarriersPage(); +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7c09262..45d98c58f 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -166,4 +166,3 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI const boAddressesCreatePage = new BOAddressesCreatePage(); export {boAddressesCreatePage, BOAddressesCreatePage}; -//module.exports = new BOAddressesCreatePage(); From 6c677c6bd8faabd85b662197d3284cdd9460b82c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 10:49:05 +0200 Subject: [PATCH 007/609] Fix missing element --- src/pages/BO/customers/addresses/create.ts | 2 +- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 65ff0efba..9c648c7b7 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } - return require('@versions/develop/pages/BO/customers/addresses/create'); + return require('@versions/develop/pages/BO/customers/addresses/create').boAddressesCreatePage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index ab4567b10..c9deca0d5 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -11,8 +11,9 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr constructor() { super(); // Header links - this.saveAddressButton = '.form-horizontal button'; + this.saveAddressButton = '.card-footer button.btn-primary'; } } -module.exports = new BOAddressesCreatePage(); +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; From 059714c9c5110a4b105857eeb5afdbe87cb81ee5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:43:42 +0200 Subject: [PATCH 008/609] Add heritage from 8.2 to 1.7.7 --- .../pages/BO/customers/addresses/create.ts | 2 +- .../pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.0/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.1/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.2/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ 5 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.7.8/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.0/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.1/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.2/pages/BO/customers/addresses/create.ts diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index c9deca0d5..47d27a663 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -1,6 +1,6 @@ // Import pages import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; -import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.8/pages/BO/customers/addresses/create'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..d609d3e8a --- /dev/null +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..899aad8e8 --- /dev/null +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..29406bc74 --- /dev/null +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..ae2e6b8b0 --- /dev/null +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; From dad7401896cc88c5a74faf90628e093c88a8d587 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:59:10 +0200 Subject: [PATCH 009/609] Add page title and success message to 1.7.7 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 5 +++++ src/versions/develop/pages/BO/customers/addresses/create.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 47d27a663..1eec763eb 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -10,6 +10,11 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 45d98c58f..561f61ebe 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ import {type Frame, type Page} from '@playwright/test'; * @extends BOBasePage */ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageInterface { - public readonly pageTitleCreate: string; + public pageTitleCreate: string; public readonly pageTitleEdit: string; From 767da4c79f3409e30117b4b6cd4155719e2096f1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 12:11:47 +0200 Subject: [PATCH 010/609] Fix description in jsdocs --- .../1.7.7/pages/BO/customers/addresses/create.ts | 2 +- .../1.7.7/pages/BO/shipping/carriers/index.ts | 9 ++++----- .../1.7.8/pages/BO/customers/addresses/create.ts | 2 +- .../1.7.8/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.0/pages/BO/customers/addresses/create.ts | 2 +- .../8.0/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.1/pages/BO/customers/addresses/create.ts | 2 +- .../8.1/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.2/pages/BO/customers/addresses/create.ts | 2 +- 9 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 src/versions/1.7.8/pages/BO/shipping/carriers/index.ts create mode 100644 src/versions/8.0/pages/BO/shipping/carriers/index.ts create mode 100644 src/versions/8.1/pages/BO/shipping/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 1eec763eb..b3681d58e 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 26ebad73c..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,17 +1,16 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; -import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.8/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in carriers page */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } -module.exports = new BOCarriersPage(); +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts index d609d3e8a..d98e7b4c3 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..72d5416e4 --- /dev/null +++ b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.0/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts index 899aad8e8..9a3d11c97 100644 --- a/src/versions/8.0/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/8.0/pages/BO/shipping/carriers/index.ts b/src/versions/8.0/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..a7398a48d --- /dev/null +++ b/src/versions/8.0/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.1/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts index 29406bc74..9f2c5bc5d 100644 --- a/src/versions/8.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/8.1/pages/BO/shipping/carriers/index.ts b/src/versions/8.1/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..65d1ffd8e --- /dev/null +++ b/src/versions/8.1/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index ae2e6b8b0..1715ace56 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/dev class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); From be5ae29231614cd3256287ae9d6df15c3b125ed7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:13:49 +0200 Subject: [PATCH 011/609] Add '.boCarriersPage' to version requirement --- src/pages/BO/shipping/carriers/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 01ef94380..682eb19e6 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/shipping/carriers'); + return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/shipping/carriers'); + return require('@versions/8.2/pages/BO/shipping/carriers').boCarriersPage; } return require('@versions/develop/pages/BO/shipping/carriers').boCarriersPage; } From 5d432379d4cf03a04c962553d870ca8fd1150a59 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:19:42 +0200 Subject: [PATCH 012/609] Re-add carrier create page link --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 4095ba03dbf804cf05ad493810c1422274750e43 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:36:05 +0200 Subject: [PATCH 013/609] implement version for addresses index --- src/pages/BO/customers/addresses/create.ts | 3 +++ src/pages/BO/customers/addresses/index.ts | 12 +++++++++- .../pages/BO/customers/addresses/create.ts | 18 +++++++-------- .../pages/BO/customers/addresses/index.ts | 23 +++++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.0/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.1/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.2/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/index.ts | 5 ++-- 13 files changed, 144 insertions(+), 33 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/1.7.8/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.0/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.1/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.2/pages/BO/customers/addresses/index.ts diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 9c648c7b7..089a013eb 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -9,6 +9,9 @@ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/customers/addresses/create').boAddressesCreatePage; + } return require('@versions/develop/pages/BO/customers/addresses/create').boAddressesCreatePage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index c5f2e8860..d37ced11b 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -1,8 +1,18 @@ import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesPageInterface { - return require('@versions/develop/pages/BO/customers/addresses'); + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; + } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/customers/addresses').boAddressesPage; + } + return require('@versions/develop/pages/BO/customers/addresses').boAddressesPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index b3681d58e..19dfe39b4 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -2,22 +2,20 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.8/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..16f824136 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -0,0 +1,23 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/1.7.8/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts index d98e7b4c3..e7ac91d0e 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..72b90a5fb --- /dev/null +++ b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.0/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts index 9a3d11c97..cf80b77c1 100644 --- a/src/versions/8.0/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.0/pages/BO/customers/addresses/index.ts b/src/versions/8.0/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..08dd4b929 --- /dev/null +++ b/src/versions/8.0/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.1/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts index 9f2c5bc5d..b37499cda 100644 --- a/src/versions/8.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.1/pages/BO/customers/addresses/index.ts b/src/versions/8.1/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..7ccdf6570 --- /dev/null +++ b/src/versions/8.1/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.2/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 1715ace56..6f856939b 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.2/pages/BO/customers/addresses/index.ts b/src/versions/8.2/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..43a7cd384 --- /dev/null +++ b/src/versions/8.2/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/develop/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/develop/pages/BO/customers/addresses/index.ts b/src/versions/develop/pages/BO/customers/addresses/index.ts index fc3c39a10..8a1c4c3cf 100644 --- a/src/versions/develop/pages/BO/customers/addresses/index.ts +++ b/src/versions/develop/pages/BO/customers/addresses/index.ts @@ -8,7 +8,7 @@ import {type Page} from '@playwright/test'; * @extends BOBasePage */ class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { - public readonly pageTitle: string; + public pageTitle: string; private readonly addNewAddressLink: string; @@ -371,4 +371,5 @@ class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { } } -module.exports = new BOAddressesPage(); +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; From 6b400ba92852f341230d2fb9dabd7818ce1a35ee Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:00:02 +0200 Subject: [PATCH 014/609] Implement orderCreate for few versions --- src/pages/BO/orders/create.ts | 10 ++++++++++ src/versions/1.7.7/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/1.7.8/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.0/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.1/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.2/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/develop/pages/BO/orders/create.ts | 3 ++- 7 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.7.7/pages/BO/orders/create.ts create mode 100644 src/versions/1.7.8/pages/BO/orders/create.ts create mode 100644 src/versions/8.0/pages/BO/orders/create.ts create mode 100644 src/versions/8.1/pages/BO/orders/create.ts create mode 100644 src/versions/8.2/pages/BO/orders/create.ts diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 3daaac442..3fb408ae6 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -1,7 +1,17 @@ import type {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; + } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/orders/create').boOrderCreatePage; + } return require('@versions/develop/pages/BO/orders/create'); } diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts new file mode 100644 index 000000000..c4a28dd79 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts new file mode 100644 index 000000000..f5eb6eceb --- /dev/null +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.0/pages/BO/orders/create.ts b/src/versions/8.0/pages/BO/orders/create.ts new file mode 100644 index 000000000..d44fd66ca --- /dev/null +++ b/src/versions/8.0/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.1/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.1/pages/BO/orders/create.ts b/src/versions/8.1/pages/BO/orders/create.ts new file mode 100644 index 000000000..1aa400344 --- /dev/null +++ b/src/versions/8.1/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.2/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.2/pages/BO/orders/create.ts b/src/versions/8.2/pages/BO/orders/create.ts new file mode 100644 index 000000000..20d5060dc --- /dev/null +++ b/src/versions/8.2/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/develop/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 355180d62..682fb5d0e 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -1284,4 +1284,5 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac } } -module.exports = new BOOrderCreatePage(); +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; From 428ee46dac9f5458f8e0cc2037a59af3f5210583 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:06:21 +0200 Subject: [PATCH 015/609] Add temp log for debug --- src/versions/1.7.7/pages/BO/orders/create.ts | 15 +++++++++++++++ src/versions/develop/pages/BO/orders/create.ts | 4 ++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index c4a28dd79..cda393fd6 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,6 +1,8 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; +import {modPsGdprBoMain} from '../../../../../index'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -10,6 +12,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } + + /** + * Choose addresses in form + * @param page {Page} Browser tab + * @param deliveryAddress {string} Delivery address to choose + * @param invoiceAddress {string} Invoice address to choose + * @returns {Promise} + */ + async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { + console.log(deliveryAddress); + await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); + await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 682fb5d0e..6601b4443 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -149,13 +149,13 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly vouchersTableRowRemoveButton: (row: number) => string; - private readonly deliveryAddressSelect: string; + protected readonly deliveryAddressSelect: string; private readonly deliveryAddressDetails: string; private readonly deliveryAddressEditButton: string; - private readonly invoiceAddressSelect: string; + protected readonly invoiceAddressSelect: string; private readonly invoiceAddressDetails: string; From 030d52ed7c90fee1c64e4f5585c35bc055f26317 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:06:18 +0200 Subject: [PATCH 016/609] Override createOrder function for 1.7.7 version --- src/versions/1.7.7/pages/BO/orders/create.ts | 42 +++++++++++++++---- .../develop/pages/BO/orders/create.ts | 2 +- 2 files changed, 36 insertions(+), 8 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index cda393fd6..3ec04c930 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,4 +1,5 @@ // Import pages +import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; @@ -14,16 +15,43 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea } /** - * Choose addresses in form + * Create order with existing customer * @param page {Page} Browser tab - * @param deliveryAddress {string} Delivery address to choose - * @param invoiceAddress {string} Invoice address to choose + * @param orderToMake {FakerOrder} Order data to create + * @param isNewCustomer {boolean} True if the customer is new * @returns {Promise} */ - async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { - console.log(deliveryAddress); - await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); - await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { + // Choose customer + // If it's a new customer, the creation of customer should be done in test + // with add customer page + if (!isNewCustomer) { + await this.searchCustomer(page, orderToMake.customer.email); + } + + // Choose customer after search or creation + await this.chooseCustomer(page, 1); + + // Add products to carts + for (let i = 0; i < orderToMake.products.length; i++) { + await this.addProductToCart( + page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); + } + + // Choose address + await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); + + // Choose delivery options + await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); + + // Choose payment method + await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); + + // Set order status + await this.setOrderStatus(page, orderToMake.status); + + // Create the order + await this.clickAndWaitForURL(page, this.createOrderButton); } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 6601b4443..d8bf9a927 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -201,7 +201,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderStatusSelect: string; - private readonly createOrderButton: string; + protected readonly createOrderButton: string; private readonly moreActionsDropDownButton: string; From 729179be1d871c70c56d872d262ef06e502b1c4e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:09:59 +0200 Subject: [PATCH 017/609] Remove useless override --- src/versions/1.7.7/pages/BO/orders/create.ts | 40 -------------------- 1 file changed, 40 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 3ec04c930..cf9c32310 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -13,46 +13,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } - - /** - * Create order with existing customer - * @param page {Page} Browser tab - * @param orderToMake {FakerOrder} Order data to create - * @param isNewCustomer {boolean} True if the customer is new - * @returns {Promise} - */ - async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { - // Choose customer - // If it's a new customer, the creation of customer should be done in test - // with add customer page - if (!isNewCustomer) { - await this.searchCustomer(page, orderToMake.customer.email); - } - - // Choose customer after search or creation - await this.chooseCustomer(page, 1); - - // Add products to carts - for (let i = 0; i < orderToMake.products.length; i++) { - await this.addProductToCart( - page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); - } - - // Choose address - await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); - - // Choose delivery options - await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); - - // Choose payment method - await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); - - // Set order status - await this.setOrderStatus(page, orderToMake.status); - - // Create the order - await this.clickAndWaitForURL(page, this.createOrderButton); - } } const boOrderCreatePage = new BOOrderCreatePage(); From bee1c1ba70da77c41228aa3e27613e1438f795f5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:26:02 +0200 Subject: [PATCH 018/609] Override paymentMethodSelect for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index cf9c32310..2f119bf9c 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -12,6 +12,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index d8bf9a927..4dd4cf819 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -177,7 +177,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly giftMessageTextarea: string; - private readonly summaryBlock: string; + protected readonly summaryBlock: string; private readonly totalProducts: string; @@ -193,7 +193,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderMessageTextArea: string; - private readonly paymentMethodSelect: string; + protected paymentMethodSelect: string; private readonly paymentMethodSelectResult: string; From d0db85a7a8b3a8097ee9ad728304a68d7e8a81bb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:23:08 +0200 Subject: [PATCH 019/609] Override setPaymentMethod for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 2f119bf9c..52f6dc443 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,9 +1,8 @@ // Import pages -import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; -import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -import {modPsGdprBoMain} from '../../../../../index'; +// Imports from playwright +import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -16,6 +15,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Summary selectors this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); +/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); + await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); + await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ + } } const boOrderCreatePage = new BOOrderCreatePage(); From 1a58abd077472aa8a165fe934249d92e2565469b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:28:55 +0200 Subject: [PATCH 020/609] Remove unwanted comments --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 52f6dc443..18211c5b2 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -24,9 +24,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); -/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); - await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); - await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ } } From 47091005564bfb7278c21f09947b596db52e1506 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 13:57:15 +0200 Subject: [PATCH 021/609] Move selector override from 1.7.7 to 8.2 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 4 ---- src/versions/8.2/pages/BO/customers/addresses/create.ts | 2 ++ 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 19dfe39b4..07b98b822 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -9,10 +9,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 6f856939b..30719d699 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -9,6 +9,8 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; } } From b6bee4c2468a217f22588fbe59cc9c8b7f9fe285 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:08:00 +0200 Subject: [PATCH 022/609] Move carrier button selector override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- src/versions/1.7.8/pages/BO/shipping/carriers/index.ts | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } diff --git a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts index 72d5416e4..63dbd1084 100644 --- a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 64d3aa8f006d9aa66753920d481f57cfb4477f4a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:13:25 +0200 Subject: [PATCH 023/609] Add carrier requirement for versions below 8.0.0 --- src/pages/BO/shipping/carriers/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 682eb19e6..2f4512d3c 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,9 @@ function requirePage(): BOCarriersPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/shipping/carriers').boCarriersPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers').boCarriersPage; } From 4f5ae14cee481dbc2b7c073f37e8e5dae50a2203 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:20:12 +0200 Subject: [PATCH 024/609] Move adress creation success message from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/customers/addresses/index.ts | 2 -- src/versions/1.7.8/pages/BO/customers/addresses/index.ts | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 16f824136..519ce98b9 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -13,9 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; } } diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts index 72b90a5fb..f5956d78b 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = 'Successful creation.'; } } From 66a59eb0e65d440ab3700d0fd6a226d8487d634b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:21:21 +0200 Subject: [PATCH 025/609] Add requirement for lt 8.0.0 --- src/pages/BO/customers/addresses/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index d37ced11b..435b26b23 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -9,6 +9,9 @@ function requirePage(): BOAddressesPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/customers/addresses').boAddressesPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/customers/addresses').boAddressesPage; } From 101a34da0173f437febe3321d88eae16ae3e4d69 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:56:00 +0200 Subject: [PATCH 026/609] Move order setPaymentMethod override from 1.7.7 to 1.7.8 --- src/pages/BO/orders/create.ts | 3 +++ src/versions/1.7.7/pages/BO/orders/create.ts | 15 --------------- src/versions/1.7.8/pages/BO/orders/create.ts | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 3fb408ae6..4eaf4ba9e 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -9,6 +9,9 @@ function requirePage(): BOOrdersCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/orders/create').boOrderCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/orders/create').boOrderCreatePage; } diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 18211c5b2..c4a28dd79 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,8 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -// Imports from playwright -import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -11,19 +9,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); - - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } - - /** - * Set payment method - * @param page {Page} Browser tab - * @param paymentMethodModuleName {string} Payment method to choose - * @returns {Promise} - */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); } } diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index f5eb6eceb..121b07fa5 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -1,5 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { @@ -9,6 +10,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); } } From a2074b862d0089b421675297616bb901ae9aa1d8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 10:44:58 +0200 Subject: [PATCH 027/609] Add login compatibility for 1.6.1.24 --- src/data/faker/cmsPage.ts | 2 +- src/pages/BO/login/index.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 21 +++++++++++++++++++ .../8.2/pages/BO/shipping/carriers/index.ts | 12 +++++------ .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../develop/pages/BO/searchResults.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 11 files changed, 51 insertions(+), 27 deletions(-) create mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index 9e2cf6c42..dea1cf4a1 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index the page */ + /** @type {boolean} True to index.ts the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index 3db366d5f..d6e03719e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/login').loginPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts new file mode 100644 index 000000000..94bf43565 --- /dev/null +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {LoginPageInterface} from '@interfaces/BO/login'; +import {LoginPage} from '@versions/1.7.2/pages/BO/login'; + +/** + * Bo login page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOLoginVersion extends LoginPage implements LoginPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on login page + */ + constructor() { + super(); + } +} + +module.exports = new BOLoginVersion(); + diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 55480c5bd..782602a78 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 66053f27a..937e704b0 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 51c6ca878..ca7855f3c 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 449d1b95e..9e46a7b31 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index 60afa6096..ac17c1737 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index a87f8bdd7..774b69fff 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index" + * Click "Add missing products to the index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index" + * Click "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index" + * Click on the cron jon link for "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 561ce1661..452f7ad9d 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index) is added to a wishlist + * Check if a product (based on its index.ts) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index 7eff3d229..4be54bac9 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 0957718ef34ee7e5a9f0e177f269d4b01c1dea12 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:26:10 +0200 Subject: [PATCH 028/609] Remove unwanted changes --- src/data/faker/cmsPage.ts | 2 +- src/versions/1.6.1.24/pages/BO/login/index.ts | 9 ++++----- src/versions/1.7.7/pages/BO/orders/create.ts | 8 ++++---- src/versions/1.7.8/pages/BO/orders/create.ts | 20 +++++++++---------- src/versions/8.0/pages/BO/orders/create.ts | 8 ++++---- src/versions/8.1/pages/BO/orders/create.ts | 8 ++++---- src/versions/8.2/pages/BO/orders/create.ts | 8 ++++---- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 13 files changed, 50 insertions(+), 51 deletions(-) diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index dea1cf4a1..9e2cf6c42 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index.ts the page */ + /** @type {boolean} True to index the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts index 94bf43565..fbb75adbe 100644 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -8,14 +8,13 @@ import {LoginPage} from '@versions/1.7.2/pages/BO/login'; * @extends ProductsPage */ class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on login page */ - constructor() { - super(); - } + constructor() { + super(); + } } module.exports = new BOLoginVersion(); - diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index c4a28dd79..13a686d06 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index 121b07fa5..16725be4c 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -4,26 +4,26 @@ import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } - /** + /** * Set payment method * @param page {Page} Browser tab * @param paymentMethodModuleName {string} Payment method to choose * @returns {Promise} */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); - } + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.0/pages/BO/orders/create.ts b/src/versions/8.0/pages/BO/orders/create.ts index d44fd66ca..9d3bd0ca6 100644 --- a/src/versions/8.0/pages/BO/orders/create.ts +++ b/src/versions/8.0/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.1/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.1/pages/BO/orders/create.ts b/src/versions/8.1/pages/BO/orders/create.ts index 1aa400344..eb94b9e65 100644 --- a/src/versions/8.1/pages/BO/orders/create.ts +++ b/src/versions/8.1/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.2/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.2/pages/BO/orders/create.ts b/src/versions/8.2/pages/BO/orders/create.ts index 20d5060dc..b3c5dced7 100644 --- a/src/versions/8.2/pages/BO/orders/create.ts +++ b/src/versions/8.2/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/develop/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 937e704b0..66053f27a 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index ca7855f3c..51c6ca878 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index ac17c1737..60afa6096 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index 774b69fff..a87f8bdd7 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index.ts" + * Click "Add missing products to the index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index.ts" + * Click "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index.ts" + * Click on the cron jon link for "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 452f7ad9d..561ce1661 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index.ts) is added to a wishlist + * Check if a product (based on its index) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index 4be54bac9..7eff3d229 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From edd672eb6d9ceed6757f6809d5c686b9605901fe Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:28:06 +0200 Subject: [PATCH 029/609] Remove unwanted changes part2 --- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 782602a78..5df9893b2 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index. in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { From 2c2e27df4a6e725de864362344e69ebf923773aa Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:30:23 +0200 Subject: [PATCH 030/609] Remove unwanted changes part3 --- src/versions/develop/pages/BO/searchResults.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 9e46a7b31..449d1b95e 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From 4d2625bd34ca9dec2cbb99fba08a6be999fb6976 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:52:13 +0200 Subject: [PATCH 031/609] Add compat requirement in pages --- src/pages/BO/customers/addresses/create.ts | 3 +++ src/pages/BO/customers/addresses/index.ts | 3 +++ src/pages/BO/orders/create.ts | 3 +++ src/pages/BO/orders/index.ts | 3 +++ src/pages/BO/shipping/carriers/create.ts | 5 ++++- src/pages/BO/shipping/carriers/index.ts | 3 +++ .../pages/BO/customers/addresses/create.ts | 18 ++++++++++++++++ .../pages/BO/customers/addresses/index.ts | 21 +++++++++++++++++++ .../pages/BO/login/index.ts | 0 src/versions/1.6.1/pages/BO/orders/create.ts | 16 ++++++++++++++ src/versions/1.6.1/pages/BO/orders/index.ts | 21 +++++++++++++++++++ .../1.6.1/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++ 12 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.6.1/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/1.6.1/pages/BO/customers/addresses/index.ts rename src/versions/{1.6.1.24 => 1.6.1}/pages/BO/login/index.ts (100%) create mode 100644 src/versions/1.6.1/pages/BO/orders/create.ts create mode 100644 src/versions/1.6.1/pages/BO/orders/index.ts create mode 100644 src/versions/1.6.1/pages/BO/shipping/carriers/index.ts diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 089a013eb..5dec8e24a 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/customers/addresses/create').boAddressesCreatePage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index 435b26b23..af6334473 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/customers/addresses').boAddressesPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; } diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 4eaf4ba9e..9a78c45ac 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/orders/create').boOrderCreatePage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; } diff --git a/src/pages/BO/orders/index.ts b/src/pages/BO/orders/index.ts index f00f62dba..904981a61 100644 --- a/src/pages/BO/orders/index.ts +++ b/src/pages/BO/orders/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/orders').ordersPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/orders').ordersPage; } diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a4de29cb8..a6797ab73 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,8 +6,11 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/shipping/carriers/create'); + return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } return require('@versions/develop/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 2f4512d3c..126e21048 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers').boCarriersPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..e2c2aaf13 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..d69e8655b --- /dev/null +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -0,0 +1,21 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/1.7.7/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1/pages/BO/login/index.ts similarity index 100% rename from src/versions/1.6.1.24/pages/BO/login/index.ts rename to src/versions/1.6.1/pages/BO/login/index.ts diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts new file mode 100644 index 000000000..0e5f5f09d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.7/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/orders/index.ts b/src/versions/1.6.1/pages/BO/orders/index.ts new file mode 100644 index 000000000..7df0e106d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/orders/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {BOOrdersPageInterface} from '@interfaces/BO/orders'; +import {OrdersPage} from '@versions/1.7.7/pages/BO/orders/index'; + +/** + * Orders page, contains functions that can be used on the page + * @class + * @extends OrdersPage + */ +class OrdersPageVersion extends OrdersPage implements BOOrdersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const ordersPage = new OrdersPageVersion(); +export {ordersPage, OrdersPageVersion as OrdersPage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..8d243023d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.7/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; From 1b60b152ddaa97899de82527800c1ab29a29ea5a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 14:21:18 +0200 Subject: [PATCH 032/609] Add version to utils --- src/utils/test.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/utils/test.ts b/src/utils/test.ts index ee517f52a..0c9878771 100644 --- a/src/utils/test.ts +++ b/src/utils/test.ts @@ -50,7 +50,8 @@ export default { const version: string = process.env.PS_VERSION; return version - .replace(/\.x$/, '.99') - .replace(/^1\.7\./, '7.'); + .replace(/\.x$/, '.99') + .replace(/^1\.7\./, '7.') + .replace(/^1\.6\./, '6.'); }, }; From 9a6375d21fb9137f2a726e23adfe2610c3039975 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:00:38 +0200 Subject: [PATCH 033/609] Remove temporary carriersCreate --- src/pages/BO/shipping/carriers/create.ts | 3 --- src/versions/develop/pages/BO/dashboard/index.ts | 3 ++- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a6797ab73..4adcd9105 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; - } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index c5ea467d9..949ede014 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -754,4 +754,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -module.exports = new Dashboard(); +const DashboardPage = new Dashboard(); +export {DashboardPage, Dashboard}; From e433003ebc7d271a05c2ec5318b14871118b7c79 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:09:12 +0200 Subject: [PATCH 034/609] Remove temporary login require --- src/pages/BO/login/index.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index d6e03719e..3db366d5f 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/login').loginPage; - } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } From 2fd0d6c65195a7fc69502bbf0b4f14a6b55a1860 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:11:44 +0200 Subject: [PATCH 035/609] Add lt for version under 9.0.0 --- src/pages/BO/dashboard/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 03262435d..1822ca588 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -6,7 +6,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { - if (semver.gte(psVersion, '0.0.0')) { + if (semver.lt(psVersion, '9.0.0')) { return require('@versions/develop/pages/BO/dashboard'); } return require('@versions/develop/pages/BO/dashboard'); From 0a6d169a39b21c49800e4ab091e98ffde572a7df Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:26:56 +0200 Subject: [PATCH 036/609] Try require 8.2 on dashboard 1.6 --- src/pages/BO/dashboard/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 1822ca588..1bca06e05 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/develop/pages/BO/dashboard'); + return require('@versions/8.2/pages/BO/dashboard'); } return require('@versions/develop/pages/BO/dashboard'); } From 3f3efd08ef4a92487b5c78759b3c919e59789092 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:35:51 +0200 Subject: [PATCH 037/609] Add require for dashboardPage under 9.0.0 --- src/pages/BO/dashboard/index.ts | 2 +- src/pages/BO/login/index.ts | 2 +- src/versions/develop/pages/BO/dashboard/index.ts | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 1bca06e05..59db7e489 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/dashboard'); + return require('@versions/develop/pages/BO/dashboard').dashboardPage; } return require('@versions/develop/pages/BO/dashboard'); } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index 3db366d5f..ab2e9932f 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -13,7 +13,7 @@ function requirePage(): LoginPageInterface { return require('@versions/1.7.8/pages/BO/login').loginPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.1/pages/BO/login').loginPage; + return require('@versions/8.2/pages/BO/login').loginPage; } return require('@versions/develop/pages/BO/login').loginPage; } diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 949ede014..fb526f500 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -754,5 +754,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const DashboardPage = new Dashboard(); -export {DashboardPage, Dashboard}; +const dashboardPage = new Dashboard(); +export {dashboardPage, Dashboard}; From cb4704f7ce67d22e432533b9fbc89ce90358ae0c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:58:33 +0200 Subject: [PATCH 038/609] Try implementes carriers link to 1.6.1 --- .../1.6.1/pages/BO/dashboard/index.ts | 21 +++++++++++++++++++ .../develop/pages/BO/dashboard/index.ts | 4 ++-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 src/versions/1.6.1/pages/BO/dashboard/index.ts diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts new file mode 100644 index 000000000..84977cc95 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -0,0 +1,21 @@ +import {DashboardPageInterface} from '@interfaces/BO/dashboard'; +import {DashboardPage as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; + + +// @ts-ignore +class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { + private shippingLink: string; + private carriersLink: string; + /** + * @constructs + * Setting up titles and selectors to use on dashboard page + */ + constructor() { + super(); + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; + this.carriersLink = '#subtab-AdminCarriers'; + } +} + +module.exports = new DashboardPage(); diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index fb526f500..949ede014 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -754,5 +754,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const dashboardPage = new Dashboard(); -export {dashboardPage, Dashboard}; +const DashboardPage = new Dashboard(); +export {DashboardPage, Dashboard}; From 75d7cf02b486574046ec7e045f83fbbaa2770ff6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:16:18 +0200 Subject: [PATCH 039/609] Correctly implementes Dashboard --- src/pages/BO/BOBasePage.ts | 6 +++--- src/pages/BO/dashboard/index.ts | 3 +++ src/versions/1.6.1/pages/BO/dashboard/index.ts | 13 +++++++------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index b7754d00d..cf5b02df4 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -155,11 +155,11 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly linkWidgetLink: string; - public readonly shippingLink: string; + public shippingLink: string; - public readonly carriersLink: string; + public carriersLink: string; - public readonly shippingPreferencesLink: string; + public shippingPreferencesLink: string; public readonly paymentParentLink: string; diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 59db7e489..01e3bfa7c 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/dashboard').dashboardPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/develop/pages/BO/dashboard').dashboardPage; } diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 84977cc95..a56965d2c 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -1,11 +1,12 @@ -import {DashboardPageInterface} from '@interfaces/BO/dashboard'; -import {DashboardPage as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; +import type {DashboardPageInterface} from '@interfaces/BO/dashboard'; +import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; - -// @ts-ignore +/** + * Bo dashboard page, contains functions that can be used on the page + * @class + * @extends DashboardPage + */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { - private shippingLink: string; - private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page From da9bd95bf9fd8aeeb708f1f6ca99155be29170de Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:21:09 +0200 Subject: [PATCH 040/609] Correctly require --- src/pages/BO/dashboard/index.ts | 4 ++-- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 ++- src/versions/develop/pages/BO/dashboard/index.ts | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 01e3bfa7c..59160e2ac 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/dashboard').dashboardPage; + return require('@versions/1.6.1/pages/BO/dashboard').boDashboardPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/develop/pages/BO/dashboard').dashboardPage; + return require('@versions/develop/pages/BO/dashboard').boDashboardPage; } return require('@versions/develop/pages/BO/dashboard'); } diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index a56965d2c..1cf37ea1a 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -19,4 +19,5 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa } } -module.exports = new DashboardPage(); +const boDashboardPage = new DashboardPage(); +export {boDashboardPage, DashboardPage}; diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 949ede014..9a35c4cfa 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -754,5 +754,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const DashboardPage = new Dashboard(); -export {DashboardPage, Dashboard}; +const boDashboardPage = new Dashboard(); +export {boDashboardPage, Dashboard}; From d1beff1b0030d72ded068184d6ff3ad51ad384f6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:45:27 +0200 Subject: [PATCH 041/609] Correctly export carrierCreate from 8.2 --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 0ee4b497b..1aecaf958 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -222,4 +222,5 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr } } -module.exports = new BOCarriersCreatePage(); +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; From 4956667e7808dc9e77d5e287ee3834b7f965f52e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:09:49 +0200 Subject: [PATCH 042/609] Override goToAddNewCarrier for 1.6 versions --- .../1.6.1/pages/BO/shipping/carriers/create.ts | 12 ++++++++++++ .../1.6.1/pages/BO/shipping/carriers/index.ts | 14 ++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/shipping/carriers/create.ts diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts new file mode 100644 index 000000000..1583b0fe7 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts @@ -0,0 +1,12 @@ +import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; +import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; + +class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { + constructor() { + super(); + + } +} + +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts index 8d243023d..e6034ed4b 100644 --- a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts @@ -1,5 +1,6 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import type {Page} from '@playwright/test'; import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.7/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { @@ -10,6 +11,19 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte constructor() { super(); } + + /* +Methods + */ + /** + * Go to add new carrier page + * @param page {Page} Browser tab + * @returns {Promise} + */ + async goToAddNewCarrierPage(page: Page): Promise { + await this.clickAndWaitForURL(page, this.addNewCarrierLink); + await page.locator('#configuration_form .btn').click(); + } } const boCarriersPage = new BOCarriersPage(); From 8ad5bac1036c72bd12c0a9df8fe8f5a4bff7f0ab Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:18:12 +0200 Subject: [PATCH 043/609] Override CustomerParentLink in 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index cf5b02df4..636d862ea 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -115,7 +115,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly stocksLink: string; - public readonly customersParentLink: string; + public customersParentLink: string; public readonly customersLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1cf37ea1a..7b6b3b9e4 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,6 +13,8 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; this.carriersLink = '#subtab-AdminCarriers'; From a67444943adc0a295f9e0be9dc3edd19b5c0df9d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:24:11 +0200 Subject: [PATCH 044/609] Override addNewAddress link for 1.6 --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 ++ src/versions/develop/pages/BO/customers/addresses/index.ts | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d69e8655b..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -14,6 +14,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI constructor() { super(); this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + // Header links + this.addNewAddressLink = '#page-header-desc-address-new_address'; } } diff --git a/src/versions/develop/pages/BO/customers/addresses/index.ts b/src/versions/develop/pages/BO/customers/addresses/index.ts index 8a1c4c3cf..7e7bd3a1c 100644 --- a/src/versions/develop/pages/BO/customers/addresses/index.ts +++ b/src/versions/develop/pages/BO/customers/addresses/index.ts @@ -10,7 +10,7 @@ import {type Page} from '@playwright/test'; class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { public pageTitle: string; - private readonly addNewAddressLink: string; + protected addNewAddressLink: string; private readonly addressGridPanel: string; From 07f5912c83141332fa61fd392dab870e8f537520 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:27:17 +0200 Subject: [PATCH 045/609] Override addNewAddress page title for 1.6 --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..3361873ce 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; } From cefd29076a7066f3f5150a12ee38ca0cca03f2f6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:49:19 +0200 Subject: [PATCH 046/609] Move title override to correct page --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 1 + src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index e2c2aaf13..b20337e3e 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -9,6 +9,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 3361873ce..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; } From 575cfea3725afa7bb8057d50c7e9fcd1260725f0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:00:10 +0200 Subject: [PATCH 047/609] Override newAddress form selectors --- .../pages/BO/customers/addresses/create.ts | 18 ++++++++-- .../pages/BO/customers/addresses/create.ts | 36 +++++++++---------- 2 files changed, 34 insertions(+), 20 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index b20337e3e..ecf204160 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -10,8 +10,22 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr constructor() { super(); this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; + + // Selectors + this.customerEmailInput = '#email'; + this.customerAddressdniInput = '#dni'; + this.customerAddressAliasInput = '#alias'; + this.customerAddressFirstNameInput = '#firstname'; + this.customerLastNameInput = '#lastname'; + this.customerAddressCompanyInput = '#company'; + this.customerAddressVatNumberInput = '#vat_number'; + this.customerAddressInput = '#address1'; + this.customerAddressPostCodeInput = '#postcode'; + this.customerSecondAddressInput = '#address2'; + this.customerAddressCityInput = '#city'; + this.customerAddressCountrySelect = '#id_country'; + this.customerAddressPhoneInput = '#phone'; + this.saveAddressButton = '#address_form_submit_btn'; } } diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 561f61ebe..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -13,41 +13,41 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI public readonly pageTitleEdit: string; - private readonly customerEmailInput: string; + protected customerEmailInput: string; - private readonly customerAddressdniInput: string; + protected customerAddressdniInput: string; - private readonly customerAddressAliasInput: string; + protected customerAddressAliasInput: string; - private readonly customerAddressFirstNameInput: string; + protected customerAddressFirstNameInput: string; - private readonly customerLastNameInput: string; + protected customerLastNameInput: string; - private readonly customerAddressCompanyInput: string; + protected customerAddressCompanyInput: string; - private readonly customerAddressVatNumberInput: string; + protected customerAddressVatNumberInput: string; - private readonly customerAddressInput: string; + protected customerAddressInput: string; - private readonly customerAddressPostCodeInput: string; + protected customerAddressPostCodeInput: string; - private readonly customerSecondAddressInput: string; + protected customerSecondAddressInput: string; - private readonly customerAddressCityInput: string; + protected customerAddressCityInput: string; - private readonly customerAddressCountrySelect: string; + protected customerAddressCountrySelect: string; - private readonly customerAddressCountryOption: string; + protected customerAddressCountryOption: string; - private readonly customerAddressStateSelect: string; + protected customerAddressStateSelect: string; - private readonly searchStateInput: string; + protected searchStateInput: string; - private readonly searchResultState: string; + protected searchResultState: string; - private readonly customerAddressPhoneInput: string; + protected customerAddressPhoneInput: string; - private readonly customerAddressOtherInput: string; + protected customerAddressOtherInput: string; protected saveAddressButton: string; From 0754528fb516a09a5e33ac42155556bd486208c3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:59:14 +0200 Subject: [PATCH 048/609] Override createEditAdress --- .../pages/BO/customers/addresses/create.ts | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..1a7f262a6 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,6 +2,8 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; +import testContext from '@utils/test'; +import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -101,15 +103,18 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { + const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); + if (semver.gt(psVersion, '7.0.0')) { + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); + } } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From f94ba46dfccf6c2da29271f40b00ca73e0fcb2c7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:04:18 +0200 Subject: [PATCH 049/609] Total override createEditAddress for 1.6 --- .../pages/BO/customers/addresses/create.ts | 56 +++++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 19 +++---- 2 files changed, 63 insertions(+), 12 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index ecf204160..f264d4fcf 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -1,8 +1,13 @@ // Import pages +import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import type {Frame, Page} from '@playwright/test'; +import testContext from '@utils/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; +import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + private readonly customerAddressMobilePhoneInput: string; /** * @constructs * Setting up texts and selectors to use in addresses create page @@ -25,8 +30,59 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr this.customerAddressCityInput = '#city'; this.customerAddressCountrySelect = '#id_country'; this.customerAddressPhoneInput = '#phone'; + this.customerAddressMobilePhoneInput = '#phone_mobile'; this.saveAddressButton = '#address_form_submit_btn'; } + + /** + * Fill form for add/edit address + * @param page {Frame|Page} Browser tab + * @param addressData {FakerAddress} Data to set on new address form + * @param save {boolean} True if we need to save the new address, false if not + * @param waitForNavigation {boolean} True if we need to wait for navigation after save, false if not + * @returns {Promise} + */ + async createEditAddress( + page: Frame|Page, + addressData: FakerAddress, + save: boolean = true, + waitForNavigation: boolean = true, + ): Promise { + if (await this.elementVisible(page, this.customerEmailInput, 2000)) { + await this.setValue(page, this.customerEmailInput, addressData.email); + } + await this.setValue(page, this.customerAddressdniInput, addressData.dni); + await this.setValue(page, this.customerAddressAliasInput, addressData.alias); + await this.setValue(page, this.customerAddressFirstNameInput, addressData.firstName); + await this.setValue(page, this.customerLastNameInput, addressData.lastName); + await this.setValue(page, this.customerAddressCompanyInput, addressData.company); + await this.setValue(page, this.customerAddressVatNumberInput, addressData.vatNumber); + await this.setValue(page, this.customerAddressInput, addressData.address); + await this.setValue(page, this.customerSecondAddressInput, addressData.secondAddress); + await this.setValue(page, this.customerAddressPostCodeInput, addressData.postalCode); + await this.setValue(page, this.customerAddressCityInput, addressData.city); + await this.selectByVisibleText(page, this.customerAddressCountrySelect, addressData.country); + await this.setValue(page, this.customerAddressPhoneInput, addressData.phone); + await this.setValue(page, this.customerAddressMobilePhoneInput, addressData.phone); + await this.setValue(page, this.customerAddressOtherInput, addressData.other); + + if (await this.elementVisible(page, this.customerAddressStateSelect, 1000)) { + await page.locator(this.customerAddressStateSelect).click(); + await this.setValue(page, this.searchStateInput, addressData.state); + await this.waitForSelectorAndClick(page, this.searchResultState); + } + + // Save and return successful message + if (save) { + if (waitForNavigation) { + return this.saveAddress(page); + } + + await page.locator(this.saveAddressButton).click(); + } + + return null; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7f262a6..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,8 +2,6 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; -import testContext from '@utils/test'; -import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -103,18 +101,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { - const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if (semver.gt(psVersion, '7.0.0')) { - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); - } + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From 2cdcc0776cb95324637371f82019ac726a5ef891 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:07:47 +0200 Subject: [PATCH 050/609] Add missing locator --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index f264d4fcf..3120c6f1b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -2,9 +2,7 @@ import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import type {Frame, Page} from '@playwright/test'; -import testContext from '@utils/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; -import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; @@ -31,6 +29,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr this.customerAddressCountrySelect = '#id_country'; this.customerAddressPhoneInput = '#phone'; this.customerAddressMobilePhoneInput = '#phone_mobile'; + this.customerAddressOtherInput = '#other'; this.saveAddressButton = '#address_form_submit_btn'; } From 25e124abad6390b7efb330eebfd003897b034206 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:16:44 +0200 Subject: [PATCH 051/609] Update alert block locators --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 3 +++ src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 3120c6f1b..f17aa661f 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,6 +12,9 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; + // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Selectors diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..31e2ab2d8 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,6 +16,11 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; } } From 8edd9872112da66d820a3403d5446a2db0f82bad Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:18:39 +0200 Subject: [PATCH 052/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 2 -- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index f17aa661f..02e0f72d0 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,8 +12,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 31e2ab2d8..d8e33b18d 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From 5c91da2891efef26d09d4c80667a249f47edb035 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:27:44 +0200 Subject: [PATCH 053/609] Update success block --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d8e33b18d..c7f3a47f4 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,8 +13,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; @@ -23,6 +21,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.alertTextBlock = `${this.alertBlock}`; this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From 296d6764ea91fde4464d167a146df0029dbd4750 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:32:38 +0200 Subject: [PATCH 054/609] Override save and getSuccessTxt --- .../pages/BO/customers/addresses/create.ts | 28 ++++++++++++++++++- .../pages/BO/customers/addresses/index.ts | 6 ---- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 02e0f72d0..0c53c68d2 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -14,7 +14,12 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr super(); // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; - + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; // Selectors this.customerEmailInput = '#email'; this.customerAddressdniInput = '#dni'; @@ -83,6 +88,27 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr return null; } + + /** + * Save address + * @param page {Frame|Page} Browser tab + * @returns {Promise} + */ + async saveAddress(page: Frame|Page): Promise { + await this.clickAndWaitForURL(page, this.saveAddressButton); + return this.getAlertSuccessBlockParagraphContent(page); + } + + /** + * Get text content of alert success block paragraph + * @param page {Frame|Page} Browser tab + * @param timeout + * @return {Promise} + */ + async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c7f3a47f4..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,12 +16,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; - // Alert Text - this.alertBlock = 'div.alert'; - this.alertTextBlock = `${this.alertBlock}`; - this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; - this.alertSuccessBlock = `${this.alertBlock}.alert-success`; - this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From 6998ceff36cd55789933c9f3cfb365643b663e23 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:35:20 +0200 Subject: [PATCH 055/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..c02e580f6 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = '× Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From 556a98b99a305f17f6acb7db48466cc0cf0569ff Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:09:24 +0200 Subject: [PATCH 056/609] Add OrderParentLink for 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 636d862ea..4a68e315f 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -85,7 +85,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte private readonly dashboardLink: string; - public readonly ordersParentLink: string; + public ordersParentLink: string; public readonly ordersLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 7b6b3b9e4..1d40d1dd1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,11 +13,12 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; // Customers this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; - this.carriersLink = '#subtab-AdminCarriers'; } } From 85d12b551cf971d10062725d775bfba30b231cd7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:17:31 +0200 Subject: [PATCH 057/609] Override newOrderPage link for 1.6 --- src/versions/1.6.1/pages/BO/orders/index.ts | 4 +++- src/versions/develop/pages/BO/orders/index.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/index.ts b/src/versions/1.6.1/pages/BO/orders/index.ts index 7df0e106d..764cef793 100644 --- a/src/versions/1.6.1/pages/BO/orders/index.ts +++ b/src/versions/1.6.1/pages/BO/orders/index.ts @@ -1,6 +1,6 @@ // Import pages import type {BOOrdersPageInterface} from '@interfaces/BO/orders'; -import {OrdersPage} from '@versions/1.7.7/pages/BO/orders/index'; +import {OrdersPage} from '@versions/1.7.7/pages/BO/orders'; /** * Orders page, contains functions that can be used on the page @@ -14,6 +14,8 @@ class OrdersPageVersion extends OrdersPage implements BOOrdersPageInterface { */ constructor() { super(); + // Link + this.createNewOrderButton = '#page-header-desc-order-new_order'; } } diff --git a/src/versions/develop/pages/BO/orders/index.ts b/src/versions/develop/pages/BO/orders/index.ts index 16812b348..885d93ccd 100644 --- a/src/versions/develop/pages/BO/orders/index.ts +++ b/src/versions/develop/pages/BO/orders/index.ts @@ -13,7 +13,7 @@ import type {Page} from 'playwright'; class OrdersPage extends BOBasePage implements BOOrdersPageInterface { public readonly pageTitle: string; - private readonly createNewOrderButton: string; + protected createNewOrderButton: string; protected gridPanel: string; From 2a936946d1a187106d368672c184c3568eac67fe Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:24:23 +0200 Subject: [PATCH 058/609] Add order customer searh selector --- src/versions/1.6.1/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 0e5f5f09d..b28c33593 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -9,6 +9,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + // Customer selectors + this.addCustomerLink = 'a.fancybox_customer'; + this.customerSearchInput = '#customer'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 4dd4cf819..06e739ac2 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -31,11 +31,11 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly closeFancyBoxIframe: string; - private readonly addCustomerLink: string; + protected addCustomerLink: string; - private readonly customerSearchInput: string; + protected customerSearchInput: string; - private readonly customerSearchLoadingNoticeBlock: string; + protected customerSearchLoadingNoticeBlock: string; private readonly customerSearchEmptyResultBlock: string; From 911ece8f214ed4ce84a4ce1218047ffb52de517c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:07:11 +0200 Subject: [PATCH 059/609] Override order customer selection locators --- src/versions/1.6.1/pages/BO/orders/create.ts | 8 ++++++++ src/versions/develop/pages/BO/orders/create.ts | 12 ++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index b28c33593..cd96e3d9e 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -12,6 +12,14 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Customer selectors this.addCustomerLink = 'a.fancybox_customer'; this.customerSearchInput = '#customer'; + + // Full results + this.customerSearchFullResultsBlock = '#customers'; + this.customerResultsBlock = `${this.customerSearchFullResultsBlock}`; + this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard(${pos})`; + this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; + this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; + this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 06e739ac2..d5bc1acb1 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -41,17 +41,17 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly customerSearchEmptyResultParagraphe: string; - private readonly customerSearchFullResultsBlock: string; + protected customerSearchFullResultsBlock: string; - private readonly customerResultsBlock: string; + protected customerResultsBlock: string; - private readonly customerCardBlock: (pos: number) => string; + protected customerCardBlock: (pos: number) => string; - private readonly customerCardNameTitle: (pos: number) => string; + protected customerCardNameTitle: (pos: number) => string; - private readonly customerCardBody: (pos: number) => string; + protected customerCardBody: (pos: number) => string; - private readonly customerCardChooseButton: (pos: number) => string; + protected customerCardChooseButton: (pos: number) => string; private readonly customerCardDetailButton: string; From 5700a10110ba7e677a5a0072fbd02ab9b0e91f3b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:10:29 +0200 Subject: [PATCH 060/609] Edit nth-child for customer card selection --- src/versions/1.6.1/pages/BO/orders/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index cd96e3d9e..690f22c38 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -16,7 +16,7 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Full results this.customerSearchFullResultsBlock = '#customers'; this.customerResultsBlock = `${this.customerSearchFullResultsBlock}`; - this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard(${pos})`; + this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard:nth-child(${pos})`; this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; From e6fc9a0921311c4f649b7f5662034c22830bae0a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:39:07 +0200 Subject: [PATCH 061/609] Override checkoutHistoryBlock locator for 1.6 --- src/versions/1.6.1/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 690f22c38..6b0014238 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -20,6 +20,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; + + // Checkout history selectors + this.checkoutHistoryBlock = '#carts'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index d5bc1acb1..dc9f1c7bd 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -55,7 +55,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly customerCardDetailButton: string; - private readonly checkoutHistoryBlock: string; + protected checkoutHistoryBlock: string; private readonly customerCartsTable: string; From 6453aeb5021852e35119cedb326d3c07c2338654 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 30 Apr 2025 14:54:42 +0200 Subject: [PATCH 062/609] Add develop to require for lt than 9.0 --- src/pages/BO/login/index.ts | 2 +- src/versions/1.6.1/pages/BO/orders/create.ts | 2 ++ src/versions/develop/pages/BO/orders/create.ts | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index ab2e9932f..ed20f001e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -13,7 +13,7 @@ function requirePage(): LoginPageInterface { return require('@versions/1.7.8/pages/BO/login').loginPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/login').loginPage; + return require('@versions/develop/pages/BO/login').loginPage; } return require('@versions/develop/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 6b0014238..3764215c4 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -23,6 +23,8 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Checkout history selectors this.checkoutHistoryBlock = '#carts'; + // Cart selectors + this.productSearchInput = '#product-search'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index dc9f1c7bd..8c1287503 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -91,7 +91,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderUseButton: (row: number) => string; - private readonly productSearchInput: string; + protected productSearchInput: string; private readonly noProductFoundAlert: string; From a2107b750266079c7051864f69661461d5c35eaf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Jun 2025 06:35:42 +0000 Subject: [PATCH 063/609] Bump @typescript-eslint/eslint-plugin from 8.34.0 to 8.34.1 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.34.0 to 8.34.1. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.34.1/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.34.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 214 +++++++++++++++++++++++----------------------- 1 file changed, 107 insertions(+), 107 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8f5ba81e0..17e2657a8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -636,17 +636,17 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.34.0.tgz", - "integrity": "sha512-QXwAlHlbcAwNlEEMKQS2RCgJsgXrTJdjXT08xEgbPFa2yYQgVjBymxP5DrfrE7X7iodSzd9qBUHUycdyVJTW1w==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.34.1.tgz", + "integrity": "sha512-STXcN6ebF6li4PxwNeFnqF8/2BNDvBupf2OPx2yWNzr6mKNGF7q49VM00Pz5FaomJyqvbXpY6PhO+T9w139YEQ==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.34.0", - "@typescript-eslint/type-utils": "8.34.0", - "@typescript-eslint/utils": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0", + "@typescript-eslint/scope-manager": "8.34.1", + "@typescript-eslint/type-utils": "8.34.1", + "@typescript-eslint/utils": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -660,7 +660,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.34.0", + "@typescript-eslint/parser": "^8.34.1", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } @@ -689,16 +689,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.34.0.tgz", - "integrity": "sha512-vxXJV1hVFx3IXz/oy2sICsJukaBrtDEQSBiV48/YIV5KWjX1dO+bcIr/kCPrW6weKXvsaGKFNlwH0v2eYdRRbA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.34.1.tgz", + "integrity": "sha512-4O3idHxhyzjClSMJ0a29AcoK0+YwnEqzI6oz3vlRf3xw0zbzt15MzXwItOlnr5nIth6zlY2RENLsOPvhyrKAQA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.34.0", - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/typescript-estree": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0", + "@typescript-eslint/scope-manager": "8.34.1", + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/typescript-estree": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1", "debug": "^4.3.4" }, "engines": { @@ -714,14 +714,14 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.34.0.tgz", - "integrity": "sha512-iEgDALRf970/B2YExmtPMPF54NenZUf4xpL3wsCRx/lgjz6ul/l13R81ozP/ZNuXfnLCS+oPmG7JIxfdNYKELw==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.34.1.tgz", + "integrity": "sha512-nuHlOmFZfuRwLJKDGQOVc0xnQrAmuq1Mj/ISou5044y1ajGNp2BNliIqp7F2LPQ5sForz8lempMFCovfeS1XoA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.34.0", - "@typescript-eslint/types": "^8.34.0", + "@typescript-eslint/tsconfig-utils": "^8.34.1", + "@typescript-eslint/types": "^8.34.1", "debug": "^4.3.4" }, "engines": { @@ -736,14 +736,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.34.0.tgz", - "integrity": "sha512-9Ac0X8WiLykl0aj1oYQNcLZjHgBojT6cW68yAgZ19letYu+Hxd0rE0veI1XznSSst1X5lwnxhPbVdwjDRIomRw==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.34.1.tgz", + "integrity": "sha512-beu6o6QY4hJAgL1E8RaXNC071G4Kso2MGmJskCFQhRhg8VOH/FDbC8soP8NHN7e/Hdphwp8G8cE6OBzC8o41ZA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0" + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -754,9 +754,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.34.0.tgz", - "integrity": "sha512-+W9VYHKFIzA5cBeooqQxqNriAP0QeQ7xTiDuIOr71hzgffm3EL2hxwWBIIj4GuofIbKxGNarpKqIq6Q6YrShOA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.34.1.tgz", + "integrity": "sha512-K4Sjdo4/xF9NEeA2khOb7Y5nY6NSXBnod87uniVYW9kHP+hNlDV8trUSFeynA2uxWam4gIWgWoygPrv9VMWrYg==", "dev": true, "license": "MIT", "engines": { @@ -771,14 +771,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.34.0.tgz", - "integrity": "sha512-n7zSmOcUVhcRYC75W2pnPpbO1iwhJY3NLoHEtbJwJSNlVAZuwqu05zY3f3s2SDWWDSo9FdN5szqc73DCtDObAg==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.34.1.tgz", + "integrity": "sha512-Tv7tCCr6e5m8hP4+xFugcrwTOucB8lshffJ6zf1mF1TbU67R+ntCc6DzLNKM+s/uzDyv8gLq7tufaAhIBYeV8g==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.34.0", - "@typescript-eslint/utils": "8.34.0", + "@typescript-eslint/typescript-estree": "8.34.1", + "@typescript-eslint/utils": "8.34.1", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -808,9 +808,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.0.tgz", - "integrity": "sha512-9V24k/paICYPniajHfJ4cuAWETnt7Ssy+R0Rbcqo5sSFr3QEZ/8TSoUi9XeXVBGXCaLtwTOKSLGcInCAvyZeMA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.1.tgz", + "integrity": "sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==", "dev": true, "license": "MIT", "engines": { @@ -822,16 +822,16 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.34.0.tgz", - "integrity": "sha512-rOi4KZxI7E0+BMqG7emPSK1bB4RICCpF7QD3KCLXn9ZvWoESsOMlHyZPAHyG04ujVplPaHbmEvs34m+wjgtVtg==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.34.1.tgz", + "integrity": "sha512-rjCNqqYPuMUF5ODD+hWBNmOitjBWghkGKJg6hiCHzUvXRy6rK22Jd3rwbP2Xi+R7oYVvIKhokHVhH41BxPV5mA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.34.0", - "@typescript-eslint/tsconfig-utils": "8.34.0", - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0", + "@typescript-eslint/project-service": "8.34.1", + "@typescript-eslint/tsconfig-utils": "8.34.1", + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -864,16 +864,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.34.0.tgz", - "integrity": "sha512-8L4tWatGchV9A1cKbjaavS6mwYwp39jql8xUmIIKJdm+qiaeHy5KMKlBrf30akXAWBzn2SqKsNOtSENWUwg7XQ==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.34.1.tgz", + "integrity": "sha512-mqOwUdZ3KjtGk7xJJnLbHxTuWVn3GO2WZZuM+Slhkun4+qthLdXx32C8xIXbO1kfCECb3jIs3eoxK3eryk7aoQ==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.34.0", - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/typescript-estree": "8.34.0" + "@typescript-eslint/scope-manager": "8.34.1", + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/typescript-estree": "8.34.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -888,14 +888,14 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.34.0.tgz", - "integrity": "sha512-qHV7pW7E85A0x6qyrFn+O+q1k1p3tQCsqIZ1KZ5ESLXY57aTvUd3/a4rdPTeXisvhXn2VQG0VSKUqs8KHF2zcA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.34.1.tgz", + "integrity": "sha512-xoh5rJ+tgsRKoXnkBPFRLZ7rjKM0AfVbC68UZ/ECXoDbfggb9RbEySN359acY1vS3qZ0jVTVWzbtfapwm5ztxw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.34.0", - "eslint-visitor-keys": "^4.2.0" + "@typescript-eslint/types": "8.34.1", + "eslint-visitor-keys": "^4.2.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -6747,16 +6747,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.34.0.tgz", - "integrity": "sha512-QXwAlHlbcAwNlEEMKQS2RCgJsgXrTJdjXT08xEgbPFa2yYQgVjBymxP5DrfrE7X7iodSzd9qBUHUycdyVJTW1w==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.34.1.tgz", + "integrity": "sha512-STXcN6ebF6li4PxwNeFnqF8/2BNDvBupf2OPx2yWNzr6mKNGF7q49VM00Pz5FaomJyqvbXpY6PhO+T9w139YEQ==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.34.0", - "@typescript-eslint/type-utils": "8.34.0", - "@typescript-eslint/utils": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0", + "@typescript-eslint/scope-manager": "8.34.1", + "@typescript-eslint/type-utils": "8.34.1", + "@typescript-eslint/utils": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -6779,54 +6779,54 @@ } }, "@typescript-eslint/parser": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.34.0.tgz", - "integrity": "sha512-vxXJV1hVFx3IXz/oy2sICsJukaBrtDEQSBiV48/YIV5KWjX1dO+bcIr/kCPrW6weKXvsaGKFNlwH0v2eYdRRbA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.34.1.tgz", + "integrity": "sha512-4O3idHxhyzjClSMJ0a29AcoK0+YwnEqzI6oz3vlRf3xw0zbzt15MzXwItOlnr5nIth6zlY2RENLsOPvhyrKAQA==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.34.0", - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/typescript-estree": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0", + "@typescript-eslint/scope-manager": "8.34.1", + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/typescript-estree": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.34.0.tgz", - "integrity": "sha512-iEgDALRf970/B2YExmtPMPF54NenZUf4xpL3wsCRx/lgjz6ul/l13R81ozP/ZNuXfnLCS+oPmG7JIxfdNYKELw==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.34.1.tgz", + "integrity": "sha512-nuHlOmFZfuRwLJKDGQOVc0xnQrAmuq1Mj/ISou5044y1ajGNp2BNliIqp7F2LPQ5sForz8lempMFCovfeS1XoA==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.34.0", - "@typescript-eslint/types": "^8.34.0", + "@typescript-eslint/tsconfig-utils": "^8.34.1", + "@typescript-eslint/types": "^8.34.1", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.34.0.tgz", - "integrity": "sha512-9Ac0X8WiLykl0aj1oYQNcLZjHgBojT6cW68yAgZ19letYu+Hxd0rE0veI1XznSSst1X5lwnxhPbVdwjDRIomRw==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.34.1.tgz", + "integrity": "sha512-beu6o6QY4hJAgL1E8RaXNC071G4Kso2MGmJskCFQhRhg8VOH/FDbC8soP8NHN7e/Hdphwp8G8cE6OBzC8o41ZA==", "dev": true, "requires": { - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0" + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.34.0.tgz", - "integrity": "sha512-+W9VYHKFIzA5cBeooqQxqNriAP0QeQ7xTiDuIOr71hzgffm3EL2hxwWBIIj4GuofIbKxGNarpKqIq6Q6YrShOA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.34.1.tgz", + "integrity": "sha512-K4Sjdo4/xF9NEeA2khOb7Y5nY6NSXBnod87uniVYW9kHP+hNlDV8trUSFeynA2uxWam4gIWgWoygPrv9VMWrYg==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.34.0.tgz", - "integrity": "sha512-n7zSmOcUVhcRYC75W2pnPpbO1iwhJY3NLoHEtbJwJSNlVAZuwqu05zY3f3s2SDWWDSo9FdN5szqc73DCtDObAg==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.34.1.tgz", + "integrity": "sha512-Tv7tCCr6e5m8hP4+xFugcrwTOucB8lshffJ6zf1mF1TbU67R+ntCc6DzLNKM+s/uzDyv8gLq7tufaAhIBYeV8g==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "8.34.0", - "@typescript-eslint/utils": "8.34.0", + "@typescript-eslint/typescript-estree": "8.34.1", + "@typescript-eslint/utils": "8.34.1", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -6841,21 +6841,21 @@ } }, "@typescript-eslint/types": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.0.tgz", - "integrity": "sha512-9V24k/paICYPniajHfJ4cuAWETnt7Ssy+R0Rbcqo5sSFr3QEZ/8TSoUi9XeXVBGXCaLtwTOKSLGcInCAvyZeMA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.1.tgz", + "integrity": "sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.34.0.tgz", - "integrity": "sha512-rOi4KZxI7E0+BMqG7emPSK1bB4RICCpF7QD3KCLXn9ZvWoESsOMlHyZPAHyG04ujVplPaHbmEvs34m+wjgtVtg==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.34.1.tgz", + "integrity": "sha512-rjCNqqYPuMUF5ODD+hWBNmOitjBWghkGKJg6hiCHzUvXRy6rK22Jd3rwbP2Xi+R7oYVvIKhokHVhH41BxPV5mA==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.34.0", - "@typescript-eslint/tsconfig-utils": "8.34.0", - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/visitor-keys": "8.34.0", + "@typescript-eslint/project-service": "8.34.1", + "@typescript-eslint/tsconfig-utils": "8.34.1", + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/visitor-keys": "8.34.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -6874,25 +6874,25 @@ } }, "@typescript-eslint/utils": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.34.0.tgz", - "integrity": "sha512-8L4tWatGchV9A1cKbjaavS6mwYwp39jql8xUmIIKJdm+qiaeHy5KMKlBrf30akXAWBzn2SqKsNOtSENWUwg7XQ==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.34.1.tgz", + "integrity": "sha512-mqOwUdZ3KjtGk7xJJnLbHxTuWVn3GO2WZZuM+Slhkun4+qthLdXx32C8xIXbO1kfCECb3jIs3eoxK3eryk7aoQ==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.34.0", - "@typescript-eslint/types": "8.34.0", - "@typescript-eslint/typescript-estree": "8.34.0" + "@typescript-eslint/scope-manager": "8.34.1", + "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/typescript-estree": "8.34.1" } }, "@typescript-eslint/visitor-keys": { - "version": "8.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.34.0.tgz", - "integrity": "sha512-qHV7pW7E85A0x6qyrFn+O+q1k1p3tQCsqIZ1KZ5ESLXY57aTvUd3/a4rdPTeXisvhXn2VQG0VSKUqs8KHF2zcA==", + "version": "8.34.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.34.1.tgz", + "integrity": "sha512-xoh5rJ+tgsRKoXnkBPFRLZ7rjKM0AfVbC68UZ/ECXoDbfggb9RbEySN359acY1vS3qZ0jVTVWzbtfapwm5ztxw==", "dev": true, "requires": { - "@typescript-eslint/types": "8.34.0", - "eslint-visitor-keys": "^4.2.0" + "@typescript-eslint/types": "8.34.1", + "eslint-visitor-keys": "^4.2.1" }, "dependencies": { "eslint-visitor-keys": { From b8654ab72e81875ca7e95adcd21fffd537d4d88e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Jun 2025 07:11:27 +0000 Subject: [PATCH 064/609] Bump eslint-plugin-import from 2.31.0 to 2.32.0 Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.31.0 to 2.32.0. - [Release notes](https://github.com/import-js/eslint-plugin-import/releases) - [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md) - [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.31.0...v2.32.0) --- updated-dependencies: - dependency-name: eslint-plugin-import dependency-version: 2.32.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 2120 +++++++++++++++++++++++++++++++-------------- 1 file changed, 1455 insertions(+), 665 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8f5ba81e0..b88b5ad73 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1080,13 +1080,14 @@ "dev": true }, "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" }, "engines": { "node": ">= 0.4" @@ -1101,17 +1102,20 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "node_modules/array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -1130,17 +1134,19 @@ } }, "node_modules/array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", + "es-abstract": "^1.23.9", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -1150,15 +1156,16 @@ } }, "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -1168,15 +1175,16 @@ } }, "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -1186,19 +1194,19 @@ } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, + "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" }, "engines": { "node": ">= 0.4" @@ -1212,6 +1220,16 @@ "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -1222,6 +1240,7 @@ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, + "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" }, @@ -1378,15 +1397,45 @@ } }, "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { "node": ">= 0.4" @@ -1736,14 +1785,15 @@ } }, "node_modules/data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "is-data-view": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -1753,29 +1803,31 @@ } }, "node_modules/data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "is-data-view": "^1.0.2" }, "engines": { "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/inspect-js" } }, "node_modules/data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.2", "es-errors": "^1.3.0", "is-data-view": "^1.0.1" }, @@ -1829,6 +1881,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -2011,6 +2064,20 @@ "url": "https://dotenvx.com" } }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -2098,57 +2165,66 @@ } }, "node_modules/es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", "dev": true, + "license": "MIT", "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", + "is-data-view": "^1.0.2", "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" }, "engines": { "node": ">= 0.4" @@ -2158,12 +2234,10 @@ } }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -2177,10 +2251,10 @@ } }, "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", "dependencies": { "es-errors": "^1.3.0" }, @@ -2189,37 +2263,44 @@ } }, "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, + "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.4", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "hasown": "^2.0.2" }, "engines": { "node": ">= 0.4" } }, "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", "dev": true, + "license": "MIT", "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", "dev": true, + "license": "MIT", "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" }, "engines": { "node": ">= 0.4" @@ -2346,10 +2427,11 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", - "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^3.2.7" }, @@ -2367,6 +2449,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -2497,29 +2580,30 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.31.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", - "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "dev": true, + "license": "MIT", "dependencies": { "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.8", - "array.prototype.findlastindex": "^1.2.5", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.0", + "eslint-module-utils": "^2.12.1", "hasown": "^2.0.2", - "is-core-module": "^2.15.1", + "is-core-module": "^2.16.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.8", "object.groupby": "^1.0.3", - "object.values": "^1.2.0", + "object.values": "^1.2.1", "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.8", + "string.prototype.trimend": "^1.0.9", "tsconfig-paths": "^3.15.0" }, "engines": { @@ -3065,12 +3149,19 @@ "dev": true }, "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, + "license": "MIT", "dependencies": { - "is-callable": "^1.1.3" + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/form-data": { @@ -3162,15 +3253,18 @@ } }, "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" }, "engines": { "node": ">= 0.4" @@ -3184,6 +3278,7 @@ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -3210,15 +3305,21 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -3227,15 +3328,29 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -3321,12 +3436,14 @@ } }, "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, + "license": "MIT", "dependencies": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -3356,11 +3473,12 @@ } }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3378,10 +3496,14 @@ "integrity": "sha512-DjDExBKHuhyhHOs8HeGV5dw6wY6eYTl4pAHz27oy8XppgBK60vmG/G3bY09zyT9PXX4TjmnEF4hYoRn61Fctlg==" }, "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -3399,6 +3521,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "dependencies": { "es-define-property": "^1.0.0" }, @@ -3407,9 +3530,14 @@ } }, "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -3418,9 +3546,10 @@ } }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3433,6 +3562,7 @@ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, + "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" }, @@ -3613,14 +3743,15 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, + "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "hasown": "^2.0.2", + "side-channel": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -3640,13 +3771,35 @@ "integrity": "sha512-Bm6H79i01DjgGTCWjUuCjJ6QDo1HB96PT/xCYuyJUP9WFbVDrLSbG4EZCvOCun2rNswZb0c3e4Jt/ws795esHA==" }, "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -3656,12 +3809,16 @@ } }, "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, + "license": "MIT", "dependencies": { - "has-bigints": "^1.0.1" + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3680,13 +3837,14 @@ } }, "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3700,6 +3858,7 @@ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3708,10 +3867,11 @@ } }, "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, + "license": "MIT", "dependencies": { "hasown": "^2.0.2" }, @@ -3723,11 +3883,14 @@ } }, "node_modules/is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, + "license": "MIT", "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", "is-typed-array": "^1.1.13" }, "engines": { @@ -3738,12 +3901,14 @@ } }, "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3761,6 +3926,22 @@ "node": ">=0.10.0" } }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -3770,6 +3951,25 @@ "node": ">=8" } }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -3782,6 +3982,19 @@ "node": ">=0.10.0" } }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-negative-zero": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", @@ -3804,12 +4017,14 @@ } }, "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3833,14 +4048,30 @@ "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3849,12 +4080,13 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7" + "call-bound": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -3864,12 +4096,14 @@ } }, "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, + "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3879,12 +4113,15 @@ } }, "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, + "license": "MIT", "dependencies": { - "has-symbols": "^1.0.2" + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -3894,12 +4131,13 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", "dev": true, + "license": "MIT", "dependencies": { - "which-typed-array": "^1.1.14" + "which-typed-array": "^1.1.16" }, "engines": { "node": ">= 0.4" @@ -3908,13 +4146,47 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3924,7 +4196,8 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", @@ -4186,6 +4459,15 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -4484,9 +4766,13 @@ } }, "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -4501,14 +4787,17 @@ } }, "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.5", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", "object-keys": "^1.1.1" }, "engines": { @@ -4565,12 +4854,14 @@ } }, "node_modules/object.values": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", - "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", "define-properties": "^1.2.1", "es-object-atoms": "^1.0.0" }, @@ -4626,6 +4917,24 @@ "node": ">= 0.8.0" } }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -4812,10 +5121,11 @@ } }, "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -4983,15 +5293,41 @@ "node": ">=8.10.0" } }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/regexp.prototype.flags": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", - "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", "set-function-name": "^2.0.2" }, "engines": { @@ -5096,14 +5432,16 @@ } }, "node_modules/safe-array-concat": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", - "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", "isarray": "^2.0.5" }, "engines": { @@ -5118,15 +5456,33 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/safe-regex-test": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", - "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.2", "es-errors": "^1.3.0", - "is-regex": "^1.1.4" + "is-regex": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -5247,6 +5603,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -5264,6 +5621,7 @@ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, + "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -5274,6 +5632,21 @@ "node": ">= 0.4" } }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -5301,14 +5674,69 @@ } }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -5462,6 +5890,20 @@ "node": ">= 0.8" } }, + "node_modules/stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -5506,15 +5948,19 @@ } }, "node_modules/string.prototype.trim": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", - "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -5524,15 +5970,20 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", - "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", "define-properties": "^1.2.1", "es-object-atoms": "^1.0.0" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -5851,30 +6302,32 @@ } }, "node_modules/typed-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", - "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" + "is-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", - "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -5884,17 +6337,19 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", - "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", "dev": true, + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" }, "engines": { "node": ">= 0.4" @@ -5904,17 +6359,18 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", - "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", "dev": true, + "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-proto": "^1.0.3", "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" }, "engines": { "node": ">= 0.4" @@ -5938,15 +6394,19 @@ } }, "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", + "call-bound": "^1.0.3", "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6132,31 +6592,85 @@ } }, "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, + "license": "MIT", "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, + "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", "has-tostringtag": "^1.0.2" }, "engines": { @@ -7027,13 +7541,13 @@ "dev": true }, "array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, "requires": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" } }, "array-flatten": { @@ -7042,17 +7556,19 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" } }, "array-union": { @@ -7062,57 +7578,57 @@ "dev": true }, "array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", + "es-abstract": "^1.23.9", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" + "es-object-atoms": "^1.1.1", + "es-shim-unscopables": "^1.1.0" } }, "array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" } }, "array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" } }, "arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, "requires": { "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" } }, "async": { @@ -7120,6 +7636,12 @@ "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" }, + "async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -7249,15 +7771,33 @@ "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" }, "call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "requires": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + } + }, + "call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "requires": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + } + }, + "call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "requires": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" } }, "callsites": { @@ -7514,34 +8054,34 @@ } }, "data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, "requires": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "is-data-view": "^1.0.2" } }, "data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "is-data-view": "^1.0.2" } }, "data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, "requires": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.2", "es-errors": "^1.3.0", "is-data-view": "^1.0.1" } @@ -7578,6 +8118,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "requires": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", @@ -7696,6 +8237,16 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.5.0.tgz", "integrity": "sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==" }, + "dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "requires": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -7753,66 +8304,71 @@ "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" }, "es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", + "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", "dev": true, "requires": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", + "is-data-view": "^1.0.2", "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" } }, "es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "requires": { - "get-intrinsic": "^1.2.4" - } + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==" }, "es-errors": { "version": "1.3.0", @@ -7820,43 +8376,43 @@ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" }, "es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "requires": { "es-errors": "^1.3.0" } }, "es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, "requires": { - "get-intrinsic": "^1.2.4", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "hasown": "^2.0.2" } }, "es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", "dev": true, "requires": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" } }, "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", "dev": true, "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" } }, "escape-html": { @@ -8043,9 +8599,9 @@ } }, "eslint-module-utils": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", - "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", + "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", "dev": true, "requires": { "debug": "^3.2.7" @@ -8139,29 +8695,29 @@ } }, "eslint-plugin-import": { - "version": "2.31.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", - "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", + "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "dev": true, "requires": { "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.8", - "array.prototype.findlastindex": "^1.2.5", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", + "array-includes": "^3.1.9", + "array.prototype.findlastindex": "^1.2.6", + "array.prototype.flat": "^1.3.3", + "array.prototype.flatmap": "^1.3.3", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.0", + "eslint-module-utils": "^2.12.1", "hasown": "^2.0.2", - "is-core-module": "^2.15.1", + "is-core-module": "^2.16.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.8", "object.groupby": "^1.0.3", - "object.values": "^1.2.0", + "object.values": "^1.2.1", "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.8", + "string.prototype.trimend": "^1.0.9", "tsconfig-paths": "^3.15.0" }, "dependencies": { @@ -8490,12 +9046,12 @@ "dev": true }, "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, "requires": { - "is-callable": "^1.1.3" + "is-callable": "^1.2.7" } }, "form-data": { @@ -8561,15 +9117,17 @@ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" }, "function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" } }, "functions-have-names": { @@ -8596,26 +9154,40 @@ } }, "get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "requires": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + } + }, + "get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "requires": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" } }, "get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, "requires": { - "call-bind": "^1.0.5", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" + "get-intrinsic": "^1.2.6" } }, "get-tsconfig": { @@ -8678,12 +9250,13 @@ "dev": true }, "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, "requires": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" } }, "globby": { @@ -8701,12 +9274,9 @@ } }, "gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "requires": { - "get-intrinsic": "^1.1.3" - } + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==" }, "graphemer": { "version": "1.4.0", @@ -8720,9 +9290,9 @@ "integrity": "sha512-DjDExBKHuhyhHOs8HeGV5dw6wY6eYTl4pAHz27oy8XppgBK60vmG/G3bY09zyT9PXX4TjmnEF4hYoRn61Fctlg==" }, "has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true }, "has-flag": { @@ -8735,19 +9305,24 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "requires": { "es-define-property": "^1.0.0" } }, "has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "requires": { + "dunder-proto": "^1.0.0" + } }, "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==" }, "has-tostringtag": { "version": "1.0.2", @@ -8884,14 +9459,14 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, "requires": { "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "hasown": "^2.0.2", + "side-channel": "^1.1.0" } }, "ipaddr.js": { @@ -8905,22 +9480,36 @@ "integrity": "sha512-Bm6H79i01DjgGTCWjUuCjJ6QDo1HB96PT/xCYuyJUP9WFbVDrLSbG4EZCvOCun2rNswZb0c3e4Jt/ws795esHA==" }, "is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + } + }, + "is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "requires": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" } }, "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, "requires": { - "has-bigints": "^1.0.1" + "has-bigints": "^1.0.2" } }, "is-binary-path": { @@ -8933,13 +9522,13 @@ } }, "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" } }, "is-callable": { @@ -8949,30 +9538,33 @@ "dev": true }, "is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, "requires": { "hasown": "^2.0.2" } }, "is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, "requires": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", "is-typed-array": "^1.1.13" } }, "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, "requires": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" } }, "is-extglob": { @@ -8981,12 +9573,33 @@ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true }, + "is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "requires": { + "call-bound": "^1.0.3" + } + }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "optional": true }, + "is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + } + }, "is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -8996,6 +9609,12 @@ "is-extglob": "^2.1.1" } }, + "is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true + }, "is-negative-zero": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", @@ -9009,12 +9628,13 @@ "dev": true }, "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, "requires": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" } }, "is-path-inside": { @@ -9029,58 +9649,85 @@ "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" }, "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" } }, + "is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true + }, "is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, "requires": { - "call-bind": "^1.0.7" + "call-bound": "^1.0.3" } }, "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, "requires": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" } }, "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, "requires": { - "has-symbols": "^1.0.2" + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" } }, "is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", "dev": true, "requires": { - "which-typed-array": "^1.1.14" + "which-typed-array": "^1.1.16" } }, + "is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true + }, "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "requires": { + "call-bound": "^1.0.3" + } + }, + "is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, "requires": { - "call-bind": "^1.0.2" + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" } }, "isarray": { @@ -9296,6 +9943,11 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" + }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -9503,9 +10155,9 @@ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" }, "object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==" + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==" }, "object-keys": { "version": "1.1.1", @@ -9514,14 +10166,16 @@ "dev": true }, "object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, "requires": { - "call-bind": "^1.0.5", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", "object-keys": "^1.1.1" } }, @@ -9560,12 +10214,13 @@ } }, "object.values": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", - "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", "define-properties": "^1.2.1", "es-object-atoms": "^1.0.0" } @@ -9606,6 +10261,17 @@ "type-check": "^0.4.0" } }, + "own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "requires": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + } + }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -9726,9 +10392,9 @@ } }, "possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", "dev": true }, "prelude-ls": { @@ -9840,15 +10506,33 @@ "picomatch": "^2.2.1" } }, + "reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + } + }, "regexp.prototype.flags": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", - "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "define-properties": "^1.2.1", "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", "set-function-name": "^2.0.2" } }, @@ -9910,14 +10594,15 @@ } }, "safe-array-concat": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", - "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, "requires": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", "isarray": "^2.0.5" } }, @@ -9926,15 +10611,25 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "requires": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + } + }, "safe-regex-test": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", - "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, "requires": { - "call-bind": "^1.0.6", + "call-bound": "^1.0.2", "es-errors": "^1.3.0", - "is-regex": "^1.1.4" + "is-regex": "^1.2.1" } }, "safer-buffer": { @@ -10028,6 +10723,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, "requires": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -10049,6 +10745,17 @@ "has-property-descriptors": "^1.0.2" } }, + "set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "requires": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + } + }, "setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -10070,14 +10777,47 @@ "dev": true }, "side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "requires": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + } + }, + "side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "requires": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + } + }, + "side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + } + }, + "side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" } }, "signal-exit": { @@ -10180,6 +10920,16 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" }, + "stop-iteration-iterator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", + "dev": true, + "requires": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + } + }, "string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -10209,24 +10959,28 @@ } }, "string.prototype.trim": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", - "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" } }, "string.prototype.trimend": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", - "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", "define-properties": "^1.2.1", "es-object-atoms": "^1.0.0" } @@ -10443,55 +11197,56 @@ } }, "typed-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", - "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bound": "^1.0.3", "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" + "is-typed-array": "^1.1.14" } }, "typed-array-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", - "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, "requires": { - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" } }, "typed-array-byte-offset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", - "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", "dev": true, "requires": { "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" } }, "typed-array-length": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", - "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", "dev": true, "requires": { "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-proto": "^1.0.3", "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" } }, "typescript": { @@ -10501,15 +11256,15 @@ "dev": true }, "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, "requires": { - "call-bind": "^1.0.2", + "call-bound": "^1.0.3", "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" } }, "undici-types": { @@ -10646,28 +11401,63 @@ } }, "which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "requires": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + } + }, + "which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "requires": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + } + }, + "which-collection": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" } }, "which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, "requires": { "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", "has-tostringtag": "^1.0.2" } }, From 966b4f798e805f77851bbcab9c0d1c43838cb04f Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Tue, 24 Jun 2025 14:54:06 +0200 Subject: [PATCH 065/609] Add methods to upgrade local channel --- .../BO/modules/autoupgrade/index.ts | 3 +- .../pages/BO/modules/autoupgrade/index.ts | 60 ++++++++++++++----- 2 files changed, 47 insertions(+), 16 deletions(-) diff --git a/src/interfaces/BO/modules/autoupgrade/index.ts b/src/interfaces/BO/modules/autoupgrade/index.ts index 50fa6cc6e..fe56685c2 100644 --- a/src/interfaces/BO/modules/autoupgrade/index.ts +++ b/src/interfaces/BO/modules/autoupgrade/index.ts @@ -7,8 +7,9 @@ export interface ModuleAutoupgradeMainPageInterface extends ModuleConfigurationP readonly updateSuccessMessage: string; cancelBackup(page:Page):Promise; - checkRequirements(page: Page): Promise; + checkRequirements(page: Page, channel:string): Promise; checkUpdateSuccess(page:Page):Promise; + chooseLocalArchive(page:Page, psVersion:string):Promise; chooseNewVersion(page:Page):Promise; clickOnLaunchBackup(page:Page):Promise; clickOnUpdateWithoutBackup(page:Page):Promise; diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index d26d80528..d57ad4d3f 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -22,9 +22,17 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa private readonly newVersionRadioButton: string; - private readonly radioCardLoader: string; + private readonly localArchiveRadioButton: string; + + private readonly radioCardArchive: string; + + private readonly archiveZipSelect: string; + + private readonly archiveXmlSelect: string; - private readonly radioCardLoaderWrapper: string; + private readonly radioCardLoader: (channel: string) => string; + + private readonly radioCardLoaderWrapper: (channel: string) => string; private readonly checkRequirementBlock: string; @@ -46,7 +54,7 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa private readonly launchBackupButton: string; - private readonly dialogConfirmBuckup: string; + private readonly dialogConfirmBackup: string; private readonly cancelBackupButton: string; @@ -82,12 +90,16 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa this.stepTitle = '.page__title'; // 1 : version choose step this.newVersionRadioButton = '#online'; - this.radioCardLoader = '.radio-card__loader-title'; - this.radioCardLoaderWrapper = '.radio-card__loader-wrapper'; + this.localArchiveRadioButton = '#local'; + this.radioCardArchive = '#radio_card_archive div.radio-card__local-archive div'; + this.archiveZipSelect = '#archive_zip'; + this.archiveXmlSelect = '#archive_xml'; + this.radioCardLoader = (channel: string) => `#radio_card_${channel} .radio-card__loader-title`; + this.radioCardLoaderWrapper = (channel: string) => `#radio_card_${channel} .radio-card__loader-wrapper`; this.checkRequirementBlock = '.check-requirements'; this.checkRequirementsFailedAlerts = '.check-requirements--failed'; - this.goToMaintenancePageLink = '#radio_card_online div.radio-card__check-requirements a[href*="AdminMaintenance"]'; - this.checkRequirementsButton = '#radio_card_online div.radio-card__check-requirements button' + this.goToMaintenancePageLink = 'div.radio-card__check-requirements a[href*="AdminMaintenance"]'; + this.checkRequirementsButton = 'div.radio-card__check-requirements button' + '[data-action="check-requirements-again"]'; this.alertSuccessMessage = '.alert-success p.alert__message'; this.currentPSVersion = '#ua_step_content p.not-up-to-date__message'; @@ -96,7 +108,7 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa // 2 : Update options step // 3 : Back up your store step this.launchBackupButton = '#ua_step_content div.page__buttons button.btn-primary'; - this.dialogConfirmBuckup = '#dialog-confirm-backup'; + this.dialogConfirmBackup = '#dialog-confirm-backup'; this.cancelBackupButton = '#dialog-confirm-backup div.dialog__footer button.btn-link'; this.updateWithoutBackupButton = '#update-backup-page-update-form'; this.dialogConfirmUpdate = '#dialog-confirm-update'; @@ -127,7 +139,22 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa */ async chooseNewVersion(page: Page): Promise { await page.locator(this.newVersionRadioButton).setChecked(true); - await this.waitForVisibleSelector(page, this.radioCardLoader); + await this.waitForVisibleSelector(page, this.radioCardLoader('online')); + await this.waitForVisibleSelector(page, this.checkRequirementBlock, 100000); + + return this.elementVisible(page, this.checkRequirementsFailedAlerts, 2000); + } + + /** + * Choose local archive + * @param page {Page} Browser tab + * @param psVersion {string} The ps Version to use + */ + async chooseLocalArchive(page: Page, psVersion: string): Promise { + await page.locator(this.localArchiveRadioButton).setChecked(true); + await this.waitForVisibleSelector(page, this.radioCardArchive); + await this.selectByVisibleText(page, this.archiveZipSelect, `prestashop_${psVersion}.zip`); + await this.selectByVisibleText(page, this.archiveXmlSelect, `prestashop_${psVersion}.xml`); await this.waitForVisibleSelector(page, this.checkRequirementBlock, 100000); return this.elementVisible(page, this.checkRequirementsFailedAlerts, 2000); @@ -145,12 +172,13 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa /** * Check requirements * @param page {Page} Browser tab + * @param channel {string} Channel to use * @return {Promise { + async checkRequirements(page: Page, channel: string = 'online'): Promise { await page.locator(this.checkRequirementsButton).click(); - await this.waitForVisibleSelector(page, this.radioCardLoader); - await this.waitForHiddenSelector(page, this.radioCardLoaderWrapper, 50000); + await this.waitForVisibleSelector(page, this.radioCardLoader(channel)); + await this.waitForHiddenSelector(page, this.radioCardLoaderWrapper(channel), 50000); return this.elementNotVisible(page, `${this.nextStepButton}[disabled='true']`, 2000); } @@ -198,8 +226,9 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa * @return {Promise { - await page.locator(this.launchBackupButton).click(); - return this.elementVisible(page, this.dialogConfirmBuckup, 5000); + await this.waitForSelectorAndClick(page, this.launchBackupButton, 2000); + + return await this.elementVisible(page, this.dialogConfirmBackup, 5000); } /** @@ -209,7 +238,8 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa */ async cancelBackup(page: Page): Promise { await page.locator(this.cancelBackupButton).click(); - return this.elementNotVisible(page, this.dialogConfirmBuckup, 5000); + + return this.elementNotVisible(page, this.dialogConfirmBackup, 5000); } /** From e7a275dcc698231ca044d5c3008e75bc9c403a4c Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Tue, 24 Jun 2025 14:59:10 +0200 Subject: [PATCH 066/609] Fix lint errors --- .../develop/pages/BO/modules/autoupgrade/index.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index d57ad4d3f..0812f8475 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -23,11 +23,11 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa private readonly newVersionRadioButton: string; private readonly localArchiveRadioButton: string; - + private readonly radioCardArchive: string; - + private readonly archiveZipSelect: string; - + private readonly archiveXmlSelect: string; private readonly radioCardLoader: (channel: string) => string; @@ -227,8 +227,8 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa */ async clickOnLaunchBackup(page: Page): Promise { await this.waitForSelectorAndClick(page, this.launchBackupButton, 2000); - - return await this.elementVisible(page, this.dialogConfirmBackup, 5000); + + return this.elementVisible(page, this.dialogConfirmBackup, 5000); } /** @@ -238,7 +238,7 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa */ async cancelBackup(page: Page): Promise { await page.locator(this.cancelBackupButton).click(); - + return this.elementNotVisible(page, this.dialogConfirmBackup, 5000); } From ed0afb1f3294a25e44d6470c04826d648306bde7 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Fri, 27 Jun 2025 12:46:50 +0200 Subject: [PATCH 067/609] Add missing variable in feature flag interface --- src/interfaces/BO/advancedParameters/featureFlag.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/interfaces/BO/advancedParameters/featureFlag.ts b/src/interfaces/BO/advancedParameters/featureFlag.ts index 571aca738..b4eb063f8 100644 --- a/src/interfaces/BO/advancedParameters/featureFlag.ts +++ b/src/interfaces/BO/advancedParameters/featureFlag.ts @@ -4,6 +4,7 @@ import {type Page} from '@playwright/test'; export interface BOFeatureFlagInterface extends BOBasePagePageInterface { readonly featureFlagAdminAPI: string; readonly featureFlagAdminAPIMultistore: string; + readonly featureFlagProductPageV2: string; readonly pageTitle: string; setFeatureFlag(page: Page, featureFlag: string, toEnable?: boolean): Promise; From 8cf940a6fb9acecd3ed9141cc4dfb8f2be6124bc Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Fri, 27 Jun 2025 14:20:59 +0200 Subject: [PATCH 068/609] Fix feature flag page title --- src/versions/develop/pages/BO/advancedParameters/featureFlag.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts index 88d0fc9d0..fa77542c7 100644 --- a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts +++ b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts @@ -35,7 +35,7 @@ class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { constructor() { super(); - this.pageTitle = `New & experimental features • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `New & Experimental Features • ${global.INSTALL.SHOP_NAME}`; this.successfulUpdateMessage = 'Update successful'; // Feature Flag From 0a219c9fda0805c3ce28aaee3a9a24628c7b3885 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Jun 2025 07:51:58 +0000 Subject: [PATCH 069/609] Bump dotenv from 16.5.0 to 17.0.0 Bumps [dotenv](https://github.com/motdotla/dotenv) from 16.5.0 to 17.0.0. - [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) - [Commits](https://github.com/motdotla/dotenv/compare/v16.5.0...v17.0.0) --- updated-dependencies: - dependency-name: dotenv dependency-version: 17.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- package-lock.json | 15 +++++++-------- package.json | 2 +- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index b88a5b7b9..4565416b4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "@s3pweb/keycloak-admin-client-cjs": "^26.0.0", "@xmldom/xmldom": "^0.9.5", "csv-writer": "^1.6.0", - "dotenv": "^16.5.0", + "dotenv": "^17.0.0", "fast-xml-parser": "^5.0.9", "gunzip-file": "^0.1.1", "jpeg-js": "^0.4.4", @@ -2053,10 +2053,9 @@ } }, "node_modules/dotenv": { - "version": "16.5.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.5.0.tgz", - "integrity": "sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==", - "license": "BSD-2-Clause", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.0.tgz", + "integrity": "sha512-A0BJ5lrpJVSfnMMXjmeO0xUnoxqsBHWCoqqTnGwGYVdnctqXXUEhJOO7LxmgxJon9tEZFGpe0xPRX0h2v3AANQ==", "engines": { "node": ">=12" }, @@ -8233,9 +8232,9 @@ } }, "dotenv": { - "version": "16.5.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.5.0.tgz", - "integrity": "sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==" + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.0.tgz", + "integrity": "sha512-A0BJ5lrpJVSfnMMXjmeO0xUnoxqsBHWCoqqTnGwGYVdnctqXXUEhJOO7LxmgxJon9tEZFGpe0xPRX0h2v3AANQ==" }, "dunder-proto": { "version": "1.0.1", diff --git a/package.json b/package.json index dbd4a5853..225da52f6 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "@s3pweb/keycloak-admin-client-cjs": "^26.0.0", "@xmldom/xmldom": "^0.9.5", "csv-writer": "^1.6.0", - "dotenv": "^16.5.0", + "dotenv": "^17.0.0", "fast-xml-parser": "^5.0.9", "gunzip-file": "^0.1.1", "jpeg-js": "^0.4.4", From c888efbdc90c5bac9fca13144a3a943ec77fb47b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Jun 2025 07:55:46 +0000 Subject: [PATCH 070/609] Bump @typescript-eslint/eslint-plugin from 8.34.1 to 8.35.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.34.1 to 8.35.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.35.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.35.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 223 ++++++++++++++++++++++------------------------ 1 file changed, 105 insertions(+), 118 deletions(-) diff --git a/package-lock.json b/package-lock.json index b88a5b7b9..2bf942b3c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -636,17 +636,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.34.1.tgz", - "integrity": "sha512-STXcN6ebF6li4PxwNeFnqF8/2BNDvBupf2OPx2yWNzr6mKNGF7q49VM00Pz5FaomJyqvbXpY6PhO+T9w139YEQ==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.0.tgz", + "integrity": "sha512-ijItUYaiWuce0N1SoSMrEd0b6b6lYkYt99pqCPfybd+HKVXtEvYhICfLdwp42MhiI5mp0oq7PKEL+g1cNiz/Eg==", "dev": true, - "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.34.1", - "@typescript-eslint/type-utils": "8.34.1", - "@typescript-eslint/utils": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1", + "@typescript-eslint/scope-manager": "8.35.0", + "@typescript-eslint/type-utils": "8.35.0", + "@typescript-eslint/utils": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -660,7 +659,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.34.1", + "@typescript-eslint/parser": "^8.35.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } @@ -689,16 +688,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.34.1.tgz", - "integrity": "sha512-4O3idHxhyzjClSMJ0a29AcoK0+YwnEqzI6oz3vlRf3xw0zbzt15MzXwItOlnr5nIth6zlY2RENLsOPvhyrKAQA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.0.tgz", + "integrity": "sha512-6sMvZePQrnZH2/cJkwRpkT7DxoAWh+g6+GFRK6bV3YQo7ogi3SX5rgF6099r5Q53Ma5qeT7LGmOmuIutF4t3lA==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/typescript-estree": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1", + "@typescript-eslint/scope-manager": "8.35.0", + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/typescript-estree": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0", "debug": "^4.3.4" }, "engines": { @@ -714,14 +712,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.34.1.tgz", - "integrity": "sha512-nuHlOmFZfuRwLJKDGQOVc0xnQrAmuq1Mj/ISou5044y1ajGNp2BNliIqp7F2LPQ5sForz8lempMFCovfeS1XoA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.0.tgz", + "integrity": "sha512-41xatqRwWZuhUMF/aZm2fcUsOFKNcG28xqRSS6ZVr9BVJtGExosLAm5A1OxTjRMagx8nJqva+P5zNIGt8RIgbQ==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.34.1", - "@typescript-eslint/types": "^8.34.1", + "@typescript-eslint/tsconfig-utils": "^8.35.0", + "@typescript-eslint/types": "^8.35.0", "debug": "^4.3.4" }, "engines": { @@ -736,14 +733,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.34.1.tgz", - "integrity": "sha512-beu6o6QY4hJAgL1E8RaXNC071G4Kso2MGmJskCFQhRhg8VOH/FDbC8soP8NHN7e/Hdphwp8G8cE6OBzC8o41ZA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.0.tgz", + "integrity": "sha512-+AgL5+mcoLxl1vGjwNfiWq5fLDZM1TmTPYs2UkyHfFhgERxBbqHlNjRzhThJqz+ktBqTChRYY6zwbMwy0591AA==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1" + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -754,11 +750,10 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.34.1.tgz", - "integrity": "sha512-K4Sjdo4/xF9NEeA2khOb7Y5nY6NSXBnod87uniVYW9kHP+hNlDV8trUSFeynA2uxWam4gIWgWoygPrv9VMWrYg==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.0.tgz", + "integrity": "sha512-04k/7247kZzFraweuEirmvUj+W3bJLI9fX6fbo1Qm2YykuBvEhRTPl8tcxlYO8kZZW+HIXfkZNoasVb8EV4jpA==", "dev": true, - "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -771,14 +766,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.34.1.tgz", - "integrity": "sha512-Tv7tCCr6e5m8hP4+xFugcrwTOucB8lshffJ6zf1mF1TbU67R+ntCc6DzLNKM+s/uzDyv8gLq7tufaAhIBYeV8g==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.0.tgz", + "integrity": "sha512-ceNNttjfmSEoM9PW87bWLDEIaLAyR+E6BoYJQ5PfaDau37UGca9Nyq3lBk8Bw2ad0AKvYabz6wxc7DMTO2jnNA==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.34.1", - "@typescript-eslint/utils": "8.34.1", + "@typescript-eslint/typescript-estree": "8.35.0", + "@typescript-eslint/utils": "8.35.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -799,7 +793,6 @@ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=18.12" }, @@ -808,11 +801,10 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.1.tgz", - "integrity": "sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.0.tgz", + "integrity": "sha512-0mYH3emanku0vHw2aRLNGqe7EXh9WHEhi7kZzscrMDf6IIRUQ5Jk4wp1QrledE/36KtdZrVfKnE32eZCf/vaVQ==", "dev": true, - "license": "MIT", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -822,16 +814,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.34.1.tgz", - "integrity": "sha512-rjCNqqYPuMUF5ODD+hWBNmOitjBWghkGKJg6hiCHzUvXRy6rK22Jd3rwbP2Xi+R7oYVvIKhokHVhH41BxPV5mA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.0.tgz", + "integrity": "sha512-F+BhnaBemgu1Qf8oHrxyw14wq6vbL8xwWKKMwTMwYIRmFFY/1n/9T/jpbobZL8vp7QyEUcC6xGrnAO4ua8Kp7w==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.34.1", - "@typescript-eslint/tsconfig-utils": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1", + "@typescript-eslint/project-service": "8.35.0", + "@typescript-eslint/tsconfig-utils": "8.35.0", + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -855,7 +846,6 @@ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=18.12" }, @@ -864,16 +854,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.34.1.tgz", - "integrity": "sha512-mqOwUdZ3KjtGk7xJJnLbHxTuWVn3GO2WZZuM+Slhkun4+qthLdXx32C8xIXbO1kfCECb3jIs3eoxK3eryk7aoQ==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.0.tgz", + "integrity": "sha512-nqoMu7WWM7ki5tPgLVsmPM8CkqtoPUG6xXGeefM5t4x3XumOEKMoUZPdi+7F+/EotukN4R9OWdmDxN80fqoZeg==", "dev": true, - "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/typescript-estree": "8.34.1" + "@typescript-eslint/scope-manager": "8.35.0", + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/typescript-estree": "8.35.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -888,13 +877,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.34.1.tgz", - "integrity": "sha512-xoh5rJ+tgsRKoXnkBPFRLZ7rjKM0AfVbC68UZ/ECXoDbfggb9RbEySN359acY1vS3qZ0jVTVWzbtfapwm5ztxw==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.0.tgz", + "integrity": "sha512-zTh2+1Y8ZpmeQaQVIc/ZZxsx8UzgKJyNg1PTvjzC7WMhPSVS8bfDX34k1SrwOf016qd5RU3az2UxUNue3IfQ5g==", "dev": true, - "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/types": "8.35.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -910,7 +898,6 @@ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", "dev": true, - "license": "Apache-2.0", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -7261,16 +7248,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.34.1.tgz", - "integrity": "sha512-STXcN6ebF6li4PxwNeFnqF8/2BNDvBupf2OPx2yWNzr6mKNGF7q49VM00Pz5FaomJyqvbXpY6PhO+T9w139YEQ==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.0.tgz", + "integrity": "sha512-ijItUYaiWuce0N1SoSMrEd0b6b6lYkYt99pqCPfybd+HKVXtEvYhICfLdwp42MhiI5mp0oq7PKEL+g1cNiz/Eg==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.34.1", - "@typescript-eslint/type-utils": "8.34.1", - "@typescript-eslint/utils": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1", + "@typescript-eslint/scope-manager": "8.35.0", + "@typescript-eslint/type-utils": "8.35.0", + "@typescript-eslint/utils": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7293,54 +7280,54 @@ } }, "@typescript-eslint/parser": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.34.1.tgz", - "integrity": "sha512-4O3idHxhyzjClSMJ0a29AcoK0+YwnEqzI6oz3vlRf3xw0zbzt15MzXwItOlnr5nIth6zlY2RENLsOPvhyrKAQA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.0.tgz", + "integrity": "sha512-6sMvZePQrnZH2/cJkwRpkT7DxoAWh+g6+GFRK6bV3YQo7ogi3SX5rgF6099r5Q53Ma5qeT7LGmOmuIutF4t3lA==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/typescript-estree": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1", + "@typescript-eslint/scope-manager": "8.35.0", + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/typescript-estree": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.34.1.tgz", - "integrity": "sha512-nuHlOmFZfuRwLJKDGQOVc0xnQrAmuq1Mj/ISou5044y1ajGNp2BNliIqp7F2LPQ5sForz8lempMFCovfeS1XoA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.0.tgz", + "integrity": "sha512-41xatqRwWZuhUMF/aZm2fcUsOFKNcG28xqRSS6ZVr9BVJtGExosLAm5A1OxTjRMagx8nJqva+P5zNIGt8RIgbQ==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.34.1", - "@typescript-eslint/types": "^8.34.1", + "@typescript-eslint/tsconfig-utils": "^8.35.0", + "@typescript-eslint/types": "^8.35.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.34.1.tgz", - "integrity": "sha512-beu6o6QY4hJAgL1E8RaXNC071G4Kso2MGmJskCFQhRhg8VOH/FDbC8soP8NHN7e/Hdphwp8G8cE6OBzC8o41ZA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.0.tgz", + "integrity": "sha512-+AgL5+mcoLxl1vGjwNfiWq5fLDZM1TmTPYs2UkyHfFhgERxBbqHlNjRzhThJqz+ktBqTChRYY6zwbMwy0591AA==", "dev": true, "requires": { - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1" + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.34.1.tgz", - "integrity": "sha512-K4Sjdo4/xF9NEeA2khOb7Y5nY6NSXBnod87uniVYW9kHP+hNlDV8trUSFeynA2uxWam4gIWgWoygPrv9VMWrYg==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.0.tgz", + "integrity": "sha512-04k/7247kZzFraweuEirmvUj+W3bJLI9fX6fbo1Qm2YykuBvEhRTPl8tcxlYO8kZZW+HIXfkZNoasVb8EV4jpA==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.34.1.tgz", - "integrity": "sha512-Tv7tCCr6e5m8hP4+xFugcrwTOucB8lshffJ6zf1mF1TbU67R+ntCc6DzLNKM+s/uzDyv8gLq7tufaAhIBYeV8g==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.0.tgz", + "integrity": "sha512-ceNNttjfmSEoM9PW87bWLDEIaLAyR+E6BoYJQ5PfaDau37UGca9Nyq3lBk8Bw2ad0AKvYabz6wxc7DMTO2jnNA==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "8.34.1", - "@typescript-eslint/utils": "8.34.1", + "@typescript-eslint/typescript-estree": "8.35.0", + "@typescript-eslint/utils": "8.35.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7355,21 +7342,21 @@ } }, "@typescript-eslint/types": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.34.1.tgz", - "integrity": "sha512-rjLVbmE7HR18kDsjNIZQHxmv9RZwlgzavryL5Lnj2ujIRTeXlKtILHgRNmQ3j4daw7zd+mQgy+uyt6Zo6I0IGA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.0.tgz", + "integrity": "sha512-0mYH3emanku0vHw2aRLNGqe7EXh9WHEhi7kZzscrMDf6IIRUQ5Jk4wp1QrledE/36KtdZrVfKnE32eZCf/vaVQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.34.1.tgz", - "integrity": "sha512-rjCNqqYPuMUF5ODD+hWBNmOitjBWghkGKJg6hiCHzUvXRy6rK22Jd3rwbP2Xi+R7oYVvIKhokHVhH41BxPV5mA==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.0.tgz", + "integrity": "sha512-F+BhnaBemgu1Qf8oHrxyw14wq6vbL8xwWKKMwTMwYIRmFFY/1n/9T/jpbobZL8vp7QyEUcC6xGrnAO4ua8Kp7w==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.34.1", - "@typescript-eslint/tsconfig-utils": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/visitor-keys": "8.34.1", + "@typescript-eslint/project-service": "8.35.0", + "@typescript-eslint/tsconfig-utils": "8.35.0", + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/visitor-keys": "8.35.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7388,24 +7375,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.34.1.tgz", - "integrity": "sha512-mqOwUdZ3KjtGk7xJJnLbHxTuWVn3GO2WZZuM+Slhkun4+qthLdXx32C8xIXbO1kfCECb3jIs3eoxK3eryk7aoQ==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.0.tgz", + "integrity": "sha512-nqoMu7WWM7ki5tPgLVsmPM8CkqtoPUG6xXGeefM5t4x3XumOEKMoUZPdi+7F+/EotukN4R9OWdmDxN80fqoZeg==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.34.1", - "@typescript-eslint/types": "8.34.1", - "@typescript-eslint/typescript-estree": "8.34.1" + "@typescript-eslint/scope-manager": "8.35.0", + "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/typescript-estree": "8.35.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.34.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.34.1.tgz", - "integrity": "sha512-xoh5rJ+tgsRKoXnkBPFRLZ7rjKM0AfVbC68UZ/ECXoDbfggb9RbEySN359acY1vS3qZ0jVTVWzbtfapwm5ztxw==", + "version": "8.35.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.0.tgz", + "integrity": "sha512-zTh2+1Y8ZpmeQaQVIc/ZZxsx8UzgKJyNg1PTvjzC7WMhPSVS8bfDX34k1SrwOf016qd5RU3az2UxUNue3IfQ5g==", "dev": true, "requires": { - "@typescript-eslint/types": "8.34.1", + "@typescript-eslint/types": "8.35.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 7d26cf07e76bbaa9f92d34b58169c1658c2bc8e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Jun 2025 07:58:20 +0000 Subject: [PATCH 071/609] Bump @types/node from 24.0.1 to 24.0.7 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.1 to 24.0.7. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.0.7 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index b88a5b7b9..f1ef2ae44 100644 --- a/package-lock.json +++ b/package-lock.json @@ -614,10 +614,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.0.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.1.tgz", - "integrity": "sha512-MX4Zioh39chHlDJbKmEgydJDS3tspMP/lnQC67G3SWsTnb9NeYVWOjkxpOSy4oMfPs4StcWHwBrvUb4ybfnuaw==", - "license": "MIT", + "version": "24.0.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.7.tgz", + "integrity": "sha512-YIEUUr4yf8q8oQoXPpSlnvKNVKDQlPMWrmOcgzoduo7kvA2UF0/BwJ/eMKFTiTtkNL17I0M6Xe2tvwFU7be6iw==", "dependencies": { "undici-types": "~7.8.0" } @@ -7241,9 +7240,9 @@ "dev": true }, "@types/node": { - "version": "24.0.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.1.tgz", - "integrity": "sha512-MX4Zioh39chHlDJbKmEgydJDS3tspMP/lnQC67G3SWsTnb9NeYVWOjkxpOSy4oMfPs4StcWHwBrvUb4ybfnuaw==", + "version": "24.0.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.7.tgz", + "integrity": "sha512-YIEUUr4yf8q8oQoXPpSlnvKNVKDQlPMWrmOcgzoduo7kvA2UF0/BwJ/eMKFTiTtkNL17I0M6Xe2tvwFU7be6iw==", "requires": { "undici-types": "~7.8.0" } From 23a0e82f70b7699c753cb7695cd9a9c5fdaaa66a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Hlav=C3=A1=C4=8Dek?= Date: Mon, 30 Jun 2025 22:20:42 +0200 Subject: [PATCH 072/609] Fix expected string in page name --- src/versions/develop/pages/BO/shipping/carriers/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/shipping/carriers/create.ts b/src/versions/develop/pages/BO/shipping/carriers/create.ts index 811dab3cf..34c5e52c4 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/create.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/create.ts @@ -102,7 +102,7 @@ class BOCarriersCreatePage extends BOBasePage implements BOCarriersCreatePageInt super(); this.pageTitleCreate = `New Carrier • ${global.INSTALL.SHOP_NAME}`; - this.pageTitleEdit = `Carrier • ${global.INSTALL.SHOP_NAME}`; + this.pageTitleEdit = `Editing carrier`; this.carrierForm = 'form[name="carrier"]'; // General settings From 05039990a21b7260af0d20937f84b4fa08b0b704 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 1 Jul 2025 11:59:11 +0200 Subject: [PATCH 073/609] Revert "Fix feature flag page title" --- src/versions/develop/pages/BO/advancedParameters/featureFlag.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts index fa77542c7..88d0fc9d0 100644 --- a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts +++ b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts @@ -35,7 +35,7 @@ class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { constructor() { super(); - this.pageTitle = `New & Experimental Features • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `New & experimental features • ${global.INSTALL.SHOP_NAME}`; this.successfulUpdateMessage = 'Update successful'; // Feature Flag From b678bb0e38e73dad19c6cd1db3ee9b942470b15a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Hlav=C3=A1=C4=8Dek?= Date: Thu, 3 Jul 2025 22:10:53 +0200 Subject: [PATCH 074/609] Update create.ts --- src/versions/develop/pages/BO/shipping/carriers/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/shipping/carriers/create.ts b/src/versions/develop/pages/BO/shipping/carriers/create.ts index 34c5e52c4..9cb0890fb 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/create.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/create.ts @@ -102,7 +102,7 @@ class BOCarriersCreatePage extends BOBasePage implements BOCarriersCreatePageInt super(); this.pageTitleCreate = `New Carrier • ${global.INSTALL.SHOP_NAME}`; - this.pageTitleEdit = `Editing carrier`; + this.pageTitleEdit = 'Editing carrier'; this.carrierForm = 'form[name="carrier"]'; // General settings From 47c5180ed7946fc7ed67fa54defd0902ce173837 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Fri, 4 Jul 2025 12:28:47 +0200 Subject: [PATCH 075/609] Revert "Revert "Fix feature flag page title"" --- src/versions/develop/pages/BO/advancedParameters/featureFlag.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts index 88d0fc9d0..fa77542c7 100644 --- a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts +++ b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts @@ -35,7 +35,7 @@ class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { constructor() { super(); - this.pageTitle = `New & experimental features • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `New & Experimental Features • ${global.INSTALL.SHOP_NAME}`; this.successfulUpdateMessage = 'Update successful'; // Feature Flag From 92ef05600d9cfb24907b11e889ba02a086c56f26 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 4 Jul 2025 10:30:26 +0000 Subject: [PATCH 076/609] Bump @playwright/test from 1.53.0 to 1.53.1 Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.53.0 to 1.53.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.53.0...v1.53.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.53.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 47 ++++++++++++++++++++++------------------------- 1 file changed, 22 insertions(+), 25 deletions(-) diff --git a/package-lock.json b/package-lock.json index 782cffa49..e81169e6a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -530,12 +530,11 @@ } }, "node_modules/@playwright/test": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.53.0.tgz", - "integrity": "sha512-15hjKreZDcp7t6TL/7jkAo6Df5STZN09jGiv5dbP9A6vMVncXRqE7/B2SncsyOwrkZRBH2i6/TPOL8BVmm3c7w==", - "license": "Apache-2.0", + "version": "1.53.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.53.2.tgz", + "integrity": "sha512-tEB2U5z74ebBeyfGNZ3Jfg29AnW+5HlWhvHtb/Mqco9pFdZU1ZLNdVb2UtB5CvmiilNr2ZfVH/qMmAROG/XTzw==", "dependencies": { - "playwright": "1.53.0" + "playwright": "1.53.2" }, "bin": { "playwright": "cli.js" @@ -5064,12 +5063,11 @@ } }, "node_modules/playwright": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.53.0.tgz", - "integrity": "sha512-ghGNnIEYZC4E+YtclRn4/p6oYbdPiASELBIYkBXfaTVKreQUYbMUYQDwS12a8F0/HtIjr/CkGjtwABeFPGcS4Q==", - "license": "Apache-2.0", + "version": "1.53.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.53.2.tgz", + "integrity": "sha512-6K/qQxVFuVQhRQhFsVZ9fGeatxirtrpPgxzBYWyZLEXJzqYwuL4fuNmfOfD5et1tJE4GScKyPNeLhZeRwuTU3A==", "dependencies": { - "playwright-core": "1.53.0" + "playwright-core": "1.53.2" }, "bin": { "playwright": "cli.js" @@ -5082,10 +5080,9 @@ } }, "node_modules/playwright-core": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.53.0.tgz", - "integrity": "sha512-mGLg8m0pm4+mmtB7M89Xw/GSqoNC+twivl8ITteqvAndachozYe2ZA7srU6uleV1vEdAHYqjq+SV8SNxRRFYBw==", - "license": "Apache-2.0", + "version": "1.53.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.53.2.tgz", + "integrity": "sha512-ox/OytMy+2w1jcYEYlOo1Hhp8hZkLCximMTUTMBXjGUA1KoFfiSZ+DU+3a739jsPY0yoKH2TFy9S2fsJas8yAw==", "bin": { "playwright-core": "cli.js" }, @@ -7150,11 +7147,11 @@ } }, "@playwright/test": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.53.0.tgz", - "integrity": "sha512-15hjKreZDcp7t6TL/7jkAo6Df5STZN09jGiv5dbP9A6vMVncXRqE7/B2SncsyOwrkZRBH2i6/TPOL8BVmm3c7w==", + "version": "1.53.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.53.2.tgz", + "integrity": "sha512-tEB2U5z74ebBeyfGNZ3Jfg29AnW+5HlWhvHtb/Mqco9pFdZU1ZLNdVb2UtB5CvmiilNr2ZfVH/qMmAROG/XTzw==", "requires": { - "playwright": "1.53.0" + "playwright": "1.53.2" } }, "@rtsao/scc": { @@ -10354,18 +10351,18 @@ "dev": true }, "playwright": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.53.0.tgz", - "integrity": "sha512-ghGNnIEYZC4E+YtclRn4/p6oYbdPiASELBIYkBXfaTVKreQUYbMUYQDwS12a8F0/HtIjr/CkGjtwABeFPGcS4Q==", + "version": "1.53.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.53.2.tgz", + "integrity": "sha512-6K/qQxVFuVQhRQhFsVZ9fGeatxirtrpPgxzBYWyZLEXJzqYwuL4fuNmfOfD5et1tJE4GScKyPNeLhZeRwuTU3A==", "requires": { "fsevents": "2.3.2", - "playwright-core": "1.53.0" + "playwright-core": "1.53.2" } }, "playwright-core": { - "version": "1.53.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.53.0.tgz", - "integrity": "sha512-mGLg8m0pm4+mmtB7M89Xw/GSqoNC+twivl8ITteqvAndachozYe2ZA7srU6uleV1vEdAHYqjq+SV8SNxRRFYBw==" + "version": "1.53.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.53.2.tgz", + "integrity": "sha512-ox/OytMy+2w1jcYEYlOo1Hhp8hZkLCximMTUTMBXjGUA1KoFfiSZ+DU+3a739jsPY0yoKH2TFy9S2fsJas8yAw==" }, "plimit-lit": { "version": "1.6.1", From 2d44bd1a399015be4a00d31c9ffac216accded97 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 07:01:42 +0000 Subject: [PATCH 077/609] Bump @faker-js/faker from 9.8.0 to 9.9.0 Bumps [@faker-js/faker](https://github.com/faker-js/faker) from 9.8.0 to 9.9.0. - [Release notes](https://github.com/faker-js/faker/releases) - [Changelog](https://github.com/faker-js/faker/blob/next/CHANGELOG.md) - [Commits](https://github.com/faker-js/faker/compare/v9.8.0...v9.9.0) --- updated-dependencies: - dependency-name: "@faker-js/faker" dependency-version: 9.9.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index e81169e6a..962229464 100644 --- a/package-lock.json +++ b/package-lock.json @@ -340,16 +340,15 @@ } }, "node_modules/@faker-js/faker": { - "version": "9.8.0", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-9.8.0.tgz", - "integrity": "sha512-U9wpuSrJC93jZBxx/Qq2wPjCuYISBueyVUGK7qqdmj7r/nxaxwW8AQDCLeRO7wZnjj94sh3p246cAYjUKuqgfg==", + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-9.9.0.tgz", + "integrity": "sha512-OEl393iCOoo/z8bMezRlJu+GlRGlsKbUAN7jKB6LhnKoqKve5DXRpalbItIIcwnCjs1k/FOPjFzcA6Qn+H+YbA==", "funding": [ { "type": "opencollective", "url": "https://opencollective.com/fakerjs" } ], - "license": "MIT", "engines": { "node": ">=18.0.0", "npm": ">=9.0.0" @@ -7006,9 +7005,9 @@ "dev": true }, "@faker-js/faker": { - "version": "9.8.0", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-9.8.0.tgz", - "integrity": "sha512-U9wpuSrJC93jZBxx/Qq2wPjCuYISBueyVUGK7qqdmj7r/nxaxwW8AQDCLeRO7wZnjj94sh3p246cAYjUKuqgfg==" + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-9.9.0.tgz", + "integrity": "sha512-OEl393iCOoo/z8bMezRlJu+GlRGlsKbUAN7jKB6LhnKoqKve5DXRpalbItIIcwnCjs1k/FOPjFzcA6Qn+H+YbA==" }, "@humanwhocodes/config-array": { "version": "0.13.0", From 5d8cb356e458a9dd6d3e3a04fa83d8cfad81064c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 07:06:51 +0000 Subject: [PATCH 078/609] Bump @typescript-eslint/eslint-plugin from 8.35.0 to 8.35.1 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.35.0 to 8.35.1. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.35.1/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.35.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 210 +++++++++++++++++++++++----------------------- 1 file changed, 105 insertions(+), 105 deletions(-) diff --git a/package-lock.json b/package-lock.json index e81169e6a..8bd8f10bd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -634,16 +634,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.0.tgz", - "integrity": "sha512-ijItUYaiWuce0N1SoSMrEd0b6b6lYkYt99pqCPfybd+HKVXtEvYhICfLdwp42MhiI5mp0oq7PKEL+g1cNiz/Eg==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.1.tgz", + "integrity": "sha512-9XNTlo7P7RJxbVeICaIIIEipqxLKguyh+3UbXuT2XQuFp6d8VOeDEGuz5IiX0dgZo8CiI6aOFLg4e8cF71SFVg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.35.0", - "@typescript-eslint/type-utils": "8.35.0", - "@typescript-eslint/utils": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0", + "@typescript-eslint/scope-manager": "8.35.1", + "@typescript-eslint/type-utils": "8.35.1", + "@typescript-eslint/utils": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -657,7 +657,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.35.0", + "@typescript-eslint/parser": "^8.35.1", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } @@ -686,15 +686,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.0.tgz", - "integrity": "sha512-6sMvZePQrnZH2/cJkwRpkT7DxoAWh+g6+GFRK6bV3YQo7ogi3SX5rgF6099r5Q53Ma5qeT7LGmOmuIutF4t3lA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.1.tgz", + "integrity": "sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.35.0", - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/typescript-estree": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0", + "@typescript-eslint/scope-manager": "8.35.1", + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/typescript-estree": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1", "debug": "^4.3.4" }, "engines": { @@ -710,13 +710,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.0.tgz", - "integrity": "sha512-41xatqRwWZuhUMF/aZm2fcUsOFKNcG28xqRSS6ZVr9BVJtGExosLAm5A1OxTjRMagx8nJqva+P5zNIGt8RIgbQ==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.1.tgz", + "integrity": "sha512-VYxn/5LOpVxADAuP3NrnxxHYfzVtQzLKeldIhDhzC8UHaiQvYlXvKuVho1qLduFbJjjy5U5bkGwa3rUGUb1Q6Q==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.35.0", - "@typescript-eslint/types": "^8.35.0", + "@typescript-eslint/tsconfig-utils": "^8.35.1", + "@typescript-eslint/types": "^8.35.1", "debug": "^4.3.4" }, "engines": { @@ -731,13 +731,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.0.tgz", - "integrity": "sha512-+AgL5+mcoLxl1vGjwNfiWq5fLDZM1TmTPYs2UkyHfFhgERxBbqHlNjRzhThJqz+ktBqTChRYY6zwbMwy0591AA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.1.tgz", + "integrity": "sha512-s/Bpd4i7ht2934nG+UoSPlYXd08KYz3bmjLEb7Ye1UVob0d1ENiT3lY8bsCmik4RqfSbPw9xJJHbugpPpP5JUg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0" + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -748,9 +748,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.0.tgz", - "integrity": "sha512-04k/7247kZzFraweuEirmvUj+W3bJLI9fX6fbo1Qm2YykuBvEhRTPl8tcxlYO8kZZW+HIXfkZNoasVb8EV4jpA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.1.tgz", + "integrity": "sha512-K5/U9VmT9dTHoNowWZpz+/TObS3xqC5h0xAIjXPw+MNcKV9qg6eSatEnmeAwkjHijhACH0/N7bkhKvbt1+DXWQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -764,13 +764,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.0.tgz", - "integrity": "sha512-ceNNttjfmSEoM9PW87bWLDEIaLAyR+E6BoYJQ5PfaDau37UGca9Nyq3lBk8Bw2ad0AKvYabz6wxc7DMTO2jnNA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.1.tgz", + "integrity": "sha512-HOrUBlfVRz5W2LIKpXzZoy6VTZzMu2n8q9C2V/cFngIC5U1nStJgv0tMV4sZPzdf4wQm9/ToWUFPMN9Vq9VJQQ==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.35.0", - "@typescript-eslint/utils": "8.35.0", + "@typescript-eslint/typescript-estree": "8.35.1", + "@typescript-eslint/utils": "8.35.1", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -799,9 +799,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.0.tgz", - "integrity": "sha512-0mYH3emanku0vHw2aRLNGqe7EXh9WHEhi7kZzscrMDf6IIRUQ5Jk4wp1QrledE/36KtdZrVfKnE32eZCf/vaVQ==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.1.tgz", + "integrity": "sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -812,15 +812,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.0.tgz", - "integrity": "sha512-F+BhnaBemgu1Qf8oHrxyw14wq6vbL8xwWKKMwTMwYIRmFFY/1n/9T/jpbobZL8vp7QyEUcC6xGrnAO4ua8Kp7w==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.1.tgz", + "integrity": "sha512-Vvpuvj4tBxIka7cPs6Y1uvM7gJgdF5Uu9F+mBJBPY4MhvjrjWGK4H0lVgLJd/8PWZ23FTqsaJaLEkBCFUk8Y9g==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.35.0", - "@typescript-eslint/tsconfig-utils": "8.35.0", - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0", + "@typescript-eslint/project-service": "8.35.1", + "@typescript-eslint/tsconfig-utils": "8.35.1", + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -852,15 +852,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.0.tgz", - "integrity": "sha512-nqoMu7WWM7ki5tPgLVsmPM8CkqtoPUG6xXGeefM5t4x3XumOEKMoUZPdi+7F+/EotukN4R9OWdmDxN80fqoZeg==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.1.tgz", + "integrity": "sha512-lhnwatFmOFcazAsUm3ZnZFpXSxiwoa1Lj50HphnDe1Et01NF4+hrdXONSUHIcbVu2eFb1bAf+5yjXkGVkXBKAQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.35.0", - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/typescript-estree": "8.35.0" + "@typescript-eslint/scope-manager": "8.35.1", + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/typescript-estree": "8.35.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -875,12 +875,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.0.tgz", - "integrity": "sha512-zTh2+1Y8ZpmeQaQVIc/ZZxsx8UzgKJyNg1PTvjzC7WMhPSVS8bfDX34k1SrwOf016qd5RU3az2UxUNue3IfQ5g==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.1.tgz", + "integrity": "sha512-VRwixir4zBWCSTP/ljEo091lbpypz57PoeAQ9imjG+vbeof9LplljsL1mos4ccG6H9IjfrVGM359RozUnuFhpw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/types": "8.35.1", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7243,16 +7243,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.0.tgz", - "integrity": "sha512-ijItUYaiWuce0N1SoSMrEd0b6b6lYkYt99pqCPfybd+HKVXtEvYhICfLdwp42MhiI5mp0oq7PKEL+g1cNiz/Eg==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.1.tgz", + "integrity": "sha512-9XNTlo7P7RJxbVeICaIIIEipqxLKguyh+3UbXuT2XQuFp6d8VOeDEGuz5IiX0dgZo8CiI6aOFLg4e8cF71SFVg==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.35.0", - "@typescript-eslint/type-utils": "8.35.0", - "@typescript-eslint/utils": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0", + "@typescript-eslint/scope-manager": "8.35.1", + "@typescript-eslint/type-utils": "8.35.1", + "@typescript-eslint/utils": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7275,54 +7275,54 @@ } }, "@typescript-eslint/parser": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.0.tgz", - "integrity": "sha512-6sMvZePQrnZH2/cJkwRpkT7DxoAWh+g6+GFRK6bV3YQo7ogi3SX5rgF6099r5Q53Ma5qeT7LGmOmuIutF4t3lA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.1.tgz", + "integrity": "sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.35.0", - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/typescript-estree": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0", + "@typescript-eslint/scope-manager": "8.35.1", + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/typescript-estree": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.0.tgz", - "integrity": "sha512-41xatqRwWZuhUMF/aZm2fcUsOFKNcG28xqRSS6ZVr9BVJtGExosLAm5A1OxTjRMagx8nJqva+P5zNIGt8RIgbQ==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.1.tgz", + "integrity": "sha512-VYxn/5LOpVxADAuP3NrnxxHYfzVtQzLKeldIhDhzC8UHaiQvYlXvKuVho1qLduFbJjjy5U5bkGwa3rUGUb1Q6Q==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.35.0", - "@typescript-eslint/types": "^8.35.0", + "@typescript-eslint/tsconfig-utils": "^8.35.1", + "@typescript-eslint/types": "^8.35.1", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.0.tgz", - "integrity": "sha512-+AgL5+mcoLxl1vGjwNfiWq5fLDZM1TmTPYs2UkyHfFhgERxBbqHlNjRzhThJqz+ktBqTChRYY6zwbMwy0591AA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.1.tgz", + "integrity": "sha512-s/Bpd4i7ht2934nG+UoSPlYXd08KYz3bmjLEb7Ye1UVob0d1ENiT3lY8bsCmik4RqfSbPw9xJJHbugpPpP5JUg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0" + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.0.tgz", - "integrity": "sha512-04k/7247kZzFraweuEirmvUj+W3bJLI9fX6fbo1Qm2YykuBvEhRTPl8tcxlYO8kZZW+HIXfkZNoasVb8EV4jpA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.1.tgz", + "integrity": "sha512-K5/U9VmT9dTHoNowWZpz+/TObS3xqC5h0xAIjXPw+MNcKV9qg6eSatEnmeAwkjHijhACH0/N7bkhKvbt1+DXWQ==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.0.tgz", - "integrity": "sha512-ceNNttjfmSEoM9PW87bWLDEIaLAyR+E6BoYJQ5PfaDau37UGca9Nyq3lBk8Bw2ad0AKvYabz6wxc7DMTO2jnNA==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.1.tgz", + "integrity": "sha512-HOrUBlfVRz5W2LIKpXzZoy6VTZzMu2n8q9C2V/cFngIC5U1nStJgv0tMV4sZPzdf4wQm9/ToWUFPMN9Vq9VJQQ==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "8.35.0", - "@typescript-eslint/utils": "8.35.0", + "@typescript-eslint/typescript-estree": "8.35.1", + "@typescript-eslint/utils": "8.35.1", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7337,21 +7337,21 @@ } }, "@typescript-eslint/types": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.0.tgz", - "integrity": "sha512-0mYH3emanku0vHw2aRLNGqe7EXh9WHEhi7kZzscrMDf6IIRUQ5Jk4wp1QrledE/36KtdZrVfKnE32eZCf/vaVQ==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.1.tgz", + "integrity": "sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.0.tgz", - "integrity": "sha512-F+BhnaBemgu1Qf8oHrxyw14wq6vbL8xwWKKMwTMwYIRmFFY/1n/9T/jpbobZL8vp7QyEUcC6xGrnAO4ua8Kp7w==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.1.tgz", + "integrity": "sha512-Vvpuvj4tBxIka7cPs6Y1uvM7gJgdF5Uu9F+mBJBPY4MhvjrjWGK4H0lVgLJd/8PWZ23FTqsaJaLEkBCFUk8Y9g==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.35.0", - "@typescript-eslint/tsconfig-utils": "8.35.0", - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/visitor-keys": "8.35.0", + "@typescript-eslint/project-service": "8.35.1", + "@typescript-eslint/tsconfig-utils": "8.35.1", + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/visitor-keys": "8.35.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7370,24 +7370,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.0.tgz", - "integrity": "sha512-nqoMu7WWM7ki5tPgLVsmPM8CkqtoPUG6xXGeefM5t4x3XumOEKMoUZPdi+7F+/EotukN4R9OWdmDxN80fqoZeg==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.1.tgz", + "integrity": "sha512-lhnwatFmOFcazAsUm3ZnZFpXSxiwoa1Lj50HphnDe1Et01NF4+hrdXONSUHIcbVu2eFb1bAf+5yjXkGVkXBKAQ==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.35.0", - "@typescript-eslint/types": "8.35.0", - "@typescript-eslint/typescript-estree": "8.35.0" + "@typescript-eslint/scope-manager": "8.35.1", + "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/typescript-estree": "8.35.1" } }, "@typescript-eslint/visitor-keys": { - "version": "8.35.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.0.tgz", - "integrity": "sha512-zTh2+1Y8ZpmeQaQVIc/ZZxsx8UzgKJyNg1PTvjzC7WMhPSVS8bfDX34k1SrwOf016qd5RU3az2UxUNue3IfQ5g==", + "version": "8.35.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.1.tgz", + "integrity": "sha512-VRwixir4zBWCSTP/ljEo091lbpypz57PoeAQ9imjG+vbeof9LplljsL1mos4ccG6H9IjfrVGM359RozUnuFhpw==", "dev": true, "requires": { - "@typescript-eslint/types": "8.35.0", + "@typescript-eslint/types": "8.35.1", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From e39a8b9c5ba7b21d68c9d730af92f8548d97ebfc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 13:39:04 +0000 Subject: [PATCH 079/609] Bump @types/node from 24.0.7 to 24.0.10 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.7 to 24.0.10. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.0.10 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index c9c8d335f..2282227f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -612,9 +612,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.0.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.7.tgz", - "integrity": "sha512-YIEUUr4yf8q8oQoXPpSlnvKNVKDQlPMWrmOcgzoduo7kvA2UF0/BwJ/eMKFTiTtkNL17I0M6Xe2tvwFU7be6iw==", + "version": "24.0.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.10.tgz", + "integrity": "sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==", "dependencies": { "undici-types": "~7.8.0" } @@ -7222,9 +7222,9 @@ "dev": true }, "@types/node": { - "version": "24.0.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.7.tgz", - "integrity": "sha512-YIEUUr4yf8q8oQoXPpSlnvKNVKDQlPMWrmOcgzoduo7kvA2UF0/BwJ/eMKFTiTtkNL17I0M6Xe2tvwFU7be6iw==", + "version": "24.0.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.10.tgz", + "integrity": "sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==", "requires": { "undici-types": "~7.8.0" } From f8bbb79634c89c9d2096f89acdee98fab9723455 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Jul 2025 15:37:43 +0000 Subject: [PATCH 080/609] Bump dotenv from 17.0.0 to 17.0.1 Bumps [dotenv](https://github.com/motdotla/dotenv) from 17.0.0 to 17.0.1. - [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) - [Commits](https://github.com/motdotla/dotenv/compare/v17.0.0...v17.0.1) --- updated-dependencies: - dependency-name: dotenv dependency-version: 17.0.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2282227f4..f91aa25e1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2037,9 +2037,9 @@ } }, "node_modules/dotenv": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.0.tgz", - "integrity": "sha512-A0BJ5lrpJVSfnMMXjmeO0xUnoxqsBHWCoqqTnGwGYVdnctqXXUEhJOO7LxmgxJon9tEZFGpe0xPRX0h2v3AANQ==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.1.tgz", + "integrity": "sha512-GLjkduuAL7IMJg/ZnOPm9AnWKJ82mSE2tzXLaJ/6hD6DhwGfZaXG77oB8qbReyiczNxnbxQKyh0OE5mXq0bAHA==", "engines": { "node": ">=12" }, @@ -8214,9 +8214,9 @@ } }, "dotenv": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.0.tgz", - "integrity": "sha512-A0BJ5lrpJVSfnMMXjmeO0xUnoxqsBHWCoqqTnGwGYVdnctqXXUEhJOO7LxmgxJon9tEZFGpe0xPRX0h2v3AANQ==" + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.1.tgz", + "integrity": "sha512-GLjkduuAL7IMJg/ZnOPm9AnWKJ82mSE2tzXLaJ/6hD6DhwGfZaXG77oB8qbReyiczNxnbxQKyh0OE5mXq0bAHA==" }, "dunder-proto": { "version": "1.0.1", From f5b916aa0e19be9928b4d085b324272a87f9067d Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 8 Jul 2025 15:27:31 +0200 Subject: [PATCH 081/609] `FakerCartRule` : Add setter for discountPercent --- src/data/faker/cartRule.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/data/faker/cartRule.ts b/src/data/faker/cartRule.ts index aa681336b..1cdec299b 100644 --- a/src/data/faker/cartRule.ts +++ b/src/data/faker/cartRule.ts @@ -71,7 +71,7 @@ export default class FakerCartRule { public readonly discountType: string; - public readonly discountPercent: number | null; + public discountPercent: number | string | null; public readonly discountAmount: CartRuleDiscountAmount | null; @@ -205,4 +205,11 @@ export default class FakerCartRule { this.freeGiftProduct = cartRuleToCreate.freeGiftProduct || null; } } + + setDiscountPercent(discountPercent: number|string|null): this + { + this.discountPercent = discountPercent; + + return this; + } } From ccd448812489f9583b1d569df796c76a3ee34c6c Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 8 Jul 2025 15:28:18 +0200 Subject: [PATCH 082/609] `boCartRulesCreatePage`: Added error messages --- src/interfaces/BO/catalog/discounts/create.ts | 2 ++ .../develop/pages/BO/catalog/discounts/create.ts | 14 +++++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/interfaces/BO/catalog/discounts/create.ts b/src/interfaces/BO/catalog/discounts/create.ts index 36c2d0b73..ce449ce7a 100644 --- a/src/interfaces/BO/catalog/discounts/create.ts +++ b/src/interfaces/BO/catalog/discounts/create.ts @@ -4,6 +4,8 @@ import {type Frame, type Page} from '@playwright/test'; export interface BOCartRulesCreatePageInterface extends BOBasePagePageInterface { readonly editPageTitle: string; + readonly errorMessageFieldInvalid: (field: string) => string; + readonly errorMessageReductionPercentageBetween: string; readonly pageTitle: string; clickOnCancelButton(page: Page): Promise; diff --git a/src/versions/develop/pages/BO/catalog/discounts/create.ts b/src/versions/develop/pages/BO/catalog/discounts/create.ts index 679a57104..e3dc908bd 100644 --- a/src/versions/develop/pages/BO/catalog/discounts/create.ts +++ b/src/versions/develop/pages/BO/catalog/discounts/create.ts @@ -13,6 +13,10 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI public readonly editPageTitle: string; + public readonly errorMessageReductionPercentageBetween: string; + + public readonly errorMessageFieldInvalid: (field: string) => string; + private readonly cartRuleForm: string; private readonly infomationsTabLink: string; @@ -167,6 +171,10 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI this.pageTitle = 'Cart Rules > Add new •'; this.editPageTitle = 'Cart Rules > Edit'; + // Messages + this.errorMessageReductionPercentageBetween = 'Reduction percentage must be between 0% and 100%'; + this.errorMessageFieldInvalid = (field: string) => `The ${field} field is invalid.`; + // Selectors this.cartRuleForm = '#cart_rule_form'; @@ -541,10 +549,10 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI async saveCartRule(page: Frame | Page): Promise { await this.clickAndWaitForURL(page, this.saveButton); - if (await this.elementVisible(page, `${this.alertSuccessBlock}[role='alert']`, 2000)) { - return this.getTextContent(page, `${this.alertSuccessBlock}[role='alert']`); + if (await this.elementVisible(page, `${this.alertBlock}[role='alert']`, 2000)) { + return this.getTextContent(page, `${this.alertBlock}[role='alert']`); } - return this.getTextContent(page, this.alertSuccessBlock); + return this.getTextContent(page, this.alertBlock); } /** From 980176480b7bf977d4ce8c14e1c4a341d63ac171 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 8 Jul 2025 15:29:06 +0200 Subject: [PATCH 083/609] `foClassicCartPage` : Replaced getDiscountValue by getCartRuleValue --- src/data/faker/cartRule.ts | 3 +-- src/interfaces/FO/cart/index.ts | 2 +- .../develop/pages/FO/classic/cart/index.ts | 18 +++++++++--------- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/src/data/faker/cartRule.ts b/src/data/faker/cartRule.ts index 1cdec299b..378183afc 100644 --- a/src/data/faker/cartRule.ts +++ b/src/data/faker/cartRule.ts @@ -206,8 +206,7 @@ export default class FakerCartRule { } } - setDiscountPercent(discountPercent: number|string|null): this - { + setDiscountPercent(discountPercent: number|string|null): this { this.discountPercent = discountPercent; return this; diff --git a/src/interfaces/FO/cart/index.ts b/src/interfaces/FO/cart/index.ts index d5d1b2b5e..cc3b14077 100644 --- a/src/interfaces/FO/cart/index.ts +++ b/src/interfaces/FO/cart/index.ts @@ -29,7 +29,7 @@ export interface FoCartPageInterface extends FOBasePagePageInterface { getAlertWarningForPromoCode(page: Page): Promise; getCartRuleErrorMessage(page: Page): Promise; getCartRuleName(page: Page, line?: number): Promise; - getDiscountValue(page: Page, line?: number): Promise; + getCartRuleValue(page: Page, line?: number): Promise; getHighlightPromoCode(page: Page): Promise; getNoItemsInYourCartMessage(page: Page): Promise; getNotificationMessage(page: Page): Promise; diff --git a/src/versions/develop/pages/FO/classic/cart/index.ts b/src/versions/develop/pages/FO/classic/cart/index.ts index f0c0e6fdc..a4ac149cd 100644 --- a/src/versions/develop/pages/FO/classic/cart/index.ts +++ b/src/versions/develop/pages/FO/classic/cart/index.ts @@ -519,22 +519,22 @@ class CartPage extends FOBasePage implements FoCartPageInterface { } /** - * Get cart rule error text + * Get cart rule value * @param page {Page} Browser tab - * @returns {Promise} + * @param line {number} Cart rule line + * @return {string} */ - async getCartRuleErrorMessage(page: Page): Promise { - return this.getTextContent(page, this.cartRuleAlertMessage); + async getCartRuleValue(page: Page, line: number = 1): Promise { + return this.getTextContent(page, this.discountValue(line)); } /** - * Get discount value + * Get cart rule error text * @param page {Page} Browser tab - * @param line {number} Cart summary line - * @returns {Promise} + * @returns {Promise} */ - async getDiscountValue(page: Page, line: number = 1): Promise { - return this.getPriceFromText(page, this.discountValue(line), 2000); + async getCartRuleErrorMessage(page: Page): Promise { + return this.getTextContent(page, this.cartRuleAlertMessage); } /** From bbd7e8ee201f866a99137445ab84935c90fc1652 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 8 Jul 2025 15:30:20 +0200 Subject: [PATCH 084/609] `utilsCore` : Remove async method --- src/data/faker/cartRule.ts | 4 ++++ src/utils/core.ts | 12 ++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/data/faker/cartRule.ts b/src/data/faker/cartRule.ts index 378183afc..efd3edb06 100644 --- a/src/data/faker/cartRule.ts +++ b/src/data/faker/cartRule.ts @@ -206,6 +206,10 @@ export default class FakerCartRule { } } + getDiscountPercent(): number { + return parseInt(this.discountPercent!.toString(), 10); + } + setDiscountPercent(discountPercent: number|string|null): this { this.discountPercent = discountPercent; diff --git a/src/utils/core.ts b/src/utils/core.ts index c18c0a3fe..807afaea7 100644 --- a/src/utils/core.ts +++ b/src/utils/core.ts @@ -33,12 +33,12 @@ export default { }, /** - * Calculate percentage - * @param num {number|float} Number to do the percentage - * @param percentage {number} Percentage value - * @returns {Promise} - */ - async percentage(num: number, percentage: number): Promise { + * Calculate percentage + * @param num {number|float} Number to do the percentage + * @param percentage {number} Percentage value + * @returns {number|float} + */ + percentage(num: number, percentage: number): number { return (num / 100) * percentage; }, From b50f4319eaa5162a9d5e5167341ff7f901244929 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Thu, 10 Jul 2025 16:57:10 +0200 Subject: [PATCH 085/609] Add methods for rollback --- src/interfaces/BO/index.ts | 2 + .../BO/modules/autoupgrade/index.ts | 33 ++- src/pages/BO/BOBasePage.ts | 16 +- .../BO/advancedParameters/featureFlag.ts | 0 .../pages/BO/modules/autoupgrade/index.ts | 228 +++++++++++++++++- 5 files changed, 265 insertions(+), 14 deletions(-) create mode 100644 src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts diff --git a/src/interfaces/BO/index.ts b/src/interfaces/BO/index.ts index 26463180e..3e536ac8c 100644 --- a/src/interfaces/BO/index.ts +++ b/src/interfaces/BO/index.ts @@ -76,6 +76,7 @@ export interface BOBasePagePageInterface extends CommonPageInterface { readonly themeAndLogoParentLink: string; readonly trafficAndSeoLink: string; readonly translationsLink: string; + readonly updateAssistantLink: string; readonly webserviceLink: string; addCurrentPageToQuickAccess(page: Page, pageName: string): Promise; @@ -106,6 +107,7 @@ export interface BOBasePagePageInterface extends CommonPageInterface { goToManageQuickAccessPage(page: Page): Promise; goToMyProfile(page: Page): Promise; goToSubMenu(page: Page, parentSelector: string, linkSelector: string): Promise; + goToUpdateAssistantPage(page: Page): Promise; hasAlertBlock(page: Page): Promise; isMobileMenuVisible(page: Page): Promise; isNavbarVisible(page: Page): Promise; diff --git a/src/interfaces/BO/modules/autoupgrade/index.ts b/src/interfaces/BO/modules/autoupgrade/index.ts index fe56685c2..190b1a862 100644 --- a/src/interfaces/BO/modules/autoupgrade/index.ts +++ b/src/interfaces/BO/modules/autoupgrade/index.ts @@ -6,17 +6,32 @@ export interface ModuleAutoupgradeMainPageInterface extends ModuleConfigurationP readonly pageTitle: string; readonly updateSuccessMessage: string; - cancelBackup(page:Page):Promise; - checkRequirements(page: Page, channel:string): Promise; - checkUpdateSuccess(page:Page):Promise; - chooseLocalArchive(page:Page, psVersion:string):Promise; - chooseNewVersion(page:Page):Promise; - clickOnLaunchBackup(page:Page):Promise; - clickOnUpdateWithoutBackup(page:Page):Promise; + backupClickDeleteSelection(page: Page): Promise; + cancelBackup(page: Page): Promise; + cancelDeleteBackup(page: Page): Promise + checkRequirements(page: Page, channel: string): Promise; + checkUpdateSuccess(page: Page): Promise; + chooseLocalArchive(page: Page, psVersion: string): Promise; + chooseNewVersion(page: Page): Promise; + clickOnExitPostRestore(page: Page): Promise; + clickOnLaunchBackup(page: Page): Promise; + clickOnRestoreButton(page: Page): Promise; + clickOnUpdateAssistantLink(page: Page): Promise; + clickOnUpdateWithoutBackup(page: Page): Promise; + confirmRestore(page: Page): Promise; + deleteBackup(page: Page): Promise; + downloadRestoreLogs(page: Page): Promise; getCurrentPSAndPHPVersion(page: Page): Promise; getNewPSVersion(page: Page): Promise; - getStepTitle(page:Page):Promise; + getNoBackupInYourStoreMessage(page: Page): Promise; + getNumberOfBackups(page: Page): Promise; + getRestoreErrorMessage(page: Page): Promise; + getSelectedBackupName(page: Page): Promise; + getStepTitle(page: Page): Promise; goToMaintenancePage(page: Page): Promise; - goToNextStep(page:Page):Promise; + goToNextStep(page: Page): Promise; + openDeveloperDocumentation(page: Page): Promise; + restoreFromBackup(page: Page): Promise; + startBackup(page: Page): Promise; updateYourStore(page: Page): Promise; } diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index b7754d00d..b14f4d954 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -222,6 +222,8 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly multistoreLink: string; public readonly menuTabLink: string; + + public readonly updateAssistantLink: string; public readonly menuTree: { parent: string; children: string[] }[]; @@ -501,6 +503,9 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte this.multistoreLink = '#subtab-AdminShopGroup'; // Deprecated tab used for regression test this.menuTabLink = '#subtab-AdminTabs'; + + // Update assistant + this.updateAssistantLink = '#subtab-AdminSelfUpgrade'; this.menuTree = [ { @@ -1274,12 +1279,21 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte /** * Get store name - * @param page + * @param page {Page} Browser tab * @returns {Promise} */ async getShopName(page: Page): Promise { return this.getTextContent(page, this.storeName); } + + /** + * Go to update assistant page + * @param page {Page} Browser tab + * @returns {Promise { + await this.clickAndWaitForLoadState(page, this.updateAssistantLink); + } } module.exports = BOBasePage; diff --git a/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts b/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts new file mode 100644 index 000000000..e69de29bb diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index 0812f8475..c6e67a42f 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -69,6 +69,48 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa private readonly updateProgressBar: string; private readonly updateAlertSuccessMessage: string; + + private readonly updateAssistantBreadCrumbLink: string; + + private readonly restoreFromBackupRadioButton: string; + + private readonly BackupConfirmButton: string; + + private readonly progressBar: string; + + private readonly backupAlertMessage: string; + + private readonly backupOptions: string; + + private readonly backupDeleteSelectionLink: string; + + private readonly backupDeleteSelectionDialog: string; + + private readonly backupCancelDeleteButton: string; + + private readonly backupDeleteButton: string; + + private readonly restoreButton: string; + + private readonly restoreFromBackupDialog: string; + + private readonly restoreErrorMessage: string; + + private readonly restoreLogs: string; + + private readonly restoreConfirmButton: string; + + private readonly restoreProgressBar: string; + + private readonly restoreSuccessAlert: string; + + private readonly restoreSuccessAlertTitle: string; + + private readonly restoreDeveloperDocumentation: string; + + private readonly exitPostRestoreLink: string; + + private readonly getNoBackupErrorMessage: string; /** * @constructs @@ -83,7 +125,9 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa // Selectors // First page : Welcome to PrestaShop Update Assistant + this.updateAssistantBreadCrumbLink = '#content ul li.breadcrumb-current'; this.updateYourStoreRadioButton = '#next_page div.radio-card__radio-wrapper input[value="update"]'; + this.restoreFromBackupRadioButton = '#next_page div.radio-card__radio-wrapper input[value="restore"]'; this.getStartedButton = '#ua_step_content div.page__buttons button'; // Step content this.stepContent = '#stepper_content'; @@ -106,6 +150,8 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa this.newPsVersionCardTitle = '#radio_card_online p.radio-card__title'; this.nextStepButton = '#ua_step_content div.page__buttons button'; // 2 : Update options step + this.updateProgressBar = '#ua_step_content div.log-progress__bar div[title*="100"]'; + this.updateAlertSuccessMessage = '#ua_step_content div.page__content div.alert-success p.alert__title'; // 3 : Back up your store step this.launchBackupButton = '#ua_step_content div.page__buttons button.btn-primary'; this.dialogConfirmBackup = '#dialog-confirm-backup'; @@ -114,12 +160,29 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa this.dialogConfirmUpdate = '#dialog-confirm-update'; this.startUpdateRadioButton = '#dialog-start-update-own-backup'; this.dialogConfirmUpdateButton = '.dialog__footer .btn-primary'; - // 4 : Update step - this.updateProgressBar = '#ua_step_content div.log-progress__bar div[title*=\'100\']'; - this.updateAlertSuccessMessage = '#ua_step_content div.page__content div.alert-success p.alert__title'; + this.BackupConfirmButton = '#form-confirm-backup'; + this.progressBar = '#ua_step_content div.progress.log-progress__bar'; + this.backupAlertMessage = '.backup-page__container .alert-success .alert__message'; + this.backupOptions = '#BACKUP_NAME option'; + this.backupDeleteSelectionLink = '#backup_choice button[value="delete"]'; + this.backupDeleteSelectionDialog = '#ua_dialog div.dialog__content'; + this.backupCancelDeleteButton = '#ua_dialog div.dialog__footer button.btn-link'; + this.backupDeleteButton = '#backup_to_delete button'; + // 4 : Restore step + this.restoreButton = '#ua_step_content div.page__buttons button'; + this.restoreFromBackupDialog = '#ua_dialog dialog[aria-label="Restore from a backup?"]'; + this.restoreErrorMessage = '#backup_choice div.render-field__error div.error-message'; + this.restoreLogs = '#ua_step_content div.page__content a[download]'; + this.restoreConfirmButton = '#backup_to_restore button'; + this.restoreProgressBar = '#ua_step_content div.log-progress__bar'; + this.restoreSuccessAlert = '#ua_step_content div.alert-success'; + this.restoreSuccessAlertTitle = '#ua_step_content div.alert-success p.alert__title'; + this.restoreDeveloperDocumentation = '#ua_step_content div.page__buttons a.btn-primary'; + this.exitPostRestoreLink = '#ua_step_content div.page__buttons a.btn-default'; + this.getNoBackupErrorMessage = '#next_page div.radio-card__disabled-message div.radio-card__disabled-message-placement'; } - // Methods + // Methods of update /** * Update your store * @param page {Page} Browser tab @@ -220,6 +283,8 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa return this.getTextContent(page, this.stepTitle); } + // Methods to create a backup + /** * Click on launch backup * @param page {Page} Browser tab @@ -231,6 +296,28 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa return this.elementVisible(page, this.dialogConfirmBackup, 5000); } + /** + * Start backup + * @param page {Page} Browser tab + * @return {Promise { + await this.waitForSelectorAndClick(page, this.BackupConfirmButton); + await this.waitForVisibleSelector(page, this.progressBar); + await this.waitForVisibleSelector(page, this.updateProgressBar, 5000000); + + return this.getTextContent(page, this.backupAlertMessage); + } + + /** + * Click on update assistant link + * @param page {Page} Browser tab + * @return {Promise { + await page.locator(this.updateAssistantBreadCrumbLink).click(); + } + /** * Cancel backup * @param page {Page} Browser tab @@ -264,6 +351,139 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa return this.getTextContent(page, this.updateAlertSuccessMessage); } + + // Methods to restore + /** + * Restore from backup + * @param page {Page} Browser tab + * @return {Promise { + await page.locator(this.restoreFromBackupRadioButton).setChecked(true); + await page.locator(this.getStartedButton).click(); + + return this.elementVisible(page, this.stepContent, 5000); + } + + /** + * Get number of backups + * @param page {Page} Browser tab + * @return {Promise { + return page.locator(this.backupOptions).count(); + } + + /** + * Click on delete selection link + * @param page {Page} Browser tab + * @return {Promise { + await page.locator(this.backupDeleteSelectionLink).click(); + + return this.elementVisible(page, this.backupDeleteSelectionDialog, 5000) + } + + /** + * Cancel delete backup + * @param page {Page} Browser tab + * @return {Promise { + await page.locator(this.backupCancelDeleteButton).click(); + + return this.elementNotVisible(page, this.backupDeleteSelectionDialog, 5000); + } + + /** + * Delete backup + * @param page {Page} Browser tab + * @return {Promise { + await page.locator(this.backupDeleteButton).click(); + + return this.elementNotVisible(page, this.backupDeleteSelectionDialog, 5000); + } + + /** + * Get selected backup name + * @param page {Page} Browser tab + * @return {Promise { + return this.getAttributeContent(page, `${this.backupOptions}[selected]`, 'value'); + } + + /** + * Click on restore button + * @param page {Page} Browser tab + * @return {Promise { + await page.locator(this.restoreButton).click(); + + return this.elementVisible(page, this.restoreFromBackupDialog, 5000); + } + + /** + * Get restore error message + * @param page {Page} Browser tab + * @return {Promise { + return this.getTextContent(page, this.restoreErrorMessage, true); + } + + /** + * Download restore logs + * @param page {Page} Browser tab + * @return {Promise { + return this.clickAndWaitForDownload(page, this.restoreLogs); + } + + /** + * Confirm restore + * @param page {Page} Browser tab + * @return {Promise { + await this.waitForSelectorAndClick(page, this.restoreConfirmButton); + await this.waitForVisibleSelector(page, this.restoreProgressBar); + await this.waitForVisibleSelector(page, this.restoreSuccessAlert, 5000000); + + return this.getTextContent(page, this.restoreSuccessAlertTitle); + } + + /** + * Open developer documentation + * @param page {Page} Browser tab + * @return {Promise { + return this.openLinkWithTargetBlank(page, this.restoreDeveloperDocumentation, '#post-restore-checklist'); + } + + /** + * Click on exit post restore + * @param page {Page} Browser tab + * @return {Promise { + await this.clickAndWaitForLoadState(page, this.exitPostRestoreLink); + } + + /** + * Get no backup in your store message + * @param page {Page} Browser tab + * @return {Promise { + return this.getTextContent(page, this.getNoBackupErrorMessage); + } } const autoupgrade = new Autoupgrade(); From c8f9467dd9cb208cbefd3b314d968e89792b02ea Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Thu, 10 Jul 2025 16:57:50 +0200 Subject: [PATCH 086/609] Fix feature flag pagr title for ps version lte 8.2 --- .../BO/advancedParameters/featureFlag.ts | 2 +- src/pages/BO/advancedParameters/featureFlag.ts | 9 ++++++++- .../pages/BO/advancedParameters/featureFlag.ts | 18 ++++++++++++++++++ .../pages/BO/advancedParameters/featureFlag.ts | 7 ++++--- 4 files changed, 31 insertions(+), 5 deletions(-) diff --git a/src/interfaces/BO/advancedParameters/featureFlag.ts b/src/interfaces/BO/advancedParameters/featureFlag.ts index b4eb063f8..8df5163c2 100644 --- a/src/interfaces/BO/advancedParameters/featureFlag.ts +++ b/src/interfaces/BO/advancedParameters/featureFlag.ts @@ -5,7 +5,7 @@ export interface BOFeatureFlagInterface extends BOBasePagePageInterface { readonly featureFlagAdminAPI: string; readonly featureFlagAdminAPIMultistore: string; readonly featureFlagProductPageV2: string; - readonly pageTitle: string; + pageTitle: string; setFeatureFlag(page: Page, featureFlag: string, toEnable?: boolean): Promise; } diff --git a/src/pages/BO/advancedParameters/featureFlag.ts b/src/pages/BO/advancedParameters/featureFlag.ts index 4f4172c49..1a38b6f97 100644 --- a/src/pages/BO/advancedParameters/featureFlag.ts +++ b/src/pages/BO/advancedParameters/featureFlag.ts @@ -1,8 +1,15 @@ import {type BOFeatureFlagInterface} from '@interfaces/BO/advancedParameters/featureFlag'; +import semver from 'semver'; +import testContext from '@utils/test'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOFeatureFlagInterface { - return require('@versions/develop/pages/BO/advancedParameters/featureFlag'); + if (semver.lte(psVersion, '8.2.0')) { + return require('@versions/8.2.0/pages/BO/advancedParameters/featureFlag').featureFlagPage; + } + return require('@versions/develop/pages/BO/advancedParameters/featureFlag').featureFlagPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts b/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts index e69de29bb..5c4be2368 100644 --- a/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts +++ b/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts @@ -0,0 +1,18 @@ +import {type BOFeatureFlagInterface} from '@interfaces/BO/advancedParameters/featureFlag'; +import {BOFeatureFlagPage} from '@versions/develop/pages/BO/advancedParameters/featureFlag'; + +/** + * Feature flag page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOFeatureFlagVersion extends BOFeatureFlagPage implements BOFeatureFlagInterface { + constructor() { + super(); + + this.pageTitle = `New & Experimental Features • ${global.INSTALL.SHOP_NAME}`; + } +} + +const featureFlagPage = new BOFeatureFlagVersion(); +export {featureFlagPage, BOFeatureFlagVersion as FeatureFlagPage}; diff --git a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts index 88d0fc9d0..8c52e8fa2 100644 --- a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts +++ b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts @@ -7,8 +7,8 @@ import {type Page} from '@playwright/test'; * @class * @extends BOBasePage */ -class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { - public readonly pageTitle: string; +class BOFeatureFlagPage extends BOBasePage implements BOFeatureFlagInterface { + public pageTitle: string; public readonly featureFlagProductPageV2: string; @@ -96,4 +96,5 @@ class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { } } -module.exports = new BOFeatureFlag(); +const boFeatureFlagPage = new BOFeatureFlagPage(); +export {boFeatureFlagPage, BOFeatureFlagPage}; From 89329a1a0e3ea8943ab255caf6b967b120803fc1 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Thu, 10 Jul 2025 23:47:39 +0200 Subject: [PATCH 087/609] Fix lint errors --- src/pages/BO/BOBasePage.ts | 36 ++++++++------- .../BO/advancedParameters/featureFlag.ts | 2 +- .../pages/BO/modules/autoupgrade/index.ts | 44 +++++++++---------- 3 files changed, 42 insertions(+), 40 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index b14f4d954..9014d9427 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -222,7 +222,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly multistoreLink: string; public readonly menuTabLink: string; - + public readonly updateAssistantLink: string; public readonly menuTree: { parent: string; children: string[] }[]; @@ -503,7 +503,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte this.multistoreLink = '#subtab-AdminShopGroup'; // Deprecated tab used for regression test this.menuTabLink = '#subtab-AdminTabs'; - + // Update assistant this.updateAssistantLink = '#subtab-AdminSelfUpgrade'; @@ -1015,13 +1015,14 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte const args = {selector: iFrameSelector, vl: value, hasP: hasParagraph}; // eslint-disable-next-line no-eval const fn: { fnSetValueOnTinymceInput: PageFunction<{ selector: string, vl: string, hasP: boolean }, void> } = eval(`({ - async fnSetValueOnTinymceInput(args) { - /* eslint-env browser */ - const iFrameElement = await document.querySelector(args.selector); - const iFrameHtml = iFrameElement.contentDocument.documentElement; - const textElement = await iFrameHtml.querySelector(args.hasP ? 'body p' : 'body'); - textElement.textContent = args.vl; - }})`); + async fnSetValueOnTinymceInput(args) { + /* eslint-env browser */ + const iFrameElement = await document.querySelector(args.selector); + const iFrameHtml = iFrameElement.contentDocument.documentElement; + const textElement = await iFrameHtml.querySelector(args.hasP ? 'body p' : 'body'); + textElement.textContent = args.vl; + } + })`); await page.evaluate(fn.fnSetValueOnTinymceInput, args); } @@ -1047,14 +1048,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte const args = {selector, value, onChange}; // eslint-disable-next-line no-eval const fn: { fnSetValueOnDTPickerInput: PageFunction<{ selector: string, value: string, onChange: boolean }, void> } = eval(`({ - async fnSetValueOnDTPickerInput(args) { - /* eslint-env browser */ - const textElement = await document.querySelector(args.selector); - textElement.value = args.value; - if (args.onChange) { - textElement.dispatchEvent(new Event('change')); - } - }})`); + async fnSetValueOnDTPickerInput(args) { + /* eslint-env browser */ + const textElement = await document.querySelector(args.selector); + textElement.value = args.value; + if (args.onChange) { + textElement.dispatchEvent(new Event('change')); + } + } + })`); await page.evaluate(fn.fnSetValueOnDTPickerInput, args); } diff --git a/src/pages/BO/advancedParameters/featureFlag.ts b/src/pages/BO/advancedParameters/featureFlag.ts index 1a38b6f97..18e932579 100644 --- a/src/pages/BO/advancedParameters/featureFlag.ts +++ b/src/pages/BO/advancedParameters/featureFlag.ts @@ -6,7 +6,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOFeatureFlagInterface { - if (semver.lte(psVersion, '8.2.0')) { + if (semver.lte(psVersion, '8.3.0')) { return require('@versions/8.2.0/pages/BO/advancedParameters/featureFlag').featureFlagPage; } return require('@versions/develop/pages/BO/advancedParameters/featureFlag').featureFlagPage; diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index c6e67a42f..11311ab3d 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -69,47 +69,47 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa private readonly updateProgressBar: string; private readonly updateAlertSuccessMessage: string; - + private readonly updateAssistantBreadCrumbLink: string; - + private readonly restoreFromBackupRadioButton: string; - + private readonly BackupConfirmButton: string; - + private readonly progressBar: string; - + private readonly backupAlertMessage: string; - + private readonly backupOptions: string; - + private readonly backupDeleteSelectionLink: string; - + private readonly backupDeleteSelectionDialog: string; - + private readonly backupCancelDeleteButton: string; - + private readonly backupDeleteButton: string; - + private readonly restoreButton: string; - + private readonly restoreFromBackupDialog: string; - + private readonly restoreErrorMessage: string; - + private readonly restoreLogs: string; - + private readonly restoreConfirmButton: string; - + private readonly restoreProgressBar: string; - + private readonly restoreSuccessAlert: string; - + private readonly restoreSuccessAlertTitle: string; - + private readonly restoreDeveloperDocumentation: string; - + private readonly exitPostRestoreLink: string; - + private readonly getNoBackupErrorMessage: string; /** @@ -382,7 +382,7 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa async backupClickDeleteSelection(page: Page): Promise { await page.locator(this.backupDeleteSelectionLink).click(); - return this.elementVisible(page, this.backupDeleteSelectionDialog, 5000) + return this.elementVisible(page, this.backupDeleteSelectionDialog, 5000); } /** From cd4cbdafb01cbb71acb6055981f51d6af9954116 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Fri, 11 Jul 2025 08:27:38 +0200 Subject: [PATCH 088/609] Fix some issues --- src/pages/BO/BOBasePage.ts | 32 +++++++++---------- .../BO/advancedParameters/featureFlag.ts | 6 ++-- 2 files changed, 18 insertions(+), 20 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 9014d9427..34066e5e1 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -1015,14 +1015,13 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte const args = {selector: iFrameSelector, vl: value, hasP: hasParagraph}; // eslint-disable-next-line no-eval const fn: { fnSetValueOnTinymceInput: PageFunction<{ selector: string, vl: string, hasP: boolean }, void> } = eval(`({ - async fnSetValueOnTinymceInput(args) { - /* eslint-env browser */ - const iFrameElement = await document.querySelector(args.selector); - const iFrameHtml = iFrameElement.contentDocument.documentElement; - const textElement = await iFrameHtml.querySelector(args.hasP ? 'body p' : 'body'); - textElement.textContent = args.vl; - } - })`); + async fnSetValueOnTinymceInput(args) { + /* eslint-env browser */ + const iFrameElement = await document.querySelector(args.selector); + const iFrameHtml = iFrameElement.contentDocument.documentElement; + const textElement = await iFrameHtml.querySelector(args.hasP ? 'body p' : 'body'); + textElement.textContent = args.vl; + }})`); await page.evaluate(fn.fnSetValueOnTinymceInput, args); } @@ -1048,15 +1047,14 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte const args = {selector, value, onChange}; // eslint-disable-next-line no-eval const fn: { fnSetValueOnDTPickerInput: PageFunction<{ selector: string, value: string, onChange: boolean }, void> } = eval(`({ - async fnSetValueOnDTPickerInput(args) { - /* eslint-env browser */ - const textElement = await document.querySelector(args.selector); - textElement.value = args.value; - if (args.onChange) { - textElement.dispatchEvent(new Event('change')); - } - } - })`); + async fnSetValueOnDTPickerInput(args) { + /* eslint-env browser */ + const textElement = await document.querySelector(args.selector); + textElement.value = args.value; + if (args.onChange) { + textElement.dispatchEvent(new Event('change')); + } + }})`); await page.evaluate(fn.fnSetValueOnDTPickerInput, args); } diff --git a/src/pages/BO/advancedParameters/featureFlag.ts b/src/pages/BO/advancedParameters/featureFlag.ts index 18e932579..00753648b 100644 --- a/src/pages/BO/advancedParameters/featureFlag.ts +++ b/src/pages/BO/advancedParameters/featureFlag.ts @@ -6,10 +6,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOFeatureFlagInterface { - if (semver.lte(psVersion, '8.3.0')) { - return require('@versions/8.2.0/pages/BO/advancedParameters/featureFlag').featureFlagPage; + if (semver.lt(psVersion, '8.3.0')) { + return require('@versions/8.2/pages/BO/advancedParameters/featureFlag'); } - return require('@versions/develop/pages/BO/advancedParameters/featureFlag').featureFlagPage; + return require('@versions/develop/pages/BO/advancedParameters/featureFlag'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ From 061dde9662c96975026fcc7870b803fcb332041c Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Fri, 11 Jul 2025 08:40:22 +0200 Subject: [PATCH 089/609] Revert feature flag page --- .../BO/advancedParameters/featureFlag.ts | 2 +- src/pages/BO/advancedParameters/featureFlag.ts | 7 ------- .../pages/BO/advancedParameters/featureFlag.ts | 18 ------------------ .../pages/BO/advancedParameters/featureFlag.ts | 7 +++---- 4 files changed, 4 insertions(+), 30 deletions(-) delete mode 100644 src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts diff --git a/src/interfaces/BO/advancedParameters/featureFlag.ts b/src/interfaces/BO/advancedParameters/featureFlag.ts index 8df5163c2..b4eb063f8 100644 --- a/src/interfaces/BO/advancedParameters/featureFlag.ts +++ b/src/interfaces/BO/advancedParameters/featureFlag.ts @@ -5,7 +5,7 @@ export interface BOFeatureFlagInterface extends BOBasePagePageInterface { readonly featureFlagAdminAPI: string; readonly featureFlagAdminAPIMultistore: string; readonly featureFlagProductPageV2: string; - pageTitle: string; + readonly pageTitle: string; setFeatureFlag(page: Page, featureFlag: string, toEnable?: boolean): Promise; } diff --git a/src/pages/BO/advancedParameters/featureFlag.ts b/src/pages/BO/advancedParameters/featureFlag.ts index 00753648b..4f4172c49 100644 --- a/src/pages/BO/advancedParameters/featureFlag.ts +++ b/src/pages/BO/advancedParameters/featureFlag.ts @@ -1,14 +1,7 @@ import {type BOFeatureFlagInterface} from '@interfaces/BO/advancedParameters/featureFlag'; -import semver from 'semver'; -import testContext from '@utils/test'; - -const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOFeatureFlagInterface { - if (semver.lt(psVersion, '8.3.0')) { - return require('@versions/8.2/pages/BO/advancedParameters/featureFlag'); - } return require('@versions/develop/pages/BO/advancedParameters/featureFlag'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts b/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts deleted file mode 100644 index 5c4be2368..000000000 --- a/src/versions/8.2/pages/BO/advancedParameters/featureFlag.ts +++ /dev/null @@ -1,18 +0,0 @@ -import {type BOFeatureFlagInterface} from '@interfaces/BO/advancedParameters/featureFlag'; -import {BOFeatureFlagPage} from '@versions/develop/pages/BO/advancedParameters/featureFlag'; - -/** - * Feature flag page, contains functions that can be used on the page - * @class - * @extends BOBasePage - */ -class BOFeatureFlagVersion extends BOFeatureFlagPage implements BOFeatureFlagInterface { - constructor() { - super(); - - this.pageTitle = `New & Experimental Features • ${global.INSTALL.SHOP_NAME}`; - } -} - -const featureFlagPage = new BOFeatureFlagVersion(); -export {featureFlagPage, BOFeatureFlagVersion as FeatureFlagPage}; diff --git a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts index 8c52e8fa2..88d0fc9d0 100644 --- a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts +++ b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts @@ -7,8 +7,8 @@ import {type Page} from '@playwright/test'; * @class * @extends BOBasePage */ -class BOFeatureFlagPage extends BOBasePage implements BOFeatureFlagInterface { - public pageTitle: string; +class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { + public readonly pageTitle: string; public readonly featureFlagProductPageV2: string; @@ -96,5 +96,4 @@ class BOFeatureFlagPage extends BOBasePage implements BOFeatureFlagInterface { } } -const boFeatureFlagPage = new BOFeatureFlagPage(); -export {boFeatureFlagPage, BOFeatureFlagPage}; +module.exports = new BOFeatureFlag(); From eb06dafe706dfe0ddf37881eed5c4397cf62723f Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Fri, 11 Jul 2025 08:43:40 +0200 Subject: [PATCH 090/609] Fix eslint error --- src/pages/BO/BOBasePage.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 34066e5e1..07beffea2 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -1054,7 +1054,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte if (args.onChange) { textElement.dispatchEvent(new Event('change')); } - }})`); + }})`); await page.evaluate(fn.fnSetValueOnDTPickerInput, args); } From d8f1ceed2beaacf7c736be842aac17c94d1355d1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 06:31:25 +0000 Subject: [PATCH 091/609] Bump @typescript-eslint/eslint-plugin from 8.35.1 to 8.36.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.35.1 to 8.36.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.36.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.36.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 210 +++++++++++++++++++++++----------------------- 1 file changed, 105 insertions(+), 105 deletions(-) diff --git a/package-lock.json b/package-lock.json index f91aa25e1..4cd487d57 100644 --- a/package-lock.json +++ b/package-lock.json @@ -633,16 +633,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.1.tgz", - "integrity": "sha512-9XNTlo7P7RJxbVeICaIIIEipqxLKguyh+3UbXuT2XQuFp6d8VOeDEGuz5IiX0dgZo8CiI6aOFLg4e8cF71SFVg==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.36.0.tgz", + "integrity": "sha512-lZNihHUVB6ZZiPBNgOQGSxUASI7UJWhT8nHyUGCnaQ28XFCw98IfrMCG3rUl1uwUWoAvodJQby2KTs79UTcrAg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/type-utils": "8.35.1", - "@typescript-eslint/utils": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/type-utils": "8.36.0", + "@typescript-eslint/utils": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -656,7 +656,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.35.1", + "@typescript-eslint/parser": "^8.36.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } @@ -685,15 +685,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.1.tgz", - "integrity": "sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.36.0.tgz", + "integrity": "sha512-FuYgkHwZLuPbZjQHzJXrtXreJdFMKl16BFYyRrLxDhWr6Qr7Kbcu2s1Yhu8tsiMXw1S0W1pjfFfYEt+R604s+Q==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/typescript-estree": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/typescript-estree": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "debug": "^4.3.4" }, "engines": { @@ -709,13 +709,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.1.tgz", - "integrity": "sha512-VYxn/5LOpVxADAuP3NrnxxHYfzVtQzLKeldIhDhzC8UHaiQvYlXvKuVho1qLduFbJjjy5U5bkGwa3rUGUb1Q6Q==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", + "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.35.1", - "@typescript-eslint/types": "^8.35.1", + "@typescript-eslint/tsconfig-utils": "^8.36.0", + "@typescript-eslint/types": "^8.36.0", "debug": "^4.3.4" }, "engines": { @@ -730,13 +730,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.1.tgz", - "integrity": "sha512-s/Bpd4i7ht2934nG+UoSPlYXd08KYz3bmjLEb7Ye1UVob0d1ENiT3lY8bsCmik4RqfSbPw9xJJHbugpPpP5JUg==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", + "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1" + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -747,9 +747,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.1.tgz", - "integrity": "sha512-K5/U9VmT9dTHoNowWZpz+/TObS3xqC5h0xAIjXPw+MNcKV9qg6eSatEnmeAwkjHijhACH0/N7bkhKvbt1+DXWQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", + "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -763,13 +763,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.1.tgz", - "integrity": "sha512-HOrUBlfVRz5W2LIKpXzZoy6VTZzMu2n8q9C2V/cFngIC5U1nStJgv0tMV4sZPzdf4wQm9/ToWUFPMN9Vq9VJQQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.36.0.tgz", + "integrity": "sha512-5aaGYG8cVDd6cxfk/ynpYzxBRZJk7w/ymto6uiyUFtdCozQIsQWh7M28/6r57Fwkbweng8qAzoMCPwSJfWlmsg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.35.1", - "@typescript-eslint/utils": "8.35.1", + "@typescript-eslint/typescript-estree": "8.36.0", + "@typescript-eslint/utils": "8.36.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -798,9 +798,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.1.tgz", - "integrity": "sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", + "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -811,15 +811,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.1.tgz", - "integrity": "sha512-Vvpuvj4tBxIka7cPs6Y1uvM7gJgdF5Uu9F+mBJBPY4MhvjrjWGK4H0lVgLJd/8PWZ23FTqsaJaLEkBCFUk8Y9g==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", + "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.35.1", - "@typescript-eslint/tsconfig-utils": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/project-service": "8.36.0", + "@typescript-eslint/tsconfig-utils": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -851,15 +851,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.1.tgz", - "integrity": "sha512-lhnwatFmOFcazAsUm3ZnZFpXSxiwoa1Lj50HphnDe1Et01NF4+hrdXONSUHIcbVu2eFb1bAf+5yjXkGVkXBKAQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.36.0.tgz", + "integrity": "sha512-VOqmHu42aEMT+P2qYjylw6zP/3E/HvptRwdn/PZxyV27KhZg2IOszXod4NcXisWzPAGSS4trE/g4moNj6XmH2g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/typescript-estree": "8.35.1" + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/typescript-estree": "8.36.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -874,12 +874,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.1.tgz", - "integrity": "sha512-VRwixir4zBWCSTP/ljEo091lbpypz57PoeAQ9imjG+vbeof9LplljsL1mos4ccG6H9IjfrVGM359RozUnuFhpw==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", + "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/types": "8.36.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7242,16 +7242,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.35.1.tgz", - "integrity": "sha512-9XNTlo7P7RJxbVeICaIIIEipqxLKguyh+3UbXuT2XQuFp6d8VOeDEGuz5IiX0dgZo8CiI6aOFLg4e8cF71SFVg==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.36.0.tgz", + "integrity": "sha512-lZNihHUVB6ZZiPBNgOQGSxUASI7UJWhT8nHyUGCnaQ28XFCw98IfrMCG3rUl1uwUWoAvodJQby2KTs79UTcrAg==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/type-utils": "8.35.1", - "@typescript-eslint/utils": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/type-utils": "8.36.0", + "@typescript-eslint/utils": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7274,54 +7274,54 @@ } }, "@typescript-eslint/parser": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.1.tgz", - "integrity": "sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.36.0.tgz", + "integrity": "sha512-FuYgkHwZLuPbZjQHzJXrtXreJdFMKl16BFYyRrLxDhWr6Qr7Kbcu2s1Yhu8tsiMXw1S0W1pjfFfYEt+R604s+Q==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/typescript-estree": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/typescript-estree": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.1.tgz", - "integrity": "sha512-VYxn/5LOpVxADAuP3NrnxxHYfzVtQzLKeldIhDhzC8UHaiQvYlXvKuVho1qLduFbJjjy5U5bkGwa3rUGUb1Q6Q==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", + "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.35.1", - "@typescript-eslint/types": "^8.35.1", + "@typescript-eslint/tsconfig-utils": "^8.36.0", + "@typescript-eslint/types": "^8.36.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.35.1.tgz", - "integrity": "sha512-s/Bpd4i7ht2934nG+UoSPlYXd08KYz3bmjLEb7Ye1UVob0d1ENiT3lY8bsCmik4RqfSbPw9xJJHbugpPpP5JUg==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", + "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", "dev": true, "requires": { - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1" + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.35.1.tgz", - "integrity": "sha512-K5/U9VmT9dTHoNowWZpz+/TObS3xqC5h0xAIjXPw+MNcKV9qg6eSatEnmeAwkjHijhACH0/N7bkhKvbt1+DXWQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", + "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.35.1.tgz", - "integrity": "sha512-HOrUBlfVRz5W2LIKpXzZoy6VTZzMu2n8q9C2V/cFngIC5U1nStJgv0tMV4sZPzdf4wQm9/ToWUFPMN9Vq9VJQQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.36.0.tgz", + "integrity": "sha512-5aaGYG8cVDd6cxfk/ynpYzxBRZJk7w/ymto6uiyUFtdCozQIsQWh7M28/6r57Fwkbweng8qAzoMCPwSJfWlmsg==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "8.35.1", - "@typescript-eslint/utils": "8.35.1", + "@typescript-eslint/typescript-estree": "8.36.0", + "@typescript-eslint/utils": "8.36.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7336,21 +7336,21 @@ } }, "@typescript-eslint/types": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.35.1.tgz", - "integrity": "sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", + "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.35.1.tgz", - "integrity": "sha512-Vvpuvj4tBxIka7cPs6Y1uvM7gJgdF5Uu9F+mBJBPY4MhvjrjWGK4H0lVgLJd/8PWZ23FTqsaJaLEkBCFUk8Y9g==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", + "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.35.1", - "@typescript-eslint/tsconfig-utils": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/project-service": "8.36.0", + "@typescript-eslint/tsconfig-utils": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7369,24 +7369,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.35.1.tgz", - "integrity": "sha512-lhnwatFmOFcazAsUm3ZnZFpXSxiwoa1Lj50HphnDe1Et01NF4+hrdXONSUHIcbVu2eFb1bAf+5yjXkGVkXBKAQ==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.36.0.tgz", + "integrity": "sha512-VOqmHu42aEMT+P2qYjylw6zP/3E/HvptRwdn/PZxyV27KhZg2IOszXod4NcXisWzPAGSS4trE/g4moNj6XmH2g==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/typescript-estree": "8.35.1" + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/typescript-estree": "8.36.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.35.1.tgz", - "integrity": "sha512-VRwixir4zBWCSTP/ljEo091lbpypz57PoeAQ9imjG+vbeof9LplljsL1mos4ccG6H9IjfrVGM359RozUnuFhpw==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", + "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", "dev": true, "requires": { - "@typescript-eslint/types": "8.35.1", + "@typescript-eslint/types": "8.36.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 526cfb3f9591f96b3cde34d464be1ffca14c866c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 06:34:10 +0000 Subject: [PATCH 092/609] Bump dotenv from 17.0.1 to 17.2.0 Bumps [dotenv](https://github.com/motdotla/dotenv) from 17.0.1 to 17.2.0. - [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) - [Commits](https://github.com/motdotla/dotenv/compare/v17.0.1...v17.2.0) --- updated-dependencies: - dependency-name: dotenv dependency-version: 17.2.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index f91aa25e1..aba6e8af9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2037,9 +2037,9 @@ } }, "node_modules/dotenv": { - "version": "17.0.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.1.tgz", - "integrity": "sha512-GLjkduuAL7IMJg/ZnOPm9AnWKJ82mSE2tzXLaJ/6hD6DhwGfZaXG77oB8qbReyiczNxnbxQKyh0OE5mXq0bAHA==", + "version": "17.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.0.tgz", + "integrity": "sha512-Q4sgBT60gzd0BB0lSyYD3xM4YxrXA9y4uBDof1JNYGzOXrQdQ6yX+7XIAqoFOGQFOTK1D3Hts5OllpxMDZFONQ==", "engines": { "node": ">=12" }, @@ -8214,9 +8214,9 @@ } }, "dotenv": { - "version": "17.0.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.0.1.tgz", - "integrity": "sha512-GLjkduuAL7IMJg/ZnOPm9AnWKJ82mSE2tzXLaJ/6hD6DhwGfZaXG77oB8qbReyiczNxnbxQKyh0OE5mXq0bAHA==" + "version": "17.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.0.tgz", + "integrity": "sha512-Q4sgBT60gzd0BB0lSyYD3xM4YxrXA9y4uBDof1JNYGzOXrQdQ6yX+7XIAqoFOGQFOTK1D3Hts5OllpxMDZFONQ==" }, "dunder-proto": { "version": "1.0.1", From 8f3d8fc5a49707712e3943ddb274fca2da7439b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 06:38:44 +0000 Subject: [PATCH 093/609] Bump @typescript-eslint/parser from 8.35.1 to 8.36.0 Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.35.1 to 8.36.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.36.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-version: 8.36.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 241 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 227 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index f91aa25e1..f0a6c9b2b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -685,15 +685,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.1.tgz", - "integrity": "sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.36.0.tgz", + "integrity": "sha512-FuYgkHwZLuPbZjQHzJXrtXreJdFMKl16BFYyRrLxDhWr6Qr7Kbcu2s1Yhu8tsiMXw1S0W1pjfFfYEt+R604s+Q==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/typescript-estree": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/typescript-estree": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "debug": "^4.3.4" }, "engines": { @@ -708,6 +708,142 @@ "typescript": ">=4.8.4 <5.9.0" } }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", + "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", + "dev": true, + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.36.0", + "@typescript-eslint/types": "^8.36.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", + "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", + "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", + "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", + "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", + "dev": true, + "dependencies": { + "@typescript-eslint/project-service": "8.36.0", + "@typescript-eslint/tsconfig-utils": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", + "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.36.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, "node_modules/@typescript-eslint/project-service": { "version": "8.35.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.35.1.tgz", @@ -7274,16 +7410,93 @@ } }, "@typescript-eslint/parser": { - "version": "8.35.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.35.1.tgz", - "integrity": "sha512-3MyiDfrfLeK06bi/g9DqJxP5pV74LNv4rFTyvGDmT3x2p1yp1lOd+qYZfiRPIOf/oON+WRZR5wxxuF85qOar+w==", + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.36.0.tgz", + "integrity": "sha512-FuYgkHwZLuPbZjQHzJXrtXreJdFMKl16BFYyRrLxDhWr6Qr7Kbcu2s1Yhu8tsiMXw1S0W1pjfFfYEt+R604s+Q==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.35.1", - "@typescript-eslint/types": "8.35.1", - "@typescript-eslint/typescript-estree": "8.35.1", - "@typescript-eslint/visitor-keys": "8.35.1", + "@typescript-eslint/scope-manager": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/typescript-estree": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", "debug": "^4.3.4" + }, + "dependencies": { + "@typescript-eslint/project-service": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", + "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", + "dev": true, + "requires": { + "@typescript-eslint/tsconfig-utils": "^8.36.0", + "@typescript-eslint/types": "^8.36.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", + "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0" + } + }, + "@typescript-eslint/tsconfig-utils": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", + "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", + "dev": true, + "requires": {} + }, + "@typescript-eslint/types": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", + "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", + "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", + "dev": true, + "requires": { + "@typescript-eslint/project-service": "8.36.0", + "@typescript-eslint/tsconfig-utils": "8.36.0", + "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/visitor-keys": "8.36.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "8.36.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", + "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.36.0", + "eslint-visitor-keys": "^4.2.1" + } + }, + "eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true + }, + "ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "requires": {} + } } }, "@typescript-eslint/project-service": { From cea3773da2c43f61a922fca289c900b48d9309e8 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 15 Jul 2025 12:41:38 +0200 Subject: [PATCH 094/609] `dataProducts` : Added tax to demo_6 --- src/data/demo/products.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/data/demo/products.ts b/src/data/demo/products.ts index da4f97a74..0201a3114 100644 --- a/src/data/demo/products.ts +++ b/src/data/demo/products.ts @@ -90,6 +90,7 @@ export default { ], quantity: 1500, status: true, + tax: 20 }), demo_7: new FakerProduct({ id: 5, From 979e5755ba47215b2064bac02791292750efce99 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 15 Jul 2025 12:42:33 +0200 Subject: [PATCH 095/609] `FakerCartRule` : Added setter for Discount Amount Value / Tax --- src/data/faker/cartRule.ts | 16 ++++++++++++++++ src/data/types/cartRule.ts | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/data/faker/cartRule.ts b/src/data/faker/cartRule.ts index efd3edb06..379dbb448 100644 --- a/src/data/faker/cartRule.ts +++ b/src/data/faker/cartRule.ts @@ -215,4 +215,20 @@ export default class FakerCartRule { return this; } + + setDiscountAmountValue(value: number|string): this { + if (this.discountAmount) { + this.discountAmount.value = value; + } + + return this; + } + + setDiscountAmountTax(tax: 'Tax included'|'Tax excluded'): this { + if (this.discountAmount) { + this.discountAmount.tax = tax; + } + + return this; + } } diff --git a/src/data/types/cartRule.ts b/src/data/types/cartRule.ts index a7895ab47..4deb5a57e 100644 --- a/src/data/types/cartRule.ts +++ b/src/data/types/cartRule.ts @@ -36,7 +36,7 @@ type CartRuleCreator = { }; type CartRuleDiscountAmount = { - value: number, + value: number|string, currency: string, tax: string, } From ad5fbbc5fc9b3e51e238d33a81ae1c47b47e7fd6 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 15 Jul 2025 12:43:23 +0200 Subject: [PATCH 096/609] `boCartRulesCreatePage` : Added error message --- src/interfaces/BO/catalog/discounts/create.ts | 1 + src/versions/develop/pages/BO/catalog/discounts/create.ts | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/interfaces/BO/catalog/discounts/create.ts b/src/interfaces/BO/catalog/discounts/create.ts index ce449ce7a..c98ccda58 100644 --- a/src/interfaces/BO/catalog/discounts/create.ts +++ b/src/interfaces/BO/catalog/discounts/create.ts @@ -5,6 +5,7 @@ import {type Frame, type Page} from '@playwright/test'; export interface BOCartRulesCreatePageInterface extends BOBasePagePageInterface { readonly editPageTitle: string; readonly errorMessageFieldInvalid: (field: string) => string; + readonly errorMessageReductionAmountGreatherThan: string; readonly errorMessageReductionPercentageBetween: string; readonly pageTitle: string; diff --git a/src/versions/develop/pages/BO/catalog/discounts/create.ts b/src/versions/develop/pages/BO/catalog/discounts/create.ts index e3dc908bd..4faa123f8 100644 --- a/src/versions/develop/pages/BO/catalog/discounts/create.ts +++ b/src/versions/develop/pages/BO/catalog/discounts/create.ts @@ -13,6 +13,8 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI public readonly editPageTitle: string; + public readonly errorMessageReductionAmountGreatherThan: string; + public readonly errorMessageReductionPercentageBetween: string; public readonly errorMessageFieldInvalid: (field: string) => string; @@ -172,6 +174,7 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI this.editPageTitle = 'Cart Rules > Edit'; // Messages + this.errorMessageReductionAmountGreatherThan = 'Reduction amount cannot be lower than zero.'; this.errorMessageReductionPercentageBetween = 'Reduction percentage must be between 0% and 100%'; this.errorMessageFieldInvalid = (field: string) => `The ${field} field is invalid.`; @@ -450,7 +453,7 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI case 'Amount': await this.setChecked(page, this.discountAmountRadioButton); if (cartRuleData.discountAmount) { - await this.setValue(page, this.discountAmountInput, cartRuleData.discountAmount.value); + await this.setValue(page, this.discountAmountInput, cartRuleData.discountAmount.value.toString()); await this.selectByVisibleText(page, this.discountAmountCurrencySelect, cartRuleData.discountAmount.currency); await this.selectByVisibleText(page, this.discountAmountTaxSelect, cartRuleData.discountAmount.tax); } From 285192c00de0cb368c9960e4f9b3fa49889ef738 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 15 Jul 2025 12:43:50 +0200 Subject: [PATCH 097/609] `foClassicCartPage` : Added method `hasSubtotalDiscount` --- src/interfaces/FO/cart/index.ts | 1 + src/versions/develop/pages/FO/classic/cart/index.ts | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/src/interfaces/FO/cart/index.ts b/src/interfaces/FO/cart/index.ts index cc3b14077..69369e01e 100644 --- a/src/interfaces/FO/cart/index.ts +++ b/src/interfaces/FO/cart/index.ts @@ -42,6 +42,7 @@ export interface FoCartPageInterface extends FOBasePagePageInterface { getProductsNumber(page: Page): Promise; getSubtotalDiscountValue(page: Page): Promise; getSubtotalShippingValue(page: Page): Promise; + hasSubtotalDiscount(page: Page): Promise; isAlertWarningForMinimumPurchaseVisible(page: Page): Promise; isCartRuleNameVisible(page: Page, line?: number): Promise; isProceedToCheckoutButtonDisabled(page: Page): Promise; diff --git a/src/versions/develop/pages/FO/classic/cart/index.ts b/src/versions/develop/pages/FO/classic/cart/index.ts index a4ac149cd..8e2d96d72 100644 --- a/src/versions/develop/pages/FO/classic/cart/index.ts +++ b/src/versions/develop/pages/FO/classic/cart/index.ts @@ -415,6 +415,15 @@ class CartPage extends FOBasePage implements FoCartPageInterface { return this.getPriceFromText(page, this.subtotalDiscountValueSpan, 2000); } + /** + * Return if there is subtotal discount + * @param page {Page} Browser tab + * @returns {Promise} + */ + async hasSubtotalDiscount(page: Page): Promise { + return this.elementVisible(page, this.subtotalDiscountValueSpan); + } + /** * Get subtotal shipping value * @param page {Page} Browser tab From 2497502d6d8620955ea9a808757a7a3fde9d7fc4 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 15 Jul 2025 12:46:41 +0200 Subject: [PATCH 098/609] Fixed ESLint error --- src/data/demo/products.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data/demo/products.ts b/src/data/demo/products.ts index 0201a3114..dcf271668 100644 --- a/src/data/demo/products.ts +++ b/src/data/demo/products.ts @@ -90,7 +90,7 @@ export default { ], quantity: 1500, status: true, - tax: 20 + tax: 20, }), demo_7: new FakerProduct({ id: 5, From a63db7fd5b0b48c9b61fc1f977d0dc4c9c3f0fca Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Jul 2025 10:36:22 +0000 Subject: [PATCH 099/609] Bump @types/node from 24.0.10 to 24.0.13 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.10 to 24.0.13. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.0.13 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index c497ac56a..9ad011482 100644 --- a/package-lock.json +++ b/package-lock.json @@ -612,9 +612,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.0.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.10.tgz", - "integrity": "sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==", + "version": "24.0.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.14.tgz", + "integrity": "sha512-4zXMWD91vBLGRtHK3YbIoFMia+1nqEz72coM42C5ETjnNCa/heoj7NT1G67iAfOqMmcfhuCZ4uNpyz8EjlAejw==", "dependencies": { "undici-types": "~7.8.0" } @@ -7358,9 +7358,9 @@ "dev": true }, "@types/node": { - "version": "24.0.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.10.tgz", - "integrity": "sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==", + "version": "24.0.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.14.tgz", + "integrity": "sha512-4zXMWD91vBLGRtHK3YbIoFMia+1nqEz72coM42C5ETjnNCa/heoj7NT1G67iAfOqMmcfhuCZ4uNpyz8EjlAejw==", "requires": { "undici-types": "~7.8.0" } From 4c03428b08dd0915b5fb0d1a8c1086936904d868 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Jul 2025 12:25:21 +0000 Subject: [PATCH 100/609] Bump @playwright/test from 1.53.2 to 1.54.1 Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.53.2 to 1.54.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.53.2...v1.54.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.54.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9ad011482..ef0dde83e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -529,11 +529,11 @@ } }, "node_modules/@playwright/test": { - "version": "1.53.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.53.2.tgz", - "integrity": "sha512-tEB2U5z74ebBeyfGNZ3Jfg29AnW+5HlWhvHtb/Mqco9pFdZU1ZLNdVb2UtB5CvmiilNr2ZfVH/qMmAROG/XTzw==", + "version": "1.54.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.1.tgz", + "integrity": "sha512-FS8hQ12acieG2dYSksmLOF7BNxnVf2afRJdCuM1eMSxj6QTSE6G4InGF7oApGgDb65MX7AwMVlIkpru0yZA4Xw==", "dependencies": { - "playwright": "1.53.2" + "playwright": "1.54.1" }, "bin": { "playwright": "cli.js" @@ -5198,11 +5198,11 @@ } }, "node_modules/playwright": { - "version": "1.53.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.53.2.tgz", - "integrity": "sha512-6K/qQxVFuVQhRQhFsVZ9fGeatxirtrpPgxzBYWyZLEXJzqYwuL4fuNmfOfD5et1tJE4GScKyPNeLhZeRwuTU3A==", + "version": "1.54.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.1.tgz", + "integrity": "sha512-peWpSwIBmSLi6aW2auvrUtf2DqY16YYcCMO8rTVx486jKmDTJg7UAhyrraP98GB8BoPURZP8+nxO7TSd4cPr5g==", "dependencies": { - "playwright-core": "1.53.2" + "playwright-core": "1.54.1" }, "bin": { "playwright": "cli.js" @@ -5215,9 +5215,9 @@ } }, "node_modules/playwright-core": { - "version": "1.53.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.53.2.tgz", - "integrity": "sha512-ox/OytMy+2w1jcYEYlOo1Hhp8hZkLCximMTUTMBXjGUA1KoFfiSZ+DU+3a739jsPY0yoKH2TFy9S2fsJas8yAw==", + "version": "1.54.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.1.tgz", + "integrity": "sha512-Nbjs2zjj0htNhzgiy5wu+3w09YetDx5pkrpI/kZotDlDUaYk0HVA5xrBVPdow4SAUIlhgKcJeJg4GRKW6xHusA==", "bin": { "playwright-core": "cli.js" }, @@ -7282,11 +7282,11 @@ } }, "@playwright/test": { - "version": "1.53.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.53.2.tgz", - "integrity": "sha512-tEB2U5z74ebBeyfGNZ3Jfg29AnW+5HlWhvHtb/Mqco9pFdZU1ZLNdVb2UtB5CvmiilNr2ZfVH/qMmAROG/XTzw==", + "version": "1.54.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.1.tgz", + "integrity": "sha512-FS8hQ12acieG2dYSksmLOF7BNxnVf2afRJdCuM1eMSxj6QTSE6G4InGF7oApGgDb65MX7AwMVlIkpru0yZA4Xw==", "requires": { - "playwright": "1.53.2" + "playwright": "1.54.1" } }, "@rtsao/scc": { @@ -10563,18 +10563,18 @@ "dev": true }, "playwright": { - "version": "1.53.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.53.2.tgz", - "integrity": "sha512-6K/qQxVFuVQhRQhFsVZ9fGeatxirtrpPgxzBYWyZLEXJzqYwuL4fuNmfOfD5et1tJE4GScKyPNeLhZeRwuTU3A==", + "version": "1.54.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.1.tgz", + "integrity": "sha512-peWpSwIBmSLi6aW2auvrUtf2DqY16YYcCMO8rTVx486jKmDTJg7UAhyrraP98GB8BoPURZP8+nxO7TSd4cPr5g==", "requires": { "fsevents": "2.3.2", - "playwright-core": "1.53.2" + "playwright-core": "1.54.1" } }, "playwright-core": { - "version": "1.53.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.53.2.tgz", - "integrity": "sha512-ox/OytMy+2w1jcYEYlOo1Hhp8hZkLCximMTUTMBXjGUA1KoFfiSZ+DU+3a739jsPY0yoKH2TFy9S2fsJas8yAw==" + "version": "1.54.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.1.tgz", + "integrity": "sha512-Nbjs2zjj0htNhzgiy5wu+3w09YetDx5pkrpI/kZotDlDUaYk0HVA5xrBVPdow4SAUIlhgKcJeJg4GRKW6xHusA==" }, "plimit-lit": { "version": "1.6.1", From b5814dee2355f43371b64c75d23a94e3ab11400a Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Mon, 21 Jul 2025 08:36:27 +0200 Subject: [PATCH 101/609] `dataModule` : Bump ps_newproducts --- src/data/demo/modules.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/data/demo/modules.ts b/src/data/demo/modules.ts index 3af7287f9..c6f63a2dd 100644 --- a/src/data/demo/modules.ts +++ b/src/data/demo/modules.ts @@ -72,8 +72,8 @@ export default { psNewProducts: new FakerModule({ tag: 'ps_newproducts', name: 'New products block', - versionCurrent: 'v1.0.4', - versionOld: 'v1.0.3', + versionCurrent: 'v1.0.5', + versionOld: 'v1.0.4', releaseZip: 'https://github.com/PrestaShop/ps_newproducts/releases/download/%version%/ps_newproducts.zip', }), psSupplierList: new FakerModule({ From c0c4f14b7b5f060554fc72b68ec3783151f9ee59 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 07:27:21 +0000 Subject: [PATCH 102/609] Bump @typescript-eslint/eslint-plugin from 8.36.0 to 8.37.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.36.0 to 8.37.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.37.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.37.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 425 ++++++++++++---------------------------------- 1 file changed, 107 insertions(+), 318 deletions(-) diff --git a/package-lock.json b/package-lock.json index ef0dde83e..66cdddbe2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -633,16 +633,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.36.0.tgz", - "integrity": "sha512-lZNihHUVB6ZZiPBNgOQGSxUASI7UJWhT8nHyUGCnaQ28XFCw98IfrMCG3rUl1uwUWoAvodJQby2KTs79UTcrAg==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", + "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.36.0", - "@typescript-eslint/type-utils": "8.36.0", - "@typescript-eslint/utils": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", + "@typescript-eslint/scope-manager": "8.37.0", + "@typescript-eslint/type-utils": "8.37.0", + "@typescript-eslint/utils": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -656,7 +656,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.36.0", + "@typescript-eslint/parser": "^8.37.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } @@ -685,15 +685,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.36.0.tgz", - "integrity": "sha512-FuYgkHwZLuPbZjQHzJXrtXreJdFMKl16BFYyRrLxDhWr6Qr7Kbcu2s1Yhu8tsiMXw1S0W1pjfFfYEt+R604s+Q==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", + "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/typescript-estree": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", + "@typescript-eslint/scope-manager": "8.37.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/typescript-estree": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0", "debug": "^4.3.4" }, "engines": { @@ -708,150 +708,14 @@ "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", - "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", - "dev": true, - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.36.0", - "@typescript-eslint/types": "^8.36.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", - "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", - "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", - "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", - "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", - "dev": true, - "dependencies": { - "@typescript-eslint/project-service": "8.36.0", - "@typescript-eslint/tsconfig-utils": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", - "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.36.0", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, "node_modules/@typescript-eslint/project-service": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", - "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", + "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.36.0", - "@typescript-eslint/types": "^8.36.0", + "@typescript-eslint/tsconfig-utils": "^8.37.0", + "@typescript-eslint/types": "^8.37.0", "debug": "^4.3.4" }, "engines": { @@ -866,13 +730,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", - "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", + "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0" + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -883,9 +747,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", - "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", + "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -899,13 +763,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.36.0.tgz", - "integrity": "sha512-5aaGYG8cVDd6cxfk/ynpYzxBRZJk7w/ymto6uiyUFtdCozQIsQWh7M28/6r57Fwkbweng8qAzoMCPwSJfWlmsg==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", + "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.36.0", - "@typescript-eslint/utils": "8.36.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/typescript-estree": "8.37.0", + "@typescript-eslint/utils": "8.37.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -934,9 +799,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", - "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", + "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -947,15 +812,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", - "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", + "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.36.0", - "@typescript-eslint/tsconfig-utils": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", + "@typescript-eslint/project-service": "8.37.0", + "@typescript-eslint/tsconfig-utils": "8.37.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -987,15 +852,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.36.0.tgz", - "integrity": "sha512-VOqmHu42aEMT+P2qYjylw6zP/3E/HvptRwdn/PZxyV27KhZg2IOszXod4NcXisWzPAGSS4trE/g4moNj6XmH2g==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", + "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/typescript-estree": "8.36.0" + "@typescript-eslint/scope-manager": "8.37.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/typescript-estree": "8.37.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1010,12 +875,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", - "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", + "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/types": "8.37.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7378,16 +7243,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.36.0.tgz", - "integrity": "sha512-lZNihHUVB6ZZiPBNgOQGSxUASI7UJWhT8nHyUGCnaQ28XFCw98IfrMCG3rUl1uwUWoAvodJQby2KTs79UTcrAg==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", + "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.36.0", - "@typescript-eslint/type-utils": "8.36.0", - "@typescript-eslint/utils": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", + "@typescript-eslint/scope-manager": "8.37.0", + "@typescript-eslint/type-utils": "8.37.0", + "@typescript-eslint/utils": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7410,131 +7275,55 @@ } }, "@typescript-eslint/parser": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.36.0.tgz", - "integrity": "sha512-FuYgkHwZLuPbZjQHzJXrtXreJdFMKl16BFYyRrLxDhWr6Qr7Kbcu2s1Yhu8tsiMXw1S0W1pjfFfYEt+R604s+Q==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", + "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/typescript-estree": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", + "@typescript-eslint/scope-manager": "8.37.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/typescript-estree": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0", "debug": "^4.3.4" - }, - "dependencies": { - "@typescript-eslint/project-service": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", - "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", - "dev": true, - "requires": { - "@typescript-eslint/tsconfig-utils": "^8.36.0", - "@typescript-eslint/types": "^8.36.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", - "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0" - } - }, - "@typescript-eslint/tsconfig-utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", - "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", - "dev": true, - "requires": {} - }, - "@typescript-eslint/types": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", - "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", - "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", - "dev": true, - "requires": { - "@typescript-eslint/project-service": "8.36.0", - "@typescript-eslint/tsconfig-utils": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", - "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.36.0", - "eslint-visitor-keys": "^4.2.1" - } - }, - "eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true - }, - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } } }, "@typescript-eslint/project-service": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.36.0.tgz", - "integrity": "sha512-JAhQFIABkWccQYeLMrHadu/fhpzmSQ1F1KXkpzqiVxA/iYI6UnRt2trqXHt1sYEcw1mxLnB9rKMsOxXPxowN/g==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", + "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.36.0", - "@typescript-eslint/types": "^8.36.0", + "@typescript-eslint/tsconfig-utils": "^8.37.0", + "@typescript-eslint/types": "^8.37.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.36.0.tgz", - "integrity": "sha512-wCnapIKnDkN62fYtTGv2+RY8FlnBYA3tNm0fm91kc2BjPhV2vIjwwozJ7LToaLAyb1ca8BxrS7vT+Pvvf7RvqA==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", + "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", "dev": true, "requires": { - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0" + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.36.0.tgz", - "integrity": "sha512-Nhh3TIEgN18mNbdXpd5Q8mSCBnrZQeY9V7Ca3dqYvNDStNIGRmJA6dmrIPMJ0kow3C7gcQbpsG2rPzy1Ks/AnA==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", + "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.36.0.tgz", - "integrity": "sha512-5aaGYG8cVDd6cxfk/ynpYzxBRZJk7w/ymto6uiyUFtdCozQIsQWh7M28/6r57Fwkbweng8qAzoMCPwSJfWlmsg==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", + "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", "dev": true, "requires": { - "@typescript-eslint/typescript-estree": "8.36.0", - "@typescript-eslint/utils": "8.36.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/typescript-estree": "8.37.0", + "@typescript-eslint/utils": "8.37.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7549,21 +7338,21 @@ } }, "@typescript-eslint/types": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.36.0.tgz", - "integrity": "sha512-xGms6l5cTJKQPZOKM75Dl9yBfNdGeLRsIyufewnxT4vZTrjC0ImQT4fj8QmtJK84F58uSh5HVBSANwcfiXxABQ==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", + "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.36.0.tgz", - "integrity": "sha512-JaS8bDVrfVJX4av0jLpe4ye0BpAaUW7+tnS4Y4ETa3q7NoZgzYbN9zDQTJ8kPb5fQ4n0hliAt9tA4Pfs2zA2Hg==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", + "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.36.0", - "@typescript-eslint/tsconfig-utils": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/visitor-keys": "8.36.0", + "@typescript-eslint/project-service": "8.37.0", + "@typescript-eslint/tsconfig-utils": "8.37.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/visitor-keys": "8.37.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7582,24 +7371,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.36.0.tgz", - "integrity": "sha512-VOqmHu42aEMT+P2qYjylw6zP/3E/HvptRwdn/PZxyV27KhZg2IOszXod4NcXisWzPAGSS4trE/g4moNj6XmH2g==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", + "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.36.0", - "@typescript-eslint/types": "8.36.0", - "@typescript-eslint/typescript-estree": "8.36.0" + "@typescript-eslint/scope-manager": "8.37.0", + "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/typescript-estree": "8.37.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.36.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.36.0.tgz", - "integrity": "sha512-vZrhV2lRPWDuGoxcmrzRZyxAggPL+qp3WzUrlZD+slFueDiYHxeBa34dUXPuC0RmGKzl4lS5kFJYvKCq9cnNDA==", + "version": "8.37.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", + "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", "dev": true, "requires": { - "@typescript-eslint/types": "8.36.0", + "@typescript-eslint/types": "8.37.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From b13d866b0f0871f64c2e19bbd12defffb6881823 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 12:00:15 +0000 Subject: [PATCH 103/609] Bump @types/node from 24.0.14 to 24.0.15 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.14 to 24.0.15. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.0.15 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 66cdddbe2..effb35342 100644 --- a/package-lock.json +++ b/package-lock.json @@ -612,9 +612,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.0.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.14.tgz", - "integrity": "sha512-4zXMWD91vBLGRtHK3YbIoFMia+1nqEz72coM42C5ETjnNCa/heoj7NT1G67iAfOqMmcfhuCZ4uNpyz8EjlAejw==", + "version": "24.0.15", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", + "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", "dependencies": { "undici-types": "~7.8.0" } @@ -7223,9 +7223,9 @@ "dev": true }, "@types/node": { - "version": "24.0.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.14.tgz", - "integrity": "sha512-4zXMWD91vBLGRtHK3YbIoFMia+1nqEz72coM42C5ETjnNCa/heoj7NT1G67iAfOqMmcfhuCZ4uNpyz8EjlAejw==", + "version": "24.0.15", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", + "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", "requires": { "undici-types": "~7.8.0" } From 6fe5a06f16f76a06e42943e0fbe17b25c88605aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 15:16:49 +0000 Subject: [PATCH 104/609] Bump on-headers and compression Bumps [on-headers](https://github.com/jshttp/on-headers) and [compression](https://github.com/expressjs/compression). These dependencies needed to be updated together. Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `compression` from 1.7.4 to 1.8.1 - [Release notes](https://github.com/expressjs/compression/releases) - [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md) - [Commits](https://github.com/expressjs/compression/compare/1.7.4...v1.8.1) --- updated-dependencies: - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect - dependency-name: compression dependency-version: 1.8.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 199 ++++++++++++++-------------------------------- 1 file changed, 61 insertions(+), 138 deletions(-) diff --git a/package-lock.json b/package-lock.json index effb35342..f71a355d6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1320,14 +1320,6 @@ "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/body-parser/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/body-parser/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -1374,9 +1366,9 @@ } }, "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "engines": { "node": ">= 0.8" } @@ -1600,16 +1592,16 @@ } }, "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", + "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", + "bytes": "3.1.2", + "compressible": "~2.0.18", "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", + "negotiator": "~0.6.4", + "on-headers": "~1.1.0", + "safe-buffer": "5.2.1", "vary": "~1.1.2" }, "engines": { @@ -1629,6 +1621,14 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/compression/node_modules/negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -1658,25 +1658,6 @@ "node": ">= 0.6" } }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/content-type": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", @@ -2945,25 +2926,6 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -4868,9 +4830,9 @@ } }, "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz", + "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==", "engines": { "node": ">= 0.8" } @@ -5230,14 +5192,6 @@ "node": ">= 0.8" } }, - "node_modules/raw-body/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/raw-body/node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -5434,9 +5388,23 @@ } }, "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/safe-push-apply": { "version": "1.0.0", @@ -5895,26 +5863,6 @@ "safe-buffer": "~5.2.0" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "optional": true - }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -7702,11 +7650,6 @@ "unpipe": "1.0.0" }, "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -7749,9 +7692,9 @@ } }, "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" }, "call-bind": { "version": "1.0.8", @@ -7907,16 +7850,16 @@ } }, "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", + "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", + "bytes": "3.1.2", + "compressible": "~2.0.18", "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", + "negotiator": "~0.6.4", + "on-headers": "~1.1.0", + "safe-buffer": "5.2.1", "vary": "~1.1.2" }, "dependencies": { @@ -7932,6 +7875,11 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==" } } }, @@ -7959,13 +7907,6 @@ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "requires": { "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - } } }, "content-type": { @@ -8882,11 +8823,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" } } }, @@ -10217,9 +10153,9 @@ } }, "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz", + "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==" }, "once": { "version": "1.4.0", @@ -10454,11 +10390,6 @@ "unpipe": "1.0.0" }, "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -10590,9 +10521,9 @@ } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-push-apply": { "version": "1.0.0", @@ -10920,14 +10851,6 @@ "optional": true, "requires": { "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "optional": true - } } }, "string-width": { From 31e020353013cbcfc1b9b886af15de770b1734e8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 22 Jul 2025 08:05:14 +0000 Subject: [PATCH 105/609] Bump form-data from 4.0.1 to 4.0.4 --- updated-dependencies: - dependency-name: form-data dependency-version: 4.0.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index f71a355d6..d8c689c53 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2231,7 +2231,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -3111,12 +3110,14 @@ } }, "node_modules/form-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", - "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", + "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", "mime-types": "^2.1.12" }, "engines": { @@ -3507,7 +3508,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" @@ -8311,7 +8311,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, "requires": { "es-errors": "^1.3.0", "get-intrinsic": "^1.2.6", @@ -8974,12 +8973,14 @@ } }, "form-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", - "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", + "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", "requires": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", "mime-types": "^2.1.12" } }, @@ -9247,7 +9248,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, "requires": { "has-symbols": "^1.0.3" } From c06c80567fff9953480fcb164b86f0224bb6d17c Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Wed, 23 Jul 2025 08:10:26 +0200 Subject: [PATCH 106/609] `check:data:modules` : Fixed replacement --- src/scripts/updateModules.ts | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/scripts/updateModules.ts b/src/scripts/updateModules.ts index fe3c5246f..ae5c4dd89 100644 --- a/src/scripts/updateModules.ts +++ b/src/scripts/updateModules.ts @@ -1,5 +1,6 @@ import fs from 'fs'; import dataModules from '@data/demo/modules'; +import semver from 'semver'; function getComposerLockVersion(moduleName: string): null|string { const rawData: string = fs.readFileSync('./prestashop/composer.lock', 'utf8'); @@ -20,13 +21,23 @@ for (const module of Object.values(dataModules)) { if (module.versionCurrent) { const version = getComposerLockVersion(module.tag); - if (version && version !== module.versionCurrent) { - console.log(`Bump module ${module.tag} to ${version}`); + if (version && semver.gt(version, module.versionCurrent)) { + console.log(`Bump module ${module.tag} to ${version} (before: ${module.versionCurrent})`); + const rawData: string = fs.readFileSync('src/data/demo/modules.ts', 'utf8'); - fs.writeFileSync('src/data/demo/modules.ts', rawData.replace(module.versionCurrent, version)); + let newData: string = rawData.replace( + `versionCurrent: '${module.versionCurrent}'`, + `versionCurrent: '${version}'`, + ); + if (module.versionOld) { - fs.writeFileSync('src/data/demo/modules.ts', rawData.replace(module.versionOld, module.versionCurrent)); + newData = newData.replace( + `versionOld: '${module.versionOld}'`, + `versionOld: '${module.versionCurrent}'`, + ); } + + fs.writeFileSync('src/data/demo/modules.ts', newData); } } } From 24f0cfb7450ec909f0dc79ab25d456cfa7f0fdbd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 10:44:47 +0200 Subject: [PATCH 107/609] Remove readonly for name and transit name to carrier --- src/data/faker/carrier.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/data/faker/carrier.ts b/src/data/faker/carrier.ts index f83ea6805..93afdc607 100644 --- a/src/data/faker/carrier.ts +++ b/src/data/faker/carrier.ts @@ -18,9 +18,9 @@ export default class FakerCarrier { public readonly position: number; - public readonly name: string; + public name: string; - public readonly transitName: string; + public transitName: string; public readonly speedGrade: number; From b479bdfb853e5837d07d7a95ef613447373365e5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 11:04:20 +0200 Subject: [PATCH 108/609] Replace waitForUrl by waitForLoad in goToSubMenu --- src/pages/BO/BOBasePage.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 4a68e315f..bfdf9d376 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -746,13 +746,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte if (semver.lt(shopVersion, '7.4.0')) { await page.hover(parentSelector); - await this.clickAndWaitForURL(page, linkSelector); + //await this.clickAndWaitForURL(page, linkSelector); + await this.clickAndWaitForLoadState(page, linkSelector, "load"); } else { if (parentSelector !== '') { await this.clickSubMenu(page, parentSelector); await this.scrollTo(page, linkSelector); } - await this.clickAndWaitForURL(page, linkSelector); + //await this.clickAndWaitForURL(page, linkSelector); + await this.clickAndWaitForLoadState(page, linkSelector, "load"); let linkActiveClass: string = '-active'; // >= 1.7.8.0 From bb9bea2caacd30ff629c07afd5de9434bedca931 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 11:08:49 +0200 Subject: [PATCH 109/609] Edit goToSubMenu --- src/pages/BO/BOBasePage.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index bfdf9d376..0b4ac4883 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -747,14 +747,16 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte if (semver.lt(shopVersion, '7.4.0')) { await page.hover(parentSelector); //await this.clickAndWaitForURL(page, linkSelector); - await this.clickAndWaitForLoadState(page, linkSelector, "load"); + await page.locator(linkSelector).click({timeout: 1500}); + await page.waitForLoadState("load"); } else { if (parentSelector !== '') { await this.clickSubMenu(page, parentSelector); await this.scrollTo(page, linkSelector); } //await this.clickAndWaitForURL(page, linkSelector); - await this.clickAndWaitForLoadState(page, linkSelector, "load"); + await page.locator(linkSelector).click({timeout: 1500}); + await page.waitForLoadState("load"); let linkActiveClass: string = '-active'; // >= 1.7.8.0 From 74360365a077d106d1ffda527a98b3418b26a542 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 11:14:56 +0200 Subject: [PATCH 110/609] Remove click timeout --- src/pages/BO/BOBasePage.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 0b4ac4883..0d988e32e 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -747,7 +747,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte if (semver.lt(shopVersion, '7.4.0')) { await page.hover(parentSelector); //await this.clickAndWaitForURL(page, linkSelector); - await page.locator(linkSelector).click({timeout: 1500}); + await page.locator(linkSelector).click(); await page.waitForLoadState("load"); } else { if (parentSelector !== '') { @@ -755,7 +755,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte await this.scrollTo(page, linkSelector); } //await this.clickAndWaitForURL(page, linkSelector); - await page.locator(linkSelector).click({timeout: 1500}); + await page.locator(linkSelector).click(); await page.waitForLoadState("load"); let linkActiveClass: string = '-active'; From 8b25e107f95f14c78716a6ba7de4ebb14e33b83a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:00:21 +0200 Subject: [PATCH 111/609] Add carriers for 1.7.7 --- .gitignore | 1 + src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/.gitignore b/.gitignore index 8618acfec..e0671cba8 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ ## IDE /.vscode/ +/.idea/ diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts new file mode 100644 index 000000000..81ebe88aa --- /dev/null +++ b/src/versions/1.7.7/pages/BO/carriers/index.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; +import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; + + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; + } +} + +module.exports = new BOCarriersPage(); From b4863b7dd7beceefcf7f82e2c80e910571b26c70 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:17:12 +0200 Subject: [PATCH 112/609] Add condition to main carriers page --- src/pages/BO/shipping/carriers/index.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 12eae1d7c..cfe56273a 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/shipping/carriers'); + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers'); } @@ -13,4 +16,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); +export default requirePage(); \ No newline at end of file From 6a3bebff4959c9906c7df67d3e6c873788429bdb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:24:42 +0200 Subject: [PATCH 113/609] Move carriers folder to shipping folder --- src/versions/1.7.7/pages/BO/{ => shipping}/carriers/index.ts | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/versions/1.7.7/pages/BO/{ => shipping}/carriers/index.ts (100%) diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts similarity index 100% rename from src/versions/1.7.7/pages/BO/carriers/index.ts rename to src/versions/1.7.7/pages/BO/shipping/carriers/index.ts From 4848787b8aa7a603989c8ffd2de1a98e93295a79 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:11:00 +0200 Subject: [PATCH 114/609] Add 1.7.7 version for addresses create --- src/pages/BO/shipping/carriers/index.ts | 2 +- .../pages/BO/customers/addresses/create.ts | 18 ++++++++++++++++++ .../1.7.7/pages/BO/shipping/carriers/index.ts | 5 ++--- .../pages/BO/customers/addresses/create.ts | 6 ++++-- 4 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/customers/addresses/create.ts diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index cfe56273a..01ef94380 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -16,4 +16,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); \ No newline at end of file +export default requirePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..ab4567b10 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.saveAddressButton = '.form-horizontal button'; + } +} + +module.exports = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 81ebe88aa..49b02fc63 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,7 +1,6 @@ // Import pages -import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; -import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; - +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/develop/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 78f3ce245..1a7c09262 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -49,7 +49,7 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI private readonly customerAddressOtherInput: string; - private readonly saveAddressButton: string; + protected saveAddressButton: string; /** * @constructs @@ -164,4 +164,6 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI } } -module.exports = new BOAddressesCreatePage(); +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; +//module.exports = new BOAddressesCreatePage(); From 99daa5457199ea6d28f68d5758ad03514a89330d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:13:10 +0200 Subject: [PATCH 115/609] Add condition for addresses page --- src/pages/BO/customers/addresses/create.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 8fb29a5b5..61cf7ee4d 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -1,7 +1,14 @@ import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/customers/addresses/create'); + } return require('@versions/develop/pages/BO/customers/addresses/create'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ From 7ef467155d53506fe4c9841007752756d140039d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 09:51:42 +0200 Subject: [PATCH 116/609] Commit review change suggestions --- src/pages/BO/customers/addresses/create.ts | 2 +- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 +- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 3 ++- src/versions/develop/pages/BO/customers/addresses/create.ts | 1 - 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 61cf7ee4d..65ff0efba 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/customers/addresses/create'); + return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } return require('@versions/develop/pages/BO/customers/addresses/create'); } diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 49b02fc63..26ebad73c 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,6 +1,6 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; -import {BOCarriersPage as BOCarriersPageVersion} from '@versions/develop/pages/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 36d2625a5..55503ee50 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -376,4 +376,5 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte } } -module.exports = new BOCarriersPage(); +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7c09262..45d98c58f 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -166,4 +166,3 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI const boAddressesCreatePage = new BOAddressesCreatePage(); export {boAddressesCreatePage, BOAddressesCreatePage}; -//module.exports = new BOAddressesCreatePage(); From 883987cf7a3d1df53c37d1b2de43ba05373eb17f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 10:49:05 +0200 Subject: [PATCH 117/609] Fix missing element --- src/pages/BO/customers/addresses/create.ts | 2 +- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 65ff0efba..9c648c7b7 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } - return require('@versions/develop/pages/BO/customers/addresses/create'); + return require('@versions/develop/pages/BO/customers/addresses/create').boAddressesCreatePage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index ab4567b10..c9deca0d5 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -11,8 +11,9 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr constructor() { super(); // Header links - this.saveAddressButton = '.form-horizontal button'; + this.saveAddressButton = '.card-footer button.btn-primary'; } } -module.exports = new BOAddressesCreatePage(); +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; From 76350c527ece8cd399ae14e9419a028c97fe9c80 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:43:42 +0200 Subject: [PATCH 118/609] Add heritage from 8.2 to 1.7.7 --- .../pages/BO/customers/addresses/create.ts | 2 +- .../pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.0/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.1/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.2/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ 5 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.7.8/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.0/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.1/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.2/pages/BO/customers/addresses/create.ts diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index c9deca0d5..47d27a663 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -1,6 +1,6 @@ // Import pages import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; -import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.8/pages/BO/customers/addresses/create'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..d609d3e8a --- /dev/null +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..899aad8e8 --- /dev/null +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..29406bc74 --- /dev/null +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..ae2e6b8b0 --- /dev/null +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; From 646826d0bb964bd33f6a3ef20b95f412c25961f3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:59:10 +0200 Subject: [PATCH 119/609] Add page title and success message to 1.7.7 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 5 +++++ src/versions/develop/pages/BO/customers/addresses/create.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 47d27a663..1eec763eb 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -10,6 +10,11 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 45d98c58f..561f61ebe 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ import {type Frame, type Page} from '@playwright/test'; * @extends BOBasePage */ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageInterface { - public readonly pageTitleCreate: string; + public pageTitleCreate: string; public readonly pageTitleEdit: string; From 4e09eac2ed346c7e8360d45fa3fb4ca9ac0cdc05 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 12:11:47 +0200 Subject: [PATCH 120/609] Fix description in jsdocs --- .../1.7.7/pages/BO/customers/addresses/create.ts | 2 +- .../1.7.7/pages/BO/shipping/carriers/index.ts | 9 ++++----- .../1.7.8/pages/BO/customers/addresses/create.ts | 2 +- .../1.7.8/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.0/pages/BO/customers/addresses/create.ts | 2 +- .../8.0/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.1/pages/BO/customers/addresses/create.ts | 2 +- .../8.1/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.2/pages/BO/customers/addresses/create.ts | 2 +- 9 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 src/versions/1.7.8/pages/BO/shipping/carriers/index.ts create mode 100644 src/versions/8.0/pages/BO/shipping/carriers/index.ts create mode 100644 src/versions/8.1/pages/BO/shipping/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 1eec763eb..b3681d58e 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 26ebad73c..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,17 +1,16 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; -import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.8/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in carriers page */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } -module.exports = new BOCarriersPage(); +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts index d609d3e8a..d98e7b4c3 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..72d5416e4 --- /dev/null +++ b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.0/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts index 899aad8e8..9a3d11c97 100644 --- a/src/versions/8.0/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/8.0/pages/BO/shipping/carriers/index.ts b/src/versions/8.0/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..a7398a48d --- /dev/null +++ b/src/versions/8.0/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.1/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts index 29406bc74..9f2c5bc5d 100644 --- a/src/versions/8.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/8.1/pages/BO/shipping/carriers/index.ts b/src/versions/8.1/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..65d1ffd8e --- /dev/null +++ b/src/versions/8.1/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index ae2e6b8b0..1715ace56 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/dev class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); From 3be365d9e7d424a4a6e244ca6271c726bfa4085f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:13:49 +0200 Subject: [PATCH 121/609] Add '.boCarriersPage' to version requirement --- src/pages/BO/shipping/carriers/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 01ef94380..682eb19e6 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/shipping/carriers'); + return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/shipping/carriers'); + return require('@versions/8.2/pages/BO/shipping/carriers').boCarriersPage; } return require('@versions/develop/pages/BO/shipping/carriers').boCarriersPage; } From 2d90ab6e2c0b3152e6213740508a5543d0be0098 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:19:42 +0200 Subject: [PATCH 122/609] Re-add carrier create page link --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 412e87bde33e9d88e6554a3d3ae933def3a49c5c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:36:05 +0200 Subject: [PATCH 123/609] implement version for addresses index --- src/pages/BO/customers/addresses/create.ts | 3 +++ src/pages/BO/customers/addresses/index.ts | 12 +++++++++- .../pages/BO/customers/addresses/create.ts | 18 +++++++-------- .../pages/BO/customers/addresses/index.ts | 23 +++++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.0/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.1/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.2/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/index.ts | 5 ++-- 13 files changed, 144 insertions(+), 33 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/1.7.8/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.0/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.1/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.2/pages/BO/customers/addresses/index.ts diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 9c648c7b7..089a013eb 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -9,6 +9,9 @@ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/customers/addresses/create').boAddressesCreatePage; + } return require('@versions/develop/pages/BO/customers/addresses/create').boAddressesCreatePage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index c5f2e8860..d37ced11b 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -1,8 +1,18 @@ import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesPageInterface { - return require('@versions/develop/pages/BO/customers/addresses'); + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; + } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/customers/addresses').boAddressesPage; + } + return require('@versions/develop/pages/BO/customers/addresses').boAddressesPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index b3681d58e..19dfe39b4 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -2,22 +2,20 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.8/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..16f824136 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -0,0 +1,23 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/1.7.8/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts index d98e7b4c3..e7ac91d0e 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..72b90a5fb --- /dev/null +++ b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.0/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts index 9a3d11c97..cf80b77c1 100644 --- a/src/versions/8.0/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.0/pages/BO/customers/addresses/index.ts b/src/versions/8.0/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..08dd4b929 --- /dev/null +++ b/src/versions/8.0/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.1/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts index 9f2c5bc5d..b37499cda 100644 --- a/src/versions/8.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.1/pages/BO/customers/addresses/index.ts b/src/versions/8.1/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..7ccdf6570 --- /dev/null +++ b/src/versions/8.1/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.2/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 1715ace56..6f856939b 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.2/pages/BO/customers/addresses/index.ts b/src/versions/8.2/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..43a7cd384 --- /dev/null +++ b/src/versions/8.2/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/develop/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/develop/pages/BO/customers/addresses/index.ts b/src/versions/develop/pages/BO/customers/addresses/index.ts index fc3c39a10..8a1c4c3cf 100644 --- a/src/versions/develop/pages/BO/customers/addresses/index.ts +++ b/src/versions/develop/pages/BO/customers/addresses/index.ts @@ -8,7 +8,7 @@ import {type Page} from '@playwright/test'; * @extends BOBasePage */ class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { - public readonly pageTitle: string; + public pageTitle: string; private readonly addNewAddressLink: string; @@ -371,4 +371,5 @@ class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { } } -module.exports = new BOAddressesPage(); +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; From 891205a70ce8badc750c85311d719ee186138751 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:00:02 +0200 Subject: [PATCH 124/609] Implement orderCreate for few versions --- src/pages/BO/orders/create.ts | 10 ++++++++++ src/versions/1.7.7/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/1.7.8/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.0/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.1/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.2/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/develop/pages/BO/orders/create.ts | 3 ++- 7 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.7.7/pages/BO/orders/create.ts create mode 100644 src/versions/1.7.8/pages/BO/orders/create.ts create mode 100644 src/versions/8.0/pages/BO/orders/create.ts create mode 100644 src/versions/8.1/pages/BO/orders/create.ts create mode 100644 src/versions/8.2/pages/BO/orders/create.ts diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 3daaac442..3fb408ae6 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -1,7 +1,17 @@ import type {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; + } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/orders/create').boOrderCreatePage; + } return require('@versions/develop/pages/BO/orders/create'); } diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts new file mode 100644 index 000000000..c4a28dd79 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts new file mode 100644 index 000000000..f5eb6eceb --- /dev/null +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.0/pages/BO/orders/create.ts b/src/versions/8.0/pages/BO/orders/create.ts new file mode 100644 index 000000000..d44fd66ca --- /dev/null +++ b/src/versions/8.0/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.1/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.1/pages/BO/orders/create.ts b/src/versions/8.1/pages/BO/orders/create.ts new file mode 100644 index 000000000..1aa400344 --- /dev/null +++ b/src/versions/8.1/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.2/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.2/pages/BO/orders/create.ts b/src/versions/8.2/pages/BO/orders/create.ts new file mode 100644 index 000000000..20d5060dc --- /dev/null +++ b/src/versions/8.2/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/develop/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 355180d62..682fb5d0e 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -1284,4 +1284,5 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac } } -module.exports = new BOOrderCreatePage(); +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; From 6e08fa721dab649b92bada811763e1f5fd643040 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:06:21 +0200 Subject: [PATCH 125/609] Add temp log for debug --- src/versions/1.7.7/pages/BO/orders/create.ts | 15 +++++++++++++++ src/versions/develop/pages/BO/orders/create.ts | 4 ++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index c4a28dd79..cda393fd6 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,6 +1,8 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; +import {modPsGdprBoMain} from '../../../../../index'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -10,6 +12,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } + + /** + * Choose addresses in form + * @param page {Page} Browser tab + * @param deliveryAddress {string} Delivery address to choose + * @param invoiceAddress {string} Invoice address to choose + * @returns {Promise} + */ + async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { + console.log(deliveryAddress); + await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); + await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 682fb5d0e..6601b4443 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -149,13 +149,13 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly vouchersTableRowRemoveButton: (row: number) => string; - private readonly deliveryAddressSelect: string; + protected readonly deliveryAddressSelect: string; private readonly deliveryAddressDetails: string; private readonly deliveryAddressEditButton: string; - private readonly invoiceAddressSelect: string; + protected readonly invoiceAddressSelect: string; private readonly invoiceAddressDetails: string; From 0c83089bf8ebe8c059a93c6cd91c1d17a3ecd68c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:06:18 +0200 Subject: [PATCH 126/609] Override createOrder function for 1.7.7 version --- src/versions/1.7.7/pages/BO/orders/create.ts | 42 +++++++++++++++---- .../develop/pages/BO/orders/create.ts | 2 +- 2 files changed, 36 insertions(+), 8 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index cda393fd6..3ec04c930 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,4 +1,5 @@ // Import pages +import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; @@ -14,16 +15,43 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea } /** - * Choose addresses in form + * Create order with existing customer * @param page {Page} Browser tab - * @param deliveryAddress {string} Delivery address to choose - * @param invoiceAddress {string} Invoice address to choose + * @param orderToMake {FakerOrder} Order data to create + * @param isNewCustomer {boolean} True if the customer is new * @returns {Promise} */ - async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { - console.log(deliveryAddress); - await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); - await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { + // Choose customer + // If it's a new customer, the creation of customer should be done in test + // with add customer page + if (!isNewCustomer) { + await this.searchCustomer(page, orderToMake.customer.email); + } + + // Choose customer after search or creation + await this.chooseCustomer(page, 1); + + // Add products to carts + for (let i = 0; i < orderToMake.products.length; i++) { + await this.addProductToCart( + page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); + } + + // Choose address + await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); + + // Choose delivery options + await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); + + // Choose payment method + await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); + + // Set order status + await this.setOrderStatus(page, orderToMake.status); + + // Create the order + await this.clickAndWaitForURL(page, this.createOrderButton); } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 6601b4443..d8bf9a927 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -201,7 +201,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderStatusSelect: string; - private readonly createOrderButton: string; + protected readonly createOrderButton: string; private readonly moreActionsDropDownButton: string; From a2dad71fb37e33d6e69a1aaef8a9df1d9699274d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:09:59 +0200 Subject: [PATCH 127/609] Remove useless override --- src/versions/1.7.7/pages/BO/orders/create.ts | 40 -------------------- 1 file changed, 40 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 3ec04c930..cf9c32310 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -13,46 +13,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } - - /** - * Create order with existing customer - * @param page {Page} Browser tab - * @param orderToMake {FakerOrder} Order data to create - * @param isNewCustomer {boolean} True if the customer is new - * @returns {Promise} - */ - async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { - // Choose customer - // If it's a new customer, the creation of customer should be done in test - // with add customer page - if (!isNewCustomer) { - await this.searchCustomer(page, orderToMake.customer.email); - } - - // Choose customer after search or creation - await this.chooseCustomer(page, 1); - - // Add products to carts - for (let i = 0; i < orderToMake.products.length; i++) { - await this.addProductToCart( - page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); - } - - // Choose address - await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); - - // Choose delivery options - await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); - - // Choose payment method - await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); - - // Set order status - await this.setOrderStatus(page, orderToMake.status); - - // Create the order - await this.clickAndWaitForURL(page, this.createOrderButton); - } } const boOrderCreatePage = new BOOrderCreatePage(); From 5b6efda7e8a3edd90a53615f2419bd5a7ecc91d0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:26:02 +0200 Subject: [PATCH 128/609] Override paymentMethodSelect for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index cf9c32310..2f119bf9c 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -12,6 +12,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index d8bf9a927..4dd4cf819 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -177,7 +177,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly giftMessageTextarea: string; - private readonly summaryBlock: string; + protected readonly summaryBlock: string; private readonly totalProducts: string; @@ -193,7 +193,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderMessageTextArea: string; - private readonly paymentMethodSelect: string; + protected paymentMethodSelect: string; private readonly paymentMethodSelectResult: string; From 9b7ef774b9855139f1d4c7a58ced27c4603d9640 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:23:08 +0200 Subject: [PATCH 129/609] Override setPaymentMethod for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 2f119bf9c..52f6dc443 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,9 +1,8 @@ // Import pages -import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; -import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -import {modPsGdprBoMain} from '../../../../../index'; +// Imports from playwright +import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -16,6 +15,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Summary selectors this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); +/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); + await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); + await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ + } } const boOrderCreatePage = new BOOrderCreatePage(); From 3a902c17c7cc327d882163c89abf105c0c1c0205 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:28:55 +0200 Subject: [PATCH 130/609] Remove unwanted comments --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 52f6dc443..18211c5b2 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -24,9 +24,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); -/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); - await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); - await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ } } From fa65a02aff44a8511bd88db9d430e6a2823c8b5f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 13:57:15 +0200 Subject: [PATCH 131/609] Move selector override from 1.7.7 to 8.2 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 4 ---- src/versions/8.2/pages/BO/customers/addresses/create.ts | 2 ++ 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 19dfe39b4..07b98b822 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -9,10 +9,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 6f856939b..30719d699 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -9,6 +9,8 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; } } From 148fd771390885d58e3fd9da1cdc3938a1dcceba Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:08:00 +0200 Subject: [PATCH 132/609] Move carrier button selector override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- src/versions/1.7.8/pages/BO/shipping/carriers/index.ts | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } diff --git a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts index 72d5416e4..63dbd1084 100644 --- a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From b9682e95a1325e8cc0aaa44b8cdf39e1ef7386dc Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:13:25 +0200 Subject: [PATCH 133/609] Add carrier requirement for versions below 8.0.0 --- src/pages/BO/shipping/carriers/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 682eb19e6..2f4512d3c 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,9 @@ function requirePage(): BOCarriersPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/shipping/carriers').boCarriersPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers').boCarriersPage; } From 6f412bbc28a68880c00b769e8ef4c75a8d699256 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:20:12 +0200 Subject: [PATCH 134/609] Move adress creation success message from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/customers/addresses/index.ts | 2 -- src/versions/1.7.8/pages/BO/customers/addresses/index.ts | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 16f824136..519ce98b9 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -13,9 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; } } diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts index 72b90a5fb..f5956d78b 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = 'Successful creation.'; } } From 033b4244acca02eed9e8bb432c75372751c707d7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:21:21 +0200 Subject: [PATCH 135/609] Add requirement for lt 8.0.0 --- src/pages/BO/customers/addresses/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index d37ced11b..435b26b23 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -9,6 +9,9 @@ function requirePage(): BOAddressesPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/customers/addresses').boAddressesPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/customers/addresses').boAddressesPage; } From 3e98f8779ae15896b686b8ef56d23854f7c82ef7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:56:00 +0200 Subject: [PATCH 136/609] Move order setPaymentMethod override from 1.7.7 to 1.7.8 --- src/pages/BO/orders/create.ts | 3 +++ src/versions/1.7.7/pages/BO/orders/create.ts | 15 --------------- src/versions/1.7.8/pages/BO/orders/create.ts | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 3fb408ae6..4eaf4ba9e 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -9,6 +9,9 @@ function requirePage(): BOOrdersCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/orders/create').boOrderCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/orders/create').boOrderCreatePage; } diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 18211c5b2..c4a28dd79 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,8 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -// Imports from playwright -import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -11,19 +9,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); - - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } - - /** - * Set payment method - * @param page {Page} Browser tab - * @param paymentMethodModuleName {string} Payment method to choose - * @returns {Promise} - */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); } } diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index f5eb6eceb..121b07fa5 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -1,5 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { @@ -9,6 +10,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); } } From 95699c1cfad10dab44b63fc76003d41c713f43a9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 10:44:58 +0200 Subject: [PATCH 137/609] Add login compatibility for 1.6.1.24 --- src/data/faker/cmsPage.ts | 2 +- src/pages/BO/login/index.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 21 +++++++++++++++++++ .../8.2/pages/BO/shipping/carriers/index.ts | 12 +++++------ .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../develop/pages/BO/searchResults.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 11 files changed, 51 insertions(+), 27 deletions(-) create mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index 9e2cf6c42..dea1cf4a1 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index the page */ + /** @type {boolean} True to index.ts the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index 3db366d5f..d6e03719e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/login').loginPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts new file mode 100644 index 000000000..94bf43565 --- /dev/null +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {LoginPageInterface} from '@interfaces/BO/login'; +import {LoginPage} from '@versions/1.7.2/pages/BO/login'; + +/** + * Bo login page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOLoginVersion extends LoginPage implements LoginPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on login page + */ + constructor() { + super(); + } +} + +module.exports = new BOLoginVersion(); + diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 55503ee50..1c201b2a9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 66053f27a..937e704b0 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0bd20a8ad..0441624e0 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 449d1b95e..9e46a7b31 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index cc0d3261e..e66d8b17a 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index a87f8bdd7..774b69fff 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index" + * Click "Add missing products to the index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index" + * Click "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index" + * Click on the cron jon link for "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 59282a9c9..1d776ba58 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index) is added to a wishlist + * Check if a product (based on its index.ts) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index d666b2c44..9cd38f119 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 3bf3afb4b5832e8dac36451357e3e82ba29b7eb3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:26:10 +0200 Subject: [PATCH 138/609] Remove unwanted changes --- src/data/faker/cmsPage.ts | 2 +- src/versions/1.6.1.24/pages/BO/login/index.ts | 9 ++++----- src/versions/1.7.7/pages/BO/orders/create.ts | 8 ++++---- src/versions/1.7.8/pages/BO/orders/create.ts | 20 +++++++++---------- src/versions/8.0/pages/BO/orders/create.ts | 8 ++++---- src/versions/8.1/pages/BO/orders/create.ts | 8 ++++---- src/versions/8.2/pages/BO/orders/create.ts | 8 ++++---- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 13 files changed, 50 insertions(+), 51 deletions(-) diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index dea1cf4a1..9e2cf6c42 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index.ts the page */ + /** @type {boolean} True to index the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts index 94bf43565..fbb75adbe 100644 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -8,14 +8,13 @@ import {LoginPage} from '@versions/1.7.2/pages/BO/login'; * @extends ProductsPage */ class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on login page */ - constructor() { - super(); - } + constructor() { + super(); + } } module.exports = new BOLoginVersion(); - diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index c4a28dd79..13a686d06 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index 121b07fa5..16725be4c 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -4,26 +4,26 @@ import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } - /** + /** * Set payment method * @param page {Page} Browser tab * @param paymentMethodModuleName {string} Payment method to choose * @returns {Promise} */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); - } + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.0/pages/BO/orders/create.ts b/src/versions/8.0/pages/BO/orders/create.ts index d44fd66ca..9d3bd0ca6 100644 --- a/src/versions/8.0/pages/BO/orders/create.ts +++ b/src/versions/8.0/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.1/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.1/pages/BO/orders/create.ts b/src/versions/8.1/pages/BO/orders/create.ts index 1aa400344..eb94b9e65 100644 --- a/src/versions/8.1/pages/BO/orders/create.ts +++ b/src/versions/8.1/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.2/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.2/pages/BO/orders/create.ts b/src/versions/8.2/pages/BO/orders/create.ts index 20d5060dc..b3c5dced7 100644 --- a/src/versions/8.2/pages/BO/orders/create.ts +++ b/src/versions/8.2/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/develop/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 937e704b0..66053f27a 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0441624e0..0bd20a8ad 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index e66d8b17a..cc0d3261e 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index 774b69fff..a87f8bdd7 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index.ts" + * Click "Add missing products to the index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index.ts" + * Click "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index.ts" + * Click on the cron jon link for "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 1d776ba58..59282a9c9 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index.ts) is added to a wishlist + * Check if a product (based on its index) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index 9cd38f119..d666b2c44 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 186d6708f1f9b20abbdda8cd057930ec50876f41 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:28:06 +0200 Subject: [PATCH 139/609] Remove unwanted changes part2 --- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 1c201b2a9..5d0c73525 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index. in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { From 45d03b1ba2752c26412383486537eae30001a303 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:30:23 +0200 Subject: [PATCH 140/609] Remove unwanted changes part3 --- src/versions/develop/pages/BO/searchResults.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 9e46a7b31..449d1b95e 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From 67227dd9f8d66bc7d9372c4dc08847130249bf42 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:52:13 +0200 Subject: [PATCH 141/609] Add compat requirement in pages --- src/pages/BO/customers/addresses/create.ts | 3 +++ src/pages/BO/customers/addresses/index.ts | 3 +++ src/pages/BO/orders/create.ts | 3 +++ src/pages/BO/orders/index.ts | 3 +++ src/pages/BO/shipping/carriers/create.ts | 5 ++++- src/pages/BO/shipping/carriers/index.ts | 3 +++ .../pages/BO/customers/addresses/create.ts | 18 ++++++++++++++++ .../pages/BO/customers/addresses/index.ts | 21 +++++++++++++++++++ .../pages/BO/login/index.ts | 0 src/versions/1.6.1/pages/BO/orders/create.ts | 16 ++++++++++++++ src/versions/1.6.1/pages/BO/orders/index.ts | 21 +++++++++++++++++++ .../1.6.1/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++ 12 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.6.1/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/1.6.1/pages/BO/customers/addresses/index.ts rename src/versions/{1.6.1.24 => 1.6.1}/pages/BO/login/index.ts (100%) create mode 100644 src/versions/1.6.1/pages/BO/orders/create.ts create mode 100644 src/versions/1.6.1/pages/BO/orders/index.ts create mode 100644 src/versions/1.6.1/pages/BO/shipping/carriers/index.ts diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 089a013eb..5dec8e24a 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/customers/addresses/create').boAddressesCreatePage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index 435b26b23..af6334473 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/customers/addresses').boAddressesPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; } diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 4eaf4ba9e..9a78c45ac 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/orders/create').boOrderCreatePage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; } diff --git a/src/pages/BO/orders/index.ts b/src/pages/BO/orders/index.ts index f00f62dba..904981a61 100644 --- a/src/pages/BO/orders/index.ts +++ b/src/pages/BO/orders/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/orders').ordersPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/orders').ordersPage; } diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a4de29cb8..a6797ab73 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,8 +6,11 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/shipping/carriers/create'); + return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } return require('@versions/develop/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 2f4512d3c..126e21048 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers').boCarriersPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..e2c2aaf13 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..d69e8655b --- /dev/null +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -0,0 +1,21 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/1.7.7/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1/pages/BO/login/index.ts similarity index 100% rename from src/versions/1.6.1.24/pages/BO/login/index.ts rename to src/versions/1.6.1/pages/BO/login/index.ts diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts new file mode 100644 index 000000000..0e5f5f09d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.7/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/orders/index.ts b/src/versions/1.6.1/pages/BO/orders/index.ts new file mode 100644 index 000000000..7df0e106d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/orders/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {BOOrdersPageInterface} from '@interfaces/BO/orders'; +import {OrdersPage} from '@versions/1.7.7/pages/BO/orders/index'; + +/** + * Orders page, contains functions that can be used on the page + * @class + * @extends OrdersPage + */ +class OrdersPageVersion extends OrdersPage implements BOOrdersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const ordersPage = new OrdersPageVersion(); +export {ordersPage, OrdersPageVersion as OrdersPage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..8d243023d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.7/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; From 5dd4cd39e94b203b37c3f8c9e26f9c9fdf7233c6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 14:21:18 +0200 Subject: [PATCH 142/609] Add version to utils --- src/utils/test.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/utils/test.ts b/src/utils/test.ts index ee517f52a..0c9878771 100644 --- a/src/utils/test.ts +++ b/src/utils/test.ts @@ -50,7 +50,8 @@ export default { const version: string = process.env.PS_VERSION; return version - .replace(/\.x$/, '.99') - .replace(/^1\.7\./, '7.'); + .replace(/\.x$/, '.99') + .replace(/^1\.7\./, '7.') + .replace(/^1\.6\./, '6.'); }, }; From 9a72bda345a93fc4b798da381039dadb6380507a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:00:38 +0200 Subject: [PATCH 143/609] Remove temporary carriersCreate --- src/pages/BO/shipping/carriers/create.ts | 3 --- src/versions/develop/pages/BO/dashboard/index.ts | 3 ++- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a6797ab73..4adcd9105 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; - } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 1c854d1b9..9459a03e3 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -781,4 +781,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -module.exports = new Dashboard(); +const DashboardPage = new Dashboard(); +export {DashboardPage, Dashboard}; From 812d80e0ac328d890a880e2ff7ce829783ec4cb2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:09:12 +0200 Subject: [PATCH 144/609] Remove temporary login require --- src/pages/BO/login/index.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index d6e03719e..3db366d5f 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/login').loginPage; - } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } From 4fcd52c24c9f4e0947cd9e101a55bd2e0db77b42 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:11:44 +0200 Subject: [PATCH 145/609] Add lt for version under 9.0.0 --- src/pages/BO/dashboard/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 03262435d..1822ca588 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -6,7 +6,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { - if (semver.gte(psVersion, '0.0.0')) { + if (semver.lt(psVersion, '9.0.0')) { return require('@versions/develop/pages/BO/dashboard'); } return require('@versions/develop/pages/BO/dashboard'); From de26be4acf7a5a6155c39c97b1ada6f001068655 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:26:56 +0200 Subject: [PATCH 146/609] Try require 8.2 on dashboard 1.6 --- src/pages/BO/dashboard/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 1822ca588..1bca06e05 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/develop/pages/BO/dashboard'); + return require('@versions/8.2/pages/BO/dashboard'); } return require('@versions/develop/pages/BO/dashboard'); } From a8cd8fe6a6d989adac7aafc608fd30815f4586c2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:35:51 +0200 Subject: [PATCH 147/609] Add require for dashboardPage under 9.0.0 --- src/pages/BO/dashboard/index.ts | 2 +- src/pages/BO/login/index.ts | 2 +- src/versions/develop/pages/BO/dashboard/index.ts | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 1bca06e05..59db7e489 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/dashboard'); + return require('@versions/develop/pages/BO/dashboard').dashboardPage; } return require('@versions/develop/pages/BO/dashboard'); } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index 3db366d5f..ab2e9932f 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -13,7 +13,7 @@ function requirePage(): LoginPageInterface { return require('@versions/1.7.8/pages/BO/login').loginPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.1/pages/BO/login').loginPage; + return require('@versions/8.2/pages/BO/login').loginPage; } return require('@versions/develop/pages/BO/login').loginPage; } diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 9459a03e3..a4ed83238 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -781,5 +781,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const DashboardPage = new Dashboard(); -export {DashboardPage, Dashboard}; +const dashboardPage = new Dashboard(); +export {dashboardPage, Dashboard}; From ce9bed1ec155f0be9f95ed21a8a12517d39c2961 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:58:33 +0200 Subject: [PATCH 148/609] Try implementes carriers link to 1.6.1 --- .../1.6.1/pages/BO/dashboard/index.ts | 21 +++++++++++++++++++ .../develop/pages/BO/dashboard/index.ts | 4 ++-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 src/versions/1.6.1/pages/BO/dashboard/index.ts diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts new file mode 100644 index 000000000..84977cc95 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -0,0 +1,21 @@ +import {DashboardPageInterface} from '@interfaces/BO/dashboard'; +import {DashboardPage as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; + + +// @ts-ignore +class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { + private shippingLink: string; + private carriersLink: string; + /** + * @constructs + * Setting up titles and selectors to use on dashboard page + */ + constructor() { + super(); + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; + this.carriersLink = '#subtab-AdminCarriers'; + } +} + +module.exports = new DashboardPage(); diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index a4ed83238..9459a03e3 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -781,5 +781,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const dashboardPage = new Dashboard(); -export {dashboardPage, Dashboard}; +const DashboardPage = new Dashboard(); +export {DashboardPage, Dashboard}; From 9023d1a906f2a74618a6d2eff2d0f61e97f39b07 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:16:18 +0200 Subject: [PATCH 149/609] Correctly implementes Dashboard --- src/pages/BO/BOBasePage.ts | 6 +++--- src/pages/BO/dashboard/index.ts | 3 +++ src/versions/1.6.1/pages/BO/dashboard/index.ts | 13 +++++++------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 07beffea2..6ed5ce732 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -155,11 +155,11 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly linkWidgetLink: string; - public readonly shippingLink: string; + public shippingLink: string; - public readonly carriersLink: string; + public carriersLink: string; - public readonly shippingPreferencesLink: string; + public shippingPreferencesLink: string; public readonly paymentParentLink: string; diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 59db7e489..01e3bfa7c 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/dashboard').dashboardPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/develop/pages/BO/dashboard').dashboardPage; } diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 84977cc95..a56965d2c 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -1,11 +1,12 @@ -import {DashboardPageInterface} from '@interfaces/BO/dashboard'; -import {DashboardPage as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; +import type {DashboardPageInterface} from '@interfaces/BO/dashboard'; +import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; - -// @ts-ignore +/** + * Bo dashboard page, contains functions that can be used on the page + * @class + * @extends DashboardPage + */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { - private shippingLink: string; - private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page From f9b6245849b4b40bd7629f333401b4cbf344625d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:21:09 +0200 Subject: [PATCH 150/609] Correctly require --- src/pages/BO/dashboard/index.ts | 4 ++-- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 ++- src/versions/develop/pages/BO/dashboard/index.ts | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 01e3bfa7c..59160e2ac 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/dashboard').dashboardPage; + return require('@versions/1.6.1/pages/BO/dashboard').boDashboardPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/develop/pages/BO/dashboard').dashboardPage; + return require('@versions/develop/pages/BO/dashboard').boDashboardPage; } return require('@versions/develop/pages/BO/dashboard'); } diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index a56965d2c..1cf37ea1a 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -19,4 +19,5 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa } } -module.exports = new DashboardPage(); +const boDashboardPage = new DashboardPage(); +export {boDashboardPage, DashboardPage}; diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 9459a03e3..f849cfa42 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -781,5 +781,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const DashboardPage = new Dashboard(); -export {DashboardPage, Dashboard}; +const boDashboardPage = new Dashboard(); +export {boDashboardPage, Dashboard}; From e8a298ef7ecf4a4d14a6a485e672d51a327ad028 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:45:27 +0200 Subject: [PATCH 151/609] Correctly export carrierCreate from 8.2 --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 0ee4b497b..1aecaf958 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -222,4 +222,5 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr } } -module.exports = new BOCarriersCreatePage(); +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; From 47916312825c0110ea942137ef4561506bea26be Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:09:49 +0200 Subject: [PATCH 152/609] Override goToAddNewCarrier for 1.6 versions --- .../1.6.1/pages/BO/shipping/carriers/create.ts | 12 ++++++++++++ .../1.6.1/pages/BO/shipping/carriers/index.ts | 14 ++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/shipping/carriers/create.ts diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts new file mode 100644 index 000000000..1583b0fe7 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts @@ -0,0 +1,12 @@ +import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; +import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; + +class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { + constructor() { + super(); + + } +} + +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts index 8d243023d..e6034ed4b 100644 --- a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts @@ -1,5 +1,6 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import type {Page} from '@playwright/test'; import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.7/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { @@ -10,6 +11,19 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte constructor() { super(); } + + /* +Methods + */ + /** + * Go to add new carrier page + * @param page {Page} Browser tab + * @returns {Promise} + */ + async goToAddNewCarrierPage(page: Page): Promise { + await this.clickAndWaitForURL(page, this.addNewCarrierLink); + await page.locator('#configuration_form .btn').click(); + } } const boCarriersPage = new BOCarriersPage(); From 3dec17025666fe59a7121e0ec800beb457447ede Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:18:12 +0200 Subject: [PATCH 153/609] Override CustomerParentLink in 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 6ed5ce732..e3efbe643 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -115,7 +115,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly stocksLink: string; - public readonly customersParentLink: string; + public customersParentLink: string; public readonly customersLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1cf37ea1a..7b6b3b9e4 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,6 +13,8 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; this.carriersLink = '#subtab-AdminCarriers'; From f73ecbc43d405b2c618d21a11a8aabad20cbbaff Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:24:11 +0200 Subject: [PATCH 154/609] Override addNewAddress link for 1.6 --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 ++ src/versions/develop/pages/BO/customers/addresses/index.ts | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d69e8655b..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -14,6 +14,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI constructor() { super(); this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + // Header links + this.addNewAddressLink = '#page-header-desc-address-new_address'; } } diff --git a/src/versions/develop/pages/BO/customers/addresses/index.ts b/src/versions/develop/pages/BO/customers/addresses/index.ts index 8a1c4c3cf..7e7bd3a1c 100644 --- a/src/versions/develop/pages/BO/customers/addresses/index.ts +++ b/src/versions/develop/pages/BO/customers/addresses/index.ts @@ -10,7 +10,7 @@ import {type Page} from '@playwright/test'; class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { public pageTitle: string; - private readonly addNewAddressLink: string; + protected addNewAddressLink: string; private readonly addressGridPanel: string; From 86e177200f8cd75613e4d333fa6cfec32a2e752f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:27:17 +0200 Subject: [PATCH 155/609] Override addNewAddress page title for 1.6 --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..3361873ce 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; } From f9e32ce09494c97b5f5999f2f4b18a82c6911ce9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:49:19 +0200 Subject: [PATCH 156/609] Move title override to correct page --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 1 + src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index e2c2aaf13..b20337e3e 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -9,6 +9,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 3361873ce..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; } From e080b69d10dac02ddb2eed0e55d555c22b0617a2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:00:10 +0200 Subject: [PATCH 157/609] Override newAddress form selectors --- .../pages/BO/customers/addresses/create.ts | 18 ++++++++-- .../pages/BO/customers/addresses/create.ts | 36 +++++++++---------- 2 files changed, 34 insertions(+), 20 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index b20337e3e..ecf204160 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -10,8 +10,22 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr constructor() { super(); this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; + + // Selectors + this.customerEmailInput = '#email'; + this.customerAddressdniInput = '#dni'; + this.customerAddressAliasInput = '#alias'; + this.customerAddressFirstNameInput = '#firstname'; + this.customerLastNameInput = '#lastname'; + this.customerAddressCompanyInput = '#company'; + this.customerAddressVatNumberInput = '#vat_number'; + this.customerAddressInput = '#address1'; + this.customerAddressPostCodeInput = '#postcode'; + this.customerSecondAddressInput = '#address2'; + this.customerAddressCityInput = '#city'; + this.customerAddressCountrySelect = '#id_country'; + this.customerAddressPhoneInput = '#phone'; + this.saveAddressButton = '#address_form_submit_btn'; } } diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 561f61ebe..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -13,41 +13,41 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI public readonly pageTitleEdit: string; - private readonly customerEmailInput: string; + protected customerEmailInput: string; - private readonly customerAddressdniInput: string; + protected customerAddressdniInput: string; - private readonly customerAddressAliasInput: string; + protected customerAddressAliasInput: string; - private readonly customerAddressFirstNameInput: string; + protected customerAddressFirstNameInput: string; - private readonly customerLastNameInput: string; + protected customerLastNameInput: string; - private readonly customerAddressCompanyInput: string; + protected customerAddressCompanyInput: string; - private readonly customerAddressVatNumberInput: string; + protected customerAddressVatNumberInput: string; - private readonly customerAddressInput: string; + protected customerAddressInput: string; - private readonly customerAddressPostCodeInput: string; + protected customerAddressPostCodeInput: string; - private readonly customerSecondAddressInput: string; + protected customerSecondAddressInput: string; - private readonly customerAddressCityInput: string; + protected customerAddressCityInput: string; - private readonly customerAddressCountrySelect: string; + protected customerAddressCountrySelect: string; - private readonly customerAddressCountryOption: string; + protected customerAddressCountryOption: string; - private readonly customerAddressStateSelect: string; + protected customerAddressStateSelect: string; - private readonly searchStateInput: string; + protected searchStateInput: string; - private readonly searchResultState: string; + protected searchResultState: string; - private readonly customerAddressPhoneInput: string; + protected customerAddressPhoneInput: string; - private readonly customerAddressOtherInput: string; + protected customerAddressOtherInput: string; protected saveAddressButton: string; From 3c863d296d029d050432c827d06630f4e3939ba0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:59:14 +0200 Subject: [PATCH 158/609] Override createEditAdress --- .../pages/BO/customers/addresses/create.ts | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..1a7f262a6 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,6 +2,8 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; +import testContext from '@utils/test'; +import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -101,15 +103,18 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { + const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); + if (semver.gt(psVersion, '7.0.0')) { + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); + } } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From 35d759cce7a7c9b0df3c60157dccd7017e921de8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:04:18 +0200 Subject: [PATCH 159/609] Total override createEditAddress for 1.6 --- .../pages/BO/customers/addresses/create.ts | 56 +++++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 19 +++---- 2 files changed, 63 insertions(+), 12 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index ecf204160..f264d4fcf 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -1,8 +1,13 @@ // Import pages +import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import type {Frame, Page} from '@playwright/test'; +import testContext from '@utils/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; +import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + private readonly customerAddressMobilePhoneInput: string; /** * @constructs * Setting up texts and selectors to use in addresses create page @@ -25,8 +30,59 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr this.customerAddressCityInput = '#city'; this.customerAddressCountrySelect = '#id_country'; this.customerAddressPhoneInput = '#phone'; + this.customerAddressMobilePhoneInput = '#phone_mobile'; this.saveAddressButton = '#address_form_submit_btn'; } + + /** + * Fill form for add/edit address + * @param page {Frame|Page} Browser tab + * @param addressData {FakerAddress} Data to set on new address form + * @param save {boolean} True if we need to save the new address, false if not + * @param waitForNavigation {boolean} True if we need to wait for navigation after save, false if not + * @returns {Promise} + */ + async createEditAddress( + page: Frame|Page, + addressData: FakerAddress, + save: boolean = true, + waitForNavigation: boolean = true, + ): Promise { + if (await this.elementVisible(page, this.customerEmailInput, 2000)) { + await this.setValue(page, this.customerEmailInput, addressData.email); + } + await this.setValue(page, this.customerAddressdniInput, addressData.dni); + await this.setValue(page, this.customerAddressAliasInput, addressData.alias); + await this.setValue(page, this.customerAddressFirstNameInput, addressData.firstName); + await this.setValue(page, this.customerLastNameInput, addressData.lastName); + await this.setValue(page, this.customerAddressCompanyInput, addressData.company); + await this.setValue(page, this.customerAddressVatNumberInput, addressData.vatNumber); + await this.setValue(page, this.customerAddressInput, addressData.address); + await this.setValue(page, this.customerSecondAddressInput, addressData.secondAddress); + await this.setValue(page, this.customerAddressPostCodeInput, addressData.postalCode); + await this.setValue(page, this.customerAddressCityInput, addressData.city); + await this.selectByVisibleText(page, this.customerAddressCountrySelect, addressData.country); + await this.setValue(page, this.customerAddressPhoneInput, addressData.phone); + await this.setValue(page, this.customerAddressMobilePhoneInput, addressData.phone); + await this.setValue(page, this.customerAddressOtherInput, addressData.other); + + if (await this.elementVisible(page, this.customerAddressStateSelect, 1000)) { + await page.locator(this.customerAddressStateSelect).click(); + await this.setValue(page, this.searchStateInput, addressData.state); + await this.waitForSelectorAndClick(page, this.searchResultState); + } + + // Save and return successful message + if (save) { + if (waitForNavigation) { + return this.saveAddress(page); + } + + await page.locator(this.saveAddressButton).click(); + } + + return null; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7f262a6..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,8 +2,6 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; -import testContext from '@utils/test'; -import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -103,18 +101,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { - const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if (semver.gt(psVersion, '7.0.0')) { - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); - } + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From 28918a9473b9d58985cfda850ef3f7d421c0b859 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:07:47 +0200 Subject: [PATCH 160/609] Add missing locator --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index f264d4fcf..3120c6f1b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -2,9 +2,7 @@ import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import type {Frame, Page} from '@playwright/test'; -import testContext from '@utils/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; -import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; @@ -31,6 +29,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr this.customerAddressCountrySelect = '#id_country'; this.customerAddressPhoneInput = '#phone'; this.customerAddressMobilePhoneInput = '#phone_mobile'; + this.customerAddressOtherInput = '#other'; this.saveAddressButton = '#address_form_submit_btn'; } From 228feae5e355739ee645bfd3a10fdbd330030775 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:16:44 +0200 Subject: [PATCH 161/609] Update alert block locators --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 3 +++ src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 3120c6f1b..f17aa661f 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,6 +12,9 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; + // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Selectors diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..31e2ab2d8 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,6 +16,11 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; } } From 0b57206355dc9d6db0c6b55976ed16f6e3cfdedb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:18:39 +0200 Subject: [PATCH 162/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 2 -- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index f17aa661f..02e0f72d0 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,8 +12,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 31e2ab2d8..d8e33b18d 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From 859475d25afe8503e5fb69501070e5e0985da5d8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:27:44 +0200 Subject: [PATCH 163/609] Update success block --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d8e33b18d..c7f3a47f4 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,8 +13,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; @@ -23,6 +21,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.alertTextBlock = `${this.alertBlock}`; this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From 33badbb4ed61dc0dc5babc4b2ecb5d3f5c544636 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:32:38 +0200 Subject: [PATCH 164/609] Override save and getSuccessTxt --- .../pages/BO/customers/addresses/create.ts | 28 ++++++++++++++++++- .../pages/BO/customers/addresses/index.ts | 6 ---- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 02e0f72d0..0c53c68d2 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -14,7 +14,12 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr super(); // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; - + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; // Selectors this.customerEmailInput = '#email'; this.customerAddressdniInput = '#dni'; @@ -83,6 +88,27 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr return null; } + + /** + * Save address + * @param page {Frame|Page} Browser tab + * @returns {Promise} + */ + async saveAddress(page: Frame|Page): Promise { + await this.clickAndWaitForURL(page, this.saveAddressButton); + return this.getAlertSuccessBlockParagraphContent(page); + } + + /** + * Get text content of alert success block paragraph + * @param page {Frame|Page} Browser tab + * @param timeout + * @return {Promise} + */ + async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c7f3a47f4..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,12 +16,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; - // Alert Text - this.alertBlock = 'div.alert'; - this.alertTextBlock = `${this.alertBlock}`; - this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; - this.alertSuccessBlock = `${this.alertBlock}.alert-success`; - this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From d08982da5ffb408384dc68b0c8356584183bdf20 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:35:20 +0200 Subject: [PATCH 165/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..c02e580f6 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = '× Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From cbf49b0533c37aaf78db8ad8ffb1210ae7ff9b3b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:09:24 +0200 Subject: [PATCH 166/609] Add OrderParentLink for 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index e3efbe643..76b416ad8 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -85,7 +85,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte private readonly dashboardLink: string; - public readonly ordersParentLink: string; + public ordersParentLink: string; public readonly ordersLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 7b6b3b9e4..1d40d1dd1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,11 +13,12 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; // Customers this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; - this.carriersLink = '#subtab-AdminCarriers'; } } From d02be55d9f40f96fdbcc66c97dd7af758ee87f38 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:17:31 +0200 Subject: [PATCH 167/609] Override newOrderPage link for 1.6 --- src/versions/1.6.1/pages/BO/orders/index.ts | 4 +++- src/versions/develop/pages/BO/orders/index.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/index.ts b/src/versions/1.6.1/pages/BO/orders/index.ts index 7df0e106d..764cef793 100644 --- a/src/versions/1.6.1/pages/BO/orders/index.ts +++ b/src/versions/1.6.1/pages/BO/orders/index.ts @@ -1,6 +1,6 @@ // Import pages import type {BOOrdersPageInterface} from '@interfaces/BO/orders'; -import {OrdersPage} from '@versions/1.7.7/pages/BO/orders/index'; +import {OrdersPage} from '@versions/1.7.7/pages/BO/orders'; /** * Orders page, contains functions that can be used on the page @@ -14,6 +14,8 @@ class OrdersPageVersion extends OrdersPage implements BOOrdersPageInterface { */ constructor() { super(); + // Link + this.createNewOrderButton = '#page-header-desc-order-new_order'; } } diff --git a/src/versions/develop/pages/BO/orders/index.ts b/src/versions/develop/pages/BO/orders/index.ts index 05cf696b5..005a48ecf 100644 --- a/src/versions/develop/pages/BO/orders/index.ts +++ b/src/versions/develop/pages/BO/orders/index.ts @@ -13,7 +13,7 @@ import type {Page} from 'playwright'; class OrdersPage extends BOBasePage implements BOOrdersPageInterface { public readonly pageTitle: string; - private readonly createNewOrderButton: string; + protected createNewOrderButton: string; protected gridPanel: string; From 684d2bb04ca47f9cc5741a6946e7e51ed70f64a1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:24:23 +0200 Subject: [PATCH 168/609] Add order customer searh selector --- src/versions/1.6.1/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 0e5f5f09d..b28c33593 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -9,6 +9,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + // Customer selectors + this.addCustomerLink = 'a.fancybox_customer'; + this.customerSearchInput = '#customer'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 4dd4cf819..06e739ac2 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -31,11 +31,11 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly closeFancyBoxIframe: string; - private readonly addCustomerLink: string; + protected addCustomerLink: string; - private readonly customerSearchInput: string; + protected customerSearchInput: string; - private readonly customerSearchLoadingNoticeBlock: string; + protected customerSearchLoadingNoticeBlock: string; private readonly customerSearchEmptyResultBlock: string; From aa28cae8014a8743b3d78a09c7deded930988d43 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:07:11 +0200 Subject: [PATCH 169/609] Override order customer selection locators --- src/versions/1.6.1/pages/BO/orders/create.ts | 8 ++++++++ src/versions/develop/pages/BO/orders/create.ts | 12 ++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index b28c33593..cd96e3d9e 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -12,6 +12,14 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Customer selectors this.addCustomerLink = 'a.fancybox_customer'; this.customerSearchInput = '#customer'; + + // Full results + this.customerSearchFullResultsBlock = '#customers'; + this.customerResultsBlock = `${this.customerSearchFullResultsBlock}`; + this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard(${pos})`; + this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; + this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; + this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 06e739ac2..d5bc1acb1 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -41,17 +41,17 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly customerSearchEmptyResultParagraphe: string; - private readonly customerSearchFullResultsBlock: string; + protected customerSearchFullResultsBlock: string; - private readonly customerResultsBlock: string; + protected customerResultsBlock: string; - private readonly customerCardBlock: (pos: number) => string; + protected customerCardBlock: (pos: number) => string; - private readonly customerCardNameTitle: (pos: number) => string; + protected customerCardNameTitle: (pos: number) => string; - private readonly customerCardBody: (pos: number) => string; + protected customerCardBody: (pos: number) => string; - private readonly customerCardChooseButton: (pos: number) => string; + protected customerCardChooseButton: (pos: number) => string; private readonly customerCardDetailButton: string; From b1f66c86c7b6594d139d896e97892061aafb196c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:10:29 +0200 Subject: [PATCH 170/609] Edit nth-child for customer card selection --- src/versions/1.6.1/pages/BO/orders/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index cd96e3d9e..690f22c38 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -16,7 +16,7 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Full results this.customerSearchFullResultsBlock = '#customers'; this.customerResultsBlock = `${this.customerSearchFullResultsBlock}`; - this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard(${pos})`; + this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard:nth-child(${pos})`; this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; From b5907bfe91bafed8c745ddb037f9efde13b330fd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:39:07 +0200 Subject: [PATCH 171/609] Override checkoutHistoryBlock locator for 1.6 --- src/versions/1.6.1/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 690f22c38..6b0014238 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -20,6 +20,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; + + // Checkout history selectors + this.checkoutHistoryBlock = '#carts'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index d5bc1acb1..dc9f1c7bd 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -55,7 +55,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly customerCardDetailButton: string; - private readonly checkoutHistoryBlock: string; + protected checkoutHistoryBlock: string; private readonly customerCartsTable: string; From 26f80a9135ca848aaf59f6fc2ff694d4a1e4576b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 30 Apr 2025 14:54:42 +0200 Subject: [PATCH 172/609] Add develop to require for lt than 9.0 --- src/pages/BO/login/index.ts | 2 +- src/versions/1.6.1/pages/BO/orders/create.ts | 2 ++ src/versions/develop/pages/BO/orders/create.ts | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index ab2e9932f..ed20f001e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -13,7 +13,7 @@ function requirePage(): LoginPageInterface { return require('@versions/1.7.8/pages/BO/login').loginPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/login').loginPage; + return require('@versions/develop/pages/BO/login').loginPage; } return require('@versions/develop/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 6b0014238..3764215c4 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -23,6 +23,8 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Checkout history selectors this.checkoutHistoryBlock = '#carts'; + // Cart selectors + this.productSearchInput = '#product-search'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index dc9f1c7bd..8c1287503 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -91,7 +91,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderUseButton: (row: number) => string; - private readonly productSearchInput: string; + protected productSearchInput: string; private readonly noProductFoundAlert: string; From 905985f8849ef076acc7a1ef88acc64d448a5d32 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 10:44:47 +0200 Subject: [PATCH 173/609] Remove readonly for name and transit name to carrier --- src/data/faker/carrier.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/data/faker/carrier.ts b/src/data/faker/carrier.ts index f83ea6805..93afdc607 100644 --- a/src/data/faker/carrier.ts +++ b/src/data/faker/carrier.ts @@ -18,9 +18,9 @@ export default class FakerCarrier { public readonly position: number; - public readonly name: string; + public name: string; - public readonly transitName: string; + public transitName: string; public readonly speedGrade: number; From cf694d4f71017c9f8f1ac1bc7362e4495b12d57a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 11:04:20 +0200 Subject: [PATCH 174/609] Replace waitForUrl by waitForLoad in goToSubMenu --- src/pages/BO/BOBasePage.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 76b416ad8..3d2fef2f5 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -751,13 +751,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte if (semver.lt(shopVersion, '7.4.0')) { await page.hover(parentSelector); - await this.clickAndWaitForURL(page, linkSelector); + //await this.clickAndWaitForURL(page, linkSelector); + await this.clickAndWaitForLoadState(page, linkSelector, "load"); } else { if (parentSelector !== '') { await this.clickSubMenu(page, parentSelector); await this.scrollTo(page, linkSelector); } - await this.clickAndWaitForURL(page, linkSelector); + //await this.clickAndWaitForURL(page, linkSelector); + await this.clickAndWaitForLoadState(page, linkSelector, "load"); let linkActiveClass: string = '-active'; // >= 1.7.8.0 From ba61fb4cab693d4f3362ff61c502717004b8b623 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 11:08:49 +0200 Subject: [PATCH 175/609] Edit goToSubMenu --- src/pages/BO/BOBasePage.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 3d2fef2f5..6b4c0c755 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -752,14 +752,16 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte if (semver.lt(shopVersion, '7.4.0')) { await page.hover(parentSelector); //await this.clickAndWaitForURL(page, linkSelector); - await this.clickAndWaitForLoadState(page, linkSelector, "load"); + await page.locator(linkSelector).click({timeout: 1500}); + await page.waitForLoadState("load"); } else { if (parentSelector !== '') { await this.clickSubMenu(page, parentSelector); await this.scrollTo(page, linkSelector); } //await this.clickAndWaitForURL(page, linkSelector); - await this.clickAndWaitForLoadState(page, linkSelector, "load"); + await page.locator(linkSelector).click({timeout: 1500}); + await page.waitForLoadState("load"); let linkActiveClass: string = '-active'; // >= 1.7.8.0 From b4b867024ebedd44435d8cba9896a1f2709c32e6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 11:14:56 +0200 Subject: [PATCH 176/609] Remove click timeout --- src/pages/BO/BOBasePage.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 6b4c0c755..ad7e715d5 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -752,7 +752,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte if (semver.lt(shopVersion, '7.4.0')) { await page.hover(parentSelector); //await this.clickAndWaitForURL(page, linkSelector); - await page.locator(linkSelector).click({timeout: 1500}); + await page.locator(linkSelector).click(); await page.waitForLoadState("load"); } else { if (parentSelector !== '') { @@ -760,7 +760,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte await this.scrollTo(page, linkSelector); } //await this.clickAndWaitForURL(page, linkSelector); - await page.locator(linkSelector).click({timeout: 1500}); + await page.locator(linkSelector).click(); await page.waitForLoadState("load"); let linkActiveClass: string = '-active'; From 5a4639c9551cbd6c7f809895209ee256a5d14411 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:27:30 +0200 Subject: [PATCH 177/609] Update pdfjs version to try remove unwanted warning logs --- package-lock.json | 1410 +++++++++++++++++++++++++++++++-------------- package.json | 2 +- 2 files changed, 987 insertions(+), 425 deletions(-) diff --git a/package-lock.json b/package-lock.json index d8c689c53..e7947237c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^3.6.172", + "pdfjs-dist": "^4.10.38", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" @@ -53,6 +53,18 @@ "node": ">=0.10.0" } }, + "node_modules/@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "dependencies": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, "node_modules/@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -242,6 +254,111 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "dependencies": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", @@ -478,6 +595,7 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, + "peer": true, "dependencies": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -493,6 +611,177 @@ "node-pre-gyp": "bin/node-pre-gyp" } }, + "node_modules/@napi-rs/canvas": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", + "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "optional": true, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@napi-rs/canvas-android-arm64": "0.1.74", + "@napi-rs/canvas-darwin-arm64": "0.1.74", + "@napi-rs/canvas-darwin-x64": "0.1.74", + "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", + "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", + "@napi-rs/canvas-linux-arm64-musl": "0.1.74", + "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-musl": "0.1.74", + "@napi-rs/canvas-win32-x64-msvc": "0.1.74" + } + }, + "node_modules/@napi-rs/canvas-android-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", + "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-darwin-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", + "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-darwin-x64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", + "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm-gnueabihf": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", + "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", + "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", + "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-riscv64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", + "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", + "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", + "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-win32-x64-msvc": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", + "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -922,7 +1211,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true + "optional": true, + "peer": true }, "node_modules/accepts": { "version": "1.3.8", @@ -975,6 +1265,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, + "peer": true, "dependencies": { "debug": "4" }, @@ -1033,10 +1324,11 @@ } }, "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "optional": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "optional": true, + "peer": true }, "node_modules/are-we-there-yet": { "version": "2.0.0", @@ -1044,6 +1336,7 @@ "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -1439,21 +1732,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/cfb": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", @@ -1519,15 +1797,6 @@ "node": ">= 6" } }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "engines": { - "node": ">=10" - } - }, "node_modules/codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -1556,6 +1825,7 @@ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "optional": true, + "peer": true, "bin": { "color-support": "bin.js" } @@ -1645,7 +1915,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/content-disposition": { "version": "0.5.4", @@ -1723,16 +1994,22 @@ } }, "node_modules/cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", "dependencies": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" }, "engines": { "node": ">=18" } }, + "node_modules/cssstyle/node_modules/rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" + }, "node_modules/csv-writer": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/csv-writer/-/csv-writer-1.6.0.tgz", @@ -1750,6 +2027,37 @@ "node": ">=18" } }, + "node_modules/data-urls/node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/data-urls/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/data-urls/node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", @@ -1821,21 +2129,9 @@ } }, "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" - }, - "node_modules/decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "dependencies": { - "mimic-response": "^2.0.0" - }, - "engines": { - "node": ">=8" - } + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, "node_modules/deep-is": { "version": "0.1.4", @@ -1889,7 +2185,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/depd": { "version": "2.0.0", @@ -1909,10 +2206,11 @@ } }, "node_modules/detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -2052,7 +2350,8 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true + "optional": true, + "peer": true }, "node_modules/encodeurl": { "version": "2.0.0", @@ -2122,6 +2421,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, "engines": { "node": ">=0.12" }, @@ -3153,6 +3453,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, + "peer": true, "dependencies": { "minipass": "^3.0.0" }, @@ -3165,6 +3466,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -3236,6 +3538,7 @@ "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -3523,7 +3826,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/hasown": { "version": "2.0.2", @@ -3608,9 +3912,9 @@ } }, "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "engines": { "node": ">= 14" } @@ -3620,6 +3924,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, + "peer": true, "dependencies": { "agent-base": "6", "debug": "4" @@ -3893,6 +4198,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -4182,72 +4488,13 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "engines": { - "node": ">= 14" - } - }, - "node_modules/jsdom/node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" }, "engines": { "node": ">=4" @@ -4339,6 +4586,11 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/maildev": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", @@ -4367,6 +4619,30 @@ "node": ">=18.0.0" } }, + "node_modules/maildev/node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/maildev/node_modules/canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "hasInstallScript": true, + "optional": true, + "peer": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/maildev/node_modules/commander": { "version": "12.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", @@ -4375,11 +4651,132 @@ "node": ">=18" } }, + "node_modules/maildev/node_modules/decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "peer": true, + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/maildev/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/maildev/node_modules/jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "dependencies": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/maildev/node_modules/mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/maildev/node_modules/simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "optional": true, + "peer": true, + "dependencies": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/maildev/node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/maildev/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/maildev/node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, + "peer": true, "dependencies": { "semver": "^6.0.0" }, @@ -4395,6 +4792,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "optional": true, + "peer": true, "bin": { "semver": "bin/semver.js" } @@ -4490,18 +4888,6 @@ "node": ">= 0.6" } }, - "node_modules/mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -4532,6 +4918,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -4541,6 +4928,7 @@ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, + "peer": true, "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -4554,6 +4942,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -4566,6 +4955,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "optional": true, + "peer": true, "bin": { "mkdirp": "bin/cmd.js" }, @@ -4592,10 +4982,11 @@ } }, "node_modules/nan": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", - "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==", - "optional": true + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", + "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", + "optional": true, + "peer": true }, "node_modules/natural-compare": { "version": "1.4.0", @@ -4616,6 +5007,7 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, + "peer": true, "dependencies": { "whatwg-url": "^5.0.0" }, @@ -4631,28 +5023,6 @@ } } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/nodemailer": { "version": "6.9.16", "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.16.tgz", @@ -4666,6 +5036,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, + "peer": true, "dependencies": { "abbrev": "1" }, @@ -4691,6 +5062,7 @@ "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -4699,9 +5071,9 @@ } }, "node_modules/nwsapi": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.16.tgz", - "integrity": "sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==" + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" }, "node_modules/object-assign": { "version": "4.1.1", @@ -4924,16 +5296,27 @@ } }, "node_modules/parse5": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz", - "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "dependencies": { - "entities": "^4.5.0" + "entities": "^6.0.0" }, "funding": { "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/parse5/node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -4989,27 +5372,15 @@ "node": ">=8" } }, - "node_modules/path2d-polyfill": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", - "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==", - "engines": { - "node": ">=8" - } - }, "node_modules/pdfjs-dist": { - "version": "3.6.172", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.6.172.tgz", - "integrity": "sha512-bfOhCg+S9DXh/ImWhWYTOiq3aVMFSCvzGiBzsIJtdMC71kVWDBw7UXr32xh0y56qc5wMVylIeqV3hBaRsu+e+w==", - "dependencies": { - "path2d-polyfill": "^2.0.1", - "web-streams-polyfill": "^3.2.1" - }, + "version": "4.10.38", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", + "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", "engines": { - "node": ">=16" + "node": ">=20" }, "optionalDependencies": { - "canvas": "^2.11.2" + "@napi-rs/canvas": "^0.1.65" } }, "node_modules/picomatch": { @@ -5208,6 +5579,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5547,7 +5919,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true + "optional": true, + "peer": true }, "node_modules/set-function-length": { "version": "1.2.2", @@ -5699,7 +6072,8 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/simple-concat": { "version": "1.0.1", @@ -5719,18 +6093,8 @@ "url": "https://feross.org/support" } ], - "optional": true - }, - "node_modules/simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "dependencies": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } + "peer": true }, "node_modules/slash": { "version": "3.0.0", @@ -5859,6 +6223,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, + "peer": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -5868,6 +6233,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, + "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -6014,6 +6380,7 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, + "peer": true, "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -6026,6 +6393,16 @@ "node": ">=10" } }, + "node_modules/tar/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -6076,15 +6453,11 @@ } }, "node_modules/tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true, + "peer": true }, "node_modules/ts-api-utils": { "version": "1.3.0", @@ -6404,7 +6777,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true + "optional": true, + "peer": true }, "node_modules/utils-merge": { "version": "1.0.1", @@ -6448,21 +6822,12 @@ "node": ">=18" } }, - "node_modules/web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", - "engines": { - "node": ">= 8" - } - }, "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "engines": { - "node": ">=12" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true, + "peer": true }, "node_modules/whatwg-encoding": { "version": "3.1.1", @@ -6495,15 +6860,14 @@ } }, "node_modules/whatwg-url": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", - "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "peer": true, "dependencies": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "node_modules/which": { @@ -6615,6 +6979,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, + "peer": true, "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -6647,9 +7012,9 @@ "devOptional": true }, "node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", "engines": { "node": ">=10.0.0" }, @@ -6708,7 +7073,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true + "optional": true, + "peer": true }, "node_modules/yn": { "version": "3.1.1", @@ -6739,6 +7105,18 @@ "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", "dev": true }, + "@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "requires": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, "@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -6885,6 +7263,37 @@ } } }, + "@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==" + }, + "@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "requires": {} + }, + "@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "requires": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + } + }, + "@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "requires": {} + }, + "@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==" + }, "@eslint-community/eslint-utils": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", @@ -7056,6 +7465,7 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, + "peer": true, "requires": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -7068,6 +7478,84 @@ "tar": "^6.1.11" } }, + "@napi-rs/canvas": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", + "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "optional": true, + "requires": { + "@napi-rs/canvas-android-arm64": "0.1.74", + "@napi-rs/canvas-darwin-arm64": "0.1.74", + "@napi-rs/canvas-darwin-x64": "0.1.74", + "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", + "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", + "@napi-rs/canvas-linux-arm64-musl": "0.1.74", + "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-musl": "0.1.74", + "@napi-rs/canvas-win32-x64-msvc": "0.1.74" + } + }, + "@napi-rs/canvas-android-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", + "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", + "optional": true + }, + "@napi-rs/canvas-darwin-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", + "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", + "optional": true + }, + "@napi-rs/canvas-darwin-x64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", + "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", + "optional": true + }, + "@napi-rs/canvas-linux-arm-gnueabihf": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", + "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", + "optional": true + }, + "@napi-rs/canvas-linux-arm64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", + "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", + "optional": true + }, + "@napi-rs/canvas-linux-arm64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", + "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", + "optional": true + }, + "@napi-rs/canvas-linux-riscv64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", + "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", + "optional": true + }, + "@napi-rs/canvas-linux-x64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", + "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", + "optional": true + }, + "@napi-rs/canvas-linux-x64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", + "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", + "optional": true + }, + "@napi-rs/canvas-win32-x64-msvc": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", + "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", + "optional": true + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -7363,7 +7851,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true + "optional": true, + "peer": true }, "accepts": { "version": "1.3.8", @@ -7402,6 +7891,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, + "peer": true, "requires": { "debug": "4" } @@ -7444,16 +7934,18 @@ } }, "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "optional": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "optional": true, + "peer": true }, "are-we-there-yet": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "optional": true, + "peer": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -7737,17 +8229,6 @@ "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==" }, - "canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "optional": true, - "requires": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - } - }, "cfb": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", @@ -7795,12 +8276,6 @@ } } }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true - }, "codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -7825,7 +8300,8 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "optional": true + "optional": true, + "peer": true }, "combined-stream": { "version": "1.0.8", @@ -7899,7 +8375,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true + "optional": true, + "peer": true }, "content-disposition": { "version": "0.5.4", @@ -7956,11 +8433,19 @@ } }, "cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", "requires": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" + }, + "dependencies": { + "rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" + } } }, "csv-writer": { @@ -7975,6 +8460,30 @@ "requires": { "whatwg-mimetype": "^4.0.0", "whatwg-url": "^14.0.0" + }, + "dependencies": { + "tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "requires": { + "punycode": "^2.3.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "requires": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + } + } } }, "data-view-buffer": { @@ -8019,18 +8528,9 @@ } }, "decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" - }, - "decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "requires": { - "mimic-response": "^2.0.0" - } + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, "deep-is": { "version": "0.1.4", @@ -8069,7 +8569,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true + "optional": true, + "peer": true }, "depd": { "version": "2.0.0", @@ -8082,10 +8583,11 @@ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" }, "detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", - "optional": true + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "optional": true, + "peer": true }, "diff": { "version": "4.0.2", @@ -8180,7 +8682,8 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true + "optional": true, + "peer": true }, "encodeurl": { "version": "2.0.0", @@ -8225,7 +8728,8 @@ "entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true }, "es-abstract": { "version": "1.24.0", @@ -9004,6 +9508,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, + "peer": true, "requires": { "minipass": "^3.0.0" }, @@ -9013,6 +9518,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "requires": { "yallist": "^4.0.0" } @@ -9061,6 +9567,7 @@ "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "optional": true, + "peer": true, "requires": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -9256,7 +9763,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true + "optional": true, + "peer": true }, "hasown": { "version": "2.0.2", @@ -9316,9 +9824,9 @@ }, "dependencies": { "agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==" + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" } } }, @@ -9327,6 +9835,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, + "peer": true, "requires": { "agent-base": "6", "debug": "4" @@ -9505,7 +10014,8 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "optional": true + "optional": true, + "peer": true }, "is-generator-function": { "version": "1.1.0", @@ -9689,50 +10199,6 @@ "argparse": "^2.0.1" } }, - "jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "requires": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "dependencies": { - "agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==" - }, - "https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "requires": { - "agent-base": "^7.1.2", - "debug": "4" - } - } - } - }, "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -9810,6 +10276,11 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "maildev": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", @@ -9832,10 +10303,115 @@ "wildstring": "1.0.9" }, "dependencies": { + "agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" + }, + "canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "optional": true, + "peer": true, + "requires": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + } + }, "commander": { "version": "12.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==" + }, + "decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "peer": true, + "requires": { + "mimic-response": "^2.0.0" + } + }, + "https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "requires": { + "agent-base": "^7.1.2", + "debug": "4" + } + }, + "jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "requires": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + } + }, + "mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "peer": true + }, + "simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "optional": true, + "peer": true, + "requires": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "requires": { + "punycode": "^2.3.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "requires": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + } } } }, @@ -9844,6 +10420,7 @@ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, + "peer": true, "requires": { "semver": "^6.0.0" }, @@ -9852,7 +10429,8 @@ "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "optional": true + "optional": true, + "peer": true } } }, @@ -9916,12 +10494,6 @@ "mime-db": "1.52.0" } }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true - }, "minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -9941,13 +10513,15 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "optional": true + "optional": true, + "peer": true }, "minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, + "peer": true, "requires": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -9958,6 +10532,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "requires": { "yallist": "^4.0.0" } @@ -9968,7 +10543,8 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true + "optional": true, + "peer": true }, "ms": { "version": "2.1.2", @@ -9982,10 +10558,11 @@ "dev": true }, "nan": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", - "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==", - "optional": true + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", + "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", + "optional": true, + "peer": true }, "natural-compare": { "version": "1.4.0", @@ -10003,32 +10580,9 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, + "peer": true, "requires": { "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } } }, "nodemailer": { @@ -10041,6 +10595,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, + "peer": true, "requires": { "abbrev": "1" } @@ -10056,6 +10611,7 @@ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "optional": true, + "peer": true, "requires": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -10064,9 +10620,9 @@ } }, "nwsapi": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.16.tgz", - "integrity": "sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==" + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" }, "object-assign": { "version": "4.1.1", @@ -10219,11 +10775,18 @@ } }, "parse5": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz", - "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "requires": { - "entities": "^4.5.0" + "entities": "^6.0.0" + }, + "dependencies": { + "entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==" + } } }, "parseurl": { @@ -10266,19 +10829,12 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, - "path2d-polyfill": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", - "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==" - }, "pdfjs-dist": { - "version": "3.6.172", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.6.172.tgz", - "integrity": "sha512-bfOhCg+S9DXh/ImWhWYTOiq3aVMFSCvzGiBzsIJtdMC71kVWDBw7UXr32xh0y56qc5wMVylIeqV3hBaRsu+e+w==", + "version": "4.10.38", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", + "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", "requires": { - "canvas": "^2.11.2", - "path2d-polyfill": "^2.0.1", - "web-streams-polyfill": "^3.2.1" + "@napi-rs/canvas": "^0.1.65" } }, "picomatch": { @@ -10405,6 +10961,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, + "peer": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -10631,7 +11188,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true + "optional": true, + "peer": true }, "set-function-length": { "version": "1.2.2", @@ -10738,24 +11296,15 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true + "optional": true, + "peer": true }, "simple-concat": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "optional": true - }, - "simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } + "peer": true }, "slash": { "version": "3.0.0", @@ -10849,6 +11398,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, + "peer": true, "requires": { "safe-buffer": "~5.2.0" } @@ -10858,6 +11408,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, + "peer": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -10953,6 +11504,7 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, + "peer": true, "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -10960,6 +11512,15 @@ "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" + }, + "dependencies": { + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "peer": true + } } }, "text-table": { @@ -11000,12 +11561,11 @@ } }, "tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "requires": { - "punycode": "^2.3.1" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true, + "peer": true }, "ts-api-utils": { "version": "1.3.0", @@ -11220,7 +11780,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true + "optional": true, + "peer": true }, "utils-merge": { "version": "1.0.1", @@ -11255,15 +11816,12 @@ "xml-name-validator": "^5.0.0" } }, - "web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==" - }, "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true, + "peer": true }, "whatwg-encoding": { "version": "3.1.1", @@ -11289,12 +11847,14 @@ "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==" }, "whatwg-url": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", - "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "peer": true, "requires": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "which": { @@ -11372,6 +11932,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, + "peer": true, "requires": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -11398,9 +11959,9 @@ "devOptional": true }, "ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", "requires": {} }, "xlsx": { @@ -11436,7 +11997,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true + "optional": true, + "peer": true }, "yn": { "version": "3.1.1", diff --git a/package.json b/package.json index 225da52f6..a63031987 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^3.6.172", + "pdfjs-dist": "^4.10.38", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From 6b258e93b0d936001ebbb96547ce53de2bc9486b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:30:20 +0200 Subject: [PATCH 178/609] Rollback --- package-lock.json | 6886 +++++---------------------------------------- package.json | 2 +- 2 files changed, 756 insertions(+), 6132 deletions(-) diff --git a/package-lock.json b/package-lock.json index e7947237c..8b3f2eead 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,7 +1,7 @@ { "name": "@prestashop-core/ui-testing", "version": "0.0.12", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { @@ -21,7 +21,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^4.10.38", + "pdfjs-dist": "^3.6.172", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" @@ -44,15 +44,6 @@ "typescript": "^5.3.3" } }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@asamuzakjp/css-color": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", @@ -66,116 +57,70 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", + "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/parser": "^7.28.0", + "@babel/types": "^7.28.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "dev": true, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "node_modules/@babel/parser": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "@babel/types": "^7.28.0" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", - "dev": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -184,49 +129,45 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", - "debug": "^4.3.1", - "globals": "^11.1.0" + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", + "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.0", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.0", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "version": "7.28.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz", + "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -364,7 +305,6 @@ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", "dev": true, - "license": "MIT", "dependencies": { "eslint-visitor-keys": "^3.4.3" }, @@ -411,28 +351,22 @@ } }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "node_modules/@eslint/eslintrc/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 4" } }, "node_modules/@eslint/eslintrc/node_modules/minimatch": { @@ -487,9 +421,9 @@ } }, "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -529,47 +463,34 @@ "dev": true }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", + "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", - "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", + "version": "0.3.29", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", + "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -577,10 +498,9 @@ } }, "node_modules/@keycloak/keycloak-admin-client": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.2.5.tgz", - "integrity": "sha512-glMBjQE0M8KOe9uZtdIl7kvHeBjfegZKxK8SzAZxekWvwsZ3Kt+XNd1kKW7NUxRdrs9EGtJLNUWX8vfaR+0Snw==", - "license": "Apache-2.0", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.1.tgz", + "integrity": "sha512-xgmT0Pkwz6k+K5zLXNggMJtQz6GisQfJ/ZR6grr09Hfedx98xUdxC6TKB1IGLyn0fXLszifHn2bHq+F+Ql109g==", "dependencies": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -595,7 +515,6 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, - "peer": true, "dependencies": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -611,175 +530,29 @@ "node-pre-gyp": "bin/node-pre-gyp" } }, - "node_modules/@napi-rs/canvas": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", - "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "node_modules/@mapbox/node-pre-gyp/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, - "engines": { - "node": ">= 10" + "dependencies": { + "debug": "4" }, - "optionalDependencies": { - "@napi-rs/canvas-android-arm64": "0.1.74", - "@napi-rs/canvas-darwin-arm64": "0.1.74", - "@napi-rs/canvas-darwin-x64": "0.1.74", - "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", - "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", - "@napi-rs/canvas-linux-arm64-musl": "0.1.74", - "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-musl": "0.1.74", - "@napi-rs/canvas-win32-x64-msvc": "0.1.74" - } - }, - "node_modules/@napi-rs/canvas-android-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", - "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-darwin-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", - "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-darwin-x64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", - "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-arm-gnueabihf": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", - "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-arm64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", - "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-arm64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", - "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-riscv64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", - "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", - "cpu": [ - "riscv64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-x64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", - "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-x64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", - "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">= 10" + "node": ">= 6.0.0" } }, - "node_modules/@napi-rs/canvas-win32-x64-msvc": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", - "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", - "cpu": [ - "x64" - ], + "node_modules/@mapbox/node-pre-gyp/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "agent-base": "6", + "debug": "4" + }, "engines": { - "node": ">= 10" + "node": ">= 6" } }, "node_modules/@nodelib/fs.scandir": { @@ -838,12 +611,11 @@ "dev": true }, "node_modules/@s3pweb/keycloak-admin-client-cjs": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.2.5.tgz", - "integrity": "sha512-xKEFaq+2A5+qEV3AM8bFfZOb7OwjcRpKinLZIqXX0RKB8UCrFZiEvt/4FyDS1peY3B6TpoeTOHB8SouxWgKyzQ==", - "license": "MIT", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.1.tgz", + "integrity": "sha512-cozNqXxG/Q2MCcpcr7RB9J1bIA4DMw6YAl3axfQ+YGH3N3CUTtTEjeCoG/92ilAAtUtolcdBl+mcFA5LVQV0WQ==", "dependencies": { - "@keycloak/keycloak-admin-client": "26.2.5" + "@keycloak/keycloak-admin-client": "26.3.1" } }, "node_modules/@socket.io/component-emitter": { @@ -875,15 +647,10 @@ "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", "dev": true }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" - }, "node_modules/@types/cors": { - "version": "2.8.17", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", - "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "version": "2.8.19", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.19.tgz", + "integrity": "sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==", "dependencies": { "@types/node": "*" } @@ -901,9 +668,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.0.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", - "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", + "version": "24.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", + "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", "dependencies": { "undici-types": "~7.8.0" } @@ -912,8 +679,7 @@ "version": "7.7.0", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/trusted-types": { "version": "2.0.7", @@ -922,16 +688,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", - "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", + "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/type-utils": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/type-utils": "8.38.0", + "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -945,44 +711,21 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.37.0", + "@typescript-eslint/parser": "^8.38.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", - "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, "node_modules/@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", + "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4" }, "engines": { @@ -998,13 +741,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", - "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", + "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.37.0", - "@typescript-eslint/types": "^8.37.0", + "@typescript-eslint/tsconfig-utils": "^8.38.0", + "@typescript-eslint/types": "^8.38.0", "debug": "^4.3.4" }, "engines": { @@ -1019,13 +762,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", - "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", + "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0" + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1036,9 +779,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", - "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", + "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1052,14 +795,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", - "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", + "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/utils": "8.37.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/utils": "8.38.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -1075,22 +818,10 @@ "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, "node_modules/@typescript-eslint/types": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", - "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1101,15 +832,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", - "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", + "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.37.0", - "@typescript-eslint/tsconfig-utils": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/project-service": "8.38.0", + "@typescript-eslint/tsconfig-utils": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -1128,28 +859,16 @@ "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, "node_modules/@typescript-eslint/utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", - "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.38.0.tgz", + "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0" + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1164,12 +883,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", - "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", + "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/types": "8.38.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -1193,16 +912,15 @@ } }, "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", "dev": true }, "node_modules/@xmldom/xmldom": { "version": "0.9.8", "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", - "license": "MIT", "engines": { "node": ">=14.6" } @@ -1211,8 +929,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true, - "peer": true + "optional": true }, "node_modules/accepts": { "version": "1.3.8", @@ -1226,10 +943,18 @@ "node": ">= 0.6" } }, + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -1247,6 +972,18 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/addressparser": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz", @@ -1261,16 +998,11 @@ } }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "optional": true, - "peer": true, - "dependencies": { - "debug": "4" - }, + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "engines": { - "node": ">= 6.0.0" + "node": ">= 14" } }, "node_modules/ajv": { @@ -1299,15 +1031,18 @@ } }, "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, "node_modules/anymatch": { @@ -1327,8 +1062,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", - "optional": true, - "peer": true + "optional": true }, "node_modules/are-we-there-yet": { "version": "2.0.0", @@ -1336,7 +1070,6 @@ "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "deprecated": "This package is no longer supported.", "optional": true, - "peer": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -1362,7 +1095,6 @@ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "is-array-buffer": "^3.0.5" @@ -1384,7 +1116,6 @@ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.4", @@ -1416,7 +1147,6 @@ "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.4", @@ -1438,7 +1168,6 @@ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -1457,7 +1186,6 @@ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -1476,7 +1204,6 @@ "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, - "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", "call-bind": "^1.0.8", @@ -1494,16 +1221,15 @@ } }, "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==" }, "node_modules/async-function": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" } @@ -1518,7 +1244,6 @@ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, - "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" }, @@ -1582,12 +1307,15 @@ } }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/body-parser": { @@ -1638,9 +1366,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, "dependencies": { "balanced-match": "^1.0.0" @@ -1671,7 +1399,6 @@ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", "dev": true, - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", @@ -1689,7 +1416,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2" @@ -1702,7 +1428,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", "get-intrinsic": "^1.3.0" @@ -1727,15 +1452,29 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==", - "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/cfb": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", - "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", + "node_modules/canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/cfb": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", + "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", "dependencies": { "adler-32": "~1.3.0", "crc-32": "~1.2.0" @@ -1745,30 +1484,26 @@ } }, "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -1781,6 +1516,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -1797,6 +1535,15 @@ "node": ">= 6" } }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "engines": { + "node": ">=10" + } + }, "node_modules/codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -1806,18 +1553,21 @@ } }, "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "color-name": "1.1.3" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "node_modules/color-support": { @@ -1825,7 +1575,6 @@ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "optional": true, - "peer": true, "bin": { "color-support": "bin.js" } @@ -1842,12 +1591,11 @@ } }, "node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true, + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", "engines": { - "node": "^12.20.0 || >=14" + "node": ">=18" } }, "node_modules/compressible": { @@ -1891,14 +1639,6 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "node_modules/compression/node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -1915,8 +1655,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/content-disposition": { "version": "0.5.4", @@ -1980,9 +1719,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -2027,43 +1766,11 @@ "node": ">=18" } }, - "node_modules/data-urls/node_modules/tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/data-urls/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "engines": { - "node": ">=12" - } - }, - "node_modules/data-urls/node_modules/whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "dependencies": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" - } - }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -2081,7 +1788,6 @@ "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -2099,7 +1805,6 @@ "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -2113,11 +1818,11 @@ } }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -2133,6 +1838,18 @@ "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, + "node_modules/decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -2185,8 +1902,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/depd": { "version": "2.0.0", @@ -2210,7 +1926,6 @@ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", "optional": true, - "peer": true, "engines": { "node": ">=8" } @@ -2253,7 +1968,6 @@ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dev": true, - "license": "MIT", "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.2", @@ -2263,6 +1977,18 @@ "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/domelementtype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", @@ -2273,15 +1999,13 @@ "type": "github", "url": "https://github.com/sponsors/fb55" } - ], - "license": "BSD-2-Clause" + ] }, "node_modules/domhandler": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "domelementtype": "^2.3.0" }, @@ -2293,10 +2017,9 @@ } }, "node_modules/dompurify": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz", - "integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==", - "license": "(MPL-2.0 OR Apache-2.0)", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.6.tgz", + "integrity": "sha512-/2GogDQlohXPZe6D6NOgQvXLPSYBqIWMnZ8zzOhn09REE4eyAzb+Hed3jhoM9OkuaJ8P6ZGTTVWQKAi8ieIzfQ==", "optionalDependencies": { "@types/trusted-types": "^2.0.7" } @@ -2306,7 +2029,6 @@ "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "dom-serializer": "^2.0.0", "domelementtype": "^2.3.0", @@ -2331,7 +2053,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.1", "es-errors": "^1.3.0", @@ -2350,8 +2071,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true, - "peer": true + "optional": true }, "node_modules/encodeurl": { "version": "2.0.0", @@ -2362,11 +2082,10 @@ } }, "node_modules/engine.io": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.2.tgz", - "integrity": "sha512-gmNvsYi9C8iErnZdVcJnvCpSKbWTt1E8+JZo8b+daLninywUWi5NQ5STSHZ9rFjFO7imNcvb8Pc5pe/wMR5xEw==", + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz", + "integrity": "sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==", "dependencies": { - "@types/cookie": "^0.4.1", "@types/cors": "^2.8.12", "@types/node": ">=10.0.0", "accepts": "~1.3.4", @@ -2397,6 +2116,22 @@ "node": ">= 0.6" } }, + "node_modules/engine.io/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/engine.io/node_modules/ws": { "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", @@ -2418,10 +2153,9 @@ } }, "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", "engines": { "node": ">=0.12" }, @@ -2434,7 +2168,6 @@ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", "dev": true, - "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.2", "arraybuffer.prototype.slice": "^1.0.4", @@ -2502,7 +2235,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "license": "MIT", "engines": { "node": ">= 0.4" } @@ -2519,7 +2251,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0" }, @@ -2531,7 +2262,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "get-intrinsic": "^1.2.6", @@ -2547,7 +2277,6 @@ "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", "dev": true, - "license": "MIT", "dependencies": { "hasown": "^2.0.2" }, @@ -2560,7 +2289,6 @@ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", "dev": true, - "license": "MIT", "dependencies": { "is-callable": "^1.2.7", "is-date-object": "^1.0.5", @@ -2579,11 +2307,15 @@ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/eslint": { @@ -2695,7 +2427,6 @@ "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", "dev": true, - "license": "MIT", "dependencies": { "debug": "^3.2.7" }, @@ -2713,7 +2444,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -2830,12 +2560,23 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/eslint-plugin-deprecation/node_modules/ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, "node_modules/eslint-plugin-html": { "version": "8.1.3", "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-8.1.3.tgz", "integrity": "sha512-cnCdO7yb/jrvgSJJAfRkGDOwLu1AOvNdw8WCD6nh/2C4RnxuI4tz6QjMEAmmSiHSeugq/fXcIO8yBpIBQrMZCg==", "dev": true, - "license": "ISC", "dependencies": { "htmlparser2": "^10.0.0" }, @@ -2848,7 +2589,6 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "dev": true, - "license": "MIT", "dependencies": { "@rtsao/scc": "^1.1.0", "array-includes": "^3.1.9", @@ -2878,9 +2618,9 @@ } }, "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -2981,149 +2721,61 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/eslint/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">= 4" } }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=7.0.0" + "node": "*" } }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" + "estraverse": "^5.1.0" }, "engines": { "node": ">=0.10" @@ -3237,16 +2889,16 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -3286,7 +2938,6 @@ "url": "https://github.com/sponsors/NaturalIntelligence" } ], - "license": "MIT", "dependencies": { "strnum": "^2.1.0" }, @@ -3295,9 +2946,9 @@ } }, "node_modules/fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -3388,9 +3039,9 @@ } }, "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", "dev": true }, "node_modules/for-each": { @@ -3398,7 +3049,6 @@ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, - "license": "MIT", "dependencies": { "is-callable": "^1.2.7" }, @@ -3453,7 +3103,6 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, - "peer": true, "dependencies": { "minipass": "^3.0.0" }, @@ -3466,7 +3115,6 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, - "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -3506,7 +3154,6 @@ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -3527,7 +3174,6 @@ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -3538,7 +3184,6 @@ "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "deprecated": "This package is no longer supported.", "optional": true, - "peer": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -3558,7 +3203,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", @@ -3582,7 +3226,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", "es-object-atoms": "^1.0.0" @@ -3596,7 +3239,6 @@ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -3610,11 +3252,10 @@ } }, "node_modules/get-tsconfig": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.0.tgz", - "integrity": "sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.1.tgz", + "integrity": "sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==", "dev": true, - "license": "MIT", "dependencies": { "resolve-pkg-maps": "^1.0.0" }, @@ -3626,6 +3267,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "devOptional": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -3655,9 +3297,9 @@ } }, "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "devOptional": true, "dependencies": { "balanced-match": "^1.0.0", @@ -3677,12 +3319,18 @@ } }, "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/globalthis": { @@ -3690,7 +3338,6 @@ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, - "license": "MIT", "dependencies": { "define-properties": "^1.2.1", "gopd": "^1.0.1" @@ -3722,11 +3369,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/globby/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, "node_modules/gopd": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3750,7 +3405,6 @@ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3759,12 +3413,12 @@ } }, "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/has-property-descriptors": { @@ -3784,7 +3438,6 @@ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", "dev": true, - "license": "MIT", "dependencies": { "dunder-proto": "^1.0.0" }, @@ -3799,7 +3452,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3811,7 +3463,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" }, @@ -3826,8 +3477,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/hasown": { "version": "2.0.2", @@ -3863,7 +3513,6 @@ "url": "https://github.com/sponsors/fb55" } ], - "license": "MIT", "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.3", @@ -3871,19 +3520,6 @@ "entities": "^6.0.0" } }, - "node_modules/htmlparser2/node_modules/entities": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.0.tgz", - "integrity": "sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -3911,26 +3547,16 @@ "node": ">= 14" } }, - "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", - "engines": { - "node": ">= 14" - } - }, "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "optional": true, - "peer": true, + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dependencies": { - "agent-base": "6", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/iconv-lite": { @@ -3945,18 +3571,18 @@ } }, "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", "dev": true, "engines": { "node": ">= 4" } }, "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, "dependencies": { "parent-module": "^1.0.0", @@ -3982,6 +3608,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "devOptional": true, "dependencies": { "once": "^1.3.0", @@ -3998,7 +3625,6 @@ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "hasown": "^2.0.2", @@ -4026,7 +3652,6 @@ "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -4044,7 +3669,6 @@ "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", "dev": true, - "license": "MIT", "dependencies": { "async-function": "^1.0.0", "call-bound": "^1.0.3", @@ -4064,7 +3688,6 @@ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, - "license": "MIT", "dependencies": { "has-bigints": "^1.0.2" }, @@ -4092,7 +3715,6 @@ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" @@ -4109,7 +3731,6 @@ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4122,7 +3743,6 @@ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, - "license": "MIT", "dependencies": { "hasown": "^2.0.2" }, @@ -4138,7 +3758,6 @@ "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "get-intrinsic": "^1.2.6", @@ -4156,7 +3775,6 @@ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "has-tostringtag": "^1.0.2" @@ -4182,7 +3800,6 @@ "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3" }, @@ -4198,7 +3815,6 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "optional": true, - "peer": true, "engines": { "node": ">=8" } @@ -4208,7 +3824,6 @@ "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "get-proto": "^1.0.0", @@ -4239,7 +3854,6 @@ "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4273,7 +3887,6 @@ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" @@ -4304,7 +3917,6 @@ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "gopd": "^1.2.0", @@ -4323,7 +3935,6 @@ "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4336,7 +3947,6 @@ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3" }, @@ -4352,7 +3962,6 @@ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" @@ -4369,7 +3978,6 @@ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "has-symbols": "^1.1.0", @@ -4387,7 +3995,6 @@ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", "dev": true, - "license": "MIT", "dependencies": { "which-typed-array": "^1.1.16" }, @@ -4403,7 +4010,6 @@ "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4416,7 +4022,6 @@ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3" }, @@ -4432,7 +4037,6 @@ "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "get-intrinsic": "^1.2.6" @@ -4448,8 +4052,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/isexe": { "version": "2.0.0", @@ -4488,16 +4091,55 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "dependencies": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-buffer": { @@ -4619,197 +4261,42 @@ "node": ">=18.0.0" } }, - "node_modules/maildev/node_modules/agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", - "engines": { - "node": ">= 14" - } - }, - "node_modules/maildev/node_modules/canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "hasInstallScript": true, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, - "peer": true, "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" + "semver": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/maildev/node_modules/commander": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", - "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", - "engines": { - "node": ">=18" + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "optional": true, + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/maildev/node_modules/decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "peer": true, - "dependencies": { - "mimic-response": "^2.0.0" - }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "engines": { - "node": ">=8" - } - }, - "node_modules/maildev/node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/maildev/node_modules/jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/maildev/node_modules/mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/maildev/node_modules/simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", - "optional": true, - "peer": true, - "dependencies": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/maildev/node_modules/tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/maildev/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "engines": { - "node": ">=12" - } - }, - "node_modules/maildev/node_modules/whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "dependencies": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "optional": true, - "peer": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "optional": true, - "peer": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" + "node": ">= 0.4" } }, "node_modules/media-typer": { @@ -4846,12 +4333,12 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -4870,9 +4357,9 @@ } }, "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "engines": { "node": ">= 0.6" } @@ -4888,12 +4375,31 @@ "node": ">= 0.6" } }, + "node_modules/mime-types/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, - "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -4918,7 +4424,6 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "optional": true, - "peer": true, "engines": { "node": ">=8" } @@ -4928,7 +4433,6 @@ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, - "peer": true, "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -4942,7 +4446,6 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, - "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -4955,7 +4458,6 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "optional": true, - "peer": true, "bin": { "mkdirp": "bin/cmd.js" }, @@ -4964,9 +4466,9 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/mylas": { "version": "2.1.13", @@ -4985,8 +4487,7 @@ "version": "2.23.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/natural-compare": { "version": "1.4.0", @@ -4995,9 +4496,9 @@ "dev": true }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "engines": { "node": ">= 0.6" } @@ -5007,7 +4508,6 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, - "peer": true, "dependencies": { "whatwg-url": "^5.0.0" }, @@ -5023,10 +4523,32 @@ } } }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/nodemailer": { - "version": "6.9.16", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.16.tgz", - "integrity": "sha512-psAuZdTIRN08HKVd/E8ObdV6NO7NTBY3KsC30F7M4H1OnmLCUNaS56FpYxyb26zWLSyYF9Ozch9KYHhHegsiOQ==", + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.10.1.tgz", + "integrity": "sha512-Z+iLaBGVaSjbIzQ4pX6XV41HrooLsQ10ZWPUehGmuantvzWoDVBnmsdUcOIDM1t+yPor5pDhVlDESgOMEGxhHA==", "engines": { "node": ">=6.0.0" } @@ -5036,7 +4558,6 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, - "peer": true, "dependencies": { "abbrev": "1" }, @@ -5062,7 +4583,6 @@ "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "deprecated": "This package is no longer supported.", "optional": true, - "peer": true, "dependencies": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -5087,7 +4607,6 @@ "version": "1.13.4", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -5109,7 +4628,6 @@ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -5126,14 +4644,15 @@ } }, "node_modules/object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -5176,7 +4695,6 @@ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -5219,17 +4737,17 @@ } }, "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" }, "engines": { "node": ">= 0.8.0" @@ -5240,7 +4758,6 @@ "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", "dev": true, - "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.6", "object-keys": "^1.1.1", @@ -5306,17 +4823,6 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, - "node_modules/parse5/node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -5372,17 +4878,33 @@ "node": ">=8" } }, + "node_modules/path2d-polyfill": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", + "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==", + "optional": true, + "engines": { + "node": ">=8" + } + }, "node_modules/pdfjs-dist": { - "version": "4.10.38", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", - "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", + "version": "3.11.174", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.11.174.tgz", + "integrity": "sha512-TdTZPf1trZ8/UFu5Cx/GXB7GZM30LT+wWUNfsi6Bq8ePLnb+woNKtDymI2mxZYBpMbonNFqKmiz684DIfnd8dA==", "engines": { - "node": ">=20" + "node": ">=18" }, "optionalDependencies": { - "@napi-rs/canvas": "^0.1.65" + "canvas": "^2.11.2", + "path2d-polyfill": "^2.0.1" } }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -5440,7 +4962,6 @@ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" } @@ -5579,7 +5100,6 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, - "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5606,7 +5126,6 @@ "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -5629,7 +5148,6 @@ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -5651,18 +5169,21 @@ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -5681,15 +5202,14 @@ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } }, "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "dev": true, "engines": { "iojs": ">=1.0.0", @@ -5700,6 +5220,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "devOptional": true, "dependencies": { "glob": "^7.1.3" @@ -5744,7 +5265,6 @@ "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.2", @@ -5783,7 +5303,6 @@ "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", "dev": true, - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "isarray": "^2.0.5" @@ -5800,7 +5319,6 @@ "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -5833,7 +5351,6 @@ "version": "7.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -5896,11 +5413,6 @@ "node": ">=4" } }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/serve-static": { "version": "1.16.2", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", @@ -5919,8 +5431,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true, - "peer": true + "optional": true }, "node_modules/set-function-length": { "version": "1.2.2", @@ -5944,7 +5455,6 @@ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, - "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -5960,7 +5470,6 @@ "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", "dev": true, - "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", "es-errors": "^1.3.0", @@ -6000,7 +5509,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "object-inspect": "^1.13.3", @@ -6019,7 +5527,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "object-inspect": "^1.13.3" @@ -6035,7 +5542,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -6053,7 +5559,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -6072,8 +5577,7 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/simple-concat": { "version": "1.0.1", @@ -6093,8 +5597,18 @@ "url": "https://feross.org/support" } ], + "optional": true + }, + "node_modules/simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "peer": true + "dependencies": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } }, "node_modules/slash": { "version": "3.0.0", @@ -6106,13 +5620,13 @@ } }, "node_modules/smtp-server": { - "version": "3.13.6", - "resolved": "https://registry.npmjs.org/smtp-server/-/smtp-server-3.13.6.tgz", - "integrity": "sha512-dqbSPKn3PCq3Gp5hxBM99u7PET7cQSAWrauhtArJbc+zrf5xNEOjm9+Ob3lySySrRoIEvNE0dz+w2H/xWFJNRw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/smtp-server/-/smtp-server-3.14.0.tgz", + "integrity": "sha512-cEw/hdIY+xw1pkbQbQ23hvnm9kNABAsgYB+jJYGkzAynZxJ2VB9aqC6JhB1vpdDnqan7C7AL3qHYRGwz5eD6BQ==", "dependencies": { "base32.js": "0.1.0", "ipv6-normalize": "1.0.1", - "nodemailer": "6.9.15", + "nodemailer": "7.0.3", "punycode.js": "2.3.1" }, "engines": { @@ -6120,9 +5634,9 @@ } }, "node_modules/smtp-server/node_modules/nodemailer": { - "version": "6.9.15", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.15.tgz", - "integrity": "sha512-AHf04ySLC6CIfuRtRiEYtGEXgRfa6INgWGluDhnxTZhHSKvrBu7lc1VVchQ0d8nPc4cFaZoPq8vkyNoZr0TpGQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-7.0.3.tgz", + "integrity": "sha512-Ajq6Sz1x7cIK3pN6KesGTah+1gnwMnx5gKl3piQlQQE/PwyJ4Mbc8is2psWYxK3RJTVeqsDaCv8ZzXLCDHMTZw==", "engines": { "node": ">=6.0.0" } @@ -6153,12 +5667,28 @@ "ws": "~8.17.1" } }, - "node_modules/socket.io-adapter/node_modules/ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "engines": { - "node": ">=10.0.0" + "node_modules/socket.io-adapter/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socket.io-adapter/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "engines": { + "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", @@ -6185,6 +5715,38 @@ "node": ">=10.0.0" } }, + "node_modules/socket.io-parser/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socket.io/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/ssf": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz", @@ -6209,7 +5771,6 @@ "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "dev": true, - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "internal-slot": "^1.1.0" @@ -6223,7 +5784,6 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, - "peer": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -6233,7 +5793,6 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, - "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -6248,7 +5807,6 @@ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.2", @@ -6270,7 +5828,6 @@ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.2", @@ -6335,27 +5892,26 @@ } }, "node_modules/strnum": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.0.tgz", - "integrity": "sha512-w0S//9BqZZGw0L0Y8uLSelFGnDJgTyyNQLmSlPnVz43zPAiqu3w4t8J8sDqqANOGeZIZ/9jWuPguYcEnsoHv4A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.1.tgz", + "integrity": "sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==", "funding": [ { "type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" } - ], - "license": "MIT" + ] }, "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -6380,7 +5936,6 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, - "peer": true, "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -6393,31 +5948,12 @@ "node": ">=10" } }, - "node_modules/tar/node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "peer": true, - "engines": { - "node": ">=10" - } - }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -6453,22 +5989,26 @@ } }, "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true, - "peer": true + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } }, "node_modules/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18.12" }, "peerDependencies": { - "typescript": ">=4.2.0" + "typescript": ">=4.8.4" } }, "node_modules/ts-node": { @@ -6514,24 +6054,11 @@ } } }, - "node_modules/ts-node/node_modules/acorn-walk": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", - "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", - "dev": true, - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/tsc-alias": { "version": "1.8.16", "resolved": "https://registry.npmjs.org/tsc-alias/-/tsc-alias-1.8.16.tgz", "integrity": "sha512-QjCyu55NFyRSBAl6+MTFwplpFcnm2Pq01rR/uxfqJoLMm6X3O14KEGtaSDZpJYaE1bJBGDjD0eSuiIWPe2T58g==", "dev": true, - "license": "MIT", "dependencies": { "chokidar": "^3.5.3", "commander": "^9.0.0", @@ -6548,6 +6075,15 @@ "node": ">=16.20.2" } }, + "node_modules/tsc-alias/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, "node_modules/tsconfig-paths": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", @@ -6563,9 +6099,9 @@ } }, "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, "node_modules/type-check": { @@ -6609,7 +6145,6 @@ "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -6624,7 +6159,6 @@ "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "for-each": "^0.3.3", @@ -6644,7 +6178,6 @@ "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", "dev": true, - "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", @@ -6666,7 +6199,6 @@ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", @@ -6687,7 +6219,6 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", "dev": true, - "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -6701,7 +6232,6 @@ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-bigints": "^1.0.2", @@ -6718,8 +6248,7 @@ "node_modules/undici-types": { "version": "7.8.0", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", - "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", - "license": "MIT" + "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==" }, "node_modules/universalify": { "version": "0.2.0", @@ -6750,7 +6279,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==", - "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -6768,7 +6296,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/url-template/-/url-template-3.1.1.tgz", "integrity": "sha512-4oszoaEKE/mQOtAmdMWqIRHmkxWkUZMnXFnjQ5i01CuRSK3uluxcH1MRVVVWmhlnzT1SCDfKxxficm2G37qzCA==", - "license": "BSD-3-Clause", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -6777,8 +6304,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true, - "peer": true + "optional": true }, "node_modules/utils-merge": { "version": "1.0.1", @@ -6797,6 +6323,14 @@ "extend": "~3.0.0" } }, + "node_modules/uue/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", @@ -6823,11 +6357,12 @@ } }, "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true, - "peer": true + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } }, "node_modules/whatwg-encoding": { "version": "3.1.1", @@ -6860,14 +6395,15 @@ } }, "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "peer": true, + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" } }, "node_modules/which": { @@ -6890,7 +6426,6 @@ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", "dev": true, - "license": "MIT", "dependencies": { "is-bigint": "^1.1.0", "is-boolean-object": "^1.2.1", @@ -6910,7 +6445,6 @@ "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "function.prototype.name": "^1.1.6", @@ -6938,7 +6472,6 @@ "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, - "license": "MIT", "dependencies": { "is-map": "^2.0.3", "is-set": "^2.0.3", @@ -6957,7 +6490,6 @@ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, - "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", @@ -6979,7 +6511,6 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, - "peer": true, "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -7005,6 +6536,15 @@ "node": ">=0.8" } }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -7073,8 +6613,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true, - "peer": true + "optional": true }, "node_modules/yn": { "version": "3.1.1", @@ -7097,4920 +6636,5 @@ "url": "https://github.com/sponsors/sindresorhus" } } - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true - }, - "@asamuzakjp/css-color": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", - "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", - "requires": { - "@csstools/css-calc": "^2.1.3", - "@csstools/css-color-parser": "^3.0.9", - "@csstools/css-parser-algorithms": "^3.0.4", - "@csstools/css-tokenizer": "^3.0.3", - "lru-cache": "^10.4.3" - } - }, - "@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" - } - }, - "@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", - "dev": true, - "requires": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "dev": true - }, - "@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", - "dev": true - }, - "@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - } - }, - "@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - } - } - }, - "@csstools/color-helpers": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", - "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==" - }, - "@csstools/css-calc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", - "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", - "requires": {} - }, - "@csstools/css-color-parser": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", - "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", - "requires": { - "@csstools/color-helpers": "^5.0.2", - "@csstools/css-calc": "^2.1.4" - } - }, - "@csstools/css-parser-algorithms": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", - "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", - "requires": {} - }, - "@csstools/css-tokenizer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", - "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==" - }, - "@eslint-community/eslint-utils": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", - "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.4.3" - } - }, - "@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", - "dev": true - }, - "@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "@eslint/js": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", - "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", - "dev": true - }, - "@faker-js/faker": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-9.9.0.tgz", - "integrity": "sha512-OEl393iCOoo/z8bMezRlJu+GlRGlsKbUAN7jKB6LhnKoqKve5DXRpalbItIIcwnCjs1k/FOPjFzcA6Qn+H+YbA==" - }, - "@humanwhocodes/config-array": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", - "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^2.0.3", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", - "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "@keycloak/keycloak-admin-client": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.2.5.tgz", - "integrity": "sha512-glMBjQE0M8KOe9uZtdIl7kvHeBjfegZKxK8SzAZxekWvwsZ3Kt+XNd1kKW7NUxRdrs9EGtJLNUWX8vfaR+0Snw==", - "requires": { - "camelize-ts": "^3.0.0", - "url-join": "^5.0.0", - "url-template": "^3.1.1" - } - }, - "@mapbox/node-pre-gyp": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", - "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", - "optional": true, - "peer": true, - "requires": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - } - }, - "@napi-rs/canvas": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", - "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", - "optional": true, - "requires": { - "@napi-rs/canvas-android-arm64": "0.1.74", - "@napi-rs/canvas-darwin-arm64": "0.1.74", - "@napi-rs/canvas-darwin-x64": "0.1.74", - "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", - "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", - "@napi-rs/canvas-linux-arm64-musl": "0.1.74", - "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-musl": "0.1.74", - "@napi-rs/canvas-win32-x64-msvc": "0.1.74" - } - }, - "@napi-rs/canvas-android-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", - "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", - "optional": true - }, - "@napi-rs/canvas-darwin-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", - "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", - "optional": true - }, - "@napi-rs/canvas-darwin-x64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", - "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", - "optional": true - }, - "@napi-rs/canvas-linux-arm-gnueabihf": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", - "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", - "optional": true - }, - "@napi-rs/canvas-linux-arm64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", - "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", - "optional": true - }, - "@napi-rs/canvas-linux-arm64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", - "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", - "optional": true - }, - "@napi-rs/canvas-linux-riscv64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", - "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", - "optional": true - }, - "@napi-rs/canvas-linux-x64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", - "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", - "optional": true - }, - "@napi-rs/canvas-linux-x64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", - "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", - "optional": true - }, - "@napi-rs/canvas-win32-x64-msvc": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", - "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", - "optional": true - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@playwright/test": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.1.tgz", - "integrity": "sha512-FS8hQ12acieG2dYSksmLOF7BNxnVf2afRJdCuM1eMSxj6QTSE6G4InGF7oApGgDb65MX7AwMVlIkpru0yZA4Xw==", - "requires": { - "playwright": "1.54.1" - } - }, - "@rtsao/scc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", - "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", - "dev": true - }, - "@s3pweb/keycloak-admin-client-cjs": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.2.5.tgz", - "integrity": "sha512-xKEFaq+2A5+qEV3AM8bFfZOb7OwjcRpKinLZIqXX0RKB8UCrFZiEvt/4FyDS1peY3B6TpoeTOHB8SouxWgKyzQ==", - "requires": { - "@keycloak/keycloak-admin-client": "26.2.5" - } - }, - "@socket.io/component-emitter": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", - "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==" - }, - "@tsconfig/node10": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", - "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", - "dev": true - }, - "@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" - }, - "@types/cors": { - "version": "2.8.17", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", - "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", - "requires": { - "@types/node": "*" - } - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "@types/libsodium-wrappers": { - "version": "0.7.14", - "resolved": "https://registry.npmjs.org/@types/libsodium-wrappers/-/libsodium-wrappers-0.7.14.tgz", - "integrity": "sha512-5Kv68fXuXK0iDuUir1WPGw2R9fOZUlYlSAa0ztMcL0s0BfIDTqg9GXz8K30VJpPP3sxWhbolnQma2x+/TfkzDQ==", - "dev": true - }, - "@types/node": { - "version": "24.0.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", - "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", - "requires": { - "undici-types": "~7.8.0" - } - }, - "@types/semver": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", - "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", - "dev": true - }, - "@types/trusted-types": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", - "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", - "optional": true - }, - "@typescript-eslint/eslint-plugin": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", - "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/type-utils": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", - "graphemer": "^1.4.0", - "ignore": "^7.0.0", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "ignore": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", - "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", - "dev": true - }, - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } - } - }, - "@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/project-service": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", - "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", - "dev": true, - "requires": { - "@typescript-eslint/tsconfig-utils": "^8.37.0", - "@typescript-eslint/types": "^8.37.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", - "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0" - } - }, - "@typescript-eslint/tsconfig-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", - "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", - "dev": true, - "requires": {} - }, - "@typescript-eslint/type-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", - "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } - } - }, - "@typescript-eslint/types": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", - "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", - "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", - "dev": true, - "requires": { - "@typescript-eslint/project-service": "8.37.0", - "@typescript-eslint/tsconfig-utils": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } - } - }, - "@typescript-eslint/utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", - "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", - "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.37.0", - "eslint-visitor-keys": "^4.2.1" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true - } - } - }, - "@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true - }, - "@xmldom/xmldom": { - "version": "0.9.8", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", - "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==" - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true, - "peer": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} - }, - "addressparser": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz", - "integrity": "sha512-aQX7AISOMM7HFE0iZ3+YnD07oIeJqWGVnJ+ZIKaBZAk03ftmVYVqsGas/rbXKR21n4D/hKCSHypvcyOkds/xzg==" - }, - "adler-32": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz", - "integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==" - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "optional": true, - "peer": true, - "requires": { - "debug": "4" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "devOptional": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", - "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", - "optional": true, - "peer": true - }, - "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "optional": true, - "peer": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "array-buffer-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "is-array-buffer": "^3.0.5" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "array-includes": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", - "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.24.0", - "es-object-atoms": "^1.1.1", - "get-intrinsic": "^1.3.0", - "is-string": "^1.1.1", - "math-intrinsics": "^1.1.0" - } - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "array.prototype.findlastindex": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", - "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-shim-unscopables": "^1.1.0" - } - }, - "array.prototype.flat": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", - "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - } - }, - "array.prototype.flatmap": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", - "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - } - }, - "arraybuffer.prototype.slice": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "is-array-buffer": "^3.0.4" - } - }, - "async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" - }, - "async-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", - "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "requires": { - "possible-typed-array-names": "^1.0.0" - } - }, - "babel-eslint": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", - "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0", - "eslint-visitor-keys": "^1.0.0", - "resolve": "^1.12.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "devOptional": true - }, - "base32.js": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base32.js/-/base32.js-0.1.0.tgz", - "integrity": "sha512-n3TkB02ixgBOhTvANakDb4xaMXnYUVkNoRFJjQflcqMQhyEKxEHdj3E6N8t8sUQ0mjH/3/JxzlXuz3ul/J90pQ==" - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==" - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "requires": { - "fill-range": "^7.1.1" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "requires": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - } - }, - "call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "requires": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - } - }, - "call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "requires": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelize-ts": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", - "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==" - }, - "cfb": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", - "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", - "requires": { - "adler-32": "~1.3.0", - "crc-32": "~1.2.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "codepage": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", - "integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==" - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "optional": true, - "peer": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", - "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", - "requires": { - "bytes": "3.1.2", - "compressible": "~2.0.18", - "debug": "2.6.9", - "negotiator": "~0.6.4", - "on-headers": "~1.1.0", - "safe-buffer": "5.2.1", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==" - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "devOptional": true - }, - "confusing-browser-globals": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", - "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true, - "peer": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" - }, - "cookie": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", - "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==" - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "cssstyle": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", - "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", - "requires": { - "@asamuzakjp/css-color": "^3.2.0", - "rrweb-cssom": "^0.8.0" - }, - "dependencies": { - "rrweb-cssom": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", - "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" - } - } - }, - "csv-writer": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/csv-writer/-/csv-writer-1.6.0.tgz", - "integrity": "sha512-NOx7YDFWEsM/fTRAJjRpPp8t+MKRVvniAg9wQlUKx20MFrPs73WLJhFf5iteqrxNYnsy924K3Iroh3yNHeYd2g==" - }, - "data-urls": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", - "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", - "requires": { - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0" - }, - "dependencies": { - "tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "requires": { - "punycode": "^2.3.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" - }, - "whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "requires": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - } - }, - "data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - } - }, - "data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "decimal.js": { - "version": "10.6.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", - "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "requires": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - } - }, - "define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "requires": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true, - "peer": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "detect-libc": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", - "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", - "optional": true, - "peer": true - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0" - } - }, - "dompurify": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz", - "integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==", - "requires": { - "@types/trusted-types": "^2.0.7" - } - }, - "domutils": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", - "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", - "dev": true, - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - } - }, - "dotenv": { - "version": "17.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.0.tgz", - "integrity": "sha512-Q4sgBT60gzd0BB0lSyYD3xM4YxrXA9y4uBDof1JNYGzOXrQdQ6yX+7XIAqoFOGQFOTK1D3Hts5OllpxMDZFONQ==" - }, - "dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "requires": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true, - "peer": true - }, - "encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==" - }, - "engine.io": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.2.tgz", - "integrity": "sha512-gmNvsYi9C8iErnZdVcJnvCpSKbWTt1E8+JZo8b+daLninywUWi5NQ5STSHZ9rFjFO7imNcvb8Pc5pe/wMR5xEw==", - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.7.2", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.2.1", - "ws": "~8.17.1" - }, - "dependencies": { - "cookie": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", - "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==" - }, - "ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "requires": {} - } - } - }, - "engine.io-parser": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", - "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==" - }, - "entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true - }, - "es-abstract": { - "version": "1.24.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", - "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "data-view-buffer": "^1.0.2", - "data-view-byte-length": "^1.0.2", - "data-view-byte-offset": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-set-tostringtag": "^2.1.0", - "es-to-primitive": "^1.3.0", - "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.3.0", - "get-proto": "^1.0.1", - "get-symbol-description": "^1.1.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "internal-slot": "^1.1.0", - "is-array-buffer": "^3.0.5", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.2", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.2.1", - "is-set": "^2.0.3", - "is-shared-array-buffer": "^1.0.4", - "is-string": "^1.1.1", - "is-typed-array": "^1.1.15", - "is-weakref": "^1.1.1", - "math-intrinsics": "^1.1.0", - "object-inspect": "^1.13.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.7", - "own-keys": "^1.0.1", - "regexp.prototype.flags": "^1.5.4", - "safe-array-concat": "^1.1.3", - "safe-push-apply": "^1.0.0", - "safe-regex-test": "^1.1.0", - "set-proto": "^1.0.0", - "stop-iteration-iterator": "^1.1.0", - "string.prototype.trim": "^1.2.10", - "string.prototype.trimend": "^1.0.9", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.3", - "typed-array-byte-length": "^1.0.3", - "typed-array-byte-offset": "^1.0.4", - "typed-array-length": "^1.0.7", - "unbox-primitive": "^1.1.0", - "which-typed-array": "^1.1.19" - } - }, - "es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==" - }, - "es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" - }, - "es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "requires": { - "es-errors": "^1.3.0" - } - }, - "es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "requires": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - } - }, - "es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "dev": true, - "requires": { - "hasown": "^2.0.2" - } - }, - "es-to-primitive": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", - "dev": true, - "requires": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - } - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "eslint": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", - "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.1", - "@humanwhocodes/config-array": "^0.13.0", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "eslint-config-airbnb-base": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", - "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", - "dev": true, - "requires": { - "confusing-browser-globals": "^1.0.10", - "object.assign": "^4.1.2", - "object.entries": "^1.1.5", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "requires": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-module-utils": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", - "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", - "dev": true, - "requires": { - "debug": "^3.2.7" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-plugin-deprecation": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-deprecation/-/eslint-plugin-deprecation-3.0.0.tgz", - "integrity": "sha512-JuVLdNg/uf0Adjg2tpTyYoYaMbwQNn/c78P1HcccokvhtRphgnRjZDKmhlxbxYptppex03zO76f97DD/yQHv7A==", - "dev": true, - "requires": { - "@typescript-eslint/utils": "^7.0.0", - "ts-api-utils": "^1.3.0", - "tslib": "^2.3.1" - }, - "dependencies": { - "@typescript-eslint/scope-manager": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", - "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0" - } - }, - "@typescript-eslint/types": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", - "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", - "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" - } - }, - "@typescript-eslint/utils": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", - "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.18.0", - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/typescript-estree": "7.18.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", - "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "7.18.0", - "eslint-visitor-keys": "^3.4.3" - } - } - } - }, - "eslint-plugin-html": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-8.1.3.tgz", - "integrity": "sha512-cnCdO7yb/jrvgSJJAfRkGDOwLu1AOvNdw8WCD6nh/2C4RnxuI4tz6QjMEAmmSiHSeugq/fXcIO8yBpIBQrMZCg==", - "dev": true, - "requires": { - "htmlparser2": "^10.0.0" - } - }, - "eslint-plugin-import": { - "version": "2.32.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", - "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", - "dev": true, - "requires": { - "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.9", - "array.prototype.findlastindex": "^1.2.6", - "array.prototype.flat": "^1.3.3", - "array.prototype.flatmap": "^1.3.3", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.1", - "hasown": "^2.0.2", - "is-core-module": "^2.16.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "object.groupby": "^1.0.3", - "object.values": "^1.2.1", - "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.9", - "tsconfig-paths": "^3.15.0" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - } - } - }, - "eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true - }, - "espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - } - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" - }, - "express": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", - "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.3", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.12", - "proxy-addr": "~2.0.7", - "qs": "6.13.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "fast-xml-parser": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.2.5.tgz", - "integrity": "sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==", - "requires": { - "strnum": "^2.1.0" - } - }, - "fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "requires": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true - }, - "for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", - "dev": true, - "requires": { - "is-callable": "^1.2.7" - } - }, - "form-data": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", - "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "es-set-tostringtag": "^2.1.0", - "hasown": "^2.0.2", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "frac": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz", - "integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "optional": true, - "peer": true, - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "optional": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "devOptional": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "optional": true - }, - "function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" - }, - "function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" - } - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "optional": true, - "peer": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, - "get-intrinsic": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "requires": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - } - }, - "get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "requires": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - } - }, - "get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - } - }, - "get-tsconfig": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.0.tgz", - "integrity": "sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==", - "dev": true, - "requires": { - "resolve-pkg-maps": "^1.0.0" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "devOptional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "devOptional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "devOptional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "requires": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==" - }, - "graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "gunzip-file": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/gunzip-file/-/gunzip-file-0.1.1.tgz", - "integrity": "sha512-DjDExBKHuhyhHOs8HeGV5dw6wY6eYTl4pAHz27oy8XppgBK60vmG/G3bY09zyT9PXX4TjmnEF4hYoRn61Fctlg==" - }, - "has-bigints": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "requires": { - "es-define-property": "^1.0.0" - } - }, - "has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", - "dev": true, - "requires": { - "dunder-proto": "^1.0.0" - } - }, - "has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==" - }, - "has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "requires": { - "has-symbols": "^1.0.3" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true, - "peer": true - }, - "hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "requires": { - "function-bind": "^1.1.2" - } - }, - "html-encoding-sniffer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", - "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", - "requires": { - "whatwg-encoding": "^3.1.1" - } - }, - "htmlparser2": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.0.0.tgz", - "integrity": "sha512-TwAZM+zE5Tq3lrEHvOlvwgj1XLWQCtaaibSN11Q+gGBAS7Y1uZSWwXXRe4iF6OXnaq1riyQAPFOBtYc77Mxq0g==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.2.1", - "entities": "^6.0.0" - }, - "dependencies": { - "entities": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.0.tgz", - "integrity": "sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==", - "dev": true - } - } - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", - "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", - "requires": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "dependencies": { - "agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" - } - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "optional": true, - "peer": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "iconv-lite": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.0.tgz", - "integrity": "sha512-NnEhI9hIEKHOzJ4f697DMz9IQEXr/MMJ5w64vN2/4Ai+wRnvV7SBrL0KLoRlwaKVghOc7LQ5YkPLuX146b6Ydw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "devOptional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "internal-slot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", - "dev": true, - "requires": { - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "side-channel": "^1.1.0" - } - }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - }, - "ipv6-normalize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ipv6-normalize/-/ipv6-normalize-1.0.1.tgz", - "integrity": "sha512-Bm6H79i01DjgGTCWjUuCjJ6QDo1HB96PT/xCYuyJUP9WFbVDrLSbG4EZCvOCun2rNswZb0c3e4Jt/ws795esHA==" - }, - "is-array-buffer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - } - }, - "is-async-function": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", - "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", - "dev": true, - "requires": { - "async-function": "^1.0.0", - "call-bound": "^1.0.3", - "get-proto": "^1.0.1", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - } - }, - "is-bigint": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", - "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", - "dev": true, - "requires": { - "has-bigints": "^1.0.2" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", - "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - } - }, - "is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true - }, - "is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", - "dev": true, - "requires": { - "hasown": "^2.0.2" - } - }, - "is-data-view": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "is-typed-array": "^1.1.13" - } - }, - "is-date-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-finalizationregistry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", - "dev": true, - "requires": { - "call-bound": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "optional": true, - "peer": true - }, - "is-generator-function": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", - "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "get-proto": "^1.0.0", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - } - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true - }, - "is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-number-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", - "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - } - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" - }, - "is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - } - }, - "is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", - "dev": true, - "requires": { - "call-bound": "^1.0.3" - } - }, - "is-string": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - } - }, - "is-symbol": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "has-symbols": "^1.1.0", - "safe-regex-test": "^1.1.0" - } - }, - "is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "requires": { - "which-typed-array": "^1.1.16" - } - }, - "is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true - }, - "is-weakref": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", - "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", - "dev": true, - "requires": { - "call-bound": "^1.0.3" - } - }, - "is-weakset": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", - "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - } - }, - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "jpeg-js": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz", - "integrity": "sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==" - }, - "js-image-generator": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/js-image-generator/-/js-image-generator-1.0.4.tgz", - "integrity": "sha512-ckb7kyVojGAnArouVR+5lBIuwU1fcrn7E/YYSd0FK7oIngAkMmRvHASLro9Zt5SQdWToaI66NybG+OGxPw/HlQ==", - "requires": { - "jpeg-js": "^0.4.2" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true - }, - "keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "requires": { - "json-buffer": "3.0.1" - } - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "libsodium": { - "version": "0.7.15", - "resolved": "https://registry.npmjs.org/libsodium/-/libsodium-0.7.15.tgz", - "integrity": "sha512-sZwRknt/tUpE2AwzHq3jEyUU5uvIZHtSssktXq7owd++3CSgn8RGrv6UZJJBpP7+iBghBqe7Z06/2M31rI2NKw==" - }, - "libsodium-wrappers": { - "version": "0.7.15", - "resolved": "https://registry.npmjs.org/libsodium-wrappers/-/libsodium-wrappers-0.7.15.tgz", - "integrity": "sha512-E4anqJQwcfiC6+Yrl01C1m8p99wEhLmJSs0VQqST66SbQXXBoaJY0pF4BNjRYa/sOQAxx6lXAaAFIlx+15tXJQ==", - "requires": { - "libsodium": "^0.7.15" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "maildev": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", - "integrity": "sha512-uNSJ4LpiNfCMw5KpWAM5x1UgOyG3ngeNwzBqw4/Wl18ECkJDyXBYpTH44HCG8LqAOFLkUiLl/1Ah5lrQhv3GzQ==", - "requires": { - "addressparser": "1.0.1", - "async": "^3.2.3", - "commander": "^12.1.0", - "compression": "^1.7.4", - "cors": "^2.8.5", - "dompurify": "^3.1.6", - "express": "^4.21.2", - "iconv-lite": "0.5.0", - "jsdom": "^24.1.1", - "mime": "2.4.4", - "nodemailer": "^6.9.14", - "smtp-server": "^3.13.4", - "socket.io": "^4.7.5", - "uue": "3.1.2", - "wildstring": "1.0.9" - }, - "dependencies": { - "agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" - }, - "canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "optional": true, - "peer": true, - "requires": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - } - }, - "commander": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", - "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==" - }, - "decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "peer": true, - "requires": { - "mimic-response": "^2.0.0" - } - }, - "https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "requires": { - "agent-base": "^7.1.2", - "debug": "4" - } - }, - "jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "requires": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - } - }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "peer": true - }, - "simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", - "optional": true, - "peer": true, - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "requires": { - "punycode": "^2.3.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" - }, - "whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "requires": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "optional": true, - "peer": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "optional": true, - "peer": true - } - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" - }, - "merge-descriptors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", - "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==" - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true - }, - "minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "optional": true, - "peer": true - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "optional": true, - "peer": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "optional": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true, - "peer": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "mylas": { - "version": "2.1.13", - "resolved": "https://registry.npmjs.org/mylas/-/mylas-2.1.13.tgz", - "integrity": "sha512-+MrqnJRtxdF+xngFfUUkIMQrUUL0KsxbADUkn23Z/4ibGg192Q+z+CQyiYwvWTsYjJygmMR8+w3ZDa98Zh6ESg==", - "dev": true - }, - "nan": { - "version": "2.23.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", - "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", - "optional": true, - "peer": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "optional": true, - "peer": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "nodemailer": { - "version": "6.9.16", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.16.tgz", - "integrity": "sha512-psAuZdTIRN08HKVd/E8ObdV6NO7NTBY3KsC30F7M4H1OnmLCUNaS56FpYxyb26zWLSyYF9Ozch9KYHhHegsiOQ==" - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "optional": true, - "peer": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "optional": true, - "peer": true, - "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "nwsapi": { - "version": "2.2.20", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", - "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, - "object-inspect": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==" - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - } - }, - "object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - } - }, - "object.groupby": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", - "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" - } - }, - "object.values": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", - "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz", - "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "devOptional": true, - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - } - }, - "own-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.6", - "object-keys": "^1.1.1", - "safe-push-apply": "^1.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse5": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", - "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", - "requires": { - "entities": "^6.0.0" - }, - "dependencies": { - "entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==" - } - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "devOptional": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", - "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "pdfjs-dist": { - "version": "4.10.38", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", - "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", - "requires": { - "@napi-rs/canvas": "^0.1.65" - } - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "playwright": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.1.tgz", - "integrity": "sha512-peWpSwIBmSLi6aW2auvrUtf2DqY16YYcCMO8rTVx486jKmDTJg7UAhyrraP98GB8BoPURZP8+nxO7TSd4cPr5g==", - "requires": { - "fsevents": "2.3.2", - "playwright-core": "1.54.1" - } - }, - "playwright-core": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.1.tgz", - "integrity": "sha512-Nbjs2zjj0htNhzgiy5wu+3w09YetDx5pkrpI/kZotDlDUaYk0HVA5xrBVPdow4SAUIlhgKcJeJg4GRKW6xHusA==" - }, - "plimit-lit": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/plimit-lit/-/plimit-lit-1.6.1.tgz", - "integrity": "sha512-B7+VDyb8Tl6oMJT9oSO2CW8XC/T4UcJGrwOVoNGwOQsQYhlpfajmrMj5xeejqaASq3V/EqThyOeATEOMuSEXiA==", - "dev": true, - "requires": { - "queue-lit": "^1.5.1" - } - }, - "possible-typed-array-names": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", - "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", - "dev": true - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "psl": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", - "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", - "requires": { - "punycode": "^2.3.1" - } - }, - "punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==" - }, - "punycode.js": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", - "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==" - }, - "qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "requires": { - "side-channel": "^1.0.6" - } - }, - "querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" - }, - "queue-lit": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/queue-lit/-/queue-lit-1.5.2.tgz", - "integrity": "sha512-tLc36IOPeMAubu8BkW8YDBV+WyIgKlYU7zUNs0J5Vk9skSZ4JfGlPOqplP0aHdfv7HL0B2Pg6nwiq60Qc6M2Hw==", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "optional": true, - "peer": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect.getprototypeof": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.1", - "which-builtin-type": "^1.2.1" - } - }, - "regexp.prototype.flags": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "set-function-name": "^2.0.2" - } - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, - "resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "devOptional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "rrweb-cssom": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.7.1.tgz", - "integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==" - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-array-concat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "has-symbols": "^1.1.0", - "isarray": "^2.0.5" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safe-push-apply": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", - "dev": true, - "requires": { - "es-errors": "^1.3.0", - "isarray": "^2.0.5" - } - }, - "safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "requires": { - "xmlchars": "^2.2.0" - } - }, - "semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==" - }, - "send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - } - } - }, - "serve-static": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", - "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", - "requires": { - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.19.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true, - "peer": true - }, - "set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "requires": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - } - }, - "set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "requires": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - } - }, - "set-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", - "dev": true, - "requires": { - "dunder-proto": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0" - } - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "requires": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - } - }, - "side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "requires": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - } - }, - "side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - } - }, - "side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true, - "peer": true - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "optional": true, - "peer": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "smtp-server": { - "version": "3.13.6", - "resolved": "https://registry.npmjs.org/smtp-server/-/smtp-server-3.13.6.tgz", - "integrity": "sha512-dqbSPKn3PCq3Gp5hxBM99u7PET7cQSAWrauhtArJbc+zrf5xNEOjm9+Ob3lySySrRoIEvNE0dz+w2H/xWFJNRw==", - "requires": { - "base32.js": "0.1.0", - "ipv6-normalize": "1.0.1", - "nodemailer": "6.9.15", - "punycode.js": "2.3.1" - }, - "dependencies": { - "nodemailer": { - "version": "6.9.15", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.15.tgz", - "integrity": "sha512-AHf04ySLC6CIfuRtRiEYtGEXgRfa6INgWGluDhnxTZhHSKvrBu7lc1VVchQ0d8nPc4cFaZoPq8vkyNoZr0TpGQ==" - } - } - }, - "socket.io": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", - "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "cors": "~2.8.5", - "debug": "~4.3.2", - "engine.io": "~6.6.0", - "socket.io-adapter": "~2.5.2", - "socket.io-parser": "~4.2.4" - } - }, - "socket.io-adapter": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", - "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", - "requires": { - "debug": "~4.3.4", - "ws": "~8.17.1" - }, - "dependencies": { - "ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "requires": {} - } - } - }, - "socket.io-parser": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", - "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", - "requires": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1" - } - }, - "ssf": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz", - "integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==", - "requires": { - "frac": "~1.1.2" - } - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - }, - "stop-iteration-iterator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", - "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", - "dev": true, - "requires": { - "es-errors": "^1.3.0", - "internal-slot": "^1.1.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "optional": true, - "peer": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "optional": true, - "peer": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "string.prototype.trim": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-data-property": "^1.1.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-object-atoms": "^1.0.0", - "has-property-descriptors": "^1.0.2" - } - }, - "string.prototype.trimend": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "devOptional": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "strnum": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.0.tgz", - "integrity": "sha512-w0S//9BqZZGw0L0Y8uLSelFGnDJgTyyNQLmSlPnVz43zPAiqu3w4t8J8sDqqANOGeZIZ/9jWuPguYcEnsoHv4A==" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" - }, - "tar": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", - "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", - "optional": true, - "peer": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "peer": true - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, - "tough-cookie": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", - "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true, - "peer": true - }, - "ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", - "dev": true, - "requires": {} - }, - "ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dev": true, - "requires": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "dependencies": { - "acorn-walk": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", - "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", - "dev": true, - "requires": { - "acorn": "^8.11.0" - } - } - } - }, - "tsc-alias": { - "version": "1.8.16", - "resolved": "https://registry.npmjs.org/tsc-alias/-/tsc-alias-1.8.16.tgz", - "integrity": "sha512-QjCyu55NFyRSBAl6+MTFwplpFcnm2Pq01rR/uxfqJoLMm6X3O14KEGtaSDZpJYaE1bJBGDjD0eSuiIWPe2T58g==", - "dev": true, - "requires": { - "chokidar": "^3.5.3", - "commander": "^9.0.0", - "get-tsconfig": "^4.10.0", - "globby": "^11.0.4", - "mylas": "^2.1.9", - "normalize-path": "^3.0.0", - "plimit-lit": "^1.2.6" - } - }, - "tsconfig-paths": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", - "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", - "dev": true, - "requires": { - "json5": "^2.2.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - } - }, - "typed-array-byte-length": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.14" - } - }, - "typed-array-byte-offset": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.15", - "reflect.getprototypeof": "^1.0.9" - } - }, - "typed-array-length": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0", - "reflect.getprototypeof": "^1.0.6" - } - }, - "typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true - }, - "unbox-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-bigints": "^1.0.2", - "has-symbols": "^1.1.0", - "which-boxed-primitive": "^1.1.1" - } - }, - "undici-types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", - "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==" - }, - "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==" - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "url-join": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", - "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==" - }, - "url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-template": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-3.1.1.tgz", - "integrity": "sha512-4oszoaEKE/mQOtAmdMWqIRHmkxWkUZMnXFnjQ5i01CuRSK3uluxcH1MRVVVWmhlnzT1SCDfKxxficm2G37qzCA==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true, - "peer": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" - }, - "uue": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/uue/-/uue-3.1.2.tgz", - "integrity": "sha512-axKLXVqwtdI/czrjG0X8hyV1KLgeWx8F4KvSbvVCnS+RUvsQMGRjx0kfuZDXXqj0LYvVJmx3B9kWlKtEdRrJLg==", - "requires": { - "escape-string-regexp": "~1.0.5", - "extend": "~3.0.0" - } - }, - "v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" - }, - "w3c-xmlserializer": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", - "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", - "requires": { - "xml-name-validator": "^5.0.0" - } - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true, - "peer": true - }, - "whatwg-encoding": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", - "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", - "requires": { - "iconv-lite": "0.6.3" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==" - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "peer": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", - "dev": true, - "requires": { - "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.1", - "is-number-object": "^1.1.1", - "is-string": "^1.1.1", - "is-symbol": "^1.1.1" - } - }, - "which-builtin-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.1.0", - "is-finalizationregistry": "^1.1.0", - "is-generator-function": "^1.0.10", - "is-regex": "^1.2.1", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.1.0", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.16" - } - }, - "which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "requires": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - } - }, - "which-typed-array": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "for-each": "^0.3.5", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "optional": true, - "peer": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wildstring": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/wildstring/-/wildstring-1.0.9.tgz", - "integrity": "sha512-XBNxKIMLO6uVHf1Xvo++HGWAZZoiVCHmEMCmZJzJ82vQsuUJCLw13Gzq0mRCATk7a3+ZcgeOKSDioavuYqtlfA==" - }, - "wmf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wmf/-/wmf-1.0.2.tgz", - "integrity": "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==" - }, - "word": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/word/-/word-0.3.0.tgz", - "integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==" - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "devOptional": true - }, - "ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "requires": {} - }, - "xlsx": { - "version": "0.18.5", - "resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz", - "integrity": "sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==", - "requires": { - "adler-32": "~1.3.0", - "cfb": "~1.2.1", - "codepage": "~1.15.0", - "crc-32": "~1.2.1", - "ssf": "~0.11.2", - "wmf": "~1.0.1", - "word": "~0.3.0" - } - }, - "xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==" - }, - "xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" - }, - "xpath-ts": { - "version": "1.3.13", - "resolved": "https://registry.npmjs.org/xpath-ts/-/xpath-ts-1.3.13.tgz", - "integrity": "sha512-eNVXzDWbCV9KEB6fGNQ3qHFGC9PWBH7y2h13vZ+CMPNqOTZ+fgYTG4Sb0p5bVHiAwZrzgE6/tx987003P3dYpA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true, - "peer": true - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - } } } diff --git a/package.json b/package.json index a63031987..225da52f6 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^4.10.38", + "pdfjs-dist": "^3.6.172", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From 5567a8ed25bc08a76cee6221997b5d8159b431f2 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Thu, 24 Jul 2025 15:12:10 +0200 Subject: [PATCH 179/609] `FakerCartRule` : New setter & getter --- src/data/faker/cartRule.ts | 54 +++++++++++++++++++++++++++++--------- 1 file changed, 41 insertions(+), 13 deletions(-) diff --git a/src/data/faker/cartRule.ts b/src/data/faker/cartRule.ts index 379dbb448..d351fbd46 100644 --- a/src/data/faker/cartRule.ts +++ b/src/data/faker/cartRule.ts @@ -69,11 +69,11 @@ export default class FakerCartRule { public readonly freeShipping: boolean; - public readonly discountType: string; + public discountType: string; public discountPercent: number | string | null; - public readonly discountAmount: CartRuleDiscountAmount | null; + public discountAmount: CartRuleDiscountAmount | null; public readonly applyDiscountTo: string; @@ -176,11 +176,8 @@ export default class FakerCartRule { if (this.discountType === 'Percent') { this.discountPercent = cartRuleToCreate.discountPercent || faker.number.int({min: 10, max: 80}); } else if (this.discountType === 'Amount') { - this.discountAmount = cartRuleToCreate.discountAmount || { - value: 0, - currency: 'EUR', - tax: 'Tax included', - }; + this.discountAmount = cartRuleToCreate.discountAmount || null; + this.initDiscountAmount(); } /** @type {string} Object to apply discount on it */ @@ -206,29 +203,60 @@ export default class FakerCartRule { } } + protected initDiscountAmount(): void { + if (!this.discountAmount) { + this.discountAmount = { + value: 0, + currency: 'EUR', + tax: 'Tax included', + }; + } + } + + getDiscountAmount(): number { + return parseFloat(this.discountAmount!.value.toString()); + } + getDiscountPercent(): number { return parseInt(this.discountPercent!.toString(), 10); } - setDiscountPercent(discountPercent: number|string|null): this { - this.discountPercent = discountPercent; + setDiscountAmountCurrency(currency: string): this { + this.initDiscountAmount(); + if (this.discountAmount) { + this.discountAmount.currency = currency; + } return this; } - setDiscountAmountValue(value: number|string): this { + setDiscountAmountTax(tax: 'Tax included'|'Tax excluded'): this { + this.initDiscountAmount(); if (this.discountAmount) { - this.discountAmount.value = value; + this.discountAmount.tax = tax; } return this; } - setDiscountAmountTax(tax: 'Tax included'|'Tax excluded'): this { + setDiscountAmountValue(value: number|string): this { + this.initDiscountAmount(); if (this.discountAmount) { - this.discountAmount.tax = tax; + this.discountAmount.value = value; } return this; } + + setDiscountPercent(discountPercent: number|string|null): this { + this.discountPercent = discountPercent; + + return this; + } + + setDiscountType(discountType: 'Amount' | 'Percent' | 'None'): this { + this.discountType = discountType; + + return this; + } } From bc5f62490809e4188a5f37b6862004bde263e81c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Jul 2025 16:44:18 +0200 Subject: [PATCH 180/609] Edit goToProduct for classic FO --- src/versions/develop/pages/FO/classic/home/index.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index d666b2c44..b873b9b5d 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -200,7 +200,9 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { * @returns {Promise} */ async goToProductPage(page: Page, id: number): Promise { - await this.clickAndWaitForURL(page, this.productImg(id)); + //await this.clickAndWaitForURL(page, this.productImg(id)); + await page.locator(this.productImg(id)).click(); + await page.waitForLoadState('load'); } /** From 4720d26896fb9e0fffc66e55caa60a7c58d545a5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Jul 2025 05:59:45 +0000 Subject: [PATCH 181/609] Bump @typescript-eslint/parser from 8.37.0 to 8.38.0 Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.37.0 to 8.38.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.38.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-version: 8.38.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 241 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 227 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index d8c689c53..6f02547d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -685,15 +685,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", + "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4" }, "engines": { @@ -708,6 +708,142 @@ "typescript": ">=4.8.4 <5.9.0" } }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", + "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", + "dev": true, + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.38.0", + "@typescript-eslint/types": "^8.38.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", + "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", + "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", + "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/project-service": "8.38.0", + "@typescript-eslint/tsconfig-utils": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", + "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.38.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, "node_modules/@typescript-eslint/project-service": { "version": "8.37.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", @@ -7223,16 +7359,93 @@ } }, "@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", + "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4" + }, + "dependencies": { + "@typescript-eslint/project-service": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", + "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", + "dev": true, + "requires": { + "@typescript-eslint/tsconfig-utils": "^8.38.0", + "@typescript-eslint/types": "^8.38.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", + "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0" + } + }, + "@typescript-eslint/tsconfig-utils": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", + "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", + "dev": true, + "requires": {} + }, + "@typescript-eslint/types": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", + "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", + "dev": true, + "requires": { + "@typescript-eslint/project-service": "8.38.0", + "@typescript-eslint/tsconfig-utils": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", + "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.38.0", + "eslint-visitor-keys": "^4.2.1" + } + }, + "eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true + }, + "ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "requires": {} + } } }, "@typescript-eslint/project-service": { From 87c35c70116470d75902c59de93d4d1011d46de0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Jul 2025 06:00:06 +0000 Subject: [PATCH 182/609] Bump @s3pweb/keycloak-admin-client-cjs from 26.2.5 to 26.3.1 Bumps @s3pweb/keycloak-admin-client-cjs from 26.2.5 to 26.3.1. --- updated-dependencies: - dependency-name: "@s3pweb/keycloak-admin-client-cjs" dependency-version: 26.3.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index d8c689c53..db9c63618 100644 --- a/package-lock.json +++ b/package-lock.json @@ -460,10 +460,9 @@ } }, "node_modules/@keycloak/keycloak-admin-client": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.2.5.tgz", - "integrity": "sha512-glMBjQE0M8KOe9uZtdIl7kvHeBjfegZKxK8SzAZxekWvwsZ3Kt+XNd1kKW7NUxRdrs9EGtJLNUWX8vfaR+0Snw==", - "license": "Apache-2.0", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.1.tgz", + "integrity": "sha512-xgmT0Pkwz6k+K5zLXNggMJtQz6GisQfJ/ZR6grr09Hfedx98xUdxC6TKB1IGLyn0fXLszifHn2bHq+F+Ql109g==", "dependencies": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -549,12 +548,11 @@ "dev": true }, "node_modules/@s3pweb/keycloak-admin-client-cjs": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.2.5.tgz", - "integrity": "sha512-xKEFaq+2A5+qEV3AM8bFfZOb7OwjcRpKinLZIqXX0RKB8UCrFZiEvt/4FyDS1peY3B6TpoeTOHB8SouxWgKyzQ==", - "license": "MIT", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.1.tgz", + "integrity": "sha512-cozNqXxG/Q2MCcpcr7RB9J1bIA4DMw6YAl3axfQ+YGH3N3CUTtTEjeCoG/92ilAAtUtolcdBl+mcFA5LVQV0WQ==", "dependencies": { - "@keycloak/keycloak-admin-client": "26.2.5" + "@keycloak/keycloak-admin-client": "26.3.1" } }, "node_modules/@socket.io/component-emitter": { @@ -1434,7 +1432,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==", - "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -6377,7 +6374,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==", - "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -6395,7 +6391,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/url-template/-/url-template-3.1.1.tgz", "integrity": "sha512-4oszoaEKE/mQOtAmdMWqIRHmkxWkUZMnXFnjQ5i01CuRSK3uluxcH1MRVVVWmhlnzT1SCDfKxxficm2G37qzCA==", - "license": "BSD-3-Clause", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -7042,9 +7037,9 @@ } }, "@keycloak/keycloak-admin-client": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.2.5.tgz", - "integrity": "sha512-glMBjQE0M8KOe9uZtdIl7kvHeBjfegZKxK8SzAZxekWvwsZ3Kt+XNd1kKW7NUxRdrs9EGtJLNUWX8vfaR+0Snw==", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.1.tgz", + "integrity": "sha512-xgmT0Pkwz6k+K5zLXNggMJtQz6GisQfJ/ZR6grr09Hfedx98xUdxC6TKB1IGLyn0fXLszifHn2bHq+F+Ql109g==", "requires": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -7109,11 +7104,11 @@ "dev": true }, "@s3pweb/keycloak-admin-client-cjs": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.2.5.tgz", - "integrity": "sha512-xKEFaq+2A5+qEV3AM8bFfZOb7OwjcRpKinLZIqXX0RKB8UCrFZiEvt/4FyDS1peY3B6TpoeTOHB8SouxWgKyzQ==", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.1.tgz", + "integrity": "sha512-cozNqXxG/Q2MCcpcr7RB9J1bIA4DMw6YAl3axfQ+YGH3N3CUTtTEjeCoG/92ilAAtUtolcdBl+mcFA5LVQV0WQ==", "requires": { - "@keycloak/keycloak-admin-client": "26.2.5" + "@keycloak/keycloak-admin-client": "26.3.1" } }, "@socket.io/component-emitter": { From 900d29cf7af7b8401f24c22786e7ee0eb22c8e80 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Jul 2025 06:09:26 +0000 Subject: [PATCH 183/609] Bump @typescript-eslint/eslint-plugin from 8.37.0 to 8.38.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.37.0 to 8.38.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.38.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.38.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 214 +++++++++++++++++++++++----------------------- 1 file changed, 107 insertions(+), 107 deletions(-) diff --git a/package-lock.json b/package-lock.json index d8c689c53..cfa43d397 100644 --- a/package-lock.json +++ b/package-lock.json @@ -633,16 +633,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", - "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", + "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/type-utils": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/type-utils": "8.38.0", + "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -656,7 +656,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.37.0", + "@typescript-eslint/parser": "^8.38.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } @@ -685,15 +685,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", + "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4" }, "engines": { @@ -709,13 +709,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", - "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", + "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.37.0", - "@typescript-eslint/types": "^8.37.0", + "@typescript-eslint/tsconfig-utils": "^8.38.0", + "@typescript-eslint/types": "^8.38.0", "debug": "^4.3.4" }, "engines": { @@ -730,13 +730,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", - "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", + "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0" + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -747,9 +747,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", - "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", + "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -763,14 +763,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", - "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", + "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/utils": "8.37.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/utils": "8.38.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -799,9 +799,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", - "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -812,15 +812,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", - "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", + "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.37.0", - "@typescript-eslint/tsconfig-utils": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/project-service": "8.38.0", + "@typescript-eslint/tsconfig-utils": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -852,15 +852,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", - "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.38.0.tgz", + "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0" + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -875,12 +875,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", - "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", + "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/types": "8.38.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7191,16 +7191,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", - "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", + "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/type-utils": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/type-utils": "8.38.0", + "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7223,55 +7223,55 @@ } }, "@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", + "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", - "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", + "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.37.0", - "@typescript-eslint/types": "^8.37.0", + "@typescript-eslint/tsconfig-utils": "^8.38.0", + "@typescript-eslint/types": "^8.38.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", - "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", + "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", "dev": true, "requires": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0" + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", - "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", + "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", - "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", + "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/utils": "8.37.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/utils": "8.38.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7286,21 +7286,21 @@ } }, "@typescript-eslint/types": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", - "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", - "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", + "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.37.0", - "@typescript-eslint/tsconfig-utils": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/project-service": "8.38.0", + "@typescript-eslint/tsconfig-utils": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7319,24 +7319,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", - "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.38.0.tgz", + "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0" + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", - "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", + "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", "dev": true, "requires": { - "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/types": "8.38.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 593459ec07538536a0dd886abfbb0d54d67bdc59 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 10:46:00 +0200 Subject: [PATCH 184/609] Increase timeout in createEditAddress --- src/versions/develop/pages/BO/customers/addresses/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..f685a6957 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -108,7 +108,7 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI } if ('waitForResponse' in page) { await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, + timeout: 3000, }); } } From b736d9c363eb31d2630e041c7f20a6fc060bb98b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Jul 2025 10:13:23 +0000 Subject: [PATCH 185/609] Bump dotenv from 17.2.0 to 17.2.1 Bumps [dotenv](https://github.com/motdotla/dotenv) from 17.2.0 to 17.2.1. - [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) - [Commits](https://github.com/motdotla/dotenv/compare/v17.2.0...v17.2.1) --- updated-dependencies: - dependency-name: dotenv dependency-version: 17.2.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3b715f1af..72027437a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2152,9 +2152,9 @@ } }, "node_modules/dotenv": { - "version": "17.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.0.tgz", - "integrity": "sha512-Q4sgBT60gzd0BB0lSyYD3xM4YxrXA9y4uBDof1JNYGzOXrQdQ6yX+7XIAqoFOGQFOTK1D3Hts5OllpxMDZFONQ==", + "version": "17.2.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.1.tgz", + "integrity": "sha512-kQhDYKZecqnM0fCnzI5eIv5L4cAe/iRI+HqMbO/hbRdTAeXDG+M9FjipUxNfbARuEg4iHIbhnhs78BCHNbSxEQ==", "engines": { "node": ">=12" }, @@ -8365,9 +8365,9 @@ } }, "dotenv": { - "version": "17.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.0.tgz", - "integrity": "sha512-Q4sgBT60gzd0BB0lSyYD3xM4YxrXA9y4uBDof1JNYGzOXrQdQ6yX+7XIAqoFOGQFOTK1D3Hts5OllpxMDZFONQ==" + "version": "17.2.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.1.tgz", + "integrity": "sha512-kQhDYKZecqnM0fCnzI5eIv5L4cAe/iRI+HqMbO/hbRdTAeXDG+M9FjipUxNfbARuEg4iHIbhnhs78BCHNbSxEQ==" }, "dunder-proto": { "version": "1.0.1", From 6a449c2167f1961a922239e37c7fc9dc597906f2 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Mon, 28 Jul 2025 14:13:21 +0200 Subject: [PATCH 186/609] `foClassiCart` : Added method getSubtotalProductsValue --- src/interfaces/FO/cart/index.ts | 1 + .../develop/pages/BO/catalog/discounts/create.ts | 6 ++++++ src/versions/develop/pages/FO/classic/cart/index.ts | 12 ++++++++++++ 3 files changed, 19 insertions(+) diff --git a/src/interfaces/FO/cart/index.ts b/src/interfaces/FO/cart/index.ts index 69369e01e..b2ec950f9 100644 --- a/src/interfaces/FO/cart/index.ts +++ b/src/interfaces/FO/cart/index.ts @@ -41,6 +41,7 @@ export interface FoCartPageInterface extends FOBasePagePageInterface { getProductQuantity(page: Page, row: number): Promise; getProductsNumber(page: Page): Promise; getSubtotalDiscountValue(page: Page): Promise; + getSubtotalProductsValue(page: Page): Promise; getSubtotalShippingValue(page: Page): Promise; hasSubtotalDiscount(page: Page): Promise; isAlertWarningForMinimumPurchaseVisible(page: Page): Promise; diff --git a/src/versions/develop/pages/BO/catalog/discounts/create.ts b/src/versions/develop/pages/BO/catalog/discounts/create.ts index 4faa123f8..93ddd16b1 100644 --- a/src/versions/develop/pages/BO/catalog/discounts/create.ts +++ b/src/versions/develop/pages/BO/catalog/discounts/create.ts @@ -139,6 +139,8 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI private readonly discountOffRadioButton: string; + private readonly applyDiscountToCheapestProductCheckbox: string; + private readonly applyDiscountToOrderCheckbox: string; private readonly applyDiscountToSpecificProductCheckbox: string; @@ -277,6 +279,7 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI this.discountOffRadioButton = this.applyDiscountRadioButton('off'); // Apply discount to selectors + this.applyDiscountToCheapestProductCheckbox = '#apply_discount_to_cheapest'; this.applyDiscountToOrderCheckbox = '#apply_discount_to_order'; this.applyDiscountToSpecificProductCheckbox = '#apply_discount_to_product'; this.productNameInput = '#reductionProductFilter'; @@ -472,6 +475,9 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI // Set apply discount switch (cartRuleData.applyDiscountTo) { + case 'Cheapest product': + await this.setChecked(page, this.applyDiscountToCheapestProductCheckbox); + break; case 'Order': await this.setChecked(page, this.applyDiscountToOrderCheckbox); break; diff --git a/src/versions/develop/pages/FO/classic/cart/index.ts b/src/versions/develop/pages/FO/classic/cart/index.ts index 8e2d96d72..2a6effa59 100644 --- a/src/versions/develop/pages/FO/classic/cart/index.ts +++ b/src/versions/develop/pages/FO/classic/cart/index.ts @@ -69,6 +69,8 @@ class CartPage extends FOBasePage implements FoCartPageInterface { protected alertMessage: string; + private readonly subtotalProductsValueSpan: string; + private readonly subtotalShippingValueSpan: string; private readonly subtotalDiscountValueSpan: string; @@ -169,6 +171,7 @@ class CartPage extends FOBasePage implements FoCartPageInterface { // Cart summary block selectors this.itemsNumber = '#cart-subtotal-products span.label.js-subtotal'; + this.subtotalProductsValueSpan = '#cart-subtotal-products span.value'; this.subtotalShippingValueSpan = '#cart-subtotal-shipping span.value'; this.subtotalDiscountValueSpan = '#cart-subtotal-discount span.value'; this.cartTotalATI = '.cart-summary-totals span.value'; @@ -406,6 +409,15 @@ class CartPage extends FOBasePage implements FoCartPageInterface { return this.getPriceFromText(page, this.cartTotalATI, 2000); } + /** + * Get subtotal products value + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getSubtotalProductsValue(page: Page): Promise { + return this.getPriceFromText(page, this.subtotalProductsValueSpan, 2000); + } + /** * Get subtotal discount value * @param page {Page} Browser tab From dfd9700793212bdb29276c157e67850e51414c7b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Jul 2025 12:50:56 +0000 Subject: [PATCH 187/609] Bump @types/node from 24.0.15 to 24.1.0 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.0.15 to 24.1.0. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.1.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 72027437a..957473146 100644 --- a/package-lock.json +++ b/package-lock.json @@ -610,9 +610,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.0.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", - "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", + "version": "24.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", + "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", "dependencies": { "undici-types": "~7.8.0" } @@ -7302,9 +7302,9 @@ "dev": true }, "@types/node": { - "version": "24.0.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", - "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", + "version": "24.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", + "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", "requires": { "undici-types": "~7.8.0" } From a81b6cc88638b908c301689b9e128004b1211d51 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:22:45 +0200 Subject: [PATCH 188/609] Edit require for catalog/product/create/tabDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index aa76b143d..8149658c4 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,13 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + } + if (semver.lt(psVersion, '8.2.0')) { + return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; } From 129c588c35f02b5e3de482fca0325b7adb7e2608 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:51:36 +0200 Subject: [PATCH 189/609] Edit setProductDescription for 8.2.1 --- .../catalog/products/create/tabDescription.ts | 4 +- .../products/create/tabDescriptiion.ts | 47 +++++++++++++++++++ 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 8149658c4..dfaa16b0f 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.2.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts new file mode 100644 index 000000000..521652fae --- /dev/null +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -0,0 +1,47 @@ +// Import pages +import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; + +import type FakerProduct from '@data/faker/product'; + +import type {Page} from 'playwright'; + +/** + * Bo product description tab, contains functions that can be used on the page + * @class + * @extends DescriptionTab + */ +class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on description tab + */ + constructor() { + super(); + + this.descriptionTabLink = '#product_description-tab-nav'; + this.productShortDescriptionIframe = '#product_description_description_short'; + this.productDescriptionIframe = '#product_description_description'; + } + + /** + * Set product description + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in description form + * @returns {Promise} + */ + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } + + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } +} + +const descriptionTab = new BOProductTabDescriptionVersion(); +export {descriptionTab, BOProductTabDescriptionVersion}; From cd7fb0bffc0afb6177e27dbcc90abafb635f5013 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:25:43 +0200 Subject: [PATCH 190/609] Edit versionning for productDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index dfaa16b0f..47b2390a0 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '8.2.0')) { + if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; From ca4b4001c88a8d965ee84b53314f8b3021529d21 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:33:29 +0200 Subject: [PATCH 191/609] Edit productDescription --- .../8.2/pages/BO/catalog/products/create/tabDescriptiion.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts index 521652fae..44ef1299c 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -1,6 +1,6 @@ // Import pages import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; -import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/develop/pages/BO/catalog/products/create/tabDescription'; import type FakerProduct from '@data/faker/product'; @@ -12,6 +12,9 @@ import type {Page} from 'playwright'; * @extends DescriptionTab */ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + private readonly productShortDescriptionIframe: string; + private readonly productDescriptionIframe: string; + private productWithCombinationsInput: string; /** * @constructs * Setting up texts and selectors to use on description tab @@ -22,6 +25,7 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.descriptionTabLink = '#product_description-tab-nav'; this.productShortDescriptionIframe = '#product_description_description_short'; this.productDescriptionIframe = '#product_description_description'; + this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } /** From f34bd68abeac89be2d0bba697a535abfb49a62c8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:41:22 +0200 Subject: [PATCH 192/609] Edit typo on file name --- .../products/create/{tabDescriptiion.ts => tabDescription.ts} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/versions/8.2/pages/BO/catalog/products/create/{tabDescriptiion.ts => tabDescription.ts} (100%) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts similarity index 100% rename from src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts rename to src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts From aaebe999e22e3cf7f202c494acdded8b045b0424 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 09:42:02 +0200 Subject: [PATCH 193/609] Remove function from 8.2 --- .../catalog/products/create/tabDescription.ts | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index 44ef1299c..fdff2c6e2 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -27,24 +27,6 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.productDescriptionIframe = '#product_description_description'; this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } - - /** - * Set product description - * @param page {Page} Browser tab - * @param productData {FakerProduct} Data to set in description form - * @returns {Promise} - */ - async setProductDescription(page: Page, productData: FakerProduct): Promise { - await this.waitForSelectorAndClick(page, this.descriptionTabLink); - if (productData.type === 'combinations') { - await page.locator(this.productWithCombinationsInput).click(); - } - - await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); - - await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); - await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); - } } const descriptionTab = new BOProductTabDescriptionVersion(); From 919911a7eb581d271acd5da8a656f79633bc7d40 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 09:59:18 +0200 Subject: [PATCH 194/609] Rollback function delete --- .../catalog/products/create/tabDescription.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index fdff2c6e2..44ef1299c 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -27,6 +27,24 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.productDescriptionIframe = '#product_description_description'; this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } + + /** + * Set product description + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in description form + * @returns {Promise} + */ + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } + + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } } const descriptionTab = new BOProductTabDescriptionVersion(); From 1c8bcb065c2b6cdb210b39d8fbc928e863e98d14 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 10:23:58 +0200 Subject: [PATCH 195/609] Add setProductName for 8.2 --- .../catalog/products/create/tabDescription.ts | 2 +- .../pages/BO/catalog/products/create/index.ts | 18 ++++++++++++++++++ .../pages/BO/catalog/products/create/index.ts | 2 +- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 47b2390a0..06871259e 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '9.0.0')) { + if (semver.lt(psVersion, '8.3.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 249f1f452..478f0fba7 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,6 +19,24 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { + + /** + * Set product name + * @param page {Page} Browser tab + * @param name {string} Name of the product + * @param locale {string} Locale + * @returns {Promise} + */ + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); + } + + await this.setValue(page, this.productNameInput(locale), name); + } + /** * Set product * @param page {Page} Browser tab diff --git a/src/versions/develop/pages/BO/catalog/products/create/index.ts b/src/versions/develop/pages/BO/catalog/products/create/index.ts index fe90b5963..f37dbc245 100644 --- a/src/versions/develop/pages/BO/catalog/products/create/index.ts +++ b/src/versions/develop/pages/BO/catalog/products/create/index.ts @@ -45,7 +45,7 @@ class BOProductsCreatePage extends BOBasePage implements BOProductsCreatePageInt private readonly productNameLanguageDropdown: string; - private readonly productNameLanguageDropdownItem: (locale: string) => string; + protected readonly productNameLanguageDropdownItem: (locale: string) => string; private readonly productTypeLabel: string; From 2909428b87d6591683de5939f7c7e230268deeaf Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 29 Jul 2025 11:49:24 +0200 Subject: [PATCH 196/609] `dataProducts` : Added finalPrice on some products --- src/data/demo/products.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/data/demo/products.ts b/src/data/demo/products.ts index dcf271668..2a8a3af53 100644 --- a/src/data/demo/products.ts +++ b/src/data/demo/products.ts @@ -119,6 +119,7 @@ export default { name: 'Brown bear notebook', reference: 'demo_9', category: 'Stationery', + finalPrice: 15.48, price: 15.48, quantity: 1200, status: true, @@ -207,6 +208,7 @@ export default { reference: 'demo_16', category: 'Home Accessories', status: true, + finalPrice: 22.68, }), demo_17: new FakerProduct({ id: 11, From 662a410df25cb4a76436935e873d19a88b3fea98 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 29 Jul 2025 11:50:05 +0200 Subject: [PATCH 197/609] `boCartRulesCreatePage` : Manage cartRule selection for multple products --- src/data/types/cartRule.ts | 2 +- .../pages/BO/catalog/discounts/create.ts | 63 +++++++++++++++---- 2 files changed, 52 insertions(+), 13 deletions(-) diff --git a/src/data/types/cartRule.ts b/src/data/types/cartRule.ts index 4deb5a57e..b9fea5ea6 100644 --- a/src/data/types/cartRule.ts +++ b/src/data/types/cartRule.ts @@ -50,7 +50,7 @@ type CartRuleMinimalAmount = { type CartRuleProductSelection = { quantity: number, ruleType: string, - value: number, + values: FakerProduct[], } export type { diff --git a/src/versions/develop/pages/BO/catalog/discounts/create.ts b/src/versions/develop/pages/BO/catalog/discounts/create.ts index 93ddd16b1..c8fc55b39 100644 --- a/src/versions/develop/pages/BO/catalog/discounts/create.ts +++ b/src/versions/develop/pages/BO/catalog/discounts/create.ts @@ -103,6 +103,8 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI private readonly productSelectionGroup: (groupNumber: number) => string; + private readonly productSelectionGroupDeleteBtn: (groupNumber: number) => string; + private readonly productSelectionGroupQuantity: (groupNumber: number) => string; private readonly productSelectionRuleType: (groupNumber: number) => string; @@ -111,10 +113,14 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI private readonly productSelectionChooseButton: (groupNumber: number) => string; - private readonly productSelectionSelectButton: (groupNumber: number) => string; + private readonly productSelectionUnselectedSelect: (groupNumber: number) => string; + + private readonly productSelectionSelectedSelect: (groupNumber: number) => string; private readonly productRestrictionSelectAddButton: (groupNumber: number) => string; + private readonly productRestrictionSelectRemoveButton: (groupNumber: number) => string; + private readonly closeFancyBoxButton: string; private readonly actionsTabLink: string; @@ -143,6 +149,8 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI private readonly applyDiscountToOrderCheckbox: string; + private readonly applyDiscountToSelectionCheckbox: string; + private readonly applyDiscountToSpecificProductCheckbox: string; private readonly productNameInput: string; @@ -249,14 +257,18 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI this.productSelectionButton = '#product_restriction_div a.btn-default '; this.productRuleGroupTable = '#product_rule_group_table'; this.productSelectionGroup = (groupNumber: number) => `#product_rule_group_${groupNumber}_tr`; + this.productSelectionGroupDeleteBtn = (groupNumber: number) => `${this.productSelectionGroup(groupNumber)} > td:nth-child(1)` + + ' a'; this.productSelectionGroupQuantity = (groupNumber: number) => `${this.productSelectionGroup(groupNumber)}` + ` input[name='product_rule_group_${groupNumber}_quantity']`; this.productSelectionRuleType = (groupNumber: number) => `#product_rule_type_${groupNumber}`; this.productSelectionAddButton = (groupNumber: number) => `${this.productSelectionGroup(groupNumber)}` + ' a[href*=addProductRule]'; - this.productSelectionChooseButton = (groupNumber: number) => `#product_rule_1_${groupNumber}_choose_link`; - this.productSelectionSelectButton = (groupNumber: number) => `#product_rule_select_1_${groupNumber}_1`; - this.productRestrictionSelectAddButton = (groupNumber: number) => `#product_rule_select_1_${groupNumber}_add`; + this.productSelectionChooseButton = (groupNumber: number) => `#product_rule_${groupNumber}_1_choose_link`; + this.productSelectionUnselectedSelect = (groupNumber: number) => `#product_rule_select_${groupNumber}_1_1`; + this.productSelectionSelectedSelect = (groupNumber: number) => `#product_rule_select_${groupNumber}_1_2`; + this.productRestrictionSelectAddButton = (groupNumber: number) => `#product_rule_select_${groupNumber}_1_add`; + this.productRestrictionSelectRemoveButton = (groupNumber: number) => `#product_rule_select_${groupNumber}_1_remove`; this.closeFancyBoxButton = 'body div.fancybox-overlay.fancybox-overlay-fixed a.fancybox-close'; // Actions tab @@ -281,6 +293,7 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI // Apply discount to selectors this.applyDiscountToCheapestProductCheckbox = '#apply_discount_to_cheapest'; this.applyDiscountToOrderCheckbox = '#apply_discount_to_order'; + this.applyDiscountToSelectionCheckbox = '#apply_discount_to_selection'; this.applyDiscountToSpecificProductCheckbox = '#apply_discount_to_product'; this.productNameInput = '#reductionProductFilter'; this.productSearchResultBlock = 'div.ac_results'; @@ -395,10 +408,19 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI // Set product selection if (cartRuleData.productSelection) { - await this.setChecked(page, this.productSelectionCheckboxButton); + await this.setChecked(page, this.productSelectionCheckboxButton, true); + + // Remove if existing + const numDeleteBtn: number = await page.locator(this.productSelectionGroupDeleteBtn(1)).count(); + + for (let i: number = 0; i < numDeleteBtn; i++) { + await page.locator(this.productSelectionGroupDeleteBtn(1)).click(); + } + await page.waitForTimeout(2000); + // Add selection for (let i = 0; i < cartRuleData.productSelectionNumber; i++) { - const selectorIndex = i + 1; + const selectorIndex = i + 1 + numDeleteBtn; await this.waitForSelectorAndClick(page, this.productSelectionButton); await this.setValue(page, this.productSelectionGroupQuantity(selectorIndex), cartRuleData.productRestriction[i].quantity); await this.selectByVisibleText( @@ -408,12 +430,26 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI ); await this.waitForSelectorAndClick(page, this.productSelectionAddButton(selectorIndex)); await this.waitForSelectorAndClick(page, this.productSelectionChooseButton(selectorIndex)); - await this.selectByValue( - page, - this.productSelectionSelectButton(selectorIndex), - cartRuleData.productRestriction[i].value, - ); - await this.waitForSelectorAndClick(page, this.productRestrictionSelectAddButton(selectorIndex)); + // Remove if existing + const numSelectedProducts: number = await page + .locator(`${this.productSelectionSelectedSelect(selectorIndex)} option`) + .count(); + + // eslint-disable-next-line no-restricted-syntax + for (let i: number = 0; i < numSelectedProducts; i++) { + await this.waitForSelectorAndClick(page, this.productRestrictionSelectRemoveButton(selectorIndex)); + } + + // Add products + // eslint-disable-next-line no-restricted-syntax + for (const product of cartRuleData.productRestriction[i].values) { + await this.selectByValue( + page, + this.productSelectionUnselectedSelect(selectorIndex), + product.id, + ); + await this.waitForSelectorAndClick(page, this.productRestrictionSelectAddButton(selectorIndex)); + } await this.waitForSelectorAndClick(page, this.closeFancyBoxButton); } } @@ -481,6 +517,9 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI case 'Order': await this.setChecked(page, this.applyDiscountToOrderCheckbox); break; + case 'Selected products': + await this.setChecked(page, this.applyDiscountToSelectionCheckbox); + break; case 'Specific product': await this.setChecked(page, this.applyDiscountToSpecificProductCheckbox); if (cartRuleData.product) { From ef32412b8ee03de37dd18864825344bd6cf4b2c1 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Wed, 30 Jul 2025 09:08:31 +0200 Subject: [PATCH 198/609] `foClassicCartPage` : Added error message --- src/interfaces/FO/cart/index.ts | 1 + src/versions/develop/pages/FO/classic/cart/index.ts | 3 +++ 2 files changed, 4 insertions(+) diff --git a/src/interfaces/FO/cart/index.ts b/src/interfaces/FO/cart/index.ts index b2ec950f9..8a8968765 100644 --- a/src/interfaces/FO/cart/index.ts +++ b/src/interfaces/FO/cart/index.ts @@ -11,6 +11,7 @@ export interface FoCartPageInterface extends FOBasePagePageInterface { readonly cartRuleChooseCarrierAlertMessageText: string; readonly cartRuleLimitUsageErrorText: string; readonly cartRuleMustEnterVoucherErrorText: string; + readonly cartRuleProductsOnSaleErrorText: string; readonly cartRuleNotExistingErrorText: string; readonly errorNotificationForProductQuantity: string; readonly minimumAmountErrorMessage: string; diff --git a/src/versions/develop/pages/FO/classic/cart/index.ts b/src/versions/develop/pages/FO/classic/cart/index.ts index 2a6effa59..6fae7f025 100644 --- a/src/versions/develop/pages/FO/classic/cart/index.ts +++ b/src/versions/develop/pages/FO/classic/cart/index.ts @@ -21,6 +21,8 @@ class CartPage extends FOBasePage implements FoCartPageInterface { public readonly cartRuleLimitUsageErrorText: string; + public readonly cartRuleProductsOnSaleErrorText: string; + public readonly cartRuleAlertMessageText: string; public readonly alertChooseDeliveryAddressWarningText: string; @@ -130,6 +132,7 @@ class CartPage extends FOBasePage implements FoCartPageInterface { this.cartRuleNotExistingErrorText = 'This voucher does not exist.'; this.cartRuleMustEnterVoucherErrorText = 'You must enter a voucher code.'; this.cartRuleLimitUsageErrorText = 'You cannot use this voucher anymore (usage limit reached)'; + this.cartRuleProductsOnSaleErrorText = 'You cannot use this voucher on products on sale'; this.cartRuleAlertMessageText = 'You cannot use this voucher'; this.alertChooseDeliveryAddressWarningText = 'You must choose a delivery address' + ' before applying this voucher to your order'; From 7e74facd5cd7a5cee23658ee62eea40e5827424f Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Wed, 30 Jul 2025 10:46:24 +0200 Subject: [PATCH 199/609] Fix choose local archive --- src/interfaces/BO/modules/autoupgrade/index.ts | 2 +- .../develop/pages/BO/modules/autoupgrade/index.ts | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/interfaces/BO/modules/autoupgrade/index.ts b/src/interfaces/BO/modules/autoupgrade/index.ts index 190b1a862..dba4e60a2 100644 --- a/src/interfaces/BO/modules/autoupgrade/index.ts +++ b/src/interfaces/BO/modules/autoupgrade/index.ts @@ -11,7 +11,7 @@ export interface ModuleAutoupgradeMainPageInterface extends ModuleConfigurationP cancelDeleteBackup(page: Page): Promise checkRequirements(page: Page, channel: string): Promise; checkUpdateSuccess(page: Page): Promise; - chooseLocalArchive(page: Page, psVersion: string): Promise; + chooseLocalArchive(page: Page, row: number): Promise; chooseNewVersion(page: Page): Promise; clickOnExitPostRestore(page: Page): Promise; clickOnLaunchBackup(page: Page): Promise; diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index 11311ab3d..8009aa066 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -211,13 +211,15 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa /** * Choose local archive * @param page {Page} Browser tab - * @param psVersion {string} The ps Version to use + * @param row {number} The row of ps Version to use */ - async chooseLocalArchive(page: Page, psVersion: string): Promise { + async chooseLocalArchive(page: Page, row: number): Promise { await page.locator(this.localArchiveRadioButton).setChecked(true); await this.waitForVisibleSelector(page, this.radioCardArchive); - await this.selectByVisibleText(page, this.archiveZipSelect, `prestashop_${psVersion}.zip`); - await this.selectByVisibleText(page, this.archiveXmlSelect, `prestashop_${psVersion}.xml`); + //await page.locator(this.archiveZipSelect).click(); + await page.locator(this.archiveZipSelect).selectOption({index: row}); + //await page.locator(this.archiveXmlSelect).click(); + await page.locator(this.archiveXmlSelect).selectOption({index: row}); await this.waitForVisibleSelector(page, this.checkRequirementBlock, 100000); return this.elementVisible(page, this.checkRequirementsFailedAlerts, 2000); From 7060a5cba55fe11df044639b461992db785b4cd0 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Wed, 30 Jul 2025 10:50:51 +0200 Subject: [PATCH 200/609] Delete commented ollines --- src/versions/develop/pages/BO/modules/autoupgrade/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index 8009aa066..a80e205eb 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -216,9 +216,7 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa async chooseLocalArchive(page: Page, row: number): Promise { await page.locator(this.localArchiveRadioButton).setChecked(true); await this.waitForVisibleSelector(page, this.radioCardArchive); - //await page.locator(this.archiveZipSelect).click(); await page.locator(this.archiveZipSelect).selectOption({index: row}); - //await page.locator(this.archiveXmlSelect).click(); await page.locator(this.archiveXmlSelect).selectOption({index: row}); await this.waitForVisibleSelector(page, this.checkRequirementBlock, 100000); From d4d27f0f2330cb5cd665210428c5028c9837a38b Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Thu, 31 Jul 2025 11:28:59 +0200 Subject: [PATCH 201/609] `dataProducts` : Added demo_20 --- src/data/demo/products.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/data/demo/products.ts b/src/data/demo/products.ts index 2a8a3af53..505fd0ae2 100644 --- a/src/data/demo/products.ts +++ b/src/data/demo/products.ts @@ -177,7 +177,8 @@ export default { coverImage: 'mug-today-is-a-good-day.jpg', reference: 'demo_13', category: 'Home Accessories', - price: 14.28, + price: 11.9, + finalPrice: 14.28, quantity: 300, status: true, }), @@ -241,6 +242,16 @@ export default { quantity: 300, status: true, }), + demo_20: new FakerProduct({ + id: 14, + name: 'Hummingbird - Vector graphics', + reference: 'demo_20', + category: 'Art', + price: 9, + finalPrice: 10.80, + quantity: 300, + status: true, + }), demo_21: new FakerProduct({ id: 15, name: 'Pack Mug + Framed poster', From 119c0d5e6a056902b23b40f1a35952f551e1467e Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Thu, 31 Jul 2025 11:29:23 +0200 Subject: [PATCH 202/609] `foClassicCartPage` : Added method isProductGift --- src/interfaces/FO/cart/index.ts | 1 + src/versions/develop/pages/FO/classic/cart/index.ts | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/src/interfaces/FO/cart/index.ts b/src/interfaces/FO/cart/index.ts index 8a8968765..67de86330 100644 --- a/src/interfaces/FO/cart/index.ts +++ b/src/interfaces/FO/cart/index.ts @@ -48,6 +48,7 @@ export interface FoCartPageInterface extends FOBasePagePageInterface { isAlertWarningForMinimumPurchaseVisible(page: Page): Promise; isCartRuleNameVisible(page: Page, line?: number): Promise; isProceedToCheckoutButtonDisabled(page: Page): Promise; + isProductGift(page: Page, row: number): Promise; removeVoucher(page: Page, line?: number): Promise; setProductQuantity(page: Page, productRow?: number, quantity?: number): Promise; } diff --git a/src/versions/develop/pages/FO/classic/cart/index.ts b/src/versions/develop/pages/FO/classic/cart/index.ts index 6fae7f025..5958caa62 100644 --- a/src/versions/develop/pages/FO/classic/cart/index.ts +++ b/src/versions/develop/pages/FO/classic/cart/index.ts @@ -250,6 +250,16 @@ class CartPage extends FOBasePage implements FoCartPageInterface { return this.getPriceFromText(page, this.productPrice(row)); } + /** + * Returns if the product is Gift + * @param page {Page} Browser tab + * @param row {number} Row number in the table + * @returns {Promise} + */ + async isProductGift(page: Page, row: number): Promise { + return (await this.getTextContent(page, this.productTotalPrice(row))).trim() === 'Gift'; + } + /** * Get product quantity * @param page {Page} Browser tab From 4a9f22dabfd6d2f473f0fd23e997549353f6a536 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Thu, 31 Jul 2025 11:30:05 +0200 Subject: [PATCH 203/609] `boCartRulesCreatePage` : Fixed product gift --- src/versions/develop/pages/BO/catalog/discounts/create.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/catalog/discounts/create.ts b/src/versions/develop/pages/BO/catalog/discounts/create.ts index c8fc55b39..52a767a5b 100644 --- a/src/versions/develop/pages/BO/catalog/discounts/create.ts +++ b/src/versions/develop/pages/BO/catalog/discounts/create.ts @@ -542,7 +542,8 @@ class BOCartRulesCreatePage extends BOBasePage implements BOCartRulesCreatePageI await this.selectByVisibleText( page, this.freeGiftProductSelect, - `${cartRuleData.freeGiftProduct.name} - €${cartRuleData.freeGiftProduct.price}`, + `${cartRuleData.freeGiftProduct.name} - €${cartRuleData.freeGiftProduct.finalPrice.toFixed(2)}`, + true, ); } } From 13e72b6eb1bcdf2c79b076ec921abcf1987d0b56 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Thu, 31 Jul 2025 11:35:39 +0200 Subject: [PATCH 204/609] Fixed ESLint errors --- src/data/demo/products.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data/demo/products.ts b/src/data/demo/products.ts index 505fd0ae2..b98bbf19b 100644 --- a/src/data/demo/products.ts +++ b/src/data/demo/products.ts @@ -178,7 +178,7 @@ export default { reference: 'demo_13', category: 'Home Accessories', price: 11.9, - finalPrice: 14.28, + finalPrice: 14.28, quantity: 300, status: true, }), From 57050af2051e2eeec74462fa6f867a751b78116c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 31 Jul 2025 14:46:29 +0200 Subject: [PATCH 205/609] Add search results classic page for 8.2 version --- src/pages/FO/classic/searchResults/index.ts | 7 ++++++ .../8.1/pages/FO/classic/home/index.ts | 2 +- .../pages/BO/catalog/products/create/index.ts | 3 ++- .../pages/FO/classic/searchResults/index.ts | 23 +++++++++++++++++++ 4 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 src/versions/8.2/pages/FO/classic/searchResults/index.ts diff --git a/src/pages/FO/classic/searchResults/index.ts b/src/pages/FO/classic/searchResults/index.ts index c8e0ec99c..37c2a65b3 100644 --- a/src/pages/FO/classic/searchResults/index.ts +++ b/src/pages/FO/classic/searchResults/index.ts @@ -1,7 +1,14 @@ import type {FoSearchResultsPageInterface} from '@interfaces/FO/searchResults'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): FoSearchResultsPageInterface { + if (semver.lt(psVersion, '8.3.0')) { + return require('@versions/8.2/pages/FO/classic/searchResults').searchResultsPage; + } return require('@versions/develop/pages/FO/classic/searchResults').searchResultsPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/8.1/pages/FO/classic/home/index.ts b/src/versions/8.1/pages/FO/classic/home/index.ts index 55fc4d96a..9b9e84e8a 100644 --- a/src/versions/8.1/pages/FO/classic/home/index.ts +++ b/src/versions/8.1/pages/FO/classic/home/index.ts @@ -1,6 +1,6 @@ // Import pages import type {FoHomePageInterface} from '@interfaces/FO/home'; -import {FoHomePage} from '@versions/develop/pages/FO/classic/home/index'; +import {FoHomePage} from '@versions/develop/pages/FO/classic/home'; /** * Order confirmation page, contains functions that can be used on the page diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 478f0fba7..a4950a672 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -50,7 +50,8 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd // Set description await descriptionTab.setProductDescription(page, productData); // Set name - await this.setProductName(page, productData.nameFR, 'fr'); + + //await this.setProductName(page, productData.nameFR, 'fr'); await this.setProductName(page, productData.name, 'en'); // Set status diff --git a/src/versions/8.2/pages/FO/classic/searchResults/index.ts b/src/versions/8.2/pages/FO/classic/searchResults/index.ts new file mode 100644 index 000000000..c8d3dfd29 --- /dev/null +++ b/src/versions/8.2/pages/FO/classic/searchResults/index.ts @@ -0,0 +1,23 @@ +// Import pages + +import {FoSearchResultsPageInterface} from '@interfaces/FO/searchResults'; +import {type Page} from '@playwright/test'; +import {SearchResultsPage} from '@versions/develop/pages/FO/classic/searchResults'; + +/** + * FO search Results page, contains functions that can be used on the page + * @class + * @extends SearchResultsPage + */ +class FoSearchResultsPageVersion extends SearchResultsPage implements FoSearchResultsPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on search results page + */ + constructor(theme: string = 'classic') { + super(theme); + } +} + +const searchResultsPage = new FoSearchResultsPageVersion(); +export {searchResultsPage, FoSearchResultsPageVersion as SearchResultsPage}; From a903749036111d1811f9a52d9d61508d20c79df2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Aug 2025 07:58:48 +0000 Subject: [PATCH 206/609] Bump @playwright/test from 1.54.1 to 1.54.2 Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.54.1 to 1.54.2. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.54.1...v1.54.2) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.54.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/package-lock.json b/package-lock.json index 957473146..743fdd320 100644 --- a/package-lock.json +++ b/package-lock.json @@ -528,11 +528,11 @@ } }, "node_modules/@playwright/test": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.1.tgz", - "integrity": "sha512-FS8hQ12acieG2dYSksmLOF7BNxnVf2afRJdCuM1eMSxj6QTSE6G4InGF7oApGgDb65MX7AwMVlIkpru0yZA4Xw==", + "version": "1.54.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.2.tgz", + "integrity": "sha512-A+znathYxPf+72riFd1r1ovOLqsIIB0jKIoPjyK2kqEIe30/6jF6BC7QNluHuwUmsD2tv1XZVugN8GqfTMOxsA==", "dependencies": { - "playwright": "1.54.1" + "playwright": "1.54.2" }, "bin": { "playwright": "cli.js" @@ -5158,11 +5158,11 @@ } }, "node_modules/playwright": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.1.tgz", - "integrity": "sha512-peWpSwIBmSLi6aW2auvrUtf2DqY16YYcCMO8rTVx486jKmDTJg7UAhyrraP98GB8BoPURZP8+nxO7TSd4cPr5g==", + "version": "1.54.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.2.tgz", + "integrity": "sha512-Hu/BMoA1NAdRUuulyvQC0pEqZ4vQbGfn8f7wPXcnqQmM+zct9UliKxsIkLNmz/ku7LElUNqmaiv1TG/aL5ACsw==", "dependencies": { - "playwright-core": "1.54.1" + "playwright-core": "1.54.2" }, "bin": { "playwright": "cli.js" @@ -5175,9 +5175,9 @@ } }, "node_modules/playwright-core": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.1.tgz", - "integrity": "sha512-Nbjs2zjj0htNhzgiy5wu+3w09YetDx5pkrpI/kZotDlDUaYk0HVA5xrBVPdow4SAUIlhgKcJeJg4GRKW6xHusA==", + "version": "1.54.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.2.tgz", + "integrity": "sha512-n5r4HFbMmWsB4twG7tJLDN9gmBUeSPcsBZiWSE4DnYz9mJMAFqr2ID7+eGC9kpEnxExJ1epttwR59LEWCk8mtA==", "bin": { "playwright-core": "cli.js" }, @@ -7226,11 +7226,11 @@ } }, "@playwright/test": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.1.tgz", - "integrity": "sha512-FS8hQ12acieG2dYSksmLOF7BNxnVf2afRJdCuM1eMSxj6QTSE6G4InGF7oApGgDb65MX7AwMVlIkpru0yZA4Xw==", + "version": "1.54.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.2.tgz", + "integrity": "sha512-A+znathYxPf+72riFd1r1ovOLqsIIB0jKIoPjyK2kqEIe30/6jF6BC7QNluHuwUmsD2tv1XZVugN8GqfTMOxsA==", "requires": { - "playwright": "1.54.1" + "playwright": "1.54.2" } }, "@rtsao/scc": { @@ -10496,18 +10496,18 @@ "dev": true }, "playwright": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.1.tgz", - "integrity": "sha512-peWpSwIBmSLi6aW2auvrUtf2DqY16YYcCMO8rTVx486jKmDTJg7UAhyrraP98GB8BoPURZP8+nxO7TSd4cPr5g==", + "version": "1.54.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.2.tgz", + "integrity": "sha512-Hu/BMoA1NAdRUuulyvQC0pEqZ4vQbGfn8f7wPXcnqQmM+zct9UliKxsIkLNmz/ku7LElUNqmaiv1TG/aL5ACsw==", "requires": { "fsevents": "2.3.2", - "playwright-core": "1.54.1" + "playwright-core": "1.54.2" } }, "playwright-core": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.1.tgz", - "integrity": "sha512-Nbjs2zjj0htNhzgiy5wu+3w09YetDx5pkrpI/kZotDlDUaYk0HVA5xrBVPdow4SAUIlhgKcJeJg4GRKW6xHusA==" + "version": "1.54.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.2.tgz", + "integrity": "sha512-n5r4HFbMmWsB4twG7tJLDN9gmBUeSPcsBZiWSE4DnYz9mJMAFqr2ID7+eGC9kpEnxExJ1epttwR59LEWCk8mtA==" }, "plimit-lit": { "version": "1.6.1", From 0b27d65133c3e310c0b057f747bdf53bda871f3d Mon Sep 17 00:00:00 2001 From: Jonathan LELIEVRE Date: Thu, 7 Aug 2025 11:39:40 +0200 Subject: [PATCH 207/609] Create new API global variables --- src/data/types/globals.ts | 2 ++ src/utils/conf.ts | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/data/types/globals.ts b/src/data/types/globals.ts index d702ee67c..99c4fc754 100644 --- a/src/data/types/globals.ts +++ b/src/data/types/globals.ts @@ -17,6 +17,8 @@ type GlobalFO = { type GlobalAPI = { URL: string + CLIENT_ID: string + CLIENT_SECRET: string } type GlobalBO = { diff --git a/src/utils/conf.ts b/src/utils/conf.ts index 01b0bbdb6..ff8a34aef 100644 --- a/src/utils/conf.ts +++ b/src/utils/conf.ts @@ -23,6 +23,8 @@ export default { global.API = { URL: process.env.URL_API || `${global.FO.URL}admin-api/`, + CLIENT_ID: process.env.CLIENT_ID_API || '', + CLIENT_SECRET: process.env.CLIENT_SECRET_API || '', }; global.PSConfig = { From 421e0cddfb6f0e1706d6414ab900082baf7ec13f Mon Sep 17 00:00:00 2001 From: Jonathan LELIEVRE Date: Fri, 8 Aug 2025 13:42:40 +0200 Subject: [PATCH 208/609] Add method to get API Client row by clientId --- .../BO/advancedParameters/apiclients/index.ts | 1 + .../BO/advancedParameters/apiclients/index.ts | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/interfaces/BO/advancedParameters/apiclients/index.ts b/src/interfaces/BO/advancedParameters/apiclients/index.ts index 0e5448b82..7842b5eed 100644 --- a/src/interfaces/BO/advancedParameters/apiclients/index.ts +++ b/src/interfaces/BO/advancedParameters/apiclients/index.ts @@ -6,6 +6,7 @@ export interface BOApiClientsPageInterface extends BOBasePagePageInterface { readonly pageTitle: string; deleteAPIClient(page: Page, row: number): Promise; + getNthRowByClientId(page: Page, clientId: string): Promise; getJSONDocumentation(page: Page): Promise; getNumberOfElementInGrid(page: Page): Promise; getStatus(page: Page, row: number): Promise; diff --git a/src/versions/develop/pages/BO/advancedParameters/apiclients/index.ts b/src/versions/develop/pages/BO/advancedParameters/apiclients/index.ts index 02a32f574..f6d216990 100644 --- a/src/versions/develop/pages/BO/advancedParameters/apiclients/index.ts +++ b/src/versions/develop/pages/BO/advancedParameters/apiclients/index.ts @@ -213,6 +213,25 @@ class BOApiClientsPage extends BOBasePage implements BOApiClientsPageInterface { return this.getAlertSuccessBlockParagraphContent(page); } + + /** + * Returns the row of the API Client matching with provided clientId, return null if not found + * @param page {Page} Browser tab + * @param clientId {string} Searched Client ID + */ + async getNthRowByClientId(page: Page, clientId: string): Promise { + const apiClientsNumber = await this.getNumberOfElementInGrid(page); + + for (let row = 1; row <= apiClientsNumber; ++row) { + const rowClientId = await this.getTextColumn(page, 'client_id', row); + + if (rowClientId.trim() === clientId.trim()) { + return row; + } + } + + return null; + } } module.exports = new BOApiClientsPage(); From 4faeaf7b581dcd438eca2600d585863625e5826c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:12:34 +0200 Subject: [PATCH 209/609] Add selector for localization button import --- .../BO/international/localization/index.ts | 7 ++++++ .../BO/international/localization/index.ts | 22 +++++++++++++++++++ .../BO/international/localization/index.ts | 6 ++--- 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/international/localization/index.ts diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 2cd28c118..20b9c6228 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -1,7 +1,14 @@ import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { + if (semver.lt(psVersion, '1.7.8')) { + return require('@versions/1.7/pages/BO/international/localization').bo; + } return require('@versions/develop/pages/BO/international/localization'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/international/localization/index.ts b/src/versions/1.7.7/pages/BO/international/localization/index.ts new file mode 100644 index 000000000..2a3913cc7 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/international/localization/index.ts @@ -0,0 +1,22 @@ +import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/develop/pages/BO/international/localization'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } +} + +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index 8b37bc116..f97aceb66 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -31,7 +31,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio private readonly downloadPackDataToggleInput: (toggle: number) => string; - private readonly importButton: string; + protected importButton: string; private readonly defaultLanguageSelector: string; @@ -154,5 +154,5 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio return this.getAlertSuccessBlockParagraphContent(page); } } - -module.exports = new BOLocalizationPage(); +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; From aebe1ef14d7f47e7926c41f6abd0028fdcb371e0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:29:37 +0200 Subject: [PATCH 210/609] Fix typo --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 20b9c6228..6fd88e6e7 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '1.7.8')) { - return require('@versions/1.7/pages/BO/international/localization').bo; + return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); } From a77d3c620e80faf52920636dcfecae33b9d99607 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:45:05 +0200 Subject: [PATCH 211/609] fix bad require --- src/pages/BO/international/localization/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 6fd88e6e7..7975bb358 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -1,4 +1,4 @@ -import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import type {BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; import testContext from '@utils/test'; import semver from 'semver'; @@ -6,7 +6,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { - if (semver.lt(psVersion, '1.7.8')) { + if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); From e15a573e10eef6b57f92f10fc8e73cdc43ccb8b8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:54:12 +0200 Subject: [PATCH 212/609] Fix another typo --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 7975bb358..882d7eca2 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; + return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); } From 14cc1c919a5415d19a59d3d4041db150846c3242 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 17:20:29 +0200 Subject: [PATCH 213/609] Edit locator for localization for 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index ad7e715d5..b74355ca7 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -167,7 +167,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly preferencesLink: string; - public readonly internationalParentLink: string; + public internationalParentLink: string; public readonly taxesLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1d40d1dd1..803aec3b1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,12 +13,14 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); - // Orders - this.ordersParentLink = 'li#maintab-AdminParentOrders'; - // Customers - this.customersParentLink = 'li#maintab-AdminParentCustomer'; - // Shipping - this.shippingLink = '#maintab-AdminParentShipping'; + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; + // Localization + this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; } } From 0879573c30187088ef996b1af2fa9d0002a3034f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 09:42:02 +0200 Subject: [PATCH 214/609] Add localization link for 1.6.1 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index b74355ca7..93360baf7 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -171,7 +171,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly taxesLink: string; - public readonly localizationLink: string; + public localizationLink: string; public readonly locationsLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 803aec3b1..6f6b0ebb7 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -17,6 +17,7 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Localization this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + this.localizationLink = 'li#subtab-AdminLocalization'; // Orders this.ordersParentLink = 'li#maintab-AdminParentOrders'; // Shipping From a09543c9c68db22f61fc296365e8939c65323f11 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 14:36:33 +0200 Subject: [PATCH 215/609] Update 1.6 locators for localization --- .../BO/international/localization/index.ts | 3 ++ .../BO/localization/localization/index.ts | 31 +++++++++++++++++++ .../BO/international/localization/index.ts | 16 +++++----- 3 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 src/versions/1.6.1/pages/BO/localization/localization/index.ts diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 882d7eca2..7246adfd4 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts new file mode 100644 index 000000000..36a79a35b --- /dev/null +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -0,0 +1,31 @@ +import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/1.7.7/pages/BO/international/localization'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + // Import localization pack selectors + this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importStatesCheckbox = '#selection[]_states'; + this.importTaxesCheckbox = '#selection[]_taxes'; + this.importCurrenciesCheckbox = '#selection[]_currencies'; + this.importLanguagesCheckbox = '#selection[]_languages'; + this.importUnitsCheckbox = '#selection[]_units'; + this.updatepriceDisplayForGroupsCHeckbox = '#selection[]_groups'; + this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } +} + +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index f97aceb66..e36787d00 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -15,21 +15,21 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio public readonly successfulSettingsUpdateMessage: string; - private readonly importlocalizationPackSelect: string; + protected importlocalizationPackSelect: string; - private readonly importStatesCheckbox: string; + protected importStatesCheckbox: string; - private readonly importTaxesCheckbox: string; + protected importTaxesCheckbox: string; - private readonly importCurrenciesCheckbox: string; + protected importCurrenciesCheckbox: string; - private readonly importLanguagesCheckbox: string; + protected importLanguagesCheckbox: string; - private readonly importUnitsCheckbox: string; + protected importUnitsCheckbox: string; - private readonly updatepriceDisplayForGroupsCHeckbox: string; + protected updatepriceDisplayForGroupsCHeckbox: string; - private readonly downloadPackDataToggleInput: (toggle: number) => string; + protected downloadPackDataToggleInput: (toggle: number) => string; protected importButton: string; From 9e62774d837fe96e7c0e39ed381df5c248bdb4a3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:13:07 +0200 Subject: [PATCH 216/609] Edit locator for localization select --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 36a79a35b..f2db4d355 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -15,7 +15,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importlocalizationPackSelect = '#iso_localization_pack'; this.importStatesCheckbox = '#selection[]_states'; this.importTaxesCheckbox = '#selection[]_taxes'; this.importCurrenciesCheckbox = '#selection[]_currencies'; From 9225a9773846673d4ce9e78059d2da2dcb007bf5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:30:51 +0200 Subject: [PATCH 217/609] Try edit importLocalizationPack method --- .../BO/localization/localization/index.ts | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index f2db4d355..5e2bfb682 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -1,5 +1,7 @@ +import ImportContent from '@data/types/localization'; import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/1.7.7/pages/BO/international/localization'; +import type {Page} from 'playwright'; /** * Addresses page, contains functions that can be used on the page @@ -25,6 +27,47 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } + + /* Methods */ + /** + * Import a localization pack + * @param page {Page} Browser tab + * @param country {string} Country to select + * @param contentToImport {ImportContent} Data of content to import to choose + * @param downloadPackData {boolean} True if we need to download pack data + * @return {Promise} + */ + async importLocalizationPack( + page: Page, + country: string, + contentToImport: ImportContent, + downloadPackData: boolean = true, + ): Promise { + // Choose which country to import + await page.locator(this.importlocalizationPackSelect).click(); + await page.locator('div.chosen-search input').fill(country); + await page.locator('ul.chosen-results li').filter({hasText: country}).click(); + + // Set content import checkboxes + await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); + await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); + await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); + await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); + await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); + await this.setHiddenCheckboxValue( + page, + this.updatepriceDisplayForGroupsCHeckbox, + contentToImport.updatePriceDisplayForGroups, + ); + + // Choose if we download pack of data + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); + + // Import the pack + await page.locator(this.importButton).click(); + + return this.getAlertSuccessBlockParagraphContent(page, 20000); + } } const boLocalizationPage = new BOLocalizationPage(); From f377f8cab458ea33b3ed068555f059e7c32cab7c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:37:08 +0200 Subject: [PATCH 218/609] Edit select locator to click directly on div --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 5e2bfb682..6497187d8 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -44,7 +44,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza downloadPackData: boolean = true, ): Promise { // Choose which country to import - await page.locator(this.importlocalizationPackSelect).click(); + await page.locator('div.chosen-container').click(); await page.locator('div.chosen-search input').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); From 3c33fdcf18a0bed03475b01dcb74dad4706f0b10 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:39:46 +0200 Subject: [PATCH 219/609] Use id instead of class --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 6497187d8..48e6f009a 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -44,7 +44,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza downloadPackData: boolean = true, ): Promise { // Choose which country to import - await page.locator('div.chosen-container').click(); + await page.locator('#iso_localization_pack_chosen').click(); await page.locator('div.chosen-search input').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); From a6158dae80d0fd37b0d23cb871482623e7860f3d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:43:58 +0200 Subject: [PATCH 220/609] Replace input locator by textbox --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 48e6f009a..1f2398b33 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -45,7 +45,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza ): Promise { // Choose which country to import await page.locator('#iso_localization_pack_chosen').click(); - await page.locator('div.chosen-search input').fill(country); + await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes From 88f5d904a2eea6852e535f85c12ecb0ff624a46a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:53:36 +0200 Subject: [PATCH 221/609] Switch to playwright locators for importLocalizationPack function --- .../BO/localization/localization/index.ts | 30 ++++++++----------- 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 1f2398b33..b6e7d4b58 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,14 +17,6 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.importlocalizationPackSelect = '#iso_localization_pack'; - this.importStatesCheckbox = '#selection[]_states'; - this.importTaxesCheckbox = '#selection[]_taxes'; - this.importCurrenciesCheckbox = '#selection[]_currencies'; - this.importLanguagesCheckbox = '#selection[]_languages'; - this.importUnitsCheckbox = '#selection[]_units'; - this.updatepriceDisplayForGroupsCHeckbox = '#selection[]_groups'; - this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } @@ -49,16 +41,18 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes - await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); - await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); - await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); - await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); - await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); - await this.setHiddenCheckboxValue( - page, - this.updatepriceDisplayForGroupsCHeckbox, - contentToImport.updatePriceDisplayForGroups, - ); + // await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); + await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); + //await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); + await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); + //await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); + await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); + //await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); + await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); + //await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); + await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); + //await this.setHiddenCheckboxValue(page,this.updatepriceDisplayForGroupsCHeckbox, contentToImport.updatePriceDisplayForGroups); + await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); From ebdfff6f104f6d1d0f0c231e471f4e24202f00e5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:05:59 +0200 Subject: [PATCH 222/609] Edit data toggle check --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index b6e7d4b58..c9bdfe9a8 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,6 +17,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors + this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } From 028e6237569ed4ea071748f5bd0fd3d9f7f6f84c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:20:52 +0200 Subject: [PATCH 223/609] Edit toggle type --- .../1.6.1/pages/BO/localization/localization/index.ts | 4 ++-- .../develop/pages/BO/international/localization/index.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index c9bdfe9a8..16b788c04 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,7 +17,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; + this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } @@ -56,7 +56,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data - await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack await page.locator(this.importButton).click(); diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index e36787d00..6720bacf5 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -29,7 +29,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio protected updatepriceDisplayForGroupsCHeckbox: string; - protected downloadPackDataToggleInput: (toggle: number) => string; + protected downloadPackDataToggleInput: (toggle: number | string) => string; protected importButton: string; From d46e34d2c137ccceac9c821a4e1d717b03c5941b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:23:10 +0200 Subject: [PATCH 224/609] Edit toggle type in develop too --- .../develop/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index 6720bacf5..581260942 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -62,7 +62,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio this.importLanguagesCheckbox = '#import_localization_pack_content_to_import_3'; this.importUnitsCheckbox = '#import_localization_pack_content_to_import_4'; this.updatepriceDisplayForGroupsCHeckbox = '#import_localization_pack_content_to_import_5'; - this.downloadPackDataToggleInput = (toggle: number) => `#import_localization_pack_download_pack_data_${toggle}`; + this.downloadPackDataToggleInput = (toggle: string | number) => `#import_localization_pack_download_pack_data_${toggle}`; this.importButton = '#form-import-localization-save-button'; // Configuration form selectors From cca1620c67bdc7e8acfbeaa038f516d3226c8aa3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:39:43 +0200 Subject: [PATCH 225/609] Update import button locator in localization --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 16b788c04..874ca0cb3 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator(this.importButton).click(); + await page.locator('button.btn btn-default pull-right').filter({hasText: 'Import'}).click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 3ce25ac3ae946afe94daafc731813047b4f423cf Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:53:56 +0200 Subject: [PATCH 226/609] Try using for import btn --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 874ca0cb3..c23df1986 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator('button.btn btn-default pull-right').filter({hasText: 'Import'}).click(); + await page.locator('i.process-import-icon').click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 6e9b7c21a8a694ad3ce6f7d118585911765826cb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 17:08:01 +0200 Subject: [PATCH 227/609] Try click button by name --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index c23df1986..79a0694e4 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator('i.process-import-icon').click(); + await page.locator('button[name="submitLocalizationPack"]').click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 822fe48478a6a79ccf77381581e5c6af9a9d85c9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 10:24:11 +0200 Subject: [PATCH 228/609] handle succes notifications for 1.6.1 --- src/pages/BO/BOBasePage.ts | 17 ++++++++++++----- .../pages/BO/localization/localization/index.ts | 6 ------ 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 93360baf7..3d597d504 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -243,15 +243,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte protected alertSuccessBlock: string; - private readonly alertDangerBlock: string; + protected alertDangerBlock: string; - private readonly alertInfoBlock: string; + protected alertInfoBlock: string; protected alertSuccessBlockParagraph: string; protected alertDangerBlockParagraph: string; - private readonly alertInfoBlockParagraph: string; + protected alertInfoBlockParagraph: string; private readonly confirmationModal: string; @@ -1189,8 +1189,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte * @return {Promise} */ async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { - await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); - return this.getTextContent(page, this.alertSuccessBlockParagraph); + const shopVersion = testContext.getPSVersion(); + if (semver.lte(shopVersion, '7.0.0')) { + await this.elementVisible(page, this.alertSuccessBlock, timeout); + return this.getTextContent(page, this.alertSuccessBlock); + } + else { + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); + } } /** diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 79a0694e4..723880b65 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -42,17 +42,11 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes - // await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); - //await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); - //await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); - //await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); - //await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); - //await this.setHiddenCheckboxValue(page,this.updatepriceDisplayForGroupsCHeckbox, contentToImport.updatePriceDisplayForGroups); await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data From 9aa3dcf82bd2cf6e0a8d3f3e0c0ee4252a19c806 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 10:59:59 +0200 Subject: [PATCH 229/609] Add catalog parent and products subtab links --- src/pages/BO/BOBasePage.ts | 4 ++-- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 3d597d504..26a75b48a 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -97,9 +97,9 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly shoppingCartsLink: string; - public readonly catalogParentLink: string; + public catalogParentLink: string; - public readonly productsLink: string; + public productsLink: string; public readonly categoriesLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 6f6b0ebb7..ae2941796 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,6 +13,9 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Catalog + this.catalogParentLink = 'li#maintab-AdminCatalog'; + this.productsLink = 'li#subtab-AdminProducts'; // Customers this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Localization From 67bf9ee0410dd099fefbb2fc412af94e3d332949 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 11:46:19 +0200 Subject: [PATCH 230/609] overwrite newProductButton for 1.6.1 --- src/pages/BO/catalog/products/index.ts | 3 +++ .../1.6.1/pages/BO/catalog/products/index.ts | 25 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/catalog/products/index.ts diff --git a/src/pages/BO/catalog/products/index.ts b/src/pages/BO/catalog/products/index.ts index 8861f1eae..8f1462846 100644 --- a/src/pages/BO/catalog/products/index.ts +++ b/src/pages/BO/catalog/products/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products').productsPage; } diff --git a/src/versions/1.6.1/pages/BO/catalog/products/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/index.ts new file mode 100644 index 000000000..7b32a35b5 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/catalog/products/index.ts @@ -0,0 +1,25 @@ +// Import pages +import type {BOProductsPageInterface} from '@interfaces/BO/catalog/products'; +import {ProductsPage} from '@versions/1.7.7/pages/BO/catalog/products'; + +import type {Page} from 'playwright'; + +/** + * Bo products page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOProductsVersion extends ProductsPage implements BOProductsPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on products page + */ + constructor() { + super(); + // header + this.newProductButton = '#page-header-desc-product-new_product' + } +} + +const productsPage = new BOProductsVersion(); +export {productsPage, BOProductsVersion as ProductsPage}; From 91abacffe675b6bba6426802c3d9fa409937af21 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 17:12:02 +0200 Subject: [PATCH 231/609] Start implements productCreate for 1.6.1 ::blocked --- src/pages/BO/catalog/products/create/index.ts | 3 + .../pages/BO/catalog/products/create/index.ts | 99 +++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/catalog/products/create/index.ts diff --git a/src/pages/BO/catalog/products/create/index.ts b/src/pages/BO/catalog/products/create/index.ts index eebb7adaa..78765f72b 100644 --- a/src/pages/BO/catalog/products/create/index.ts +++ b/src/pages/BO/catalog/products/create/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products/create').boProductsCreatePage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products/create').boProductsCreatePage; } diff --git a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts new file mode 100644 index 000000000..31766ad67 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts @@ -0,0 +1,99 @@ +// Import pages +import type {BOProductsCreatePageInterface} from '@interfaces/BO/catalog/products/create'; +import {BOProductsCreatePage} from '@versions/develop/pages/BO/catalog/products/create'; + +import descriptionTab from '@pages/BO/catalog/products/create/tabDescription'; +import pricingTab from '@pages/BO/catalog/products/create/tabPricing'; +import detailsTab from '@pages/BO/catalog/products/create/tabDetails'; +import virtualProductTab from '@pages/BO/catalog/products/create/tabVirtualProduct'; +import stocksTab from '@pages/BO/catalog/products/create/tabStocks'; +import packTab from '@pages/BO/catalog/products/create/tabPack'; + +import type FakerProduct from '@data/faker/product'; + +import type {Page} from 'playwright'; + +/** + * Bo create product page, contains functions that can be used on the page + * @class + * @extends BOProductsCreatePage + */ +class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { + + /** + * Set product name + * @param page {Page} Browser tab + * @param name {string} Name of the product + * @param locale {string} Locale + * @returns {Promise} + */ + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); + } + + await this.setValue(page, this.productNameInput(locale), name); + } + + /** + * Set product type + * @param page {Page} Browser tab + * @param productData {FakerProduct} + * @returns {Promise} + */ + async setProductType(page: Page, productData: FakerProduct): Promise { + switch (productData.type) { + case 'standard': + await page.locator('#simple_product').setChecked(true); + } + } + + /** + * Set product + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in new product page + * @returns {Promise} + */ + async setProduct(page: Page, productData: FakerProduct): Promise /**/{ + // INFORMATION TAB + // product type + await this.setProductType(page, productData); + // product name + await this.setProductName(page, productData.name, 'en'); + + // TODO BUG on 1.6.1.24 not possible to switch product creation tab + + + +/* //// Tab "Description" + // Set description + await descriptionTab.setProductDescription(page, productData); + // Set name + // Set status + await this.setProductStatus(page, productData.status); + + //// Tab "Details" + await detailsTab.setProductDetails(page, productData); + + //// Tab "Stocks" + if (productData.type === 'virtual') { + await virtualProductTab.setVirtualProduct(page, productData); + } else if (productData.type !== 'combinations') { + await stocksTab.setProductStock(page, productData); + } + + if (productData.type === 'pack') { + await packTab.setPackOfProducts(page, productData.pack); + } + + //// Tab "Pricing" + await pricingTab.setProductPricing(page, productData); +*/ + return this.saveProduct(page); + } +} + +const boProductsCreatePage = new BOProductsCreatePageVersion(); +export {boProductsCreatePage, BOProductsCreatePageVersion as BOProductsCreatePage}; From 41cae023f8db197bae0e807e6e2b2635ebb8881c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 20 Aug 2025 15:19:12 +0200 Subject: [PATCH 232/609] Update develop localization --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 7246adfd4..63e76174b 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -12,7 +12,7 @@ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } - return require('@versions/develop/pages/BO/international/localization'); + return require('@versions/develop/pages/BO/international/localization').boLocalizationPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ From b010370d2681b4db23dd73b6a3bf7ca8d16c6e63 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 20 Aug 2025 15:46:08 +0200 Subject: [PATCH 233/609] Update timeout to isStepCompleted --- src/versions/develop/pages/FO/classic/checkout/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/FO/classic/checkout/index.ts b/src/versions/develop/pages/FO/classic/checkout/index.ts index 0048f0875..79a7731dc 100644 --- a/src/versions/develop/pages/FO/classic/checkout/index.ts +++ b/src/versions/develop/pages/FO/classic/checkout/index.ts @@ -423,7 +423,7 @@ class CheckoutPage extends FOBasePage implements FoCheckoutPageInterface { * @returns {Promise} */ async isStepCompleted(page: Page, stepSelector: string): Promise { - return this.elementVisible(page, `${stepSelector}${this.stepFormSuccess}`, 1000); + return this.elementVisible(page, `${stepSelector}${this.stepFormSuccess}`, 2000); } /** From 707a7d8b01be840e576ac8baa459b98cdebba912 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:36:43 +0200 Subject: [PATCH 234/609] Edit createCarrier for 8.2 --- src/pages/BO/BOBasePage.ts | 22 +++--- src/pages/BO/catalog/products/index.ts | 4 +- .../BO/international/localization/index.ts | 12 +-- src/utils/test.ts | 6 +- .../pages/BO/catalog/products/create/index.ts | 54 +++++++------- .../1.6.1/pages/BO/catalog/products/index.ts | 12 +-- .../pages/BO/customers/addresses/create.ts | 9 ++- .../1.6.1/pages/BO/dashboard/index.ts | 24 +++--- .../BO/localization/localization/index.ts | 74 +++++++++---------- .../pages/BO/shipping/carriers/create.ts | 7 +- .../BO/international/localization/index.ts | 12 +-- .../pages/BO/catalog/products/create/index.ts | 2 +- .../catalog/products/create/tabDescription.ts | 45 +++++------ .../8.2/pages/BO/shipping/carriers/create.ts | 5 +- .../pages/FO/classic/searchResults/index.ts | 8 +- 15 files changed, 148 insertions(+), 148 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 26a75b48a..94e3fe701 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -753,7 +753,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte await page.hover(parentSelector); //await this.clickAndWaitForURL(page, linkSelector); await page.locator(linkSelector).click(); - await page.waitForLoadState("load"); + await page.waitForLoadState('load'); } else { if (parentSelector !== '') { await this.clickSubMenu(page, parentSelector); @@ -761,7 +761,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte } //await this.clickAndWaitForURL(page, linkSelector); await page.locator(linkSelector).click(); - await page.waitForLoadState("load"); + await page.waitForLoadState('load'); let linkActiveClass: string = '-active'; // >= 1.7.8.0 @@ -1189,15 +1189,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte * @return {Promise} */ async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { - const shopVersion = testContext.getPSVersion(); - if (semver.lte(shopVersion, '7.0.0')) { - await this.elementVisible(page, this.alertSuccessBlock, timeout); - return this.getTextContent(page, this.alertSuccessBlock); - } - else { - await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); - return this.getTextContent(page, this.alertSuccessBlockParagraph); - } + const shopVersion = testContext.getPSVersion(); + + if (semver.lte(shopVersion, '7.0.0')) { + await this.elementVisible(page, this.alertSuccessBlock, timeout); + return this.getTextContent(page, this.alertSuccessBlock); + } + + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); } /** diff --git a/src/pages/BO/catalog/products/index.ts b/src/pages/BO/catalog/products/index.ts index 8f1462846..b71f2f7fc 100644 --- a/src/pages/BO/catalog/products/index.ts +++ b/src/pages/BO/catalog/products/index.ts @@ -6,8 +6,8 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products').productsPage; diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 63e76174b..26d0b8e84 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -6,12 +6,12 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; - } - if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; - } + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; + } + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; + } return require('@versions/develop/pages/BO/international/localization').boLocalizationPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/utils/test.ts b/src/utils/test.ts index 0c9878771..7bdce4199 100644 --- a/src/utils/test.ts +++ b/src/utils/test.ts @@ -50,8 +50,8 @@ export default { const version: string = process.env.PS_VERSION; return version - .replace(/\.x$/, '.99') - .replace(/^1\.7\./, '7.') - .replace(/^1\.6\./, '6.'); + .replace(/\.x$/, '.99') + .replace(/^1\.7\./, '7.') + .replace(/^1\.6\./, '6.'); }, }; diff --git a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts index 31766ad67..d4b7ced6b 100644 --- a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts +++ b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts @@ -19,55 +19,53 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { - - /** + /** * Set product name * @param page {Page} Browser tab * @param name {string} Name of the product * @param locale {string} Locale * @returns {Promise} */ - async setProductName(page: Page, name: string, locale: string = 'en'): Promise { - const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); - if (isShopMultiLanguages) { - await page.locator(this.productNameLanguageButton).click({timeout: 1000}); - await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); - } + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); - await this.setValue(page, this.productNameInput(locale), name); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); } - /** + await this.setValue(page, this.productNameInput(locale), name); + } + + /** * Set product type * @param page {Page} Browser tab * @param productData {FakerProduct} * @returns {Promise} */ - async setProductType(page: Page, productData: FakerProduct): Promise { - switch (productData.type) { - case 'standard': - await page.locator('#simple_product').setChecked(true); - } + async setProductType(page: Page, productData: FakerProduct): Promise { + switch (productData.type) { + case 'standard': + await page.locator('#simple_product').setChecked(true); } + } - /** + /** * Set product * @param page {Page} Browser tab * @param productData {FakerProduct} Data to set in new product page * @returns {Promise} */ - async setProduct(page: Page, productData: FakerProduct): Promise /**/{ - // INFORMATION TAB - // product type - await this.setProductType(page, productData); - // product name - await this.setProductName(page, productData.name, 'en'); + async setProduct(page: Page, productData: FakerProduct): Promise /**/{ + // INFORMATION TAB + // product type + await this.setProductType(page, productData); + // product name + await this.setProductName(page, productData.name, 'en'); - // TODO BUG on 1.6.1.24 not possible to switch product creation tab + // TODO BUG on 1.6.1.24 not possible to switch product creation tab - - -/* //// Tab "Description" + /* //// Tab "Description" // Set description await descriptionTab.setProductDescription(page, productData); // Set name @@ -91,8 +89,8 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd //// Tab "Pricing" await pricingTab.setProductPricing(page, productData); */ - return this.saveProduct(page); - } + return this.saveProduct(page); + } } const boProductsCreatePage = new BOProductsCreatePageVersion(); diff --git a/src/versions/1.6.1/pages/BO/catalog/products/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/index.ts index 7b32a35b5..c4ae31e79 100644 --- a/src/versions/1.6.1/pages/BO/catalog/products/index.ts +++ b/src/versions/1.6.1/pages/BO/catalog/products/index.ts @@ -10,15 +10,15 @@ import type {Page} from 'playwright'; * @extends ProductsPage */ class BOProductsVersion extends ProductsPage implements BOProductsPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on products page */ - constructor() { - super(); - // header - this.newProductButton = '#page-header-desc-product-new_product' - } + constructor() { + super(); + // header + this.newProductButton = '#page-header-desc-product-new_product'; + } } const productsPage = new BOProductsVersion(); diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 0c53c68d2..796aec7eb 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -6,6 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; + /** * @constructs * Setting up texts and selectors to use in addresses create page @@ -48,10 +49,10 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @returns {Promise} */ async createEditAddress( - page: Frame|Page, - addressData: FakerAddress, - save: boolean = true, - waitForNavigation: boolean = true, + page: Frame|Page, + addressData: FakerAddress, + save: boolean = true, + waitForNavigation: boolean = true, ): Promise { if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index ae2941796..fa20302bf 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,18 +13,18 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); - // Catalog - this.catalogParentLink = 'li#maintab-AdminCatalog'; - this.productsLink = 'li#subtab-AdminProducts'; - // Customers - this.customersParentLink = 'li#maintab-AdminParentCustomer'; - // Localization - this.internationalParentLink = 'li#maintab-AdminParentLocalization'; - this.localizationLink = 'li#subtab-AdminLocalization'; - // Orders - this.ordersParentLink = 'li#maintab-AdminParentOrders'; - // Shipping - this.shippingLink = '#maintab-AdminParentShipping'; + // Catalog + this.catalogParentLink = 'li#maintab-AdminCatalog'; + this.productsLink = 'li#subtab-AdminProducts'; + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; + // Localization + this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + this.localizationLink = 'li#subtab-AdminLocalization'; + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; } } diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 723880b65..d184de596 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -9,20 +9,20 @@ import type {Page} from 'playwright'; * @extends BOBasePage */ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on addresses page */ - constructor() { - super(); + constructor() { + super(); - // Import localization pack selectors - this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; - this.importButton = 'button.btn.btn-primary:has-text("Import")'; - } + // Import localization pack selectors + this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } - /* Methods */ - /** + /* Methods */ + /** * Import a localization pack * @param page {Page} Browser tab * @param country {string} Country to select @@ -30,34 +30,34 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza * @param downloadPackData {boolean} True if we need to download pack data * @return {Promise} */ - async importLocalizationPack( - page: Page, - country: string, - contentToImport: ImportContent, - downloadPackData: boolean = true, - ): Promise { - // Choose which country to import - await page.locator('#iso_localization_pack_chosen').click(); - await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); - await page.locator('ul.chosen-results li').filter({hasText: country}).click(); - - // Set content import checkboxes - await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); - await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); - await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); - await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); - await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); - await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); - - // Choose if we download pack of data - await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); - - // Import the pack - await page.locator('button[name="submitLocalizationPack"]').click(); - - return this.getAlertSuccessBlockParagraphContent(page, 20000); - } + async importLocalizationPack( + page: Page, + country: string, + contentToImport: ImportContent, + downloadPackData: boolean = true, + ): Promise { + // Choose which country to import + await page.locator('#iso_localization_pack_chosen').click(); + await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); + await page.locator('ul.chosen-results li').filter({hasText: country}).click(); + + // Set content import checkboxes + await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); + await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); + await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); + await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); + await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); + await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); + + // Choose if we download pack of data + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); + + // Import the pack + await page.locator('button[name="submitLocalizationPack"]').click(); + + return this.getAlertSuccessBlockParagraphContent(page, 20000); + } } const boLocalizationPage = new BOLocalizationPage(); -export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file +export {boLocalizationPage, BOLocalizationPage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts index 1583b0fe7..7faffff1f 100644 --- a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts @@ -2,10 +2,9 @@ import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/cr import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { - constructor() { - super(); - - } + constructor() { + super(); + } } const boCarriersCreatePage = new BOCarriersCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/international/localization/index.ts b/src/versions/1.7.7/pages/BO/international/localization/index.ts index 2a3913cc7..db290dd42 100644 --- a/src/versions/1.7.7/pages/BO/international/localization/index.ts +++ b/src/versions/1.7.7/pages/BO/international/localization/index.ts @@ -7,16 +7,16 @@ import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/develop * @extends BOBasePage */ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on addresses page */ - constructor() { - super(); + constructor() { + super(); - this.importButton = 'button.btn.btn-primary:has-text("Import")'; - } + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } } const boLocalizationPage = new BOLocalizationPage(); -export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file +export {boLocalizationPage, BOLocalizationPage}; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index a4950a672..6efb18238 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,7 +19,6 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { - /** * Set product name * @param page {Page} Browser tab @@ -29,6 +28,7 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd */ async setProductName(page: Page, name: string, locale: string = 'en'): Promise { const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { await page.locator(this.productNameLanguageButton).click({timeout: 1000}); await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index 44ef1299c..faa024145 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -12,39 +12,42 @@ import type {Page} from 'playwright'; * @extends DescriptionTab */ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { - private readonly productShortDescriptionIframe: string; - private readonly productDescriptionIframe: string; - private productWithCombinationsInput: string; - /** + private readonly productShortDescriptionIframe: string; + + private readonly productDescriptionIframe: string; + + private productWithCombinationsInput: string; + + /** * @constructs * Setting up texts and selectors to use on description tab */ - constructor() { - super(); + constructor() { + super(); - this.descriptionTabLink = '#product_description-tab-nav'; - this.productShortDescriptionIframe = '#product_description_description_short'; - this.productDescriptionIframe = '#product_description_description'; - this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; - } + this.descriptionTabLink = '#product_description-tab-nav'; + this.productShortDescriptionIframe = '#product_description_description_short'; + this.productDescriptionIframe = '#product_description_description'; + this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; + } - /** + /** * Set product description * @param page {Page} Browser tab * @param productData {FakerProduct} Data to set in description form * @returns {Promise} */ - async setProductDescription(page: Page, productData: FakerProduct): Promise { - await this.waitForSelectorAndClick(page, this.descriptionTabLink); - if (productData.type === 'combinations') { - await page.locator(this.productWithCombinationsInput).click(); - } + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } - await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); - await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); - await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); - } + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } } const descriptionTab = new BOProductTabDescriptionVersion(); diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 1aecaf958..8403c5272 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -1,6 +1,7 @@ import type FakerCarrier from '@data/faker/carrier'; import type FakerGroup from '@data/faker/group'; import {type CarrierRange} from '@data/types/carrier'; +import {tr} from '@faker-js/faker'; import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/develop/pages/BO/shipping/carriers/create'; import type {Page} from 'playwright'; @@ -100,9 +101,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - if (!carrierData.freeShipping) { - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); diff --git a/src/versions/8.2/pages/FO/classic/searchResults/index.ts b/src/versions/8.2/pages/FO/classic/searchResults/index.ts index c8d3dfd29..34f2f5090 100644 --- a/src/versions/8.2/pages/FO/classic/searchResults/index.ts +++ b/src/versions/8.2/pages/FO/classic/searchResults/index.ts @@ -10,13 +10,13 @@ import {SearchResultsPage} from '@versions/develop/pages/FO/classic/searchResult * @extends SearchResultsPage */ class FoSearchResultsPageVersion extends SearchResultsPage implements FoSearchResultsPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on search results page */ - constructor(theme: string = 'classic') { - super(theme); - } + constructor(theme: string = 'classic') { + super(theme); + } } const searchResultsPage = new FoSearchResultsPageVersion(); From 9239851f364a3d46f7c2bf9ac341e3c117c641b6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:45:03 +0200 Subject: [PATCH 235/609] Try better way for handlingCost and freeShipping --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 8403c5272..66a29cee2 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,8 +100,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); + + if (!carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); + } + if (!carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); + } if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From e9da262d7dec6abef2431306f289325807292b68 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:51:24 +0200 Subject: [PATCH 236/609] Handle set enabled --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 66a29cee2..9c3d7e3dc 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -202,7 +202,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + if (!carrierData.enable) { + await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + } await page.locator(this.finishButton).click(); // Return successful message From 82e87b2df4248eb0a11a105097e7b2447b443824 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 15:39:51 +0200 Subject: [PATCH 237/609] Add new way to handle toggle for freeshipping, handlingcost, enable --- .../8.2/pages/BO/shipping/carriers/create.ts | 40 ++++++++++++++++--- 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 9c3d7e3dc..e833a385b 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,13 +100,30 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - - if (!carrierData.freeShipping) { + /* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - } - if (!carrierData.handlingCosts) { + }*/ + if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle('off')); + }} + if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle('on')); + }} + + +/* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + }*/ + if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle('off')); + }} + if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle('on')); + }} if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -202,9 +219,20 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - if (!carrierData.enable) { +/* if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + }*/ + if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.enable) { + await this.setChecked(page, this.enableToggle('off')); + } + } + if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.enable) { + await this.setChecked(page, this.enableToggle('on')); + } } + await page.locator(this.finishButton).click(); // Return successful message From b832efd5d76a8013e0674499a044ab2f09009e0d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 09:26:45 +0200 Subject: [PATCH 238/609] Overide locator for carrier enable in 1.7.7 --- src/pages/BO/shipping/carriers/create.ts | 3 +++ .../1.7.7/pages/BO/shipping/carriers/create.ts | 13 +++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/shipping/carriers/create.ts diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index 4adcd9105..df83938c6 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts new file mode 100644 index 000000000..095e9b604 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -0,0 +1,13 @@ +import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; +import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; + +class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { + constructor() { + super(); + // Summary + this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; + } +} + +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; From 10e7e3d86f227a32e838183663ac6551c1a40713 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 09:30:57 +0200 Subject: [PATCH 239/609] Second overide for carriers creation --- src/versions/1.7.7/pages/BO/shipping/carriers/create.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts index 095e9b604..eae428702 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -4,6 +4,10 @@ import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2 class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { constructor() { super(); + + // Shipping locations and costs + this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; + this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; // Summary this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; } From d9c7fc9485bdf2c82fc4f7f15d56dee230aaed6f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:02:30 +0200 Subject: [PATCH 240/609] Force click freeshipping and shipping cost --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index e833a385b..7a319ae43 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off')); + await this.setChecked(page, this.freeShippingToggle('off'), true, true); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on')); + await this.setChecked(page, this.freeShippingToggle('on'), true, true); }} @@ -118,11 +118,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off')); + await this.setChecked(page, this.addHandlingCostsToggle('off'), true, true); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on')); + await this.setChecked(page, this.addHandlingCostsToggle('on'), true, true); }} if (carrierData.billing === 'According to total price') { From d205e87f4d4c1f919528db10d83afa6dfd64e671 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:11:15 +0200 Subject: [PATCH 241/609] Add force enable --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 7a319ae43..e21019416 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -224,12 +224,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off')); + await this.setChecked(page, this.enableToggle('off'), true, true); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on')); + await this.setChecked(page, this.enableToggle('on'), true, true); } } From c39c096e5d727a1ea9d74c517eccbf9f6de0e30b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:18:17 +0200 Subject: [PATCH 242/609] Remove force click --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index e21019416..308fa67c3 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off'), true, true); + await this.setChecked(page, this.freeShippingToggle('off'), true); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on'), true, true); + await this.setChecked(page, this.freeShippingToggle('on'), true); }} @@ -118,11 +118,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off'), true, true); + await this.setChecked(page, this.addHandlingCostsToggle('off'), true); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on'), true, true); + await this.setChecked(page, this.addHandlingCostsToggle('on'), true); }} if (carrierData.billing === 'According to total price') { @@ -224,12 +224,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off'), true, true); + await this.setChecked(page, this.enableToggle('off'), true); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on'), true, true); + await this.setChecked(page, this.enableToggle('on'), true); } } From cf7160da6f0e2f866a8b8da158d772237e526756 Mon Sep 17 00:00:00 2001 From: Jonathan LELIEVRE Date: Wed, 27 Aug 2025 02:16:18 +0200 Subject: [PATCH 243/609] Add new method to update logs min level in database --- src/interfaces/BO/advancedParameters/logs.ts | 1 + .../pages/BO/advancedParameters/logs.ts | 25 ++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/interfaces/BO/advancedParameters/logs.ts b/src/interfaces/BO/advancedParameters/logs.ts index 7763186fe..420300aed 100644 --- a/src/interfaces/BO/advancedParameters/logs.ts +++ b/src/interfaces/BO/advancedParameters/logs.ts @@ -18,5 +18,6 @@ export interface BOLogsPageInterface extends BOBasePagePageInterface { selectPaginationLimit(page: Page, number: number): Promise; setEmail(page: Page, email: string): Promise; setMinimumSeverityLevel(page: Page, severityLevel: string): Promise; + setMinimumSeverityLevelForDatabase(page: Page, severityLevel: string): Promise; sortTable(page: Page, sortBy: string, sortDirection: string): Promise; } diff --git a/src/versions/develop/pages/BO/advancedParameters/logs.ts b/src/versions/develop/pages/BO/advancedParameters/logs.ts index 84f52608a..38163f205 100644 --- a/src/versions/develop/pages/BO/advancedParameters/logs.ts +++ b/src/versions/develop/pages/BO/advancedParameters/logs.ts @@ -52,6 +52,10 @@ class BOLogsPage extends BOBasePage implements BOLogsPageInterface { private readonly saveButton: string; + private readonly severityLevelSelectForDatabase: string; + + private readonly saveButtonForDatabase: string; + /** * @constructs * Setting up texts and selectors to use on logs page @@ -90,7 +94,13 @@ class BOLogsPage extends BOBasePage implements BOLogsPageInterface { // Logs by email selectors this.severityLevelSelect = '#form_logs_by_email'; this.sendEmailToInput = '#form_logs_email_receivers'; - this.saveButton = '#main-div div.card-footer button'; + // For retro-compatibility we identify the email button as the one that is NOT the save-database button + // which will work even for versions that don't have the new button + this.saveButton = '#main-div div.card-footer button:not(.save-database)'; + + // Logs database selectors + this.severityLevelSelectForDatabase = '#form_database_min_logger_level'; + this.saveButtonForDatabase = '#main-div div.card-footer button.save-database'; } /* @@ -326,6 +336,19 @@ class BOLogsPage extends BOBasePage implements BOLogsPageInterface { return this.getAlertBlockContent(page); } + + /** + * Set minimum severity level for database + * @param page {Page} Browser tab + * @param severityLevel {string} Severity to select + * @returns {Promise} + */ + async setMinimumSeverityLevelForDatabase(page: Page, severityLevel: string): Promise { + await this.selectByVisibleText(page, this.severityLevelSelectForDatabase, severityLevel); + await this.waitForSelectorAndClick(page, this.saveButtonForDatabase); + + return this.getAlertBlockContent(page); + } } module.exports = new BOLogsPage(); From 2c8595b63f8c7c4a2bf67df7254b354825f288dd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:26:07 +0200 Subject: [PATCH 244/609] Try other way to click --- .../8.2/pages/BO/shipping/carriers/create.ts | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 308fa67c3..0f382ddc5 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off'), true); + //await this.setChecked(page, this.freeShippingToggle('off'), true); + await page.locator(this.freeShippingToggle('off')).click(); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on'), true); + //await this.setChecked(page, this.freeShippingToggle('on'), true); + await page.locator(this.freeShippingToggle('on')).click(); }} @@ -118,11 +120,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off'), true); + //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); + await page.locator(this.addHandlingCostsToggle('off')).click(); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on'), true); + //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); + await page.locator(this.addHandlingCostsToggle('on')).click(); }} if (carrierData.billing === 'According to total price') { @@ -224,12 +228,15 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off'), true); + //await this.setChecked(page, this.enableToggle('off'), true); + await page.locator(this.enableToggle('off')).click(); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on'), true); + //await this.setChecked(page, this.enableToggle('on'), true); + await page.locator(this.enableToggle('on')).click(); + } } From c789dbe8818a07d505eb60c777bdfda1eca58cb6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:44:23 +0200 Subject: [PATCH 245/609] Try rollback to the old method --- .../8.2/pages/BO/shipping/carriers/create.ts | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 0f382ddc5..f7795a5ab 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,10 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - /* if (!carrierData.freeShipping) { + if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - }*/ - if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); await page.locator(this.freeShippingToggle('off')).click(); @@ -112,13 +112,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr if (carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('on'), true); await page.locator(this.freeShippingToggle('on')).click(); - }} + }}*/ -/* if (!carrierData.handlingCosts) { + if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - }*/ - if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); await page.locator(this.addHandlingCostsToggle('off')).click(); @@ -127,7 +127,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr if (carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); await page.locator(this.addHandlingCostsToggle('on')).click(); - }} + }}*/ if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -223,10 +223,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary -/* if (!carrierData.enable) { + if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - }*/ - if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { //await this.setChecked(page, this.enableToggle('off'), true); await page.locator(this.enableToggle('off')).click(); @@ -238,7 +238,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.enableToggle('on')).click(); } - } + }*/ await page.locator(this.finishButton).click(); From f0447f185edc2293076ef0d3b5dfa74136ecc06f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:57:37 +0200 Subject: [PATCH 246/609] Try again another way for carriers --- .../8.2/pages/BO/shipping/carriers/create.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index f7795a5ab..4676f0b16 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,9 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - if (!carrierData.freeShipping) { +/* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - } + }*/ + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).click({ force: true, timeout: 1000}); /* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); @@ -115,9 +116,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }}*/ - if (!carrierData.handlingCosts) { +/* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + }*/ + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).click({ force: true, timeout: 1000}); /* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); @@ -223,9 +225,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - if (!carrierData.enable) { +/* if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - } + }*/ + + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).click({ force: true, timeout: 1000}); + /* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { //await this.setChecked(page, this.enableToggle('off'), true); From 262614c2fd89420960dc863259df2a663c3845cb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 14:54:47 +0200 Subject: [PATCH 247/609] Try other method for freeshipping and handling cost --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 4676f0b16..f7af8ee88 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -103,7 +103,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr /* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); }*/ - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); @@ -119,7 +119,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr /* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); }*/ - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); @@ -229,7 +229,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); }*/ - await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { From 5d317273869ae4495f697d0913b3b794c8535d66 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Sep 2025 10:53:42 +0000 Subject: [PATCH 248/609] Bump @typescript-eslint/eslint-plugin from 8.38.0 to 8.41.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.38.0 to 8.41.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.41.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.41.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 441 ++++++++++++---------------------------------- 1 file changed, 114 insertions(+), 327 deletions(-) diff --git a/package-lock.json b/package-lock.json index 743fdd320..65b7b15c4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -631,16 +631,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", - "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.41.0.tgz", + "integrity": "sha512-8fz6oa6wEKZrhXWro/S3n2eRJqlRcIa6SlDh59FXJ5Wp5XRZ8B9ixpJDcjadHq47hMx0u+HW6SNa6LjJQ6NLtw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/type-utils": "8.38.0", - "@typescript-eslint/utils": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/scope-manager": "8.41.0", + "@typescript-eslint/type-utils": "8.41.0", + "@typescript-eslint/utils": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -654,9 +654,9 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.38.0", + "@typescript-eslint/parser": "^8.41.0", "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { @@ -683,15 +683,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", - "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.41.0.tgz", + "integrity": "sha512-gTtSdWX9xiMPA/7MV9STjJOOYtWwIJIYxkQxnSV1U3xcE+mnJSH3f6zI0RYP+ew66WSlZ5ed+h0VCxsvdC1jJg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/scope-manager": "8.41.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/typescript-estree": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0", "debug": "^4.3.4" }, "engines": { @@ -703,153 +703,17 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", - "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", - "dev": true, - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.38.0", - "@typescript-eslint/types": "^8.38.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", - "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", - "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", - "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", - "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/project-service": "8.38.0", - "@typescript-eslint/tsconfig-utils": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", - "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.38.0", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", - "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.41.0.tgz", + "integrity": "sha512-b8V9SdGBQzQdjJ/IO3eDifGpDBJfvrNTp2QD9P2BeqWTGrRibgfgIlBSw6z3b6R7dPzg752tOs4u/7yCLxksSQ==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.38.0", - "@typescript-eslint/types": "^8.38.0", + "@typescript-eslint/tsconfig-utils": "^8.41.0", + "@typescript-eslint/types": "^8.41.0", "debug": "^4.3.4" }, "engines": { @@ -860,17 +724,17 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", - "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.41.0.tgz", + "integrity": "sha512-n6m05bXn/Cd6DZDGyrpXrELCPVaTnLdPToyhBoFkLIMznRUQUEQdSp96s/pcWSQdqOhrgR1mzJ+yItK7T+WPMQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0" + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -881,9 +745,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", - "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.41.0.tgz", + "integrity": "sha512-TDhxYFPUYRFxFhuU5hTIJk+auzM/wKvWgoNYOPcOf6i4ReYlOoYN8q1dV5kOTjNQNJgzWN3TUUQMtlLOcUgdUw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -893,18 +757,18 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", - "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.41.0.tgz", + "integrity": "sha512-63qt1h91vg3KsjVVonFJWjgSK7pZHSQFKH6uwqxAH9bBrsyRhO6ONoKyXxyVBzG1lJnFAJcKAcxLS54N1ee1OQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0", - "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/typescript-estree": "8.41.0", + "@typescript-eslint/utils": "8.41.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -917,7 +781,7 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils": { @@ -933,9 +797,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", - "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.41.0.tgz", + "integrity": "sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -946,15 +810,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", - "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.41.0.tgz", + "integrity": "sha512-D43UwUYJmGhuwHfY7MtNKRZMmfd8+p/eNSfFe6tH5mbVDto+VQCayeAt35rOx3Cs6wxD16DQtIKw/YXxt5E0UQ==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.38.0", - "@typescript-eslint/tsconfig-utils": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/project-service": "8.41.0", + "@typescript-eslint/tsconfig-utils": "8.41.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -970,7 +834,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/ts-api-utils": { @@ -986,15 +850,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.38.0.tgz", - "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.41.0.tgz", + "integrity": "sha512-udbCVstxZ5jiPIXrdH+BZWnPatjlYwJuJkDA4Tbo3WyYLh8NvB+h/bKeSZHDOFKfphsZYJQqaFtLeXEqurQn1A==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0" + "@typescript-eslint/scope-manager": "8.41.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/typescript-estree": "8.41.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1005,16 +869,16 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", - "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.41.0.tgz", + "integrity": "sha512-+GeGMebMCy0elMNg67LRNoVnUFPIm37iu5CmHESVx56/9Jsfdpsvbv605DQ81Pi/x11IdKUsS5nzgTYbCQU9fg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/types": "8.41.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7322,16 +7186,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", - "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.41.0.tgz", + "integrity": "sha512-8fz6oa6wEKZrhXWro/S3n2eRJqlRcIa6SlDh59FXJ5Wp5XRZ8B9ixpJDcjadHq47hMx0u+HW6SNa6LjJQ6NLtw==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/type-utils": "8.38.0", - "@typescript-eslint/utils": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/scope-manager": "8.41.0", + "@typescript-eslint/type-utils": "8.41.0", + "@typescript-eslint/utils": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7354,132 +7218,55 @@ } }, "@typescript-eslint/parser": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", - "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.41.0.tgz", + "integrity": "sha512-gTtSdWX9xiMPA/7MV9STjJOOYtWwIJIYxkQxnSV1U3xcE+mnJSH3f6zI0RYP+ew66WSlZ5ed+h0VCxsvdC1jJg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/scope-manager": "8.41.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/typescript-estree": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0", "debug": "^4.3.4" - }, - "dependencies": { - "@typescript-eslint/project-service": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", - "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", - "dev": true, - "requires": { - "@typescript-eslint/tsconfig-utils": "^8.38.0", - "@typescript-eslint/types": "^8.38.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", - "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0" - } - }, - "@typescript-eslint/tsconfig-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", - "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", - "dev": true, - "requires": {} - }, - "@typescript-eslint/types": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", - "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", - "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", - "dev": true, - "requires": { - "@typescript-eslint/project-service": "8.38.0", - "@typescript-eslint/tsconfig-utils": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", - "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.38.0", - "eslint-visitor-keys": "^4.2.1" - } - }, - "eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true - }, - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } } }, "@typescript-eslint/project-service": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", - "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.41.0.tgz", + "integrity": "sha512-b8V9SdGBQzQdjJ/IO3eDifGpDBJfvrNTp2QD9P2BeqWTGrRibgfgIlBSw6z3b6R7dPzg752tOs4u/7yCLxksSQ==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.38.0", - "@typescript-eslint/types": "^8.38.0", + "@typescript-eslint/tsconfig-utils": "^8.41.0", + "@typescript-eslint/types": "^8.41.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", - "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.41.0.tgz", + "integrity": "sha512-n6m05bXn/Cd6DZDGyrpXrELCPVaTnLdPToyhBoFkLIMznRUQUEQdSp96s/pcWSQdqOhrgR1mzJ+yItK7T+WPMQ==", "dev": true, "requires": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0" + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", - "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.41.0.tgz", + "integrity": "sha512-TDhxYFPUYRFxFhuU5hTIJk+auzM/wKvWgoNYOPcOf6i4ReYlOoYN8q1dV5kOTjNQNJgzWN3TUUQMtlLOcUgdUw==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", - "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.41.0.tgz", + "integrity": "sha512-63qt1h91vg3KsjVVonFJWjgSK7pZHSQFKH6uwqxAH9bBrsyRhO6ONoKyXxyVBzG1lJnFAJcKAcxLS54N1ee1OQ==", "dev": true, "requires": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0", - "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/typescript-estree": "8.41.0", + "@typescript-eslint/utils": "8.41.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7494,21 +7281,21 @@ } }, "@typescript-eslint/types": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", - "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.41.0.tgz", + "integrity": "sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", - "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.41.0.tgz", + "integrity": "sha512-D43UwUYJmGhuwHfY7MtNKRZMmfd8+p/eNSfFe6tH5mbVDto+VQCayeAt35rOx3Cs6wxD16DQtIKw/YXxt5E0UQ==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.38.0", - "@typescript-eslint/tsconfig-utils": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/project-service": "8.41.0", + "@typescript-eslint/tsconfig-utils": "8.41.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/visitor-keys": "8.41.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7527,24 +7314,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.38.0.tgz", - "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.41.0.tgz", + "integrity": "sha512-udbCVstxZ5jiPIXrdH+BZWnPatjlYwJuJkDA4Tbo3WyYLh8NvB+h/bKeSZHDOFKfphsZYJQqaFtLeXEqurQn1A==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0" + "@typescript-eslint/scope-manager": "8.41.0", + "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/typescript-estree": "8.41.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", - "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", + "version": "8.41.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.41.0.tgz", + "integrity": "sha512-+GeGMebMCy0elMNg67LRNoVnUFPIm37iu5CmHESVx56/9Jsfdpsvbv605DQ81Pi/x11IdKUsS5nzgTYbCQU9fg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/types": "8.41.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 0313599cb7e2edef29d902e22203fa64b3fd234e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 09:46:32 +0200 Subject: [PATCH 249/609] Try remove locator overide for 1.7.7.8 --- .../pages/BO/shipping/carriers/create.ts | 6 ++-- .../8.2/pages/BO/shipping/carriers/create.ts | 32 ++----------------- 2 files changed, 5 insertions(+), 33 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts index eae428702..54516c485 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -6,10 +6,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr super(); // Shipping locations and costs - this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; - this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; + //this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; + //this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; // Summary - this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; + //this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; } } diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index f7af8ee88..c0f369e44 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,36 +100,8 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs -/* if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - }*/ - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 1000}); -/* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.freeShipping) { - //await this.setChecked(page, this.freeShippingToggle('off'), true); - await page.locator(this.freeShippingToggle('off')).click(); - }} - if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.freeShipping) { - //await this.setChecked(page, this.freeShippingToggle('on'), true); - await page.locator(this.freeShippingToggle('on')).click(); - }}*/ - - -/* if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - }*/ - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 1000}); -/* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.handlingCosts) { - //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); - await page.locator(this.addHandlingCostsToggle('off')).click(); - }} - if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.handlingCosts) { - //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); - await page.locator(this.addHandlingCostsToggle('on')).click(); - }}*/ + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From ee5b9551e6298a81372df74ba7a1e4f60eac7c42 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:11:22 +0200 Subject: [PATCH 250/609] Try click by label for carriers?? --- .../8.2/pages/BO/shipping/carriers/create.ts | 27 +++++-------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index c0f369e44..37c833124 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,8 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -197,25 +199,8 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary -/* if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - }*/ - - await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - -/* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.enable) { - //await this.setChecked(page, this.enableToggle('off'), true); - await page.locator(this.enableToggle('off')).click(); - } - } - if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.enable) { - //await this.setChecked(page, this.enableToggle('on'), true); - await page.locator(this.enableToggle('on')).click(); - - } - }*/ + //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); + await page.getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); From 5f6c6397c8ddacf5ce07f16a4048a7d9cb90adf0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:20:39 +0200 Subject: [PATCH 251/609] Try add locator --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 37c833124..104a2d504 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 54e776a3ef19a4026db1f716ce866e2670651509 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:29:18 +0200 Subject: [PATCH 252/609] Try other way ... --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 104a2d504..9ceaab7b9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('shipping_handling_cost').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 9f818ccfb91beb9ff1174beb7804abad1a01ca67 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:46:51 +0200 Subject: [PATCH 253/609] edit name error --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 9ceaab7b9..d0ce521a7 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,7 +101,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('shipping_handling_cost').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('shipping_handling').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); From bee9694d838a733a96fca9466d6efcb8da841c67 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:55:55 +0200 Subject: [PATCH 254/609] Try getByRole --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d0ce521a7..d8a2507fb 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('shipping_handling').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From e00ebdfe081b77a44e41c1d21b5477212df841a4 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 11:00:43 +0200 Subject: [PATCH 255/609] Add missing name to get by role --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d8a2507fb..fa805c1c7 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'shipping_handling'}).getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'is_free'}).getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -200,7 +200,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - await page.getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'active'}).getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); From ad923b546835816669f5d242b59ec426bab737d8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:15:17 +0200 Subject: [PATCH 256/609] Try conditions on ID# --- .../8.2/pages/BO/shipping/carriers/create.ts | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index fa805c1c7..91d6b61d9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,19 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio', {name: 'shipping_handling'}).getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + if (carrierData.freeShipping) { + await page.locator('#is_free_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.freeShipping) { + await page.locator('#is_free_off').setChecked(true, {timeout: 1500}); + } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio', {name: 'is_free'}).getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + if (carrierData.handlingCosts) { + await page.locator('#shipping_handling_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.handlingCosts) { + await page.locator('#shipping_handling_off').setChecked(true, {timeout: 1500}); + } if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -200,7 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - await page.getByRole('radio', {name: 'active'}).getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + if (carrierData.enable) { + await page.locator('#active_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.enable) { + await page.locator('#active_off').setChecked(true, {timeout: 1500}); + } await page.locator(this.finishButton).click(); From b892ebc304e57a6e7831e90759aa6cb554363226 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:24:36 +0200 Subject: [PATCH 257/609] Try force click --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 91d6b61d9..2833c2e99 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -102,17 +102,17 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.freeShipping) { - await page.locator('#is_free_on').setChecked(true, {timeout: 1500}); + await page.locator('#is_free_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.freeShipping) { - await page.locator('#is_free_off').setChecked(true, {timeout: 1500}); + await page.locator('#is_free_off').setChecked(true, {force: true, timeout: 1500}); } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.handlingCosts) { - await page.locator('#shipping_handling_on').setChecked(true, {timeout: 1500}); + await page.locator('#shipping_handling_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.handlingCosts) { - await page.locator('#shipping_handling_off').setChecked(true, {timeout: 1500}); + await page.locator('#shipping_handling_off').setChecked(true, {force: true, timeout: 1500}); } if (carrierData.billing === 'According to total price') { @@ -211,10 +211,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); if (carrierData.enable) { - await page.locator('#active_on').setChecked(true, {timeout: 1500}); + await page.locator('#active_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.enable) { - await page.locator('#active_off').setChecked(true, {timeout: 1500}); + await page.locator('#active_off').setChecked(true, {force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From 09ecffcc532b199d18d6d81f63a0fca82d6cce04 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:33:12 +0200 Subject: [PATCH 258/609] try click instead of set checked --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 2833c2e99..d6bbe6a35 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -102,17 +102,17 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.freeShipping) { - await page.locator('#is_free_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#is_free_on').click({force: true, timeout: 1500}); } if (!carrierData.freeShipping) { - await page.locator('#is_free_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#is_free_off').click({force: true, timeout: 1500}); } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.handlingCosts) { - await page.locator('#shipping_handling_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#shipping_handling_on').click({force: true, timeout: 1500}); } if (!carrierData.handlingCosts) { - await page.locator('#shipping_handling_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#shipping_handling_off').click({force: true, timeout: 1500}); } if (carrierData.billing === 'According to total price') { @@ -211,10 +211,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); if (carrierData.enable) { - await page.locator('#active_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#active_on').click({force: true, timeout: 1500}); } if (!carrierData.enable) { - await page.locator('#active_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#active_off').click({force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From 9f749a86d798eeb1f88758d407955814b851af20 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:51:29 +0200 Subject: [PATCH 259/609] force click enable --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d6bbe6a35..ec8caf154 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -210,13 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - if (carrierData.enable) { + if (carrierData.enable === true) { await page.locator('input#active_on').click({force: true, timeout: 1500}); } - if (!carrierData.enable) { + if (carrierData.enable === false) { await page.locator('input#active_off').click({force: true, timeout: 1500}); } - await page.locator(this.finishButton).click(); // Return successful message From 2262114426da65ec384f354d30d80f98d8b538d0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:57:05 +0200 Subject: [PATCH 260/609] Try inverse active on and off --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index ec8caf154..21dad15ef 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -210,11 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); + // TODO here something is weird when enable data is true we have to click active_off !!! even if in DOM yes = active_on if (carrierData.enable === true) { - await page.locator('input#active_on').click({force: true, timeout: 1500}); + await page.locator('input#active_off').click({force: true, timeout: 1500}); } if (carrierData.enable === false) { - await page.locator('input#active_off').click({force: true, timeout: 1500}); + await page.locator('input#active_on').click({force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From de56f4251b4217b57dfe21e1dbacda26d5115f02 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 15:00:47 +0200 Subject: [PATCH 261/609] Back to setChecked for enable button --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 21dad15ef..faee5fdb4 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -209,14 +209,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - // TODO here something is weird when enable data is true we have to click active_off !!! even if in DOM yes = active_on - if (carrierData.enable === true) { - await page.locator('input#active_off').click({force: true, timeout: 1500}); - } - if (carrierData.enable === false) { - await page.locator('input#active_on').click({force: true, timeout: 1500}); - } + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); // Return successful message From 8d4ec07e0817c707b1daf036fe30a348caf6597d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 16:13:17 +0200 Subject: [PATCH 262/609] Comment waitForResponse --- .../develop/pages/BO/customers/addresses/create.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index f685a6957..41c9ae8e7 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -103,14 +103,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI ): Promise { if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { + +/* if ('keyboard' in page) { await page.keyboard.press('Tab'); } if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { + await page.waitForResponse('**!/sell/customers/customer-information**', { timeout: 3000, }); - } + }*/ } await this.setValue(page, this.customerAddressdniInput, addressData.dni); await this.setValue(page, this.customerAddressAliasInput, addressData.alias); From d4e1587679c4ee835e028282ba990d2a6c63db83 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 16:25:26 +0200 Subject: [PATCH 263/609] Comment another -waitForResponse- --- src/versions/develop/pages/BO/orders/create.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 8c1287503..6cbf1832d 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -693,7 +693,8 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac // Add to cart await page.locator(this.addtoCartButton).click(); // Wait for the ajax call to be over (no visible feedback sadly) - await page.waitForResponse('**/sell/orders/carts/**/products**'); + // Disabled temporary + //await page.waitForResponse('**/sell/orders/carts/**/products**'); // The table visible is required, but on second addition it is always visible anyway await this.waitForVisibleSelector(page, this.productsTable); From 5cab6151f8eda86b8ac66cdd6e3a8a7d0d00afb7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 17:43:05 +0200 Subject: [PATCH 264/609] Add await to dialogListener --- src/pages/commonPage.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/commonPage.ts b/src/pages/commonPage.ts index 2a787520d..0492c4004 100644 --- a/src/pages/commonPage.ts +++ b/src/pages/commonPage.ts @@ -317,13 +317,13 @@ export default class CommonPage implements CommonPageInterface { * @return {Promise} */ async dialogListener(page: Page, accept: boolean = true, text: string = ''): Promise { - page.once('dialog', (dialog) => { + page.once('dialog', async (dialog) => { if (accept && text === '') { - dialog.accept(); + await dialog.accept(); } else if (text !== '') { - dialog.accept(text); + await dialog.accept(text); } else { - dialog.dismiss(); + await dialog.dismiss(); } }); } From ec538b3f1e2742c0f4ef67f65c8b4466a642d4af Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 3 Sep 2025 08:51:29 +0200 Subject: [PATCH 265/609] Try force remove dialog handler before handling new one --- src/pages/commonPage.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pages/commonPage.ts b/src/pages/commonPage.ts index 0492c4004..7c9a63e53 100644 --- a/src/pages/commonPage.ts +++ b/src/pages/commonPage.ts @@ -317,6 +317,7 @@ export default class CommonPage implements CommonPageInterface { * @return {Promise} */ async dialogListener(page: Page, accept: boolean = true, text: string = ''): Promise { + page.removeAllListeners?.('dialog'); page.once('dialog', async (dialog) => { if (accept && text === '') { await dialog.accept(); From ab6a020bef75e23aa9ac0ec4b694c8bba26a16cc Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Wed, 3 Sep 2025 11:01:41 +0200 Subject: [PATCH 266/609] boModuleManagerPage : Raise timeout for growl message --- src/versions/develop/pages/BO/modules/moduleManager/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/modules/moduleManager/index.ts b/src/versions/develop/pages/BO/modules/moduleManager/index.ts index ad23d7296..2465b51a0 100644 --- a/src/versions/develop/pages/BO/modules/moduleManager/index.ts +++ b/src/versions/develop/pages/BO/modules/moduleManager/index.ts @@ -324,7 +324,7 @@ class ModuleManagerPage extends BOBasePage implements ModuleManagerPageInterface await this.waitForVisibleSelector(page, this.bulkActionsModal); await this.waitForSelectorAndClick(page, this.bulkActionsModalConfirmButton); - return this.getGrowlMessageContent(page); + return this.getGrowlMessageContent(page, 20000); } /** From c5fea4ea2915b9429e0a0978a288f24529ba48aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 Sep 2025 13:30:41 +0000 Subject: [PATCH 267/609] Bump @typescript-eslint/parser from 8.38.0 to 8.41.0 Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.38.0 to 8.41.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.41.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-version: 8.41.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 241 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 227 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 65b7b15c4..017587328 100644 --- a/package-lock.json +++ b/package-lock.json @@ -683,15 +683,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.41.0.tgz", - "integrity": "sha512-gTtSdWX9xiMPA/7MV9STjJOOYtWwIJIYxkQxnSV1U3xcE+mnJSH3f6zI0RYP+ew66WSlZ5ed+h0VCxsvdC1jJg==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.42.0.tgz", + "integrity": "sha512-r1XG74QgShUgXph1BYseJ+KZd17bKQib/yF3SR+demvytiRXrwd12Blnz5eYGm8tXaeRdd4x88MlfwldHoudGg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.41.0", - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/typescript-estree": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0", + "@typescript-eslint/scope-manager": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/typescript-estree": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", "debug": "^4.3.4" }, "engines": { @@ -706,6 +706,142 @@ "typescript": ">=4.8.4 <6.0.0" } }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.42.0.tgz", + "integrity": "sha512-vfVpLHAhbPjilrabtOSNcUDmBboQNrJUiNAGoImkZKnMjs2TIcWG33s4Ds0wY3/50aZmTMqJa6PiwkwezaAklg==", + "dev": true, + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.42.0", + "@typescript-eslint/types": "^8.42.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.42.0.tgz", + "integrity": "sha512-51+x9o78NBAVgQzOPd17DkNTnIzJ8T/O2dmMBLoK9qbY0Gm52XJcdJcCl18ExBMiHo6jPMErUQWUv5RLE51zJw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.42.0.tgz", + "integrity": "sha512-kHeFUOdwAJfUmYKjR3CLgZSglGHjbNTi1H8sTYRYV2xX6eNz4RyJ2LIgsDLKf8Yi0/GL1WZAC/DgZBeBft8QAQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", + "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", + "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/project-service": "8.42.0", + "@typescript-eslint/tsconfig-utils": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", + "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.42.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, "node_modules/@typescript-eslint/project-service": { "version": "8.41.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.41.0.tgz", @@ -7218,16 +7354,93 @@ } }, "@typescript-eslint/parser": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.41.0.tgz", - "integrity": "sha512-gTtSdWX9xiMPA/7MV9STjJOOYtWwIJIYxkQxnSV1U3xcE+mnJSH3f6zI0RYP+ew66WSlZ5ed+h0VCxsvdC1jJg==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.42.0.tgz", + "integrity": "sha512-r1XG74QgShUgXph1BYseJ+KZd17bKQib/yF3SR+demvytiRXrwd12Blnz5eYGm8tXaeRdd4x88MlfwldHoudGg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.41.0", - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/typescript-estree": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0", + "@typescript-eslint/scope-manager": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/typescript-estree": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", "debug": "^4.3.4" + }, + "dependencies": { + "@typescript-eslint/project-service": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.42.0.tgz", + "integrity": "sha512-vfVpLHAhbPjilrabtOSNcUDmBboQNrJUiNAGoImkZKnMjs2TIcWG33s4Ds0wY3/50aZmTMqJa6PiwkwezaAklg==", + "dev": true, + "requires": { + "@typescript-eslint/tsconfig-utils": "^8.42.0", + "@typescript-eslint/types": "^8.42.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.42.0.tgz", + "integrity": "sha512-51+x9o78NBAVgQzOPd17DkNTnIzJ8T/O2dmMBLoK9qbY0Gm52XJcdJcCl18ExBMiHo6jPMErUQWUv5RLE51zJw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0" + } + }, + "@typescript-eslint/tsconfig-utils": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.42.0.tgz", + "integrity": "sha512-kHeFUOdwAJfUmYKjR3CLgZSglGHjbNTi1H8sTYRYV2xX6eNz4RyJ2LIgsDLKf8Yi0/GL1WZAC/DgZBeBft8QAQ==", + "dev": true, + "requires": {} + }, + "@typescript-eslint/types": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", + "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", + "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", + "dev": true, + "requires": { + "@typescript-eslint/project-service": "8.42.0", + "@typescript-eslint/tsconfig-utils": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", + "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.42.0", + "eslint-visitor-keys": "^4.2.1" + } + }, + "eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true + }, + "ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "requires": {} + } } }, "@typescript-eslint/project-service": { From dd66d6347d2fcb9c9bb89de96331acc235a07091 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Sep 2025 05:06:24 +0000 Subject: [PATCH 268/609] Bump @typescript-eslint/eslint-plugin from 8.41.0 to 8.42.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.41.0 to 8.42.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.42.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.42.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 377 ++++++++++------------------------------------ 1 file changed, 82 insertions(+), 295 deletions(-) diff --git a/package-lock.json b/package-lock.json index 017587328..cb654bfbc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -631,16 +631,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.41.0.tgz", - "integrity": "sha512-8fz6oa6wEKZrhXWro/S3n2eRJqlRcIa6SlDh59FXJ5Wp5XRZ8B9ixpJDcjadHq47hMx0u+HW6SNa6LjJQ6NLtw==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.42.0.tgz", + "integrity": "sha512-Aq2dPqsQkxHOLfb2OPv43RnIvfj05nw8v/6n3B2NABIPpHnjQnaLo9QGMTvml+tv4korl/Cjfrb/BYhoL8UUTQ==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.41.0", - "@typescript-eslint/type-utils": "8.41.0", - "@typescript-eslint/utils": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0", + "@typescript-eslint/scope-manager": "8.42.0", + "@typescript-eslint/type-utils": "8.42.0", + "@typescript-eslint/utils": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -654,7 +654,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.41.0", + "@typescript-eslint/parser": "^8.42.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } @@ -706,7 +706,7 @@ "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { + "node_modules/@typescript-eslint/project-service": { "version": "8.42.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.42.0.tgz", "integrity": "sha512-vfVpLHAhbPjilrabtOSNcUDmBboQNrJUiNAGoImkZKnMjs2TIcWG33s4Ds0wY3/50aZmTMqJa6PiwkwezaAklg==", @@ -727,7 +727,7 @@ "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "node_modules/@typescript-eslint/scope-manager": { "version": "8.42.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.42.0.tgz", "integrity": "sha512-51+x9o78NBAVgQzOPd17DkNTnIzJ8T/O2dmMBLoK9qbY0Gm52XJcdJcCl18ExBMiHo6jPMErUQWUv5RLE51zJw==", @@ -744,7 +744,7 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { + "node_modules/@typescript-eslint/tsconfig-utils": { "version": "8.42.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.42.0.tgz", "integrity": "sha512-kHeFUOdwAJfUmYKjR3CLgZSglGHjbNTi1H8sTYRYV2xX6eNz4RyJ2LIgsDLKf8Yi0/GL1WZAC/DgZBeBft8QAQ==", @@ -760,151 +760,15 @@ "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", - "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", - "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/project-service": "8.42.0", - "@typescript-eslint/tsconfig-utils": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "node_modules/@typescript-eslint/type-utils": { "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", - "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.42.0.tgz", + "integrity": "sha512-9KChw92sbPTYVFw3JLRH1ockhyR3zqqn9lQXol3/YbI6jVxzWoGcT3AsAW0mu1MY0gYtsXnUGV/AKpkAj5tVlQ==", "dev": true, "dependencies": { "@typescript-eslint/types": "8.42.0", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, - "node_modules/@typescript-eslint/project-service": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.41.0.tgz", - "integrity": "sha512-b8V9SdGBQzQdjJ/IO3eDifGpDBJfvrNTp2QD9P2BeqWTGrRibgfgIlBSw6z3b6R7dPzg752tOs4u/7yCLxksSQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.41.0", - "@typescript-eslint/types": "^8.41.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.41.0.tgz", - "integrity": "sha512-n6m05bXn/Cd6DZDGyrpXrELCPVaTnLdPToyhBoFkLIMznRUQUEQdSp96s/pcWSQdqOhrgR1mzJ+yItK7T+WPMQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.41.0.tgz", - "integrity": "sha512-TDhxYFPUYRFxFhuU5hTIJk+auzM/wKvWgoNYOPcOf6i4ReYlOoYN8q1dV5kOTjNQNJgzWN3TUUQMtlLOcUgdUw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.41.0.tgz", - "integrity": "sha512-63qt1h91vg3KsjVVonFJWjgSK7pZHSQFKH6uwqxAH9bBrsyRhO6ONoKyXxyVBzG1lJnFAJcKAcxLS54N1ee1OQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/typescript-estree": "8.41.0", - "@typescript-eslint/utils": "8.41.0", + "@typescript-eslint/typescript-estree": "8.42.0", + "@typescript-eslint/utils": "8.42.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -933,9 +797,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.41.0.tgz", - "integrity": "sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", + "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -946,15 +810,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.41.0.tgz", - "integrity": "sha512-D43UwUYJmGhuwHfY7MtNKRZMmfd8+p/eNSfFe6tH5mbVDto+VQCayeAt35rOx3Cs6wxD16DQtIKw/YXxt5E0UQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", + "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.41.0", - "@typescript-eslint/tsconfig-utils": "8.41.0", - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0", + "@typescript-eslint/project-service": "8.42.0", + "@typescript-eslint/tsconfig-utils": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -986,15 +850,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.41.0.tgz", - "integrity": "sha512-udbCVstxZ5jiPIXrdH+BZWnPatjlYwJuJkDA4Tbo3WyYLh8NvB+h/bKeSZHDOFKfphsZYJQqaFtLeXEqurQn1A==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.42.0.tgz", + "integrity": "sha512-JnIzu7H3RH5BrKC4NoZqRfmjqCIS1u3hGZltDYJgkVdqAezl4L9d1ZLw+36huCujtSBSAirGINF/S4UxOcR+/g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.41.0", - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/typescript-estree": "8.41.0" + "@typescript-eslint/scope-manager": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/typescript-estree": "8.42.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1009,12 +873,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.41.0.tgz", - "integrity": "sha512-+GeGMebMCy0elMNg67LRNoVnUFPIm37iu5CmHESVx56/9Jsfdpsvbv605DQ81Pi/x11IdKUsS5nzgTYbCQU9fg==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", + "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/types": "8.42.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7322,16 +7186,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.41.0.tgz", - "integrity": "sha512-8fz6oa6wEKZrhXWro/S3n2eRJqlRcIa6SlDh59FXJ5Wp5XRZ8B9ixpJDcjadHq47hMx0u+HW6SNa6LjJQ6NLtw==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.42.0.tgz", + "integrity": "sha512-Aq2dPqsQkxHOLfb2OPv43RnIvfj05nw8v/6n3B2NABIPpHnjQnaLo9QGMTvml+tv4korl/Cjfrb/BYhoL8UUTQ==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.41.0", - "@typescript-eslint/type-utils": "8.41.0", - "@typescript-eslint/utils": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0", + "@typescript-eslint/scope-manager": "8.42.0", + "@typescript-eslint/type-utils": "8.42.0", + "@typescript-eslint/utils": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7364,122 +7228,45 @@ "@typescript-eslint/typescript-estree": "8.42.0", "@typescript-eslint/visitor-keys": "8.42.0", "debug": "^4.3.4" - }, - "dependencies": { - "@typescript-eslint/project-service": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.42.0.tgz", - "integrity": "sha512-vfVpLHAhbPjilrabtOSNcUDmBboQNrJUiNAGoImkZKnMjs2TIcWG33s4Ds0wY3/50aZmTMqJa6PiwkwezaAklg==", - "dev": true, - "requires": { - "@typescript-eslint/tsconfig-utils": "^8.42.0", - "@typescript-eslint/types": "^8.42.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.42.0.tgz", - "integrity": "sha512-51+x9o78NBAVgQzOPd17DkNTnIzJ8T/O2dmMBLoK9qbY0Gm52XJcdJcCl18ExBMiHo6jPMErUQWUv5RLE51zJw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0" - } - }, - "@typescript-eslint/tsconfig-utils": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.42.0.tgz", - "integrity": "sha512-kHeFUOdwAJfUmYKjR3CLgZSglGHjbNTi1H8sTYRYV2xX6eNz4RyJ2LIgsDLKf8Yi0/GL1WZAC/DgZBeBft8QAQ==", - "dev": true, - "requires": {} - }, - "@typescript-eslint/types": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", - "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", - "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", - "dev": true, - "requires": { - "@typescript-eslint/project-service": "8.42.0", - "@typescript-eslint/tsconfig-utils": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", - "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.42.0", - "eslint-visitor-keys": "^4.2.1" - } - }, - "eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true - }, - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } } }, "@typescript-eslint/project-service": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.41.0.tgz", - "integrity": "sha512-b8V9SdGBQzQdjJ/IO3eDifGpDBJfvrNTp2QD9P2BeqWTGrRibgfgIlBSw6z3b6R7dPzg752tOs4u/7yCLxksSQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.42.0.tgz", + "integrity": "sha512-vfVpLHAhbPjilrabtOSNcUDmBboQNrJUiNAGoImkZKnMjs2TIcWG33s4Ds0wY3/50aZmTMqJa6PiwkwezaAklg==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.41.0", - "@typescript-eslint/types": "^8.41.0", + "@typescript-eslint/tsconfig-utils": "^8.42.0", + "@typescript-eslint/types": "^8.42.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.41.0.tgz", - "integrity": "sha512-n6m05bXn/Cd6DZDGyrpXrELCPVaTnLdPToyhBoFkLIMznRUQUEQdSp96s/pcWSQdqOhrgR1mzJ+yItK7T+WPMQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.42.0.tgz", + "integrity": "sha512-51+x9o78NBAVgQzOPd17DkNTnIzJ8T/O2dmMBLoK9qbY0Gm52XJcdJcCl18ExBMiHo6jPMErUQWUv5RLE51zJw==", "dev": true, "requires": { - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0" + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.41.0.tgz", - "integrity": "sha512-TDhxYFPUYRFxFhuU5hTIJk+auzM/wKvWgoNYOPcOf6i4ReYlOoYN8q1dV5kOTjNQNJgzWN3TUUQMtlLOcUgdUw==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.42.0.tgz", + "integrity": "sha512-kHeFUOdwAJfUmYKjR3CLgZSglGHjbNTi1H8sTYRYV2xX6eNz4RyJ2LIgsDLKf8Yi0/GL1WZAC/DgZBeBft8QAQ==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.41.0.tgz", - "integrity": "sha512-63qt1h91vg3KsjVVonFJWjgSK7pZHSQFKH6uwqxAH9bBrsyRhO6ONoKyXxyVBzG1lJnFAJcKAcxLS54N1ee1OQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.42.0.tgz", + "integrity": "sha512-9KChw92sbPTYVFw3JLRH1ockhyR3zqqn9lQXol3/YbI6jVxzWoGcT3AsAW0mu1MY0gYtsXnUGV/AKpkAj5tVlQ==", "dev": true, "requires": { - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/typescript-estree": "8.41.0", - "@typescript-eslint/utils": "8.41.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/typescript-estree": "8.42.0", + "@typescript-eslint/utils": "8.42.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7494,21 +7281,21 @@ } }, "@typescript-eslint/types": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.41.0.tgz", - "integrity": "sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", + "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.41.0.tgz", - "integrity": "sha512-D43UwUYJmGhuwHfY7MtNKRZMmfd8+p/eNSfFe6tH5mbVDto+VQCayeAt35rOx3Cs6wxD16DQtIKw/YXxt5E0UQ==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", + "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.41.0", - "@typescript-eslint/tsconfig-utils": "8.41.0", - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/visitor-keys": "8.41.0", + "@typescript-eslint/project-service": "8.42.0", + "@typescript-eslint/tsconfig-utils": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/visitor-keys": "8.42.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7527,24 +7314,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.41.0.tgz", - "integrity": "sha512-udbCVstxZ5jiPIXrdH+BZWnPatjlYwJuJkDA4Tbo3WyYLh8NvB+h/bKeSZHDOFKfphsZYJQqaFtLeXEqurQn1A==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.42.0.tgz", + "integrity": "sha512-JnIzu7H3RH5BrKC4NoZqRfmjqCIS1u3hGZltDYJgkVdqAezl4L9d1ZLw+36huCujtSBSAirGINF/S4UxOcR+/g==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.41.0", - "@typescript-eslint/types": "8.41.0", - "@typescript-eslint/typescript-estree": "8.41.0" + "@typescript-eslint/scope-manager": "8.42.0", + "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/typescript-estree": "8.42.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.41.0.tgz", - "integrity": "sha512-+GeGMebMCy0elMNg67LRNoVnUFPIm37iu5CmHESVx56/9Jsfdpsvbv605DQ81Pi/x11IdKUsS5nzgTYbCQU9fg==", + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", + "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", "dev": true, "requires": { - "@typescript-eslint/types": "8.41.0", + "@typescript-eslint/types": "8.42.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 37dcccdf25ed2e1dc5d3147e2365ba7b61dacdf9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Sep 2025 09:54:23 +0000 Subject: [PATCH 269/609] Bump typescript from 5.8.3 to 5.9.2 Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.3 to 5.9.2. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml) - [Commits](https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2) --- updated-dependencies: - dependency-name: typescript dependency-version: 5.9.2 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index cb654bfbc..860001e6f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6307,11 +6307,10 @@ } }, "node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", + "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", "dev": true, - "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -11151,9 +11150,9 @@ } }, "typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", + "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", "dev": true }, "unbox-primitive": { From c7a3df1cb718d6e8f3c7a0bc6fafc735c3d485d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Sep 2025 12:48:04 +0000 Subject: [PATCH 270/609] Bump dotenv from 17.2.1 to 17.2.2 Bumps [dotenv](https://github.com/motdotla/dotenv) from 17.2.1 to 17.2.2. - [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) - [Commits](https://github.com/motdotla/dotenv/compare/v17.2.1...v17.2.2) --- updated-dependencies: - dependency-name: dotenv dependency-version: 17.2.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 860001e6f..09d121edb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2016,9 +2016,9 @@ } }, "node_modules/dotenv": { - "version": "17.2.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.1.tgz", - "integrity": "sha512-kQhDYKZecqnM0fCnzI5eIv5L4cAe/iRI+HqMbO/hbRdTAeXDG+M9FjipUxNfbARuEg4iHIbhnhs78BCHNbSxEQ==", + "version": "17.2.2", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.2.tgz", + "integrity": "sha512-Sf2LSQP+bOlhKWWyhFsn0UsfdK/kCWRv1iuA2gXAwt3dyNabr6QSj00I2V10pidqz69soatm9ZwZvpQMTIOd5Q==", "engines": { "node": ">=12" }, @@ -8151,9 +8151,9 @@ } }, "dotenv": { - "version": "17.2.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.1.tgz", - "integrity": "sha512-kQhDYKZecqnM0fCnzI5eIv5L4cAe/iRI+HqMbO/hbRdTAeXDG+M9FjipUxNfbARuEg4iHIbhnhs78BCHNbSxEQ==" + "version": "17.2.2", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.2.tgz", + "integrity": "sha512-Sf2LSQP+bOlhKWWyhFsn0UsfdK/kCWRv1iuA2gXAwt3dyNabr6QSj00I2V10pidqz69soatm9ZwZvpQMTIOd5Q==" }, "dunder-proto": { "version": "1.0.1", From b0cfc1cab7a898b939dd9ea7aa226da9d2f84961 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Sep 2025 14:51:11 +0000 Subject: [PATCH 271/609] Bump @types/node from 24.1.0 to 24.3.1 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.1.0 to 24.3.1. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.3.1 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/package-lock.json b/package-lock.json index 09d121edb..501cdeea2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -610,11 +610,11 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.1.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", - "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", + "version": "24.3.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.3.1.tgz", + "integrity": "sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==", "dependencies": { - "undici-types": "~7.8.0" + "undici-types": "~7.10.0" } }, "node_modules/@types/semver": { @@ -6339,10 +6339,9 @@ } }, "node_modules/undici-types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", - "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", - "license": "MIT" + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz", + "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==" }, "node_modules/universalify": { "version": "0.2.0", @@ -7165,11 +7164,11 @@ "dev": true }, "@types/node": { - "version": "24.1.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", - "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", + "version": "24.3.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.3.1.tgz", + "integrity": "sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==", "requires": { - "undici-types": "~7.8.0" + "undici-types": "~7.10.0" } }, "@types/semver": { @@ -11168,9 +11167,9 @@ } }, "undici-types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", - "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==" + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz", + "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==" }, "universalify": { "version": "0.2.0", From bd7729be14ea886698098055116d2ad4c49f649a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 9 Sep 2025 17:39:21 +0000 Subject: [PATCH 272/609] Bump @types/semver from 7.7.0 to 7.7.1 Bumps [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver) from 7.7.0 to 7.7.1. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver) --- updated-dependencies: - dependency-name: "@types/semver" dependency-version: 7.7.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 501cdeea2..9a5f2c7fb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -618,11 +618,10 @@ } }, "node_modules/@types/semver": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", - "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", - "dev": true, - "license": "MIT" + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==", + "dev": true }, "node_modules/@types/trusted-types": { "version": "2.0.7", @@ -7172,9 +7171,9 @@ } }, "@types/semver": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", - "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==", "dev": true }, "@types/trusted-types": { From b1a641de6a08adde14671b81fa6b1ddbe8da8098 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Tue, 9 Sep 2025 23:02:22 +0000 Subject: [PATCH 273/609] `@data/demo/modules`: Update modules --- src/data/demo/modules.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data/demo/modules.ts b/src/data/demo/modules.ts index c6f63a2dd..588371bd8 100644 --- a/src/data/demo/modules.ts +++ b/src/data/demo/modules.ts @@ -58,7 +58,7 @@ export default { psFacetedSearch: new FakerModule({ tag: 'ps_facetedsearch', name: 'Faceted search', - versionCurrent: 'v4.0.0', + versionCurrent: 'v4.0.1', releaseZip: 'https://github.com/PrestaShop/ps_facetedsearch/releases/download/%version%/ps_facetedsearch.zip', }), psGdpr: new FakerModule({ From 5da7d14122e2833137c7ed1afd9e3be7174f219d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Sep 2025 07:51:49 +0000 Subject: [PATCH 274/609] Bump @s3pweb/keycloak-admin-client-cjs from 26.3.1 to 26.3.3 Bumps @s3pweb/keycloak-admin-client-cjs from 26.3.1 to 26.3.3. --- updated-dependencies: - dependency-name: "@s3pweb/keycloak-admin-client-cjs" dependency-version: 26.3.3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9a5f2c7fb..b25752dcd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -460,9 +460,9 @@ } }, "node_modules/@keycloak/keycloak-admin-client": { - "version": "26.3.1", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.1.tgz", - "integrity": "sha512-xgmT0Pkwz6k+K5zLXNggMJtQz6GisQfJ/ZR6grr09Hfedx98xUdxC6TKB1IGLyn0fXLszifHn2bHq+F+Ql109g==", + "version": "26.3.3", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.3.tgz", + "integrity": "sha512-gDwiB0o9N09f/OZY2dTMIuoiu99Rs/aFscN3yEfGbVfV6/DtaLxtLqfcD5G5C7/Sq+yNpqh1tMa4Ezfislcgkg==", "dependencies": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -548,11 +548,11 @@ "dev": true }, "node_modules/@s3pweb/keycloak-admin-client-cjs": { - "version": "26.3.1", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.1.tgz", - "integrity": "sha512-cozNqXxG/Q2MCcpcr7RB9J1bIA4DMw6YAl3axfQ+YGH3N3CUTtTEjeCoG/92ilAAtUtolcdBl+mcFA5LVQV0WQ==", + "version": "26.3.3", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.3.tgz", + "integrity": "sha512-zKRuYVj/zB6NV+2BujDuA1xWSJegMWqRbVk3IZo5UUot0/hviZctzIKllySZKFM1T6ON5Rg15vyXC1MhSG7trQ==", "dependencies": { - "@keycloak/keycloak-admin-client": "26.3.1" + "@keycloak/keycloak-admin-client": "26.3.3" } }, "node_modules/@socket.io/component-emitter": { @@ -7034,9 +7034,9 @@ } }, "@keycloak/keycloak-admin-client": { - "version": "26.3.1", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.1.tgz", - "integrity": "sha512-xgmT0Pkwz6k+K5zLXNggMJtQz6GisQfJ/ZR6grr09Hfedx98xUdxC6TKB1IGLyn0fXLszifHn2bHq+F+Ql109g==", + "version": "26.3.3", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.3.tgz", + "integrity": "sha512-gDwiB0o9N09f/OZY2dTMIuoiu99Rs/aFscN3yEfGbVfV6/DtaLxtLqfcD5G5C7/Sq+yNpqh1tMa4Ezfislcgkg==", "requires": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -7101,11 +7101,11 @@ "dev": true }, "@s3pweb/keycloak-admin-client-cjs": { - "version": "26.3.1", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.1.tgz", - "integrity": "sha512-cozNqXxG/Q2MCcpcr7RB9J1bIA4DMw6YAl3axfQ+YGH3N3CUTtTEjeCoG/92ilAAtUtolcdBl+mcFA5LVQV0WQ==", + "version": "26.3.3", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.3.tgz", + "integrity": "sha512-zKRuYVj/zB6NV+2BujDuA1xWSJegMWqRbVk3IZo5UUot0/hviZctzIKllySZKFM1T6ON5Rg15vyXC1MhSG7trQ==", "requires": { - "@keycloak/keycloak-admin-client": "26.3.1" + "@keycloak/keycloak-admin-client": "26.3.3" } }, "@socket.io/component-emitter": { From 034830278082101192301c711c3c36a58a1c1d9e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Sep 2025 09:40:16 +0000 Subject: [PATCH 275/609] Bump @playwright/test from 1.54.2 to 1.55.0 Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.54.2 to 1.55.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.54.2...v1.55.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.55.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/package-lock.json b/package-lock.json index b25752dcd..693d365a2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -528,11 +528,11 @@ } }, "node_modules/@playwright/test": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.2.tgz", - "integrity": "sha512-A+znathYxPf+72riFd1r1ovOLqsIIB0jKIoPjyK2kqEIe30/6jF6BC7QNluHuwUmsD2tv1XZVugN8GqfTMOxsA==", + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.0.tgz", + "integrity": "sha512-04IXzPwHrW69XusN/SIdDdKZBzMfOT9UNT/YiJit/xpy2VuAoB8NHc8Aplb96zsWDddLnbkPL3TsmrS04ZU2xQ==", "dependencies": { - "playwright": "1.54.2" + "playwright": "1.55.0" }, "bin": { "playwright": "cli.js" @@ -5021,11 +5021,11 @@ } }, "node_modules/playwright": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.2.tgz", - "integrity": "sha512-Hu/BMoA1NAdRUuulyvQC0pEqZ4vQbGfn8f7wPXcnqQmM+zct9UliKxsIkLNmz/ku7LElUNqmaiv1TG/aL5ACsw==", + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.0.tgz", + "integrity": "sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA==", "dependencies": { - "playwright-core": "1.54.2" + "playwright-core": "1.55.0" }, "bin": { "playwright": "cli.js" @@ -5038,9 +5038,9 @@ } }, "node_modules/playwright-core": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.2.tgz", - "integrity": "sha512-n5r4HFbMmWsB4twG7tJLDN9gmBUeSPcsBZiWSE4DnYz9mJMAFqr2ID7+eGC9kpEnxExJ1epttwR59LEWCk8mtA==", + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.0.tgz", + "integrity": "sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg==", "bin": { "playwright-core": "cli.js" }, @@ -7087,11 +7087,11 @@ } }, "@playwright/test": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.2.tgz", - "integrity": "sha512-A+znathYxPf+72riFd1r1ovOLqsIIB0jKIoPjyK2kqEIe30/6jF6BC7QNluHuwUmsD2tv1XZVugN8GqfTMOxsA==", + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.0.tgz", + "integrity": "sha512-04IXzPwHrW69XusN/SIdDdKZBzMfOT9UNT/YiJit/xpy2VuAoB8NHc8Aplb96zsWDddLnbkPL3TsmrS04ZU2xQ==", "requires": { - "playwright": "1.54.2" + "playwright": "1.55.0" } }, "@rtsao/scc": { @@ -10280,18 +10280,18 @@ "dev": true }, "playwright": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.2.tgz", - "integrity": "sha512-Hu/BMoA1NAdRUuulyvQC0pEqZ4vQbGfn8f7wPXcnqQmM+zct9UliKxsIkLNmz/ku7LElUNqmaiv1TG/aL5ACsw==", + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.0.tgz", + "integrity": "sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA==", "requires": { "fsevents": "2.3.2", - "playwright-core": "1.54.2" + "playwright-core": "1.55.0" } }, "playwright-core": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.2.tgz", - "integrity": "sha512-n5r4HFbMmWsB4twG7tJLDN9gmBUeSPcsBZiWSE4DnYz9mJMAFqr2ID7+eGC9kpEnxExJ1epttwR59LEWCk8mtA==" + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.0.tgz", + "integrity": "sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg==" }, "plimit-lit": { "version": "1.6.1", From 26e410f3abe288b594cadb7e56cf3d5a09cd0102 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:00:21 +0200 Subject: [PATCH 276/609] Add carriers for 1.7.7 --- src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts new file mode 100644 index 000000000..81ebe88aa --- /dev/null +++ b/src/versions/1.7.7/pages/BO/carriers/index.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; +import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; + + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; + } +} + +module.exports = new BOCarriersPage(); From 8ccece033979e5df35f82c1b845a6fc57c4cab82 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:17:12 +0200 Subject: [PATCH 277/609] Add condition to main carriers page --- src/pages/BO/shipping/carriers/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 126e21048..423962b7e 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -22,4 +22,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); +export default requirePage(); \ No newline at end of file From 9f1c25247c80fadf507c0d4b428afc1a1c38283d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:24:42 +0200 Subject: [PATCH 278/609] Move carriers folder to shipping folder --- src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ------------------ .../1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 2 files changed, 2 insertions(+), 18 deletions(-) delete mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts deleted file mode 100644 index 81ebe88aa..000000000 --- a/src/versions/1.7.7/pages/BO/carriers/index.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Import pages -import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; -import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; - - -class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { - /** - * @constructs - * Setting up texts and selectors to use in orders page - */ - constructor() { - super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; - } -} - -module.exports = new BOCarriersPage(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From b0ac71ec93d32823d16429a99e4b5903cfc06254 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:11:00 +0200 Subject: [PATCH 279/609] Add 1.7.7 version for addresses create --- src/pages/BO/shipping/carriers/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 423962b7e..126e21048 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -22,4 +22,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); \ No newline at end of file +export default requirePage(); From 1263e9c1ff6efe012905c5ea9fa2a78bc53b92c3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:59:10 +0200 Subject: [PATCH 280/609] Add page title and success message to 1.7.7 --- .../1.7.7/pages/BO/customers/addresses/create.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 07b98b822..1ec35207e 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -7,11 +7,16 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + constructor() { + super(); + + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); From 11d54d9d971803f9cd1fcc323f74857db4545c97 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 12:11:47 +0200 Subject: [PATCH 281/609] Fix description in jsdocs --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 43164f878d4bdc1da8774178239c52e111db364f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:19:42 +0200 Subject: [PATCH 282/609] Re-add carrier create page link --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From bc154a88fa6512c15262bb7ea2c16789980209b2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:36:05 +0200 Subject: [PATCH 283/609] implement version for addresses index --- .../1.7.7/pages/BO/customers/addresses/create.ts | 15 +++++++-------- .../1.7.7/pages/BO/customers/addresses/index.ts | 2 ++ .../8.2/pages/BO/customers/addresses/create.ts | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 1ec35207e..19dfe39b4 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -7,16 +7,15 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 519ce98b9..16f824136 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -13,7 +13,9 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; } } diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 30719d699..e56356228 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - // Title and messages + // Title and messages this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; } } From 9227bad5ebb036c659db3f5507e19c5b13cbb9ab Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:06:21 +0200 Subject: [PATCH 284/609] Add temp log for debug --- src/versions/1.7.7/pages/BO/orders/create.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 13a686d06..f02db44ee 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,5 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { @@ -10,6 +11,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } + + /** + * Choose addresses in form + * @param page {Page} Browser tab + * @param deliveryAddress {string} Delivery address to choose + * @param invoiceAddress {string} Invoice address to choose + * @returns {Promise} + */ + async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { + console.log(deliveryAddress); + await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); + await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + } } const boOrderCreatePage = new BOOrderCreatePage(); From f5e456ada8024ea927367a4c48fe20a36c49cdb5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:06:18 +0200 Subject: [PATCH 285/609] Override createOrder function for 1.7.7 version --- src/versions/1.7.7/pages/BO/orders/create.ts | 42 ++++++++++++++++---- 1 file changed, 35 insertions(+), 7 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index f02db44ee..75b9009db 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,4 +1,5 @@ // Import pages +import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; @@ -13,16 +14,43 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea } /** - * Choose addresses in form + * Create order with existing customer * @param page {Page} Browser tab - * @param deliveryAddress {string} Delivery address to choose - * @param invoiceAddress {string} Invoice address to choose + * @param orderToMake {FakerOrder} Order data to create + * @param isNewCustomer {boolean} True if the customer is new * @returns {Promise} */ - async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { - console.log(deliveryAddress); - await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); - await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { + // Choose customer + // If it's a new customer, the creation of customer should be done in test + // with add customer page + if (!isNewCustomer) { + await this.searchCustomer(page, orderToMake.customer.email); + } + + // Choose customer after search or creation + await this.chooseCustomer(page, 1); + + // Add products to carts + for (let i = 0; i < orderToMake.products.length; i++) { + await this.addProductToCart( + page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); + } + + // Choose address + await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); + + // Choose delivery options + await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); + + // Choose payment method + await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); + + // Set order status + await this.setOrderStatus(page, orderToMake.status); + + // Create the order + await this.clickAndWaitForURL(page, this.createOrderButton); } } From 25abe2cc6d715251c4f3bd20ce0ec26a544c4a7f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:26:02 +0200 Subject: [PATCH 286/609] Override paymentMethodSelect for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 75b9009db..17e11ba2e 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -3,6 +3,7 @@ import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; +import {modPsGdprBoMain} from '../../../../../index'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** From 9fa05bae8519c671eb1c53a5dc37dee85b3df5d6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:23:08 +0200 Subject: [PATCH 287/609] Override setPaymentMethod for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 17e11ba2e..5844e48e3 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,9 +1,8 @@ // Import pages -import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; -import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -import {modPsGdprBoMain} from '../../../../../index'; +// Imports from playwright +import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -53,6 +52,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Create the order await this.clickAndWaitForURL(page, this.createOrderButton); } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); +/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); + await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); + await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ + } } const boOrderCreatePage = new BOOrderCreatePage(); From f60cec419d7c7f626b85c11e97cb98d5f1ec4d5b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:28:55 +0200 Subject: [PATCH 288/609] Remove unwanted comments --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 5844e48e3..85b0c9356 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -61,9 +61,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); -/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); - await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); - await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ } } From f7c3aff5032339158cdb3b9815fdfd9d2097fcbc Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 13:57:15 +0200 Subject: [PATCH 289/609] Move selector override from 1.7.7 to 8.2 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 19dfe39b4..07b98b822 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -9,10 +9,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } From 7a90785f63f6106ba87d4d5b00442e6affcd3fd8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:08:00 +0200 Subject: [PATCH 290/609] Move carrier button selector override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 3c9d048d498bf13ba2277c1320ed992bdf716feb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:20:12 +0200 Subject: [PATCH 291/609] Move adress creation success message from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/customers/addresses/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 16f824136..519ce98b9 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -13,9 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; } } From 11f4a1155e5b20f1f2b0052ec238e2764edc4897 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:56:00 +0200 Subject: [PATCH 292/609] Move order setPaymentMethod override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/orders/create.ts | 1 + src/versions/1.7.8/pages/BO/orders/create.ts | 18 +++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 85b0c9356..93438f56a 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,4 +1,5 @@ // Import pages +import FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; // Imports from playwright diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index 16725be4c..1d4cb7029 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -8,22 +8,22 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } - /** + /** * Set payment method * @param page {Page} Browser tab * @param paymentMethodModuleName {string} Payment method to choose * @returns {Promise} */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); - } + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); + } } const boOrderCreatePage = new BOOrderCreatePage(); From 3a9c40d3bb26fac5975b176bb578b8dae0b8efef Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 10:44:58 +0200 Subject: [PATCH 293/609] Add login compatibility for 1.6.1.24 --- src/data/faker/cmsPage.ts | 2 +- src/pages/BO/login/index.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 21 +++++++++++++++++++ .../8.2/pages/BO/shipping/carriers/index.ts | 4 ++-- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../develop/pages/BO/searchResults.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 11 files changed, 47 insertions(+), 23 deletions(-) create mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index 9e2cf6c42..dea1cf4a1 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index the page */ + /** @type {boolean} True to index.ts the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index ed20f001e..a2759a9f3 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/login').loginPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts new file mode 100644 index 000000000..94bf43565 --- /dev/null +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {LoginPageInterface} from '@interfaces/BO/login'; +import {LoginPage} from '@versions/1.7.2/pages/BO/login'; + +/** + * Bo login page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOLoginVersion extends LoginPage implements LoginPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on login page + */ + constructor() { + super(); + } +} + +module.exports = new BOLoginVersion(); + diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 5d0c73525..a3e0747d2 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index. in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 66053f27a..937e704b0 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0bd20a8ad..0441624e0 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 449d1b95e..9e46a7b31 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index cc0d3261e..e66d8b17a 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index a87f8bdd7..774b69fff 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index" + * Click "Add missing products to the index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index" + * Click "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index" + * Click on the cron jon link for "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 59282a9c9..1d776ba58 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index) is added to a wishlist + * Check if a product (based on its index.ts) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index d666b2c44..9cd38f119 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 04ad86a0b4a1988287bf237990f16497fda59037 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:26:10 +0200 Subject: [PATCH 294/609] Remove unwanted changes --- src/data/faker/cmsPage.ts | 2 +- src/versions/1.6.1.24/pages/BO/login/index.ts | 9 ++++----- src/versions/1.7.8/pages/BO/orders/create.ts | 18 +++++++++--------- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 +++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../develop/pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 9 files changed, 33 insertions(+), 34 deletions(-) diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index dea1cf4a1..9e2cf6c42 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index.ts the page */ + /** @type {boolean} True to index the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts index 94bf43565..fbb75adbe 100644 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -8,14 +8,13 @@ import {LoginPage} from '@versions/1.7.2/pages/BO/login'; * @extends ProductsPage */ class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on login page */ - constructor() { - super(); - } + constructor() { + super(); + } } module.exports = new BOLoginVersion(); - diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index 1d4cb7029..16725be4c 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -8,22 +8,22 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } - /** + /** * Set payment method * @param page {Page} Browser tab * @param paymentMethodModuleName {string} Payment method to choose * @returns {Promise} */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); - } + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 937e704b0..66053f27a 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0441624e0..0bd20a8ad 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index e66d8b17a..cc0d3261e 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index 774b69fff..a87f8bdd7 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index.ts" + * Click "Add missing products to the index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index.ts" + * Click "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index.ts" + * Click on the cron jon link for "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 1d776ba58..59282a9c9 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index.ts) is added to a wishlist + * Check if a product (based on its index) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index 9cd38f119..d666b2c44 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 3763d0cb09baef73430092839c5f06fe58797801 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:28:06 +0200 Subject: [PATCH 295/609] Remove unwanted changes part2 --- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index a3e0747d2..55503ee50 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From 815ded50d3ac24f7fa18e31397e0739602fdd1dd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:30:23 +0200 Subject: [PATCH 296/609] Remove unwanted changes part3 --- src/versions/develop/pages/BO/searchResults.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 9e46a7b31..449d1b95e 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From 15067e004934d8a1951b1f05009cbddc83785841 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:52:13 +0200 Subject: [PATCH 297/609] Add compat requirement in pages --- src/pages/BO/shipping/carriers/create.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 20 ------------------- 2 files changed, 3 insertions(+), 20 deletions(-) delete mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index 4adcd9105..a6797ab73 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts deleted file mode 100644 index fbb75adbe..000000000 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Import pages -import type {LoginPageInterface} from '@interfaces/BO/login'; -import {LoginPage} from '@versions/1.7.2/pages/BO/login'; - -/** - * Bo login page, contains functions that can be used on the page - * @class - * @extends ProductsPage - */ -class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** - * @constructs - * Setting up texts and selectors to use on login page - */ - constructor() { - super(); - } -} - -module.exports = new BOLoginVersion(); From 2f11ca0457bab34b7203f51497690575432d36a4 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:00:38 +0200 Subject: [PATCH 298/609] Remove temporary carriersCreate --- src/pages/BO/shipping/carriers/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a6797ab73..4adcd9105 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; - } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } From 31de91f9650b7eba508bfdf8d317c44fb344eb60 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:09:12 +0200 Subject: [PATCH 299/609] Remove temporary login require --- src/pages/BO/login/index.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index a2759a9f3..ed20f001e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/login').loginPage; - } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } From d56f8778eb3fea7cc97fe27e0ce52c0cbb756af4 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:58:33 +0200 Subject: [PATCH 300/609] Try implementes carriers link to 1.6.1 --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1d40d1dd1..ddd896054 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -7,6 +7,8 @@ import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dash * @extends DashboardPage */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { + private shippingLink: string; + private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page @@ -19,6 +21,7 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; + this.carriersLink = '#subtab-AdminCarriers'; } } From af95682d5e822b12fcda395b0ee8a1aac236994b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:16:18 +0200 Subject: [PATCH 301/609] Correctly implementes Dashboard --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index ddd896054..3c8e14b06 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -7,8 +7,6 @@ import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dash * @extends DashboardPage */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { - private shippingLink: string; - private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page From 1dee8506f61628a8ca3c024cb3d5da2922abf746 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Sep 2025 05:16:15 +0000 Subject: [PATCH 302/609] Bump @typescript-eslint/eslint-plugin from 8.42.0 to 8.43.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.42.0 to 8.43.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.43.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.43.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 214 +++++++++++++++++++++++----------------------- 1 file changed, 107 insertions(+), 107 deletions(-) diff --git a/package-lock.json b/package-lock.json index 693d365a2..c5d1d4ba3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -630,16 +630,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.42.0.tgz", - "integrity": "sha512-Aq2dPqsQkxHOLfb2OPv43RnIvfj05nw8v/6n3B2NABIPpHnjQnaLo9QGMTvml+tv4korl/Cjfrb/BYhoL8UUTQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.43.0.tgz", + "integrity": "sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.42.0", - "@typescript-eslint/type-utils": "8.42.0", - "@typescript-eslint/utils": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/type-utils": "8.43.0", + "@typescript-eslint/utils": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -653,7 +653,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.42.0", + "@typescript-eslint/parser": "^8.43.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } @@ -682,15 +682,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.42.0.tgz", - "integrity": "sha512-r1XG74QgShUgXph1BYseJ+KZd17bKQib/yF3SR+demvytiRXrwd12Blnz5eYGm8tXaeRdd4x88MlfwldHoudGg==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.43.0.tgz", + "integrity": "sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/typescript-estree": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", "debug": "^4.3.4" }, "engines": { @@ -706,13 +706,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.42.0.tgz", - "integrity": "sha512-vfVpLHAhbPjilrabtOSNcUDmBboQNrJUiNAGoImkZKnMjs2TIcWG33s4Ds0wY3/50aZmTMqJa6PiwkwezaAklg==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.43.0.tgz", + "integrity": "sha512-htB/+D/BIGoNTQYffZw4uM4NzzuolCoaA/BusuSIcC8YjmBYQioew5VUZAYdAETPjeed0hqCaW7EHg+Robq8uw==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.42.0", - "@typescript-eslint/types": "^8.42.0", + "@typescript-eslint/tsconfig-utils": "^8.43.0", + "@typescript-eslint/types": "^8.43.0", "debug": "^4.3.4" }, "engines": { @@ -727,13 +727,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.42.0.tgz", - "integrity": "sha512-51+x9o78NBAVgQzOPd17DkNTnIzJ8T/O2dmMBLoK9qbY0Gm52XJcdJcCl18ExBMiHo6jPMErUQWUv5RLE51zJw==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.43.0.tgz", + "integrity": "sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0" + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -744,9 +744,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.42.0.tgz", - "integrity": "sha512-kHeFUOdwAJfUmYKjR3CLgZSglGHjbNTi1H8sTYRYV2xX6eNz4RyJ2LIgsDLKf8Yi0/GL1WZAC/DgZBeBft8QAQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.43.0.tgz", + "integrity": "sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -760,14 +760,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.42.0.tgz", - "integrity": "sha512-9KChw92sbPTYVFw3JLRH1ockhyR3zqqn9lQXol3/YbI6jVxzWoGcT3AsAW0mu1MY0gYtsXnUGV/AKpkAj5tVlQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.43.0.tgz", + "integrity": "sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/typescript-estree": "8.42.0", - "@typescript-eslint/utils": "8.42.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0", + "@typescript-eslint/utils": "8.43.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -796,9 +796,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", - "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.43.0.tgz", + "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -809,15 +809,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", - "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.43.0.tgz", + "integrity": "sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.42.0", - "@typescript-eslint/tsconfig-utils": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", + "@typescript-eslint/project-service": "8.43.0", + "@typescript-eslint/tsconfig-utils": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -849,15 +849,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.42.0.tgz", - "integrity": "sha512-JnIzu7H3RH5BrKC4NoZqRfmjqCIS1u3hGZltDYJgkVdqAezl4L9d1ZLw+36huCujtSBSAirGINF/S4UxOcR+/g==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.43.0.tgz", + "integrity": "sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/typescript-estree": "8.42.0" + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -872,12 +872,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", - "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.43.0.tgz", + "integrity": "sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/types": "8.43.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7183,16 +7183,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.42.0.tgz", - "integrity": "sha512-Aq2dPqsQkxHOLfb2OPv43RnIvfj05nw8v/6n3B2NABIPpHnjQnaLo9QGMTvml+tv4korl/Cjfrb/BYhoL8UUTQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.43.0.tgz", + "integrity": "sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.42.0", - "@typescript-eslint/type-utils": "8.42.0", - "@typescript-eslint/utils": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/type-utils": "8.43.0", + "@typescript-eslint/utils": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7215,55 +7215,55 @@ } }, "@typescript-eslint/parser": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.42.0.tgz", - "integrity": "sha512-r1XG74QgShUgXph1BYseJ+KZd17bKQib/yF3SR+demvytiRXrwd12Blnz5eYGm8tXaeRdd4x88MlfwldHoudGg==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.43.0.tgz", + "integrity": "sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/typescript-estree": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.42.0.tgz", - "integrity": "sha512-vfVpLHAhbPjilrabtOSNcUDmBboQNrJUiNAGoImkZKnMjs2TIcWG33s4Ds0wY3/50aZmTMqJa6PiwkwezaAklg==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.43.0.tgz", + "integrity": "sha512-htB/+D/BIGoNTQYffZw4uM4NzzuolCoaA/BusuSIcC8YjmBYQioew5VUZAYdAETPjeed0hqCaW7EHg+Robq8uw==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.42.0", - "@typescript-eslint/types": "^8.42.0", + "@typescript-eslint/tsconfig-utils": "^8.43.0", + "@typescript-eslint/types": "^8.43.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.42.0.tgz", - "integrity": "sha512-51+x9o78NBAVgQzOPd17DkNTnIzJ8T/O2dmMBLoK9qbY0Gm52XJcdJcCl18ExBMiHo6jPMErUQWUv5RLE51zJw==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.43.0.tgz", + "integrity": "sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0" + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.42.0.tgz", - "integrity": "sha512-kHeFUOdwAJfUmYKjR3CLgZSglGHjbNTi1H8sTYRYV2xX6eNz4RyJ2LIgsDLKf8Yi0/GL1WZAC/DgZBeBft8QAQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.43.0.tgz", + "integrity": "sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.42.0.tgz", - "integrity": "sha512-9KChw92sbPTYVFw3JLRH1ockhyR3zqqn9lQXol3/YbI6jVxzWoGcT3AsAW0mu1MY0gYtsXnUGV/AKpkAj5tVlQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.43.0.tgz", + "integrity": "sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/typescript-estree": "8.42.0", - "@typescript-eslint/utils": "8.42.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0", + "@typescript-eslint/utils": "8.43.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7278,21 +7278,21 @@ } }, "@typescript-eslint/types": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.42.0.tgz", - "integrity": "sha512-LdtAWMiFmbRLNP7JNeY0SqEtJvGMYSzfiWBSmx+VSZ1CH+1zyl8Mmw1TT39OrtsRvIYShjJWzTDMPWZJCpwBlw==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.43.0.tgz", + "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.42.0.tgz", - "integrity": "sha512-ku/uYtT4QXY8sl9EDJETD27o3Ewdi72hcXg1ah/kkUgBvAYHLwj2ofswFFNXS+FL5G+AGkxBtvGt8pFBHKlHsQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.43.0.tgz", + "integrity": "sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.42.0", - "@typescript-eslint/tsconfig-utils": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/visitor-keys": "8.42.0", + "@typescript-eslint/project-service": "8.43.0", + "@typescript-eslint/tsconfig-utils": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/visitor-keys": "8.43.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7311,24 +7311,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.42.0.tgz", - "integrity": "sha512-JnIzu7H3RH5BrKC4NoZqRfmjqCIS1u3hGZltDYJgkVdqAezl4L9d1ZLw+36huCujtSBSAirGINF/S4UxOcR+/g==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.43.0.tgz", + "integrity": "sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.42.0", - "@typescript-eslint/types": "8.42.0", - "@typescript-eslint/typescript-estree": "8.42.0" + "@typescript-eslint/scope-manager": "8.43.0", + "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/typescript-estree": "8.43.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.42.0.tgz", - "integrity": "sha512-3WbiuzoEowaEn8RSnhJBrxSwX8ULYE9CXaPepS2C2W3NSA5NNIvBaslpBSBElPq0UGr0xVJlXFWOAKIkyylydQ==", + "version": "8.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.43.0.tgz", + "integrity": "sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==", "dev": true, "requires": { - "@typescript-eslint/types": "8.42.0", + "@typescript-eslint/types": "8.43.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 627f2a320689388710958fa303cdb0696ce7134a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Sep 2025 09:04:00 +0000 Subject: [PATCH 303/609] Bump @types/node from 24.3.1 to 24.4.0 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.3.1 to 24.4.0. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.4.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index c5d1d4ba3..10ba0a35e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -610,11 +610,11 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.3.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.3.1.tgz", - "integrity": "sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==", + "version": "24.4.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.4.0.tgz", + "integrity": "sha512-gUuVEAK4/u6F9wRLznPUU4WGUacSEBDPoC2TrBkw3GAnOLHBL45QdfHOXp1kJ4ypBGLxTOB+t7NJLpKoC3gznQ==", "dependencies": { - "undici-types": "~7.10.0" + "undici-types": "~7.11.0" } }, "node_modules/@types/semver": { @@ -6338,9 +6338,9 @@ } }, "node_modules/undici-types": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz", - "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==" + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.11.0.tgz", + "integrity": "sha512-kt1ZriHTi7MU+Z/r9DOdAI3ONdaR3M3csEaRc6ewa4f4dTvX4cQCbJ4NkEn0ohE4hHtq85+PhPSTY+pO/1PwgA==" }, "node_modules/universalify": { "version": "0.2.0", @@ -7163,11 +7163,11 @@ "dev": true }, "@types/node": { - "version": "24.3.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.3.1.tgz", - "integrity": "sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==", + "version": "24.4.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.4.0.tgz", + "integrity": "sha512-gUuVEAK4/u6F9wRLznPUU4WGUacSEBDPoC2TrBkw3GAnOLHBL45QdfHOXp1kJ4ypBGLxTOB+t7NJLpKoC3gznQ==", "requires": { - "undici-types": "~7.10.0" + "undici-types": "~7.11.0" } }, "@types/semver": { @@ -11166,9 +11166,9 @@ } }, "undici-types": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.10.0.tgz", - "integrity": "sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==" + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.11.0.tgz", + "integrity": "sha512-kt1ZriHTi7MU+Z/r9DOdAI3ONdaR3M3csEaRc6ewa4f4dTvX4cQCbJ4NkEn0ohE4hHtq85+PhPSTY+pO/1PwgA==" }, "universalify": { "version": "0.2.0", From 6f4c8164f6920100f9cfe994545d4e353614cde8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:59:14 +0200 Subject: [PATCH 304/609] Override createEditAdress --- .../pages/BO/customers/addresses/create.ts | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..1a7f262a6 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,6 +2,8 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; +import testContext from '@utils/test'; +import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -101,15 +103,18 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { + const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); + if (semver.gt(psVersion, '7.0.0')) { + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); + } } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From 2904b65f44c4372211cb327a5229ab21f29906ff Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:04:18 +0200 Subject: [PATCH 305/609] Total override createEditAddress for 1.6 --- .../pages/BO/customers/addresses/create.ts | 1 + .../pages/BO/customers/addresses/create.ts | 19 +++++++------------ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 0c53c68d2..98fa0e51b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -3,6 +3,7 @@ import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import type {Frame, Page} from '@playwright/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; +import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7f262a6..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,8 +2,6 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; -import testContext from '@utils/test'; -import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -103,18 +101,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { - const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if (semver.gt(psVersion, '7.0.0')) { - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); - } + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From 5fcbf4e1f49f5d9031b0e4e8a542bfedd9852817 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:07:47 +0200 Subject: [PATCH 306/609] Add missing locator --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 98fa0e51b..0c53c68d2 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -3,7 +3,6 @@ import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import type {Frame, Page} from '@playwright/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; -import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; From 04a3424cb783c5379735ba8f27e4c9a87394dcbb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:16:44 +0200 Subject: [PATCH 307/609] Update alert block locators --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 2 ++ src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 0c53c68d2..62461ab72 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,6 +12,8 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Alert Text diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c02e580f6..93c34a89b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -17,6 +17,11 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; } } From 704d9cf51fd53707bd90adecc9a5783e01af15d5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:18:39 +0200 Subject: [PATCH 308/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 2 -- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 62461ab72..0c53c68d2 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,8 +12,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Alert Text diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 93c34a89b..d8e33b18d 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.successfulCreationMessage = '× Successful creation'; + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From 79d6996b442875ca43cd813b490366b15c483411 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:27:44 +0200 Subject: [PATCH 309/609] Update success block --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d8e33b18d..c7f3a47f4 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,8 +13,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; @@ -23,6 +21,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.alertTextBlock = `${this.alertBlock}`; this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From 4f28f880b54c5444defa10773a64ceb1ebc59a45 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:32:38 +0200 Subject: [PATCH 310/609] Override save and getSuccessTxt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c7f3a47f4..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,12 +16,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; - // Alert Text - this.alertBlock = 'div.alert'; - this.alertTextBlock = `${this.alertBlock}`; - this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; - this.alertSuccessBlock = `${this.alertBlock}.alert-success`; - this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From 55b4621cb73254821464f9b964733d17d7943829 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:35:20 +0200 Subject: [PATCH 311/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..c02e580f6 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = '× Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From 0627bd1b1d58dcc3462ce614d6188f2cfe08f21e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:09:24 +0200 Subject: [PATCH 312/609] Add OrderParentLink for 1.6 --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 3c8e14b06..1d40d1dd1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -19,7 +19,6 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; - this.carriersLink = '#subtab-AdminCarriers'; } } From 11316c24a372571ccf5825382ca0dc5b7cafec62 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:27:30 +0200 Subject: [PATCH 313/609] Update pdfjs version to try remove unwanted warning logs --- package-lock.json | 1410 +++++++++++++++++++++++++++++++-------------- package.json | 2 +- 2 files changed, 987 insertions(+), 425 deletions(-) diff --git a/package-lock.json b/package-lock.json index d8c689c53..e7947237c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^3.6.172", + "pdfjs-dist": "^4.10.38", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" @@ -53,6 +53,18 @@ "node": ">=0.10.0" } }, + "node_modules/@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "dependencies": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, "node_modules/@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -242,6 +254,111 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "dependencies": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", @@ -478,6 +595,7 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, + "peer": true, "dependencies": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -493,6 +611,177 @@ "node-pre-gyp": "bin/node-pre-gyp" } }, + "node_modules/@napi-rs/canvas": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", + "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "optional": true, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@napi-rs/canvas-android-arm64": "0.1.74", + "@napi-rs/canvas-darwin-arm64": "0.1.74", + "@napi-rs/canvas-darwin-x64": "0.1.74", + "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", + "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", + "@napi-rs/canvas-linux-arm64-musl": "0.1.74", + "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-musl": "0.1.74", + "@napi-rs/canvas-win32-x64-msvc": "0.1.74" + } + }, + "node_modules/@napi-rs/canvas-android-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", + "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-darwin-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", + "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-darwin-x64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", + "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm-gnueabihf": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", + "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", + "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", + "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-riscv64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", + "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", + "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", + "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-win32-x64-msvc": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", + "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -922,7 +1211,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true + "optional": true, + "peer": true }, "node_modules/accepts": { "version": "1.3.8", @@ -975,6 +1265,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, + "peer": true, "dependencies": { "debug": "4" }, @@ -1033,10 +1324,11 @@ } }, "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "optional": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "optional": true, + "peer": true }, "node_modules/are-we-there-yet": { "version": "2.0.0", @@ -1044,6 +1336,7 @@ "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -1439,21 +1732,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/cfb": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", @@ -1519,15 +1797,6 @@ "node": ">= 6" } }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "engines": { - "node": ">=10" - } - }, "node_modules/codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -1556,6 +1825,7 @@ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "optional": true, + "peer": true, "bin": { "color-support": "bin.js" } @@ -1645,7 +1915,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/content-disposition": { "version": "0.5.4", @@ -1723,16 +1994,22 @@ } }, "node_modules/cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", "dependencies": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" }, "engines": { "node": ">=18" } }, + "node_modules/cssstyle/node_modules/rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" + }, "node_modules/csv-writer": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/csv-writer/-/csv-writer-1.6.0.tgz", @@ -1750,6 +2027,37 @@ "node": ">=18" } }, + "node_modules/data-urls/node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/data-urls/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/data-urls/node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", @@ -1821,21 +2129,9 @@ } }, "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" - }, - "node_modules/decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "dependencies": { - "mimic-response": "^2.0.0" - }, - "engines": { - "node": ">=8" - } + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, "node_modules/deep-is": { "version": "0.1.4", @@ -1889,7 +2185,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/depd": { "version": "2.0.0", @@ -1909,10 +2206,11 @@ } }, "node_modules/detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -2052,7 +2350,8 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true + "optional": true, + "peer": true }, "node_modules/encodeurl": { "version": "2.0.0", @@ -2122,6 +2421,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, "engines": { "node": ">=0.12" }, @@ -3153,6 +3453,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, + "peer": true, "dependencies": { "minipass": "^3.0.0" }, @@ -3165,6 +3466,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -3236,6 +3538,7 @@ "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -3523,7 +3826,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/hasown": { "version": "2.0.2", @@ -3608,9 +3912,9 @@ } }, "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "engines": { "node": ">= 14" } @@ -3620,6 +3924,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, + "peer": true, "dependencies": { "agent-base": "6", "debug": "4" @@ -3893,6 +4198,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -4182,72 +4488,13 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "engines": { - "node": ">= 14" - } - }, - "node_modules/jsdom/node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" }, "engines": { "node": ">=4" @@ -4339,6 +4586,11 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/maildev": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", @@ -4367,6 +4619,30 @@ "node": ">=18.0.0" } }, + "node_modules/maildev/node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/maildev/node_modules/canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "hasInstallScript": true, + "optional": true, + "peer": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/maildev/node_modules/commander": { "version": "12.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", @@ -4375,11 +4651,132 @@ "node": ">=18" } }, + "node_modules/maildev/node_modules/decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "peer": true, + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/maildev/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/maildev/node_modules/jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "dependencies": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/maildev/node_modules/mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/maildev/node_modules/simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "optional": true, + "peer": true, + "dependencies": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/maildev/node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/maildev/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/maildev/node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, + "peer": true, "dependencies": { "semver": "^6.0.0" }, @@ -4395,6 +4792,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "optional": true, + "peer": true, "bin": { "semver": "bin/semver.js" } @@ -4490,18 +4888,6 @@ "node": ">= 0.6" } }, - "node_modules/mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -4532,6 +4918,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -4541,6 +4928,7 @@ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, + "peer": true, "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -4554,6 +4942,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -4566,6 +4955,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "optional": true, + "peer": true, "bin": { "mkdirp": "bin/cmd.js" }, @@ -4592,10 +4982,11 @@ } }, "node_modules/nan": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", - "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==", - "optional": true + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", + "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", + "optional": true, + "peer": true }, "node_modules/natural-compare": { "version": "1.4.0", @@ -4616,6 +5007,7 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, + "peer": true, "dependencies": { "whatwg-url": "^5.0.0" }, @@ -4631,28 +5023,6 @@ } } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/nodemailer": { "version": "6.9.16", "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.16.tgz", @@ -4666,6 +5036,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, + "peer": true, "dependencies": { "abbrev": "1" }, @@ -4691,6 +5062,7 @@ "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -4699,9 +5071,9 @@ } }, "node_modules/nwsapi": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.16.tgz", - "integrity": "sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==" + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" }, "node_modules/object-assign": { "version": "4.1.1", @@ -4924,16 +5296,27 @@ } }, "node_modules/parse5": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz", - "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "dependencies": { - "entities": "^4.5.0" + "entities": "^6.0.0" }, "funding": { "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/parse5/node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -4989,27 +5372,15 @@ "node": ">=8" } }, - "node_modules/path2d-polyfill": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", - "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==", - "engines": { - "node": ">=8" - } - }, "node_modules/pdfjs-dist": { - "version": "3.6.172", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.6.172.tgz", - "integrity": "sha512-bfOhCg+S9DXh/ImWhWYTOiq3aVMFSCvzGiBzsIJtdMC71kVWDBw7UXr32xh0y56qc5wMVylIeqV3hBaRsu+e+w==", - "dependencies": { - "path2d-polyfill": "^2.0.1", - "web-streams-polyfill": "^3.2.1" - }, + "version": "4.10.38", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", + "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", "engines": { - "node": ">=16" + "node": ">=20" }, "optionalDependencies": { - "canvas": "^2.11.2" + "@napi-rs/canvas": "^0.1.65" } }, "node_modules/picomatch": { @@ -5208,6 +5579,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5547,7 +5919,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true + "optional": true, + "peer": true }, "node_modules/set-function-length": { "version": "1.2.2", @@ -5699,7 +6072,8 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/simple-concat": { "version": "1.0.1", @@ -5719,18 +6093,8 @@ "url": "https://feross.org/support" } ], - "optional": true - }, - "node_modules/simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "dependencies": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } + "peer": true }, "node_modules/slash": { "version": "3.0.0", @@ -5859,6 +6223,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, + "peer": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -5868,6 +6233,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, + "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -6014,6 +6380,7 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, + "peer": true, "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -6026,6 +6393,16 @@ "node": ">=10" } }, + "node_modules/tar/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -6076,15 +6453,11 @@ } }, "node_modules/tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true, + "peer": true }, "node_modules/ts-api-utils": { "version": "1.3.0", @@ -6404,7 +6777,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true + "optional": true, + "peer": true }, "node_modules/utils-merge": { "version": "1.0.1", @@ -6448,21 +6822,12 @@ "node": ">=18" } }, - "node_modules/web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", - "engines": { - "node": ">= 8" - } - }, "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "engines": { - "node": ">=12" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true, + "peer": true }, "node_modules/whatwg-encoding": { "version": "3.1.1", @@ -6495,15 +6860,14 @@ } }, "node_modules/whatwg-url": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", - "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "peer": true, "dependencies": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "node_modules/which": { @@ -6615,6 +6979,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, + "peer": true, "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -6647,9 +7012,9 @@ "devOptional": true }, "node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", "engines": { "node": ">=10.0.0" }, @@ -6708,7 +7073,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true + "optional": true, + "peer": true }, "node_modules/yn": { "version": "3.1.1", @@ -6739,6 +7105,18 @@ "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", "dev": true }, + "@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "requires": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, "@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -6885,6 +7263,37 @@ } } }, + "@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==" + }, + "@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "requires": {} + }, + "@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "requires": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + } + }, + "@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "requires": {} + }, + "@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==" + }, "@eslint-community/eslint-utils": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", @@ -7056,6 +7465,7 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, + "peer": true, "requires": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -7068,6 +7478,84 @@ "tar": "^6.1.11" } }, + "@napi-rs/canvas": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", + "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "optional": true, + "requires": { + "@napi-rs/canvas-android-arm64": "0.1.74", + "@napi-rs/canvas-darwin-arm64": "0.1.74", + "@napi-rs/canvas-darwin-x64": "0.1.74", + "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", + "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", + "@napi-rs/canvas-linux-arm64-musl": "0.1.74", + "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-musl": "0.1.74", + "@napi-rs/canvas-win32-x64-msvc": "0.1.74" + } + }, + "@napi-rs/canvas-android-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", + "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", + "optional": true + }, + "@napi-rs/canvas-darwin-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", + "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", + "optional": true + }, + "@napi-rs/canvas-darwin-x64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", + "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", + "optional": true + }, + "@napi-rs/canvas-linux-arm-gnueabihf": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", + "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", + "optional": true + }, + "@napi-rs/canvas-linux-arm64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", + "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", + "optional": true + }, + "@napi-rs/canvas-linux-arm64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", + "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", + "optional": true + }, + "@napi-rs/canvas-linux-riscv64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", + "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", + "optional": true + }, + "@napi-rs/canvas-linux-x64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", + "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", + "optional": true + }, + "@napi-rs/canvas-linux-x64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", + "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", + "optional": true + }, + "@napi-rs/canvas-win32-x64-msvc": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", + "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", + "optional": true + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -7363,7 +7851,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true + "optional": true, + "peer": true }, "accepts": { "version": "1.3.8", @@ -7402,6 +7891,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, + "peer": true, "requires": { "debug": "4" } @@ -7444,16 +7934,18 @@ } }, "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "optional": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "optional": true, + "peer": true }, "are-we-there-yet": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "optional": true, + "peer": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -7737,17 +8229,6 @@ "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==" }, - "canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "optional": true, - "requires": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - } - }, "cfb": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", @@ -7795,12 +8276,6 @@ } } }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true - }, "codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -7825,7 +8300,8 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "optional": true + "optional": true, + "peer": true }, "combined-stream": { "version": "1.0.8", @@ -7899,7 +8375,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true + "optional": true, + "peer": true }, "content-disposition": { "version": "0.5.4", @@ -7956,11 +8433,19 @@ } }, "cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", "requires": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" + }, + "dependencies": { + "rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" + } } }, "csv-writer": { @@ -7975,6 +8460,30 @@ "requires": { "whatwg-mimetype": "^4.0.0", "whatwg-url": "^14.0.0" + }, + "dependencies": { + "tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "requires": { + "punycode": "^2.3.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "requires": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + } + } } }, "data-view-buffer": { @@ -8019,18 +8528,9 @@ } }, "decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" - }, - "decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "requires": { - "mimic-response": "^2.0.0" - } + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, "deep-is": { "version": "0.1.4", @@ -8069,7 +8569,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true + "optional": true, + "peer": true }, "depd": { "version": "2.0.0", @@ -8082,10 +8583,11 @@ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" }, "detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", - "optional": true + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "optional": true, + "peer": true }, "diff": { "version": "4.0.2", @@ -8180,7 +8682,8 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true + "optional": true, + "peer": true }, "encodeurl": { "version": "2.0.0", @@ -8225,7 +8728,8 @@ "entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true }, "es-abstract": { "version": "1.24.0", @@ -9004,6 +9508,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, + "peer": true, "requires": { "minipass": "^3.0.0" }, @@ -9013,6 +9518,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "requires": { "yallist": "^4.0.0" } @@ -9061,6 +9567,7 @@ "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "optional": true, + "peer": true, "requires": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -9256,7 +9763,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true + "optional": true, + "peer": true }, "hasown": { "version": "2.0.2", @@ -9316,9 +9824,9 @@ }, "dependencies": { "agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==" + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" } } }, @@ -9327,6 +9835,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, + "peer": true, "requires": { "agent-base": "6", "debug": "4" @@ -9505,7 +10014,8 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "optional": true + "optional": true, + "peer": true }, "is-generator-function": { "version": "1.1.0", @@ -9689,50 +10199,6 @@ "argparse": "^2.0.1" } }, - "jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "requires": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "dependencies": { - "agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==" - }, - "https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "requires": { - "agent-base": "^7.1.2", - "debug": "4" - } - } - } - }, "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -9810,6 +10276,11 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "maildev": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", @@ -9832,10 +10303,115 @@ "wildstring": "1.0.9" }, "dependencies": { + "agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" + }, + "canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "optional": true, + "peer": true, + "requires": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + } + }, "commander": { "version": "12.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==" + }, + "decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "peer": true, + "requires": { + "mimic-response": "^2.0.0" + } + }, + "https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "requires": { + "agent-base": "^7.1.2", + "debug": "4" + } + }, + "jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "requires": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + } + }, + "mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "peer": true + }, + "simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "optional": true, + "peer": true, + "requires": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "requires": { + "punycode": "^2.3.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "requires": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + } } } }, @@ -9844,6 +10420,7 @@ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, + "peer": true, "requires": { "semver": "^6.0.0" }, @@ -9852,7 +10429,8 @@ "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "optional": true + "optional": true, + "peer": true } } }, @@ -9916,12 +10494,6 @@ "mime-db": "1.52.0" } }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true - }, "minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -9941,13 +10513,15 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "optional": true + "optional": true, + "peer": true }, "minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, + "peer": true, "requires": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -9958,6 +10532,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "requires": { "yallist": "^4.0.0" } @@ -9968,7 +10543,8 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true + "optional": true, + "peer": true }, "ms": { "version": "2.1.2", @@ -9982,10 +10558,11 @@ "dev": true }, "nan": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", - "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==", - "optional": true + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", + "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", + "optional": true, + "peer": true }, "natural-compare": { "version": "1.4.0", @@ -10003,32 +10580,9 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, + "peer": true, "requires": { "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } } }, "nodemailer": { @@ -10041,6 +10595,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, + "peer": true, "requires": { "abbrev": "1" } @@ -10056,6 +10611,7 @@ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "optional": true, + "peer": true, "requires": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -10064,9 +10620,9 @@ } }, "nwsapi": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.16.tgz", - "integrity": "sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==" + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" }, "object-assign": { "version": "4.1.1", @@ -10219,11 +10775,18 @@ } }, "parse5": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz", - "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "requires": { - "entities": "^4.5.0" + "entities": "^6.0.0" + }, + "dependencies": { + "entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==" + } } }, "parseurl": { @@ -10266,19 +10829,12 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, - "path2d-polyfill": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", - "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==" - }, "pdfjs-dist": { - "version": "3.6.172", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.6.172.tgz", - "integrity": "sha512-bfOhCg+S9DXh/ImWhWYTOiq3aVMFSCvzGiBzsIJtdMC71kVWDBw7UXr32xh0y56qc5wMVylIeqV3hBaRsu+e+w==", + "version": "4.10.38", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", + "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", "requires": { - "canvas": "^2.11.2", - "path2d-polyfill": "^2.0.1", - "web-streams-polyfill": "^3.2.1" + "@napi-rs/canvas": "^0.1.65" } }, "picomatch": { @@ -10405,6 +10961,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, + "peer": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -10631,7 +11188,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true + "optional": true, + "peer": true }, "set-function-length": { "version": "1.2.2", @@ -10738,24 +11296,15 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true + "optional": true, + "peer": true }, "simple-concat": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "optional": true - }, - "simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } + "peer": true }, "slash": { "version": "3.0.0", @@ -10849,6 +11398,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, + "peer": true, "requires": { "safe-buffer": "~5.2.0" } @@ -10858,6 +11408,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, + "peer": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -10953,6 +11504,7 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, + "peer": true, "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -10960,6 +11512,15 @@ "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" + }, + "dependencies": { + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "peer": true + } } }, "text-table": { @@ -11000,12 +11561,11 @@ } }, "tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "requires": { - "punycode": "^2.3.1" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true, + "peer": true }, "ts-api-utils": { "version": "1.3.0", @@ -11220,7 +11780,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true + "optional": true, + "peer": true }, "utils-merge": { "version": "1.0.1", @@ -11255,15 +11816,12 @@ "xml-name-validator": "^5.0.0" } }, - "web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==" - }, "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true, + "peer": true }, "whatwg-encoding": { "version": "3.1.1", @@ -11289,12 +11847,14 @@ "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==" }, "whatwg-url": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", - "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "peer": true, "requires": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "which": { @@ -11372,6 +11932,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, + "peer": true, "requires": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -11398,9 +11959,9 @@ "devOptional": true }, "ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", "requires": {} }, "xlsx": { @@ -11436,7 +11997,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true + "optional": true, + "peer": true }, "yn": { "version": "3.1.1", diff --git a/package.json b/package.json index 225da52f6..a63031987 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^3.6.172", + "pdfjs-dist": "^4.10.38", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From 44dbf9e43fe1e0b0a65100c19e2b4eee05e99a8e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:30:20 +0200 Subject: [PATCH 314/609] Rollback --- package-lock.json | 6886 +++++---------------------------------------- package.json | 2 +- 2 files changed, 756 insertions(+), 6132 deletions(-) diff --git a/package-lock.json b/package-lock.json index e7947237c..8b3f2eead 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,7 +1,7 @@ { "name": "@prestashop-core/ui-testing", "version": "0.0.12", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { @@ -21,7 +21,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^4.10.38", + "pdfjs-dist": "^3.6.172", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" @@ -44,15 +44,6 @@ "typescript": "^5.3.3" } }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@asamuzakjp/css-color": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", @@ -66,116 +57,70 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", + "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/parser": "^7.28.0", + "@babel/types": "^7.28.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "dev": true, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "node_modules/@babel/parser": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "@babel/types": "^7.28.0" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", - "dev": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -184,49 +129,45 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", - "debug": "^4.3.1", - "globals": "^11.1.0" + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", + "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.0", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.0", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "version": "7.28.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz", + "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -364,7 +305,6 @@ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", "dev": true, - "license": "MIT", "dependencies": { "eslint-visitor-keys": "^3.4.3" }, @@ -411,28 +351,22 @@ } }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "node_modules/@eslint/eslintrc/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 4" } }, "node_modules/@eslint/eslintrc/node_modules/minimatch": { @@ -487,9 +421,9 @@ } }, "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -529,47 +463,34 @@ "dev": true }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", + "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz", + "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", - "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", + "version": "0.3.29", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", + "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -577,10 +498,9 @@ } }, "node_modules/@keycloak/keycloak-admin-client": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.2.5.tgz", - "integrity": "sha512-glMBjQE0M8KOe9uZtdIl7kvHeBjfegZKxK8SzAZxekWvwsZ3Kt+XNd1kKW7NUxRdrs9EGtJLNUWX8vfaR+0Snw==", - "license": "Apache-2.0", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.1.tgz", + "integrity": "sha512-xgmT0Pkwz6k+K5zLXNggMJtQz6GisQfJ/ZR6grr09Hfedx98xUdxC6TKB1IGLyn0fXLszifHn2bHq+F+Ql109g==", "dependencies": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -595,7 +515,6 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, - "peer": true, "dependencies": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -611,175 +530,29 @@ "node-pre-gyp": "bin/node-pre-gyp" } }, - "node_modules/@napi-rs/canvas": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", - "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "node_modules/@mapbox/node-pre-gyp/node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, - "engines": { - "node": ">= 10" + "dependencies": { + "debug": "4" }, - "optionalDependencies": { - "@napi-rs/canvas-android-arm64": "0.1.74", - "@napi-rs/canvas-darwin-arm64": "0.1.74", - "@napi-rs/canvas-darwin-x64": "0.1.74", - "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", - "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", - "@napi-rs/canvas-linux-arm64-musl": "0.1.74", - "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-musl": "0.1.74", - "@napi-rs/canvas-win32-x64-msvc": "0.1.74" - } - }, - "node_modules/@napi-rs/canvas-android-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", - "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-darwin-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", - "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-darwin-x64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", - "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-arm-gnueabihf": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", - "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-arm64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", - "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-arm64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", - "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-riscv64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", - "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", - "cpu": [ - "riscv64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-x64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", - "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@napi-rs/canvas-linux-x64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", - "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">= 10" + "node": ">= 6.0.0" } }, - "node_modules/@napi-rs/canvas-win32-x64-msvc": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", - "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", - "cpu": [ - "x64" - ], + "node_modules/@mapbox/node-pre-gyp/node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "agent-base": "6", + "debug": "4" + }, "engines": { - "node": ">= 10" + "node": ">= 6" } }, "node_modules/@nodelib/fs.scandir": { @@ -838,12 +611,11 @@ "dev": true }, "node_modules/@s3pweb/keycloak-admin-client-cjs": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.2.5.tgz", - "integrity": "sha512-xKEFaq+2A5+qEV3AM8bFfZOb7OwjcRpKinLZIqXX0RKB8UCrFZiEvt/4FyDS1peY3B6TpoeTOHB8SouxWgKyzQ==", - "license": "MIT", + "version": "26.3.1", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.1.tgz", + "integrity": "sha512-cozNqXxG/Q2MCcpcr7RB9J1bIA4DMw6YAl3axfQ+YGH3N3CUTtTEjeCoG/92ilAAtUtolcdBl+mcFA5LVQV0WQ==", "dependencies": { - "@keycloak/keycloak-admin-client": "26.2.5" + "@keycloak/keycloak-admin-client": "26.3.1" } }, "node_modules/@socket.io/component-emitter": { @@ -875,15 +647,10 @@ "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", "dev": true }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" - }, "node_modules/@types/cors": { - "version": "2.8.17", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", - "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "version": "2.8.19", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.19.tgz", + "integrity": "sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg==", "dependencies": { "@types/node": "*" } @@ -901,9 +668,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.0.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", - "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", + "version": "24.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.1.0.tgz", + "integrity": "sha512-ut5FthK5moxFKH2T1CUOC6ctR67rQRvvHdFLCD2Ql6KXmMuCrjsSsRI9UsLCm9M18BMwClv4pn327UvB7eeO1w==", "dependencies": { "undici-types": "~7.8.0" } @@ -912,8 +679,7 @@ "version": "7.7.0", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/@types/trusted-types": { "version": "2.0.7", @@ -922,16 +688,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", - "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", + "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/type-utils": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/type-utils": "8.38.0", + "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -945,44 +711,21 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.37.0", + "@typescript-eslint/parser": "^8.38.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", - "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, "node_modules/@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.38.0.tgz", + "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4" }, "engines": { @@ -998,13 +741,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", - "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", + "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.37.0", - "@typescript-eslint/types": "^8.37.0", + "@typescript-eslint/tsconfig-utils": "^8.38.0", + "@typescript-eslint/types": "^8.38.0", "debug": "^4.3.4" }, "engines": { @@ -1019,13 +762,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", - "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", + "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0" + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1036,9 +779,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", - "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", + "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1052,14 +795,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", - "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", + "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/utils": "8.37.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0", + "@typescript-eslint/utils": "8.38.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -1075,22 +818,10 @@ "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, "node_modules/@typescript-eslint/types": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", - "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.38.0.tgz", + "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1101,15 +832,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", - "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", + "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.37.0", - "@typescript-eslint/tsconfig-utils": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", + "@typescript-eslint/project-service": "8.38.0", + "@typescript-eslint/tsconfig-utils": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/visitor-keys": "8.38.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -1128,28 +859,16 @@ "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, "node_modules/@typescript-eslint/utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", - "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.38.0.tgz", + "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0" + "@typescript-eslint/scope-manager": "8.38.0", + "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/typescript-estree": "8.38.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1164,12 +883,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", - "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", + "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.37.0", + "@typescript-eslint/types": "8.38.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -1193,16 +912,15 @@ } }, "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", "dev": true }, "node_modules/@xmldom/xmldom": { "version": "0.9.8", "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", - "license": "MIT", "engines": { "node": ">=14.6" } @@ -1211,8 +929,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true, - "peer": true + "optional": true }, "node_modules/accepts": { "version": "1.3.8", @@ -1226,10 +943,18 @@ "node": ">= 0.6" } }, + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -1247,6 +972,18 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/addressparser": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz", @@ -1261,16 +998,11 @@ } }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "optional": true, - "peer": true, - "dependencies": { - "debug": "4" - }, + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "engines": { - "node": ">= 6.0.0" + "node": ">= 14" } }, "node_modules/ajv": { @@ -1299,15 +1031,18 @@ } }, "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, "node_modules/anymatch": { @@ -1327,8 +1062,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", - "optional": true, - "peer": true + "optional": true }, "node_modules/are-we-there-yet": { "version": "2.0.0", @@ -1336,7 +1070,6 @@ "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "deprecated": "This package is no longer supported.", "optional": true, - "peer": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -1362,7 +1095,6 @@ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "is-array-buffer": "^3.0.5" @@ -1384,7 +1116,6 @@ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.4", @@ -1416,7 +1147,6 @@ "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.4", @@ -1438,7 +1168,6 @@ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -1457,7 +1186,6 @@ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -1476,7 +1204,6 @@ "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, - "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", "call-bind": "^1.0.8", @@ -1494,16 +1221,15 @@ } }, "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==" }, "node_modules/async-function": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" } @@ -1518,7 +1244,6 @@ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, - "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" }, @@ -1582,12 +1307,15 @@ } }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/body-parser": { @@ -1638,9 +1366,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, "dependencies": { "balanced-match": "^1.0.0" @@ -1671,7 +1399,6 @@ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", "dev": true, - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", @@ -1689,7 +1416,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2" @@ -1702,7 +1428,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", "get-intrinsic": "^1.3.0" @@ -1727,15 +1452,29 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==", - "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/cfb": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", - "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", + "node_modules/canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/cfb": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", + "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", "dependencies": { "adler-32": "~1.3.0", "crc-32": "~1.2.0" @@ -1745,30 +1484,26 @@ } }, "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -1781,6 +1516,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -1797,6 +1535,15 @@ "node": ">= 6" } }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "engines": { + "node": ">=10" + } + }, "node_modules/codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -1806,18 +1553,21 @@ } }, "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "color-name": "1.1.3" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "node_modules/color-support": { @@ -1825,7 +1575,6 @@ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "optional": true, - "peer": true, "bin": { "color-support": "bin.js" } @@ -1842,12 +1591,11 @@ } }, "node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true, + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", "engines": { - "node": "^12.20.0 || >=14" + "node": ">=18" } }, "node_modules/compressible": { @@ -1891,14 +1639,6 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "node_modules/compression/node_modules/negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -1915,8 +1655,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/content-disposition": { "version": "0.5.4", @@ -1980,9 +1719,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -2027,43 +1766,11 @@ "node": ">=18" } }, - "node_modules/data-urls/node_modules/tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/data-urls/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "engines": { - "node": ">=12" - } - }, - "node_modules/data-urls/node_modules/whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "dependencies": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" - } - }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -2081,7 +1788,6 @@ "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -2099,7 +1805,6 @@ "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -2113,11 +1818,11 @@ } }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -2133,6 +1838,18 @@ "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, + "node_modules/decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -2185,8 +1902,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/depd": { "version": "2.0.0", @@ -2210,7 +1926,6 @@ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", "optional": true, - "peer": true, "engines": { "node": ">=8" } @@ -2253,7 +1968,6 @@ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dev": true, - "license": "MIT", "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.2", @@ -2263,6 +1977,18 @@ "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/domelementtype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", @@ -2273,15 +1999,13 @@ "type": "github", "url": "https://github.com/sponsors/fb55" } - ], - "license": "BSD-2-Clause" + ] }, "node_modules/domhandler": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "domelementtype": "^2.3.0" }, @@ -2293,10 +2017,9 @@ } }, "node_modules/dompurify": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz", - "integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==", - "license": "(MPL-2.0 OR Apache-2.0)", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.6.tgz", + "integrity": "sha512-/2GogDQlohXPZe6D6NOgQvXLPSYBqIWMnZ8zzOhn09REE4eyAzb+Hed3jhoM9OkuaJ8P6ZGTTVWQKAi8ieIzfQ==", "optionalDependencies": { "@types/trusted-types": "^2.0.7" } @@ -2306,7 +2029,6 @@ "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "dom-serializer": "^2.0.0", "domelementtype": "^2.3.0", @@ -2331,7 +2053,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.1", "es-errors": "^1.3.0", @@ -2350,8 +2071,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true, - "peer": true + "optional": true }, "node_modules/encodeurl": { "version": "2.0.0", @@ -2362,11 +2082,10 @@ } }, "node_modules/engine.io": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.2.tgz", - "integrity": "sha512-gmNvsYi9C8iErnZdVcJnvCpSKbWTt1E8+JZo8b+daLninywUWi5NQ5STSHZ9rFjFO7imNcvb8Pc5pe/wMR5xEw==", + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz", + "integrity": "sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==", "dependencies": { - "@types/cookie": "^0.4.1", "@types/cors": "^2.8.12", "@types/node": ">=10.0.0", "accepts": "~1.3.4", @@ -2397,6 +2116,22 @@ "node": ">= 0.6" } }, + "node_modules/engine.io/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/engine.io/node_modules/ws": { "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", @@ -2418,10 +2153,9 @@ } }, "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", "engines": { "node": ">=0.12" }, @@ -2434,7 +2168,6 @@ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", "dev": true, - "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.2", "arraybuffer.prototype.slice": "^1.0.4", @@ -2502,7 +2235,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "license": "MIT", "engines": { "node": ">= 0.4" } @@ -2519,7 +2251,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0" }, @@ -2531,7 +2262,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "get-intrinsic": "^1.2.6", @@ -2547,7 +2277,6 @@ "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", "dev": true, - "license": "MIT", "dependencies": { "hasown": "^2.0.2" }, @@ -2560,7 +2289,6 @@ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", "dev": true, - "license": "MIT", "dependencies": { "is-callable": "^1.2.7", "is-date-object": "^1.0.5", @@ -2579,11 +2307,15 @@ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/eslint": { @@ -2695,7 +2427,6 @@ "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", "dev": true, - "license": "MIT", "dependencies": { "debug": "^3.2.7" }, @@ -2713,7 +2444,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -2830,12 +2560,23 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/eslint-plugin-deprecation/node_modules/ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, "node_modules/eslint-plugin-html": { "version": "8.1.3", "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-8.1.3.tgz", "integrity": "sha512-cnCdO7yb/jrvgSJJAfRkGDOwLu1AOvNdw8WCD6nh/2C4RnxuI4tz6QjMEAmmSiHSeugq/fXcIO8yBpIBQrMZCg==", "dev": true, - "license": "ISC", "dependencies": { "htmlparser2": "^10.0.0" }, @@ -2848,7 +2589,6 @@ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "dev": true, - "license": "MIT", "dependencies": { "@rtsao/scc": "^1.1.0", "array-includes": "^3.1.9", @@ -2878,9 +2618,9 @@ } }, "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", @@ -2981,149 +2721,61 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/eslint/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">= 4" } }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=7.0.0" + "node": "*" } }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" + "estraverse": "^5.1.0" }, "engines": { "node": ">=0.10" @@ -3237,16 +2889,16 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -3286,7 +2938,6 @@ "url": "https://github.com/sponsors/NaturalIntelligence" } ], - "license": "MIT", "dependencies": { "strnum": "^2.1.0" }, @@ -3295,9 +2946,9 @@ } }, "node_modules/fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -3388,9 +3039,9 @@ } }, "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", "dev": true }, "node_modules/for-each": { @@ -3398,7 +3049,6 @@ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, - "license": "MIT", "dependencies": { "is-callable": "^1.2.7" }, @@ -3453,7 +3103,6 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, - "peer": true, "dependencies": { "minipass": "^3.0.0" }, @@ -3466,7 +3115,6 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, - "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -3506,7 +3154,6 @@ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -3527,7 +3174,6 @@ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -3538,7 +3184,6 @@ "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "deprecated": "This package is no longer supported.", "optional": true, - "peer": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -3558,7 +3203,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", @@ -3582,7 +3226,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", "es-object-atoms": "^1.0.0" @@ -3596,7 +3239,6 @@ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -3610,11 +3252,10 @@ } }, "node_modules/get-tsconfig": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.0.tgz", - "integrity": "sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.1.tgz", + "integrity": "sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==", "dev": true, - "license": "MIT", "dependencies": { "resolve-pkg-maps": "^1.0.0" }, @@ -3626,6 +3267,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "devOptional": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -3655,9 +3297,9 @@ } }, "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "devOptional": true, "dependencies": { "balanced-match": "^1.0.0", @@ -3677,12 +3319,18 @@ } }, "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/globalthis": { @@ -3690,7 +3338,6 @@ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, - "license": "MIT", "dependencies": { "define-properties": "^1.2.1", "gopd": "^1.0.1" @@ -3722,11 +3369,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/globby/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, "node_modules/gopd": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3750,7 +3405,6 @@ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3759,12 +3413,12 @@ } }, "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/has-property-descriptors": { @@ -3784,7 +3438,6 @@ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", "dev": true, - "license": "MIT", "dependencies": { "dunder-proto": "^1.0.0" }, @@ -3799,7 +3452,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3811,7 +3463,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" }, @@ -3826,8 +3477,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/hasown": { "version": "2.0.2", @@ -3863,7 +3513,6 @@ "url": "https://github.com/sponsors/fb55" } ], - "license": "MIT", "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.3", @@ -3871,19 +3520,6 @@ "entities": "^6.0.0" } }, - "node_modules/htmlparser2/node_modules/entities": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.0.tgz", - "integrity": "sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -3911,26 +3547,16 @@ "node": ">= 14" } }, - "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", - "engines": { - "node": ">= 14" - } - }, "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "optional": true, - "peer": true, + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dependencies": { - "agent-base": "6", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/iconv-lite": { @@ -3945,18 +3571,18 @@ } }, "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", "dev": true, "engines": { "node": ">= 4" } }, "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, "dependencies": { "parent-module": "^1.0.0", @@ -3982,6 +3608,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "devOptional": true, "dependencies": { "once": "^1.3.0", @@ -3998,7 +3625,6 @@ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "hasown": "^2.0.2", @@ -4026,7 +3652,6 @@ "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -4044,7 +3669,6 @@ "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", "dev": true, - "license": "MIT", "dependencies": { "async-function": "^1.0.0", "call-bound": "^1.0.3", @@ -4064,7 +3688,6 @@ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, - "license": "MIT", "dependencies": { "has-bigints": "^1.0.2" }, @@ -4092,7 +3715,6 @@ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" @@ -4109,7 +3731,6 @@ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4122,7 +3743,6 @@ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, - "license": "MIT", "dependencies": { "hasown": "^2.0.2" }, @@ -4138,7 +3758,6 @@ "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "get-intrinsic": "^1.2.6", @@ -4156,7 +3775,6 @@ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "has-tostringtag": "^1.0.2" @@ -4182,7 +3800,6 @@ "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3" }, @@ -4198,7 +3815,6 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "optional": true, - "peer": true, "engines": { "node": ">=8" } @@ -4208,7 +3824,6 @@ "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "get-proto": "^1.0.0", @@ -4239,7 +3854,6 @@ "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4273,7 +3887,6 @@ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" @@ -4304,7 +3917,6 @@ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "gopd": "^1.2.0", @@ -4323,7 +3935,6 @@ "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4336,7 +3947,6 @@ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3" }, @@ -4352,7 +3962,6 @@ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-tostringtag": "^1.0.2" @@ -4369,7 +3978,6 @@ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "has-symbols": "^1.1.0", @@ -4387,7 +3995,6 @@ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", "dev": true, - "license": "MIT", "dependencies": { "which-typed-array": "^1.1.16" }, @@ -4403,7 +4010,6 @@ "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -4416,7 +4022,6 @@ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3" }, @@ -4432,7 +4037,6 @@ "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "get-intrinsic": "^1.2.6" @@ -4448,8 +4052,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/isexe": { "version": "2.0.0", @@ -4488,16 +4091,55 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "dependencies": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/json-buffer": { @@ -4619,197 +4261,42 @@ "node": ">=18.0.0" } }, - "node_modules/maildev/node_modules/agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", - "engines": { - "node": ">= 14" - } - }, - "node_modules/maildev/node_modules/canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "hasInstallScript": true, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, - "peer": true, "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" + "semver": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/maildev/node_modules/commander": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", - "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", - "engines": { - "node": ">=18" + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "optional": true, + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/maildev/node_modules/decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "peer": true, - "dependencies": { - "mimic-response": "^2.0.0" - }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "engines": { - "node": ">=8" - } - }, - "node_modules/maildev/node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/maildev/node_modules/jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/maildev/node_modules/mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/maildev/node_modules/simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", - "optional": true, - "peer": true, - "dependencies": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/maildev/node_modules/tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/maildev/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "engines": { - "node": ">=12" - } - }, - "node_modules/maildev/node_modules/whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "dependencies": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "optional": true, - "peer": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "optional": true, - "peer": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" + "node": ">= 0.4" } }, "node_modules/media-typer": { @@ -4846,12 +4333,12 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -4870,9 +4357,9 @@ } }, "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "engines": { "node": ">= 0.6" } @@ -4888,12 +4375,31 @@ "node": ">= 0.6" } }, + "node_modules/mime-types/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, - "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -4918,7 +4424,6 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "optional": true, - "peer": true, "engines": { "node": ">=8" } @@ -4928,7 +4433,6 @@ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, - "peer": true, "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -4942,7 +4446,6 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, - "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -4955,7 +4458,6 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "optional": true, - "peer": true, "bin": { "mkdirp": "bin/cmd.js" }, @@ -4964,9 +4466,9 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/mylas": { "version": "2.1.13", @@ -4985,8 +4487,7 @@ "version": "2.23.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/natural-compare": { "version": "1.4.0", @@ -4995,9 +4496,9 @@ "dev": true }, "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "engines": { "node": ">= 0.6" } @@ -5007,7 +4508,6 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, - "peer": true, "dependencies": { "whatwg-url": "^5.0.0" }, @@ -5023,10 +4523,32 @@ } } }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/nodemailer": { - "version": "6.9.16", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.16.tgz", - "integrity": "sha512-psAuZdTIRN08HKVd/E8ObdV6NO7NTBY3KsC30F7M4H1OnmLCUNaS56FpYxyb26zWLSyYF9Ozch9KYHhHegsiOQ==", + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.10.1.tgz", + "integrity": "sha512-Z+iLaBGVaSjbIzQ4pX6XV41HrooLsQ10ZWPUehGmuantvzWoDVBnmsdUcOIDM1t+yPor5pDhVlDESgOMEGxhHA==", "engines": { "node": ">=6.0.0" } @@ -5036,7 +4558,6 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, - "peer": true, "dependencies": { "abbrev": "1" }, @@ -5062,7 +4583,6 @@ "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "deprecated": "This package is no longer supported.", "optional": true, - "peer": true, "dependencies": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -5087,7 +4607,6 @@ "version": "1.13.4", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -5109,7 +4628,6 @@ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -5126,14 +4644,15 @@ } }, "node_modules/object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -5176,7 +4695,6 @@ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", @@ -5219,17 +4737,17 @@ } }, "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" }, "engines": { "node": ">= 0.8.0" @@ -5240,7 +4758,6 @@ "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", "dev": true, - "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.6", "object-keys": "^1.1.1", @@ -5306,17 +4823,6 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, - "node_modules/parse5/node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -5372,17 +4878,33 @@ "node": ">=8" } }, + "node_modules/path2d-polyfill": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", + "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==", + "optional": true, + "engines": { + "node": ">=8" + } + }, "node_modules/pdfjs-dist": { - "version": "4.10.38", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", - "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", + "version": "3.11.174", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.11.174.tgz", + "integrity": "sha512-TdTZPf1trZ8/UFu5Cx/GXB7GZM30LT+wWUNfsi6Bq8ePLnb+woNKtDymI2mxZYBpMbonNFqKmiz684DIfnd8dA==", "engines": { - "node": ">=20" + "node": ">=18" }, "optionalDependencies": { - "@napi-rs/canvas": "^0.1.65" + "canvas": "^2.11.2", + "path2d-polyfill": "^2.0.1" } }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -5440,7 +4962,6 @@ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" } @@ -5579,7 +5100,6 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, - "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5606,7 +5126,6 @@ "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -5629,7 +5148,6 @@ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "define-properties": "^1.2.1", @@ -5651,18 +5169,21 @@ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -5681,15 +5202,14 @@ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } }, "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "dev": true, "engines": { "iojs": ">=1.0.0", @@ -5700,6 +5220,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "devOptional": true, "dependencies": { "glob": "^7.1.3" @@ -5744,7 +5265,6 @@ "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.2", @@ -5783,7 +5303,6 @@ "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", "dev": true, - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "isarray": "^2.0.5" @@ -5800,7 +5319,6 @@ "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -5833,7 +5351,6 @@ "version": "7.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -5896,11 +5413,6 @@ "node": ">=4" } }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/serve-static": { "version": "1.16.2", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", @@ -5919,8 +5431,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true, - "peer": true + "optional": true }, "node_modules/set-function-length": { "version": "1.2.2", @@ -5944,7 +5455,6 @@ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, - "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", @@ -5960,7 +5470,6 @@ "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", "dev": true, - "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", "es-errors": "^1.3.0", @@ -6000,7 +5509,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "object-inspect": "^1.13.3", @@ -6019,7 +5527,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "object-inspect": "^1.13.3" @@ -6035,7 +5542,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -6053,7 +5559,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", @@ -6072,8 +5577,7 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true, - "peer": true + "optional": true }, "node_modules/simple-concat": { "version": "1.0.1", @@ -6093,8 +5597,18 @@ "url": "https://feross.org/support" } ], + "optional": true + }, + "node_modules/simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "peer": true + "dependencies": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } }, "node_modules/slash": { "version": "3.0.0", @@ -6106,13 +5620,13 @@ } }, "node_modules/smtp-server": { - "version": "3.13.6", - "resolved": "https://registry.npmjs.org/smtp-server/-/smtp-server-3.13.6.tgz", - "integrity": "sha512-dqbSPKn3PCq3Gp5hxBM99u7PET7cQSAWrauhtArJbc+zrf5xNEOjm9+Ob3lySySrRoIEvNE0dz+w2H/xWFJNRw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/smtp-server/-/smtp-server-3.14.0.tgz", + "integrity": "sha512-cEw/hdIY+xw1pkbQbQ23hvnm9kNABAsgYB+jJYGkzAynZxJ2VB9aqC6JhB1vpdDnqan7C7AL3qHYRGwz5eD6BQ==", "dependencies": { "base32.js": "0.1.0", "ipv6-normalize": "1.0.1", - "nodemailer": "6.9.15", + "nodemailer": "7.0.3", "punycode.js": "2.3.1" }, "engines": { @@ -6120,9 +5634,9 @@ } }, "node_modules/smtp-server/node_modules/nodemailer": { - "version": "6.9.15", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.15.tgz", - "integrity": "sha512-AHf04ySLC6CIfuRtRiEYtGEXgRfa6INgWGluDhnxTZhHSKvrBu7lc1VVchQ0d8nPc4cFaZoPq8vkyNoZr0TpGQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-7.0.3.tgz", + "integrity": "sha512-Ajq6Sz1x7cIK3pN6KesGTah+1gnwMnx5gKl3piQlQQE/PwyJ4Mbc8is2psWYxK3RJTVeqsDaCv8ZzXLCDHMTZw==", "engines": { "node": ">=6.0.0" } @@ -6153,12 +5667,28 @@ "ws": "~8.17.1" } }, - "node_modules/socket.io-adapter/node_modules/ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "engines": { - "node": ">=10.0.0" + "node_modules/socket.io-adapter/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socket.io-adapter/node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "engines": { + "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", @@ -6185,6 +5715,38 @@ "node": ">=10.0.0" } }, + "node_modules/socket.io-parser/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socket.io/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/ssf": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz", @@ -6209,7 +5771,6 @@ "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "dev": true, - "license": "MIT", "dependencies": { "es-errors": "^1.3.0", "internal-slot": "^1.1.0" @@ -6223,7 +5784,6 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, - "peer": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -6233,7 +5793,6 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, - "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -6248,7 +5807,6 @@ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.2", @@ -6270,7 +5828,6 @@ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.2", @@ -6335,27 +5892,26 @@ } }, "node_modules/strnum": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.0.tgz", - "integrity": "sha512-w0S//9BqZZGw0L0Y8uLSelFGnDJgTyyNQLmSlPnVz43zPAiqu3w4t8J8sDqqANOGeZIZ/9jWuPguYcEnsoHv4A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.1.tgz", + "integrity": "sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==", "funding": [ { "type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" } - ], - "license": "MIT" + ] }, "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -6380,7 +5936,6 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, - "peer": true, "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -6393,31 +5948,12 @@ "node": ">=10" } }, - "node_modules/tar/node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "peer": true, - "engines": { - "node": ">=10" - } - }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -6453,22 +5989,26 @@ } }, "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true, - "peer": true + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } }, "node_modules/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18.12" }, "peerDependencies": { - "typescript": ">=4.2.0" + "typescript": ">=4.8.4" } }, "node_modules/ts-node": { @@ -6514,24 +6054,11 @@ } } }, - "node_modules/ts-node/node_modules/acorn-walk": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", - "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", - "dev": true, - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/tsc-alias": { "version": "1.8.16", "resolved": "https://registry.npmjs.org/tsc-alias/-/tsc-alias-1.8.16.tgz", "integrity": "sha512-QjCyu55NFyRSBAl6+MTFwplpFcnm2Pq01rR/uxfqJoLMm6X3O14KEGtaSDZpJYaE1bJBGDjD0eSuiIWPe2T58g==", "dev": true, - "license": "MIT", "dependencies": { "chokidar": "^3.5.3", "commander": "^9.0.0", @@ -6548,6 +6075,15 @@ "node": ">=16.20.2" } }, + "node_modules/tsc-alias/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, "node_modules/tsconfig-paths": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", @@ -6563,9 +6099,9 @@ } }, "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true }, "node_modules/type-check": { @@ -6609,7 +6145,6 @@ "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "es-errors": "^1.3.0", @@ -6624,7 +6159,6 @@ "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.8", "for-each": "^0.3.3", @@ -6644,7 +6178,6 @@ "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", "dev": true, - "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", @@ -6666,7 +6199,6 @@ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", "dev": true, - "license": "MIT", "dependencies": { "call-bind": "^1.0.7", "for-each": "^0.3.3", @@ -6687,7 +6219,6 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", "dev": true, - "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -6701,7 +6232,6 @@ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.3", "has-bigints": "^1.0.2", @@ -6718,8 +6248,7 @@ "node_modules/undici-types": { "version": "7.8.0", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", - "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==", - "license": "MIT" + "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==" }, "node_modules/universalify": { "version": "0.2.0", @@ -6750,7 +6279,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==", - "license": "MIT", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -6768,7 +6296,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/url-template/-/url-template-3.1.1.tgz", "integrity": "sha512-4oszoaEKE/mQOtAmdMWqIRHmkxWkUZMnXFnjQ5i01CuRSK3uluxcH1MRVVVWmhlnzT1SCDfKxxficm2G37qzCA==", - "license": "BSD-3-Clause", "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } @@ -6777,8 +6304,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true, - "peer": true + "optional": true }, "node_modules/utils-merge": { "version": "1.0.1", @@ -6797,6 +6323,14 @@ "extend": "~3.0.0" } }, + "node_modules/uue/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", @@ -6823,11 +6357,12 @@ } }, "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true, - "peer": true + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } }, "node_modules/whatwg-encoding": { "version": "3.1.1", @@ -6860,14 +6395,15 @@ } }, "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "peer": true, + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" } }, "node_modules/which": { @@ -6890,7 +6426,6 @@ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", "dev": true, - "license": "MIT", "dependencies": { "is-bigint": "^1.1.0", "is-boolean-object": "^1.2.1", @@ -6910,7 +6445,6 @@ "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", "dev": true, - "license": "MIT", "dependencies": { "call-bound": "^1.0.2", "function.prototype.name": "^1.1.6", @@ -6938,7 +6472,6 @@ "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, - "license": "MIT", "dependencies": { "is-map": "^2.0.3", "is-set": "^2.0.3", @@ -6957,7 +6490,6 @@ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, - "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", @@ -6979,7 +6511,6 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, - "peer": true, "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -7005,6 +6536,15 @@ "node": ">=0.8" } }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -7073,8 +6613,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true, - "peer": true + "optional": true }, "node_modules/yn": { "version": "3.1.1", @@ -7097,4920 +6636,5 @@ "url": "https://github.com/sponsors/sindresorhus" } } - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true - }, - "@asamuzakjp/css-color": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", - "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", - "requires": { - "@csstools/css-calc": "^2.1.3", - "@csstools/css-color-parser": "^3.0.9", - "@csstools/css-parser-algorithms": "^3.0.4", - "@csstools/css-tokenizer": "^3.0.3", - "lru-cache": "^10.4.3" - } - }, - "@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", - "dev": true, - "requires": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" - } - }, - "@babel/generator": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", - "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", - "dev": true, - "requires": { - "@babel/types": "^7.23.6", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "dev": true - }, - "@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", - "dev": true - }, - "@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - } - }, - "@babel/traverse": { - "version": "7.23.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", - "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.6", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.6", - "@babel/types": "^7.23.6", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - } - } - }, - "@csstools/color-helpers": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", - "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==" - }, - "@csstools/css-calc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", - "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", - "requires": {} - }, - "@csstools/css-color-parser": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", - "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", - "requires": { - "@csstools/color-helpers": "^5.0.2", - "@csstools/css-calc": "^2.1.4" - } - }, - "@csstools/css-parser-algorithms": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", - "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", - "requires": {} - }, - "@csstools/css-tokenizer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", - "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==" - }, - "@eslint-community/eslint-utils": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", - "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.4.3" - } - }, - "@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", - "dev": true - }, - "@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "@eslint/js": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", - "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", - "dev": true - }, - "@faker-js/faker": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/@faker-js/faker/-/faker-9.9.0.tgz", - "integrity": "sha512-OEl393iCOoo/z8bMezRlJu+GlRGlsKbUAN7jKB6LhnKoqKve5DXRpalbItIIcwnCjs1k/FOPjFzcA6Qn+H+YbA==" - }, - "@humanwhocodes/config-array": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", - "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^2.0.3", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.21.tgz", - "integrity": "sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "@keycloak/keycloak-admin-client": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.2.5.tgz", - "integrity": "sha512-glMBjQE0M8KOe9uZtdIl7kvHeBjfegZKxK8SzAZxekWvwsZ3Kt+XNd1kKW7NUxRdrs9EGtJLNUWX8vfaR+0Snw==", - "requires": { - "camelize-ts": "^3.0.0", - "url-join": "^5.0.0", - "url-template": "^3.1.1" - } - }, - "@mapbox/node-pre-gyp": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", - "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", - "optional": true, - "peer": true, - "requires": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - } - }, - "@napi-rs/canvas": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", - "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", - "optional": true, - "requires": { - "@napi-rs/canvas-android-arm64": "0.1.74", - "@napi-rs/canvas-darwin-arm64": "0.1.74", - "@napi-rs/canvas-darwin-x64": "0.1.74", - "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", - "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", - "@napi-rs/canvas-linux-arm64-musl": "0.1.74", - "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-gnu": "0.1.74", - "@napi-rs/canvas-linux-x64-musl": "0.1.74", - "@napi-rs/canvas-win32-x64-msvc": "0.1.74" - } - }, - "@napi-rs/canvas-android-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", - "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", - "optional": true - }, - "@napi-rs/canvas-darwin-arm64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", - "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", - "optional": true - }, - "@napi-rs/canvas-darwin-x64": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", - "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", - "optional": true - }, - "@napi-rs/canvas-linux-arm-gnueabihf": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", - "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", - "optional": true - }, - "@napi-rs/canvas-linux-arm64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", - "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", - "optional": true - }, - "@napi-rs/canvas-linux-arm64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", - "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", - "optional": true - }, - "@napi-rs/canvas-linux-riscv64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", - "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", - "optional": true - }, - "@napi-rs/canvas-linux-x64-gnu": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", - "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", - "optional": true - }, - "@napi-rs/canvas-linux-x64-musl": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", - "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", - "optional": true - }, - "@napi-rs/canvas-win32-x64-msvc": { - "version": "0.1.74", - "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", - "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", - "optional": true - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@playwright/test": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.54.1.tgz", - "integrity": "sha512-FS8hQ12acieG2dYSksmLOF7BNxnVf2afRJdCuM1eMSxj6QTSE6G4InGF7oApGgDb65MX7AwMVlIkpru0yZA4Xw==", - "requires": { - "playwright": "1.54.1" - } - }, - "@rtsao/scc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", - "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", - "dev": true - }, - "@s3pweb/keycloak-admin-client-cjs": { - "version": "26.2.5", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.2.5.tgz", - "integrity": "sha512-xKEFaq+2A5+qEV3AM8bFfZOb7OwjcRpKinLZIqXX0RKB8UCrFZiEvt/4FyDS1peY3B6TpoeTOHB8SouxWgKyzQ==", - "requires": { - "@keycloak/keycloak-admin-client": "26.2.5" - } - }, - "@socket.io/component-emitter": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", - "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==" - }, - "@tsconfig/node10": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", - "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", - "dev": true - }, - "@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true - }, - "@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true - }, - "@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==" - }, - "@types/cors": { - "version": "2.8.17", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", - "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", - "requires": { - "@types/node": "*" - } - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "@types/libsodium-wrappers": { - "version": "0.7.14", - "resolved": "https://registry.npmjs.org/@types/libsodium-wrappers/-/libsodium-wrappers-0.7.14.tgz", - "integrity": "sha512-5Kv68fXuXK0iDuUir1WPGw2R9fOZUlYlSAa0ztMcL0s0BfIDTqg9GXz8K30VJpPP3sxWhbolnQma2x+/TfkzDQ==", - "dev": true - }, - "@types/node": { - "version": "24.0.15", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.0.15.tgz", - "integrity": "sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==", - "requires": { - "undici-types": "~7.8.0" - } - }, - "@types/semver": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", - "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", - "dev": true - }, - "@types/trusted-types": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", - "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", - "optional": true - }, - "@typescript-eslint/eslint-plugin": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.37.0.tgz", - "integrity": "sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/type-utils": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", - "graphemer": "^1.4.0", - "ignore": "^7.0.0", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "ignore": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", - "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", - "dev": true - }, - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } - } - }, - "@typescript-eslint/parser": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.37.0.tgz", - "integrity": "sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/project-service": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.37.0.tgz", - "integrity": "sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==", - "dev": true, - "requires": { - "@typescript-eslint/tsconfig-utils": "^8.37.0", - "@typescript-eslint/types": "^8.37.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.37.0.tgz", - "integrity": "sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0" - } - }, - "@typescript-eslint/tsconfig-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.37.0.tgz", - "integrity": "sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==", - "dev": true, - "requires": {} - }, - "@typescript-eslint/type-utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.37.0.tgz", - "integrity": "sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0", - "@typescript-eslint/utils": "8.37.0", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } - } - }, - "@typescript-eslint/types": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.37.0.tgz", - "integrity": "sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.37.0.tgz", - "integrity": "sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==", - "dev": true, - "requires": { - "@typescript-eslint/project-service": "8.37.0", - "@typescript-eslint/tsconfig-utils": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/visitor-keys": "8.37.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } - } - }, - "@typescript-eslint/utils": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.37.0.tgz", - "integrity": "sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.37.0", - "@typescript-eslint/types": "8.37.0", - "@typescript-eslint/typescript-estree": "8.37.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.37.0.tgz", - "integrity": "sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.37.0", - "eslint-visitor-keys": "^4.2.1" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true - } - } - }, - "@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true - }, - "@xmldom/xmldom": { - "version": "0.9.8", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", - "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==" - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true, - "peer": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} - }, - "addressparser": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz", - "integrity": "sha512-aQX7AISOMM7HFE0iZ3+YnD07oIeJqWGVnJ+ZIKaBZAk03ftmVYVqsGas/rbXKR21n4D/hKCSHypvcyOkds/xzg==" - }, - "adler-32": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz", - "integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==" - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "optional": true, - "peer": true, - "requires": { - "debug": "4" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "devOptional": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "aproba": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", - "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", - "optional": true, - "peer": true - }, - "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "optional": true, - "peer": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "array-buffer-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "is-array-buffer": "^3.0.5" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "array-includes": { - "version": "3.1.9", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", - "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.24.0", - "es-object-atoms": "^1.1.1", - "get-intrinsic": "^1.3.0", - "is-string": "^1.1.1", - "math-intrinsics": "^1.1.0" - } - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "array.prototype.findlastindex": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", - "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-shim-unscopables": "^1.1.0" - } - }, - "array.prototype.flat": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", - "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - } - }, - "array.prototype.flatmap": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", - "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-shim-unscopables": "^1.0.2" - } - }, - "arraybuffer.prototype.slice": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "is-array-buffer": "^3.0.4" - } - }, - "async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" - }, - "async-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", - "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "requires": { - "possible-typed-array-names": "^1.0.0" - } - }, - "babel-eslint": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", - "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0", - "eslint-visitor-keys": "^1.0.0", - "resolve": "^1.12.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "devOptional": true - }, - "base32.js": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base32.js/-/base32.js-0.1.0.tgz", - "integrity": "sha512-n3TkB02ixgBOhTvANakDb4xaMXnYUVkNoRFJjQflcqMQhyEKxEHdj3E6N8t8sUQ0mjH/3/JxzlXuz3ul/J90pQ==" - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==" - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "requires": { - "fill-range": "^7.1.1" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "requires": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - } - }, - "call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "requires": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - } - }, - "call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "requires": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelize-ts": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", - "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==" - }, - "cfb": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", - "integrity": "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==", - "requires": { - "adler-32": "~1.3.0", - "crc-32": "~1.2.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "codepage": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", - "integrity": "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA==" - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "optional": true, - "peer": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.1.tgz", - "integrity": "sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==", - "requires": { - "bytes": "3.1.2", - "compressible": "~2.0.18", - "debug": "2.6.9", - "negotiator": "~0.6.4", - "on-headers": "~1.1.0", - "safe-buffer": "5.2.1", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "negotiator": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", - "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==" - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "devOptional": true - }, - "confusing-browser-globals": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", - "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true, - "peer": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" - }, - "cookie": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", - "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==" - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "cssstyle": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", - "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", - "requires": { - "@asamuzakjp/css-color": "^3.2.0", - "rrweb-cssom": "^0.8.0" - }, - "dependencies": { - "rrweb-cssom": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", - "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" - } - } - }, - "csv-writer": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/csv-writer/-/csv-writer-1.6.0.tgz", - "integrity": "sha512-NOx7YDFWEsM/fTRAJjRpPp8t+MKRVvniAg9wQlUKx20MFrPs73WLJhFf5iteqrxNYnsy924K3Iroh3yNHeYd2g==" - }, - "data-urls": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", - "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", - "requires": { - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0" - }, - "dependencies": { - "tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "requires": { - "punycode": "^2.3.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" - }, - "whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "requires": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - } - }, - "data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" - } - }, - "data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "decimal.js": { - "version": "10.6.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", - "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "requires": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - } - }, - "define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "requires": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true, - "peer": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "detect-libc": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", - "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", - "optional": true, - "peer": true - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0" - } - }, - "dompurify": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz", - "integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==", - "requires": { - "@types/trusted-types": "^2.0.7" - } - }, - "domutils": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", - "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", - "dev": true, - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - } - }, - "dotenv": { - "version": "17.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.0.tgz", - "integrity": "sha512-Q4sgBT60gzd0BB0lSyYD3xM4YxrXA9y4uBDof1JNYGzOXrQdQ6yX+7XIAqoFOGQFOTK1D3Hts5OllpxMDZFONQ==" - }, - "dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "requires": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true, - "peer": true - }, - "encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==" - }, - "engine.io": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.2.tgz", - "integrity": "sha512-gmNvsYi9C8iErnZdVcJnvCpSKbWTt1E8+JZo8b+daLninywUWi5NQ5STSHZ9rFjFO7imNcvb8Pc5pe/wMR5xEw==", - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.7.2", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.2.1", - "ws": "~8.17.1" - }, - "dependencies": { - "cookie": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", - "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==" - }, - "ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "requires": {} - } - } - }, - "engine.io-parser": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", - "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==" - }, - "entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true - }, - "es-abstract": { - "version": "1.24.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", - "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "data-view-buffer": "^1.0.2", - "data-view-byte-length": "^1.0.2", - "data-view-byte-offset": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "es-set-tostringtag": "^2.1.0", - "es-to-primitive": "^1.3.0", - "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.3.0", - "get-proto": "^1.0.1", - "get-symbol-description": "^1.1.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "internal-slot": "^1.1.0", - "is-array-buffer": "^3.0.5", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.2", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.2.1", - "is-set": "^2.0.3", - "is-shared-array-buffer": "^1.0.4", - "is-string": "^1.1.1", - "is-typed-array": "^1.1.15", - "is-weakref": "^1.1.1", - "math-intrinsics": "^1.1.0", - "object-inspect": "^1.13.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.7", - "own-keys": "^1.0.1", - "regexp.prototype.flags": "^1.5.4", - "safe-array-concat": "^1.1.3", - "safe-push-apply": "^1.0.0", - "safe-regex-test": "^1.1.0", - "set-proto": "^1.0.0", - "stop-iteration-iterator": "^1.1.0", - "string.prototype.trim": "^1.2.10", - "string.prototype.trimend": "^1.0.9", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.3", - "typed-array-byte-length": "^1.0.3", - "typed-array-byte-offset": "^1.0.4", - "typed-array-length": "^1.0.7", - "unbox-primitive": "^1.1.0", - "which-typed-array": "^1.1.19" - } - }, - "es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==" - }, - "es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" - }, - "es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "requires": { - "es-errors": "^1.3.0" - } - }, - "es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "requires": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - } - }, - "es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "dev": true, - "requires": { - "hasown": "^2.0.2" - } - }, - "es-to-primitive": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", - "dev": true, - "requires": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" - } - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "eslint": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", - "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.1", - "@humanwhocodes/config-array": "^0.13.0", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "eslint-config-airbnb-base": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", - "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", - "dev": true, - "requires": { - "confusing-browser-globals": "^1.0.10", - "object.assign": "^4.1.2", - "object.entries": "^1.1.5", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "requires": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-module-utils": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz", - "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==", - "dev": true, - "requires": { - "debug": "^3.2.7" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-plugin-deprecation": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-deprecation/-/eslint-plugin-deprecation-3.0.0.tgz", - "integrity": "sha512-JuVLdNg/uf0Adjg2tpTyYoYaMbwQNn/c78P1HcccokvhtRphgnRjZDKmhlxbxYptppex03zO76f97DD/yQHv7A==", - "dev": true, - "requires": { - "@typescript-eslint/utils": "^7.0.0", - "ts-api-utils": "^1.3.0", - "tslib": "^2.3.1" - }, - "dependencies": { - "@typescript-eslint/scope-manager": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", - "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0" - } - }, - "@typescript-eslint/types": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", - "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", - "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/visitor-keys": "7.18.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" - } - }, - "@typescript-eslint/utils": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", - "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "7.18.0", - "@typescript-eslint/types": "7.18.0", - "@typescript-eslint/typescript-estree": "7.18.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "7.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", - "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "7.18.0", - "eslint-visitor-keys": "^3.4.3" - } - } - } - }, - "eslint-plugin-html": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-8.1.3.tgz", - "integrity": "sha512-cnCdO7yb/jrvgSJJAfRkGDOwLu1AOvNdw8WCD6nh/2C4RnxuI4tz6QjMEAmmSiHSeugq/fXcIO8yBpIBQrMZCg==", - "dev": true, - "requires": { - "htmlparser2": "^10.0.0" - } - }, - "eslint-plugin-import": { - "version": "2.32.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", - "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", - "dev": true, - "requires": { - "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.9", - "array.prototype.findlastindex": "^1.2.6", - "array.prototype.flat": "^1.3.3", - "array.prototype.flatmap": "^1.3.3", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.1", - "hasown": "^2.0.2", - "is-core-module": "^2.16.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "object.groupby": "^1.0.3", - "object.values": "^1.2.1", - "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.9", - "tsconfig-paths": "^3.15.0" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "tsconfig-paths": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - } - } - }, - "eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true - }, - "espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - } - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" - }, - "express": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", - "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.3", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.12", - "proxy-addr": "~2.0.7", - "qs": "6.13.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "fast-xml-parser": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.2.5.tgz", - "integrity": "sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==", - "requires": { - "strnum": "^2.1.0" - } - }, - "fastq": { - "version": "1.16.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", - "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "requires": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true - }, - "for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", - "dev": true, - "requires": { - "is-callable": "^1.2.7" - } - }, - "form-data": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz", - "integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "es-set-tostringtag": "^2.1.0", - "hasown": "^2.0.2", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "frac": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz", - "integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==" - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "optional": true, - "peer": true, - "requires": { - "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "optional": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "devOptional": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "optional": true - }, - "function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" - }, - "function.prototype.name": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "functions-have-names": "^1.2.3", - "hasown": "^2.0.2", - "is-callable": "^1.2.7" - } - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "optional": true, - "peer": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, - "get-intrinsic": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "requires": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - } - }, - "get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "requires": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - } - }, - "get-symbol-description": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6" - } - }, - "get-tsconfig": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.10.0.tgz", - "integrity": "sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==", - "dev": true, - "requires": { - "resolve-pkg-maps": "^1.0.0" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "devOptional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "devOptional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "devOptional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "requires": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==" - }, - "graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "gunzip-file": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/gunzip-file/-/gunzip-file-0.1.1.tgz", - "integrity": "sha512-DjDExBKHuhyhHOs8HeGV5dw6wY6eYTl4pAHz27oy8XppgBK60vmG/G3bY09zyT9PXX4TjmnEF4hYoRn61Fctlg==" - }, - "has-bigints": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", - "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "requires": { - "es-define-property": "^1.0.0" - } - }, - "has-proto": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", - "dev": true, - "requires": { - "dunder-proto": "^1.0.0" - } - }, - "has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==" - }, - "has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "requires": { - "has-symbols": "^1.0.3" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true, - "peer": true - }, - "hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "requires": { - "function-bind": "^1.1.2" - } - }, - "html-encoding-sniffer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", - "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", - "requires": { - "whatwg-encoding": "^3.1.1" - } - }, - "htmlparser2": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.0.0.tgz", - "integrity": "sha512-TwAZM+zE5Tq3lrEHvOlvwgj1XLWQCtaaibSN11Q+gGBAS7Y1uZSWwXXRe4iF6OXnaq1riyQAPFOBtYc77Mxq0g==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.2.1", - "entities": "^6.0.0" - }, - "dependencies": { - "entities": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.0.tgz", - "integrity": "sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==", - "dev": true - } - } - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", - "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", - "requires": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "dependencies": { - "agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" - } - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "optional": true, - "peer": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "iconv-lite": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.0.tgz", - "integrity": "sha512-NnEhI9hIEKHOzJ4f697DMz9IQEXr/MMJ5w64vN2/4Ai+wRnvV7SBrL0KLoRlwaKVghOc7LQ5YkPLuX146b6Ydw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "devOptional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "internal-slot": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", - "dev": true, - "requires": { - "es-errors": "^1.3.0", - "hasown": "^2.0.2", - "side-channel": "^1.1.0" - } - }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" - }, - "ipv6-normalize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ipv6-normalize/-/ipv6-normalize-1.0.1.tgz", - "integrity": "sha512-Bm6H79i01DjgGTCWjUuCjJ6QDo1HB96PT/xCYuyJUP9WFbVDrLSbG4EZCvOCun2rNswZb0c3e4Jt/ws795esHA==" - }, - "is-array-buffer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - } - }, - "is-async-function": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", - "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", - "dev": true, - "requires": { - "async-function": "^1.0.0", - "call-bound": "^1.0.3", - "get-proto": "^1.0.1", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - } - }, - "is-bigint": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", - "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", - "dev": true, - "requires": { - "has-bigints": "^1.0.2" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", - "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - } - }, - "is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true - }, - "is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", - "dev": true, - "requires": { - "hasown": "^2.0.2" - } - }, - "is-data-view": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "is-typed-array": "^1.1.13" - } - }, - "is-date-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "has-tostringtag": "^1.0.2" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-finalizationregistry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", - "dev": true, - "requires": { - "call-bound": "^1.0.3" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "optional": true, - "peer": true - }, - "is-generator-function": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", - "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "get-proto": "^1.0.0", - "has-tostringtag": "^1.0.2", - "safe-regex-test": "^1.1.0" - } - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true - }, - "is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-number-object": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", - "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - } - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" - }, - "is-regex": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - } - }, - "is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", - "dev": true, - "requires": { - "call-bound": "^1.0.3" - } - }, - "is-string": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-tostringtag": "^1.0.2" - } - }, - "is-symbol": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "has-symbols": "^1.1.0", - "safe-regex-test": "^1.1.0" - } - }, - "is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "requires": { - "which-typed-array": "^1.1.16" - } - }, - "is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true - }, - "is-weakref": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", - "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", - "dev": true, - "requires": { - "call-bound": "^1.0.3" - } - }, - "is-weakset": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", - "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "get-intrinsic": "^1.2.6" - } - }, - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "jpeg-js": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz", - "integrity": "sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==" - }, - "js-image-generator": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/js-image-generator/-/js-image-generator-1.0.4.tgz", - "integrity": "sha512-ckb7kyVojGAnArouVR+5lBIuwU1fcrn7E/YYSd0FK7oIngAkMmRvHASLro9Zt5SQdWToaI66NybG+OGxPw/HlQ==", - "requires": { - "jpeg-js": "^0.4.2" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true - }, - "keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "requires": { - "json-buffer": "3.0.1" - } - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "libsodium": { - "version": "0.7.15", - "resolved": "https://registry.npmjs.org/libsodium/-/libsodium-0.7.15.tgz", - "integrity": "sha512-sZwRknt/tUpE2AwzHq3jEyUU5uvIZHtSssktXq7owd++3CSgn8RGrv6UZJJBpP7+iBghBqe7Z06/2M31rI2NKw==" - }, - "libsodium-wrappers": { - "version": "0.7.15", - "resolved": "https://registry.npmjs.org/libsodium-wrappers/-/libsodium-wrappers-0.7.15.tgz", - "integrity": "sha512-E4anqJQwcfiC6+Yrl01C1m8p99wEhLmJSs0VQqST66SbQXXBoaJY0pF4BNjRYa/sOQAxx6lXAaAFIlx+15tXJQ==", - "requires": { - "libsodium": "^0.7.15" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" - }, - "maildev": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", - "integrity": "sha512-uNSJ4LpiNfCMw5KpWAM5x1UgOyG3ngeNwzBqw4/Wl18ECkJDyXBYpTH44HCG8LqAOFLkUiLl/1Ah5lrQhv3GzQ==", - "requires": { - "addressparser": "1.0.1", - "async": "^3.2.3", - "commander": "^12.1.0", - "compression": "^1.7.4", - "cors": "^2.8.5", - "dompurify": "^3.1.6", - "express": "^4.21.2", - "iconv-lite": "0.5.0", - "jsdom": "^24.1.1", - "mime": "2.4.4", - "nodemailer": "^6.9.14", - "smtp-server": "^3.13.4", - "socket.io": "^4.7.5", - "uue": "3.1.2", - "wildstring": "1.0.9" - }, - "dependencies": { - "agent-base": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", - "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" - }, - "canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "optional": true, - "peer": true, - "requires": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - } - }, - "commander": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", - "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==" - }, - "decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "peer": true, - "requires": { - "mimic-response": "^2.0.0" - } - }, - "https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "requires": { - "agent-base": "^7.1.2", - "debug": "4" - } - }, - "jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "requires": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - } - }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "peer": true - }, - "simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", - "optional": true, - "peer": true, - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "tr46": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", - "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", - "requires": { - "punycode": "^2.3.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" - }, - "whatwg-url": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", - "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", - "requires": { - "tr46": "^5.1.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "optional": true, - "peer": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "optional": true, - "peer": true - } - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==" - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" - }, - "merge-descriptors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", - "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==" - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true - }, - "minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "optional": true, - "peer": true - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "optional": true, - "peer": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "optional": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true, - "peer": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "mylas": { - "version": "2.1.13", - "resolved": "https://registry.npmjs.org/mylas/-/mylas-2.1.13.tgz", - "integrity": "sha512-+MrqnJRtxdF+xngFfUUkIMQrUUL0KsxbADUkn23Z/4ibGg192Q+z+CQyiYwvWTsYjJygmMR8+w3ZDa98Zh6ESg==", - "dev": true - }, - "nan": { - "version": "2.23.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", - "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", - "optional": true, - "peer": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "optional": true, - "peer": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "nodemailer": { - "version": "6.9.16", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.16.tgz", - "integrity": "sha512-psAuZdTIRN08HKVd/E8ObdV6NO7NTBY3KsC30F7M4H1OnmLCUNaS56FpYxyb26zWLSyYF9Ozch9KYHhHegsiOQ==" - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "optional": true, - "peer": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "optional": true, - "peer": true, - "requires": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "nwsapi": { - "version": "2.2.20", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", - "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, - "object-inspect": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==" - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0", - "has-symbols": "^1.1.0", - "object-keys": "^1.1.1" - } - }, - "object.entries": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", - "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" - } - }, - "object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - } - }, - "object.groupby": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", - "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2" - } - }, - "object.values": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", - "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.1.0.tgz", - "integrity": "sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "devOptional": true, - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - } - }, - "own-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.6", - "object-keys": "^1.1.1", - "safe-push-apply": "^1.0.0" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse5": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", - "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", - "requires": { - "entities": "^6.0.0" - }, - "dependencies": { - "entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==" - } - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "devOptional": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", - "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "pdfjs-dist": { - "version": "4.10.38", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", - "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", - "requires": { - "@napi-rs/canvas": "^0.1.65" - } - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "playwright": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.1.tgz", - "integrity": "sha512-peWpSwIBmSLi6aW2auvrUtf2DqY16YYcCMO8rTVx486jKmDTJg7UAhyrraP98GB8BoPURZP8+nxO7TSd4cPr5g==", - "requires": { - "fsevents": "2.3.2", - "playwright-core": "1.54.1" - } - }, - "playwright-core": { - "version": "1.54.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.1.tgz", - "integrity": "sha512-Nbjs2zjj0htNhzgiy5wu+3w09YetDx5pkrpI/kZotDlDUaYk0HVA5xrBVPdow4SAUIlhgKcJeJg4GRKW6xHusA==" - }, - "plimit-lit": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/plimit-lit/-/plimit-lit-1.6.1.tgz", - "integrity": "sha512-B7+VDyb8Tl6oMJT9oSO2CW8XC/T4UcJGrwOVoNGwOQsQYhlpfajmrMj5xeejqaASq3V/EqThyOeATEOMuSEXiA==", - "dev": true, - "requires": { - "queue-lit": "^1.5.1" - } - }, - "possible-typed-array-names": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", - "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", - "dev": true - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "psl": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", - "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", - "requires": { - "punycode": "^2.3.1" - } - }, - "punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==" - }, - "punycode.js": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", - "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==" - }, - "qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "requires": { - "side-channel": "^1.0.6" - } - }, - "querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" - }, - "queue-lit": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/queue-lit/-/queue-lit-1.5.2.tgz", - "integrity": "sha512-tLc36IOPeMAubu8BkW8YDBV+WyIgKlYU7zUNs0J5Vk9skSZ4JfGlPOqplP0aHdfv7HL0B2Pg6nwiq60Qc6M2Hw==", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" - }, - "raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "optional": true, - "peer": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reflect.getprototypeof": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.9", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.1", - "which-builtin-type": "^1.2.1" - } - }, - "regexp.prototype.flags": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "set-function-name": "^2.0.2" - } - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" - }, - "resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "requires": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "devOptional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "rrweb-cssom": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.7.1.tgz", - "integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==" - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-array-concat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", - "has-symbols": "^1.1.0", - "isarray": "^2.0.5" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safe-push-apply": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", - "dev": true, - "requires": { - "es-errors": "^1.3.0", - "isarray": "^2.0.5" - } - }, - "safe-regex-test": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-regex": "^1.2.1" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "requires": { - "xmlchars": "^2.2.0" - } - }, - "semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==" - }, - "send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - } - } - }, - "serve-static": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", - "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", - "requires": { - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.19.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true, - "peer": true - }, - "set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "requires": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - } - }, - "set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "requires": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - } - }, - "set-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", - "dev": true, - "requires": { - "dunder-proto": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0" - } - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "requires": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - } - }, - "side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "requires": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - } - }, - "side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - } - }, - "side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "requires": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true, - "peer": true - }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "optional": true, - "peer": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "smtp-server": { - "version": "3.13.6", - "resolved": "https://registry.npmjs.org/smtp-server/-/smtp-server-3.13.6.tgz", - "integrity": "sha512-dqbSPKn3PCq3Gp5hxBM99u7PET7cQSAWrauhtArJbc+zrf5xNEOjm9+Ob3lySySrRoIEvNE0dz+w2H/xWFJNRw==", - "requires": { - "base32.js": "0.1.0", - "ipv6-normalize": "1.0.1", - "nodemailer": "6.9.15", - "punycode.js": "2.3.1" - }, - "dependencies": { - "nodemailer": { - "version": "6.9.15", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.15.tgz", - "integrity": "sha512-AHf04ySLC6CIfuRtRiEYtGEXgRfa6INgWGluDhnxTZhHSKvrBu7lc1VVchQ0d8nPc4cFaZoPq8vkyNoZr0TpGQ==" - } - } - }, - "socket.io": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", - "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "cors": "~2.8.5", - "debug": "~4.3.2", - "engine.io": "~6.6.0", - "socket.io-adapter": "~2.5.2", - "socket.io-parser": "~4.2.4" - } - }, - "socket.io-adapter": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", - "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", - "requires": { - "debug": "~4.3.4", - "ws": "~8.17.1" - }, - "dependencies": { - "ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "requires": {} - } - } - }, - "socket.io-parser": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", - "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", - "requires": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1" - } - }, - "ssf": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.11.2.tgz", - "integrity": "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g==", - "requires": { - "frac": "~1.1.2" - } - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - }, - "stop-iteration-iterator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", - "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", - "dev": true, - "requires": { - "es-errors": "^1.3.0", - "internal-slot": "^1.1.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "optional": true, - "peer": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "optional": true, - "peer": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "string.prototype.trim": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-data-property": "^1.1.4", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.5", - "es-object-atoms": "^1.0.0", - "has-property-descriptors": "^1.0.2" - } - }, - "string.prototype.trimend": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "devOptional": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "strnum": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.0.tgz", - "integrity": "sha512-w0S//9BqZZGw0L0Y8uLSelFGnDJgTyyNQLmSlPnVz43zPAiqu3w4t8J8sDqqANOGeZIZ/9jWuPguYcEnsoHv4A==" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" - }, - "tar": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", - "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", - "optional": true, - "peer": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "peer": true - } - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, - "tough-cookie": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", - "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true, - "peer": true - }, - "ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", - "dev": true, - "requires": {} - }, - "ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dev": true, - "requires": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "dependencies": { - "acorn-walk": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", - "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", - "dev": true, - "requires": { - "acorn": "^8.11.0" - } - } - } - }, - "tsc-alias": { - "version": "1.8.16", - "resolved": "https://registry.npmjs.org/tsc-alias/-/tsc-alias-1.8.16.tgz", - "integrity": "sha512-QjCyu55NFyRSBAl6+MTFwplpFcnm2Pq01rR/uxfqJoLMm6X3O14KEGtaSDZpJYaE1bJBGDjD0eSuiIWPe2T58g==", - "dev": true, - "requires": { - "chokidar": "^3.5.3", - "commander": "^9.0.0", - "get-tsconfig": "^4.10.0", - "globby": "^11.0.4", - "mylas": "^2.1.9", - "normalize-path": "^3.0.0", - "plimit-lit": "^1.2.6" - } - }, - "tsconfig-paths": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", - "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==", - "dev": true, - "requires": { - "json5": "^2.2.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - } - }, - "typed-array-byte-length": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", - "dev": true, - "requires": { - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.14" - } - }, - "typed-array-byte-offset": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "for-each": "^0.3.3", - "gopd": "^1.2.0", - "has-proto": "^1.2.0", - "is-typed-array": "^1.1.15", - "reflect.getprototypeof": "^1.0.9" - } - }, - "typed-array-length": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0", - "reflect.getprototypeof": "^1.0.6" - } - }, - "typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true - }, - "unbox-primitive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", - "dev": true, - "requires": { - "call-bound": "^1.0.3", - "has-bigints": "^1.0.2", - "has-symbols": "^1.1.0", - "which-boxed-primitive": "^1.1.1" - } - }, - "undici-types": { - "version": "7.8.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz", - "integrity": "sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==" - }, - "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==" - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "url-join": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", - "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==" - }, - "url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-template": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-3.1.1.tgz", - "integrity": "sha512-4oszoaEKE/mQOtAmdMWqIRHmkxWkUZMnXFnjQ5i01CuRSK3uluxcH1MRVVVWmhlnzT1SCDfKxxficm2G37qzCA==" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true, - "peer": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" - }, - "uue": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/uue/-/uue-3.1.2.tgz", - "integrity": "sha512-axKLXVqwtdI/czrjG0X8hyV1KLgeWx8F4KvSbvVCnS+RUvsQMGRjx0kfuZDXXqj0LYvVJmx3B9kWlKtEdRrJLg==", - "requires": { - "escape-string-regexp": "~1.0.5", - "extend": "~3.0.0" - } - }, - "v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" - }, - "w3c-xmlserializer": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", - "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", - "requires": { - "xml-name-validator": "^5.0.0" - } - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true, - "peer": true - }, - "whatwg-encoding": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", - "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", - "requires": { - "iconv-lite": "0.6.3" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "whatwg-mimetype": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", - "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==" - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "peer": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", - "dev": true, - "requires": { - "is-bigint": "^1.1.0", - "is-boolean-object": "^1.2.1", - "is-number-object": "^1.1.1", - "is-string": "^1.1.1", - "is-symbol": "^1.1.1" - } - }, - "which-builtin-type": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", - "dev": true, - "requires": { - "call-bound": "^1.0.2", - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.1.0", - "is-finalizationregistry": "^1.1.0", - "is-generator-function": "^1.0.10", - "is-regex": "^1.2.1", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.1.0", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.16" - } - }, - "which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "requires": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - } - }, - "which-typed-array": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "for-each": "^0.3.5", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "optional": true, - "peer": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "wildstring": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/wildstring/-/wildstring-1.0.9.tgz", - "integrity": "sha512-XBNxKIMLO6uVHf1Xvo++HGWAZZoiVCHmEMCmZJzJ82vQsuUJCLw13Gzq0mRCATk7a3+ZcgeOKSDioavuYqtlfA==" - }, - "wmf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wmf/-/wmf-1.0.2.tgz", - "integrity": "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw==" - }, - "word": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/word/-/word-0.3.0.tgz", - "integrity": "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA==" - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "devOptional": true - }, - "ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "requires": {} - }, - "xlsx": { - "version": "0.18.5", - "resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.18.5.tgz", - "integrity": "sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ==", - "requires": { - "adler-32": "~1.3.0", - "cfb": "~1.2.1", - "codepage": "~1.15.0", - "crc-32": "~1.2.1", - "ssf": "~0.11.2", - "wmf": "~1.0.1", - "word": "~0.3.0" - } - }, - "xml-name-validator": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", - "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==" - }, - "xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" - }, - "xpath-ts": { - "version": "1.3.13", - "resolved": "https://registry.npmjs.org/xpath-ts/-/xpath-ts-1.3.13.tgz", - "integrity": "sha512-eNVXzDWbCV9KEB6fGNQ3qHFGC9PWBH7y2h13vZ+CMPNqOTZ+fgYTG4Sb0p5bVHiAwZrzgE6/tx987003P3dYpA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true, - "peer": true - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - } } } diff --git a/package.json b/package.json index a63031987..225da52f6 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^4.10.38", + "pdfjs-dist": "^3.6.172", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From 85018bbd8ba72315da99fd115be6c4c95b6a442e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Jul 2025 16:44:18 +0200 Subject: [PATCH 315/609] Edit goToProduct for classic FO --- src/versions/develop/pages/FO/classic/home/index.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index d666b2c44..b873b9b5d 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -200,7 +200,9 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { * @returns {Promise} */ async goToProductPage(page: Page, id: number): Promise { - await this.clickAndWaitForURL(page, this.productImg(id)); + //await this.clickAndWaitForURL(page, this.productImg(id)); + await page.locator(this.productImg(id)).click(); + await page.waitForLoadState('load'); } /** From 12ab85a728b40894ed44b7f854a65db2c1dc9d37 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 10:46:00 +0200 Subject: [PATCH 316/609] Increase timeout in createEditAddress --- src/versions/develop/pages/BO/customers/addresses/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..f685a6957 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -108,7 +108,7 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI } if ('waitForResponse' in page) { await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, + timeout: 3000, }); } } From f3839546fe7f80676b36350c3eec55b16c1891df Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:22:45 +0200 Subject: [PATCH 317/609] Edit require for catalog/product/create/tabDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index aa76b143d..8149658c4 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,13 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + } + if (semver.lt(psVersion, '8.2.0')) { + return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; } From 3691bb877ca1e620100d0547a704d639b1849ff9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:51:36 +0200 Subject: [PATCH 318/609] Edit setProductDescription for 8.2.1 --- .../catalog/products/create/tabDescription.ts | 4 +- .../products/create/tabDescriptiion.ts | 47 +++++++++++++++++++ 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 8149658c4..dfaa16b0f 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.2.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts new file mode 100644 index 000000000..521652fae --- /dev/null +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -0,0 +1,47 @@ +// Import pages +import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; + +import type FakerProduct from '@data/faker/product'; + +import type {Page} from 'playwright'; + +/** + * Bo product description tab, contains functions that can be used on the page + * @class + * @extends DescriptionTab + */ +class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on description tab + */ + constructor() { + super(); + + this.descriptionTabLink = '#product_description-tab-nav'; + this.productShortDescriptionIframe = '#product_description_description_short'; + this.productDescriptionIframe = '#product_description_description'; + } + + /** + * Set product description + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in description form + * @returns {Promise} + */ + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } + + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } +} + +const descriptionTab = new BOProductTabDescriptionVersion(); +export {descriptionTab, BOProductTabDescriptionVersion}; From fc6e0fc873fc3b248555a7b96e36a98f5b70fd11 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:25:43 +0200 Subject: [PATCH 319/609] Edit versionning for productDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index dfaa16b0f..47b2390a0 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '8.2.0')) { + if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; From cfb91d41fb3689a3f1707a164f47680ee985e7a2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:33:29 +0200 Subject: [PATCH 320/609] Edit productDescription --- .../8.2/pages/BO/catalog/products/create/tabDescriptiion.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts index 521652fae..44ef1299c 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -1,6 +1,6 @@ // Import pages import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; -import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/develop/pages/BO/catalog/products/create/tabDescription'; import type FakerProduct from '@data/faker/product'; @@ -12,6 +12,9 @@ import type {Page} from 'playwright'; * @extends DescriptionTab */ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + private readonly productShortDescriptionIframe: string; + private readonly productDescriptionIframe: string; + private productWithCombinationsInput: string; /** * @constructs * Setting up texts and selectors to use on description tab @@ -22,6 +25,7 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.descriptionTabLink = '#product_description-tab-nav'; this.productShortDescriptionIframe = '#product_description_description_short'; this.productDescriptionIframe = '#product_description_description'; + this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } /** From 49e06cdc55b1e1879214a3acf8d9eaeacf35d419 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:41:22 +0200 Subject: [PATCH 321/609] Edit typo on file name --- .../products/create/{tabDescriptiion.ts => tabDescription.ts} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/versions/8.2/pages/BO/catalog/products/create/{tabDescriptiion.ts => tabDescription.ts} (100%) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts similarity index 100% rename from src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts rename to src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts From 0d8d18c7e93bba75a313868555ed62b4f30c4721 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 09:42:02 +0200 Subject: [PATCH 322/609] Remove function from 8.2 --- .../catalog/products/create/tabDescription.ts | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index 44ef1299c..fdff2c6e2 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -27,24 +27,6 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.productDescriptionIframe = '#product_description_description'; this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } - - /** - * Set product description - * @param page {Page} Browser tab - * @param productData {FakerProduct} Data to set in description form - * @returns {Promise} - */ - async setProductDescription(page: Page, productData: FakerProduct): Promise { - await this.waitForSelectorAndClick(page, this.descriptionTabLink); - if (productData.type === 'combinations') { - await page.locator(this.productWithCombinationsInput).click(); - } - - await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); - - await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); - await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); - } } const descriptionTab = new BOProductTabDescriptionVersion(); From fd9534a72ac8d526f7128ce186e13cd4f75fce25 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 09:59:18 +0200 Subject: [PATCH 323/609] Rollback function delete --- .../catalog/products/create/tabDescription.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index fdff2c6e2..44ef1299c 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -27,6 +27,24 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.productDescriptionIframe = '#product_description_description'; this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } + + /** + * Set product description + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in description form + * @returns {Promise} + */ + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } + + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } } const descriptionTab = new BOProductTabDescriptionVersion(); From 1af87d96ad9ec86824334722952bf58f85c43647 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 10:23:58 +0200 Subject: [PATCH 324/609] Add setProductName for 8.2 --- .../catalog/products/create/tabDescription.ts | 2 +- .../pages/BO/catalog/products/create/index.ts | 18 ++++++++++++++++++ .../pages/BO/catalog/products/create/index.ts | 2 +- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 47b2390a0..06871259e 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '9.0.0')) { + if (semver.lt(psVersion, '8.3.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 249f1f452..478f0fba7 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,6 +19,24 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { + + /** + * Set product name + * @param page {Page} Browser tab + * @param name {string} Name of the product + * @param locale {string} Locale + * @returns {Promise} + */ + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); + } + + await this.setValue(page, this.productNameInput(locale), name); + } + /** * Set product * @param page {Page} Browser tab diff --git a/src/versions/develop/pages/BO/catalog/products/create/index.ts b/src/versions/develop/pages/BO/catalog/products/create/index.ts index fe90b5963..f37dbc245 100644 --- a/src/versions/develop/pages/BO/catalog/products/create/index.ts +++ b/src/versions/develop/pages/BO/catalog/products/create/index.ts @@ -45,7 +45,7 @@ class BOProductsCreatePage extends BOBasePage implements BOProductsCreatePageInt private readonly productNameLanguageDropdown: string; - private readonly productNameLanguageDropdownItem: (locale: string) => string; + protected readonly productNameLanguageDropdownItem: (locale: string) => string; private readonly productTypeLabel: string; From b4cbbfb5a1408805b23a58740ccc74e25408af8e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 31 Jul 2025 14:46:29 +0200 Subject: [PATCH 325/609] Add search results classic page for 8.2 version --- src/pages/FO/classic/searchResults/index.ts | 7 ++++++ .../8.1/pages/FO/classic/home/index.ts | 2 +- .../pages/BO/catalog/products/create/index.ts | 3 ++- .../pages/FO/classic/searchResults/index.ts | 23 +++++++++++++++++++ 4 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 src/versions/8.2/pages/FO/classic/searchResults/index.ts diff --git a/src/pages/FO/classic/searchResults/index.ts b/src/pages/FO/classic/searchResults/index.ts index c8e0ec99c..37c2a65b3 100644 --- a/src/pages/FO/classic/searchResults/index.ts +++ b/src/pages/FO/classic/searchResults/index.ts @@ -1,7 +1,14 @@ import type {FoSearchResultsPageInterface} from '@interfaces/FO/searchResults'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): FoSearchResultsPageInterface { + if (semver.lt(psVersion, '8.3.0')) { + return require('@versions/8.2/pages/FO/classic/searchResults').searchResultsPage; + } return require('@versions/develop/pages/FO/classic/searchResults').searchResultsPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/8.1/pages/FO/classic/home/index.ts b/src/versions/8.1/pages/FO/classic/home/index.ts index 55fc4d96a..9b9e84e8a 100644 --- a/src/versions/8.1/pages/FO/classic/home/index.ts +++ b/src/versions/8.1/pages/FO/classic/home/index.ts @@ -1,6 +1,6 @@ // Import pages import type {FoHomePageInterface} from '@interfaces/FO/home'; -import {FoHomePage} from '@versions/develop/pages/FO/classic/home/index'; +import {FoHomePage} from '@versions/develop/pages/FO/classic/home'; /** * Order confirmation page, contains functions that can be used on the page diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 478f0fba7..a4950a672 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -50,7 +50,8 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd // Set description await descriptionTab.setProductDescription(page, productData); // Set name - await this.setProductName(page, productData.nameFR, 'fr'); + + //await this.setProductName(page, productData.nameFR, 'fr'); await this.setProductName(page, productData.name, 'en'); // Set status diff --git a/src/versions/8.2/pages/FO/classic/searchResults/index.ts b/src/versions/8.2/pages/FO/classic/searchResults/index.ts new file mode 100644 index 000000000..c8d3dfd29 --- /dev/null +++ b/src/versions/8.2/pages/FO/classic/searchResults/index.ts @@ -0,0 +1,23 @@ +// Import pages + +import {FoSearchResultsPageInterface} from '@interfaces/FO/searchResults'; +import {type Page} from '@playwright/test'; +import {SearchResultsPage} from '@versions/develop/pages/FO/classic/searchResults'; + +/** + * FO search Results page, contains functions that can be used on the page + * @class + * @extends SearchResultsPage + */ +class FoSearchResultsPageVersion extends SearchResultsPage implements FoSearchResultsPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on search results page + */ + constructor(theme: string = 'classic') { + super(theme); + } +} + +const searchResultsPage = new FoSearchResultsPageVersion(); +export {searchResultsPage, FoSearchResultsPageVersion as SearchResultsPage}; From 4590d5b051a544232e1300a43e0b564c0a71dfb9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:12:34 +0200 Subject: [PATCH 326/609] Add selector for localization button import --- .../BO/international/localization/index.ts | 7 ++++++ .../BO/international/localization/index.ts | 22 +++++++++++++++++++ .../BO/international/localization/index.ts | 6 ++--- 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/international/localization/index.ts diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 2cd28c118..20b9c6228 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -1,7 +1,14 @@ import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { + if (semver.lt(psVersion, '1.7.8')) { + return require('@versions/1.7/pages/BO/international/localization').bo; + } return require('@versions/develop/pages/BO/international/localization'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/international/localization/index.ts b/src/versions/1.7.7/pages/BO/international/localization/index.ts new file mode 100644 index 000000000..2a3913cc7 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/international/localization/index.ts @@ -0,0 +1,22 @@ +import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/develop/pages/BO/international/localization'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } +} + +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index 8b37bc116..f97aceb66 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -31,7 +31,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio private readonly downloadPackDataToggleInput: (toggle: number) => string; - private readonly importButton: string; + protected importButton: string; private readonly defaultLanguageSelector: string; @@ -154,5 +154,5 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio return this.getAlertSuccessBlockParagraphContent(page); } } - -module.exports = new BOLocalizationPage(); +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; From a651a2cce107840a1112c8ae2b6503a5ff90d7ed Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:29:37 +0200 Subject: [PATCH 327/609] Fix typo --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 20b9c6228..6fd88e6e7 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '1.7.8')) { - return require('@versions/1.7/pages/BO/international/localization').bo; + return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); } From 22cf44b5f0ba325b31dc936cee1ca8a8ed71faf5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:45:05 +0200 Subject: [PATCH 328/609] fix bad require --- src/pages/BO/international/localization/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 6fd88e6e7..7975bb358 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -1,4 +1,4 @@ -import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import type {BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; import testContext from '@utils/test'; import semver from 'semver'; @@ -6,7 +6,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { - if (semver.lt(psVersion, '1.7.8')) { + if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); From 5a2700168045f82b695ae618217324a843423a0f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:54:12 +0200 Subject: [PATCH 329/609] Fix another typo --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 7975bb358..882d7eca2 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; + return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); } From 77beda6441fb04996a672ca4e25b18e92da503af Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 17:20:29 +0200 Subject: [PATCH 330/609] Edit locator for localization for 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index ad7e715d5..b74355ca7 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -167,7 +167,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly preferencesLink: string; - public readonly internationalParentLink: string; + public internationalParentLink: string; public readonly taxesLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1d40d1dd1..803aec3b1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,12 +13,14 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); - // Orders - this.ordersParentLink = 'li#maintab-AdminParentOrders'; - // Customers - this.customersParentLink = 'li#maintab-AdminParentCustomer'; - // Shipping - this.shippingLink = '#maintab-AdminParentShipping'; + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; + // Localization + this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; } } From f548287cb10744fec6656d89ce62a3255a247f02 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 09:42:02 +0200 Subject: [PATCH 331/609] Add localization link for 1.6.1 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index b74355ca7..93360baf7 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -171,7 +171,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly taxesLink: string; - public readonly localizationLink: string; + public localizationLink: string; public readonly locationsLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 803aec3b1..6f6b0ebb7 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -17,6 +17,7 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Localization this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + this.localizationLink = 'li#subtab-AdminLocalization'; // Orders this.ordersParentLink = 'li#maintab-AdminParentOrders'; // Shipping From 5b4eadc981a2bda8abe9d886218d5e43825f6220 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 14:36:33 +0200 Subject: [PATCH 332/609] Update 1.6 locators for localization --- .../BO/international/localization/index.ts | 3 ++ .../BO/localization/localization/index.ts | 31 +++++++++++++++++++ .../BO/international/localization/index.ts | 16 +++++----- 3 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 src/versions/1.6.1/pages/BO/localization/localization/index.ts diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 882d7eca2..7246adfd4 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts new file mode 100644 index 000000000..36a79a35b --- /dev/null +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -0,0 +1,31 @@ +import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/1.7.7/pages/BO/international/localization'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + // Import localization pack selectors + this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importStatesCheckbox = '#selection[]_states'; + this.importTaxesCheckbox = '#selection[]_taxes'; + this.importCurrenciesCheckbox = '#selection[]_currencies'; + this.importLanguagesCheckbox = '#selection[]_languages'; + this.importUnitsCheckbox = '#selection[]_units'; + this.updatepriceDisplayForGroupsCHeckbox = '#selection[]_groups'; + this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } +} + +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index f97aceb66..e36787d00 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -15,21 +15,21 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio public readonly successfulSettingsUpdateMessage: string; - private readonly importlocalizationPackSelect: string; + protected importlocalizationPackSelect: string; - private readonly importStatesCheckbox: string; + protected importStatesCheckbox: string; - private readonly importTaxesCheckbox: string; + protected importTaxesCheckbox: string; - private readonly importCurrenciesCheckbox: string; + protected importCurrenciesCheckbox: string; - private readonly importLanguagesCheckbox: string; + protected importLanguagesCheckbox: string; - private readonly importUnitsCheckbox: string; + protected importUnitsCheckbox: string; - private readonly updatepriceDisplayForGroupsCHeckbox: string; + protected updatepriceDisplayForGroupsCHeckbox: string; - private readonly downloadPackDataToggleInput: (toggle: number) => string; + protected downloadPackDataToggleInput: (toggle: number) => string; protected importButton: string; From 9cb9408e8ad36e22af3ab5221e79b6a4cbecd2af Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:13:07 +0200 Subject: [PATCH 333/609] Edit locator for localization select --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 36a79a35b..f2db4d355 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -15,7 +15,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importlocalizationPackSelect = '#iso_localization_pack'; this.importStatesCheckbox = '#selection[]_states'; this.importTaxesCheckbox = '#selection[]_taxes'; this.importCurrenciesCheckbox = '#selection[]_currencies'; From 8cd94c1bf1df7725611ad7e3f6c36f5e6d465790 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:30:51 +0200 Subject: [PATCH 334/609] Try edit importLocalizationPack method --- .../BO/localization/localization/index.ts | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index f2db4d355..5e2bfb682 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -1,5 +1,7 @@ +import ImportContent from '@data/types/localization'; import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/1.7.7/pages/BO/international/localization'; +import type {Page} from 'playwright'; /** * Addresses page, contains functions that can be used on the page @@ -25,6 +27,47 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } + + /* Methods */ + /** + * Import a localization pack + * @param page {Page} Browser tab + * @param country {string} Country to select + * @param contentToImport {ImportContent} Data of content to import to choose + * @param downloadPackData {boolean} True if we need to download pack data + * @return {Promise} + */ + async importLocalizationPack( + page: Page, + country: string, + contentToImport: ImportContent, + downloadPackData: boolean = true, + ): Promise { + // Choose which country to import + await page.locator(this.importlocalizationPackSelect).click(); + await page.locator('div.chosen-search input').fill(country); + await page.locator('ul.chosen-results li').filter({hasText: country}).click(); + + // Set content import checkboxes + await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); + await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); + await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); + await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); + await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); + await this.setHiddenCheckboxValue( + page, + this.updatepriceDisplayForGroupsCHeckbox, + contentToImport.updatePriceDisplayForGroups, + ); + + // Choose if we download pack of data + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); + + // Import the pack + await page.locator(this.importButton).click(); + + return this.getAlertSuccessBlockParagraphContent(page, 20000); + } } const boLocalizationPage = new BOLocalizationPage(); From 3864e994d006c32cdeda8a860b35a99e5cb0bdf5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:37:08 +0200 Subject: [PATCH 335/609] Edit select locator to click directly on div --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 5e2bfb682..6497187d8 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -44,7 +44,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza downloadPackData: boolean = true, ): Promise { // Choose which country to import - await page.locator(this.importlocalizationPackSelect).click(); + await page.locator('div.chosen-container').click(); await page.locator('div.chosen-search input').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); From 7fcae6825d53678a6f954cdc400f1afa6a0423b4 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:39:46 +0200 Subject: [PATCH 336/609] Use id instead of class --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 6497187d8..48e6f009a 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -44,7 +44,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza downloadPackData: boolean = true, ): Promise { // Choose which country to import - await page.locator('div.chosen-container').click(); + await page.locator('#iso_localization_pack_chosen').click(); await page.locator('div.chosen-search input').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); From de0fe3680ecadc3a2b7cab95a06cfa2ed90a1f04 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:43:58 +0200 Subject: [PATCH 337/609] Replace input locator by textbox --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 48e6f009a..1f2398b33 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -45,7 +45,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza ): Promise { // Choose which country to import await page.locator('#iso_localization_pack_chosen').click(); - await page.locator('div.chosen-search input').fill(country); + await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes From 77ba279d98e0fcfab2a106e0cbf283a3972dc42b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:53:36 +0200 Subject: [PATCH 338/609] Switch to playwright locators for importLocalizationPack function --- .../BO/localization/localization/index.ts | 30 ++++++++----------- 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 1f2398b33..b6e7d4b58 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,14 +17,6 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.importlocalizationPackSelect = '#iso_localization_pack'; - this.importStatesCheckbox = '#selection[]_states'; - this.importTaxesCheckbox = '#selection[]_taxes'; - this.importCurrenciesCheckbox = '#selection[]_currencies'; - this.importLanguagesCheckbox = '#selection[]_languages'; - this.importUnitsCheckbox = '#selection[]_units'; - this.updatepriceDisplayForGroupsCHeckbox = '#selection[]_groups'; - this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } @@ -49,16 +41,18 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes - await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); - await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); - await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); - await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); - await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); - await this.setHiddenCheckboxValue( - page, - this.updatepriceDisplayForGroupsCHeckbox, - contentToImport.updatePriceDisplayForGroups, - ); + // await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); + await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); + //await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); + await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); + //await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); + await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); + //await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); + await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); + //await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); + await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); + //await this.setHiddenCheckboxValue(page,this.updatepriceDisplayForGroupsCHeckbox, contentToImport.updatePriceDisplayForGroups); + await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); From 8645a4b15570827c461e06183bff450ff79c087c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:05:59 +0200 Subject: [PATCH 339/609] Edit data toggle check --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index b6e7d4b58..c9bdfe9a8 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,6 +17,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors + this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } From 5b28937fba051e9b9189d2bd7e350f761f35220b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:20:52 +0200 Subject: [PATCH 340/609] Edit toggle type --- .../1.6.1/pages/BO/localization/localization/index.ts | 4 ++-- .../develop/pages/BO/international/localization/index.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index c9bdfe9a8..16b788c04 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,7 +17,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; + this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } @@ -56,7 +56,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data - await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack await page.locator(this.importButton).click(); diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index e36787d00..6720bacf5 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -29,7 +29,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio protected updatepriceDisplayForGroupsCHeckbox: string; - protected downloadPackDataToggleInput: (toggle: number) => string; + protected downloadPackDataToggleInput: (toggle: number | string) => string; protected importButton: string; From b946095487c216b39db46d49559858afa77ea5e1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:23:10 +0200 Subject: [PATCH 341/609] Edit toggle type in develop too --- .../develop/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index 6720bacf5..581260942 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -62,7 +62,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio this.importLanguagesCheckbox = '#import_localization_pack_content_to_import_3'; this.importUnitsCheckbox = '#import_localization_pack_content_to_import_4'; this.updatepriceDisplayForGroupsCHeckbox = '#import_localization_pack_content_to_import_5'; - this.downloadPackDataToggleInput = (toggle: number) => `#import_localization_pack_download_pack_data_${toggle}`; + this.downloadPackDataToggleInput = (toggle: string | number) => `#import_localization_pack_download_pack_data_${toggle}`; this.importButton = '#form-import-localization-save-button'; // Configuration form selectors From 42efb778f90665c7966afaeb60ef7b5e4330ed7e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:39:43 +0200 Subject: [PATCH 342/609] Update import button locator in localization --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 16b788c04..874ca0cb3 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator(this.importButton).click(); + await page.locator('button.btn btn-default pull-right').filter({hasText: 'Import'}).click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From f72b0aefca66be9d6ac5392bdbd9498d3748bdcd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:53:56 +0200 Subject: [PATCH 343/609] Try using for import btn --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 874ca0cb3..c23df1986 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator('button.btn btn-default pull-right').filter({hasText: 'Import'}).click(); + await page.locator('i.process-import-icon').click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 75df83f763f6abbf1084039c842f0f0cdd2d2e45 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 17:08:01 +0200 Subject: [PATCH 344/609] Try click button by name --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index c23df1986..79a0694e4 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator('i.process-import-icon').click(); + await page.locator('button[name="submitLocalizationPack"]').click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 9c0245435521c13785d31e92d117692db0332962 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 10:24:11 +0200 Subject: [PATCH 345/609] handle succes notifications for 1.6.1 --- src/pages/BO/BOBasePage.ts | 17 ++++++++++++----- .../pages/BO/localization/localization/index.ts | 6 ------ 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 93360baf7..3d597d504 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -243,15 +243,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte protected alertSuccessBlock: string; - private readonly alertDangerBlock: string; + protected alertDangerBlock: string; - private readonly alertInfoBlock: string; + protected alertInfoBlock: string; protected alertSuccessBlockParagraph: string; protected alertDangerBlockParagraph: string; - private readonly alertInfoBlockParagraph: string; + protected alertInfoBlockParagraph: string; private readonly confirmationModal: string; @@ -1189,8 +1189,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte * @return {Promise} */ async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { - await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); - return this.getTextContent(page, this.alertSuccessBlockParagraph); + const shopVersion = testContext.getPSVersion(); + if (semver.lte(shopVersion, '7.0.0')) { + await this.elementVisible(page, this.alertSuccessBlock, timeout); + return this.getTextContent(page, this.alertSuccessBlock); + } + else { + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); + } } /** diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 79a0694e4..723880b65 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -42,17 +42,11 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes - // await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); - //await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); - //await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); - //await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); - //await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); - //await this.setHiddenCheckboxValue(page,this.updatepriceDisplayForGroupsCHeckbox, contentToImport.updatePriceDisplayForGroups); await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data From a85bcc00c7508ba1895a73f715084259ee80e9b7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 10:59:59 +0200 Subject: [PATCH 346/609] Add catalog parent and products subtab links --- src/pages/BO/BOBasePage.ts | 4 ++-- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 3d597d504..26a75b48a 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -97,9 +97,9 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly shoppingCartsLink: string; - public readonly catalogParentLink: string; + public catalogParentLink: string; - public readonly productsLink: string; + public productsLink: string; public readonly categoriesLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 6f6b0ebb7..ae2941796 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,6 +13,9 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Catalog + this.catalogParentLink = 'li#maintab-AdminCatalog'; + this.productsLink = 'li#subtab-AdminProducts'; // Customers this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Localization From d490c18c82c15d8c5a64eb758bdd9e49a9a2db97 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 11:46:19 +0200 Subject: [PATCH 347/609] overwrite newProductButton for 1.6.1 --- src/pages/BO/catalog/products/index.ts | 3 +++ .../1.6.1/pages/BO/catalog/products/index.ts | 25 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/catalog/products/index.ts diff --git a/src/pages/BO/catalog/products/index.ts b/src/pages/BO/catalog/products/index.ts index 8861f1eae..8f1462846 100644 --- a/src/pages/BO/catalog/products/index.ts +++ b/src/pages/BO/catalog/products/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products').productsPage; } diff --git a/src/versions/1.6.1/pages/BO/catalog/products/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/index.ts new file mode 100644 index 000000000..7b32a35b5 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/catalog/products/index.ts @@ -0,0 +1,25 @@ +// Import pages +import type {BOProductsPageInterface} from '@interfaces/BO/catalog/products'; +import {ProductsPage} from '@versions/1.7.7/pages/BO/catalog/products'; + +import type {Page} from 'playwright'; + +/** + * Bo products page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOProductsVersion extends ProductsPage implements BOProductsPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on products page + */ + constructor() { + super(); + // header + this.newProductButton = '#page-header-desc-product-new_product' + } +} + +const productsPage = new BOProductsVersion(); +export {productsPage, BOProductsVersion as ProductsPage}; From d74208652b406f0b3b30e3228f9923c60bfcde62 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 17:12:02 +0200 Subject: [PATCH 348/609] Start implements productCreate for 1.6.1 ::blocked --- src/pages/BO/catalog/products/create/index.ts | 3 + .../pages/BO/catalog/products/create/index.ts | 99 +++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/catalog/products/create/index.ts diff --git a/src/pages/BO/catalog/products/create/index.ts b/src/pages/BO/catalog/products/create/index.ts index eebb7adaa..78765f72b 100644 --- a/src/pages/BO/catalog/products/create/index.ts +++ b/src/pages/BO/catalog/products/create/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products/create').boProductsCreatePage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products/create').boProductsCreatePage; } diff --git a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts new file mode 100644 index 000000000..31766ad67 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts @@ -0,0 +1,99 @@ +// Import pages +import type {BOProductsCreatePageInterface} from '@interfaces/BO/catalog/products/create'; +import {BOProductsCreatePage} from '@versions/develop/pages/BO/catalog/products/create'; + +import descriptionTab from '@pages/BO/catalog/products/create/tabDescription'; +import pricingTab from '@pages/BO/catalog/products/create/tabPricing'; +import detailsTab from '@pages/BO/catalog/products/create/tabDetails'; +import virtualProductTab from '@pages/BO/catalog/products/create/tabVirtualProduct'; +import stocksTab from '@pages/BO/catalog/products/create/tabStocks'; +import packTab from '@pages/BO/catalog/products/create/tabPack'; + +import type FakerProduct from '@data/faker/product'; + +import type {Page} from 'playwright'; + +/** + * Bo create product page, contains functions that can be used on the page + * @class + * @extends BOProductsCreatePage + */ +class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { + + /** + * Set product name + * @param page {Page} Browser tab + * @param name {string} Name of the product + * @param locale {string} Locale + * @returns {Promise} + */ + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); + } + + await this.setValue(page, this.productNameInput(locale), name); + } + + /** + * Set product type + * @param page {Page} Browser tab + * @param productData {FakerProduct} + * @returns {Promise} + */ + async setProductType(page: Page, productData: FakerProduct): Promise { + switch (productData.type) { + case 'standard': + await page.locator('#simple_product').setChecked(true); + } + } + + /** + * Set product + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in new product page + * @returns {Promise} + */ + async setProduct(page: Page, productData: FakerProduct): Promise /**/{ + // INFORMATION TAB + // product type + await this.setProductType(page, productData); + // product name + await this.setProductName(page, productData.name, 'en'); + + // TODO BUG on 1.6.1.24 not possible to switch product creation tab + + + +/* //// Tab "Description" + // Set description + await descriptionTab.setProductDescription(page, productData); + // Set name + // Set status + await this.setProductStatus(page, productData.status); + + //// Tab "Details" + await detailsTab.setProductDetails(page, productData); + + //// Tab "Stocks" + if (productData.type === 'virtual') { + await virtualProductTab.setVirtualProduct(page, productData); + } else if (productData.type !== 'combinations') { + await stocksTab.setProductStock(page, productData); + } + + if (productData.type === 'pack') { + await packTab.setPackOfProducts(page, productData.pack); + } + + //// Tab "Pricing" + await pricingTab.setProductPricing(page, productData); +*/ + return this.saveProduct(page); + } +} + +const boProductsCreatePage = new BOProductsCreatePageVersion(); +export {boProductsCreatePage, BOProductsCreatePageVersion as BOProductsCreatePage}; From 257684f27b09f6b691893bf635cc1eb4190a4363 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 20 Aug 2025 15:19:12 +0200 Subject: [PATCH 349/609] Update develop localization --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 7246adfd4..63e76174b 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -12,7 +12,7 @@ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } - return require('@versions/develop/pages/BO/international/localization'); + return require('@versions/develop/pages/BO/international/localization').boLocalizationPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ From 8ed86e47084e512cea4c5ea39b2278a9a6ff21ea Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 20 Aug 2025 15:46:08 +0200 Subject: [PATCH 350/609] Update timeout to isStepCompleted --- src/versions/develop/pages/FO/classic/checkout/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/FO/classic/checkout/index.ts b/src/versions/develop/pages/FO/classic/checkout/index.ts index 0048f0875..79a7731dc 100644 --- a/src/versions/develop/pages/FO/classic/checkout/index.ts +++ b/src/versions/develop/pages/FO/classic/checkout/index.ts @@ -423,7 +423,7 @@ class CheckoutPage extends FOBasePage implements FoCheckoutPageInterface { * @returns {Promise} */ async isStepCompleted(page: Page, stepSelector: string): Promise { - return this.elementVisible(page, `${stepSelector}${this.stepFormSuccess}`, 1000); + return this.elementVisible(page, `${stepSelector}${this.stepFormSuccess}`, 2000); } /** From 7a092508ca68934c61d1fa3f9cc414a3a5acc844 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:36:43 +0200 Subject: [PATCH 351/609] Edit createCarrier for 8.2 --- src/pages/BO/BOBasePage.ts | 22 +++--- src/pages/BO/catalog/products/index.ts | 4 +- .../BO/international/localization/index.ts | 12 +-- src/utils/test.ts | 6 +- .../pages/BO/catalog/products/create/index.ts | 54 +++++++------- .../1.6.1/pages/BO/catalog/products/index.ts | 12 +-- .../pages/BO/customers/addresses/create.ts | 9 ++- .../1.6.1/pages/BO/dashboard/index.ts | 24 +++--- .../BO/localization/localization/index.ts | 74 +++++++++---------- .../pages/BO/shipping/carriers/create.ts | 7 +- .../BO/international/localization/index.ts | 12 +-- .../pages/BO/catalog/products/create/index.ts | 2 +- .../catalog/products/create/tabDescription.ts | 45 +++++------ .../8.2/pages/BO/shipping/carriers/create.ts | 5 +- .../pages/FO/classic/searchResults/index.ts | 8 +- 15 files changed, 148 insertions(+), 148 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 26a75b48a..94e3fe701 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -753,7 +753,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte await page.hover(parentSelector); //await this.clickAndWaitForURL(page, linkSelector); await page.locator(linkSelector).click(); - await page.waitForLoadState("load"); + await page.waitForLoadState('load'); } else { if (parentSelector !== '') { await this.clickSubMenu(page, parentSelector); @@ -761,7 +761,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte } //await this.clickAndWaitForURL(page, linkSelector); await page.locator(linkSelector).click(); - await page.waitForLoadState("load"); + await page.waitForLoadState('load'); let linkActiveClass: string = '-active'; // >= 1.7.8.0 @@ -1189,15 +1189,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte * @return {Promise} */ async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { - const shopVersion = testContext.getPSVersion(); - if (semver.lte(shopVersion, '7.0.0')) { - await this.elementVisible(page, this.alertSuccessBlock, timeout); - return this.getTextContent(page, this.alertSuccessBlock); - } - else { - await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); - return this.getTextContent(page, this.alertSuccessBlockParagraph); - } + const shopVersion = testContext.getPSVersion(); + + if (semver.lte(shopVersion, '7.0.0')) { + await this.elementVisible(page, this.alertSuccessBlock, timeout); + return this.getTextContent(page, this.alertSuccessBlock); + } + + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); } /** diff --git a/src/pages/BO/catalog/products/index.ts b/src/pages/BO/catalog/products/index.ts index 8f1462846..b71f2f7fc 100644 --- a/src/pages/BO/catalog/products/index.ts +++ b/src/pages/BO/catalog/products/index.ts @@ -6,8 +6,8 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products').productsPage; diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 63e76174b..26d0b8e84 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -6,12 +6,12 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; - } - if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; - } + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; + } + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; + } return require('@versions/develop/pages/BO/international/localization').boLocalizationPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/utils/test.ts b/src/utils/test.ts index 0c9878771..7bdce4199 100644 --- a/src/utils/test.ts +++ b/src/utils/test.ts @@ -50,8 +50,8 @@ export default { const version: string = process.env.PS_VERSION; return version - .replace(/\.x$/, '.99') - .replace(/^1\.7\./, '7.') - .replace(/^1\.6\./, '6.'); + .replace(/\.x$/, '.99') + .replace(/^1\.7\./, '7.') + .replace(/^1\.6\./, '6.'); }, }; diff --git a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts index 31766ad67..d4b7ced6b 100644 --- a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts +++ b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts @@ -19,55 +19,53 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { - - /** + /** * Set product name * @param page {Page} Browser tab * @param name {string} Name of the product * @param locale {string} Locale * @returns {Promise} */ - async setProductName(page: Page, name: string, locale: string = 'en'): Promise { - const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); - if (isShopMultiLanguages) { - await page.locator(this.productNameLanguageButton).click({timeout: 1000}); - await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); - } + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); - await this.setValue(page, this.productNameInput(locale), name); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); } - /** + await this.setValue(page, this.productNameInput(locale), name); + } + + /** * Set product type * @param page {Page} Browser tab * @param productData {FakerProduct} * @returns {Promise} */ - async setProductType(page: Page, productData: FakerProduct): Promise { - switch (productData.type) { - case 'standard': - await page.locator('#simple_product').setChecked(true); - } + async setProductType(page: Page, productData: FakerProduct): Promise { + switch (productData.type) { + case 'standard': + await page.locator('#simple_product').setChecked(true); } + } - /** + /** * Set product * @param page {Page} Browser tab * @param productData {FakerProduct} Data to set in new product page * @returns {Promise} */ - async setProduct(page: Page, productData: FakerProduct): Promise /**/{ - // INFORMATION TAB - // product type - await this.setProductType(page, productData); - // product name - await this.setProductName(page, productData.name, 'en'); + async setProduct(page: Page, productData: FakerProduct): Promise /**/{ + // INFORMATION TAB + // product type + await this.setProductType(page, productData); + // product name + await this.setProductName(page, productData.name, 'en'); - // TODO BUG on 1.6.1.24 not possible to switch product creation tab + // TODO BUG on 1.6.1.24 not possible to switch product creation tab - - -/* //// Tab "Description" + /* //// Tab "Description" // Set description await descriptionTab.setProductDescription(page, productData); // Set name @@ -91,8 +89,8 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd //// Tab "Pricing" await pricingTab.setProductPricing(page, productData); */ - return this.saveProduct(page); - } + return this.saveProduct(page); + } } const boProductsCreatePage = new BOProductsCreatePageVersion(); diff --git a/src/versions/1.6.1/pages/BO/catalog/products/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/index.ts index 7b32a35b5..c4ae31e79 100644 --- a/src/versions/1.6.1/pages/BO/catalog/products/index.ts +++ b/src/versions/1.6.1/pages/BO/catalog/products/index.ts @@ -10,15 +10,15 @@ import type {Page} from 'playwright'; * @extends ProductsPage */ class BOProductsVersion extends ProductsPage implements BOProductsPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on products page */ - constructor() { - super(); - // header - this.newProductButton = '#page-header-desc-product-new_product' - } + constructor() { + super(); + // header + this.newProductButton = '#page-header-desc-product-new_product'; + } } const productsPage = new BOProductsVersion(); diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 0c53c68d2..796aec7eb 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -6,6 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; + /** * @constructs * Setting up texts and selectors to use in addresses create page @@ -48,10 +49,10 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @returns {Promise} */ async createEditAddress( - page: Frame|Page, - addressData: FakerAddress, - save: boolean = true, - waitForNavigation: boolean = true, + page: Frame|Page, + addressData: FakerAddress, + save: boolean = true, + waitForNavigation: boolean = true, ): Promise { if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index ae2941796..fa20302bf 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,18 +13,18 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); - // Catalog - this.catalogParentLink = 'li#maintab-AdminCatalog'; - this.productsLink = 'li#subtab-AdminProducts'; - // Customers - this.customersParentLink = 'li#maintab-AdminParentCustomer'; - // Localization - this.internationalParentLink = 'li#maintab-AdminParentLocalization'; - this.localizationLink = 'li#subtab-AdminLocalization'; - // Orders - this.ordersParentLink = 'li#maintab-AdminParentOrders'; - // Shipping - this.shippingLink = '#maintab-AdminParentShipping'; + // Catalog + this.catalogParentLink = 'li#maintab-AdminCatalog'; + this.productsLink = 'li#subtab-AdminProducts'; + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; + // Localization + this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + this.localizationLink = 'li#subtab-AdminLocalization'; + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; } } diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 723880b65..d184de596 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -9,20 +9,20 @@ import type {Page} from 'playwright'; * @extends BOBasePage */ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on addresses page */ - constructor() { - super(); + constructor() { + super(); - // Import localization pack selectors - this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; - this.importButton = 'button.btn.btn-primary:has-text("Import")'; - } + // Import localization pack selectors + this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } - /* Methods */ - /** + /* Methods */ + /** * Import a localization pack * @param page {Page} Browser tab * @param country {string} Country to select @@ -30,34 +30,34 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza * @param downloadPackData {boolean} True if we need to download pack data * @return {Promise} */ - async importLocalizationPack( - page: Page, - country: string, - contentToImport: ImportContent, - downloadPackData: boolean = true, - ): Promise { - // Choose which country to import - await page.locator('#iso_localization_pack_chosen').click(); - await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); - await page.locator('ul.chosen-results li').filter({hasText: country}).click(); - - // Set content import checkboxes - await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); - await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); - await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); - await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); - await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); - await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); - - // Choose if we download pack of data - await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); - - // Import the pack - await page.locator('button[name="submitLocalizationPack"]').click(); - - return this.getAlertSuccessBlockParagraphContent(page, 20000); - } + async importLocalizationPack( + page: Page, + country: string, + contentToImport: ImportContent, + downloadPackData: boolean = true, + ): Promise { + // Choose which country to import + await page.locator('#iso_localization_pack_chosen').click(); + await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); + await page.locator('ul.chosen-results li').filter({hasText: country}).click(); + + // Set content import checkboxes + await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); + await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); + await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); + await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); + await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); + await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); + + // Choose if we download pack of data + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); + + // Import the pack + await page.locator('button[name="submitLocalizationPack"]').click(); + + return this.getAlertSuccessBlockParagraphContent(page, 20000); + } } const boLocalizationPage = new BOLocalizationPage(); -export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file +export {boLocalizationPage, BOLocalizationPage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts index 1583b0fe7..7faffff1f 100644 --- a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts @@ -2,10 +2,9 @@ import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/cr import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { - constructor() { - super(); - - } + constructor() { + super(); + } } const boCarriersCreatePage = new BOCarriersCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/international/localization/index.ts b/src/versions/1.7.7/pages/BO/international/localization/index.ts index 2a3913cc7..db290dd42 100644 --- a/src/versions/1.7.7/pages/BO/international/localization/index.ts +++ b/src/versions/1.7.7/pages/BO/international/localization/index.ts @@ -7,16 +7,16 @@ import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/develop * @extends BOBasePage */ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on addresses page */ - constructor() { - super(); + constructor() { + super(); - this.importButton = 'button.btn.btn-primary:has-text("Import")'; - } + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } } const boLocalizationPage = new BOLocalizationPage(); -export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file +export {boLocalizationPage, BOLocalizationPage}; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index a4950a672..6efb18238 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,7 +19,6 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { - /** * Set product name * @param page {Page} Browser tab @@ -29,6 +28,7 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd */ async setProductName(page: Page, name: string, locale: string = 'en'): Promise { const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { await page.locator(this.productNameLanguageButton).click({timeout: 1000}); await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index 44ef1299c..faa024145 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -12,39 +12,42 @@ import type {Page} from 'playwright'; * @extends DescriptionTab */ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { - private readonly productShortDescriptionIframe: string; - private readonly productDescriptionIframe: string; - private productWithCombinationsInput: string; - /** + private readonly productShortDescriptionIframe: string; + + private readonly productDescriptionIframe: string; + + private productWithCombinationsInput: string; + + /** * @constructs * Setting up texts and selectors to use on description tab */ - constructor() { - super(); + constructor() { + super(); - this.descriptionTabLink = '#product_description-tab-nav'; - this.productShortDescriptionIframe = '#product_description_description_short'; - this.productDescriptionIframe = '#product_description_description'; - this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; - } + this.descriptionTabLink = '#product_description-tab-nav'; + this.productShortDescriptionIframe = '#product_description_description_short'; + this.productDescriptionIframe = '#product_description_description'; + this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; + } - /** + /** * Set product description * @param page {Page} Browser tab * @param productData {FakerProduct} Data to set in description form * @returns {Promise} */ - async setProductDescription(page: Page, productData: FakerProduct): Promise { - await this.waitForSelectorAndClick(page, this.descriptionTabLink); - if (productData.type === 'combinations') { - await page.locator(this.productWithCombinationsInput).click(); - } + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } - await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); - await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); - await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); - } + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } } const descriptionTab = new BOProductTabDescriptionVersion(); diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 1aecaf958..8403c5272 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -1,6 +1,7 @@ import type FakerCarrier from '@data/faker/carrier'; import type FakerGroup from '@data/faker/group'; import {type CarrierRange} from '@data/types/carrier'; +import {tr} from '@faker-js/faker'; import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/develop/pages/BO/shipping/carriers/create'; import type {Page} from 'playwright'; @@ -100,9 +101,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - if (!carrierData.freeShipping) { - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); diff --git a/src/versions/8.2/pages/FO/classic/searchResults/index.ts b/src/versions/8.2/pages/FO/classic/searchResults/index.ts index c8d3dfd29..34f2f5090 100644 --- a/src/versions/8.2/pages/FO/classic/searchResults/index.ts +++ b/src/versions/8.2/pages/FO/classic/searchResults/index.ts @@ -10,13 +10,13 @@ import {SearchResultsPage} from '@versions/develop/pages/FO/classic/searchResult * @extends SearchResultsPage */ class FoSearchResultsPageVersion extends SearchResultsPage implements FoSearchResultsPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on search results page */ - constructor(theme: string = 'classic') { - super(theme); - } + constructor(theme: string = 'classic') { + super(theme); + } } const searchResultsPage = new FoSearchResultsPageVersion(); From 17ec3abde368f54878b2e8ea0d94ee25ca7b6b2f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:45:03 +0200 Subject: [PATCH 352/609] Try better way for handlingCost and freeShipping --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 8403c5272..66a29cee2 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,8 +100,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); + + if (!carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); + } + if (!carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); + } if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 45f694c34be9184e372f72654a0f3aba8f481cee Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:51:24 +0200 Subject: [PATCH 353/609] Handle set enabled --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 66a29cee2..9c3d7e3dc 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -202,7 +202,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + if (!carrierData.enable) { + await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + } await page.locator(this.finishButton).click(); // Return successful message From d3b76f3ba9345767be0598e8c0fc2110d97e8ffc Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 15:39:51 +0200 Subject: [PATCH 354/609] Add new way to handle toggle for freeshipping, handlingcost, enable --- .../8.2/pages/BO/shipping/carriers/create.ts | 40 ++++++++++++++++--- 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 9c3d7e3dc..e833a385b 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,13 +100,30 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - - if (!carrierData.freeShipping) { + /* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - } - if (!carrierData.handlingCosts) { + }*/ + if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle('off')); + }} + if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle('on')); + }} + + +/* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + }*/ + if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle('off')); + }} + if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle('on')); + }} if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -202,9 +219,20 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - if (!carrierData.enable) { +/* if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + }*/ + if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.enable) { + await this.setChecked(page, this.enableToggle('off')); + } + } + if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.enable) { + await this.setChecked(page, this.enableToggle('on')); + } } + await page.locator(this.finishButton).click(); // Return successful message From 955fc46894e4f9d1093d0edec881e434f05de687 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 09:26:45 +0200 Subject: [PATCH 355/609] Overide locator for carrier enable in 1.7.7 --- src/pages/BO/shipping/carriers/create.ts | 3 +++ .../1.7.7/pages/BO/shipping/carriers/create.ts | 13 +++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/shipping/carriers/create.ts diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index 4adcd9105..df83938c6 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts new file mode 100644 index 000000000..095e9b604 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -0,0 +1,13 @@ +import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; +import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; + +class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { + constructor() { + super(); + // Summary + this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; + } +} + +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; From e2379dd2aee6c3f30e00595c28daf34fefdb5c5c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 09:30:57 +0200 Subject: [PATCH 356/609] Second overide for carriers creation --- src/versions/1.7.7/pages/BO/shipping/carriers/create.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts index 095e9b604..eae428702 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -4,6 +4,10 @@ import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2 class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { constructor() { super(); + + // Shipping locations and costs + this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; + this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; // Summary this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; } From 7c466ee5c0577063d9fb2dfcadca183eeaba32b2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:02:30 +0200 Subject: [PATCH 357/609] Force click freeshipping and shipping cost --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index e833a385b..7a319ae43 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off')); + await this.setChecked(page, this.freeShippingToggle('off'), true, true); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on')); + await this.setChecked(page, this.freeShippingToggle('on'), true, true); }} @@ -118,11 +118,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off')); + await this.setChecked(page, this.addHandlingCostsToggle('off'), true, true); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on')); + await this.setChecked(page, this.addHandlingCostsToggle('on'), true, true); }} if (carrierData.billing === 'According to total price') { From 8e0a0323d5f4fcbd1202c81a698b4aaaf33ea7f0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:11:15 +0200 Subject: [PATCH 358/609] Add force enable --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 7a319ae43..e21019416 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -224,12 +224,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off')); + await this.setChecked(page, this.enableToggle('off'), true, true); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on')); + await this.setChecked(page, this.enableToggle('on'), true, true); } } From 1263b9d47b6517dfed4ddbd512bb56dd2c8e7491 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:18:17 +0200 Subject: [PATCH 359/609] Remove force click --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index e21019416..308fa67c3 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off'), true, true); + await this.setChecked(page, this.freeShippingToggle('off'), true); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on'), true, true); + await this.setChecked(page, this.freeShippingToggle('on'), true); }} @@ -118,11 +118,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off'), true, true); + await this.setChecked(page, this.addHandlingCostsToggle('off'), true); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on'), true, true); + await this.setChecked(page, this.addHandlingCostsToggle('on'), true); }} if (carrierData.billing === 'According to total price') { @@ -224,12 +224,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off'), true, true); + await this.setChecked(page, this.enableToggle('off'), true); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on'), true, true); + await this.setChecked(page, this.enableToggle('on'), true); } } From ee08da15a006e296652252656303a61bfdc987b9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:26:07 +0200 Subject: [PATCH 360/609] Try other way to click --- .../8.2/pages/BO/shipping/carriers/create.ts | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 308fa67c3..0f382ddc5 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off'), true); + //await this.setChecked(page, this.freeShippingToggle('off'), true); + await page.locator(this.freeShippingToggle('off')).click(); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on'), true); + //await this.setChecked(page, this.freeShippingToggle('on'), true); + await page.locator(this.freeShippingToggle('on')).click(); }} @@ -118,11 +120,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off'), true); + //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); + await page.locator(this.addHandlingCostsToggle('off')).click(); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on'), true); + //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); + await page.locator(this.addHandlingCostsToggle('on')).click(); }} if (carrierData.billing === 'According to total price') { @@ -224,12 +228,15 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off'), true); + //await this.setChecked(page, this.enableToggle('off'), true); + await page.locator(this.enableToggle('off')).click(); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on'), true); + //await this.setChecked(page, this.enableToggle('on'), true); + await page.locator(this.enableToggle('on')).click(); + } } From 316b9ccc0e8750a96259cbf2dff11d1bc98d8ebe Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:44:23 +0200 Subject: [PATCH 361/609] Try rollback to the old method --- .../8.2/pages/BO/shipping/carriers/create.ts | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 0f382ddc5..f7795a5ab 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,10 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - /* if (!carrierData.freeShipping) { + if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - }*/ - if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); await page.locator(this.freeShippingToggle('off')).click(); @@ -112,13 +112,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr if (carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('on'), true); await page.locator(this.freeShippingToggle('on')).click(); - }} + }}*/ -/* if (!carrierData.handlingCosts) { + if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - }*/ - if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); await page.locator(this.addHandlingCostsToggle('off')).click(); @@ -127,7 +127,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr if (carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); await page.locator(this.addHandlingCostsToggle('on')).click(); - }} + }}*/ if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -223,10 +223,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary -/* if (!carrierData.enable) { + if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - }*/ - if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { //await this.setChecked(page, this.enableToggle('off'), true); await page.locator(this.enableToggle('off')).click(); @@ -238,7 +238,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.enableToggle('on')).click(); } - } + }*/ await page.locator(this.finishButton).click(); From cf8c4fb6dbeaedbb59d6025223ca5971a64cebc5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:57:37 +0200 Subject: [PATCH 362/609] Try again another way for carriers --- .../8.2/pages/BO/shipping/carriers/create.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index f7795a5ab..4676f0b16 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,9 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - if (!carrierData.freeShipping) { +/* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - } + }*/ + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).click({ force: true, timeout: 1000}); /* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); @@ -115,9 +116,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }}*/ - if (!carrierData.handlingCosts) { +/* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + }*/ + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).click({ force: true, timeout: 1000}); /* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); @@ -223,9 +225,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - if (!carrierData.enable) { +/* if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - } + }*/ + + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).click({ force: true, timeout: 1000}); + /* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { //await this.setChecked(page, this.enableToggle('off'), true); From 4d9edaab2ba963f3e592357de9500d8767c31763 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 14:54:47 +0200 Subject: [PATCH 363/609] Try other method for freeshipping and handling cost --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 4676f0b16..f7af8ee88 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -103,7 +103,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr /* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); }*/ - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); @@ -119,7 +119,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr /* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); }*/ - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); @@ -229,7 +229,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); }*/ - await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { From f18bd57ff8ddc0daf73f1ed9f759d46b01bf8d17 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 09:46:32 +0200 Subject: [PATCH 364/609] Try remove locator overide for 1.7.7.8 --- .../pages/BO/shipping/carriers/create.ts | 6 ++-- .../8.2/pages/BO/shipping/carriers/create.ts | 32 ++----------------- 2 files changed, 5 insertions(+), 33 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts index eae428702..54516c485 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -6,10 +6,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr super(); // Shipping locations and costs - this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; - this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; + //this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; + //this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; // Summary - this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; + //this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; } } diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index f7af8ee88..c0f369e44 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,36 +100,8 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs -/* if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - }*/ - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 1000}); -/* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.freeShipping) { - //await this.setChecked(page, this.freeShippingToggle('off'), true); - await page.locator(this.freeShippingToggle('off')).click(); - }} - if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.freeShipping) { - //await this.setChecked(page, this.freeShippingToggle('on'), true); - await page.locator(this.freeShippingToggle('on')).click(); - }}*/ - - -/* if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - }*/ - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 1000}); -/* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.handlingCosts) { - //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); - await page.locator(this.addHandlingCostsToggle('off')).click(); - }} - if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.handlingCosts) { - //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); - await page.locator(this.addHandlingCostsToggle('on')).click(); - }}*/ + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From fffb27d733657cafa65ccaff1da4dfc79e8bca89 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:11:22 +0200 Subject: [PATCH 365/609] Try click by label for carriers?? --- .../8.2/pages/BO/shipping/carriers/create.ts | 27 +++++-------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index c0f369e44..37c833124 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,8 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -197,25 +199,8 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary -/* if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - }*/ - - await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - -/* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.enable) { - //await this.setChecked(page, this.enableToggle('off'), true); - await page.locator(this.enableToggle('off')).click(); - } - } - if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.enable) { - //await this.setChecked(page, this.enableToggle('on'), true); - await page.locator(this.enableToggle('on')).click(); - - } - }*/ + //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); + await page.getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); From 1d0301fe7a8ed79be72bec85faf6adea701935e8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:20:39 +0200 Subject: [PATCH 366/609] Try add locator --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 37c833124..104a2d504 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From fd76fe8a05dafe22be1417875b52c6a6922112b6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:29:18 +0200 Subject: [PATCH 367/609] Try other way ... --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 104a2d504..9ceaab7b9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('shipping_handling_cost').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 35613af48bd472b91df0950905e31b4e86eb16c2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:46:51 +0200 Subject: [PATCH 368/609] edit name error --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 9ceaab7b9..d0ce521a7 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,7 +101,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('shipping_handling_cost').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('shipping_handling').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); From d8c1dbe159df94137c92e0aa5df462de4ab09603 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:55:55 +0200 Subject: [PATCH 369/609] Try getByRole --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d0ce521a7..d8a2507fb 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('shipping_handling').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 32b8cd2e3f921592a4dbff5c0ab7036cdc91f891 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 11:00:43 +0200 Subject: [PATCH 370/609] Add missing name to get by role --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d8a2507fb..fa805c1c7 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'shipping_handling'}).getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'is_free'}).getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -200,7 +200,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - await page.getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'active'}).getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); From d541a5014f6e15355c9b2399d98b83134860634b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:15:17 +0200 Subject: [PATCH 371/609] Try conditions on ID# --- .../8.2/pages/BO/shipping/carriers/create.ts | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index fa805c1c7..91d6b61d9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,19 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio', {name: 'shipping_handling'}).getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + if (carrierData.freeShipping) { + await page.locator('#is_free_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.freeShipping) { + await page.locator('#is_free_off').setChecked(true, {timeout: 1500}); + } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio', {name: 'is_free'}).getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + if (carrierData.handlingCosts) { + await page.locator('#shipping_handling_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.handlingCosts) { + await page.locator('#shipping_handling_off').setChecked(true, {timeout: 1500}); + } if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -200,7 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - await page.getByRole('radio', {name: 'active'}).getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + if (carrierData.enable) { + await page.locator('#active_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.enable) { + await page.locator('#active_off').setChecked(true, {timeout: 1500}); + } await page.locator(this.finishButton).click(); From 94c16fac5dc84222904bf24806fea4c4b13602ec Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:24:36 +0200 Subject: [PATCH 372/609] Try force click --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 91d6b61d9..2833c2e99 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -102,17 +102,17 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.freeShipping) { - await page.locator('#is_free_on').setChecked(true, {timeout: 1500}); + await page.locator('#is_free_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.freeShipping) { - await page.locator('#is_free_off').setChecked(true, {timeout: 1500}); + await page.locator('#is_free_off').setChecked(true, {force: true, timeout: 1500}); } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.handlingCosts) { - await page.locator('#shipping_handling_on').setChecked(true, {timeout: 1500}); + await page.locator('#shipping_handling_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.handlingCosts) { - await page.locator('#shipping_handling_off').setChecked(true, {timeout: 1500}); + await page.locator('#shipping_handling_off').setChecked(true, {force: true, timeout: 1500}); } if (carrierData.billing === 'According to total price') { @@ -211,10 +211,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); if (carrierData.enable) { - await page.locator('#active_on').setChecked(true, {timeout: 1500}); + await page.locator('#active_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.enable) { - await page.locator('#active_off').setChecked(true, {timeout: 1500}); + await page.locator('#active_off').setChecked(true, {force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From 1b27016ca08d27edfd5792221c16f7d16afe83a5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:33:12 +0200 Subject: [PATCH 373/609] try click instead of set checked --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 2833c2e99..d6bbe6a35 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -102,17 +102,17 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.freeShipping) { - await page.locator('#is_free_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#is_free_on').click({force: true, timeout: 1500}); } if (!carrierData.freeShipping) { - await page.locator('#is_free_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#is_free_off').click({force: true, timeout: 1500}); } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.handlingCosts) { - await page.locator('#shipping_handling_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#shipping_handling_on').click({force: true, timeout: 1500}); } if (!carrierData.handlingCosts) { - await page.locator('#shipping_handling_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#shipping_handling_off').click({force: true, timeout: 1500}); } if (carrierData.billing === 'According to total price') { @@ -211,10 +211,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); if (carrierData.enable) { - await page.locator('#active_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#active_on').click({force: true, timeout: 1500}); } if (!carrierData.enable) { - await page.locator('#active_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#active_off').click({force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From 96b89a2620258e6f79b5930fe53704639010e276 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:51:29 +0200 Subject: [PATCH 374/609] force click enable --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d6bbe6a35..ec8caf154 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -210,13 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - if (carrierData.enable) { + if (carrierData.enable === true) { await page.locator('input#active_on').click({force: true, timeout: 1500}); } - if (!carrierData.enable) { + if (carrierData.enable === false) { await page.locator('input#active_off').click({force: true, timeout: 1500}); } - await page.locator(this.finishButton).click(); // Return successful message From b870e38e92eeab95ccc2a3109173f162f58b4a42 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:57:05 +0200 Subject: [PATCH 375/609] Try inverse active on and off --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index ec8caf154..21dad15ef 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -210,11 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); + // TODO here something is weird when enable data is true we have to click active_off !!! even if in DOM yes = active_on if (carrierData.enable === true) { - await page.locator('input#active_on').click({force: true, timeout: 1500}); + await page.locator('input#active_off').click({force: true, timeout: 1500}); } if (carrierData.enable === false) { - await page.locator('input#active_off').click({force: true, timeout: 1500}); + await page.locator('input#active_on').click({force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From 330dca8095831de07e784563ea3421e6cdd2b98a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 15:00:47 +0200 Subject: [PATCH 376/609] Back to setChecked for enable button --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 21dad15ef..faee5fdb4 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -209,14 +209,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - // TODO here something is weird when enable data is true we have to click active_off !!! even if in DOM yes = active_on - if (carrierData.enable === true) { - await page.locator('input#active_off').click({force: true, timeout: 1500}); - } - if (carrierData.enable === false) { - await page.locator('input#active_on').click({force: true, timeout: 1500}); - } + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); // Return successful message From 80f105643c8c4280a0ab2b5d6b164dc8e4715d34 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 16:13:17 +0200 Subject: [PATCH 377/609] Comment waitForResponse --- .../develop/pages/BO/customers/addresses/create.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index f685a6957..41c9ae8e7 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -103,14 +103,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI ): Promise { if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { + +/* if ('keyboard' in page) { await page.keyboard.press('Tab'); } if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { + await page.waitForResponse('**!/sell/customers/customer-information**', { timeout: 3000, }); - } + }*/ } await this.setValue(page, this.customerAddressdniInput, addressData.dni); await this.setValue(page, this.customerAddressAliasInput, addressData.alias); From 428c5d5fa81ebbdd756acf7b3d46beed433d4c0c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 16:25:26 +0200 Subject: [PATCH 378/609] Comment another -waitForResponse- --- src/versions/develop/pages/BO/orders/create.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 8c1287503..6cbf1832d 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -693,7 +693,8 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac // Add to cart await page.locator(this.addtoCartButton).click(); // Wait for the ajax call to be over (no visible feedback sadly) - await page.waitForResponse('**/sell/orders/carts/**/products**'); + // Disabled temporary + //await page.waitForResponse('**/sell/orders/carts/**/products**'); // The table visible is required, but on second addition it is always visible anyway await this.waitForVisibleSelector(page, this.productsTable); From 7c4ac43b93a4de0580bf03c4b0d4d8aaac312f08 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 17:43:05 +0200 Subject: [PATCH 379/609] Add await to dialogListener --- src/pages/commonPage.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/commonPage.ts b/src/pages/commonPage.ts index 2a787520d..0492c4004 100644 --- a/src/pages/commonPage.ts +++ b/src/pages/commonPage.ts @@ -317,13 +317,13 @@ export default class CommonPage implements CommonPageInterface { * @return {Promise} */ async dialogListener(page: Page, accept: boolean = true, text: string = ''): Promise { - page.once('dialog', (dialog) => { + page.once('dialog', async (dialog) => { if (accept && text === '') { - dialog.accept(); + await dialog.accept(); } else if (text !== '') { - dialog.accept(text); + await dialog.accept(text); } else { - dialog.dismiss(); + await dialog.dismiss(); } }); } From 708c0a5d3ebee32c97534600b9d57df19b201a56 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 3 Sep 2025 08:51:29 +0200 Subject: [PATCH 380/609] Try force remove dialog handler before handling new one --- src/pages/commonPage.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pages/commonPage.ts b/src/pages/commonPage.ts index 0492c4004..7c9a63e53 100644 --- a/src/pages/commonPage.ts +++ b/src/pages/commonPage.ts @@ -317,6 +317,7 @@ export default class CommonPage implements CommonPageInterface { * @return {Promise} */ async dialogListener(page: Page, accept: boolean = true, text: string = ''): Promise { + page.removeAllListeners?.('dialog'); page.once('dialog', async (dialog) => { if (accept && text === '') { await dialog.accept(); From f725e0e7b42417f5291bcb9aa86d93b92a8890d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Sep 2025 05:06:36 +0000 Subject: [PATCH 381/609] Bump @types/node from 24.4.0 to 24.5.2 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.4.0 to 24.5.2. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.5.2 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 10ba0a35e..1dfb89d04 100644 --- a/package-lock.json +++ b/package-lock.json @@ -610,11 +610,11 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.4.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.4.0.tgz", - "integrity": "sha512-gUuVEAK4/u6F9wRLznPUU4WGUacSEBDPoC2TrBkw3GAnOLHBL45QdfHOXp1kJ4ypBGLxTOB+t7NJLpKoC3gznQ==", + "version": "24.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz", + "integrity": "sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==", "dependencies": { - "undici-types": "~7.11.0" + "undici-types": "~7.12.0" } }, "node_modules/@types/semver": { @@ -6338,9 +6338,9 @@ } }, "node_modules/undici-types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.11.0.tgz", - "integrity": "sha512-kt1ZriHTi7MU+Z/r9DOdAI3ONdaR3M3csEaRc6ewa4f4dTvX4cQCbJ4NkEn0ohE4hHtq85+PhPSTY+pO/1PwgA==" + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz", + "integrity": "sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==" }, "node_modules/universalify": { "version": "0.2.0", @@ -7163,11 +7163,11 @@ "dev": true }, "@types/node": { - "version": "24.4.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.4.0.tgz", - "integrity": "sha512-gUuVEAK4/u6F9wRLznPUU4WGUacSEBDPoC2TrBkw3GAnOLHBL45QdfHOXp1kJ4ypBGLxTOB+t7NJLpKoC3gznQ==", + "version": "24.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz", + "integrity": "sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==", "requires": { - "undici-types": "~7.11.0" + "undici-types": "~7.12.0" } }, "@types/semver": { @@ -11166,9 +11166,9 @@ } }, "undici-types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.11.0.tgz", - "integrity": "sha512-kt1ZriHTi7MU+Z/r9DOdAI3ONdaR3M3csEaRc6ewa4f4dTvX4cQCbJ4NkEn0ohE4hHtq85+PhPSTY+pO/1PwgA==" + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz", + "integrity": "sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==" }, "universalify": { "version": "0.2.0", From 0e9c4b94b32a9fb8382248fcf009a2114e56104a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Sep 2025 05:08:20 +0000 Subject: [PATCH 382/609] Bump @typescript-eslint/eslint-plugin from 8.43.0 to 8.44.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.43.0 to 8.44.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.44.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.44.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 214 +++++++++++++++++++++++----------------------- 1 file changed, 107 insertions(+), 107 deletions(-) diff --git a/package-lock.json b/package-lock.json index 10ba0a35e..f237b4143 100644 --- a/package-lock.json +++ b/package-lock.json @@ -630,16 +630,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.43.0.tgz", - "integrity": "sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.0.tgz", + "integrity": "sha512-EGDAOGX+uwwekcS0iyxVDmRV9HX6FLSM5kzrAToLTsr9OWCIKG/y3lQheCq18yZ5Xh78rRKJiEpP0ZaCs4ryOQ==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.43.0", - "@typescript-eslint/type-utils": "8.43.0", - "@typescript-eslint/utils": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0", + "@typescript-eslint/scope-manager": "8.44.0", + "@typescript-eslint/type-utils": "8.44.0", + "@typescript-eslint/utils": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -653,7 +653,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.43.0", + "@typescript-eslint/parser": "^8.44.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } @@ -682,15 +682,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.43.0.tgz", - "integrity": "sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.0.tgz", + "integrity": "sha512-VGMpFQGUQWYT9LfnPcX8ouFojyrZ/2w3K5BucvxL/spdNehccKhB4jUyB1yBCXpr2XFm0jkECxgrpXBW2ipoAw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.43.0", - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/typescript-estree": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0", + "@typescript-eslint/scope-manager": "8.44.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/typescript-estree": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0", "debug": "^4.3.4" }, "engines": { @@ -706,13 +706,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.43.0.tgz", - "integrity": "sha512-htB/+D/BIGoNTQYffZw4uM4NzzuolCoaA/BusuSIcC8YjmBYQioew5VUZAYdAETPjeed0hqCaW7EHg+Robq8uw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.0.tgz", + "integrity": "sha512-ZeaGNraRsq10GuEohKTo4295Z/SuGcSq2LzfGlqiuEvfArzo/VRrT0ZaJsVPuKZ55lVbNk8U6FcL+ZMH8CoyVA==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.43.0", - "@typescript-eslint/types": "^8.43.0", + "@typescript-eslint/tsconfig-utils": "^8.44.0", + "@typescript-eslint/types": "^8.44.0", "debug": "^4.3.4" }, "engines": { @@ -727,13 +727,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.43.0.tgz", - "integrity": "sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.0.tgz", + "integrity": "sha512-87Jv3E+al8wpD+rIdVJm/ItDBe/Im09zXIjFoipOjr5gHUhJmTzfFLuTJ/nPTMc2Srsroy4IBXwcTCHyRR7KzA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0" + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -744,9 +744,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.43.0.tgz", - "integrity": "sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.0.tgz", + "integrity": "sha512-x5Y0+AuEPqAInc6yd0n5DAcvtoQ/vyaGwuX5HE9n6qAefk1GaedqrLQF8kQGylLUb9pnZyLf+iEiL9fr8APDtQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -760,14 +760,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.43.0.tgz", - "integrity": "sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.0.tgz", + "integrity": "sha512-9cwsoSxJ8Sak67Be/hD2RNt/fsqmWnNE1iHohG8lxqLSNY8xNfyY7wloo5zpW3Nu9hxVgURevqfcH6vvKCt6yg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/typescript-estree": "8.43.0", - "@typescript-eslint/utils": "8.43.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/typescript-estree": "8.44.0", + "@typescript-eslint/utils": "8.44.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -796,9 +796,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.43.0.tgz", - "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.0.tgz", + "integrity": "sha512-ZSl2efn44VsYM0MfDQe68RKzBz75NPgLQXuGypmym6QVOWL5kegTZuZ02xRAT9T+onqvM6T8CdQk0OwYMB6ZvA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -809,15 +809,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.43.0.tgz", - "integrity": "sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.0.tgz", + "integrity": "sha512-lqNj6SgnGcQZwL4/SBJ3xdPEfcBuhCG8zdcwCPgYcmiPLgokiNDKlbPzCwEwu7m279J/lBYWtDYL+87OEfn8Jw==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.43.0", - "@typescript-eslint/tsconfig-utils": "8.43.0", - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0", + "@typescript-eslint/project-service": "8.44.0", + "@typescript-eslint/tsconfig-utils": "8.44.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -849,15 +849,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.43.0.tgz", - "integrity": "sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.0.tgz", + "integrity": "sha512-nktOlVcg3ALo0mYlV+L7sWUD58KG4CMj1rb2HUVOO4aL3K/6wcD+NERqd0rrA5Vg06b42YhF6cFxeixsp9Riqg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.43.0", - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/typescript-estree": "8.43.0" + "@typescript-eslint/scope-manager": "8.44.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/typescript-estree": "8.44.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -872,12 +872,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.43.0.tgz", - "integrity": "sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.0.tgz", + "integrity": "sha512-zaz9u8EJ4GBmnehlrpoKvj/E3dNbuQ7q0ucyZImm3cLqJ8INTc970B1qEqDX/Rzq65r3TvVTN7kHWPBoyW7DWw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/types": "8.44.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7183,16 +7183,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.43.0.tgz", - "integrity": "sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.0.tgz", + "integrity": "sha512-EGDAOGX+uwwekcS0iyxVDmRV9HX6FLSM5kzrAToLTsr9OWCIKG/y3lQheCq18yZ5Xh78rRKJiEpP0ZaCs4ryOQ==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.43.0", - "@typescript-eslint/type-utils": "8.43.0", - "@typescript-eslint/utils": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0", + "@typescript-eslint/scope-manager": "8.44.0", + "@typescript-eslint/type-utils": "8.44.0", + "@typescript-eslint/utils": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7215,55 +7215,55 @@ } }, "@typescript-eslint/parser": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.43.0.tgz", - "integrity": "sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.0.tgz", + "integrity": "sha512-VGMpFQGUQWYT9LfnPcX8ouFojyrZ/2w3K5BucvxL/spdNehccKhB4jUyB1yBCXpr2XFm0jkECxgrpXBW2ipoAw==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.43.0", - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/typescript-estree": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0", + "@typescript-eslint/scope-manager": "8.44.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/typescript-estree": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.43.0.tgz", - "integrity": "sha512-htB/+D/BIGoNTQYffZw4uM4NzzuolCoaA/BusuSIcC8YjmBYQioew5VUZAYdAETPjeed0hqCaW7EHg+Robq8uw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.0.tgz", + "integrity": "sha512-ZeaGNraRsq10GuEohKTo4295Z/SuGcSq2LzfGlqiuEvfArzo/VRrT0ZaJsVPuKZ55lVbNk8U6FcL+ZMH8CoyVA==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.43.0", - "@typescript-eslint/types": "^8.43.0", + "@typescript-eslint/tsconfig-utils": "^8.44.0", + "@typescript-eslint/types": "^8.44.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.43.0.tgz", - "integrity": "sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.0.tgz", + "integrity": "sha512-87Jv3E+al8wpD+rIdVJm/ItDBe/Im09zXIjFoipOjr5gHUhJmTzfFLuTJ/nPTMc2Srsroy4IBXwcTCHyRR7KzA==", "dev": true, "requires": { - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0" + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.43.0.tgz", - "integrity": "sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.0.tgz", + "integrity": "sha512-x5Y0+AuEPqAInc6yd0n5DAcvtoQ/vyaGwuX5HE9n6qAefk1GaedqrLQF8kQGylLUb9pnZyLf+iEiL9fr8APDtQ==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.43.0.tgz", - "integrity": "sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.0.tgz", + "integrity": "sha512-9cwsoSxJ8Sak67Be/hD2RNt/fsqmWnNE1iHohG8lxqLSNY8xNfyY7wloo5zpW3Nu9hxVgURevqfcH6vvKCt6yg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/typescript-estree": "8.43.0", - "@typescript-eslint/utils": "8.43.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/typescript-estree": "8.44.0", + "@typescript-eslint/utils": "8.44.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7278,21 +7278,21 @@ } }, "@typescript-eslint/types": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.43.0.tgz", - "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.0.tgz", + "integrity": "sha512-ZSl2efn44VsYM0MfDQe68RKzBz75NPgLQXuGypmym6QVOWL5kegTZuZ02xRAT9T+onqvM6T8CdQk0OwYMB6ZvA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.43.0.tgz", - "integrity": "sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.0.tgz", + "integrity": "sha512-lqNj6SgnGcQZwL4/SBJ3xdPEfcBuhCG8zdcwCPgYcmiPLgokiNDKlbPzCwEwu7m279J/lBYWtDYL+87OEfn8Jw==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.43.0", - "@typescript-eslint/tsconfig-utils": "8.43.0", - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/visitor-keys": "8.43.0", + "@typescript-eslint/project-service": "8.44.0", + "@typescript-eslint/tsconfig-utils": "8.44.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/visitor-keys": "8.44.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7311,24 +7311,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.43.0.tgz", - "integrity": "sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.0.tgz", + "integrity": "sha512-nktOlVcg3ALo0mYlV+L7sWUD58KG4CMj1rb2HUVOO4aL3K/6wcD+NERqd0rrA5Vg06b42YhF6cFxeixsp9Riqg==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.43.0", - "@typescript-eslint/types": "8.43.0", - "@typescript-eslint/typescript-estree": "8.43.0" + "@typescript-eslint/scope-manager": "8.44.0", + "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/typescript-estree": "8.44.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.43.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.43.0.tgz", - "integrity": "sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==", + "version": "8.44.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.0.tgz", + "integrity": "sha512-zaz9u8EJ4GBmnehlrpoKvj/E3dNbuQ7q0ucyZImm3cLqJ8INTc970B1qEqDX/Rzq65r3TvVTN7kHWPBoyW7DWw==", "dev": true, "requires": { - "@typescript-eslint/types": "8.43.0", + "@typescript-eslint/types": "8.44.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 16a1ee0f323209d69ab5c8803f22c3c5670f9ec4 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Wed, 24 Sep 2025 01:36:11 +0200 Subject: [PATCH 383/609] Adapt upgrade recommanded channel --- .../BO/modules/autoupgrade/index.ts | 2 +- .../pages/BO/modules/autoupgrade/index.ts | 21 ++++++++++++------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/interfaces/BO/modules/autoupgrade/index.ts b/src/interfaces/BO/modules/autoupgrade/index.ts index dba4e60a2..ab232a486 100644 --- a/src/interfaces/BO/modules/autoupgrade/index.ts +++ b/src/interfaces/BO/modules/autoupgrade/index.ts @@ -9,7 +9,7 @@ export interface ModuleAutoupgradeMainPageInterface extends ModuleConfigurationP backupClickDeleteSelection(page: Page): Promise; cancelBackup(page: Page): Promise; cancelDeleteBackup(page: Page): Promise - checkRequirements(page: Page, channel: string): Promise; + checkRequirements(page: Page): Promise; checkUpdateSuccess(page: Page): Promise; chooseLocalArchive(page: Page, row: number): Promise; chooseNewVersion(page: Page): Promise; diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index a80e205eb..d146d2ad6 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -22,6 +22,8 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa private readonly newVersionRadioButton: string; + private readonly newRecommendedVersionRadioButton: string; + private readonly localArchiveRadioButton: string; private readonly radioCardArchive: string; @@ -134,6 +136,7 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa this.stepTitle = '.page__title'; // 1 : version choose step this.newVersionRadioButton = '#online'; + this.newRecommendedVersionRadioButton = '#online_recommended'; this.localArchiveRadioButton = '#local'; this.radioCardArchive = '#radio_card_archive div.radio-card__local-archive div'; this.archiveZipSelect = '#archive_zip'; @@ -145,9 +148,9 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa this.goToMaintenancePageLink = 'div.radio-card__check-requirements a[href*="AdminMaintenance"]'; this.checkRequirementsButton = 'div.radio-card__check-requirements button' + '[data-action="check-requirements-again"]'; - this.alertSuccessMessage = '.alert-success p.alert__message'; + this.alertSuccessMessage = '.check-requirements--success'; this.currentPSVersion = '#ua_step_content p.not-up-to-date__message'; - this.newPsVersionCardTitle = '#radio_card_online p.radio-card__title'; + this.newPsVersionCardTitle = 'p.radio-card__title'; this.nextStepButton = '#ua_step_content div.page__buttons button'; // 2 : Update options step this.updateProgressBar = '#ua_step_content div.log-progress__bar div[title*="100"]'; @@ -201,8 +204,12 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa * @return {Promise { - await page.locator(this.newVersionRadioButton).setChecked(true); - await this.waitForVisibleSelector(page, this.radioCardLoader('online')); + if (await this.elementVisible(page, this.newVersionRadioButton, 1000)) { + await page.locator(this.newVersionRadioButton).setChecked(true); + await this.waitForVisibleSelector(page, this.radioCardLoader('online')); + } else { + await page.locator(this.newRecommendedVersionRadioButton).setChecked(true); + } await this.waitForVisibleSelector(page, this.checkRequirementBlock, 100000); return this.elementVisible(page, this.checkRequirementsFailedAlerts, 2000); @@ -235,13 +242,11 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa /** * Check requirements * @param page {Page} Browser tab - * @param channel {string} Channel to use * @return {Promise { + async checkRequirements(page: Page): Promise { await page.locator(this.checkRequirementsButton).click(); - await this.waitForVisibleSelector(page, this.radioCardLoader(channel)); - await this.waitForHiddenSelector(page, this.radioCardLoaderWrapper(channel), 50000); + await this.waitForVisibleSelector(page, this.alertSuccessMessage, 50000); return this.elementNotVisible(page, `${this.nextStepButton}[disabled='true']`, 2000); } From 2a8bd538ed3530e9d844798d174ac1cf13af7f02 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Wed, 24 Sep 2025 02:09:08 +0200 Subject: [PATCH 384/609] Add some fixes --- src/interfaces/BO/modules/autoupgrade/index.ts | 2 +- .../develop/pages/BO/modules/autoupgrade/index.ts | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/interfaces/BO/modules/autoupgrade/index.ts b/src/interfaces/BO/modules/autoupgrade/index.ts index ab232a486..bef48617e 100644 --- a/src/interfaces/BO/modules/autoupgrade/index.ts +++ b/src/interfaces/BO/modules/autoupgrade/index.ts @@ -11,7 +11,7 @@ export interface ModuleAutoupgradeMainPageInterface extends ModuleConfigurationP cancelDeleteBackup(page: Page): Promise checkRequirements(page: Page): Promise; checkUpdateSuccess(page: Page): Promise; - chooseLocalArchive(page: Page, row: number): Promise; + chooseLocalArchive(page: Page, psVersion: string): Promise; chooseNewVersion(page: Page): Promise; clickOnExitPostRestore(page: Page): Promise; clickOnLaunchBackup(page: Page): Promise; diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts index d146d2ad6..badcac976 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/index.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/index.ts @@ -218,13 +218,13 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa /** * Choose local archive * @param page {Page} Browser tab - * @param row {number} The row of ps Version to use + * @param psVersion {string} The ps Version to use */ - async chooseLocalArchive(page: Page, row: number): Promise { + async chooseLocalArchive(page: Page, psVersion: string): Promise { await page.locator(this.localArchiveRadioButton).setChecked(true); await this.waitForVisibleSelector(page, this.radioCardArchive); - await page.locator(this.archiveZipSelect).selectOption({index: row}); - await page.locator(this.archiveXmlSelect).selectOption({index: row}); + await this.selectByVisibleText(page, this.archiveZipSelect, `prestashop_${psVersion}.zip`); + await this.selectByVisibleText(page, this.archiveXmlSelect, `prestashop_${psVersion}.xml`); await this.waitForVisibleSelector(page, this.checkRequirementBlock, 100000); return this.elementVisible(page, this.checkRequirementsFailedAlerts, 2000); @@ -246,7 +246,7 @@ class Autoupgrade extends ModuleConfigurationPage implements ModuleAutoupgradeMa */ async checkRequirements(page: Page): Promise { await page.locator(this.checkRequirementsButton).click(); - await this.waitForVisibleSelector(page, this.alertSuccessMessage, 50000); + await this.waitForVisibleSelector(page, '.radio-card__check-requirements', 50000); return this.elementNotVisible(page, `${this.nextStepButton}[disabled='true']`, 2000); } From 969451d947da43eee7c6e1719a25107798a9e48d Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Fri, 19 Sep 2025 11:39:46 +0200 Subject: [PATCH 385/609] `boThemeAndLogoPage` : Target only themes --- src/versions/develop/pages/BO/design/themeAndLogo/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/design/themeAndLogo/index.ts b/src/versions/develop/pages/BO/design/themeAndLogo/index.ts index d79505929..4a3cce45f 100644 --- a/src/versions/develop/pages/BO/design/themeAndLogo/index.ts +++ b/src/versions/develop/pages/BO/design/themeAndLogo/index.ts @@ -40,7 +40,7 @@ class ThemeAndLogoPage extends BOThemeAndLogoBasePage implements BOThemeAndLogoP this.addNewThemeButton = '#page-header-desc-configuration-add'; this.exportCurrentThemeButton = '#page-header-desc-configuration-export'; - this.themeCardContainer = '#themes-logo-page .theme-card-container'; + this.themeCardContainer = '#themes-logo-page .theme-card-container[data-theme-framework]'; this.useSpecificThemeButton = (name: string) => `${this.themeCardContainer}[data-role="${name}"] ` + 'button.js-display-use-theme-modal'; this.removeSpecificThemeButton = (name: string) => `${this.themeCardContainer}[data-role="${name}"] ` From 874bcbbfc5f640ec3704c4467f02be9970398886 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Wed, 24 Sep 2025 10:14:41 +0200 Subject: [PATCH 386/609] `BOBasePage` : Raise timeout to 60s --- src/pages/BO/BOBasePage.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 07beffea2..268d52034 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -757,7 +757,9 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte await this.clickSubMenu(page, parentSelector); await this.scrollTo(page, linkSelector); } - await this.clickAndWaitForURL(page, linkSelector); + await this.clickAndWaitForURL(page, linkSelector, 'load', 120000, { + timeout: 120000, + }); let linkActiveClass: string = '-active'; // >= 1.7.8.0 @@ -782,7 +784,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte async clickSubMenu(page: Page, parentSelector: string): Promise { const openSelector = await this.isSidebarCollapsed(page) ? '.ul-open' : '.open'; - if (await this.elementNotVisible(page, `${parentSelector}${openSelector}`, 1000)) { + if (await this.elementNotVisible(page, `${parentSelector}${openSelector}`, 5000)) { // open the block await this.scrollTo(page, parentSelector); @@ -842,7 +844,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte await this.waitForVisibleSelector(page, `${parentSelector}${openSelector}`); } - return this.elementVisible(page, linkSelector, 1000); + return this.elementVisible(page, linkSelector, 5000); } /** From 8609da57a110d06d59270afbe414fd0eabd3a0b8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Sep 2025 05:28:32 +0000 Subject: [PATCH 387/609] Bump @typescript-eslint/eslint-plugin from 8.44.0 to 8.44.1 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.44.0 to 8.44.1. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.44.1/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.44.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 214 +++++++++++++++++++++++----------------------- 1 file changed, 107 insertions(+), 107 deletions(-) diff --git a/package-lock.json b/package-lock.json index f237b4143..94b62af68 100644 --- a/package-lock.json +++ b/package-lock.json @@ -630,16 +630,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.0.tgz", - "integrity": "sha512-EGDAOGX+uwwekcS0iyxVDmRV9HX6FLSM5kzrAToLTsr9OWCIKG/y3lQheCq18yZ5Xh78rRKJiEpP0ZaCs4ryOQ==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.1.tgz", + "integrity": "sha512-molgphGqOBT7t4YKCSkbasmu1tb1MgrZ2szGzHbclF7PNmOkSTQVHy+2jXOSnxvR3+Xe1yySHFZoqMpz3TfQsw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.44.0", - "@typescript-eslint/type-utils": "8.44.0", - "@typescript-eslint/utils": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0", + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/type-utils": "8.44.1", + "@typescript-eslint/utils": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -653,7 +653,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.44.0", + "@typescript-eslint/parser": "^8.44.1", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } @@ -682,15 +682,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.0.tgz", - "integrity": "sha512-VGMpFQGUQWYT9LfnPcX8ouFojyrZ/2w3K5BucvxL/spdNehccKhB4jUyB1yBCXpr2XFm0jkECxgrpXBW2ipoAw==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.1.tgz", + "integrity": "sha512-EHrrEsyhOhxYt8MTg4zTF+DJMuNBzWwgvvOYNj/zm1vnaD/IC5zCXFehZv94Piqa2cRFfXrTFxIvO95L7Qc/cw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.44.0", - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/typescript-estree": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0", + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", "debug": "^4.3.4" }, "engines": { @@ -706,13 +706,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.0.tgz", - "integrity": "sha512-ZeaGNraRsq10GuEohKTo4295Z/SuGcSq2LzfGlqiuEvfArzo/VRrT0ZaJsVPuKZ55lVbNk8U6FcL+ZMH8CoyVA==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.1.tgz", + "integrity": "sha512-ycSa60eGg8GWAkVsKV4E6Nz33h+HjTXbsDT4FILyL8Obk5/mx4tbvCNsLf9zret3ipSumAOG89UcCs/KRaKYrA==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.44.0", - "@typescript-eslint/types": "^8.44.0", + "@typescript-eslint/tsconfig-utils": "^8.44.1", + "@typescript-eslint/types": "^8.44.1", "debug": "^4.3.4" }, "engines": { @@ -727,13 +727,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.0.tgz", - "integrity": "sha512-87Jv3E+al8wpD+rIdVJm/ItDBe/Im09zXIjFoipOjr5gHUhJmTzfFLuTJ/nPTMc2Srsroy4IBXwcTCHyRR7KzA==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.1.tgz", + "integrity": "sha512-NdhWHgmynpSvyhchGLXh+w12OMT308Gm25JoRIyTZqEbApiBiQHD/8xgb6LqCWCFcxFtWwaVdFsLPQI3jvhywg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0" + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -744,9 +744,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.0.tgz", - "integrity": "sha512-x5Y0+AuEPqAInc6yd0n5DAcvtoQ/vyaGwuX5HE9n6qAefk1GaedqrLQF8kQGylLUb9pnZyLf+iEiL9fr8APDtQ==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.1.tgz", + "integrity": "sha512-B5OyACouEjuIvof3o86lRMvyDsFwZm+4fBOqFHccIctYgBjqR3qT39FBYGN87khcgf0ExpdCBeGKpKRhSFTjKQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -760,14 +760,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.0.tgz", - "integrity": "sha512-9cwsoSxJ8Sak67Be/hD2RNt/fsqmWnNE1iHohG8lxqLSNY8xNfyY7wloo5zpW3Nu9hxVgURevqfcH6vvKCt6yg==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.1.tgz", + "integrity": "sha512-KdEerZqHWXsRNKjF9NYswNISnFzXfXNDfPxoTh7tqohU/PRIbwTmsjGK6V9/RTYWau7NZvfo52lgVk+sJh0K3g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/typescript-estree": "8.44.0", - "@typescript-eslint/utils": "8.44.0", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1", + "@typescript-eslint/utils": "8.44.1", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -796,9 +796,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.0.tgz", - "integrity": "sha512-ZSl2efn44VsYM0MfDQe68RKzBz75NPgLQXuGypmym6QVOWL5kegTZuZ02xRAT9T+onqvM6T8CdQk0OwYMB6ZvA==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.1.tgz", + "integrity": "sha512-Lk7uj7y9uQUOEguiDIDLYLJOrYHQa7oBiURYVFqIpGxclAFQ78f6VUOM8lI2XEuNOKNB7XuvM2+2cMXAoq4ALQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -809,15 +809,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.0.tgz", - "integrity": "sha512-lqNj6SgnGcQZwL4/SBJ3xdPEfcBuhCG8zdcwCPgYcmiPLgokiNDKlbPzCwEwu7m279J/lBYWtDYL+87OEfn8Jw==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.1.tgz", + "integrity": "sha512-qnQJ+mVa7szevdEyvfItbO5Vo+GfZ4/GZWWDRRLjrxYPkhM+6zYB2vRYwCsoJLzqFCdZT4mEqyJoyzkunsZ96A==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.44.0", - "@typescript-eslint/tsconfig-utils": "8.44.0", - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0", + "@typescript-eslint/project-service": "8.44.1", + "@typescript-eslint/tsconfig-utils": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -849,15 +849,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.0.tgz", - "integrity": "sha512-nktOlVcg3ALo0mYlV+L7sWUD58KG4CMj1rb2HUVOO4aL3K/6wcD+NERqd0rrA5Vg06b42YhF6cFxeixsp9Riqg==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.1.tgz", + "integrity": "sha512-DpX5Fp6edTlocMCwA+mHY8Mra+pPjRZ0TfHkXI8QFelIKcbADQz1LUPNtzOFUriBB2UYqw4Pi9+xV4w9ZczHFg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.44.0", - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/typescript-estree": "8.44.0" + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -872,12 +872,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.0.tgz", - "integrity": "sha512-zaz9u8EJ4GBmnehlrpoKvj/E3dNbuQ7q0ucyZImm3cLqJ8INTc970B1qEqDX/Rzq65r3TvVTN7kHWPBoyW7DWw==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.1.tgz", + "integrity": "sha512-576+u0QD+Jp3tZzvfRfxon0EA2lzcDt3lhUbsC6Lgzy9x2VR4E+JUiNyGHi5T8vk0TV+fpJ5GLG1JsJuWCaKhw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/types": "8.44.1", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7183,16 +7183,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.0.tgz", - "integrity": "sha512-EGDAOGX+uwwekcS0iyxVDmRV9HX6FLSM5kzrAToLTsr9OWCIKG/y3lQheCq18yZ5Xh78rRKJiEpP0ZaCs4ryOQ==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.1.tgz", + "integrity": "sha512-molgphGqOBT7t4YKCSkbasmu1tb1MgrZ2szGzHbclF7PNmOkSTQVHy+2jXOSnxvR3+Xe1yySHFZoqMpz3TfQsw==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.44.0", - "@typescript-eslint/type-utils": "8.44.0", - "@typescript-eslint/utils": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0", + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/type-utils": "8.44.1", + "@typescript-eslint/utils": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7215,55 +7215,55 @@ } }, "@typescript-eslint/parser": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.0.tgz", - "integrity": "sha512-VGMpFQGUQWYT9LfnPcX8ouFojyrZ/2w3K5BucvxL/spdNehccKhB4jUyB1yBCXpr2XFm0jkECxgrpXBW2ipoAw==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.1.tgz", + "integrity": "sha512-EHrrEsyhOhxYt8MTg4zTF+DJMuNBzWwgvvOYNj/zm1vnaD/IC5zCXFehZv94Piqa2cRFfXrTFxIvO95L7Qc/cw==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.44.0", - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/typescript-estree": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0", + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.0.tgz", - "integrity": "sha512-ZeaGNraRsq10GuEohKTo4295Z/SuGcSq2LzfGlqiuEvfArzo/VRrT0ZaJsVPuKZ55lVbNk8U6FcL+ZMH8CoyVA==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.1.tgz", + "integrity": "sha512-ycSa60eGg8GWAkVsKV4E6Nz33h+HjTXbsDT4FILyL8Obk5/mx4tbvCNsLf9zret3ipSumAOG89UcCs/KRaKYrA==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.44.0", - "@typescript-eslint/types": "^8.44.0", + "@typescript-eslint/tsconfig-utils": "^8.44.1", + "@typescript-eslint/types": "^8.44.1", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.0.tgz", - "integrity": "sha512-87Jv3E+al8wpD+rIdVJm/ItDBe/Im09zXIjFoipOjr5gHUhJmTzfFLuTJ/nPTMc2Srsroy4IBXwcTCHyRR7KzA==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.1.tgz", + "integrity": "sha512-NdhWHgmynpSvyhchGLXh+w12OMT308Gm25JoRIyTZqEbApiBiQHD/8xgb6LqCWCFcxFtWwaVdFsLPQI3jvhywg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0" + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.0.tgz", - "integrity": "sha512-x5Y0+AuEPqAInc6yd0n5DAcvtoQ/vyaGwuX5HE9n6qAefk1GaedqrLQF8kQGylLUb9pnZyLf+iEiL9fr8APDtQ==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.1.tgz", + "integrity": "sha512-B5OyACouEjuIvof3o86lRMvyDsFwZm+4fBOqFHccIctYgBjqR3qT39FBYGN87khcgf0ExpdCBeGKpKRhSFTjKQ==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.0.tgz", - "integrity": "sha512-9cwsoSxJ8Sak67Be/hD2RNt/fsqmWnNE1iHohG8lxqLSNY8xNfyY7wloo5zpW3Nu9hxVgURevqfcH6vvKCt6yg==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.1.tgz", + "integrity": "sha512-KdEerZqHWXsRNKjF9NYswNISnFzXfXNDfPxoTh7tqohU/PRIbwTmsjGK6V9/RTYWau7NZvfo52lgVk+sJh0K3g==", "dev": true, "requires": { - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/typescript-estree": "8.44.0", - "@typescript-eslint/utils": "8.44.0", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1", + "@typescript-eslint/utils": "8.44.1", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7278,21 +7278,21 @@ } }, "@typescript-eslint/types": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.0.tgz", - "integrity": "sha512-ZSl2efn44VsYM0MfDQe68RKzBz75NPgLQXuGypmym6QVOWL5kegTZuZ02xRAT9T+onqvM6T8CdQk0OwYMB6ZvA==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.1.tgz", + "integrity": "sha512-Lk7uj7y9uQUOEguiDIDLYLJOrYHQa7oBiURYVFqIpGxclAFQ78f6VUOM8lI2XEuNOKNB7XuvM2+2cMXAoq4ALQ==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.0.tgz", - "integrity": "sha512-lqNj6SgnGcQZwL4/SBJ3xdPEfcBuhCG8zdcwCPgYcmiPLgokiNDKlbPzCwEwu7m279J/lBYWtDYL+87OEfn8Jw==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.1.tgz", + "integrity": "sha512-qnQJ+mVa7szevdEyvfItbO5Vo+GfZ4/GZWWDRRLjrxYPkhM+6zYB2vRYwCsoJLzqFCdZT4mEqyJoyzkunsZ96A==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.44.0", - "@typescript-eslint/tsconfig-utils": "8.44.0", - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/visitor-keys": "8.44.0", + "@typescript-eslint/project-service": "8.44.1", + "@typescript-eslint/tsconfig-utils": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/visitor-keys": "8.44.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7311,24 +7311,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.0.tgz", - "integrity": "sha512-nktOlVcg3ALo0mYlV+L7sWUD58KG4CMj1rb2HUVOO4aL3K/6wcD+NERqd0rrA5Vg06b42YhF6cFxeixsp9Riqg==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.1.tgz", + "integrity": "sha512-DpX5Fp6edTlocMCwA+mHY8Mra+pPjRZ0TfHkXI8QFelIKcbADQz1LUPNtzOFUriBB2UYqw4Pi9+xV4w9ZczHFg==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.44.0", - "@typescript-eslint/types": "8.44.0", - "@typescript-eslint/typescript-estree": "8.44.0" + "@typescript-eslint/scope-manager": "8.44.1", + "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/typescript-estree": "8.44.1" } }, "@typescript-eslint/visitor-keys": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.0.tgz", - "integrity": "sha512-zaz9u8EJ4GBmnehlrpoKvj/E3dNbuQ7q0ucyZImm3cLqJ8INTc970B1qEqDX/Rzq65r3TvVTN7kHWPBoyW7DWw==", + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.1.tgz", + "integrity": "sha512-576+u0QD+Jp3tZzvfRfxon0EA2lzcDt3lhUbsC6Lgzy9x2VR4E+JUiNyGHi5T8vk0TV+fpJ5GLG1JsJuWCaKhw==", "dev": true, "requires": { - "@typescript-eslint/types": "8.44.0", + "@typescript-eslint/types": "8.44.1", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 97441d8338b6bc33796770314a774ede155ee881 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Mon, 29 Sep 2025 14:40:47 +0200 Subject: [PATCH 388/609] Add methods to check the upgrade modal --- src/index.ts | 1 + src/interfaces/BO/dashboard/index.ts | 1 - .../BO/modules/autoupgrade/modal.ts | 11 ++ src/pages/BO/modules/autoupgrade/modal.ts | 14 +++ .../develop/pages/BO/dashboard/index.ts | 24 ---- .../pages/BO/modules/autoupgrade/modal.ts | 107 ++++++++++++++++++ 6 files changed, 133 insertions(+), 25 deletions(-) create mode 100644 src/interfaces/BO/modules/autoupgrade/modal.ts create mode 100644 src/pages/BO/modules/autoupgrade/modal.ts create mode 100644 src/versions/develop/pages/BO/modules/autoupgrade/modal.ts diff --git a/src/index.ts b/src/index.ts index d4a814ceb..3ec2f2216 100644 --- a/src/index.ts +++ b/src/index.ts @@ -463,6 +463,7 @@ export {default as foHummingbirdTermsAndConditionsOfUsePage} from '@pages/FO/hum // Export Modules export {default as modAutoupgradeBoMain} from '@pages/BO/modules/autoupgrade'; +export {default as modAutoupgradeBoModal} from '@pages/BO/modules/autoupgrade/modal'; export {default as modBlockwishlistBoMain} from '@pages/BO/modules/blockwishlist'; export {default as modBlockwishlistBoStatistics} from '@pages/BO/modules/blockwishlist/statistics'; export {default as modContactFormBoMain} from '@pages/BO/modules/contactform'; diff --git a/src/interfaces/BO/dashboard/index.ts b/src/interfaces/BO/dashboard/index.ts index 2728a476f..3a6ed87f1 100644 --- a/src/interfaces/BO/dashboard/index.ts +++ b/src/interfaces/BO/dashboard/index.ts @@ -19,7 +19,6 @@ export interface DashboardPageInterface extends BOBasePagePageInterface { clickOnReturnExchangeLink(page: Page): Promise; clickOnTotalSubscribersLink(page: Page): Promise; clickOnVisitsLink(page: Page): Promise; - closeDialogUpdateNotification(page: Page): Promise; closeHelpCard(page: Page): Promise; getFormActivityOverviewValue(page: Page, inputName: string): Promise; getBestSellersTabTitle(page: Page): Promise; diff --git a/src/interfaces/BO/modules/autoupgrade/modal.ts b/src/interfaces/BO/modules/autoupgrade/modal.ts new file mode 100644 index 000000000..5985b7ea8 --- /dev/null +++ b/src/interfaces/BO/modules/autoupgrade/modal.ts @@ -0,0 +1,11 @@ +import {ModuleConfigurationPageInterface} from '@interfaces/BO/modules/moduleConfiguration'; +import type {Page} from '@playwright/test'; + +export interface ModuleAutoupgradeModalPageInterface extends ModuleConfigurationPageInterface { + clickOnUpdateButton(page:Page):Promise; + closeDialogUpdateNotification(page: Page): Promise; + getPSVersionFromTheModal(page:Page):Promise; + getSupportLinkFromModal(page:Page):Promise; + getUpdateLinkFromModal(page:Page):Promise; + openUpdateLinkFromTheModal(page:Page):Promise; +} diff --git a/src/pages/BO/modules/autoupgrade/modal.ts b/src/pages/BO/modules/autoupgrade/modal.ts new file mode 100644 index 000000000..99158ce56 --- /dev/null +++ b/src/pages/BO/modules/autoupgrade/modal.ts @@ -0,0 +1,14 @@ +import type {ModuleAutoupgradeModalPageInterface} from '@interfaces/BO/modules/autoupgrade/modal'; +import semver from 'semver'; +import testContext from '@utils/test'; + +const psVersion = testContext.getPSVersion(); + +/* eslint-disable global-require, @typescript-eslint/no-require-imports */ +function requirePage(): ModuleAutoupgradeModalPageInterface { + return require('@versions/develop/pages/BO/modules/autoupgrade/modal').autoupgradeModal; +} + +/* eslint-enable global-require, @typescript-eslint/no-require-imports */ + +export default requirePage(); diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 1c854d1b9..1bcce8cb3 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -151,12 +151,6 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { private readonly helpCardDocumentTitle: string; - private readonly dialogUpdateNotification: string; - - private readonly remindMeLaterButton: string; - - private readonly remindMeLaterSevenDaysButton: string; - /** * @constructs * Setting up titles and selectors to use on dashboard page @@ -174,10 +168,6 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { this.helpCardButton = '#toolbar-nav a.btn-help'; this.helpCardDocument = '#help-container div.page-wrap'; this.helpCardDocumentTitle = '#help-container section.article h1'; - // Selectors of update dialog - this.dialogUpdateNotification = '#dialog-update-notification'; - this.remindMeLaterButton = '#remin-me-later-update'; - this.remindMeLaterSevenDaysButton = `${this.remindMeLaterButton} button[value='7_days']`; // Selectors of Products and sales block this.recentOrdersTitle = '#dash_recent_orders div.panel-heading'; this.recentOrdersTable = '#table_recent_orders'; @@ -765,20 +755,6 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { async getHelpDocumentTitle(page: Page): Promise { return this.getTextContent(page, this.helpCardDocumentTitle); } - - /** - * Close dialog update notification - * @param page {Page} Browser tab - * @returns {Promise} - */ - async closeDialogUpdateNotification(page: Page): Promise { - if (await this.elementVisible(page, this.dialogUpdateNotification, 5000)) { - await page.locator(this.remindMeLaterButton).click(); - await page.locator(this.remindMeLaterSevenDaysButton).click(); - } - - return this.elementNotVisible(page, this.dialogUpdateNotification, 5000); - } } module.exports = new Dashboard(); diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts b/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts new file mode 100644 index 000000000..5daa255d9 --- /dev/null +++ b/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts @@ -0,0 +1,107 @@ +import {ModuleAutoupgradeModalPageInterface} from '@interfaces/BO/modules/autoupgrade/modal'; +import type {Page} from '@playwright/test'; +import {ModuleConfigurationPage} from '@versions/develop/pages/BO/modules/moduleConfiguration'; + +/** + * Module configuration page for module : Autoupgrade, contains selectors and functions for the page + * @class + * @extends ModuleConfiguration + */ +class AutoupgradeModal extends ModuleConfigurationPage implements ModuleAutoupgradeModalPageInterface { + + private readonly dialogUpdateNotification: string; + + private readonly remindMeLaterButton: string; + + private readonly remindMeLaterSevenDaysButton: string; + + private readonly dialogNotificationSection: string; + + private readonly updateLink: string; + + private readonly supportLink: string; + + private readonly psVersionLink: string; + + private readonly updateButton: string; + + /** + * @constructs + */ + constructor() { + super(); + + // Selectors of update dialog + this.dialogUpdateNotification = '#dialog-update-notification'; + this.remindMeLaterButton = '#remin-me-later-update'; + this.remindMeLaterSevenDaysButton = `${this.remindMeLaterButton} button[value='7_days']`; + this.dialogNotificationSection = 'div.dialog-notification__section'; + this.updateLink = `${this.dialogNotificationSection}:nth-child(1) .dialog-notification__link`; + this.supportLink = `${this.dialogNotificationSection}:nth-child(4) .dialog-notification__link`; + this.psVersionLink = `${this.dialogNotificationSection}.dialog-notification__section-content`; + this.updateButton = '.dialog-notification__button.btn-primary'; + } + + // Methods of update + /** + * Close dialog update notification + * @param page {Page} Browser tab + * @returns {Promise} + */ + async closeDialogUpdateNotification(page: Page): Promise { + if (await this.elementVisible(page, this.dialogUpdateNotification, 5000)) { + await page.locator(this.remindMeLaterButton).click(); + await page.locator(this.remindMeLaterSevenDaysButton).click(); + } + + return this.elementNotVisible(page, this.dialogUpdateNotification, 5000); + } + + /** + * Get update link from modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getUpdateLinkFromModal(page: Page): Promise { + return this.getAttributeContent(page, this.updateLink, 'href'); + } + + /** + * Get support link from modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getSupportLinkFromModal(page: Page): Promise { + return this.getAttributeContent(page, this.supportLink, 'href'); + } + + /** + * Open update link from the modal + * @param page {Page} Browser tab + * @returns {Promise { + return this.openLinkWithTargetBlank(page, this.updateLink, '.post-title') + } + + /** + * Get PS version from the modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getPSVersionFromTheModal(page: Page): Promise { + return this.getTextContent(page, this.psVersionLink); + } + + /** + * Click on update button + * @param page {Page} Browser tab + * @returns {Promise} + */ + async clickOnUpdateButton(page: Page): Promise { + await this.clickAndWaitForURL(page, this.updateButton); + } +} + +const autoupgradeModal = new AutoupgradeModal(); +export {autoupgradeModal, AutoupgradeModal}; From a667d27ff7bd869fc837ece769e8f9b6dfc10aa4 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Mon, 29 Sep 2025 14:44:19 +0200 Subject: [PATCH 389/609] Fix lint errors --- src/pages/BO/modules/autoupgrade/modal.ts | 4 ---- src/versions/develop/pages/BO/modules/autoupgrade/modal.ts | 3 +-- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/src/pages/BO/modules/autoupgrade/modal.ts b/src/pages/BO/modules/autoupgrade/modal.ts index 99158ce56..04629cd67 100644 --- a/src/pages/BO/modules/autoupgrade/modal.ts +++ b/src/pages/BO/modules/autoupgrade/modal.ts @@ -1,8 +1,4 @@ import type {ModuleAutoupgradeModalPageInterface} from '@interfaces/BO/modules/autoupgrade/modal'; -import semver from 'semver'; -import testContext from '@utils/test'; - -const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): ModuleAutoupgradeModalPageInterface { diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts b/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts index 5daa255d9..8f5b75e8c 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts @@ -8,7 +8,6 @@ import {ModuleConfigurationPage} from '@versions/develop/pages/BO/modules/module * @extends ModuleConfiguration */ class AutoupgradeModal extends ModuleConfigurationPage implements ModuleAutoupgradeModalPageInterface { - private readonly dialogUpdateNotification: string; private readonly remindMeLaterButton: string; @@ -81,7 +80,7 @@ class AutoupgradeModal extends ModuleConfigurationPage implements ModuleAutoupgr * @returns {Promise { - return this.openLinkWithTargetBlank(page, this.updateLink, '.post-title') + return this.openLinkWithTargetBlank(page, this.updateLink, '.post-title'); } /** From 92ee6fe91f81400c1e7c6bf23cd45ea66ddd5983 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Tue, 30 Sep 2025 11:45:29 +0200 Subject: [PATCH 390/609] Fix selector in upgrade notification modal --- src/versions/develop/pages/BO/modules/autoupgrade/modal.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts b/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts index 8f5b75e8c..593d0bf1a 100644 --- a/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts +++ b/src/versions/develop/pages/BO/modules/autoupgrade/modal.ts @@ -37,7 +37,7 @@ class AutoupgradeModal extends ModuleConfigurationPage implements ModuleAutoupgr this.dialogNotificationSection = 'div.dialog-notification__section'; this.updateLink = `${this.dialogNotificationSection}:nth-child(1) .dialog-notification__link`; this.supportLink = `${this.dialogNotificationSection}:nth-child(4) .dialog-notification__link`; - this.psVersionLink = `${this.dialogNotificationSection}.dialog-notification__section-content`; + this.psVersionLink = `${this.dialogNotificationSection}:nth-child(2) .dialog-notification__section-content`; this.updateButton = '.dialog-notification__button.btn-primary'; } From 98767a8895117f5945d21a11b9f7487429799c15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 30 Sep 2025 14:53:15 +0000 Subject: [PATCH 391/609] Bump @playwright/test from 1.55.0 to 1.55.1 Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.55.0 to 1.55.1. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.55.0...v1.55.1) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.55.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/package-lock.json b/package-lock.json index a10cc92d6..6bcd1883d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -528,11 +528,11 @@ } }, "node_modules/@playwright/test": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.0.tgz", - "integrity": "sha512-04IXzPwHrW69XusN/SIdDdKZBzMfOT9UNT/YiJit/xpy2VuAoB8NHc8Aplb96zsWDddLnbkPL3TsmrS04ZU2xQ==", + "version": "1.55.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.1.tgz", + "integrity": "sha512-IVAh/nOJaw6W9g+RJVlIQJ6gSiER+ae6mKQ5CX1bERzQgbC1VSeBlwdvczT7pxb0GWiyrxH4TGKbMfDb4Sq/ig==", "dependencies": { - "playwright": "1.55.0" + "playwright": "1.55.1" }, "bin": { "playwright": "cli.js" @@ -5021,11 +5021,11 @@ } }, "node_modules/playwright": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.0.tgz", - "integrity": "sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA==", + "version": "1.55.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.1.tgz", + "integrity": "sha512-cJW4Xd/G3v5ovXtJJ52MAOclqeac9S/aGGgRzLabuF8TnIb6xHvMzKIa6JmrRzUkeXJgfL1MhukP0NK6l39h3A==", "dependencies": { - "playwright-core": "1.55.0" + "playwright-core": "1.55.1" }, "bin": { "playwright": "cli.js" @@ -5038,9 +5038,9 @@ } }, "node_modules/playwright-core": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.0.tgz", - "integrity": "sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg==", + "version": "1.55.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.1.tgz", + "integrity": "sha512-Z6Mh9mkwX+zxSlHqdr5AOcJnfp+xUWLCt9uKV18fhzA8eyxUd8NUWzAjxUh55RZKSYwDGX0cfaySdhZJGMoJ+w==", "bin": { "playwright-core": "cli.js" }, @@ -7087,11 +7087,11 @@ } }, "@playwright/test": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.0.tgz", - "integrity": "sha512-04IXzPwHrW69XusN/SIdDdKZBzMfOT9UNT/YiJit/xpy2VuAoB8NHc8Aplb96zsWDddLnbkPL3TsmrS04ZU2xQ==", + "version": "1.55.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.1.tgz", + "integrity": "sha512-IVAh/nOJaw6W9g+RJVlIQJ6gSiER+ae6mKQ5CX1bERzQgbC1VSeBlwdvczT7pxb0GWiyrxH4TGKbMfDb4Sq/ig==", "requires": { - "playwright": "1.55.0" + "playwright": "1.55.1" } }, "@rtsao/scc": { @@ -10280,18 +10280,18 @@ "dev": true }, "playwright": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.0.tgz", - "integrity": "sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA==", + "version": "1.55.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.1.tgz", + "integrity": "sha512-cJW4Xd/G3v5ovXtJJ52MAOclqeac9S/aGGgRzLabuF8TnIb6xHvMzKIa6JmrRzUkeXJgfL1MhukP0NK6l39h3A==", "requires": { "fsevents": "2.3.2", - "playwright-core": "1.55.0" + "playwright-core": "1.55.1" } }, "playwright-core": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.0.tgz", - "integrity": "sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg==" + "version": "1.55.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.1.tgz", + "integrity": "sha512-Z6Mh9mkwX+zxSlHqdr5AOcJnfp+xUWLCt9uKV18fhzA8eyxUd8NUWzAjxUh55RZKSYwDGX0cfaySdhZJGMoJ+w==" }, "plimit-lit": { "version": "1.6.1", From 50e5233ecdc08af54cf9b7373018344beeb70bfa Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Thu, 2 Oct 2025 17:02:42 +0200 Subject: [PATCH 392/609] Added `dataAttributeTypes` --- src/data/demo/attributeTypes.ts | 5 +++++ src/data/faker/attribute.ts | 6 ++---- src/index.ts | 1 + 3 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 src/data/demo/attributeTypes.ts diff --git a/src/data/demo/attributeTypes.ts b/src/data/demo/attributeTypes.ts new file mode 100644 index 000000000..8b7674dd8 --- /dev/null +++ b/src/data/demo/attributeTypes.ts @@ -0,0 +1,5 @@ +export default { + select: 'Drop-down list', + radio: 'Radio buttons', + color: 'Color or texture', +}; diff --git a/src/data/faker/attribute.ts b/src/data/faker/attribute.ts index b464535cd..42a66bd15 100644 --- a/src/data/faker/attribute.ts +++ b/src/data/faker/attribute.ts @@ -1,10 +1,8 @@ import FakerAttributeValue from '@data/faker/attributeValue'; +import dataAttributeTypes from '@data/demo/attributeTypes'; import {type AttributeCreator} from '@data/types/attribute'; import {faker} from '@faker-js/faker'; - -const attributeTypes: string[] = ['Drop-down list', 'Radio buttons', 'Color or texture']; - /** * Create new attribute to use on attribute form on BO * @class @@ -60,7 +58,7 @@ export default class FakerAttribute { this.displayed = attributeToCreate.displayed === undefined ? true : attributeToCreate.displayed; /** @type {string} Type of the attribute 'Drop-down list'/'Radio buttons'/'Color or texture' */ - this.attributeType = attributeToCreate.attributeType || faker.helpers.arrayElement(attributeTypes); + this.attributeType = attributeToCreate.attributeType || faker.helpers.arrayElement(Object.values(dataAttributeTypes)); /** @type {FakerAttributeValue[]} */ this.values = attributeToCreate.values || []; diff --git a/src/index.ts b/src/index.ts index 3ec2f2216..d3cd3c039 100644 --- a/src/index.ts +++ b/src/index.ts @@ -87,6 +87,7 @@ export type { } from '@data/types/playwright'; export {default as dataAddresses} from '@data/demo/addresses'; +export {default as dataAttributeTypes} from '@data/demo/attributeTypes'; export {default as dataAttributes} from '@data/demo/attributes'; export {default as dataBOPages} from '@data/demo/boPages'; export {default as dataBrandAddresses} from '@data/demo/brandAdresses'; From 989c6acbc387dd70a8cfd802a6c47de0ec0e6c8d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 Oct 2025 05:15:56 +0000 Subject: [PATCH 393/609] Bump @typescript-eslint/eslint-plugin from 8.44.1 to 8.45.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.44.1 to 8.45.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.45.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.45.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 214 +++++++++++++++++++++++----------------------- 1 file changed, 107 insertions(+), 107 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6bcd1883d..717281ae8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -630,16 +630,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.1.tgz", - "integrity": "sha512-molgphGqOBT7t4YKCSkbasmu1tb1MgrZ2szGzHbclF7PNmOkSTQVHy+2jXOSnxvR3+Xe1yySHFZoqMpz3TfQsw==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.45.0.tgz", + "integrity": "sha512-HC3y9CVuevvWCl/oyZuI47dOeDF9ztdMEfMH8/DW/Mhwa9cCLnK1oD7JoTVGW/u7kFzNZUKUoyJEqkaJh5y3Wg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.44.1", - "@typescript-eslint/type-utils": "8.44.1", - "@typescript-eslint/utils": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1", + "@typescript-eslint/scope-manager": "8.45.0", + "@typescript-eslint/type-utils": "8.45.0", + "@typescript-eslint/utils": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -653,7 +653,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.44.1", + "@typescript-eslint/parser": "^8.45.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } @@ -682,15 +682,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.1.tgz", - "integrity": "sha512-EHrrEsyhOhxYt8MTg4zTF+DJMuNBzWwgvvOYNj/zm1vnaD/IC5zCXFehZv94Piqa2cRFfXrTFxIvO95L7Qc/cw==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.45.0.tgz", + "integrity": "sha512-TGf22kon8KW+DeKaUmOibKWktRY8b2NSAZNdtWh798COm1NWx8+xJ6iFBtk3IvLdv6+LGLJLRlyhrhEDZWargQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.44.1", - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/typescript-estree": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1", + "@typescript-eslint/scope-manager": "8.45.0", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/typescript-estree": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0", "debug": "^4.3.4" }, "engines": { @@ -706,13 +706,13 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.1.tgz", - "integrity": "sha512-ycSa60eGg8GWAkVsKV4E6Nz33h+HjTXbsDT4FILyL8Obk5/mx4tbvCNsLf9zret3ipSumAOG89UcCs/KRaKYrA==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.45.0.tgz", + "integrity": "sha512-3pcVHwMG/iA8afdGLMuTibGR7pDsn9RjDev6CCB+naRsSYs2pns5QbinF4Xqw6YC/Sj3lMrm/Im0eMfaa61WUg==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.44.1", - "@typescript-eslint/types": "^8.44.1", + "@typescript-eslint/tsconfig-utils": "^8.45.0", + "@typescript-eslint/types": "^8.45.0", "debug": "^4.3.4" }, "engines": { @@ -727,13 +727,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.1.tgz", - "integrity": "sha512-NdhWHgmynpSvyhchGLXh+w12OMT308Gm25JoRIyTZqEbApiBiQHD/8xgb6LqCWCFcxFtWwaVdFsLPQI3jvhywg==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.45.0.tgz", + "integrity": "sha512-clmm8XSNj/1dGvJeO6VGH7EUSeA0FMs+5au/u3lrA3KfG8iJ4u8ym9/j2tTEoacAffdW1TVUzXO30W1JTJS7dA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1" + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -744,9 +744,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.1.tgz", - "integrity": "sha512-B5OyACouEjuIvof3o86lRMvyDsFwZm+4fBOqFHccIctYgBjqR3qT39FBYGN87khcgf0ExpdCBeGKpKRhSFTjKQ==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.45.0.tgz", + "integrity": "sha512-aFdr+c37sc+jqNMGhH+ajxPXwjv9UtFZk79k8pLoJ6p4y0snmYpPA52GuWHgt2ZF4gRRW6odsEj41uZLojDt5w==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -760,14 +760,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.1.tgz", - "integrity": "sha512-KdEerZqHWXsRNKjF9NYswNISnFzXfXNDfPxoTh7tqohU/PRIbwTmsjGK6V9/RTYWau7NZvfo52lgVk+sJh0K3g==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.45.0.tgz", + "integrity": "sha512-bpjepLlHceKgyMEPglAeULX1vixJDgaKocp0RVJ5u4wLJIMNuKtUXIczpJCPcn2waII0yuvks/5m5/h3ZQKs0A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/typescript-estree": "8.44.1", - "@typescript-eslint/utils": "8.44.1", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/typescript-estree": "8.45.0", + "@typescript-eslint/utils": "8.45.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -796,9 +796,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.1.tgz", - "integrity": "sha512-Lk7uj7y9uQUOEguiDIDLYLJOrYHQa7oBiURYVFqIpGxclAFQ78f6VUOM8lI2XEuNOKNB7XuvM2+2cMXAoq4ALQ==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.45.0.tgz", + "integrity": "sha512-WugXLuOIq67BMgQInIxxnsSyRLFxdkJEJu8r4ngLR56q/4Q5LrbfkFRH27vMTjxEK8Pyz7QfzuZe/G15qQnVRA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -809,15 +809,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.1.tgz", - "integrity": "sha512-qnQJ+mVa7szevdEyvfItbO5Vo+GfZ4/GZWWDRRLjrxYPkhM+6zYB2vRYwCsoJLzqFCdZT4mEqyJoyzkunsZ96A==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.45.0.tgz", + "integrity": "sha512-GfE1NfVbLam6XQ0LcERKwdTTPlLvHvXXhOeUGC1OXi4eQBoyy1iVsW+uzJ/J9jtCz6/7GCQ9MtrQ0fml/jWCnA==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.44.1", - "@typescript-eslint/tsconfig-utils": "8.44.1", - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1", + "@typescript-eslint/project-service": "8.45.0", + "@typescript-eslint/tsconfig-utils": "8.45.0", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -849,15 +849,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.1.tgz", - "integrity": "sha512-DpX5Fp6edTlocMCwA+mHY8Mra+pPjRZ0TfHkXI8QFelIKcbADQz1LUPNtzOFUriBB2UYqw4Pi9+xV4w9ZczHFg==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.45.0.tgz", + "integrity": "sha512-bxi1ht+tLYg4+XV2knz/F7RVhU0k6VrSMc9sb8DQ6fyCTrGQLHfo7lDtN0QJjZjKkLA2ThrKuCdHEvLReqtIGg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.44.1", - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/typescript-estree": "8.44.1" + "@typescript-eslint/scope-manager": "8.45.0", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/typescript-estree": "8.45.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -872,12 +872,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.1.tgz", - "integrity": "sha512-576+u0QD+Jp3tZzvfRfxon0EA2lzcDt3lhUbsC6Lgzy9x2VR4E+JUiNyGHi5T8vk0TV+fpJ5GLG1JsJuWCaKhw==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.45.0.tgz", + "integrity": "sha512-qsaFBA3e09MIDAGFUrTk+dzqtfv1XPVz8t8d1f0ybTzrCY7BKiMC5cjrl1O/P7UmHsNyW90EYSkU/ZWpmXelag==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/types": "8.45.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7183,16 +7183,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.44.1.tgz", - "integrity": "sha512-molgphGqOBT7t4YKCSkbasmu1tb1MgrZ2szGzHbclF7PNmOkSTQVHy+2jXOSnxvR3+Xe1yySHFZoqMpz3TfQsw==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.45.0.tgz", + "integrity": "sha512-HC3y9CVuevvWCl/oyZuI47dOeDF9ztdMEfMH8/DW/Mhwa9cCLnK1oD7JoTVGW/u7kFzNZUKUoyJEqkaJh5y3Wg==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.44.1", - "@typescript-eslint/type-utils": "8.44.1", - "@typescript-eslint/utils": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1", + "@typescript-eslint/scope-manager": "8.45.0", + "@typescript-eslint/type-utils": "8.45.0", + "@typescript-eslint/utils": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7215,55 +7215,55 @@ } }, "@typescript-eslint/parser": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.44.1.tgz", - "integrity": "sha512-EHrrEsyhOhxYt8MTg4zTF+DJMuNBzWwgvvOYNj/zm1vnaD/IC5zCXFehZv94Piqa2cRFfXrTFxIvO95L7Qc/cw==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.45.0.tgz", + "integrity": "sha512-TGf22kon8KW+DeKaUmOibKWktRY8b2NSAZNdtWh798COm1NWx8+xJ6iFBtk3IvLdv6+LGLJLRlyhrhEDZWargQ==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.44.1", - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/typescript-estree": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1", + "@typescript-eslint/scope-manager": "8.45.0", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/typescript-estree": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0", "debug": "^4.3.4" } }, "@typescript-eslint/project-service": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.44.1.tgz", - "integrity": "sha512-ycSa60eGg8GWAkVsKV4E6Nz33h+HjTXbsDT4FILyL8Obk5/mx4tbvCNsLf9zret3ipSumAOG89UcCs/KRaKYrA==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.45.0.tgz", + "integrity": "sha512-3pcVHwMG/iA8afdGLMuTibGR7pDsn9RjDev6CCB+naRsSYs2pns5QbinF4Xqw6YC/Sj3lMrm/Im0eMfaa61WUg==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.44.1", - "@typescript-eslint/types": "^8.44.1", + "@typescript-eslint/tsconfig-utils": "^8.45.0", + "@typescript-eslint/types": "^8.45.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.44.1.tgz", - "integrity": "sha512-NdhWHgmynpSvyhchGLXh+w12OMT308Gm25JoRIyTZqEbApiBiQHD/8xgb6LqCWCFcxFtWwaVdFsLPQI3jvhywg==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.45.0.tgz", + "integrity": "sha512-clmm8XSNj/1dGvJeO6VGH7EUSeA0FMs+5au/u3lrA3KfG8iJ4u8ym9/j2tTEoacAffdW1TVUzXO30W1JTJS7dA==", "dev": true, "requires": { - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1" + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.44.1.tgz", - "integrity": "sha512-B5OyACouEjuIvof3o86lRMvyDsFwZm+4fBOqFHccIctYgBjqR3qT39FBYGN87khcgf0ExpdCBeGKpKRhSFTjKQ==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.45.0.tgz", + "integrity": "sha512-aFdr+c37sc+jqNMGhH+ajxPXwjv9UtFZk79k8pLoJ6p4y0snmYpPA52GuWHgt2ZF4gRRW6odsEj41uZLojDt5w==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.44.1.tgz", - "integrity": "sha512-KdEerZqHWXsRNKjF9NYswNISnFzXfXNDfPxoTh7tqohU/PRIbwTmsjGK6V9/RTYWau7NZvfo52lgVk+sJh0K3g==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.45.0.tgz", + "integrity": "sha512-bpjepLlHceKgyMEPglAeULX1vixJDgaKocp0RVJ5u4wLJIMNuKtUXIczpJCPcn2waII0yuvks/5m5/h3ZQKs0A==", "dev": true, "requires": { - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/typescript-estree": "8.44.1", - "@typescript-eslint/utils": "8.44.1", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/typescript-estree": "8.45.0", + "@typescript-eslint/utils": "8.45.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7278,21 +7278,21 @@ } }, "@typescript-eslint/types": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.44.1.tgz", - "integrity": "sha512-Lk7uj7y9uQUOEguiDIDLYLJOrYHQa7oBiURYVFqIpGxclAFQ78f6VUOM8lI2XEuNOKNB7XuvM2+2cMXAoq4ALQ==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.45.0.tgz", + "integrity": "sha512-WugXLuOIq67BMgQInIxxnsSyRLFxdkJEJu8r4ngLR56q/4Q5LrbfkFRH27vMTjxEK8Pyz7QfzuZe/G15qQnVRA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.44.1.tgz", - "integrity": "sha512-qnQJ+mVa7szevdEyvfItbO5Vo+GfZ4/GZWWDRRLjrxYPkhM+6zYB2vRYwCsoJLzqFCdZT4mEqyJoyzkunsZ96A==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.45.0.tgz", + "integrity": "sha512-GfE1NfVbLam6XQ0LcERKwdTTPlLvHvXXhOeUGC1OXi4eQBoyy1iVsW+uzJ/J9jtCz6/7GCQ9MtrQ0fml/jWCnA==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.44.1", - "@typescript-eslint/tsconfig-utils": "8.44.1", - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/visitor-keys": "8.44.1", + "@typescript-eslint/project-service": "8.45.0", + "@typescript-eslint/tsconfig-utils": "8.45.0", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/visitor-keys": "8.45.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7311,24 +7311,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.44.1.tgz", - "integrity": "sha512-DpX5Fp6edTlocMCwA+mHY8Mra+pPjRZ0TfHkXI8QFelIKcbADQz1LUPNtzOFUriBB2UYqw4Pi9+xV4w9ZczHFg==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.45.0.tgz", + "integrity": "sha512-bxi1ht+tLYg4+XV2knz/F7RVhU0k6VrSMc9sb8DQ6fyCTrGQLHfo7lDtN0QJjZjKkLA2ThrKuCdHEvLReqtIGg==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.44.1", - "@typescript-eslint/types": "8.44.1", - "@typescript-eslint/typescript-estree": "8.44.1" + "@typescript-eslint/scope-manager": "8.45.0", + "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/typescript-estree": "8.45.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.44.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.44.1.tgz", - "integrity": "sha512-576+u0QD+Jp3tZzvfRfxon0EA2lzcDt3lhUbsC6Lgzy9x2VR4E+JUiNyGHi5T8vk0TV+fpJ5GLG1JsJuWCaKhw==", + "version": "8.45.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.45.0.tgz", + "integrity": "sha512-qsaFBA3e09MIDAGFUrTk+dzqtfv1XPVz8t8d1f0ybTzrCY7BKiMC5cjrl1O/P7UmHsNyW90EYSkU/ZWpmXelag==", "dev": true, "requires": { - "@typescript-eslint/types": "8.44.1", + "@typescript-eslint/types": "8.45.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 6e5247ad899b50fd67edf516e588b9283025d33d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 Oct 2025 05:17:29 +0000 Subject: [PATCH 394/609] Bump fast-xml-parser from 5.2.5 to 5.3.0 Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 5.2.5 to 5.3.0. - [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases) - [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md) - [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v5.2.5...v5.3.0) --- updated-dependencies: - dependency-name: fast-xml-parser dependency-version: 5.3.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6bcd1883d..b386e2651 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2973,16 +2973,15 @@ "dev": true }, "node_modules/fast-xml-parser": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.2.5.tgz", - "integrity": "sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.3.0.tgz", + "integrity": "sha512-gkWGshjYcQCF+6qtlrqBqELqNqnt4CxruY6UVAWWnqb3DQ6qaNFEIKqzYep1XzHLM/QtrHVCxyPOtTk4LTQ7Aw==", "funding": [ { "type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" } ], - "license": "MIT", "dependencies": { "strnum": "^2.1.0" }, @@ -8865,9 +8864,9 @@ "dev": true }, "fast-xml-parser": { - "version": "5.2.5", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.2.5.tgz", - "integrity": "sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.3.0.tgz", + "integrity": "sha512-gkWGshjYcQCF+6qtlrqBqELqNqnt4CxruY6UVAWWnqb3DQ6qaNFEIKqzYep1XzHLM/QtrHVCxyPOtTk4LTQ7Aw==", "requires": { "strnum": "^2.1.0" } From eeb4a625856a82ba9e047e8eb09723c8d64f7f15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 Oct 2025 12:22:53 +0000 Subject: [PATCH 395/609] Bump @types/node from 24.5.2 to 24.6.2 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.5.2 to 24.6.2. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.6.2 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 070410a59..a56bc9bd1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -610,11 +610,11 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz", - "integrity": "sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==", + "version": "24.7.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.0.tgz", + "integrity": "sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==", "dependencies": { - "undici-types": "~7.12.0" + "undici-types": "~7.14.0" } }, "node_modules/@types/semver": { @@ -6337,9 +6337,9 @@ } }, "node_modules/undici-types": { - "version": "7.12.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz", - "integrity": "sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==" + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz", + "integrity": "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==" }, "node_modules/universalify": { "version": "0.2.0", @@ -7162,11 +7162,11 @@ "dev": true }, "@types/node": { - "version": "24.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz", - "integrity": "sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==", + "version": "24.7.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.0.tgz", + "integrity": "sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==", "requires": { - "undici-types": "~7.12.0" + "undici-types": "~7.14.0" } }, "@types/semver": { @@ -11165,9 +11165,9 @@ } }, "undici-types": { - "version": "7.12.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz", - "integrity": "sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==" + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz", + "integrity": "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==" }, "universalify": { "version": "0.2.0", From dadcde527b31e43fcf85e6aa8e3fdd0d88838f09 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 Oct 2025 16:08:18 +0000 Subject: [PATCH 396/609] Bump dotenv from 17.2.2 to 17.2.3 Bumps [dotenv](https://github.com/motdotla/dotenv) from 17.2.2 to 17.2.3. - [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) - [Commits](https://github.com/motdotla/dotenv/compare/v17.2.2...v17.2.3) --- updated-dependencies: - dependency-name: dotenv dependency-version: 17.2.3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index a56bc9bd1..ebcd1d9d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2015,9 +2015,9 @@ } }, "node_modules/dotenv": { - "version": "17.2.2", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.2.tgz", - "integrity": "sha512-Sf2LSQP+bOlhKWWyhFsn0UsfdK/kCWRv1iuA2gXAwt3dyNabr6QSj00I2V10pidqz69soatm9ZwZvpQMTIOd5Q==", + "version": "17.2.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.3.tgz", + "integrity": "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==", "engines": { "node": ">=12" }, @@ -8148,9 +8148,9 @@ } }, "dotenv": { - "version": "17.2.2", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.2.tgz", - "integrity": "sha512-Sf2LSQP+bOlhKWWyhFsn0UsfdK/kCWRv1iuA2gXAwt3dyNabr6QSj00I2V10pidqz69soatm9ZwZvpQMTIOd5Q==" + "version": "17.2.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.3.tgz", + "integrity": "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==" }, "dunder-proto": { "version": "1.0.1", From d73e6eaf7ad560a985b4c9776c0df6d712283f58 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 8 Oct 2025 07:20:52 +0000 Subject: [PATCH 397/609] Bump typescript from 5.9.2 to 5.9.3 Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.9.2 to 5.9.3. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml) - [Commits](https://github.com/microsoft/TypeScript/compare/v5.9.2...v5.9.3) --- updated-dependencies: - dependency-name: typescript dependency-version: 5.9.3 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index ebcd1d9d0..b74e4e5a9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6305,9 +6305,9 @@ } }, "node_modules/typescript": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", - "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -11147,9 +11147,9 @@ } }, "typescript": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", - "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true }, "unbox-primitive": { From 42a78824c7514a5f9cc68b117e6e6e2032f3a460 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 8 Oct 2025 09:30:54 +0000 Subject: [PATCH 398/609] Bump @s3pweb/keycloak-admin-client-cjs from 26.3.3 to 26.3.4 Bumps @s3pweb/keycloak-admin-client-cjs from 26.3.3 to 26.3.4. --- updated-dependencies: - dependency-name: "@s3pweb/keycloak-admin-client-cjs" dependency-version: 26.3.4 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index b74e4e5a9..6ffac5bae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -460,9 +460,9 @@ } }, "node_modules/@keycloak/keycloak-admin-client": { - "version": "26.3.3", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.3.tgz", - "integrity": "sha512-gDwiB0o9N09f/OZY2dTMIuoiu99Rs/aFscN3yEfGbVfV6/DtaLxtLqfcD5G5C7/Sq+yNpqh1tMa4Ezfislcgkg==", + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.4.tgz", + "integrity": "sha512-P/vKfpZEgc1rOSgYXqtMtVWqI/6l9ZpnKt5ZT3co3oykVU3BENQzM9+Ynj8C3zQIIwFW32eb9YWv9Wx7P1/nrA==", "dependencies": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -548,11 +548,11 @@ "dev": true }, "node_modules/@s3pweb/keycloak-admin-client-cjs": { - "version": "26.3.3", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.3.tgz", - "integrity": "sha512-zKRuYVj/zB6NV+2BujDuA1xWSJegMWqRbVk3IZo5UUot0/hviZctzIKllySZKFM1T6ON5Rg15vyXC1MhSG7trQ==", + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.4.tgz", + "integrity": "sha512-OfOdytFwudCY33YRN1mDK3585ilrbOfwZ09lkCNWQb9IAML9L2WaXiFq8H+J9rKvXuHgxmI1GqwMDCkXReDmtQ==", "dependencies": { - "@keycloak/keycloak-admin-client": "26.3.3" + "@keycloak/keycloak-admin-client": "26.3.4" } }, "node_modules/@socket.io/component-emitter": { @@ -7033,9 +7033,9 @@ } }, "@keycloak/keycloak-admin-client": { - "version": "26.3.3", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.3.tgz", - "integrity": "sha512-gDwiB0o9N09f/OZY2dTMIuoiu99Rs/aFscN3yEfGbVfV6/DtaLxtLqfcD5G5C7/Sq+yNpqh1tMa4Ezfislcgkg==", + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.4.tgz", + "integrity": "sha512-P/vKfpZEgc1rOSgYXqtMtVWqI/6l9ZpnKt5ZT3co3oykVU3BENQzM9+Ynj8C3zQIIwFW32eb9YWv9Wx7P1/nrA==", "requires": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -7100,11 +7100,11 @@ "dev": true }, "@s3pweb/keycloak-admin-client-cjs": { - "version": "26.3.3", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.3.tgz", - "integrity": "sha512-zKRuYVj/zB6NV+2BujDuA1xWSJegMWqRbVk3IZo5UUot0/hviZctzIKllySZKFM1T6ON5Rg15vyXC1MhSG7trQ==", + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.4.tgz", + "integrity": "sha512-OfOdytFwudCY33YRN1mDK3585ilrbOfwZ09lkCNWQb9IAML9L2WaXiFq8H+J9rKvXuHgxmI1GqwMDCkXReDmtQ==", "requires": { - "@keycloak/keycloak-admin-client": "26.3.3" + "@keycloak/keycloak-admin-client": "26.3.4" } }, "@socket.io/component-emitter": { From 5db11db97652f34dcb9daa128e858c24eaece742 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Wed, 8 Oct 2025 16:38:47 +0200 Subject: [PATCH 399/609] `boAttributesCreatePage` : Added method `getValue` --- .../BO/catalog/attributes/createAttribute.ts | 1 + .../BO/catalog/attributes/createAttribute.ts | 35 +++++++++++++++---- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/src/interfaces/BO/catalog/attributes/createAttribute.ts b/src/interfaces/BO/catalog/attributes/createAttribute.ts index 8664d8bd4..c9532c27b 100644 --- a/src/interfaces/BO/catalog/attributes/createAttribute.ts +++ b/src/interfaces/BO/catalog/attributes/createAttribute.ts @@ -7,4 +7,5 @@ export interface BOAttributesCreatePageInterface extends BOBasePagePageInterface readonly editPageTitle: (name: string) => string; addEditAttribute(page: Page, attributeData: FakerAttribute): Promise; + getValue(page: Page, inputName: string, languageId?: number): Promise; } diff --git a/src/versions/develop/pages/BO/catalog/attributes/createAttribute.ts b/src/versions/develop/pages/BO/catalog/attributes/createAttribute.ts index df57a7c70..4d5943539 100644 --- a/src/versions/develop/pages/BO/catalog/attributes/createAttribute.ts +++ b/src/versions/develop/pages/BO/catalog/attributes/createAttribute.ts @@ -1,4 +1,6 @@ import type FakerAttribute from '@data/faker/attribute'; +import type {BOAttributesCreatePageInterface} from '@interfaces/BO/catalog/attributes/createAttribute'; +import dataLanguages from '@data/demo/languages'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Page} from '@playwright/test'; @@ -7,14 +9,14 @@ import {type Page} from '@playwright/test'; * @class * @extends BOBasePage */ -class BOAttributesCreatePage extends BOBasePage { +class BOAttributesCreatePage extends BOBasePage implements BOAttributesCreatePageInterface { public readonly createPageTitle: string; public readonly editPageTitle: (name: string) => string; - private readonly nameInput: string; + private readonly nameInput: (idLanguage: number) => string; - private readonly publicNameInput: string; + private readonly publicNameInput: (idLanguage: number) => string; private readonly urlInput: string; @@ -37,8 +39,8 @@ class BOAttributesCreatePage extends BOBasePage { this.editPageTitle = (name: string) => `Editing attribute ${name} • ${global.INSTALL.SHOP_NAME}`; // Form selectors - this.nameInput = '#attribute_group_name_1'; - this.publicNameInput = '#attribute_group_public_name_1'; + this.nameInput = (idLanguage: number) => `#attribute_group_name_${idLanguage.toString()}`; + this.publicNameInput = (idLanguage: number) => `#attribute_group_public_name_${idLanguage.toString()}`; this.urlInput = '#attribute_group_url_name_1'; this.metaTitleInput = '#attribute_group_meta_title_1'; this.indexableToggle = (toggle: number) => `#attribute_group_is_indexable_${toggle}`; @@ -57,8 +59,8 @@ class BOAttributesCreatePage extends BOBasePage { */ async addEditAttribute(page: Page, attributeData: FakerAttribute): Promise { // Set names - await this.setValue(page, this.nameInput, attributeData.name); - await this.setValue(page, this.publicNameInput, attributeData.publicName); + await this.setValue(page, this.nameInput(dataLanguages.english.id), attributeData.name); + await this.setValue(page, this.publicNameInput(dataLanguages.english.id), attributeData.publicName); // Set Url and meta title await this.setValue(page, this.urlInput, attributeData.url); @@ -76,6 +78,25 @@ class BOAttributesCreatePage extends BOBasePage { // Return successful message return this.getAlertSuccessBlockParagraphContent(page); } + + /** + * Return input value + * @param page {Page} + * @param inputName {string} + * @param languageId {number | undefined} + */ + async getValue(page: Page, inputName: string, languageId?: number): Promise { + switch (inputName) { + case 'type': + return page.locator(this.attributeTypeSelect).evaluate((node: HTMLSelectElement) => node.value); + case 'names': + return page.inputValue(this.nameInput(languageId!)); + case 'publicNames': + return page.inputValue(this.publicNameInput(languageId!)); + default: + throw new Error(`Input ${inputName} was not found`); + } + } } module.exports = new BOAttributesCreatePage(); From 5ca3110a20c8e56900defd056ad77596af6fc894 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Oct 2025 05:16:56 +0000 Subject: [PATCH 400/609] Bump @typescript-eslint/parser from 8.45.0 to 8.46.0 Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.45.0 to 8.46.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-version: 8.46.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 241 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 227 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6ffac5bae..271a7ccf2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -682,15 +682,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.45.0.tgz", - "integrity": "sha512-TGf22kon8KW+DeKaUmOibKWktRY8b2NSAZNdtWh798COm1NWx8+xJ6iFBtk3IvLdv6+LGLJLRlyhrhEDZWargQ==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.0.tgz", + "integrity": "sha512-n1H6IcDhmmUEG7TNVSspGmiHHutt7iVKtZwRppD7e04wha5MrkV1h3pti9xQLcCMt6YWsncpoT0HMjkH1FNwWQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.45.0", - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/typescript-estree": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0", + "@typescript-eslint/scope-manager": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/typescript-estree": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", "debug": "^4.3.4" }, "engines": { @@ -705,6 +705,142 @@ "typescript": ">=4.8.4 <6.0.0" } }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.0.tgz", + "integrity": "sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.46.0", + "@typescript-eslint/types": "^8.46.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.0.tgz", + "integrity": "sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.0.tgz", + "integrity": "sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.0.tgz", + "integrity": "sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.0.tgz", + "integrity": "sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==", + "dev": true, + "dependencies": { + "@typescript-eslint/project-service": "8.46.0", + "@typescript-eslint/tsconfig-utils": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.0.tgz", + "integrity": "sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.46.0", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, "node_modules/@typescript-eslint/project-service": { "version": "8.45.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.45.0.tgz", @@ -7214,16 +7350,93 @@ } }, "@typescript-eslint/parser": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.45.0.tgz", - "integrity": "sha512-TGf22kon8KW+DeKaUmOibKWktRY8b2NSAZNdtWh798COm1NWx8+xJ6iFBtk3IvLdv6+LGLJLRlyhrhEDZWargQ==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.0.tgz", + "integrity": "sha512-n1H6IcDhmmUEG7TNVSspGmiHHutt7iVKtZwRppD7e04wha5MrkV1h3pti9xQLcCMt6YWsncpoT0HMjkH1FNwWQ==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "8.45.0", - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/typescript-estree": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0", + "@typescript-eslint/scope-manager": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/typescript-estree": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", "debug": "^4.3.4" + }, + "dependencies": { + "@typescript-eslint/project-service": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.0.tgz", + "integrity": "sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==", + "dev": true, + "requires": { + "@typescript-eslint/tsconfig-utils": "^8.46.0", + "@typescript-eslint/types": "^8.46.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.0.tgz", + "integrity": "sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0" + } + }, + "@typescript-eslint/tsconfig-utils": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.0.tgz", + "integrity": "sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==", + "dev": true, + "requires": {} + }, + "@typescript-eslint/types": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.0.tgz", + "integrity": "sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.0.tgz", + "integrity": "sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==", + "dev": true, + "requires": { + "@typescript-eslint/project-service": "8.46.0", + "@typescript-eslint/tsconfig-utils": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.0.tgz", + "integrity": "sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.46.0", + "eslint-visitor-keys": "^4.2.1" + } + }, + "eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true + }, + "ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "requires": {} + } } }, "@typescript-eslint/project-service": { From 5cb889753584bd6f730534b45fcb63dcdcc62cc1 Mon Sep 17 00:00:00 2001 From: Progi1984 Date: Mon, 13 Oct 2025 10:16:41 +0200 Subject: [PATCH 401/609] `boDesignPositionsPage` : Improve method `getHookStatus` --- src/versions/develop/pages/BO/design/positions/index.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/versions/develop/pages/BO/design/positions/index.ts b/src/versions/develop/pages/BO/design/positions/index.ts index 62d428634..b00899dcf 100644 --- a/src/versions/develop/pages/BO/design/positions/index.ts +++ b/src/versions/develop/pages/BO/design/positions/index.ts @@ -226,6 +226,10 @@ class BODesignPositionsPage extends BOBasePage implements BODesignPositionsPageI * @returns {Promise} */ async getHookStatus(page: Page, hookRow: number): Promise { + if (await page.locator(`${this.hookHeaderStatusInput(hookRow)}:checked`).count() === 0) { + return false; + } + // Get value of the check input const inputValue = await this.getAttributeContent(page, `${this.hookHeaderStatusInput(hookRow)}:checked`, 'value'); // Return status=false if value='0' and true otherwise From 5a644ee925a42fb07fea475dd15d6db546366a9a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Oct 2025 08:47:47 +0000 Subject: [PATCH 402/609] Bump @typescript-eslint/eslint-plugin from 8.45.0 to 8.46.0 Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.45.0 to 8.46.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.46.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.46.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 377 ++++++++++------------------------------------ 1 file changed, 82 insertions(+), 295 deletions(-) diff --git a/package-lock.json b/package-lock.json index 271a7ccf2..38b4ad7f8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -630,16 +630,16 @@ "optional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.45.0.tgz", - "integrity": "sha512-HC3y9CVuevvWCl/oyZuI47dOeDF9ztdMEfMH8/DW/Mhwa9cCLnK1oD7JoTVGW/u7kFzNZUKUoyJEqkaJh5y3Wg==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.0.tgz", + "integrity": "sha512-hA8gxBq4ukonVXPy0OKhiaUh/68D0E88GSmtC1iAEnGaieuDi38LhS7jdCHRLi6ErJBNDGCzvh5EnzdPwUc0DA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.45.0", - "@typescript-eslint/type-utils": "8.45.0", - "@typescript-eslint/utils": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0", + "@typescript-eslint/scope-manager": "8.46.0", + "@typescript-eslint/type-utils": "8.46.0", + "@typescript-eslint/utils": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -653,7 +653,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.45.0", + "@typescript-eslint/parser": "^8.46.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } @@ -705,7 +705,7 @@ "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/project-service": { + "node_modules/@typescript-eslint/project-service": { "version": "8.46.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.0.tgz", "integrity": "sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==", @@ -726,7 +726,7 @@ "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "node_modules/@typescript-eslint/scope-manager": { "version": "8.46.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.0.tgz", "integrity": "sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==", @@ -743,7 +743,7 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/tsconfig-utils": { + "node_modules/@typescript-eslint/tsconfig-utils": { "version": "8.46.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.0.tgz", "integrity": "sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==", @@ -759,151 +759,15 @@ "typescript": ">=4.8.4 <6.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.0.tgz", - "integrity": "sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.0.tgz", - "integrity": "sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==", - "dev": true, - "dependencies": { - "@typescript-eslint/project-service": "8.46.0", - "@typescript-eslint/tsconfig-utils": "8.46.0", - "@typescript-eslint/types": "8.46.0", - "@typescript-eslint/visitor-keys": "8.46.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "node_modules/@typescript-eslint/type-utils": { "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.0.tgz", - "integrity": "sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.0.tgz", + "integrity": "sha512-hy+lvYV1lZpVs2jRaEYvgCblZxUoJiPyCemwbQZ+NGulWkQRy0HRPYAoef/CNSzaLt+MLvMptZsHXHlkEilaeg==", "dev": true, "dependencies": { "@typescript-eslint/types": "8.46.0", - "eslint-visitor-keys": "^4.2.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, - "node_modules/@typescript-eslint/project-service": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.45.0.tgz", - "integrity": "sha512-3pcVHwMG/iA8afdGLMuTibGR7pDsn9RjDev6CCB+naRsSYs2pns5QbinF4Xqw6YC/Sj3lMrm/Im0eMfaa61WUg==", - "dev": true, - "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.45.0", - "@typescript-eslint/types": "^8.45.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.45.0.tgz", - "integrity": "sha512-clmm8XSNj/1dGvJeO6VGH7EUSeA0FMs+5au/u3lrA3KfG8iJ4u8ym9/j2tTEoacAffdW1TVUzXO30W1JTJS7dA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.45.0.tgz", - "integrity": "sha512-aFdr+c37sc+jqNMGhH+ajxPXwjv9UtFZk79k8pLoJ6p4y0snmYpPA52GuWHgt2ZF4gRRW6odsEj41uZLojDt5w==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <6.0.0" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.45.0.tgz", - "integrity": "sha512-bpjepLlHceKgyMEPglAeULX1vixJDgaKocp0RVJ5u4wLJIMNuKtUXIczpJCPcn2waII0yuvks/5m5/h3ZQKs0A==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/typescript-estree": "8.45.0", - "@typescript-eslint/utils": "8.45.0", + "@typescript-eslint/typescript-estree": "8.46.0", + "@typescript-eslint/utils": "8.46.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -932,9 +796,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.45.0.tgz", - "integrity": "sha512-WugXLuOIq67BMgQInIxxnsSyRLFxdkJEJu8r4ngLR56q/4Q5LrbfkFRH27vMTjxEK8Pyz7QfzuZe/G15qQnVRA==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.0.tgz", + "integrity": "sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -945,15 +809,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.45.0.tgz", - "integrity": "sha512-GfE1NfVbLam6XQ0LcERKwdTTPlLvHvXXhOeUGC1OXi4eQBoyy1iVsW+uzJ/J9jtCz6/7GCQ9MtrQ0fml/jWCnA==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.0.tgz", + "integrity": "sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.45.0", - "@typescript-eslint/tsconfig-utils": "8.45.0", - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0", + "@typescript-eslint/project-service": "8.46.0", + "@typescript-eslint/tsconfig-utils": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -985,15 +849,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.45.0.tgz", - "integrity": "sha512-bxi1ht+tLYg4+XV2knz/F7RVhU0k6VrSMc9sb8DQ6fyCTrGQLHfo7lDtN0QJjZjKkLA2ThrKuCdHEvLReqtIGg==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.0.tgz", + "integrity": "sha512-nD6yGWPj1xiOm4Gk0k6hLSZz2XkNXhuYmyIrOWcHoPuAhjT9i5bAG+xbWPgFeNR8HPHHtpNKdYUXJl/D3x7f5g==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.45.0", - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/typescript-estree": "8.45.0" + "@typescript-eslint/scope-manager": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/typescript-estree": "8.46.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1008,12 +872,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.45.0.tgz", - "integrity": "sha512-qsaFBA3e09MIDAGFUrTk+dzqtfv1XPVz8t8d1f0ybTzrCY7BKiMC5cjrl1O/P7UmHsNyW90EYSkU/ZWpmXelag==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.0.tgz", + "integrity": "sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/types": "8.46.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -7318,16 +7182,16 @@ "optional": true }, "@typescript-eslint/eslint-plugin": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.45.0.tgz", - "integrity": "sha512-HC3y9CVuevvWCl/oyZuI47dOeDF9ztdMEfMH8/DW/Mhwa9cCLnK1oD7JoTVGW/u7kFzNZUKUoyJEqkaJh5y3Wg==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.0.tgz", + "integrity": "sha512-hA8gxBq4ukonVXPy0OKhiaUh/68D0E88GSmtC1iAEnGaieuDi38LhS7jdCHRLi6ErJBNDGCzvh5EnzdPwUc0DA==", "dev": true, "requires": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.45.0", - "@typescript-eslint/type-utils": "8.45.0", - "@typescript-eslint/utils": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0", + "@typescript-eslint/scope-manager": "8.46.0", + "@typescript-eslint/type-utils": "8.46.0", + "@typescript-eslint/utils": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -7360,122 +7224,45 @@ "@typescript-eslint/typescript-estree": "8.46.0", "@typescript-eslint/visitor-keys": "8.46.0", "debug": "^4.3.4" - }, - "dependencies": { - "@typescript-eslint/project-service": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.0.tgz", - "integrity": "sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==", - "dev": true, - "requires": { - "@typescript-eslint/tsconfig-utils": "^8.46.0", - "@typescript-eslint/types": "^8.46.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.0.tgz", - "integrity": "sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.46.0", - "@typescript-eslint/visitor-keys": "8.46.0" - } - }, - "@typescript-eslint/tsconfig-utils": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.0.tgz", - "integrity": "sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==", - "dev": true, - "requires": {} - }, - "@typescript-eslint/types": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.0.tgz", - "integrity": "sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.0.tgz", - "integrity": "sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==", - "dev": true, - "requires": { - "@typescript-eslint/project-service": "8.46.0", - "@typescript-eslint/tsconfig-utils": "8.46.0", - "@typescript-eslint/types": "8.46.0", - "@typescript-eslint/visitor-keys": "8.46.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.0.tgz", - "integrity": "sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.46.0", - "eslint-visitor-keys": "^4.2.1" - } - }, - "eslint-visitor-keys": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", - "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", - "dev": true - }, - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - } } }, "@typescript-eslint/project-service": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.45.0.tgz", - "integrity": "sha512-3pcVHwMG/iA8afdGLMuTibGR7pDsn9RjDev6CCB+naRsSYs2pns5QbinF4Xqw6YC/Sj3lMrm/Im0eMfaa61WUg==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.0.tgz", + "integrity": "sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==", "dev": true, "requires": { - "@typescript-eslint/tsconfig-utils": "^8.45.0", - "@typescript-eslint/types": "^8.45.0", + "@typescript-eslint/tsconfig-utils": "^8.46.0", + "@typescript-eslint/types": "^8.46.0", "debug": "^4.3.4" } }, "@typescript-eslint/scope-manager": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.45.0.tgz", - "integrity": "sha512-clmm8XSNj/1dGvJeO6VGH7EUSeA0FMs+5au/u3lrA3KfG8iJ4u8ym9/j2tTEoacAffdW1TVUzXO30W1JTJS7dA==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.0.tgz", + "integrity": "sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==", "dev": true, "requires": { - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0" + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0" } }, "@typescript-eslint/tsconfig-utils": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.45.0.tgz", - "integrity": "sha512-aFdr+c37sc+jqNMGhH+ajxPXwjv9UtFZk79k8pLoJ6p4y0snmYpPA52GuWHgt2ZF4gRRW6odsEj41uZLojDt5w==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.0.tgz", + "integrity": "sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==", "dev": true, "requires": {} }, "@typescript-eslint/type-utils": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.45.0.tgz", - "integrity": "sha512-bpjepLlHceKgyMEPglAeULX1vixJDgaKocp0RVJ5u4wLJIMNuKtUXIczpJCPcn2waII0yuvks/5m5/h3ZQKs0A==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.0.tgz", + "integrity": "sha512-hy+lvYV1lZpVs2jRaEYvgCblZxUoJiPyCemwbQZ+NGulWkQRy0HRPYAoef/CNSzaLt+MLvMptZsHXHlkEilaeg==", "dev": true, "requires": { - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/typescript-estree": "8.45.0", - "@typescript-eslint/utils": "8.45.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/typescript-estree": "8.46.0", + "@typescript-eslint/utils": "8.46.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -7490,21 +7277,21 @@ } }, "@typescript-eslint/types": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.45.0.tgz", - "integrity": "sha512-WugXLuOIq67BMgQInIxxnsSyRLFxdkJEJu8r4ngLR56q/4Q5LrbfkFRH27vMTjxEK8Pyz7QfzuZe/G15qQnVRA==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.0.tgz", + "integrity": "sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.45.0.tgz", - "integrity": "sha512-GfE1NfVbLam6XQ0LcERKwdTTPlLvHvXXhOeUGC1OXi4eQBoyy1iVsW+uzJ/J9jtCz6/7GCQ9MtrQ0fml/jWCnA==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.0.tgz", + "integrity": "sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==", "dev": true, "requires": { - "@typescript-eslint/project-service": "8.45.0", - "@typescript-eslint/tsconfig-utils": "8.45.0", - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/visitor-keys": "8.45.0", + "@typescript-eslint/project-service": "8.46.0", + "@typescript-eslint/tsconfig-utils": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/visitor-keys": "8.46.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -7523,24 +7310,24 @@ } }, "@typescript-eslint/utils": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.45.0.tgz", - "integrity": "sha512-bxi1ht+tLYg4+XV2knz/F7RVhU0k6VrSMc9sb8DQ6fyCTrGQLHfo7lDtN0QJjZjKkLA2ThrKuCdHEvLReqtIGg==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.0.tgz", + "integrity": "sha512-nD6yGWPj1xiOm4Gk0k6hLSZz2XkNXhuYmyIrOWcHoPuAhjT9i5bAG+xbWPgFeNR8HPHHtpNKdYUXJl/D3x7f5g==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.45.0", - "@typescript-eslint/types": "8.45.0", - "@typescript-eslint/typescript-estree": "8.45.0" + "@typescript-eslint/scope-manager": "8.46.0", + "@typescript-eslint/types": "8.46.0", + "@typescript-eslint/typescript-estree": "8.46.0" } }, "@typescript-eslint/visitor-keys": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.45.0.tgz", - "integrity": "sha512-qsaFBA3e09MIDAGFUrTk+dzqtfv1XPVz8t8d1f0ybTzrCY7BKiMC5cjrl1O/P7UmHsNyW90EYSkU/ZWpmXelag==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.0.tgz", + "integrity": "sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==", "dev": true, "requires": { - "@typescript-eslint/types": "8.45.0", + "@typescript-eslint/types": "8.46.0", "eslint-visitor-keys": "^4.2.1" }, "dependencies": { From 1eb2e483b0a976a7a798bb2f0b65b8bf127ca6aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Oct 2025 10:10:03 +0000 Subject: [PATCH 403/609] Bump @types/node from 24.7.0 to 24.7.2 Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 24.7.0 to 24.7.2. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 24.7.2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 38b4ad7f8..21f74b382 100644 --- a/package-lock.json +++ b/package-lock.json @@ -610,9 +610,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "24.7.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.0.tgz", - "integrity": "sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==", + "version": "24.7.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.2.tgz", + "integrity": "sha512-/NbVmcGTP+lj5oa4yiYxxeBjRivKQ5Ns1eSZeB99ExsEQ6rX5XYU1Zy/gGxY/ilqtD4Etx9mKyrPxZRetiahhA==", "dependencies": { "undici-types": "~7.14.0" } @@ -7162,9 +7162,9 @@ "dev": true }, "@types/node": { - "version": "24.7.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.0.tgz", - "integrity": "sha512-IbKooQVqUBrlzWTi79E8Fw78l8k1RNtlDDNWsFZs7XonuQSJ8oNYfEeclhprUldXISRMLzBpILuKgPlIxm+/Yw==", + "version": "24.7.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.7.2.tgz", + "integrity": "sha512-/NbVmcGTP+lj5oa4yiYxxeBjRivKQ5Ns1eSZeB99ExsEQ6rX5XYU1Zy/gGxY/ilqtD4Etx9mKyrPxZRetiahhA==", "requires": { "undici-types": "~7.14.0" } From dd148d3ccc1a2d55267d430bf5ccb65b602df7a1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 14 Oct 2025 14:56:26 +0000 Subject: [PATCH 404/609] Bump @playwright/test from 1.55.1 to 1.56.0 Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.55.1 to 1.56.0. - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.55.1...v1.56.0) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.56.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/package-lock.json b/package-lock.json index 21f74b382..84bf38b83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -528,11 +528,11 @@ } }, "node_modules/@playwright/test": { - "version": "1.55.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.1.tgz", - "integrity": "sha512-IVAh/nOJaw6W9g+RJVlIQJ6gSiER+ae6mKQ5CX1bERzQgbC1VSeBlwdvczT7pxb0GWiyrxH4TGKbMfDb4Sq/ig==", + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.56.0.tgz", + "integrity": "sha512-Tzh95Twig7hUwwNe381/K3PggZBZblKUe2wv25oIpzWLr6Z0m4KgV1ZVIjnR6GM9ANEqjZD7XsZEa6JL/7YEgg==", "dependencies": { - "playwright": "1.55.1" + "playwright": "1.56.0" }, "bin": { "playwright": "cli.js" @@ -5020,11 +5020,11 @@ } }, "node_modules/playwright": { - "version": "1.55.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.1.tgz", - "integrity": "sha512-cJW4Xd/G3v5ovXtJJ52MAOclqeac9S/aGGgRzLabuF8TnIb6xHvMzKIa6JmrRzUkeXJgfL1MhukP0NK6l39h3A==", + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.56.0.tgz", + "integrity": "sha512-X5Q1b8lOdWIE4KAoHpW3SE8HvUB+ZZsUoN64ZhjnN8dOb1UpujxBtENGiZFE+9F/yhzJwYa+ca3u43FeLbboHA==", "dependencies": { - "playwright-core": "1.55.1" + "playwright-core": "1.56.0" }, "bin": { "playwright": "cli.js" @@ -5037,9 +5037,9 @@ } }, "node_modules/playwright-core": { - "version": "1.55.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.1.tgz", - "integrity": "sha512-Z6Mh9mkwX+zxSlHqdr5AOcJnfp+xUWLCt9uKV18fhzA8eyxUd8NUWzAjxUh55RZKSYwDGX0cfaySdhZJGMoJ+w==", + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.56.0.tgz", + "integrity": "sha512-1SXl7pMfemAMSDn5rkPeZljxOCYAmQnYLBTExuh6E8USHXGSX3dx6lYZN/xPpTz1vimXmPA9CDnILvmJaB8aSQ==", "bin": { "playwright-core": "cli.js" }, @@ -7086,11 +7086,11 @@ } }, "@playwright/test": { - "version": "1.55.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.1.tgz", - "integrity": "sha512-IVAh/nOJaw6W9g+RJVlIQJ6gSiER+ae6mKQ5CX1bERzQgbC1VSeBlwdvczT7pxb0GWiyrxH4TGKbMfDb4Sq/ig==", + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.56.0.tgz", + "integrity": "sha512-Tzh95Twig7hUwwNe381/K3PggZBZblKUe2wv25oIpzWLr6Z0m4KgV1ZVIjnR6GM9ANEqjZD7XsZEa6JL/7YEgg==", "requires": { - "playwright": "1.55.1" + "playwright": "1.56.0" } }, "@rtsao/scc": { @@ -10279,18 +10279,18 @@ "dev": true }, "playwright": { - "version": "1.55.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.1.tgz", - "integrity": "sha512-cJW4Xd/G3v5ovXtJJ52MAOclqeac9S/aGGgRzLabuF8TnIb6xHvMzKIa6JmrRzUkeXJgfL1MhukP0NK6l39h3A==", + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.56.0.tgz", + "integrity": "sha512-X5Q1b8lOdWIE4KAoHpW3SE8HvUB+ZZsUoN64ZhjnN8dOb1UpujxBtENGiZFE+9F/yhzJwYa+ca3u43FeLbboHA==", "requires": { "fsevents": "2.3.2", - "playwright-core": "1.55.1" + "playwright-core": "1.56.0" } }, "playwright-core": { - "version": "1.55.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.1.tgz", - "integrity": "sha512-Z6Mh9mkwX+zxSlHqdr5AOcJnfp+xUWLCt9uKV18fhzA8eyxUd8NUWzAjxUh55RZKSYwDGX0cfaySdhZJGMoJ+w==" + "version": "1.56.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.56.0.tgz", + "integrity": "sha512-1SXl7pMfemAMSDn5rkPeZljxOCYAmQnYLBTExuh6E8USHXGSX3dx6lYZN/xPpTz1vimXmPA9CDnILvmJaB8aSQ==" }, "plimit-lit": { "version": "1.6.1", From f4ed98c85e31f8edb4a58d004376aa59b15cea0f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Oct 2025 07:05:09 +0000 Subject: [PATCH 405/609] Bump @s3pweb/keycloak-admin-client-cjs from 26.3.4 to 26.4.0 Bumps @s3pweb/keycloak-admin-client-cjs from 26.3.4 to 26.4.0. --- updated-dependencies: - dependency-name: "@s3pweb/keycloak-admin-client-cjs" dependency-version: 26.4.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 84bf38b83..bde70dcc2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -460,9 +460,9 @@ } }, "node_modules/@keycloak/keycloak-admin-client": { - "version": "26.3.4", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.4.tgz", - "integrity": "sha512-P/vKfpZEgc1rOSgYXqtMtVWqI/6l9ZpnKt5ZT3co3oykVU3BENQzM9+Ynj8C3zQIIwFW32eb9YWv9Wx7P1/nrA==", + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.4.0.tgz", + "integrity": "sha512-EQ4GFkb0mW5JssDPUW6Gm0z7vaNQDayQG/hF2YCPmC/gi1xNGhcwd1yZ+0e5xKy3l9U5fCkVKLuxKmGUzDxZ8A==", "dependencies": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -548,11 +548,11 @@ "dev": true }, "node_modules/@s3pweb/keycloak-admin-client-cjs": { - "version": "26.3.4", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.4.tgz", - "integrity": "sha512-OfOdytFwudCY33YRN1mDK3585ilrbOfwZ09lkCNWQb9IAML9L2WaXiFq8H+J9rKvXuHgxmI1GqwMDCkXReDmtQ==", + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.4.0.tgz", + "integrity": "sha512-L4Yl1NUbOjOSRtyODQNn9bdDxJtIMpazP/rFa30tUGeAOS7HDJ1d9Anec1+dpSuPe1wgqLIndLwp2yxta4QGiw==", "dependencies": { - "@keycloak/keycloak-admin-client": "26.3.4" + "@keycloak/keycloak-admin-client": "26.4.0" } }, "node_modules/@socket.io/component-emitter": { @@ -7033,9 +7033,9 @@ } }, "@keycloak/keycloak-admin-client": { - "version": "26.3.4", - "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.3.4.tgz", - "integrity": "sha512-P/vKfpZEgc1rOSgYXqtMtVWqI/6l9ZpnKt5ZT3co3oykVU3BENQzM9+Ynj8C3zQIIwFW32eb9YWv9Wx7P1/nrA==", + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/@keycloak/keycloak-admin-client/-/keycloak-admin-client-26.4.0.tgz", + "integrity": "sha512-EQ4GFkb0mW5JssDPUW6Gm0z7vaNQDayQG/hF2YCPmC/gi1xNGhcwd1yZ+0e5xKy3l9U5fCkVKLuxKmGUzDxZ8A==", "requires": { "camelize-ts": "^3.0.0", "url-join": "^5.0.0", @@ -7100,11 +7100,11 @@ "dev": true }, "@s3pweb/keycloak-admin-client-cjs": { - "version": "26.3.4", - "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.3.4.tgz", - "integrity": "sha512-OfOdytFwudCY33YRN1mDK3585ilrbOfwZ09lkCNWQb9IAML9L2WaXiFq8H+J9rKvXuHgxmI1GqwMDCkXReDmtQ==", + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/@s3pweb/keycloak-admin-client-cjs/-/keycloak-admin-client-cjs-26.4.0.tgz", + "integrity": "sha512-L4Yl1NUbOjOSRtyODQNn9bdDxJtIMpazP/rFa30tUGeAOS7HDJ1d9Anec1+dpSuPe1wgqLIndLwp2yxta4QGiw==", "requires": { - "@keycloak/keycloak-admin-client": "26.3.4" + "@keycloak/keycloak-admin-client": "26.4.0" } }, "@socket.io/component-emitter": { From 4d43e8bf36823c875473039452468a5c9740e6dd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Oct 2025 08:39:37 +0000 Subject: [PATCH 406/609] Bump semver from 7.7.2 to 7.7.3 Bumps [semver](https://github.com/npm/node-semver) from 7.7.2 to 7.7.3. - [Release notes](https://github.com/npm/node-semver/releases) - [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-semver/compare/v7.7.2...v7.7.3) --- updated-dependencies: - dependency-name: semver dependency-version: 7.7.3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index bde70dcc2..57c07cfe1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5453,10 +5453,9 @@ } }, "node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "license": "ISC", + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", "bin": { "semver": "bin/semver.js" }, @@ -10551,9 +10550,9 @@ } }, "semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==" + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==" }, "send": { "version": "0.19.0", From 182dac016682683f49eaa7e773bc5425b0fed039 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Wed, 15 Oct 2025 14:21:29 +0200 Subject: [PATCH 407/609] Add methods and selectors to test multicarrier --- .../BO/advancedParameters/featureFlag.ts | 1 + .../newExperimentalFeatures/index.ts | 12 - .../BO/catalog/products/create/tabShipping.ts | 3 +- src/interfaces/BO/orders/create.ts | 1 + src/interfaces/BO/orders/view/blockTabList.ts | 28 +- .../BO/advancedParameters/featureFlag.ts | 6 + .../BO/catalog/products/create/tabShipping.ts | 119 +++---- .../develop/pages/BO/orders/create.ts | 19 +- .../pages/BO/orders/view/blockTabList.ts | 330 +++++++++++++++++- 9 files changed, 439 insertions(+), 80 deletions(-) delete mode 100644 src/interfaces/BO/advancedParameters/newExperimentalFeatures/index.ts diff --git a/src/interfaces/BO/advancedParameters/featureFlag.ts b/src/interfaces/BO/advancedParameters/featureFlag.ts index b4eb063f8..3f253502e 100644 --- a/src/interfaces/BO/advancedParameters/featureFlag.ts +++ b/src/interfaces/BO/advancedParameters/featureFlag.ts @@ -4,6 +4,7 @@ import {type Page} from '@playwright/test'; export interface BOFeatureFlagInterface extends BOBasePagePageInterface { readonly featureFlagAdminAPI: string; readonly featureFlagAdminAPIMultistore: string; + readonly featureFlagImprovedShipment: string; readonly featureFlagProductPageV2: string; readonly pageTitle: string; diff --git a/src/interfaces/BO/advancedParameters/newExperimentalFeatures/index.ts b/src/interfaces/BO/advancedParameters/newExperimentalFeatures/index.ts deleted file mode 100644 index c76d70b5c..000000000 --- a/src/interfaces/BO/advancedParameters/newExperimentalFeatures/index.ts +++ /dev/null @@ -1,12 +0,0 @@ -import {BOBasePagePageInterface} from '@interfaces/BO'; - -import type {Page} from '@playwright/test'; - -export interface BONewExperimentalFeatures extends BOBasePagePageInterface { - readonly pageTitle: string; - readonly featureFlagProductPageV2: string; - readonly featureFlagAdminAPI: string; - readonly featureFlagAdminAPIMultistore: string; - - setFeatureFlag(page: Page, featureFlag: string, toEnable?: boolean): Promise -} diff --git a/src/interfaces/BO/catalog/products/create/tabShipping.ts b/src/interfaces/BO/catalog/products/create/tabShipping.ts index 7a5f9a047..aad1ef114 100644 --- a/src/interfaces/BO/catalog/products/create/tabShipping.ts +++ b/src/interfaces/BO/catalog/products/create/tabShipping.ts @@ -6,8 +6,9 @@ import type FakerProduct from '@data/faker/product'; export interface BOProductsCreateTabShippingPageInterface extends BOBasePagePageInterface { clickOnEditDeliveryTimeLink(page: Page): Promise; + clearChoiceCarrier(page: Page): Promise; getValue(page: Page, inputName: string, languageId?: string): Promise; - selectAvailableCarrier(page: Page, carrier: string): Promise; + selectAvailableCarrier(page: Page, carrierRow: number): Promise; setAdditionalShippingCosts(page: Page, shippingCosts: number): Promise; setDeliveryTime(page: Page, deliveryTime: string): Promise; setDeliveryTimeInStockProducts(page: Page, numberOfDays: string): Promise; diff --git a/src/interfaces/BO/orders/create.ts b/src/interfaces/BO/orders/create.ts index 53261ec1c..680409ca4 100644 --- a/src/interfaces/BO/orders/create.ts +++ b/src/interfaces/BO/orders/create.ts @@ -55,6 +55,7 @@ export interface BOOrdersCreatePageInterface extends BOBasePagePageInterface { getDeliveryAddressDetails(page: Page): Promise; getDeliveryAddressList(page: Page): Promise; getDeliveryOption(page: Page): Promise; + getDeliveryOptions(page: Page): Promise; getEditAddressIframe(page: Page): Frame | null; getInvoiceAddressDetails(page: Page): Promise; getNoCustomerFoundError(page: Page): Promise; diff --git a/src/interfaces/BO/orders/view/blockTabList.ts b/src/interfaces/BO/orders/view/blockTabList.ts index 1f909efb9..2d5f5c85e 100644 --- a/src/interfaces/BO/orders/view/blockTabList.ts +++ b/src/interfaces/BO/orders/view/blockTabList.ts @@ -3,13 +3,27 @@ import {BOViewOrderBasePageInterface} from '@interfaces/BO/orders/view/viewOrder import {type Frame, type Page} from '@playwright/test'; export interface BOProductBlockTabListPageInterface extends BOViewOrderBasePageInterface { + readonly alertTextInSplitModal: string; + readonly alertTextInMergeModal: string; + + checkCarrierStatusInMergeModal(page:Page):Promise; clickOnEditLink(page: Page): Promise; + clickOnEditShipmentLink(page:Page, row:number):Promise; clickOnEnterPaymentButton(page: Page, row?: number): Promise; + clickOnMergeLink(page: Page, row: number): Promise; + clickOnMergeShipmentButton(page:Page):Promise; + clickOnSplitLink(page: Page, row: number): Promise; + clickOnSplitShipmentButton(page:Page):Promise; clickOnUpdateStatus(page: Page): Promise; + closeMergeModal(page:Page):Promise; closeOrderShippingModal(page: Page): Promise; + closeSplitModal(page:Page):Promise; downloadDeliverySlip(page: Page): Promise; downloadInvoice(page: Page, row?: number): Promise; + editShipment(page: Page, trackingNumber: string, carrier: string): Promise; generateInvoice(page: Page): Promise; + getAlertTextFromMergeModal(page: Page): Promise; + getAlertTextFromSplitModal(page:Page):Promise; getCarrierDetails(page: Page, row?: number): Promise<{ date: string, carrier: string, @@ -19,8 +33,8 @@ export interface BOProductBlockTabListPageInterface extends BOViewOrderBasePageI }>; getCarriersNumber(page: Page): Promise; getDocumentDate(page: Page, rowChild?: number): Promise; - getDocumentType(page: Page, rowChild?: number): Promise; getDocumentsNumber(page: Page): Promise; + getDocumentType(page: Page, rowChild?: number): Promise; getFileName(page: Page, rowChild?: number): Promise; getGiftMessage(page: Page): Promise; getMerchandiseReturnsDetails(page: Page, row?: number): Promise<{ @@ -29,17 +43,22 @@ export interface BOProductBlockTabListPageInterface extends BOViewOrderBasePageI status: string number: string }>; + getListOfCarriersInSplitShipment(page:Page):Promise; getMerchandiseReturnsNumber(page: Page): Promise; getOrderNoteContent(page: Page): Promise; + getShipmentNumber(page:Page, row:number):Promise; getShippingCarrierID(page: Page): Promise; - getStatusNumber(page: Page | Frame): Promise; getStatusesNumber(page: Page): Promise; + getStatusNumber(page: Page | Frame): Promise; getSuccessBadge(page: Page, numberOfBadges: number): Promise; + getTabName(page: Page, tabId: number): Promise; getTextColumnFromDocumentsTable(page: Page, columnName: string, row: number): Promise; getTextColumnFromHistoryTable(page: Frame | Page, columnName: string, row: number): Promise; + getTrackingNumber(page:Page, row:number):Promise; goToCarriersTab(page: Page): Promise; goToDocumentsTab(page: Page): Promise; goToMerchandiseReturnsTab(page: Page): Promise; + goToShipmentsTab(page:Page):Promise; hasBadgeGift(page: Page): Promise; hasBadgeRecyclable(page: Page): Promise; isAddDocumentNoteButtonVisible(page: Page, row?: number): Promise; @@ -49,8 +68,13 @@ export interface BOProductBlockTabListPageInterface extends BOViewOrderBasePageI isOrderNoteOpened(page: Page): Promise; openOrderNoteTextarea(page: Page): Promise; resendEmail(page: Page, row?: number): Promise; + selectCarrierInMergeShipment(page: Page, carrier: string): Promise; + selectCarrierInSplitShipment(page:Page, carrier:string):Promise; + selectProductAndQuantityInSplitShipment(page: Page, row: number, quantity?: number): Promise; + selectProductInMergeShipment(page: Page, row:number): Promise; setDocumentNote(page: Page, note: string, row?: number): Promise; setOrderNote(page: Page, orderNote: string): Promise; setShippingDetails(page: Page, shippingData: FakerOrderShipping): Promise; + unselectProductInSplitShipment(page: Page, row: number): Promise; updateOrderStatus(page: Page, status: string): Promise; } diff --git a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts index fa77542c7..05fe4d4b0 100644 --- a/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts +++ b/src/versions/develop/pages/BO/advancedParameters/featureFlag.ts @@ -16,6 +16,8 @@ class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { public readonly featureFlagAdminAPIMultistore: string; + public readonly featureFlagImprovedShipment: string; + public readonly featureFlagMultipleImageFormats: string; private readonly featureFlagSwitchButton: (status: string, feature: string, toggle: number) => string; @@ -43,6 +45,7 @@ class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { this.featureFlagMultipleImageFormats = 'multiple_image_format'; this.featureFlagAdminAPI = 'admin_api'; this.featureFlagAdminAPIMultistore = 'admin_api_multistore'; + this.featureFlagImprovedShipment = 'improved_shipment'; // Selectors this.featureFlagSwitchButton = (status: string, feature: string, toggle: number) => `#feature_flag_${ status}_feature_flags_${feature}_enabled_${toggle}`; @@ -71,6 +74,9 @@ class BOFeatureFlag extends BOBasePage implements BOFeatureFlagInterface { case this.featureFlagAdminAPIMultistore: isStable = false; break; + case this.featureFlagImprovedShipment: + isStable = false; + break; default: throw new Error(`The feature flag ${featureFlag} is not defined`); } diff --git a/src/versions/develop/pages/BO/catalog/products/create/tabShipping.ts b/src/versions/develop/pages/BO/catalog/products/create/tabShipping.ts index e535ecda1..44de4e5b6 100644 --- a/src/versions/develop/pages/BO/catalog/products/create/tabShipping.ts +++ b/src/versions/develop/pages/BO/catalog/products/create/tabShipping.ts @@ -38,14 +38,16 @@ class ShippingTab extends BOBasePage implements BOProductsCreateTabShippingPageI private readonly allCarriersSelect: string; + private readonly clearChoiceCarrierButton: string; + private readonly availableCarrierCheckboxButton: (carrierID: number) => string; private readonly deliveryTimeType: (type: number) => string; /** - * @constructs - * Setting up texts and selectors to use on Shipping tab - */ + * @constructs + * Setting up texts and selectors to use on Shipping tab + */ constructor() { super(); @@ -67,19 +69,20 @@ class ShippingTab extends BOBasePage implements BOProductsCreateTabShippingPageI this.productAdditionalShippingCostInput = '#product_shipping_additional_shipping_cost'; this.productDeliveryTimeInput = 'input[name="product[shipping][delivery_time_note_type]"]'; this.allCarriersSelect = '#carrier-checkboxes-dropdown button'; + this.clearChoiceCarrierButton = 'button.carrier-choices-clear'; this.availableCarrierCheckboxButton = (carrierID: number) => '#carrier-checkboxes-dropdown' - + ` div:nth-child(${carrierID}).md-checkbox label div`; + + ` div:nth-child(${carrierID}).md-checkbox label div`; } /* Methods */ /** - * Set package dimension - * @param page {Page} Browser tab - * @param productData {FakerProduct} Data to set in package dimension form - * @returns {Promise} - */ + * Set package dimension + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in package dimension form + * @returns {Promise} + */ async setPackageDimension(page: Page, productData: FakerProduct): Promise { await this.waitForSelectorAndClick(page, this.shippingTabLink); await this.setValue(page, this.productDimensionsWidthInput, productData.packageDimensionWidth); @@ -89,11 +92,11 @@ class ShippingTab extends BOBasePage implements BOProductsCreateTabShippingPageI } /** - * Set delivery time - * @param page {Page} Browser tab - * @param deliveryTime {string} Delivery time value to check - * @returns {Promise} - */ + * Set delivery time + * @param page {Page} Browser tab + * @param deliveryTime {string} Delivery time value to check + * @returns {Promise} + */ async setDeliveryTime(page: Page, deliveryTime: string): Promise { switch (deliveryTime) { case 'None': @@ -111,77 +114,71 @@ class ShippingTab extends BOBasePage implements BOProductsCreateTabShippingPageI } /** - * Set delivery time in stock - * @param page {Page} Browser tab - * @param numberOfDays {string} Number of days of delivery - * @returns {Promise} - */ + * Set delivery time in stock + * @param page {Page} Browser tab + * @param numberOfDays {string} Number of days of delivery + * @returns {Promise} + */ async setDeliveryTimeInStockProducts(page: Page, numberOfDays: string): Promise { await this.setValue(page, this.deliveryTimeInStockProducts, numberOfDays); } /** - * Set delivery time out of stock - * @param page {Page} Browser tab - * @param numberOfDays {string} Number of days of delivery - * @returns {Promise} - */ + * Set delivery time out of stock + * @param page {Page} Browser tab + * @param numberOfDays {string} Number of days of delivery + * @returns {Promise} + */ async setDeliveryTimeOutOfStockProducts(page: Page, numberOfDays: string): Promise { await this.setValue(page, this.deliveryTimeOutOfStockProducts, numberOfDays); } /** - * Click on edit delivery time link - * @param page {Page} Browser tab - * @returns {Promise} - */ + * Click on edit delivery time link + * @param page {Page} Browser tab + * @returns {Promise} + */ async clickOnEditDeliveryTimeLink(page: Page): Promise { return this.openLinkWithTargetBlank(page, this.editDeliveryTimeLink); } /** - * Set additional shipping costs - * @param page {Page} Browser tab - * @param shippingCosts {number} Shipping cost - * @returns {Promise} - */ + * Set additional shipping costs + * @param page {Page} Browser tab + * @param shippingCosts {number} Shipping cost + * @returns {Promise} + */ async setAdditionalShippingCosts(page: Page, shippingCosts: number): Promise { await this.waitForSelectorAndClick(page, this.shippingTabLink); await this.setValue(page, this.productAdditionalShippingCostInput, shippingCosts); } /** - * Select available carrier - * @param page {Page} Browser tab - * @param carrier {string} Carrier to choose - * @returns {Promise} - */ - async selectAvailableCarrier(page: Page, carrier: string): Promise { - await this.waitForSelectorAndClick(page, this.allCarriersSelect); - switch (carrier) { - case 'Click and collect': - await this.setChecked(page, this.availableCarrierCheckboxButton(1)); - break; - case 'My cheap carrier': - await this.setChecked(page, this.availableCarrierCheckboxButton(2)); - break; - case 'My carrier': - await this.setChecked(page, this.availableCarrierCheckboxButton(3)); - break; - case 'My light carrier': - await this.setChecked(page, this.availableCarrierCheckboxButton(4)); - break; - default: - throw new Error(`${carrier} was not found`); - } + * Select available carrier + * @param page {Page} Browser tab + * @param carrierRow {string} Carrier to choose + * @returns {Promise} + */ + async selectAvailableCarrier(page: Page, carrierRow: number): Promise { + await page.locator(this.allCarriersSelect).click(); + await this.setChecked(page, this.availableCarrierCheckboxButton(carrierRow)); } /** - * Returns the value of a form element - * @param page {Page} - * @param inputName {string} - * @param languageId {string | undefined} - */ + * Clear choice carrier + * @param page {Page} Browser tab + * @returns {Promise} + */ + async clearChoiceCarrier(page: Page): Promise { + await page.locator(this.clearChoiceCarrierButton).click(); + } + + /** + * Returns the value of a form element + * @param page {Page} + * @param inputName {string} + * @param languageId {string | undefined} + */ async getValue(page: Page, inputName: string, languageId?: string): Promise { switch (inputName) { case 'additional_delivery_times': diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 355180d62..28066015e 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -684,7 +684,11 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac await this.waitForVisibleSelector(page, this.addProductToCartForm); // Fill add product form - await this.selectByVisibleText(page, this.productResultsSelect, productToSelect); + if (productToSearch.type === 'standard') { + await page.locator(this.productResultsSelect).selectOption({label: `${productToSelect} - €${productToSearch.finalPrice}`}); + } else { + await page.locator(this.productResultsSelect).selectOption({label: productToSelect}); + } if (await this.elementVisible(page, this.productCustomInput, 1000)) { await this.setValue(page, this.productCustomInput, customizedValue); } @@ -880,7 +884,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac * @param row {number} Row on vouchers table * @returns {Promise<{name: string, description: string, value: number}>} */ - async getVoucherDetailsFromTable(page: Page, row: number = 1): Promise<{name: string, description: string, value: number}> { + async getVoucherDetailsFromTable(page: Page, row: number = 1): Promise<{ name: string, description: string, value: number }> { return { name: await this.getTextContent(page, this.vouchersTableColumn('name', row)), description: await this.getTextContent(page, this.vouchersTableColumn('description', row)), @@ -1031,6 +1035,15 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac return this.elementVisible(page, this.shippingBlock, 1000); } + /** + * Get delivery options + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getDeliveryOptions(page: Page): Promise { + return this.getTextContent(page, this.deliveryOptionSelect); + } + /** * Fill delivery option form * @param page {Page} Browser tab @@ -1039,7 +1052,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac * @returns {Promise} */ async setDeliveryOption(page: Page, deliveryOptionName: string, isFreeShipping: boolean = false): Promise { - await this.selectByVisibleText(page, this.deliveryOptionSelect, deliveryOptionName); + await page.locator(this.deliveryOptionSelect).selectOption({label: deliveryOptionName}); await page.waitForTimeout(1000); await this.setFreeShipping(page, isFreeShipping); if (isFreeShipping) { diff --git a/src/versions/develop/pages/BO/orders/view/blockTabList.ts b/src/versions/develop/pages/BO/orders/view/blockTabList.ts index 23f3521eb..961ace45a 100644 --- a/src/versions/develop/pages/BO/orders/view/blockTabList.ts +++ b/src/versions/develop/pages/BO/orders/view/blockTabList.ts @@ -9,6 +9,10 @@ import {ViewOrderBasePage} from '@versions/develop/pages/BO/orders/view/viewOrde * @extends ViewOrderBasePage */ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBlockTabListPageInterface { + public readonly alertTextInSplitModal: string; + + public readonly alertTextInMergeModal: string; + private readonly successBadge: string; private readonly successBadgeNth: (id: number) => string; @@ -17,6 +21,8 @@ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBl private readonly successBadgeReclyclable: string; + private readonly tabList: string; + private readonly historyTabContent: string; private readonly secondOrderStatusesSelect: string; @@ -113,10 +119,66 @@ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBl private readonly merchandiseReturnsTableBody: string; + private readonly splitShipmentModal: string; + + private readonly splitShipmentCarrierSelect: string; + + private readonly splitShipmentSubmitButton: string; + + private readonly splitShipmentFormContainer: string; + + private readonly mergeShipmentFormContainer: string; + + private readonly mergeShipmentCarrierSelect: string; + + private readonly mergeShipmentSubmitButton: string; + + private readonly mergeShipmentModal: string; + + private readonly mergeShipmentWarningMessage: string; + + private readonly splitShipmentWarningMessage: string; + + private readonly mergeShipmentCloseButton: string; + + private readonly splitShipmentCloseButton: string; + + private readonly editShipmentModal: string; + + private readonly editShipmentSubmitButton: string; + + private readonly editShipmentCarrierSelect: string; + + private readonly editShipmentTrackingNumberInput: string; + private readonly merchandiseReturnsTableRow: (row: number) => string; private readonly merchandiseReturnsTableColumn: (row: number, column: string) => string; + private readonly shipmentsTab: string; + + private readonly shipmentTableRow: (row: number) => string; + + private readonly shipmentTableActionColumn: (row: number) => string; + + private readonly shipmentTableDropdownLink: (row: number) => string; + + private readonly shipmentMergeButton: (row: number) => string; + + private readonly editShipmentLink: (row: number) => string; + + private readonly shipmentSplitButton: (row: number) => string; + + private readonly splitShipmentProductCheckbox: (row: number) => string; + + private readonly splitShipmentQuantityInput: (row: number) => string; + + private readonly shipmentTableShipmentNumber: (row: number) => string; + + private readonly shipmentTableTrackingNumber: (row: number) => string; + + private readonly mergeShipmentProductCheckbox: (row: number) => string; + /** * @constructs * Setting up texts and selectors to use on status, documents, carriers and merchandise returns tabs @@ -128,6 +190,12 @@ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBl this.successBadgeNth = (id: number) => `${this.successBadge}:nth-child(${id + 3})`; this.successBadgeGift = `${this.successBadge}[data-badge="gift"]`; this.successBadgeReclyclable = `${this.successBadge}[data-badge="recyclable"]`; + this.alertTextInSplitModal = 'This shipment can\'t be modified because a tracking number has already been assigned,' + + ' indicating that it has already been shipped.'; + this.alertTextInMergeModal = 'This shipment can\'t be merged because a tracking number has already been assigned,' + + ' indicating that it has already been shipped.'; + + this.tabList = '.nav-tabs[role="tablist"]'; // Status tab this.historyTabContent = '#historyTabContent'; @@ -187,11 +255,50 @@ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBl this.merchandiseReturnsTableRow = (row: number) => `${this.merchandiseReturnsTableBody} tr:nth-child(${row})`; this.merchandiseReturnsTableColumn = (row: number, column: string) => `${this.merchandiseReturnsTableRow(row)}` + ` td[data-role='merchandise-${column}']`; + + // SHipments tab + this.shipmentsTab = '#orderShipmentsTab'; + this.shipmentTableRow = (row: number) => `#shipment_grid_table tr:nth-child(${row})`; + this.shipmentTableActionColumn = (row: number) => `${this.shipmentTableRow(row)} td.column-actions`; + this.shipmentTableDropdownLink = (row: number) => `${this.shipmentTableActionColumn(row)} div.dropdown`; + this.shipmentMergeButton = (row: number) => `${this.shipmentTableActionColumn(row)} a[data-target="#mergeShipmentModal"]`; + this.editShipmentLink = (row: number) => `${this.shipmentTableActionColumn(row)} a.js-update-shipping-btn`; + this.shipmentSplitButton = (row: number) => `${this.shipmentTableActionColumn(row)} a[data-show-modal="split-shipment"]`; + this.splitShipmentModal = '#splitShipmentModal'; + this.splitShipmentProductCheckbox = (row: number) => `#split_shipment_products_${row}_selected`; + this.splitShipmentQuantityInput = (row: number) => `#split_shipment_products_${row}_selected_quantity`; + this.splitShipmentCarrierSelect = '#split_shipment_carrier'; + this.splitShipmentSubmitButton = 'button[id="submitSplitShipment"]'; + this.splitShipmentFormContainer = '#splitShipmentFormContainer'; + this.mergeShipmentFormContainer = '#mergeShipmentFormContainer'; + this.shipmentTableShipmentNumber = (row: number) => `${this.shipmentTableRow(row)} td.column-shipment_number`; + this.shipmentTableTrackingNumber = (row: number) => `${this.shipmentTableRow(row)} td.column-tracking_number`; + this.mergeShipmentProductCheckbox = (row: number) => `table.shipment-form__table tr:nth-child(${row})` + + ' input[id*="merge_shipment_product"]'; + this.mergeShipmentCarrierSelect = '#merge_shipment_merge_to_shipment'; + this.mergeShipmentSubmitButton = 'button[id*="submitMergeShipment"]'; + this.mergeShipmentModal = '#mergeShipmentModal'; + this.mergeShipmentWarningMessage = '#merge_shipment div.alert-warning p.alert-text'; + this.splitShipmentWarningMessage = '#split_shipment div.alert-warning p.alert-text'; + this.mergeShipmentCloseButton = `${this.mergeShipmentModal} div.modal-header button.close`; + this.splitShipmentCloseButton = `${this.splitShipmentModal} div.modal-header button.close`; + this.editShipmentModal = '#editShipmentModal'; + this.editShipmentSubmitButton = '#submitEditShipment'; + this.editShipmentCarrierSelect = '#edit_shipment_carrier'; + this.editShipmentTrackingNumberInput = '#edit_shipment_tracking_number'; } /* Methods */ + /** + * Get tab name + * @param page {Page} Browser tab + * @param tabId {number} Tab ID + */ + async getTabName(page: Page, tabId: number): Promise { + return this.getTextContent(page, `${this.tabList} li:nth-child(${tabId})`); + } /** * Get success badges @@ -522,7 +629,6 @@ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBl return this.downloadDocument(page, 3); } - // Methods for carriers tab /** * Get carriers number * @param page {Page} Browser tab @@ -663,6 +769,228 @@ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBl number: await this.getTextContent(page, this.merchandiseReturnsTableColumn(row, 'return-id')), }; } + + // Methods for shipments tab + /** + * Go to shipments tab + * @param page {Page} Browser tab + * @returns {Promise} + */ + async goToShipmentsTab(page: Page): Promise { + await page.locator(this.shipmentsTab).click(); + return this.elementVisible(page, `${this.shipmentsTab}.active`, 1000); + } + + /** + * Click on split link + * @param page {Page} Browser tab + * @param row {number} Row in the list + * @returns {Promise} + */ + async clickOnSplitLink(page: Page, row: number): Promise { + await this.waitForSelectorAndClick(page, this.shipmentTableDropdownLink(row)); + await this.waitForSelectorAndClick(page, this.shipmentSplitButton(row)); + + return this.elementVisible(page, this.splitShipmentModal, 2000); + } + + /** + * Select product and quantity in split shipment modal + * @param page {Page} Browser tab + * @param row {number} Row in the list + * @param quantity {number} Quantity of product + * @returns {Promise} + */ + async selectProductAndQuantityInSplitShipment(page: Page, row: number, quantity: number = 1): Promise { + await page.locator(this.splitShipmentProductCheckbox(row - 1)).check(); + await this.setValue(page, this.splitShipmentQuantityInput(row - 1), quantity); + await this.waitForVisibleSelector(page, `${this.splitShipmentModal}[data-state="loading"]`, 2000); + await this.waitForVisibleSelector(page, `${this.splitShipmentModal}[data-state="loaded"]`, 2000); + } + + /** + * Unselect product in split shipment modal + * @param page {Page} Browser tab + * @param row {number} Row in the list + * @returns {Promise} + */ + async unselectProductInSplitShipment(page: Page, row: number): Promise { + await this.setChecked(page, this.splitShipmentProductCheckbox(row - 1), false); + } + + /** + * Select carrier in split shipment modal + * @param page {Page} Browser tab + * @param carrier {string} Carrier name to select + * @returns {Promise} + */ + async selectCarrierInSplitShipment(page: Page, carrier: string): Promise { + await page.locator(this.splitShipmentCarrierSelect).selectOption({label: carrier}); + + return page.locator(`${this.splitShipmentSubmitButton}[disabled]`).count(); + } + + /** + * Get list of carriers in split shipment modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getListOfCarriersInSplitShipment(page: Page): Promise { + return this.getTextContent(page, this.splitShipmentCarrierSelect, false); + } + + /** + * Click on split shipment button + * @param page {Page} Browser tab + * @returns {Promise} + */ + async clickOnSplitShipmentButton(page: Page): Promise { + await page.locator(this.splitShipmentSubmitButton).click(); + + return this.elementNotVisible(page, this.splitShipmentFormContainer, 2000); + } + + /** + * Click on merge link + * @param page {Page} Browser tab + * @param row {number} Row in the list + * @returns {Promise} + */ + async clickOnMergeLink(page: Page, row: number): Promise { + await this.waitForSelectorAndClick(page, this.shipmentTableDropdownLink(row)); + await this.waitForSelectorAndClick(page, this.shipmentMergeButton(row)); + + return this.elementVisible(page, this.mergeShipmentFormContainer, 2000); + } + + /** + * Get shipment number + * @param page {Page} Browser tab + * @param row {number} Row in the list + * @returns {Promise} + */ + async getShipmentNumber(page: Page, row: number): Promise { + return parseInt(await this.getTextContent(page, this.shipmentTableShipmentNumber(row)), 10); + } + + /** + * Select product in merge shipment modal + * @param page {Page} Browser tab + * @param row {number} Row in the list + * @returns {Promise} + */ + async selectProductInMergeShipment(page: Page, row: number = 1): Promise { + await page.locator(this.mergeShipmentProductCheckbox(row)).check(); + } + + /** + * Select carrier in merge shipment modal + * @param page {Page} Browser tab + * @param carrier {string} The carrier name to select + * @returns {Promise} + */ + async selectCarrierInMergeShipment(page: Page, carrier: string): Promise { + await page.locator(this.mergeShipmentCarrierSelect).selectOption({label: carrier}); + + return this.elementNotVisible(page, `${this.mergeShipmentSubmitButton}[disabled]`); + } + + /** + * Click on merge shipment button + * @param page {Page} Browser tab + * @returns {Promise} + */ + async clickOnMergeShipmentButton(page: Page): Promise { + await page.locator(this.mergeShipmentSubmitButton).click(); + + return this.elementNotVisible(page, this.mergeShipmentModal, 2000); + } + + /** + * Click on edit shipment link + * @param page {Page} Browser tab + * @param row {number} Row of shipment to edit from the table + * @returns {Promise} + */ + async clickOnEditShipmentLink(page: Page, row: number): Promise { + await page.locator(this.editShipmentLink(row)).click(); + + return this.elementVisible(page, this.editShipmentModal, 2000); + } + + /** + * Edit shipment + * @param page {Page} Browser tab + * @param trackingNumber {string} Tracking number to set in the input + * @param carrier {string} Carrier name to set in the input + * @returns {Promise} + */ + async editShipment(page: Page, trackingNumber: string, carrier: string): Promise { + await page.locator(this.editShipmentTrackingNumberInput).fill(trackingNumber); + await page.locator(this.editShipmentCarrierSelect).selectOption({label: carrier}); + await page.locator(this.editShipmentSubmitButton).click(); + + return this.elementNotVisible(page, this.editShipmentModal, 2000); + } + + /** + * Get tracking number from the shipping table + * @param page {Page} Browser tab + * @param row {number} Row of shipment to edit from the table + * @returns {Promise} + */ + async getTrackingNumber(page: Page, row: number): Promise { + return this.getTextContent(page, this.shipmentTableTrackingNumber(row)); + } + + /** + * Get alert test from split modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getAlertTextFromSplitModal(page: Page): Promise { + return this.getTextContent(page, this.splitShipmentWarningMessage); + } + + /** + * Close split modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async closeSplitModal(page: Page): Promise { + await page.locator(this.splitShipmentCloseButton).click(); + + return this.elementNotVisible(page, this.splitShipmentModal, 2000); + } + + /** + * Check carrier status in merge table + * @param page {Page} Browser tab + * @returns {Promise} + */ + async checkCarrierStatusInMergeModal(page: Page): Promise { + return page.locator(`${this.mergeShipmentCarrierSelect} option[disabled]`).count(); + } + + /** + * Close merge modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async closeMergeModal(page: Page): Promise { + await page.locator(this.mergeShipmentCloseButton).click(); + + return this.elementNotVisible(page, this.mergeShipmentModal, 2000); + } + + /** + * Get alert text from merge modal + * @param page {Page} Browser tab + * @returns {Promise} + */ + async getAlertTextFromMergeModal(page: Page): Promise { + return this.getTextContent(page, this.mergeShipmentWarningMessage); + } } module.exports = new BOProductBlockTabListPage(); From 1a44f0df3634dfd319d2f920bfcb6a37010d2070 Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Thu, 16 Oct 2025 10:05:35 +0200 Subject: [PATCH 408/609] Fix addProductToCart --- src/versions/develop/pages/BO/orders/create.ts | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 28066015e..323a0f584 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -682,13 +682,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac // Search product await this.setValue(page, this.productSearchInput, productToSearch.name); await this.waitForVisibleSelector(page, this.addProductToCartForm); - - // Fill add product form - if (productToSearch.type === 'standard') { - await page.locator(this.productResultsSelect).selectOption({label: `${productToSelect} - €${productToSearch.finalPrice}`}); - } else { - await page.locator(this.productResultsSelect).selectOption({label: productToSelect}); - } + await page.locator(this.productResultsSelect).selectOption({label: productToSelect}); if (await this.elementVisible(page, this.productCustomInput, 1000)) { await this.setValue(page, this.productCustomInput, customizedValue); } From 2c2d9a63cfce0fd10ed9d291b9e8a3e49ca2204b Mon Sep 17 00:00:00 2001 From: nesrineabdmouleh Date: Thu, 16 Oct 2025 15:19:16 +0200 Subject: [PATCH 409/609] Add timeout --- src/versions/develop/pages/BO/orders/view/blockTabList.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/develop/pages/BO/orders/view/blockTabList.ts b/src/versions/develop/pages/BO/orders/view/blockTabList.ts index 961ace45a..b508bc7c3 100644 --- a/src/versions/develop/pages/BO/orders/view/blockTabList.ts +++ b/src/versions/develop/pages/BO/orders/view/blockTabList.ts @@ -804,8 +804,7 @@ class BOProductBlockTabListPage extends ViewOrderBasePage implements BOProductBl async selectProductAndQuantityInSplitShipment(page: Page, row: number, quantity: number = 1): Promise { await page.locator(this.splitShipmentProductCheckbox(row - 1)).check(); await this.setValue(page, this.splitShipmentQuantityInput(row - 1), quantity); - await this.waitForVisibleSelector(page, `${this.splitShipmentModal}[data-state="loading"]`, 2000); - await this.waitForVisibleSelector(page, `${this.splitShipmentModal}[data-state="loaded"]`, 2000); + await page.waitForTimeout(2000); } /** From 5397820abaef64c0f0a9b7c389413cd027b01fa2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:00:21 +0200 Subject: [PATCH 410/609] Add carriers for 1.7.7 --- .gitignore | 1 + src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/.gitignore b/.gitignore index 8618acfec..e0671cba8 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ ## IDE /.vscode/ +/.idea/ diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts new file mode 100644 index 000000000..81ebe88aa --- /dev/null +++ b/src/versions/1.7.7/pages/BO/carriers/index.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; +import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; + + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; + } +} + +module.exports = new BOCarriersPage(); From 2b138d1fd76e3f0d11a4af69d52a1d414ae6701c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:17:12 +0200 Subject: [PATCH 411/609] Add condition to main carriers page --- src/pages/BO/shipping/carriers/index.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 12eae1d7c..cfe56273a 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/shipping/carriers'); + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers'); } @@ -13,4 +16,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); +export default requirePage(); \ No newline at end of file From 4aaf0be582e652712ea8d49f97067518cb3b58f6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:24:42 +0200 Subject: [PATCH 412/609] Move carriers folder to shipping folder --- src/versions/1.7.7/pages/BO/{ => shipping}/carriers/index.ts | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/versions/1.7.7/pages/BO/{ => shipping}/carriers/index.ts (100%) diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts similarity index 100% rename from src/versions/1.7.7/pages/BO/carriers/index.ts rename to src/versions/1.7.7/pages/BO/shipping/carriers/index.ts From 9fb2eac0af1f107657fa75b229d351e2e9724e52 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:11:00 +0200 Subject: [PATCH 413/609] Add 1.7.7 version for addresses create --- src/pages/BO/shipping/carriers/index.ts | 2 +- .../pages/BO/customers/addresses/create.ts | 18 ++++++++++++++++++ .../1.7.7/pages/BO/shipping/carriers/index.ts | 5 ++--- .../pages/BO/customers/addresses/create.ts | 6 ++++-- 4 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/customers/addresses/create.ts diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index cfe56273a..01ef94380 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -16,4 +16,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); \ No newline at end of file +export default requirePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..ab4567b10 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.saveAddressButton = '.form-horizontal button'; + } +} + +module.exports = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 81ebe88aa..49b02fc63 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,7 +1,6 @@ // Import pages -import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; -import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; - +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/develop/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 78f3ce245..1a7c09262 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -49,7 +49,7 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI private readonly customerAddressOtherInput: string; - private readonly saveAddressButton: string; + protected saveAddressButton: string; /** * @constructs @@ -164,4 +164,6 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI } } -module.exports = new BOAddressesCreatePage(); +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; +//module.exports = new BOAddressesCreatePage(); From de822e9ed39440fef643ff2644a17faa3796f32b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:13:10 +0200 Subject: [PATCH 414/609] Add condition for addresses page --- src/pages/BO/customers/addresses/create.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 8fb29a5b5..61cf7ee4d 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -1,7 +1,14 @@ import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/customers/addresses/create'); + } return require('@versions/develop/pages/BO/customers/addresses/create'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ From 209a7ffb520d5b84177316fcb508663245908337 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 09:51:42 +0200 Subject: [PATCH 415/609] Commit review change suggestions --- src/pages/BO/customers/addresses/create.ts | 2 +- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 +- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 3 ++- src/versions/develop/pages/BO/customers/addresses/create.ts | 1 - 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 61cf7ee4d..65ff0efba 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/customers/addresses/create'); + return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } return require('@versions/develop/pages/BO/customers/addresses/create'); } diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 49b02fc63..26ebad73c 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,6 +1,6 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; -import {BOCarriersPage as BOCarriersPageVersion} from '@versions/develop/pages/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 36d2625a5..55503ee50 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -376,4 +376,5 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte } } -module.exports = new BOCarriersPage(); +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7c09262..45d98c58f 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -166,4 +166,3 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI const boAddressesCreatePage = new BOAddressesCreatePage(); export {boAddressesCreatePage, BOAddressesCreatePage}; -//module.exports = new BOAddressesCreatePage(); From 5c951b72291bf6e96250a441e0b169de177a0d6a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 10:49:05 +0200 Subject: [PATCH 416/609] Fix missing element --- src/pages/BO/customers/addresses/create.ts | 2 +- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 65ff0efba..9c648c7b7 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } - return require('@versions/develop/pages/BO/customers/addresses/create'); + return require('@versions/develop/pages/BO/customers/addresses/create').boAddressesCreatePage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index ab4567b10..c9deca0d5 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -11,8 +11,9 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr constructor() { super(); // Header links - this.saveAddressButton = '.form-horizontal button'; + this.saveAddressButton = '.card-footer button.btn-primary'; } } -module.exports = new BOAddressesCreatePage(); +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; From 4f26ac384974bd94d43a2078d97a68982350ca89 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:43:42 +0200 Subject: [PATCH 417/609] Add heritage from 8.2 to 1.7.7 --- .../pages/BO/customers/addresses/create.ts | 2 +- .../pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.0/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.1/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ .../8.2/pages/BO/customers/addresses/create.ts | 17 +++++++++++++++++ 5 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.7.8/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.0/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.1/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/8.2/pages/BO/customers/addresses/create.ts diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index c9deca0d5..47d27a663 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -1,6 +1,6 @@ // Import pages import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; -import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.8/pages/BO/customers/addresses/create'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..d609d3e8a --- /dev/null +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..899aad8e8 --- /dev/null +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..29406bc74 --- /dev/null +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..ae2e6b8b0 --- /dev/null +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -0,0 +1,17 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; + + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; From b44ba68aa3f1b646ce93fbdb092b5bcd87311824 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:59:10 +0200 Subject: [PATCH 418/609] Add page title and success message to 1.7.7 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 5 +++++ src/versions/develop/pages/BO/customers/addresses/create.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 47d27a663..1eec763eb 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -10,6 +10,11 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 45d98c58f..561f61ebe 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ import {type Frame, type Page} from '@playwright/test'; * @extends BOBasePage */ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageInterface { - public readonly pageTitleCreate: string; + public pageTitleCreate: string; public readonly pageTitleEdit: string; From f2615b3eebaf2cad713cab4b28c11757c8b3fb58 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 12:11:47 +0200 Subject: [PATCH 419/609] Fix description in jsdocs --- .../1.7.7/pages/BO/customers/addresses/create.ts | 2 +- .../1.7.7/pages/BO/shipping/carriers/index.ts | 9 ++++----- .../1.7.8/pages/BO/customers/addresses/create.ts | 2 +- .../1.7.8/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.0/pages/BO/customers/addresses/create.ts | 2 +- .../8.0/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.1/pages/BO/customers/addresses/create.ts | 2 +- .../8.1/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++++ .../8.2/pages/BO/customers/addresses/create.ts | 2 +- 9 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 src/versions/1.7.8/pages/BO/shipping/carriers/index.ts create mode 100644 src/versions/8.0/pages/BO/shipping/carriers/index.ts create mode 100644 src/versions/8.1/pages/BO/shipping/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 1eec763eb..b3681d58e 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 26ebad73c..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -1,17 +1,16 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; -import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.8/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in carriers page */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } -module.exports = new BOCarriersPage(); +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts index d609d3e8a..d98e7b4c3 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..72d5416e4 --- /dev/null +++ b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.0/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts index 899aad8e8..9a3d11c97 100644 --- a/src/versions/8.0/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/8.0/pages/BO/shipping/carriers/index.ts b/src/versions/8.0/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..a7398a48d --- /dev/null +++ b/src/versions/8.0/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.1/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts index 29406bc74..9f2c5bc5d 100644 --- a/src/versions/8.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); diff --git a/src/versions/8.1/pages/BO/shipping/carriers/index.ts b/src/versions/8.1/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..65d1ffd8e --- /dev/null +++ b/src/versions/8.1/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/8.2/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index ae2e6b8b0..1715ace56 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -6,7 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/dev class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { /** * @constructs - * Setting up texts and selectors to use in orders page + * Setting up texts and selectors to use in addresses create page */ constructor() { super(); From 0908986db1aab3973d154524f5ec8ea68e393e1e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:13:49 +0200 Subject: [PATCH 420/609] Add '.boCarriersPage' to version requirement --- src/pages/BO/shipping/carriers/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 01ef94380..682eb19e6 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/shipping/carriers'); + return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/shipping/carriers'); + return require('@versions/8.2/pages/BO/shipping/carriers').boCarriersPage; } return require('@versions/develop/pages/BO/shipping/carriers').boCarriersPage; } From a58941f2fb4f5f4682ba6294577888610776f0b3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:19:42 +0200 Subject: [PATCH 421/609] Re-add carrier create page link --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 86c5cc3a2f01d05dcd2e0acffc8c510b23982d76 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:36:05 +0200 Subject: [PATCH 422/609] implement version for addresses index --- src/pages/BO/customers/addresses/create.ts | 3 +++ src/pages/BO/customers/addresses/index.ts | 12 +++++++++- .../pages/BO/customers/addresses/create.ts | 18 +++++++-------- .../pages/BO/customers/addresses/index.ts | 23 +++++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.0/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.1/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 9 ++++---- .../8.2/pages/BO/customers/addresses/index.ts | 20 ++++++++++++++++ .../pages/BO/customers/addresses/index.ts | 5 ++-- 13 files changed, 144 insertions(+), 33 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/1.7.8/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.0/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.1/pages/BO/customers/addresses/index.ts create mode 100644 src/versions/8.2/pages/BO/customers/addresses/index.ts diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 9c648c7b7..089a013eb 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -9,6 +9,9 @@ function requirePage(): BOAddressesCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/customers/addresses/create').boAddressesCreatePage; + } return require('@versions/develop/pages/BO/customers/addresses/create').boAddressesCreatePage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index c5f2e8860..d37ced11b 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -1,8 +1,18 @@ import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesPageInterface { - return require('@versions/develop/pages/BO/customers/addresses'); + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; + } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/customers/addresses').boAddressesPage; + } + return require('@versions/develop/pages/BO/customers/addresses').boAddressesPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index b3681d58e..19dfe39b4 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -2,22 +2,20 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.8/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..16f824136 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -0,0 +1,23 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/1.7.8/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts index d98e7b4c3..e7ac91d0e 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.0/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..72b90a5fb --- /dev/null +++ b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.0/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.0/pages/BO/customers/addresses/create.ts b/src/versions/8.0/pages/BO/customers/addresses/create.ts index 9a3d11c97..cf80b77c1 100644 --- a/src/versions/8.0/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.0/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.1/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.0/pages/BO/customers/addresses/index.ts b/src/versions/8.0/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..08dd4b929 --- /dev/null +++ b/src/versions/8.0/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.1/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.1/pages/BO/customers/addresses/create.ts b/src/versions/8.1/pages/BO/customers/addresses/create.ts index 9f2c5bc5d..b37499cda 100644 --- a/src/versions/8.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.1/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/8.2/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.1/pages/BO/customers/addresses/index.ts b/src/versions/8.1/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..7ccdf6570 --- /dev/null +++ b/src/versions/8.1/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/8.2/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 1715ace56..6f856939b 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -2,15 +2,14 @@ import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/develop/pages/BO/customers/addresses/create'; - class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/8.2/pages/BO/customers/addresses/index.ts b/src/versions/8.2/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..43a7cd384 --- /dev/null +++ b/src/versions/8.2/pages/BO/customers/addresses/index.ts @@ -0,0 +1,20 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/develop/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/develop/pages/BO/customers/addresses/index.ts b/src/versions/develop/pages/BO/customers/addresses/index.ts index fc3c39a10..8a1c4c3cf 100644 --- a/src/versions/develop/pages/BO/customers/addresses/index.ts +++ b/src/versions/develop/pages/BO/customers/addresses/index.ts @@ -8,7 +8,7 @@ import {type Page} from '@playwright/test'; * @extends BOBasePage */ class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { - public readonly pageTitle: string; + public pageTitle: string; private readonly addNewAddressLink: string; @@ -371,4 +371,5 @@ class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { } } -module.exports = new BOAddressesPage(); +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; From 7a66ae0e89c2fed0e75721161059075f598d00f3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:00:02 +0200 Subject: [PATCH 423/609] Implement orderCreate for few versions --- src/pages/BO/orders/create.ts | 10 ++++++++++ src/versions/1.7.7/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/1.7.8/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.0/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.1/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/8.2/pages/BO/orders/create.ts | 16 ++++++++++++++++ src/versions/develop/pages/BO/orders/create.ts | 3 ++- 7 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.7.7/pages/BO/orders/create.ts create mode 100644 src/versions/1.7.8/pages/BO/orders/create.ts create mode 100644 src/versions/8.0/pages/BO/orders/create.ts create mode 100644 src/versions/8.1/pages/BO/orders/create.ts create mode 100644 src/versions/8.2/pages/BO/orders/create.ts diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 3daaac442..3fb408ae6 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -1,7 +1,17 @@ import type {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; + } + if (semver.lt(psVersion, '9.0.0')) { + return require('@versions/8.2/pages/BO/orders/create').boOrderCreatePage; + } return require('@versions/develop/pages/BO/orders/create'); } diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts new file mode 100644 index 000000000..c4a28dd79 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts new file mode 100644 index 000000000..f5eb6eceb --- /dev/null +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.0/pages/BO/orders/create.ts b/src/versions/8.0/pages/BO/orders/create.ts new file mode 100644 index 000000000..d44fd66ca --- /dev/null +++ b/src/versions/8.0/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.1/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.1/pages/BO/orders/create.ts b/src/versions/8.1/pages/BO/orders/create.ts new file mode 100644 index 000000000..1aa400344 --- /dev/null +++ b/src/versions/8.1/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.2/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/8.2/pages/BO/orders/create.ts b/src/versions/8.2/pages/BO/orders/create.ts new file mode 100644 index 000000000..20d5060dc --- /dev/null +++ b/src/versions/8.2/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/develop/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 323a0f584..c0705c8cb 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -1291,4 +1291,5 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac } } -module.exports = new BOOrderCreatePage(); +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; From d56da220e450a15f7cefd2d1d7afd60d9eac35ee Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:06:21 +0200 Subject: [PATCH 424/609] Add temp log for debug --- src/versions/1.7.7/pages/BO/orders/create.ts | 15 +++++++++++++++ src/versions/develop/pages/BO/orders/create.ts | 4 ++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index c4a28dd79..cda393fd6 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,6 +1,8 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; +import {modPsGdprBoMain} from '../../../../../index'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -10,6 +12,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } + + /** + * Choose addresses in form + * @param page {Page} Browser tab + * @param deliveryAddress {string} Delivery address to choose + * @param invoiceAddress {string} Invoice address to choose + * @returns {Promise} + */ + async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { + console.log(deliveryAddress); + await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); + await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index c0705c8cb..1fd299af3 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -149,13 +149,13 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly vouchersTableRowRemoveButton: (row: number) => string; - private readonly deliveryAddressSelect: string; + protected readonly deliveryAddressSelect: string; private readonly deliveryAddressDetails: string; private readonly deliveryAddressEditButton: string; - private readonly invoiceAddressSelect: string; + protected readonly invoiceAddressSelect: string; private readonly invoiceAddressDetails: string; From cf517bfe9f5373864ea599a75b382a639580db31 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:06:18 +0200 Subject: [PATCH 425/609] Override createOrder function for 1.7.7 version --- src/versions/1.7.7/pages/BO/orders/create.ts | 42 +++++++++++++++---- .../develop/pages/BO/orders/create.ts | 2 +- 2 files changed, 36 insertions(+), 8 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index cda393fd6..3ec04c930 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,4 +1,5 @@ // Import pages +import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; @@ -14,16 +15,43 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea } /** - * Choose addresses in form + * Create order with existing customer * @param page {Page} Browser tab - * @param deliveryAddress {string} Delivery address to choose - * @param invoiceAddress {string} Invoice address to choose + * @param orderToMake {FakerOrder} Order data to create + * @param isNewCustomer {boolean} True if the customer is new * @returns {Promise} */ - async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { - console.log(deliveryAddress); - await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); - await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { + // Choose customer + // If it's a new customer, the creation of customer should be done in test + // with add customer page + if (!isNewCustomer) { + await this.searchCustomer(page, orderToMake.customer.email); + } + + // Choose customer after search or creation + await this.chooseCustomer(page, 1); + + // Add products to carts + for (let i = 0; i < orderToMake.products.length; i++) { + await this.addProductToCart( + page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); + } + + // Choose address + await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); + + // Choose delivery options + await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); + + // Choose payment method + await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); + + // Set order status + await this.setOrderStatus(page, orderToMake.status); + + // Create the order + await this.clickAndWaitForURL(page, this.createOrderButton); } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 1fd299af3..c29e72aa1 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -201,7 +201,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderStatusSelect: string; - private readonly createOrderButton: string; + protected readonly createOrderButton: string; private readonly moreActionsDropDownButton: string; From 64efdf5a1ebba7bf93ef1356b97201ea19685e69 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:09:59 +0200 Subject: [PATCH 426/609] Remove useless override --- src/versions/1.7.7/pages/BO/orders/create.ts | 40 -------------------- 1 file changed, 40 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 3ec04c930..cf9c32310 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -13,46 +13,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } - - /** - * Create order with existing customer - * @param page {Page} Browser tab - * @param orderToMake {FakerOrder} Order data to create - * @param isNewCustomer {boolean} True if the customer is new - * @returns {Promise} - */ - async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { - // Choose customer - // If it's a new customer, the creation of customer should be done in test - // with add customer page - if (!isNewCustomer) { - await this.searchCustomer(page, orderToMake.customer.email); - } - - // Choose customer after search or creation - await this.chooseCustomer(page, 1); - - // Add products to carts - for (let i = 0; i < orderToMake.products.length; i++) { - await this.addProductToCart( - page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); - } - - // Choose address - await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); - - // Choose delivery options - await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); - - // Choose payment method - await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); - - // Set order status - await this.setOrderStatus(page, orderToMake.status); - - // Create the order - await this.clickAndWaitForURL(page, this.createOrderButton); - } } const boOrderCreatePage = new BOOrderCreatePage(); From 52d742b42119b13e5e40b68794028120c659be72 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:26:02 +0200 Subject: [PATCH 427/609] Override paymentMethodSelect for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index cf9c32310..2f119bf9c 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -12,6 +12,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index c29e72aa1..5a14fd927 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -177,7 +177,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly giftMessageTextarea: string; - private readonly summaryBlock: string; + protected readonly summaryBlock: string; private readonly totalProducts: string; @@ -193,7 +193,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderMessageTextArea: string; - private readonly paymentMethodSelect: string; + protected paymentMethodSelect: string; private readonly paymentMethodSelectResult: string; From 43a517460146b9fb64dca7cbe28dc65b187fddcc Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:23:08 +0200 Subject: [PATCH 428/609] Override setPaymentMethod for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 2f119bf9c..52f6dc443 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,9 +1,8 @@ // Import pages -import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; -import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -import {modPsGdprBoMain} from '../../../../../index'; +// Imports from playwright +import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -16,6 +15,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Summary selectors this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); +/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); + await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); + await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ + } } const boOrderCreatePage = new BOOrderCreatePage(); From c2256b0bb68fb02de45f050c725a2ff7099f55c2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:28:55 +0200 Subject: [PATCH 429/609] Remove unwanted comments --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 52f6dc443..18211c5b2 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -24,9 +24,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); -/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); - await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); - await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ } } From 97394e8e662543df1abd7768f0393a77cc3e51ae Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 13:57:15 +0200 Subject: [PATCH 430/609] Move selector override from 1.7.7 to 8.2 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 4 ---- src/versions/8.2/pages/BO/customers/addresses/create.ts | 2 ++ 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 19dfe39b4..07b98b822 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -9,10 +9,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 6f856939b..30719d699 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -9,6 +9,8 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; } } From be19b1c9d89a70edf9301df667635847ff96c90b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:08:00 +0200 Subject: [PATCH 431/609] Move carrier button selector override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- src/versions/1.7.8/pages/BO/shipping/carriers/index.ts | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } diff --git a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts index 72d5416e4..63dbd1084 100644 --- a/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.8/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From f9943d7444e7a1df559eca67988870b9718bf513 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:13:25 +0200 Subject: [PATCH 432/609] Add carrier requirement for versions below 8.0.0 --- src/pages/BO/shipping/carriers/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 682eb19e6..2f4512d3c 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,9 @@ function requirePage(): BOCarriersPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/shipping/carriers').boCarriersPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers').boCarriersPage; } From a5ab4642201357daab71d3016132b4bbe78beaaf Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:20:12 +0200 Subject: [PATCH 433/609] Move adress creation success message from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/customers/addresses/index.ts | 2 -- src/versions/1.7.8/pages/BO/customers/addresses/index.ts | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 16f824136..519ce98b9 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -13,9 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; } } diff --git a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts index 72b90a5fb..f5956d78b 100644 --- a/src/versions/1.7.8/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.8/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = 'Successful creation.'; } } From 5979f0f2324fa03f9e08849ea4b8970d3d4a71a1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:21:21 +0200 Subject: [PATCH 434/609] Add requirement for lt 8.0.0 --- src/pages/BO/customers/addresses/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index d37ced11b..435b26b23 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -9,6 +9,9 @@ function requirePage(): BOAddressesPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/customers/addresses').boAddressesPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/customers/addresses').boAddressesPage; } From 0938ff8447132463fb3e56ff6dc93542ab676ebb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:56:00 +0200 Subject: [PATCH 435/609] Move order setPaymentMethod override from 1.7.7 to 1.7.8 --- src/pages/BO/orders/create.ts | 3 +++ src/versions/1.7.7/pages/BO/orders/create.ts | 15 --------------- src/versions/1.7.8/pages/BO/orders/create.ts | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 3fb408ae6..4eaf4ba9e 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -9,6 +9,9 @@ function requirePage(): BOOrdersCreatePageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; } + if (semver.lt(psVersion, '8.0.0')) { + return require('@versions/1.7.8/pages/BO/orders/create').boOrderCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/orders/create').boOrderCreatePage; } diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 18211c5b2..c4a28dd79 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,8 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -// Imports from playwright -import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -11,19 +9,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); - - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } - - /** - * Set payment method - * @param page {Page} Browser tab - * @param paymentMethodModuleName {string} Payment method to choose - * @returns {Promise} - */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); } } diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index f5eb6eceb..121b07fa5 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -1,5 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { @@ -9,6 +10,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); } } From 75e6d9d66261ca52ec4820c84afdf4eb5836e7a9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 10:44:58 +0200 Subject: [PATCH 436/609] Add login compatibility for 1.6.1.24 --- src/data/faker/cmsPage.ts | 2 +- src/pages/BO/login/index.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 21 +++++++++++++++++++ .../8.2/pages/BO/shipping/carriers/index.ts | 12 +++++------ .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../develop/pages/BO/searchResults.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 11 files changed, 51 insertions(+), 27 deletions(-) create mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index 9e2cf6c42..dea1cf4a1 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index the page */ + /** @type {boolean} True to index.ts the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index 3db366d5f..d6e03719e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/login').loginPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts new file mode 100644 index 000000000..94bf43565 --- /dev/null +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {LoginPageInterface} from '@interfaces/BO/login'; +import {LoginPage} from '@versions/1.7.2/pages/BO/login'; + +/** + * Bo login page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOLoginVersion extends LoginPage implements LoginPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on login page + */ + constructor() { + super(); + } +} + +module.exports = new BOLoginVersion(); + diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 55503ee50..1c201b2a9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 66053f27a..937e704b0 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0bd20a8ad..0441624e0 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 449d1b95e..9e46a7b31 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index cc0d3261e..e66d8b17a 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index a87f8bdd7..774b69fff 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index" + * Click "Add missing products to the index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index" + * Click "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index" + * Click on the cron jon link for "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 59282a9c9..1d776ba58 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index) is added to a wishlist + * Check if a product (based on its index.ts) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index d666b2c44..9cd38f119 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 8c0b19a2a38af7aa8073c76844dad0dc428039a8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:26:10 +0200 Subject: [PATCH 437/609] Remove unwanted changes --- src/data/faker/cmsPage.ts | 2 +- src/versions/1.6.1.24/pages/BO/login/index.ts | 9 ++++----- src/versions/1.7.7/pages/BO/orders/create.ts | 8 ++++---- src/versions/1.7.8/pages/BO/orders/create.ts | 20 +++++++++---------- src/versions/8.0/pages/BO/orders/create.ts | 8 ++++---- src/versions/8.1/pages/BO/orders/create.ts | 8 ++++---- src/versions/8.2/pages/BO/orders/create.ts | 8 ++++---- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 13 files changed, 50 insertions(+), 51 deletions(-) diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index dea1cf4a1..9e2cf6c42 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index.ts the page */ + /** @type {boolean} True to index the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts index 94bf43565..fbb75adbe 100644 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -8,14 +8,13 @@ import {LoginPage} from '@versions/1.7.2/pages/BO/login'; * @extends ProductsPage */ class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on login page */ - constructor() { - super(); - } + constructor() { + super(); + } } module.exports = new BOLoginVersion(); - diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index c4a28dd79..13a686d06 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index 121b07fa5..16725be4c 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -4,26 +4,26 @@ import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.0/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } - /** + /** * Set payment method * @param page {Page} Browser tab * @param paymentMethodModuleName {string} Payment method to choose * @returns {Promise} */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); - } + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.0/pages/BO/orders/create.ts b/src/versions/8.0/pages/BO/orders/create.ts index d44fd66ca..9d3bd0ca6 100644 --- a/src/versions/8.0/pages/BO/orders/create.ts +++ b/src/versions/8.0/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.1/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.1/pages/BO/orders/create.ts b/src/versions/8.1/pages/BO/orders/create.ts index 1aa400344..eb94b9e65 100644 --- a/src/versions/8.1/pages/BO/orders/create.ts +++ b/src/versions/8.1/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/8.2/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/8.2/pages/BO/orders/create.ts b/src/versions/8.2/pages/BO/orders/create.ts index 20d5060dc..b3c5dced7 100644 --- a/src/versions/8.2/pages/BO/orders/create.ts +++ b/src/versions/8.2/pages/BO/orders/create.ts @@ -3,13 +3,13 @@ import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/develop/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { - /** + /** * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - } + constructor() { + super(); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 937e704b0..66053f27a 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0441624e0..0bd20a8ad 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index e66d8b17a..cc0d3261e 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index 774b69fff..a87f8bdd7 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index.ts" + * Click "Add missing products to the index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index.ts" + * Click "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index.ts" + * Click on the cron jon link for "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 1d776ba58..59282a9c9 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index.ts) is added to a wishlist + * Check if a product (based on its index) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index 9cd38f119..d666b2c44 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 37bb50513dc84fa0bd00ff22ead3dd5d59cce21b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:28:06 +0200 Subject: [PATCH 438/609] Remove unwanted changes part2 --- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 1c201b2a9..5d0c73525 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index. in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { From b4644c9c8d4e870bf168b1a9316600c5b7144a5c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:30:23 +0200 Subject: [PATCH 439/609] Remove unwanted changes part3 --- src/versions/develop/pages/BO/searchResults.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 9e46a7b31..449d1b95e 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From b49a7d47e9014b562bada83c8091087ccd098cee Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:52:13 +0200 Subject: [PATCH 440/609] Add compat requirement in pages --- src/pages/BO/customers/addresses/create.ts | 3 +++ src/pages/BO/customers/addresses/index.ts | 3 +++ src/pages/BO/orders/create.ts | 3 +++ src/pages/BO/orders/index.ts | 3 +++ src/pages/BO/shipping/carriers/create.ts | 5 ++++- src/pages/BO/shipping/carriers/index.ts | 3 +++ .../pages/BO/customers/addresses/create.ts | 18 ++++++++++++++++ .../pages/BO/customers/addresses/index.ts | 21 +++++++++++++++++++ .../pages/BO/login/index.ts | 0 src/versions/1.6.1/pages/BO/orders/create.ts | 16 ++++++++++++++ src/versions/1.6.1/pages/BO/orders/index.ts | 21 +++++++++++++++++++ .../1.6.1/pages/BO/shipping/carriers/index.ts | 16 ++++++++++++++ 12 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 src/versions/1.6.1/pages/BO/customers/addresses/create.ts create mode 100644 src/versions/1.6.1/pages/BO/customers/addresses/index.ts rename src/versions/{1.6.1.24 => 1.6.1}/pages/BO/login/index.ts (100%) create mode 100644 src/versions/1.6.1/pages/BO/orders/create.ts create mode 100644 src/versions/1.6.1/pages/BO/orders/index.ts create mode 100644 src/versions/1.6.1/pages/BO/shipping/carriers/index.ts diff --git a/src/pages/BO/customers/addresses/create.ts b/src/pages/BO/customers/addresses/create.ts index 089a013eb..5dec8e24a 100644 --- a/src/pages/BO/customers/addresses/create.ts +++ b/src/pages/BO/customers/addresses/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/customers/addresses/create').boAddressesCreatePage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses/create').boAddressesCreatePage; } diff --git a/src/pages/BO/customers/addresses/index.ts b/src/pages/BO/customers/addresses/index.ts index 435b26b23..af6334473 100644 --- a/src/pages/BO/customers/addresses/index.ts +++ b/src/pages/BO/customers/addresses/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOAddressesPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/customers/addresses').boAddressesPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/customers/addresses').boAddressesPage; } diff --git a/src/pages/BO/orders/create.ts b/src/pages/BO/orders/create.ts index 4eaf4ba9e..9a78c45ac 100644 --- a/src/pages/BO/orders/create.ts +++ b/src/pages/BO/orders/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/orders/create').boOrderCreatePage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/orders/create').boOrderCreatePage; } diff --git a/src/pages/BO/orders/index.ts b/src/pages/BO/orders/index.ts index f00f62dba..904981a61 100644 --- a/src/pages/BO/orders/index.ts +++ b/src/pages/BO/orders/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOOrdersPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/orders').ordersPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/orders').ordersPage; } diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a4de29cb8..a6797ab73 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,8 +6,11 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/shipping/carriers/create'); + return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } return require('@versions/develop/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 2f4512d3c..126e21048 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers').boCarriersPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/shipping/carriers').boCarriersPage; } diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts new file mode 100644 index 000000000..e2c2aaf13 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; + +class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } +} + +const boAddressesCreatePage = new BOAddressesCreatePage(); +export {boAddressesCreatePage, BOAddressesCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts new file mode 100644 index 000000000..d69e8655b --- /dev/null +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -0,0 +1,21 @@ +import {type BOAddressesPageInterface} from '@interfaces/BO/customers/addresses'; +import {BOAddressesPage as BOAddressesPageVersion} from '@versions/1.7.7/pages/BO/customers/addresses'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + } +} + +const boAddressesPage = new BOAddressesPage(); +export {boAddressesPage, BOAddressesPage}; diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1/pages/BO/login/index.ts similarity index 100% rename from src/versions/1.6.1.24/pages/BO/login/index.ts rename to src/versions/1.6.1/pages/BO/login/index.ts diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts new file mode 100644 index 000000000..0e5f5f09d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.7/pages/BO/orders/create'; + +class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { + /** + * @constructs + * Setting up texts and selectors to use in addresses create page + */ + constructor() { + super(); + } +} + +const boOrderCreatePage = new BOOrderCreatePage(); +export {boOrderCreatePage, BOOrderCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/orders/index.ts b/src/versions/1.6.1/pages/BO/orders/index.ts new file mode 100644 index 000000000..7df0e106d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/orders/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {BOOrdersPageInterface} from '@interfaces/BO/orders'; +import {OrdersPage} from '@versions/1.7.7/pages/BO/orders/index'; + +/** + * Orders page, contains functions that can be used on the page + * @class + * @extends OrdersPage + */ +class OrdersPageVersion extends OrdersPage implements BOOrdersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + } +} + +const ordersPage = new OrdersPageVersion(); +export {ordersPage, OrdersPageVersion as OrdersPage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts new file mode 100644 index 000000000..8d243023d --- /dev/null +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts @@ -0,0 +1,16 @@ +// Import pages +import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.7/pages/BO/shipping/carriers'; + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in carriers page + */ + constructor() { + super(); + } +} + +const boCarriersPage = new BOCarriersPage(); +export {boCarriersPage, BOCarriersPage}; From 23cff087c11029737fd2b8648e203b4bb03b0bd9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 14:21:18 +0200 Subject: [PATCH 441/609] Add version to utils --- src/utils/test.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/utils/test.ts b/src/utils/test.ts index ee517f52a..0c9878771 100644 --- a/src/utils/test.ts +++ b/src/utils/test.ts @@ -50,7 +50,8 @@ export default { const version: string = process.env.PS_VERSION; return version - .replace(/\.x$/, '.99') - .replace(/^1\.7\./, '7.'); + .replace(/\.x$/, '.99') + .replace(/^1\.7\./, '7.') + .replace(/^1\.6\./, '6.'); }, }; From 56c996e0633dba0f175a719b86ade74740269ada Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:00:38 +0200 Subject: [PATCH 442/609] Remove temporary carriersCreate --- src/pages/BO/shipping/carriers/create.ts | 3 --- src/versions/develop/pages/BO/dashboard/index.ts | 3 ++- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a6797ab73..4adcd9105 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; - } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 1bcce8cb3..db6a2e961 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -757,4 +757,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -module.exports = new Dashboard(); +const DashboardPage = new Dashboard(); +export {DashboardPage, Dashboard}; From e1d16e4b6bf11c7f13961156cb547af7b0f26e48 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:09:12 +0200 Subject: [PATCH 443/609] Remove temporary login require --- src/pages/BO/login/index.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index d6e03719e..3db366d5f 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/login').loginPage; - } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } From a80e4bb8625f1b0ab3c286858afee96244e673ed Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:11:44 +0200 Subject: [PATCH 444/609] Add lt for version under 9.0.0 --- src/pages/BO/dashboard/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 03262435d..1822ca588 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -6,7 +6,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { - if (semver.gte(psVersion, '0.0.0')) { + if (semver.lt(psVersion, '9.0.0')) { return require('@versions/develop/pages/BO/dashboard'); } return require('@versions/develop/pages/BO/dashboard'); From 555f983e72846e5dc5e12b1663c2a810bbe55eb2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:26:56 +0200 Subject: [PATCH 445/609] Try require 8.2 on dashboard 1.6 --- src/pages/BO/dashboard/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 1822ca588..1bca06e05 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/develop/pages/BO/dashboard'); + return require('@versions/8.2/pages/BO/dashboard'); } return require('@versions/develop/pages/BO/dashboard'); } From c04d1d3ba8f9223a2c7425a9af712bd59fa7092b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:35:51 +0200 Subject: [PATCH 446/609] Add require for dashboardPage under 9.0.0 --- src/pages/BO/dashboard/index.ts | 2 +- src/pages/BO/login/index.ts | 2 +- src/versions/develop/pages/BO/dashboard/index.ts | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 1bca06e05..59db7e489 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/dashboard'); + return require('@versions/develop/pages/BO/dashboard').dashboardPage; } return require('@versions/develop/pages/BO/dashboard'); } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index 3db366d5f..ab2e9932f 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -13,7 +13,7 @@ function requirePage(): LoginPageInterface { return require('@versions/1.7.8/pages/BO/login').loginPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.1/pages/BO/login').loginPage; + return require('@versions/8.2/pages/BO/login').loginPage; } return require('@versions/develop/pages/BO/login').loginPage; } diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index db6a2e961..3a87502bb 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -757,5 +757,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const DashboardPage = new Dashboard(); -export {DashboardPage, Dashboard}; +const dashboardPage = new Dashboard(); +export {dashboardPage, Dashboard}; From 765e00add2c7c546c3ec50b339e6d57495bdcd19 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:58:33 +0200 Subject: [PATCH 447/609] Try implementes carriers link to 1.6.1 --- .../1.6.1/pages/BO/dashboard/index.ts | 21 +++++++++++++++++++ .../develop/pages/BO/dashboard/index.ts | 4 ++-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 src/versions/1.6.1/pages/BO/dashboard/index.ts diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts new file mode 100644 index 000000000..84977cc95 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -0,0 +1,21 @@ +import {DashboardPageInterface} from '@interfaces/BO/dashboard'; +import {DashboardPage as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; + + +// @ts-ignore +class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { + private shippingLink: string; + private carriersLink: string; + /** + * @constructs + * Setting up titles and selectors to use on dashboard page + */ + constructor() { + super(); + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; + this.carriersLink = '#subtab-AdminCarriers'; + } +} + +module.exports = new DashboardPage(); diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index 3a87502bb..db6a2e961 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -757,5 +757,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const dashboardPage = new Dashboard(); -export {dashboardPage, Dashboard}; +const DashboardPage = new Dashboard(); +export {DashboardPage, Dashboard}; From 3916bfbaa3288fe2c0612b68e4e9ba984610cfeb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:16:18 +0200 Subject: [PATCH 448/609] Correctly implementes Dashboard --- src/pages/BO/BOBasePage.ts | 6 +++--- src/pages/BO/dashboard/index.ts | 3 +++ src/versions/1.6.1/pages/BO/dashboard/index.ts | 13 +++++++------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 268d52034..db90e5ba2 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -155,11 +155,11 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly linkWidgetLink: string; - public readonly shippingLink: string; + public shippingLink: string; - public readonly carriersLink: string; + public carriersLink: string; - public readonly shippingPreferencesLink: string; + public shippingPreferencesLink: string; public readonly paymentParentLink: string; diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 59db7e489..01e3bfa7c 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/dashboard').dashboardPage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/develop/pages/BO/dashboard').dashboardPage; } diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 84977cc95..a56965d2c 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -1,11 +1,12 @@ -import {DashboardPageInterface} from '@interfaces/BO/dashboard'; -import {DashboardPage as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; +import type {DashboardPageInterface} from '@interfaces/BO/dashboard'; +import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dashboard'; - -// @ts-ignore +/** + * Bo dashboard page, contains functions that can be used on the page + * @class + * @extends DashboardPage + */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { - private shippingLink: string; - private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page From ba185ae07b16e5b7f36d56bfe837a1158cb4af03 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:21:09 +0200 Subject: [PATCH 449/609] Correctly require --- src/pages/BO/dashboard/index.ts | 4 ++-- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 ++- src/versions/develop/pages/BO/dashboard/index.ts | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/pages/BO/dashboard/index.ts b/src/pages/BO/dashboard/index.ts index 01e3bfa7c..59160e2ac 100644 --- a/src/pages/BO/dashboard/index.ts +++ b/src/pages/BO/dashboard/index.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports */ function requirePage(): DashboardPageInterface { if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/dashboard').dashboardPage; + return require('@versions/1.6.1/pages/BO/dashboard').boDashboardPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/develop/pages/BO/dashboard').dashboardPage; + return require('@versions/develop/pages/BO/dashboard').boDashboardPage; } return require('@versions/develop/pages/BO/dashboard'); } diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index a56965d2c..1cf37ea1a 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -19,4 +19,5 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa } } -module.exports = new DashboardPage(); +const boDashboardPage = new DashboardPage(); +export {boDashboardPage, DashboardPage}; diff --git a/src/versions/develop/pages/BO/dashboard/index.ts b/src/versions/develop/pages/BO/dashboard/index.ts index db6a2e961..969b2030f 100644 --- a/src/versions/develop/pages/BO/dashboard/index.ts +++ b/src/versions/develop/pages/BO/dashboard/index.ts @@ -757,5 +757,5 @@ class Dashboard extends BOBasePage implements DashboardPageInterface { } } -const DashboardPage = new Dashboard(); -export {DashboardPage, Dashboard}; +const boDashboardPage = new Dashboard(); +export {boDashboardPage, Dashboard}; From 618ca160679644f747fd38bea253eed671f0a6eb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:45:27 +0200 Subject: [PATCH 450/609] Correctly export carrierCreate from 8.2 --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 0ee4b497b..1aecaf958 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -222,4 +222,5 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr } } -module.exports = new BOCarriersCreatePage(); +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; From 2216f874063529dd21513c453a60d1dd305338d7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:09:49 +0200 Subject: [PATCH 451/609] Override goToAddNewCarrier for 1.6 versions --- .../1.6.1/pages/BO/shipping/carriers/create.ts | 12 ++++++++++++ .../1.6.1/pages/BO/shipping/carriers/index.ts | 14 ++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/shipping/carriers/create.ts diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts new file mode 100644 index 000000000..1583b0fe7 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts @@ -0,0 +1,12 @@ +import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; +import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; + +class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { + constructor() { + super(); + + } +} + +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts index 8d243023d..e6034ed4b 100644 --- a/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/index.ts @@ -1,5 +1,6 @@ // Import pages import {BOCarriersPageInterface} from '@interfaces/BO/shipping/carriers'; +import type {Page} from '@playwright/test'; import {BOCarriersPage as BOCarriersPageVersion} from '@versions/1.7.7/pages/BO/shipping/carriers'; class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { @@ -10,6 +11,19 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte constructor() { super(); } + + /* +Methods + */ + /** + * Go to add new carrier page + * @param page {Page} Browser tab + * @returns {Promise} + */ + async goToAddNewCarrierPage(page: Page): Promise { + await this.clickAndWaitForURL(page, this.addNewCarrierLink); + await page.locator('#configuration_form .btn').click(); + } } const boCarriersPage = new BOCarriersPage(); From 7d892c01c3d792da15cfdbfa41a7b484044fb025 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:18:12 +0200 Subject: [PATCH 452/609] Override CustomerParentLink in 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index db90e5ba2..d738f73f4 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -115,7 +115,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly stocksLink: string; - public readonly customersParentLink: string; + public customersParentLink: string; public readonly customersLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1cf37ea1a..7b6b3b9e4 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,6 +13,8 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; this.carriersLink = '#subtab-AdminCarriers'; From 8e3876f132e1284988b7511a9e18cc3ee6de368f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:24:11 +0200 Subject: [PATCH 453/609] Override addNewAddress link for 1.6 --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 ++ src/versions/develop/pages/BO/customers/addresses/index.ts | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d69e8655b..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -14,6 +14,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI constructor() { super(); this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + // Header links + this.addNewAddressLink = '#page-header-desc-address-new_address'; } } diff --git a/src/versions/develop/pages/BO/customers/addresses/index.ts b/src/versions/develop/pages/BO/customers/addresses/index.ts index 8a1c4c3cf..7e7bd3a1c 100644 --- a/src/versions/develop/pages/BO/customers/addresses/index.ts +++ b/src/versions/develop/pages/BO/customers/addresses/index.ts @@ -10,7 +10,7 @@ import {type Page} from '@playwright/test'; class BOAddressesPage extends BOBasePage implements BOAddressesPageInterface { public pageTitle: string; - private readonly addNewAddressLink: string; + protected addNewAddressLink: string; private readonly addressGridPanel: string; From d88c2786328dae3ca64637a9a1a4e10a36fd8c77 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:27:17 +0200 Subject: [PATCH 454/609] Override addNewAddress page title for 1.6 --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..3361873ce 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; } From 57de51729ebf364c91817f762f20df2ecc6bdf17 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 10:49:19 +0200 Subject: [PATCH 455/609] Move title override to correct page --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 1 + src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index e2c2aaf13..b20337e3e 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -9,6 +9,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 3361873ce..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; } From 6571be6b9e08b1d1c3c75ac6ab1547e245daf3ac Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:00:10 +0200 Subject: [PATCH 456/609] Override newAddress form selectors --- .../pages/BO/customers/addresses/create.ts | 18 ++++++++-- .../pages/BO/customers/addresses/create.ts | 36 +++++++++---------- 2 files changed, 34 insertions(+), 20 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index b20337e3e..ecf204160 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -10,8 +10,22 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr constructor() { super(); this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; + + // Selectors + this.customerEmailInput = '#email'; + this.customerAddressdniInput = '#dni'; + this.customerAddressAliasInput = '#alias'; + this.customerAddressFirstNameInput = '#firstname'; + this.customerLastNameInput = '#lastname'; + this.customerAddressCompanyInput = '#company'; + this.customerAddressVatNumberInput = '#vat_number'; + this.customerAddressInput = '#address1'; + this.customerAddressPostCodeInput = '#postcode'; + this.customerSecondAddressInput = '#address2'; + this.customerAddressCityInput = '#city'; + this.customerAddressCountrySelect = '#id_country'; + this.customerAddressPhoneInput = '#phone'; + this.saveAddressButton = '#address_form_submit_btn'; } } diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 561f61ebe..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -13,41 +13,41 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI public readonly pageTitleEdit: string; - private readonly customerEmailInput: string; + protected customerEmailInput: string; - private readonly customerAddressdniInput: string; + protected customerAddressdniInput: string; - private readonly customerAddressAliasInput: string; + protected customerAddressAliasInput: string; - private readonly customerAddressFirstNameInput: string; + protected customerAddressFirstNameInput: string; - private readonly customerLastNameInput: string; + protected customerLastNameInput: string; - private readonly customerAddressCompanyInput: string; + protected customerAddressCompanyInput: string; - private readonly customerAddressVatNumberInput: string; + protected customerAddressVatNumberInput: string; - private readonly customerAddressInput: string; + protected customerAddressInput: string; - private readonly customerAddressPostCodeInput: string; + protected customerAddressPostCodeInput: string; - private readonly customerSecondAddressInput: string; + protected customerSecondAddressInput: string; - private readonly customerAddressCityInput: string; + protected customerAddressCityInput: string; - private readonly customerAddressCountrySelect: string; + protected customerAddressCountrySelect: string; - private readonly customerAddressCountryOption: string; + protected customerAddressCountryOption: string; - private readonly customerAddressStateSelect: string; + protected customerAddressStateSelect: string; - private readonly searchStateInput: string; + protected searchStateInput: string; - private readonly searchResultState: string; + protected searchResultState: string; - private readonly customerAddressPhoneInput: string; + protected customerAddressPhoneInput: string; - private readonly customerAddressOtherInput: string; + protected customerAddressOtherInput: string; protected saveAddressButton: string; From fa43d2a35bf85db314d669414964d5a9b7d34628 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:59:14 +0200 Subject: [PATCH 457/609] Override createEditAdress --- .../pages/BO/customers/addresses/create.ts | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..1a7f262a6 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,6 +2,8 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; +import testContext from '@utils/test'; +import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -101,15 +103,18 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { + const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); + if (semver.gt(psVersion, '7.0.0')) { + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); + } } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From c45fffeaedcff29b87af1a7209b41ada2b7aafc1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:04:18 +0200 Subject: [PATCH 458/609] Total override createEditAddress for 1.6 --- .../pages/BO/customers/addresses/create.ts | 56 +++++++++++++++++++ .../pages/BO/customers/addresses/create.ts | 19 +++---- 2 files changed, 63 insertions(+), 12 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index ecf204160..f264d4fcf 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -1,8 +1,13 @@ // Import pages +import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; +import type {Frame, Page} from '@playwright/test'; +import testContext from '@utils/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; +import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { + private readonly customerAddressMobilePhoneInput: string; /** * @constructs * Setting up texts and selectors to use in addresses create page @@ -25,8 +30,59 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr this.customerAddressCityInput = '#city'; this.customerAddressCountrySelect = '#id_country'; this.customerAddressPhoneInput = '#phone'; + this.customerAddressMobilePhoneInput = '#phone_mobile'; this.saveAddressButton = '#address_form_submit_btn'; } + + /** + * Fill form for add/edit address + * @param page {Frame|Page} Browser tab + * @param addressData {FakerAddress} Data to set on new address form + * @param save {boolean} True if we need to save the new address, false if not + * @param waitForNavigation {boolean} True if we need to wait for navigation after save, false if not + * @returns {Promise} + */ + async createEditAddress( + page: Frame|Page, + addressData: FakerAddress, + save: boolean = true, + waitForNavigation: boolean = true, + ): Promise { + if (await this.elementVisible(page, this.customerEmailInput, 2000)) { + await this.setValue(page, this.customerEmailInput, addressData.email); + } + await this.setValue(page, this.customerAddressdniInput, addressData.dni); + await this.setValue(page, this.customerAddressAliasInput, addressData.alias); + await this.setValue(page, this.customerAddressFirstNameInput, addressData.firstName); + await this.setValue(page, this.customerLastNameInput, addressData.lastName); + await this.setValue(page, this.customerAddressCompanyInput, addressData.company); + await this.setValue(page, this.customerAddressVatNumberInput, addressData.vatNumber); + await this.setValue(page, this.customerAddressInput, addressData.address); + await this.setValue(page, this.customerSecondAddressInput, addressData.secondAddress); + await this.setValue(page, this.customerAddressPostCodeInput, addressData.postalCode); + await this.setValue(page, this.customerAddressCityInput, addressData.city); + await this.selectByVisibleText(page, this.customerAddressCountrySelect, addressData.country); + await this.setValue(page, this.customerAddressPhoneInput, addressData.phone); + await this.setValue(page, this.customerAddressMobilePhoneInput, addressData.phone); + await this.setValue(page, this.customerAddressOtherInput, addressData.other); + + if (await this.elementVisible(page, this.customerAddressStateSelect, 1000)) { + await page.locator(this.customerAddressStateSelect).click(); + await this.setValue(page, this.searchStateInput, addressData.state); + await this.waitForSelectorAndClick(page, this.searchResultState); + } + + // Save and return successful message + if (save) { + if (waitForNavigation) { + return this.saveAddress(page); + } + + await page.locator(this.saveAddressButton).click(); + } + + return null; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7f262a6..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,8 +2,6 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; -import testContext from '@utils/test'; -import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -103,18 +101,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { - const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if (semver.gt(psVersion, '7.0.0')) { - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); - } + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From ef65d094cba149d46d3b0b7b9f010056fc751569 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:07:47 +0200 Subject: [PATCH 459/609] Add missing locator --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index f264d4fcf..3120c6f1b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -2,9 +2,7 @@ import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import type {Frame, Page} from '@playwright/test'; -import testContext from '@utils/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; -import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; @@ -31,6 +29,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr this.customerAddressCountrySelect = '#id_country'; this.customerAddressPhoneInput = '#phone'; this.customerAddressMobilePhoneInput = '#phone_mobile'; + this.customerAddressOtherInput = '#other'; this.saveAddressButton = '#address_form_submit_btn'; } From 38297c9e5b5ccf6fc0a74558656957d4e216da19 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:16:44 +0200 Subject: [PATCH 460/609] Update alert block locators --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 3 +++ src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 3120c6f1b..f17aa661f 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,6 +12,9 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; + // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Selectors diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..31e2ab2d8 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,6 +16,11 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; } } From 4db338502aa276bfa93c1c4dac73d82a14b396d7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:18:39 +0200 Subject: [PATCH 461/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 2 -- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index f17aa661f..02e0f72d0 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,8 +12,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 31e2ab2d8..d8e33b18d 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From b6501a4d3a02a607ff496c2e526af72d40240553 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:27:44 +0200 Subject: [PATCH 462/609] Update success block --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d8e33b18d..c7f3a47f4 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,8 +13,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; @@ -23,6 +21,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.alertTextBlock = `${this.alertBlock}`; this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From 8194bfece3e15ff6f622cd5b0354290b4616874e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:32:38 +0200 Subject: [PATCH 463/609] Override save and getSuccessTxt --- .../pages/BO/customers/addresses/create.ts | 28 ++++++++++++++++++- .../pages/BO/customers/addresses/index.ts | 6 ---- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 02e0f72d0..0c53c68d2 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -14,7 +14,12 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr super(); // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; - + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; // Selectors this.customerEmailInput = '#email'; this.customerAddressdniInput = '#dni'; @@ -83,6 +88,27 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr return null; } + + /** + * Save address + * @param page {Frame|Page} Browser tab + * @returns {Promise} + */ + async saveAddress(page: Frame|Page): Promise { + await this.clickAndWaitForURL(page, this.saveAddressButton); + return this.getAlertSuccessBlockParagraphContent(page); + } + + /** + * Get text content of alert success block paragraph + * @param page {Frame|Page} Browser tab + * @param timeout + * @return {Promise} + */ + async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c7f3a47f4..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,12 +16,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; - // Alert Text - this.alertBlock = 'div.alert'; - this.alertTextBlock = `${this.alertBlock}`; - this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; - this.alertSuccessBlock = `${this.alertBlock}.alert-success`; - this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From e2bc6aacf72f37f85e2f0ef005944fc474c9d243 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:35:20 +0200 Subject: [PATCH 464/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..c02e580f6 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = '× Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From d3c0653c9eb6fcbcbc4150927a8c827896e9e513 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:09:24 +0200 Subject: [PATCH 465/609] Add OrderParentLink for 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index d738f73f4..50282dfb4 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -85,7 +85,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte private readonly dashboardLink: string; - public readonly ordersParentLink: string; + public ordersParentLink: string; public readonly ordersLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 7b6b3b9e4..1d40d1dd1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,11 +13,12 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; // Customers this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; - this.carriersLink = '#subtab-AdminCarriers'; } } From 226cf473f3c85b5b3f31bdae865b16ed81dc9a2b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:17:31 +0200 Subject: [PATCH 466/609] Override newOrderPage link for 1.6 --- src/versions/1.6.1/pages/BO/orders/index.ts | 4 +++- src/versions/develop/pages/BO/orders/index.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/index.ts b/src/versions/1.6.1/pages/BO/orders/index.ts index 7df0e106d..764cef793 100644 --- a/src/versions/1.6.1/pages/BO/orders/index.ts +++ b/src/versions/1.6.1/pages/BO/orders/index.ts @@ -1,6 +1,6 @@ // Import pages import type {BOOrdersPageInterface} from '@interfaces/BO/orders'; -import {OrdersPage} from '@versions/1.7.7/pages/BO/orders/index'; +import {OrdersPage} from '@versions/1.7.7/pages/BO/orders'; /** * Orders page, contains functions that can be used on the page @@ -14,6 +14,8 @@ class OrdersPageVersion extends OrdersPage implements BOOrdersPageInterface { */ constructor() { super(); + // Link + this.createNewOrderButton = '#page-header-desc-order-new_order'; } } diff --git a/src/versions/develop/pages/BO/orders/index.ts b/src/versions/develop/pages/BO/orders/index.ts index 05cf696b5..005a48ecf 100644 --- a/src/versions/develop/pages/BO/orders/index.ts +++ b/src/versions/develop/pages/BO/orders/index.ts @@ -13,7 +13,7 @@ import type {Page} from 'playwright'; class OrdersPage extends BOBasePage implements BOOrdersPageInterface { public readonly pageTitle: string; - private readonly createNewOrderButton: string; + protected createNewOrderButton: string; protected gridPanel: string; From 76b2eb2f8cec928d203ce3b141c3911de125b59c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:24:23 +0200 Subject: [PATCH 467/609] Add order customer searh selector --- src/versions/1.6.1/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 0e5f5f09d..b28c33593 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -9,6 +9,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ constructor() { super(); + // Customer selectors + this.addCustomerLink = 'a.fancybox_customer'; + this.customerSearchInput = '#customer'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 5a14fd927..a6de808d5 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -31,11 +31,11 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly closeFancyBoxIframe: string; - private readonly addCustomerLink: string; + protected addCustomerLink: string; - private readonly customerSearchInput: string; + protected customerSearchInput: string; - private readonly customerSearchLoadingNoticeBlock: string; + protected customerSearchLoadingNoticeBlock: string; private readonly customerSearchEmptyResultBlock: string; From 01b487f78c1dce598dbf18fb6cc299b0cc806de0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:07:11 +0200 Subject: [PATCH 468/609] Override order customer selection locators --- src/versions/1.6.1/pages/BO/orders/create.ts | 8 ++++++++ src/versions/develop/pages/BO/orders/create.ts | 12 ++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index b28c33593..cd96e3d9e 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -12,6 +12,14 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Customer selectors this.addCustomerLink = 'a.fancybox_customer'; this.customerSearchInput = '#customer'; + + // Full results + this.customerSearchFullResultsBlock = '#customers'; + this.customerResultsBlock = `${this.customerSearchFullResultsBlock}`; + this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard(${pos})`; + this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; + this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; + this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index a6de808d5..48e6d09f1 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -41,17 +41,17 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly customerSearchEmptyResultParagraphe: string; - private readonly customerSearchFullResultsBlock: string; + protected customerSearchFullResultsBlock: string; - private readonly customerResultsBlock: string; + protected customerResultsBlock: string; - private readonly customerCardBlock: (pos: number) => string; + protected customerCardBlock: (pos: number) => string; - private readonly customerCardNameTitle: (pos: number) => string; + protected customerCardNameTitle: (pos: number) => string; - private readonly customerCardBody: (pos: number) => string; + protected customerCardBody: (pos: number) => string; - private readonly customerCardChooseButton: (pos: number) => string; + protected customerCardChooseButton: (pos: number) => string; private readonly customerCardDetailButton: string; From 9c4cd26b5d0fd43d784614cfab7001492f869e8e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:10:29 +0200 Subject: [PATCH 469/609] Edit nth-child for customer card selection --- src/versions/1.6.1/pages/BO/orders/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index cd96e3d9e..690f22c38 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -16,7 +16,7 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Full results this.customerSearchFullResultsBlock = '#customers'; this.customerResultsBlock = `${this.customerSearchFullResultsBlock}`; - this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard(${pos})`; + this.customerCardBlock = (pos: number) => `${this.customerSearchFullResultsBlock} div.customerCard:nth-child(${pos})`; this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; From 134e7211708f999e9edcbc0876d9256cbf82b94c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 16:39:07 +0200 Subject: [PATCH 470/609] Override checkoutHistoryBlock locator for 1.6 --- src/versions/1.6.1/pages/BO/orders/create.ts | 3 +++ src/versions/develop/pages/BO/orders/create.ts | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 690f22c38..6b0014238 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -20,6 +20,9 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea this.customerCardNameTitle = (pos: number) => `${this.customerCardBlock(pos)} div.panel-heading`; this.customerCardBody = (pos: number) => `${this.customerCardBlock(pos)} panel span`; this.customerCardChooseButton = (pos: number) => `${this.customerCardBlock(pos)} button.setup-customer`; + + // Checkout history selectors + this.checkoutHistoryBlock = '#carts'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index 48e6d09f1..cae202255 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -55,7 +55,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly customerCardDetailButton: string; - private readonly checkoutHistoryBlock: string; + protected checkoutHistoryBlock: string; private readonly customerCartsTable: string; From a9f2e0f52ca0cc13518c67f5288e51d28df7d1c6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 30 Apr 2025 14:54:42 +0200 Subject: [PATCH 471/609] Add develop to require for lt than 9.0 --- src/pages/BO/login/index.ts | 2 +- src/versions/1.6.1/pages/BO/orders/create.ts | 2 ++ src/versions/develop/pages/BO/orders/create.ts | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index ab2e9932f..ed20f001e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -13,7 +13,7 @@ function requirePage(): LoginPageInterface { return require('@versions/1.7.8/pages/BO/login').loginPage; } if (semver.lt(psVersion, '9.0.0')) { - return require('@versions/8.2/pages/BO/login').loginPage; + return require('@versions/develop/pages/BO/login').loginPage; } return require('@versions/develop/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1/pages/BO/orders/create.ts b/src/versions/1.6.1/pages/BO/orders/create.ts index 6b0014238..3764215c4 100644 --- a/src/versions/1.6.1/pages/BO/orders/create.ts +++ b/src/versions/1.6.1/pages/BO/orders/create.ts @@ -23,6 +23,8 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Checkout history selectors this.checkoutHistoryBlock = '#carts'; + // Cart selectors + this.productSearchInput = '#product-search'; } } diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index cae202255..b1b112ee5 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -91,7 +91,7 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac private readonly orderUseButton: (row: number) => string; - private readonly productSearchInput: string; + protected productSearchInput: string; private readonly noProductFoundAlert: string; From 7530a906ab28dd629858e884149f6e0f8bbb4cbb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 10:44:47 +0200 Subject: [PATCH 472/609] Remove readonly for name and transit name to carrier --- src/data/faker/carrier.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/data/faker/carrier.ts b/src/data/faker/carrier.ts index f83ea6805..93afdc607 100644 --- a/src/data/faker/carrier.ts +++ b/src/data/faker/carrier.ts @@ -18,9 +18,9 @@ export default class FakerCarrier { public readonly position: number; - public readonly name: string; + public name: string; - public readonly transitName: string; + public transitName: string; public readonly speedGrade: number; From 242a40c47eca4db6f6197976e68c0c23378f7238 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:00:21 +0200 Subject: [PATCH 473/609] Add carriers for 1.7.7 --- src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts new file mode 100644 index 000000000..81ebe88aa --- /dev/null +++ b/src/versions/1.7.7/pages/BO/carriers/index.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; +import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; + + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; + } +} + +module.exports = new BOCarriersPage(); From f0399f94a6993fdd6609daa24a526fa977a4ad29 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:17:12 +0200 Subject: [PATCH 474/609] Add condition to main carriers page --- src/pages/BO/shipping/carriers/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 126e21048..423962b7e 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -22,4 +22,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); +export default requirePage(); \ No newline at end of file From 82f735178443a2309a9f6b0d0d727ff4b6dfd2a4 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:24:42 +0200 Subject: [PATCH 475/609] Move carriers folder to shipping folder --- src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ------------------ .../1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 2 files changed, 2 insertions(+), 18 deletions(-) delete mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts deleted file mode 100644 index 81ebe88aa..000000000 --- a/src/versions/1.7.7/pages/BO/carriers/index.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Import pages -import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; -import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; - - -class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { - /** - * @constructs - * Setting up texts and selectors to use in orders page - */ - constructor() { - super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; - } -} - -module.exports = new BOCarriersPage(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 9a5704c86648d9868898aab7a12439c02f28ec54 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 17:11:00 +0200 Subject: [PATCH 476/609] Add 1.7.7 version for addresses create --- src/pages/BO/shipping/carriers/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/shipping/carriers/index.ts b/src/pages/BO/shipping/carriers/index.ts index 423962b7e..126e21048 100644 --- a/src/pages/BO/shipping/carriers/index.ts +++ b/src/pages/BO/shipping/carriers/index.ts @@ -22,4 +22,4 @@ function requirePage(): BOCarriersPageInterface { } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ -export default requirePage(); \ No newline at end of file +export default requirePage(); From 448faf9191ee2126280566809f9f98a8e22802d8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:59:10 +0200 Subject: [PATCH 477/609] Add page title and success message to 1.7.7 --- .../1.7.7/pages/BO/customers/addresses/create.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 07b98b822..1ec35207e 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -7,11 +7,16 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + constructor() { + super(); + + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); From b7ca28337baafc89e0e4f054b6384740460177d1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 12:11:47 +0200 Subject: [PATCH 478/609] Fix description in jsdocs --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From b5dd8cfb29ee324214c0614bc7e4e20e37de7e78 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:19:42 +0200 Subject: [PATCH 479/609] Re-add carrier create page link --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 6df6b5da50ac8df6ccc3a2d135d1fec9bdaedad9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:36:05 +0200 Subject: [PATCH 480/609] implement version for addresses index --- .../1.7.7/pages/BO/customers/addresses/create.ts | 15 +++++++-------- .../1.7.7/pages/BO/customers/addresses/index.ts | 2 ++ .../8.2/pages/BO/customers/addresses/create.ts | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 1ec35207e..19dfe39b4 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -7,16 +7,15 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 519ce98b9..16f824136 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -13,7 +13,9 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; } } diff --git a/src/versions/8.2/pages/BO/customers/addresses/create.ts b/src/versions/8.2/pages/BO/customers/addresses/create.ts index 30719d699..e56356228 100644 --- a/src/versions/8.2/pages/BO/customers/addresses/create.ts +++ b/src/versions/8.2/pages/BO/customers/addresses/create.ts @@ -9,7 +9,7 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - // Title and messages + // Title and messages this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; } } From 62b67237a956768e51869598515ab42f3a5bdacd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:06:21 +0200 Subject: [PATCH 481/609] Add temp log for debug --- src/versions/1.7.7/pages/BO/orders/create.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 13a686d06..f02db44ee 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,5 +1,6 @@ // Import pages import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; +import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { @@ -10,6 +11,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea constructor() { super(); } + + /** + * Choose addresses in form + * @param page {Page} Browser tab + * @param deliveryAddress {string} Delivery address to choose + * @param invoiceAddress {string} Invoice address to choose + * @returns {Promise} + */ + async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { + console.log(deliveryAddress); + await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); + await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + } } const boOrderCreatePage = new BOOrderCreatePage(); From 9ac86449db8aae1e510ba2326080813f1eac5021 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:06:18 +0200 Subject: [PATCH 482/609] Override createOrder function for 1.7.7 version --- src/versions/1.7.7/pages/BO/orders/create.ts | 42 ++++++++++++++++---- 1 file changed, 35 insertions(+), 7 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index f02db44ee..75b9009db 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,4 +1,5 @@ // Import pages +import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; @@ -13,16 +14,43 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea } /** - * Choose addresses in form + * Create order with existing customer * @param page {Page} Browser tab - * @param deliveryAddress {string} Delivery address to choose - * @param invoiceAddress {string} Invoice address to choose + * @param orderToMake {FakerOrder} Order data to create + * @param isNewCustomer {boolean} True if the customer is new * @returns {Promise} */ - async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { - console.log(deliveryAddress); - await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); - await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + async createOrder(page: Page, orderToMake: FakerOrder, isNewCustomer: boolean = false): Promise { + // Choose customer + // If it's a new customer, the creation of customer should be done in test + // with add customer page + if (!isNewCustomer) { + await this.searchCustomer(page, orderToMake.customer.email); + } + + // Choose customer after search or creation + await this.chooseCustomer(page, 1); + + // Add products to carts + for (let i = 0; i < orderToMake.products.length; i++) { + await this.addProductToCart( + page, orderToMake.products[i].product, orderToMake.products[i].product.name, orderToMake.products[i].quantity); + } + + // Choose address + await this.chooseAddresses(page, orderToMake.deliveryAddress.alias, orderToMake.invoiceAddress.alias); + + // Choose delivery options + await this.setDeliveryOption(page, orderToMake.deliveryOption.name, orderToMake.deliveryOption.freeShipping); + + // Choose payment method + await this.setPaymentMethod(page, orderToMake.paymentMethod.moduleName); + + // Set order status + await this.setOrderStatus(page, orderToMake.status); + + // Create the order + await this.clickAndWaitForURL(page, this.createOrderButton); } } From c9e6939d135d47a88c55195e581958599222cc16 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 10:26:02 +0200 Subject: [PATCH 483/609] Override paymentMethodSelect for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 75b9009db..17e11ba2e 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -3,6 +3,7 @@ import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; +import {modPsGdprBoMain} from '../../../../../index'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** From 8818e278346b1f2b3cdb67af4a349c148359430b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:23:08 +0200 Subject: [PATCH 484/609] Override setPaymentMethod for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 17e11ba2e..5844e48e3 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,9 +1,8 @@ // Import pages -import type FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; -import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -import {modPsGdprBoMain} from '../../../../../index'; +// Imports from playwright +import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -53,6 +52,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea // Create the order await this.clickAndWaitForURL(page, this.createOrderButton); } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); +/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); + await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); + await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ + } } const boOrderCreatePage = new BOOrderCreatePage(); From 5043a44b8429938debdd9fe9c18c3f9ba5a4651a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:28:55 +0200 Subject: [PATCH 485/609] Remove unwanted comments --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 5844e48e3..85b0c9356 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -61,9 +61,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); -/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); - await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); - await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ } } From ee8f86fd5e7817f50bcee47e71b7231e969b87d1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 13:57:15 +0200 Subject: [PATCH 486/609] Move selector override from 1.7.7 to 8.2 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 19dfe39b4..07b98b822 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -9,10 +9,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } From f5a2bbbda2795841e227a01617bf08b58a3fa685 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:08:00 +0200 Subject: [PATCH 487/609] Move carrier button selector override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 3f9358fe0419489243638a5010e3601114d1e2c1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:20:12 +0200 Subject: [PATCH 488/609] Move adress creation success message from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/customers/addresses/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 16f824136..519ce98b9 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -13,9 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; } } From 776e66e7e88d21ca4c6bac97c5591cdb09b48102 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:56:00 +0200 Subject: [PATCH 489/609] Move order setPaymentMethod override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/orders/create.ts | 1 + src/versions/1.7.8/pages/BO/orders/create.ts | 18 +++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 85b0c9356..93438f56a 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,4 +1,5 @@ // Import pages +import FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; // Imports from playwright diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index 16725be4c..1d4cb7029 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -8,22 +8,22 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } - /** + /** * Set payment method * @param page {Page} Browser tab * @param paymentMethodModuleName {string} Payment method to choose * @returns {Promise} */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); - } + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); + } } const boOrderCreatePage = new BOOrderCreatePage(); From 8089397d1b7650caa5ea46f5d6a0f3b64b3bb019 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 10:44:58 +0200 Subject: [PATCH 490/609] Add login compatibility for 1.6.1.24 --- src/data/faker/cmsPage.ts | 2 +- src/pages/BO/login/index.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 21 +++++++++++++++++++ .../8.2/pages/BO/shipping/carriers/index.ts | 4 ++-- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../develop/pages/BO/searchResults.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 11 files changed, 47 insertions(+), 23 deletions(-) create mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index 9e2cf6c42..dea1cf4a1 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index the page */ + /** @type {boolean} True to index.ts the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index ed20f001e..a2759a9f3 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/login').loginPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts new file mode 100644 index 000000000..94bf43565 --- /dev/null +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {LoginPageInterface} from '@interfaces/BO/login'; +import {LoginPage} from '@versions/1.7.2/pages/BO/login'; + +/** + * Bo login page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOLoginVersion extends LoginPage implements LoginPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on login page + */ + constructor() { + super(); + } +} + +module.exports = new BOLoginVersion(); + diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 5d0c73525..a3e0747d2 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index. in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 66053f27a..937e704b0 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0bd20a8ad..0441624e0 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 449d1b95e..9e46a7b31 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index cc0d3261e..e66d8b17a 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index a87f8bdd7..774b69fff 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index" + * Click "Add missing products to the index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index" + * Click "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index" + * Click on the cron jon link for "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 59282a9c9..1d776ba58 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index) is added to a wishlist + * Check if a product (based on its index.ts) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index d666b2c44..9cd38f119 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 613a0bcf4521019969519c6b2f2a65842a889bd7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:26:10 +0200 Subject: [PATCH 491/609] Remove unwanted changes --- src/data/faker/cmsPage.ts | 2 +- src/versions/1.6.1.24/pages/BO/login/index.ts | 9 ++++----- src/versions/1.7.8/pages/BO/orders/create.ts | 18 +++++++++--------- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 +++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../develop/pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 9 files changed, 33 insertions(+), 34 deletions(-) diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index dea1cf4a1..9e2cf6c42 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index.ts the page */ + /** @type {boolean} True to index the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts index 94bf43565..fbb75adbe 100644 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -8,14 +8,13 @@ import {LoginPage} from '@versions/1.7.2/pages/BO/login'; * @extends ProductsPage */ class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on login page */ - constructor() { - super(); - } + constructor() { + super(); + } } module.exports = new BOLoginVersion(); - diff --git a/src/versions/1.7.8/pages/BO/orders/create.ts b/src/versions/1.7.8/pages/BO/orders/create.ts index 1d4cb7029..16725be4c 100644 --- a/src/versions/1.7.8/pages/BO/orders/create.ts +++ b/src/versions/1.7.8/pages/BO/orders/create.ts @@ -8,22 +8,22 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Summary selectors - this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; - } + // Summary selectors + this.paymentMethodSelect = `${this.summaryBlock} #cart_summary_payment_module`; + } - /** + /** * Set payment method * @param page {Page} Browser tab * @param paymentMethodModuleName {string} Payment method to choose * @returns {Promise} */ - async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { - await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); - } + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); + } } const boOrderCreatePage = new BOOrderCreatePage(); diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 937e704b0..66053f27a 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0441624e0..0bd20a8ad 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index e66d8b17a..cc0d3261e 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index 774b69fff..a87f8bdd7 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index.ts" + * Click "Add missing products to the index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index.ts" + * Click "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index.ts" + * Click on the cron jon link for "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 1d776ba58..59282a9c9 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index.ts) is added to a wishlist + * Check if a product (based on its index) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index 9cd38f119..d666b2c44 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -206,7 +206,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -216,7 +216,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -456,7 +456,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 6c75a4f5055b5d61ae738c1e6d14d840e4c6b31a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:28:06 +0200 Subject: [PATCH 492/609] Remove unwanted changes part2 --- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index a3e0747d2..55503ee50 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From b4d0d8b55f117a45a8205e7339d79170b65a0659 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:30:23 +0200 Subject: [PATCH 493/609] Remove unwanted changes part3 --- src/versions/develop/pages/BO/searchResults.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 9e46a7b31..449d1b95e 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From 22462771436413e81af54110cfae7f4642f3b391 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:52:13 +0200 Subject: [PATCH 494/609] Add compat requirement in pages --- src/pages/BO/shipping/carriers/create.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 20 ------------------- 2 files changed, 3 insertions(+), 20 deletions(-) delete mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index 4adcd9105..a6797ab73 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts deleted file mode 100644 index fbb75adbe..000000000 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Import pages -import type {LoginPageInterface} from '@interfaces/BO/login'; -import {LoginPage} from '@versions/1.7.2/pages/BO/login'; - -/** - * Bo login page, contains functions that can be used on the page - * @class - * @extends ProductsPage - */ -class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** - * @constructs - * Setting up texts and selectors to use on login page - */ - constructor() { - super(); - } -} - -module.exports = new BOLoginVersion(); From 15a3b7ed6a78a8e083a062c7ca7516014a3bb5fd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:00:38 +0200 Subject: [PATCH 495/609] Remove temporary carriersCreate --- src/pages/BO/shipping/carriers/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index a6797ab73..4adcd9105 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/shipping/carriers/create').boCarriersCreatePage; - } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } From 7594bfa94ef8cb4f99b2a92adb7e40c5bf9bcfd4 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:09:12 +0200 Subject: [PATCH 496/609] Remove temporary login require --- src/pages/BO/login/index.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index a2759a9f3..ed20f001e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/login').loginPage; - } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } From ab8fc48b38f3ca6d90da5a27ecc9ef41fc8a6fe9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:58:33 +0200 Subject: [PATCH 497/609] Try implementes carriers link to 1.6.1 --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1d40d1dd1..ddd896054 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -7,6 +7,8 @@ import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dash * @extends DashboardPage */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { + private shippingLink: string; + private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page @@ -19,6 +21,7 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; + this.carriersLink = '#subtab-AdminCarriers'; } } From b85c1af261792c73148dfa062fd884856423e2d3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:16:18 +0200 Subject: [PATCH 498/609] Correctly implementes Dashboard --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index ddd896054..3c8e14b06 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -7,8 +7,6 @@ import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dash * @extends DashboardPage */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { - private shippingLink: string; - private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page From 794b3f7a3404dad9db825e7dbfefee6b82f05007 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 11:59:14 +0200 Subject: [PATCH 499/609] Override createEditAdress --- .../pages/BO/customers/addresses/create.ts | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..1a7f262a6 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,6 +2,8 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; +import testContext from '@utils/test'; +import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -101,15 +103,18 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { + const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); + if (semver.gt(psVersion, '7.0.0')) { + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); + } } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From be489eca3ad78d3e303d6901a56455d5495cec3e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:04:18 +0200 Subject: [PATCH 500/609] Total override createEditAddress for 1.6 --- .../pages/BO/customers/addresses/create.ts | 1 + .../pages/BO/customers/addresses/create.ts | 19 +++++++------------ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 0c53c68d2..98fa0e51b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -3,6 +3,7 @@ import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import type {Frame, Page} from '@playwright/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; +import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 1a7f262a6..5ece97a48 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -2,8 +2,6 @@ import type FakerAddress from '@data/faker/address'; import {type BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import BOBasePage from '@pages/BO/BOBasePage'; import {type Frame, type Page} from '@playwright/test'; -import testContext from '@utils/test'; -import semver from 'semver'; /** * Add address page, contains functions that can be used on the page @@ -103,18 +101,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI save: boolean = true, waitForNavigation: boolean = true, ): Promise { - const psVersion = testContext.getPSVersion(); if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if (semver.gt(psVersion, '7.0.0')) { - if ('keyboard' in page) { - await page.keyboard.press('Tab'); - } - if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, - }); - } + if ('keyboard' in page) { + await page.keyboard.press('Tab'); + } + if ('waitForResponse' in page) { + await page.waitForResponse('**/sell/customers/customer-information**', { + timeout: 2000, + }); } } await this.setValue(page, this.customerAddressdniInput, addressData.dni); From b9cdaa97e4434431b56d311bdebd36f2e0674aac Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:07:47 +0200 Subject: [PATCH 501/609] Add missing locator --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 98fa0e51b..0c53c68d2 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -3,7 +3,6 @@ import type FakerAddress from '@data/faker/address'; import {BOAddressesCreatePageInterface} from '@interfaces/BO/customers/addresses/create'; import type {Frame, Page} from '@playwright/test'; import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7.7/pages/BO/customers/addresses/create'; -import semver from 'semver'; class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; From 8da4498df18ffda31e08baaa3645f7b1b857597f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:16:44 +0200 Subject: [PATCH 502/609] Update alert block locators --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 2 ++ src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 0c53c68d2..62461ab72 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,6 +12,8 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Alert Text diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c02e580f6..93c34a89b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -17,6 +17,11 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; } } From 056fa7fcfd6cc049e448493b755a38c24effc861 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:18:39 +0200 Subject: [PATCH 503/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/create.ts | 2 -- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 62461ab72..0c53c68d2 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -12,8 +12,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; // Title this.pageTitleCreate = `Addresses > Add new • ${global.INSTALL.SHOP_NAME}`; // Alert Text diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 93c34a89b..d8e33b18d 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,7 +13,8 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - this.successfulCreationMessage = '× Successful creation'; + // Successful Messages + this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From 0c22713b90d7371660efa6028dc25e813023e9b1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:27:44 +0200 Subject: [PATCH 504/609] Update success block --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index d8e33b18d..c7f3a47f4 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,8 +13,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); - // Successful Messages - this.successfulCreationMessage = 'Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; @@ -23,6 +21,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.alertTextBlock = `${this.alertBlock}`; this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From eefcbc7134d960b8b62c81459b1900c0195d3825 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:32:38 +0200 Subject: [PATCH 505/609] Override save and getSuccessTxt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c7f3a47f4..4e3a4510c 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -16,12 +16,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; - // Alert Text - this.alertBlock = 'div.alert'; - this.alertTextBlock = `${this.alertBlock}`; - this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; - this.alertSuccessBlock = `${this.alertBlock}.alert-success`; - this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From 64cc23830873d0e0016caa3c2dff916593b32ec5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:35:20 +0200 Subject: [PATCH 506/609] Update successful creation txt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 4e3a4510c..c02e580f6 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -13,6 +13,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI */ constructor() { super(); + this.successfulCreationMessage = '× Successful creation'; this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; From 8b36515cf2d24bdb16ce7899a399414f9b498e95 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 15:09:24 +0200 Subject: [PATCH 507/609] Add OrderParentLink for 1.6 --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 3c8e14b06..1d40d1dd1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -19,7 +19,6 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; - this.carriersLink = '#subtab-AdminCarriers'; } } From f321ad4b8def79ec297512eff6a5b7656e776b2d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:27:30 +0200 Subject: [PATCH 508/609] Update pdfjs version to try remove unwanted warning logs --- package-lock.json | 1410 +++++++++++++++++++++++++++++++-------------- package.json | 2 +- 2 files changed, 987 insertions(+), 425 deletions(-) diff --git a/package-lock.json b/package-lock.json index 57c07cfe1..800ac0454 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^3.6.172", + "pdfjs-dist": "^4.10.38", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" @@ -53,6 +53,18 @@ "node": ">=0.10.0" } }, + "node_modules/@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "dependencies": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, "node_modules/@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -242,6 +254,111 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "dependencies": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", @@ -477,6 +594,7 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, + "peer": true, "dependencies": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -492,6 +610,177 @@ "node-pre-gyp": "bin/node-pre-gyp" } }, + "node_modules/@napi-rs/canvas": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", + "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "optional": true, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@napi-rs/canvas-android-arm64": "0.1.74", + "@napi-rs/canvas-darwin-arm64": "0.1.74", + "@napi-rs/canvas-darwin-x64": "0.1.74", + "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", + "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", + "@napi-rs/canvas-linux-arm64-musl": "0.1.74", + "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-musl": "0.1.74", + "@napi-rs/canvas-win32-x64-msvc": "0.1.74" + } + }, + "node_modules/@napi-rs/canvas-android-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", + "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-darwin-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", + "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-darwin-x64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", + "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm-gnueabihf": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", + "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", + "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-arm64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", + "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-riscv64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", + "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", + "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-linux-x64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", + "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@napi-rs/canvas-win32-x64-msvc": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", + "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -919,7 +1208,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true + "optional": true, + "peer": true }, "node_modules/accepts": { "version": "1.3.8", @@ -972,6 +1262,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, + "peer": true, "dependencies": { "debug": "4" }, @@ -1030,10 +1321,11 @@ } }, "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "optional": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "optional": true, + "peer": true }, "node_modules/are-we-there-yet": { "version": "2.0.0", @@ -1041,6 +1333,7 @@ "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -1435,21 +1728,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "hasInstallScript": true, - "optional": true, - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/cfb": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", @@ -1515,15 +1793,6 @@ "node": ">= 6" } }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "engines": { - "node": ">=10" - } - }, "node_modules/codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -1552,6 +1821,7 @@ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "optional": true, + "peer": true, "bin": { "color-support": "bin.js" } @@ -1641,7 +1911,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/content-disposition": { "version": "0.5.4", @@ -1719,16 +1990,22 @@ } }, "node_modules/cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", "dependencies": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" }, "engines": { "node": ">=18" } }, + "node_modules/cssstyle/node_modules/rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" + }, "node_modules/csv-writer": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/csv-writer/-/csv-writer-1.6.0.tgz", @@ -1746,6 +2023,37 @@ "node": ">=18" } }, + "node_modules/data-urls/node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/data-urls/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/data-urls/node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", @@ -1817,21 +2125,9 @@ } }, "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" - }, - "node_modules/decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "dependencies": { - "mimic-response": "^2.0.0" - }, - "engines": { - "node": ">=8" - } + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, "node_modules/deep-is": { "version": "0.1.4", @@ -1885,7 +2181,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/depd": { "version": "2.0.0", @@ -1905,10 +2202,11 @@ } }, "node_modules/detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -2048,7 +2346,8 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true + "optional": true, + "peer": true }, "node_modules/encodeurl": { "version": "2.0.0", @@ -2118,6 +2417,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, "engines": { "node": ">=0.12" }, @@ -3148,6 +3448,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, + "peer": true, "dependencies": { "minipass": "^3.0.0" }, @@ -3160,6 +3461,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -3231,6 +3533,7 @@ "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -3518,7 +3821,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/hasown": { "version": "2.0.2", @@ -3603,9 +3907,9 @@ } }, "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "engines": { "node": ">= 14" } @@ -3615,6 +3919,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, + "peer": true, "dependencies": { "agent-base": "6", "debug": "4" @@ -3888,6 +4193,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -4177,72 +4483,13 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "dependencies": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "canvas": "^2.11.2" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", - "engines": { - "node": ">= 14" - } - }, - "node_modules/jsdom/node_modules/https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "dependencies": { - "agent-base": "^7.1.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" }, "engines": { "node": ">=4" @@ -4334,6 +4581,11 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "node_modules/maildev": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", @@ -4362,6 +4614,30 @@ "node": ">=18.0.0" } }, + "node_modules/maildev/node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/maildev/node_modules/canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "hasInstallScript": true, + "optional": true, + "peer": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/maildev/node_modules/commander": { "version": "12.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", @@ -4370,11 +4646,132 @@ "node": ">=18" } }, + "node_modules/maildev/node_modules/decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "peer": true, + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/maildev/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/maildev/node_modules/jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "dependencies": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/maildev/node_modules/mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/maildev/node_modules/simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "optional": true, + "peer": true, + "dependencies": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/maildev/node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/maildev/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/maildev/node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, + "peer": true, "dependencies": { "semver": "^6.0.0" }, @@ -4390,6 +4787,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "optional": true, + "peer": true, "bin": { "semver": "bin/semver.js" } @@ -4485,18 +4883,6 @@ "node": ">= 0.6" } }, - "node_modules/mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -4527,6 +4913,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "optional": true, + "peer": true, "engines": { "node": ">=8" } @@ -4536,6 +4923,7 @@ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, + "peer": true, "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -4549,6 +4937,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "dependencies": { "yallist": "^4.0.0" }, @@ -4561,6 +4950,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "optional": true, + "peer": true, "bin": { "mkdirp": "bin/cmd.js" }, @@ -4587,10 +4977,11 @@ } }, "node_modules/nan": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", - "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==", - "optional": true + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", + "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", + "optional": true, + "peer": true }, "node_modules/natural-compare": { "version": "1.4.0", @@ -4611,6 +5002,7 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, + "peer": true, "dependencies": { "whatwg-url": "^5.0.0" }, @@ -4626,28 +5018,6 @@ } } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/nodemailer": { "version": "6.9.16", "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.16.tgz", @@ -4661,6 +5031,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, + "peer": true, "dependencies": { "abbrev": "1" }, @@ -4686,6 +5057,7 @@ "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "deprecated": "This package is no longer supported.", "optional": true, + "peer": true, "dependencies": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -4694,9 +5066,9 @@ } }, "node_modules/nwsapi": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.16.tgz", - "integrity": "sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==" + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" }, "node_modules/object-assign": { "version": "4.1.1", @@ -4919,16 +5291,27 @@ } }, "node_modules/parse5": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz", - "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "dependencies": { - "entities": "^4.5.0" + "entities": "^6.0.0" }, "funding": { "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/parse5/node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -4984,27 +5367,15 @@ "node": ">=8" } }, - "node_modules/path2d-polyfill": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", - "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==", - "engines": { - "node": ">=8" - } - }, "node_modules/pdfjs-dist": { - "version": "3.6.172", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.6.172.tgz", - "integrity": "sha512-bfOhCg+S9DXh/ImWhWYTOiq3aVMFSCvzGiBzsIJtdMC71kVWDBw7UXr32xh0y56qc5wMVylIeqV3hBaRsu+e+w==", - "dependencies": { - "path2d-polyfill": "^2.0.1", - "web-streams-polyfill": "^3.2.1" - }, + "version": "4.10.38", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", + "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", "engines": { - "node": ">=16" + "node": ">=20" }, "optionalDependencies": { - "canvas": "^2.11.2" + "@napi-rs/canvas": "^0.1.65" } }, "node_modules/picomatch": { @@ -5203,6 +5574,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5541,7 +5913,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true + "optional": true, + "peer": true }, "node_modules/set-function-length": { "version": "1.2.2", @@ -5693,7 +6066,8 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true + "optional": true, + "peer": true }, "node_modules/simple-concat": { "version": "1.0.1", @@ -5713,18 +6087,8 @@ "url": "https://feross.org/support" } ], - "optional": true - }, - "node_modules/simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "dependencies": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } + "peer": true }, "node_modules/slash": { "version": "3.0.0", @@ -5853,6 +6217,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, + "peer": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -5862,6 +6227,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, + "peer": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -6008,6 +6374,7 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, + "peer": true, "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -6020,6 +6387,16 @@ "node": ">=10" } }, + "node_modules/tar/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -6070,15 +6447,11 @@ } }, "node_modules/tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "dependencies": { - "punycode": "^2.3.1" - }, - "engines": { - "node": ">=18" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true, + "peer": true }, "node_modules/ts-api-utils": { "version": "1.3.0", @@ -6394,7 +6767,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true + "optional": true, + "peer": true }, "node_modules/utils-merge": { "version": "1.0.1", @@ -6438,21 +6812,12 @@ "node": ">=18" } }, - "node_modules/web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", - "engines": { - "node": ">= 8" - } - }, "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "engines": { - "node": ">=12" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true, + "peer": true }, "node_modules/whatwg-encoding": { "version": "3.1.1", @@ -6485,15 +6850,14 @@ } }, "node_modules/whatwg-url": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", - "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "peer": true, "dependencies": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=18" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "node_modules/which": { @@ -6605,6 +6969,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, + "peer": true, "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -6637,9 +7002,9 @@ "devOptional": true }, "node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", "engines": { "node": ">=10.0.0" }, @@ -6698,7 +7063,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true + "optional": true, + "peer": true }, "node_modules/yn": { "version": "3.1.1", @@ -6729,6 +7095,18 @@ "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", "dev": true }, + "@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "requires": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, "@babel/code-frame": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", @@ -6875,6 +7253,37 @@ } } }, + "@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==" + }, + "@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "requires": {} + }, + "@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "requires": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + } + }, + "@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "requires": {} + }, + "@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==" + }, "@eslint-community/eslint-utils": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", @@ -7046,6 +7455,7 @@ "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", "optional": true, + "peer": true, "requires": { "detect-libc": "^2.0.0", "https-proxy-agent": "^5.0.0", @@ -7058,6 +7468,84 @@ "tar": "^6.1.11" } }, + "@napi-rs/canvas": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.74.tgz", + "integrity": "sha512-pOIyzuS+5Bz1vAhD7tdhaw5/936mMJZUn4aVajojUdjYOGSWmfpDYSgt0nQLZPZVN5GLgWgutqXPOi7Jsm3k+Q==", + "optional": true, + "requires": { + "@napi-rs/canvas-android-arm64": "0.1.74", + "@napi-rs/canvas-darwin-arm64": "0.1.74", + "@napi-rs/canvas-darwin-x64": "0.1.74", + "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.74", + "@napi-rs/canvas-linux-arm64-gnu": "0.1.74", + "@napi-rs/canvas-linux-arm64-musl": "0.1.74", + "@napi-rs/canvas-linux-riscv64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-gnu": "0.1.74", + "@napi-rs/canvas-linux-x64-musl": "0.1.74", + "@napi-rs/canvas-win32-x64-msvc": "0.1.74" + } + }, + "@napi-rs/canvas-android-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.74.tgz", + "integrity": "sha512-aq5ode+9Z/ZR0H485dI2jdRdttg/hl9Ob+iPCt0nj+QFiirpxDrbUHKeTZWQWEtkWyC7vI5R2dMTbDINBfl9eg==", + "optional": true + }, + "@napi-rs/canvas-darwin-arm64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.74.tgz", + "integrity": "sha512-eO5Miz+ef1dEQyUMWDdcbAb1Wr7yMyxD9/CL9d4frQxO4pTTaCiMBUWup8XDPLr/g7XkSkGCZLP47xiXiyXSpQ==", + "optional": true + }, + "@napi-rs/canvas-darwin-x64": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.74.tgz", + "integrity": "sha512-0EkO0IFkps7C3JpKC7lbM3IL+QDUYeUKagHLDbUry4PeQTghxp6JcgccpmU32ZbpFZgPnm7o0tTJO0J1d8S2rA==", + "optional": true + }, + "@napi-rs/canvas-linux-arm-gnueabihf": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.74.tgz", + "integrity": "sha512-qAVJEN2JqGayEI1kSpJy1Xr6ZmCFV9QhRyV35yWsS7e9X1jm+T4DAlCxI4PlKIlqVSzYMYhKrxchST20XBSzHg==", + "optional": true + }, + "@napi-rs/canvas-linux-arm64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.74.tgz", + "integrity": "sha512-lOnop22qy6MYxI94GGunMMjo6D80I//2W/6pqKUfwXaDQtOfvHsTcVVzDu5cFXUTNrb9ZRfMCeol5YEd+9FJvg==", + "optional": true + }, + "@napi-rs/canvas-linux-arm64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.74.tgz", + "integrity": "sha512-tfFqLHGtSEabBigOnPUfZviSTGmW2xHv5tYZYPBWmgGiTkoNJ7lEWFUxHjwvV5HXGqLs8ok/O7g1enSpxO6lmQ==", + "optional": true + }, + "@napi-rs/canvas-linux-riscv64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.74.tgz", + "integrity": "sha512-j6H9dHTMtr1y3tu/zGm1ythYIL9vTl4EEv9f6CMx0n3Zn2M+OruUUwh9ylCj4afzSNEK9T8cr6zMnmTPzkpBvQ==", + "optional": true + }, + "@napi-rs/canvas-linux-x64-gnu": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.74.tgz", + "integrity": "sha512-73DIV4E7Y9CpIJuUXVl9H6+MEQXyRy4VJQoUGA1tOlcKQiStxqhq6UErL4decI28NxjyQXBhtYZKj5q8AJEuOg==", + "optional": true + }, + "@napi-rs/canvas-linux-x64-musl": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.74.tgz", + "integrity": "sha512-FgDMEFdGIJT3I2xejflRJ82/ZgDphyirS43RgtoLaIXI6zihLiZcQ7rczpqeWgAwlJNjR0He2EustsKe1SkUOg==", + "optional": true + }, + "@napi-rs/canvas-win32-x64-msvc": { + "version": "0.1.74", + "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.74.tgz", + "integrity": "sha512-x6bhwlhn0wU7dfiP46mt5Bi6PowSUH4CJ4PTzGj58LRQ1HVasEIJgoMx7MLC48F738eJpzbfg3WR/D8+e9CeTA==", + "optional": true + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -7353,7 +7841,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true + "optional": true, + "peer": true }, "accepts": { "version": "1.3.8", @@ -7392,6 +7881,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "optional": true, + "peer": true, "requires": { "debug": "4" } @@ -7434,16 +7924,18 @@ } }, "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "optional": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.1.0.tgz", + "integrity": "sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew==", + "optional": true, + "peer": true }, "are-we-there-yet": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "optional": true, + "peer": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -7727,17 +8219,6 @@ "resolved": "https://registry.npmjs.org/camelize-ts/-/camelize-ts-3.0.0.tgz", "integrity": "sha512-cgRwKKavoDKLTjO4FQTs3dRBePZp/2Y9Xpud0FhuCOTE86M2cniKN4CCXgRnsyXNMmQMifVHcv6SPaMtTx6ofQ==" }, - "canvas": { - "version": "2.11.2", - "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", - "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", - "optional": true, - "requires": { - "@mapbox/node-pre-gyp": "^1.0.0", - "nan": "^2.17.0", - "simple-get": "^3.0.3" - } - }, "cfb": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.2.2.tgz", @@ -7785,12 +8266,6 @@ } } }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true - }, "codepage": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.15.0.tgz", @@ -7815,7 +8290,8 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "optional": true + "optional": true, + "peer": true }, "combined-stream": { "version": "1.0.8", @@ -7889,7 +8365,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true + "optional": true, + "peer": true }, "content-disposition": { "version": "0.5.4", @@ -7946,11 +8423,19 @@ } }, "cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", "requires": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" + }, + "dependencies": { + "rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==" + } } }, "csv-writer": { @@ -7965,6 +8450,30 @@ "requires": { "whatwg-mimetype": "^4.0.0", "whatwg-url": "^14.0.0" + }, + "dependencies": { + "tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "requires": { + "punycode": "^2.3.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "requires": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + } + } } }, "data-view-buffer": { @@ -8009,18 +8518,9 @@ } }, "decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" - }, - "decompress-response": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", - "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", - "optional": true, - "requires": { - "mimic-response": "^2.0.0" - } + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==" }, "deep-is": { "version": "0.1.4", @@ -8059,7 +8559,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true + "optional": true, + "peer": true }, "depd": { "version": "2.0.0", @@ -8072,10 +8573,11 @@ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" }, "detect-libc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", - "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", - "optional": true + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz", + "integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==", + "optional": true, + "peer": true }, "diff": { "version": "4.0.2", @@ -8170,7 +8672,8 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true + "optional": true, + "peer": true }, "encodeurl": { "version": "2.0.0", @@ -8215,7 +8718,8 @@ "entities": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true }, "es-abstract": { "version": "1.24.0", @@ -8994,6 +9498,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "optional": true, + "peer": true, "requires": { "minipass": "^3.0.0" }, @@ -9003,6 +9508,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "requires": { "yallist": "^4.0.0" } @@ -9051,6 +9557,7 @@ "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "optional": true, + "peer": true, "requires": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.2", @@ -9246,7 +9753,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true + "optional": true, + "peer": true }, "hasown": { "version": "2.0.2", @@ -9306,9 +9814,9 @@ }, "dependencies": { "agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==" + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" } } }, @@ -9317,6 +9825,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "optional": true, + "peer": true, "requires": { "agent-base": "6", "debug": "4" @@ -9495,7 +10004,8 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "optional": true + "optional": true, + "peer": true }, "is-generator-function": { "version": "1.1.0", @@ -9679,50 +10189,6 @@ "argparse": "^2.0.1" } }, - "jsdom": { - "version": "24.1.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", - "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", - "requires": { - "cssstyle": "^4.0.1", - "data-urls": "^5.0.0", - "decimal.js": "^10.4.3", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^4.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.5", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.12", - "parse5": "^7.1.2", - "rrweb-cssom": "^0.7.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.4", - "w3c-xmlserializer": "^5.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^3.1.1", - "whatwg-mimetype": "^4.0.0", - "whatwg-url": "^14.0.0", - "ws": "^8.18.0", - "xml-name-validator": "^5.0.0" - }, - "dependencies": { - "agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", - "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==" - }, - "https-proxy-agent": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", - "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", - "requires": { - "agent-base": "^7.1.2", - "debug": "4" - } - } - } - }, "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -9800,6 +10266,11 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, "maildev": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/maildev/-/maildev-2.2.1.tgz", @@ -9822,10 +10293,115 @@ "wildstring": "1.0.9" }, "dependencies": { + "agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==" + }, + "canvas": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/canvas/-/canvas-2.11.2.tgz", + "integrity": "sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==", + "optional": true, + "peer": true, + "requires": { + "@mapbox/node-pre-gyp": "^1.0.0", + "nan": "^2.17.0", + "simple-get": "^3.0.3" + } + }, "commander": { "version": "12.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==" + }, + "decompress-response": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", + "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", + "optional": true, + "peer": true, + "requires": { + "mimic-response": "^2.0.0" + } + }, + "https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "requires": { + "agent-base": "^7.1.2", + "debug": "4" + } + }, + "jsdom": { + "version": "24.1.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-24.1.3.tgz", + "integrity": "sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==", + "requires": { + "cssstyle": "^4.0.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.4", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + } + }, + "mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "optional": true, + "peer": true + }, + "simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "optional": true, + "peer": true, + "requires": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "requires": { + "punycode": "^2.3.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "requires": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + } } } }, @@ -9834,6 +10410,7 @@ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "optional": true, + "peer": true, "requires": { "semver": "^6.0.0" }, @@ -9842,7 +10419,8 @@ "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "optional": true + "optional": true, + "peer": true } } }, @@ -9906,12 +10484,6 @@ "mime-db": "1.52.0" } }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true - }, "minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -9931,13 +10503,15 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "optional": true + "optional": true, + "peer": true }, "minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "optional": true, + "peer": true, "requires": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -9948,6 +10522,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "optional": true, + "peer": true, "requires": { "yallist": "^4.0.0" } @@ -9958,7 +10533,8 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true + "optional": true, + "peer": true }, "ms": { "version": "2.1.2", @@ -9972,10 +10548,11 @@ "dev": true }, "nan": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", - "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==", - "optional": true + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz", + "integrity": "sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ==", + "optional": true, + "peer": true }, "natural-compare": { "version": "1.4.0", @@ -9993,32 +10570,9 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "optional": true, + "peer": true, "requires": { "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "optional": true - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "optional": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "optional": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } } }, "nodemailer": { @@ -10031,6 +10585,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "optional": true, + "peer": true, "requires": { "abbrev": "1" } @@ -10046,6 +10601,7 @@ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "optional": true, + "peer": true, "requires": { "are-we-there-yet": "^2.0.0", "console-control-strings": "^1.1.0", @@ -10054,9 +10610,9 @@ } }, "nwsapi": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.16.tgz", - "integrity": "sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==" + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==" }, "object-assign": { "version": "4.1.1", @@ -10209,11 +10765,18 @@ } }, "parse5": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.1.tgz", - "integrity": "sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "requires": { - "entities": "^4.5.0" + "entities": "^6.0.0" + }, + "dependencies": { + "entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==" + } } }, "parseurl": { @@ -10256,19 +10819,12 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, - "path2d-polyfill": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path2d-polyfill/-/path2d-polyfill-2.0.1.tgz", - "integrity": "sha512-ad/3bsalbbWhmBo0D6FZ4RNMwsLsPpL6gnvhuSaU5Vm7b06Kr5ubSltQQ0T7YKsiJQO+g22zJ4dJKNTXIyOXtA==" - }, "pdfjs-dist": { - "version": "3.6.172", - "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-3.6.172.tgz", - "integrity": "sha512-bfOhCg+S9DXh/ImWhWYTOiq3aVMFSCvzGiBzsIJtdMC71kVWDBw7UXr32xh0y56qc5wMVylIeqV3hBaRsu+e+w==", + "version": "4.10.38", + "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz", + "integrity": "sha512-/Y3fcFrXEAsMjJXeL9J8+ZG9U01LbuWaYypvDW2ycW1jL269L3js3DVBjDJ0Up9Np1uqDXsDrRihHANhZOlwdQ==", "requires": { - "canvas": "^2.11.2", - "path2d-polyfill": "^2.0.1", - "web-streams-polyfill": "^3.2.1" + "@napi-rs/canvas": "^0.1.65" } }, "picomatch": { @@ -10395,6 +10951,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "optional": true, + "peer": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -10621,7 +11178,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true + "optional": true, + "peer": true }, "set-function-length": { "version": "1.2.2", @@ -10728,24 +11286,15 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "optional": true + "optional": true, + "peer": true }, "simple-concat": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "optional": true - }, - "simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "optional": true, - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } + "peer": true }, "slash": { "version": "3.0.0", @@ -10839,6 +11388,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "optional": true, + "peer": true, "requires": { "safe-buffer": "~5.2.0" } @@ -10848,6 +11398,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, + "peer": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -10943,6 +11494,7 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "optional": true, + "peer": true, "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -10950,6 +11502,15 @@ "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" + }, + "dependencies": { + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "optional": true, + "peer": true + } } }, "text-table": { @@ -10990,12 +11551,11 @@ } }, "tr46": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", - "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", - "requires": { - "punycode": "^2.3.1" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "optional": true, + "peer": true }, "ts-api-utils": { "version": "1.3.0", @@ -11210,7 +11770,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "optional": true + "optional": true, + "peer": true }, "utils-merge": { "version": "1.0.1", @@ -11245,15 +11806,12 @@ "xml-name-validator": "^5.0.0" } }, - "web-streams-polyfill": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", - "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==" - }, "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "optional": true, + "peer": true }, "whatwg-encoding": { "version": "3.1.1", @@ -11279,12 +11837,14 @@ "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==" }, "whatwg-url": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.1.0.tgz", - "integrity": "sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "optional": true, + "peer": true, "requires": { - "tr46": "^5.0.0", - "webidl-conversions": "^7.0.0" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "which": { @@ -11362,6 +11922,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "optional": true, + "peer": true, "requires": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -11388,9 +11949,9 @@ "devOptional": true }, "ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", "requires": {} }, "xlsx": { @@ -11426,7 +11987,8 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "optional": true + "optional": true, + "peer": true }, "yn": { "version": "3.1.1", diff --git a/package.json b/package.json index 225da52f6..a63031987 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^3.6.172", + "pdfjs-dist": "^4.10.38", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From 830d78f928b9776340d4311d2b134c703b8a6190 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:30:20 +0200 Subject: [PATCH 509/609] Rollback --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a63031987..225da52f6 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^4.10.38", + "pdfjs-dist": "^3.6.172", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From a2b01ef3c5cdbfc2898f89d1f34a3f5e506bcc91 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Jul 2025 16:44:18 +0200 Subject: [PATCH 510/609] Edit goToProduct for classic FO --- src/versions/develop/pages/FO/classic/home/index.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index d666b2c44..b873b9b5d 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -200,7 +200,9 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { * @returns {Promise} */ async goToProductPage(page: Page, id: number): Promise { - await this.clickAndWaitForURL(page, this.productImg(id)); + //await this.clickAndWaitForURL(page, this.productImg(id)); + await page.locator(this.productImg(id)).click(); + await page.waitForLoadState('load'); } /** From e842c84fc9a8769f18e2f94a8b994fde99884c81 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 10:46:00 +0200 Subject: [PATCH 511/609] Increase timeout in createEditAddress --- src/versions/develop/pages/BO/customers/addresses/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index 5ece97a48..f685a6957 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -108,7 +108,7 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI } if ('waitForResponse' in page) { await page.waitForResponse('**/sell/customers/customer-information**', { - timeout: 2000, + timeout: 3000, }); } } From 597331bc04e0c7f4dc60a8c253f5fd9abbacbdd1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:22:45 +0200 Subject: [PATCH 512/609] Edit require for catalog/product/create/tabDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index aa76b143d..8149658c4 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,13 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + } + if (semver.lt(psVersion, '8.2.0')) { + return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; } From 38843d64309a80b8337976ddeefcb34ea0ac25b2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:51:36 +0200 Subject: [PATCH 513/609] Edit setProductDescription for 8.2.1 --- .../catalog/products/create/tabDescription.ts | 4 +- .../products/create/tabDescriptiion.ts | 47 +++++++++++++++++++ 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 8149658c4..dfaa16b0f 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.2.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts new file mode 100644 index 000000000..521652fae --- /dev/null +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -0,0 +1,47 @@ +// Import pages +import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; + +import type FakerProduct from '@data/faker/product'; + +import type {Page} from 'playwright'; + +/** + * Bo product description tab, contains functions that can be used on the page + * @class + * @extends DescriptionTab + */ +class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on description tab + */ + constructor() { + super(); + + this.descriptionTabLink = '#product_description-tab-nav'; + this.productShortDescriptionIframe = '#product_description_description_short'; + this.productDescriptionIframe = '#product_description_description'; + } + + /** + * Set product description + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in description form + * @returns {Promise} + */ + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } + + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } +} + +const descriptionTab = new BOProductTabDescriptionVersion(); +export {descriptionTab, BOProductTabDescriptionVersion}; From ba6f7974d9b89d518677b1d5104d3067eb737e65 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:25:43 +0200 Subject: [PATCH 514/609] Edit versionning for productDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index dfaa16b0f..47b2390a0 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '8.2.0')) { + if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; From 62acc4b36a6f66f29537717ce466f3cbb93e28f8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:33:29 +0200 Subject: [PATCH 515/609] Edit productDescription --- .../8.2/pages/BO/catalog/products/create/tabDescriptiion.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts index 521652fae..44ef1299c 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -1,6 +1,6 @@ // Import pages import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; -import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/develop/pages/BO/catalog/products/create/tabDescription'; import type FakerProduct from '@data/faker/product'; @@ -12,6 +12,9 @@ import type {Page} from 'playwright'; * @extends DescriptionTab */ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + private readonly productShortDescriptionIframe: string; + private readonly productDescriptionIframe: string; + private productWithCombinationsInput: string; /** * @constructs * Setting up texts and selectors to use on description tab @@ -22,6 +25,7 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.descriptionTabLink = '#product_description-tab-nav'; this.productShortDescriptionIframe = '#product_description_description_short'; this.productDescriptionIframe = '#product_description_description'; + this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } /** From 7073710abf9148b6118bd84bfef3b8698c548a24 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:41:22 +0200 Subject: [PATCH 516/609] Edit typo on file name --- .../products/create/{tabDescriptiion.ts => tabDescription.ts} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/versions/8.2/pages/BO/catalog/products/create/{tabDescriptiion.ts => tabDescription.ts} (100%) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts similarity index 100% rename from src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts rename to src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts From bf84db75da5fdbcfb1cf9047dc2eaf72f09fe5f8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 09:42:02 +0200 Subject: [PATCH 517/609] Remove function from 8.2 --- .../catalog/products/create/tabDescription.ts | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index 44ef1299c..fdff2c6e2 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -27,24 +27,6 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.productDescriptionIframe = '#product_description_description'; this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } - - /** - * Set product description - * @param page {Page} Browser tab - * @param productData {FakerProduct} Data to set in description form - * @returns {Promise} - */ - async setProductDescription(page: Page, productData: FakerProduct): Promise { - await this.waitForSelectorAndClick(page, this.descriptionTabLink); - if (productData.type === 'combinations') { - await page.locator(this.productWithCombinationsInput).click(); - } - - await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); - - await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); - await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); - } } const descriptionTab = new BOProductTabDescriptionVersion(); From 8c1db12648f219ec52e3f500a0d3cbb4261b7508 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 09:59:18 +0200 Subject: [PATCH 518/609] Rollback function delete --- .../catalog/products/create/tabDescription.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index fdff2c6e2..44ef1299c 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -27,6 +27,24 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.productDescriptionIframe = '#product_description_description'; this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } + + /** + * Set product description + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in description form + * @returns {Promise} + */ + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } + + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } } const descriptionTab = new BOProductTabDescriptionVersion(); From c85ae55e96602329fddd9313a94ab34472f2864f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 10:23:58 +0200 Subject: [PATCH 519/609] Add setProductName for 8.2 --- .../catalog/products/create/tabDescription.ts | 2 +- .../pages/BO/catalog/products/create/index.ts | 18 ++++++++++++++++++ .../pages/BO/catalog/products/create/index.ts | 2 +- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 47b2390a0..06871259e 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '9.0.0')) { + if (semver.lt(psVersion, '8.3.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } return require('@versions/develop/pages/BO/catalog/products/create/tabDescription').descriptionTab; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 249f1f452..478f0fba7 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,6 +19,24 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { + + /** + * Set product name + * @param page {Page} Browser tab + * @param name {string} Name of the product + * @param locale {string} Locale + * @returns {Promise} + */ + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); + } + + await this.setValue(page, this.productNameInput(locale), name); + } + /** * Set product * @param page {Page} Browser tab diff --git a/src/versions/develop/pages/BO/catalog/products/create/index.ts b/src/versions/develop/pages/BO/catalog/products/create/index.ts index fe90b5963..f37dbc245 100644 --- a/src/versions/develop/pages/BO/catalog/products/create/index.ts +++ b/src/versions/develop/pages/BO/catalog/products/create/index.ts @@ -45,7 +45,7 @@ class BOProductsCreatePage extends BOBasePage implements BOProductsCreatePageInt private readonly productNameLanguageDropdown: string; - private readonly productNameLanguageDropdownItem: (locale: string) => string; + protected readonly productNameLanguageDropdownItem: (locale: string) => string; private readonly productTypeLabel: string; From a8103f72bcdf177c70667d88751b353d21231c91 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 31 Jul 2025 14:46:29 +0200 Subject: [PATCH 520/609] Add search results classic page for 8.2 version --- src/pages/FO/classic/searchResults/index.ts | 7 ++++++ .../8.1/pages/FO/classic/home/index.ts | 2 +- .../pages/BO/catalog/products/create/index.ts | 3 ++- .../pages/FO/classic/searchResults/index.ts | 23 +++++++++++++++++++ 4 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 src/versions/8.2/pages/FO/classic/searchResults/index.ts diff --git a/src/pages/FO/classic/searchResults/index.ts b/src/pages/FO/classic/searchResults/index.ts index c8e0ec99c..37c2a65b3 100644 --- a/src/pages/FO/classic/searchResults/index.ts +++ b/src/pages/FO/classic/searchResults/index.ts @@ -1,7 +1,14 @@ import type {FoSearchResultsPageInterface} from '@interfaces/FO/searchResults'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): FoSearchResultsPageInterface { + if (semver.lt(psVersion, '8.3.0')) { + return require('@versions/8.2/pages/FO/classic/searchResults').searchResultsPage; + } return require('@versions/develop/pages/FO/classic/searchResults').searchResultsPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/8.1/pages/FO/classic/home/index.ts b/src/versions/8.1/pages/FO/classic/home/index.ts index 55fc4d96a..9b9e84e8a 100644 --- a/src/versions/8.1/pages/FO/classic/home/index.ts +++ b/src/versions/8.1/pages/FO/classic/home/index.ts @@ -1,6 +1,6 @@ // Import pages import type {FoHomePageInterface} from '@interfaces/FO/home'; -import {FoHomePage} from '@versions/develop/pages/FO/classic/home/index'; +import {FoHomePage} from '@versions/develop/pages/FO/classic/home'; /** * Order confirmation page, contains functions that can be used on the page diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 478f0fba7..a4950a672 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -50,7 +50,8 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd // Set description await descriptionTab.setProductDescription(page, productData); // Set name - await this.setProductName(page, productData.nameFR, 'fr'); + + //await this.setProductName(page, productData.nameFR, 'fr'); await this.setProductName(page, productData.name, 'en'); // Set status diff --git a/src/versions/8.2/pages/FO/classic/searchResults/index.ts b/src/versions/8.2/pages/FO/classic/searchResults/index.ts new file mode 100644 index 000000000..c8d3dfd29 --- /dev/null +++ b/src/versions/8.2/pages/FO/classic/searchResults/index.ts @@ -0,0 +1,23 @@ +// Import pages + +import {FoSearchResultsPageInterface} from '@interfaces/FO/searchResults'; +import {type Page} from '@playwright/test'; +import {SearchResultsPage} from '@versions/develop/pages/FO/classic/searchResults'; + +/** + * FO search Results page, contains functions that can be used on the page + * @class + * @extends SearchResultsPage + */ +class FoSearchResultsPageVersion extends SearchResultsPage implements FoSearchResultsPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on search results page + */ + constructor(theme: string = 'classic') { + super(theme); + } +} + +const searchResultsPage = new FoSearchResultsPageVersion(); +export {searchResultsPage, FoSearchResultsPageVersion as SearchResultsPage}; From f96dcce3d06234ccc53fc9b57ff0b233c89efa39 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:12:34 +0200 Subject: [PATCH 521/609] Add selector for localization button import --- .../BO/international/localization/index.ts | 7 ++++++ .../BO/international/localization/index.ts | 22 +++++++++++++++++++ .../BO/international/localization/index.ts | 6 ++--- 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 src/versions/1.7.7/pages/BO/international/localization/index.ts diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 2cd28c118..20b9c6228 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -1,7 +1,14 @@ import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import testContext from '@utils/test'; +import semver from 'semver'; + +const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { + if (semver.lt(psVersion, '1.7.8')) { + return require('@versions/1.7/pages/BO/international/localization').bo; + } return require('@versions/develop/pages/BO/international/localization'); } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/versions/1.7.7/pages/BO/international/localization/index.ts b/src/versions/1.7.7/pages/BO/international/localization/index.ts new file mode 100644 index 000000000..2a3913cc7 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/international/localization/index.ts @@ -0,0 +1,22 @@ +import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/develop/pages/BO/international/localization'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } +} + +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index 8b37bc116..f97aceb66 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -31,7 +31,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio private readonly downloadPackDataToggleInput: (toggle: number) => string; - private readonly importButton: string; + protected importButton: string; private readonly defaultLanguageSelector: string; @@ -154,5 +154,5 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio return this.getAlertSuccessBlockParagraphContent(page); } } - -module.exports = new BOLocalizationPage(); +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; From b9c5ed93793443c8b849f47dea1767b429ec764d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:29:37 +0200 Subject: [PATCH 522/609] Fix typo --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 20b9c6228..6fd88e6e7 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '1.7.8')) { - return require('@versions/1.7/pages/BO/international/localization').bo; + return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); } From 1bfd0805cd2e2686a0dfb1f2d2da749f66764d0d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:45:05 +0200 Subject: [PATCH 523/609] fix bad require --- src/pages/BO/international/localization/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 6fd88e6e7..7975bb358 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -1,4 +1,4 @@ -import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import type {BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; import testContext from '@utils/test'; import semver from 'semver'; @@ -6,7 +6,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { - if (semver.lt(psVersion, '1.7.8')) { + if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); From ab4cb3560e346c30c676075ee3fc72bcba6b7ad0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 15:54:12 +0200 Subject: [PATCH 524/609] Fix another typo --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 7975bb358..882d7eca2 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -7,7 +7,7 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7/pages/BO/international/localization').boLocalizationPage; + return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } return require('@versions/develop/pages/BO/international/localization'); } From 24b9fdc213decc08f57ee30382809942d3fca2a2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 12 Aug 2025 17:20:29 +0200 Subject: [PATCH 525/609] Edit locator for localization for 1.6 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 14 ++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 50282dfb4..7d0b95969 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -167,7 +167,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly preferencesLink: string; - public readonly internationalParentLink: string; + public internationalParentLink: string; public readonly taxesLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 1d40d1dd1..803aec3b1 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,12 +13,14 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); - // Orders - this.ordersParentLink = 'li#maintab-AdminParentOrders'; - // Customers - this.customersParentLink = 'li#maintab-AdminParentCustomer'; - // Shipping - this.shippingLink = '#maintab-AdminParentShipping'; + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; + // Localization + this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; } } From cb1176ed84ed77eaa69252bd3c1a8be62208471b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 09:42:02 +0200 Subject: [PATCH 526/609] Add localization link for 1.6.1 --- src/pages/BO/BOBasePage.ts | 2 +- src/versions/1.6.1/pages/BO/dashboard/index.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 7d0b95969..398f2e584 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -171,7 +171,7 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly taxesLink: string; - public readonly localizationLink: string; + public localizationLink: string; public readonly locationsLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 803aec3b1..6f6b0ebb7 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -17,6 +17,7 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Localization this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + this.localizationLink = 'li#subtab-AdminLocalization'; // Orders this.ordersParentLink = 'li#maintab-AdminParentOrders'; // Shipping From 6c7b7a745c1d96a082fd99aa2e351455aba137cb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 14:36:33 +0200 Subject: [PATCH 527/609] Update 1.6 locators for localization --- .../BO/international/localization/index.ts | 3 ++ .../BO/localization/localization/index.ts | 31 +++++++++++++++++++ .../BO/international/localization/index.ts | 16 +++++----- 3 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 src/versions/1.6.1/pages/BO/localization/localization/index.ts diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 882d7eca2..7246adfd4 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; + } if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts new file mode 100644 index 000000000..36a79a35b --- /dev/null +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -0,0 +1,31 @@ +import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; +import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/1.7.7/pages/BO/international/localization'; + +/** + * Addresses page, contains functions that can be used on the page + * @class + * @extends BOBasePage + */ +class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on addresses page + */ + constructor() { + super(); + + // Import localization pack selectors + this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importStatesCheckbox = '#selection[]_states'; + this.importTaxesCheckbox = '#selection[]_taxes'; + this.importCurrenciesCheckbox = '#selection[]_currencies'; + this.importLanguagesCheckbox = '#selection[]_languages'; + this.importUnitsCheckbox = '#selection[]_units'; + this.updatepriceDisplayForGroupsCHeckbox = '#selection[]_groups'; + this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } +} + +const boLocalizationPage = new BOLocalizationPage(); +export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index f97aceb66..e36787d00 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -15,21 +15,21 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio public readonly successfulSettingsUpdateMessage: string; - private readonly importlocalizationPackSelect: string; + protected importlocalizationPackSelect: string; - private readonly importStatesCheckbox: string; + protected importStatesCheckbox: string; - private readonly importTaxesCheckbox: string; + protected importTaxesCheckbox: string; - private readonly importCurrenciesCheckbox: string; + protected importCurrenciesCheckbox: string; - private readonly importLanguagesCheckbox: string; + protected importLanguagesCheckbox: string; - private readonly importUnitsCheckbox: string; + protected importUnitsCheckbox: string; - private readonly updatepriceDisplayForGroupsCHeckbox: string; + protected updatepriceDisplayForGroupsCHeckbox: string; - private readonly downloadPackDataToggleInput: (toggle: number) => string; + protected downloadPackDataToggleInput: (toggle: number) => string; protected importButton: string; From b186c04830d31f6d517430fa4777914ab02b8c0c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:13:07 +0200 Subject: [PATCH 528/609] Edit locator for localization select --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 36a79a35b..f2db4d355 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -15,7 +15,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importlocalizationPackSelect = '#iso_localization_pack'; this.importStatesCheckbox = '#selection[]_states'; this.importTaxesCheckbox = '#selection[]_taxes'; this.importCurrenciesCheckbox = '#selection[]_currencies'; From 01a728956013a3d6b0087f0939a64800baffd646 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:30:51 +0200 Subject: [PATCH 529/609] Try edit importLocalizationPack method --- .../BO/localization/localization/index.ts | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index f2db4d355..5e2bfb682 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -1,5 +1,7 @@ +import ImportContent from '@data/types/localization'; import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/1.7.7/pages/BO/international/localization'; +import type {Page} from 'playwright'; /** * Addresses page, contains functions that can be used on the page @@ -25,6 +27,47 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } + + /* Methods */ + /** + * Import a localization pack + * @param page {Page} Browser tab + * @param country {string} Country to select + * @param contentToImport {ImportContent} Data of content to import to choose + * @param downloadPackData {boolean} True if we need to download pack data + * @return {Promise} + */ + async importLocalizationPack( + page: Page, + country: string, + contentToImport: ImportContent, + downloadPackData: boolean = true, + ): Promise { + // Choose which country to import + await page.locator(this.importlocalizationPackSelect).click(); + await page.locator('div.chosen-search input').fill(country); + await page.locator('ul.chosen-results li').filter({hasText: country}).click(); + + // Set content import checkboxes + await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); + await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); + await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); + await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); + await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); + await this.setHiddenCheckboxValue( + page, + this.updatepriceDisplayForGroupsCHeckbox, + contentToImport.updatePriceDisplayForGroups, + ); + + // Choose if we download pack of data + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); + + // Import the pack + await page.locator(this.importButton).click(); + + return this.getAlertSuccessBlockParagraphContent(page, 20000); + } } const boLocalizationPage = new BOLocalizationPage(); From 4542dc0fd0c6122b341c4a3c927c937b1dd0c70d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:37:08 +0200 Subject: [PATCH 530/609] Edit select locator to click directly on div --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 5e2bfb682..6497187d8 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -44,7 +44,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza downloadPackData: boolean = true, ): Promise { // Choose which country to import - await page.locator(this.importlocalizationPackSelect).click(); + await page.locator('div.chosen-container').click(); await page.locator('div.chosen-search input').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); From 7e281d2195cfec54229d3547da4253e5676b1f42 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:39:46 +0200 Subject: [PATCH 531/609] Use id instead of class --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 6497187d8..48e6f009a 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -44,7 +44,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza downloadPackData: boolean = true, ): Promise { // Choose which country to import - await page.locator('div.chosen-container').click(); + await page.locator('#iso_localization_pack_chosen').click(); await page.locator('div.chosen-search input').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); From eb3a23113b57a53aac83b218a3b720f5358eaf32 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:43:58 +0200 Subject: [PATCH 532/609] Replace input locator by textbox --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 48e6f009a..1f2398b33 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -45,7 +45,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza ): Promise { // Choose which country to import await page.locator('#iso_localization_pack_chosen').click(); - await page.locator('div.chosen-search input').fill(country); + await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes From a056822273547d638078f954daddb4962c59bb19 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:53:36 +0200 Subject: [PATCH 533/609] Switch to playwright locators for importLocalizationPack function --- .../BO/localization/localization/index.ts | 30 ++++++++----------- 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 1f2398b33..b6e7d4b58 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,14 +17,6 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.importlocalizationPackSelect = '#iso_localization_pack'; - this.importStatesCheckbox = '#selection[]_states'; - this.importTaxesCheckbox = '#selection[]_taxes'; - this.importCurrenciesCheckbox = '#selection[]_currencies'; - this.importLanguagesCheckbox = '#selection[]_languages'; - this.importUnitsCheckbox = '#selection[]_units'; - this.updatepriceDisplayForGroupsCHeckbox = '#selection[]_groups'; - this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } @@ -49,16 +41,18 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes - await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); - await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); - await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); - await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); - await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); - await this.setHiddenCheckboxValue( - page, - this.updatepriceDisplayForGroupsCHeckbox, - contentToImport.updatePriceDisplayForGroups, - ); + // await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); + await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); + //await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); + await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); + //await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); + await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); + //await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); + await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); + //await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); + await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); + //await this.setHiddenCheckboxValue(page,this.updatepriceDisplayForGroupsCHeckbox, contentToImport.updatePriceDisplayForGroups); + await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); From 8911fb583490d19875258cff3bff56ddea97543f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:05:59 +0200 Subject: [PATCH 534/609] Edit data toggle check --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index b6e7d4b58..c9bdfe9a8 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,6 +17,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors + this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } From bcd1320bfaaecc3cbef535da47a486a68334057c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:20:52 +0200 Subject: [PATCH 535/609] Edit toggle type --- .../1.6.1/pages/BO/localization/localization/index.ts | 4 ++-- .../develop/pages/BO/international/localization/index.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index c9bdfe9a8..16b788c04 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -17,7 +17,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza super(); // Import localization pack selectors - this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; + this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; this.importButton = 'button.btn.btn-primary:has-text("Import")'; } @@ -56,7 +56,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data - await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 1 : 0)); + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack await page.locator(this.importButton).click(); diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index e36787d00..6720bacf5 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -29,7 +29,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio protected updatepriceDisplayForGroupsCHeckbox: string; - protected downloadPackDataToggleInput: (toggle: number) => string; + protected downloadPackDataToggleInput: (toggle: number | string) => string; protected importButton: string; From 4690775f9203479aacd8fbdff9f4488a7c2f1ae5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:23:10 +0200 Subject: [PATCH 536/609] Edit toggle type in develop too --- .../develop/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/international/localization/index.ts b/src/versions/develop/pages/BO/international/localization/index.ts index 6720bacf5..581260942 100644 --- a/src/versions/develop/pages/BO/international/localization/index.ts +++ b/src/versions/develop/pages/BO/international/localization/index.ts @@ -62,7 +62,7 @@ class BOLocalizationPage extends BOLocalizationBasePage implements BOLocalizatio this.importLanguagesCheckbox = '#import_localization_pack_content_to_import_3'; this.importUnitsCheckbox = '#import_localization_pack_content_to_import_4'; this.updatepriceDisplayForGroupsCHeckbox = '#import_localization_pack_content_to_import_5'; - this.downloadPackDataToggleInput = (toggle: number) => `#import_localization_pack_download_pack_data_${toggle}`; + this.downloadPackDataToggleInput = (toggle: string | number) => `#import_localization_pack_download_pack_data_${toggle}`; this.importButton = '#form-import-localization-save-button'; // Configuration form selectors From 061bc72f2e43f96de458beb1e09038af04c073cf Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:39:43 +0200 Subject: [PATCH 537/609] Update import button locator in localization --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 16b788c04..874ca0cb3 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator(this.importButton).click(); + await page.locator('button.btn btn-default pull-right').filter({hasText: 'Import'}).click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 02c51b231ebbf2439d80a4b10bca2191178e59cd Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 16:53:56 +0200 Subject: [PATCH 538/609] Try using for import btn --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 874ca0cb3..c23df1986 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator('button.btn btn-default pull-right').filter({hasText: 'Import'}).click(); + await page.locator('i.process-import-icon').click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 542dd792353315db83b7f3d058c0be4736431d4f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 17:08:01 +0200 Subject: [PATCH 539/609] Try click button by name --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index c23df1986..79a0694e4 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -59,7 +59,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); // Import the pack - await page.locator('i.process-import-icon').click(); + await page.locator('button[name="submitLocalizationPack"]').click(); return this.getAlertSuccessBlockParagraphContent(page, 20000); } From 4e650111c57b187f9bd4bebff0d69552ffca72ea Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 10:24:11 +0200 Subject: [PATCH 540/609] handle succes notifications for 1.6.1 --- src/pages/BO/BOBasePage.ts | 17 ++++++++++++----- .../pages/BO/localization/localization/index.ts | 6 ------ 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index 398f2e584..cfbace0ce 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -243,15 +243,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte protected alertSuccessBlock: string; - private readonly alertDangerBlock: string; + protected alertDangerBlock: string; - private readonly alertInfoBlock: string; + protected alertInfoBlock: string; protected alertSuccessBlockParagraph: string; protected alertDangerBlockParagraph: string; - private readonly alertInfoBlockParagraph: string; + protected alertInfoBlockParagraph: string; private readonly confirmationModal: string; @@ -1187,8 +1187,15 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte * @return {Promise} */ async getAlertSuccessBlockParagraphContent(page: Frame | Page, timeout: number = 2000): Promise { - await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); - return this.getTextContent(page, this.alertSuccessBlockParagraph); + const shopVersion = testContext.getPSVersion(); + if (semver.lte(shopVersion, '7.0.0')) { + await this.elementVisible(page, this.alertSuccessBlock, timeout); + return this.getTextContent(page, this.alertSuccessBlock); + } + else { + await this.elementVisible(page, this.alertSuccessBlockParagraph, timeout); + return this.getTextContent(page, this.alertSuccessBlockParagraph); + } } /** diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 79a0694e4..723880b65 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -42,17 +42,11 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza await page.locator('ul.chosen-results li').filter({hasText: country}).click(); // Set content import checkboxes - // await this.setHiddenCheckboxValue(page, this.importStatesCheckbox, contentToImport.importStates); await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); - //await this.setHiddenCheckboxValue(page, this.importTaxesCheckbox, contentToImport.importTaxes); await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); - //await this.setHiddenCheckboxValue(page, this.importCurrenciesCheckbox, contentToImport.importCurrencies); await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); - //await this.setHiddenCheckboxValue(page, this.importLanguagesCheckbox, contentToImport.importLanguages); await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); - //await this.setHiddenCheckboxValue(page, this.importUnitsCheckbox, contentToImport.importUnits); await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); - //await this.setHiddenCheckboxValue(page,this.updatepriceDisplayForGroupsCHeckbox, contentToImport.updatePriceDisplayForGroups); await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); // Choose if we download pack of data From 56b8bcd0375a7ee150518382d5e4cdf243a44da3 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 10:59:59 +0200 Subject: [PATCH 541/609] Add catalog parent and products subtab links --- src/pages/BO/BOBasePage.ts | 4 ++-- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/BOBasePage.ts b/src/pages/BO/BOBasePage.ts index cfbace0ce..daf9da1a3 100644 --- a/src/pages/BO/BOBasePage.ts +++ b/src/pages/BO/BOBasePage.ts @@ -97,9 +97,9 @@ export default class BOBasePage extends CommonPage implements BOBasePagePageInte public readonly shoppingCartsLink: string; - public readonly catalogParentLink: string; + public catalogParentLink: string; - public readonly productsLink: string; + public productsLink: string; public readonly categoriesLink: string; diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index 6f6b0ebb7..ae2941796 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,6 +13,9 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); + // Catalog + this.catalogParentLink = 'li#maintab-AdminCatalog'; + this.productsLink = 'li#subtab-AdminProducts'; // Customers this.customersParentLink = 'li#maintab-AdminParentCustomer'; // Localization From 8b4dc2690077cba6d994e413776deb951230256b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 11:46:19 +0200 Subject: [PATCH 542/609] overwrite newProductButton for 1.6.1 --- src/pages/BO/catalog/products/index.ts | 3 +++ .../1.6.1/pages/BO/catalog/products/index.ts | 25 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/catalog/products/index.ts diff --git a/src/pages/BO/catalog/products/index.ts b/src/pages/BO/catalog/products/index.ts index 8861f1eae..8f1462846 100644 --- a/src/pages/BO/catalog/products/index.ts +++ b/src/pages/BO/catalog/products/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products').productsPage; } diff --git a/src/versions/1.6.1/pages/BO/catalog/products/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/index.ts new file mode 100644 index 000000000..7b32a35b5 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/catalog/products/index.ts @@ -0,0 +1,25 @@ +// Import pages +import type {BOProductsPageInterface} from '@interfaces/BO/catalog/products'; +import {ProductsPage} from '@versions/1.7.7/pages/BO/catalog/products'; + +import type {Page} from 'playwright'; + +/** + * Bo products page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOProductsVersion extends ProductsPage implements BOProductsPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on products page + */ + constructor() { + super(); + // header + this.newProductButton = '#page-header-desc-product-new_product' + } +} + +const productsPage = new BOProductsVersion(); +export {productsPage, BOProductsVersion as ProductsPage}; From 64f250bbdbf4ae671bc20a53d59e14d72ffc1c33 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 19 Aug 2025 17:12:02 +0200 Subject: [PATCH 543/609] Start implements productCreate for 1.6.1 ::blocked --- src/pages/BO/catalog/products/create/index.ts | 3 + .../pages/BO/catalog/products/create/index.ts | 99 +++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 src/versions/1.6.1/pages/BO/catalog/products/create/index.ts diff --git a/src/pages/BO/catalog/products/create/index.ts b/src/pages/BO/catalog/products/create/index.ts index eebb7adaa..78765f72b 100644 --- a/src/pages/BO/catalog/products/create/index.ts +++ b/src/pages/BO/catalog/products/create/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreatePageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products/create').boProductsCreatePage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products/create').boProductsCreatePage; } diff --git a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts new file mode 100644 index 000000000..31766ad67 --- /dev/null +++ b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts @@ -0,0 +1,99 @@ +// Import pages +import type {BOProductsCreatePageInterface} from '@interfaces/BO/catalog/products/create'; +import {BOProductsCreatePage} from '@versions/develop/pages/BO/catalog/products/create'; + +import descriptionTab from '@pages/BO/catalog/products/create/tabDescription'; +import pricingTab from '@pages/BO/catalog/products/create/tabPricing'; +import detailsTab from '@pages/BO/catalog/products/create/tabDetails'; +import virtualProductTab from '@pages/BO/catalog/products/create/tabVirtualProduct'; +import stocksTab from '@pages/BO/catalog/products/create/tabStocks'; +import packTab from '@pages/BO/catalog/products/create/tabPack'; + +import type FakerProduct from '@data/faker/product'; + +import type {Page} from 'playwright'; + +/** + * Bo create product page, contains functions that can be used on the page + * @class + * @extends BOProductsCreatePage + */ +class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { + + /** + * Set product name + * @param page {Page} Browser tab + * @param name {string} Name of the product + * @param locale {string} Locale + * @returns {Promise} + */ + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); + } + + await this.setValue(page, this.productNameInput(locale), name); + } + + /** + * Set product type + * @param page {Page} Browser tab + * @param productData {FakerProduct} + * @returns {Promise} + */ + async setProductType(page: Page, productData: FakerProduct): Promise { + switch (productData.type) { + case 'standard': + await page.locator('#simple_product').setChecked(true); + } + } + + /** + * Set product + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in new product page + * @returns {Promise} + */ + async setProduct(page: Page, productData: FakerProduct): Promise /**/{ + // INFORMATION TAB + // product type + await this.setProductType(page, productData); + // product name + await this.setProductName(page, productData.name, 'en'); + + // TODO BUG on 1.6.1.24 not possible to switch product creation tab + + + +/* //// Tab "Description" + // Set description + await descriptionTab.setProductDescription(page, productData); + // Set name + // Set status + await this.setProductStatus(page, productData.status); + + //// Tab "Details" + await detailsTab.setProductDetails(page, productData); + + //// Tab "Stocks" + if (productData.type === 'virtual') { + await virtualProductTab.setVirtualProduct(page, productData); + } else if (productData.type !== 'combinations') { + await stocksTab.setProductStock(page, productData); + } + + if (productData.type === 'pack') { + await packTab.setPackOfProducts(page, productData.pack); + } + + //// Tab "Pricing" + await pricingTab.setProductPricing(page, productData); +*/ + return this.saveProduct(page); + } +} + +const boProductsCreatePage = new BOProductsCreatePageVersion(); +export {boProductsCreatePage, BOProductsCreatePageVersion as BOProductsCreatePage}; From 456c576d006ad123b62a8778acf99078c0c9c007 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 20 Aug 2025 15:19:12 +0200 Subject: [PATCH 544/609] Update develop localization --- src/pages/BO/international/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 7246adfd4..63e76174b 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -12,7 +12,7 @@ function requirePage(): BOLocalizationPageInterface { if (semver.lt(psVersion, '7.8.0')) { return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; } - return require('@versions/develop/pages/BO/international/localization'); + return require('@versions/develop/pages/BO/international/localization').boLocalizationPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ From 55dd745d01b4cc998a1a028fd5f03491998a173e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 20 Aug 2025 15:46:08 +0200 Subject: [PATCH 545/609] Update timeout to isStepCompleted --- src/versions/develop/pages/FO/classic/checkout/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/FO/classic/checkout/index.ts b/src/versions/develop/pages/FO/classic/checkout/index.ts index 0048f0875..79a7731dc 100644 --- a/src/versions/develop/pages/FO/classic/checkout/index.ts +++ b/src/versions/develop/pages/FO/classic/checkout/index.ts @@ -423,7 +423,7 @@ class CheckoutPage extends FOBasePage implements FoCheckoutPageInterface { * @returns {Promise} */ async isStepCompleted(page: Page, stepSelector: string): Promise { - return this.elementVisible(page, `${stepSelector}${this.stepFormSuccess}`, 1000); + return this.elementVisible(page, `${stepSelector}${this.stepFormSuccess}`, 2000); } /** From 091153bf3c477c4bfa2eb42f2937c40e4adcd223 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:36:43 +0200 Subject: [PATCH 546/609] Edit createCarrier for 8.2 --- src/pages/BO/catalog/products/index.ts | 4 +- .../BO/international/localization/index.ts | 12 +-- src/utils/test.ts | 6 +- .../pages/BO/catalog/products/create/index.ts | 54 +++++++------- .../1.6.1/pages/BO/catalog/products/index.ts | 12 +-- .../pages/BO/customers/addresses/create.ts | 9 ++- .../1.6.1/pages/BO/dashboard/index.ts | 24 +++--- .../BO/localization/localization/index.ts | 74 +++++++++---------- .../pages/BO/shipping/carriers/create.ts | 7 +- .../BO/international/localization/index.ts | 12 +-- .../pages/BO/catalog/products/create/index.ts | 2 +- .../catalog/products/create/tabDescription.ts | 45 +++++------ .../8.2/pages/BO/shipping/carriers/create.ts | 5 +- .../pages/FO/classic/searchResults/index.ts | 8 +- 14 files changed, 137 insertions(+), 137 deletions(-) diff --git a/src/pages/BO/catalog/products/index.ts b/src/pages/BO/catalog/products/index.ts index 8f1462846..b71f2f7fc 100644 --- a/src/pages/BO/catalog/products/index.ts +++ b/src/pages/BO/catalog/products/index.ts @@ -6,8 +6,8 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/catalog/products').productsPage; } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/catalog/products').productsPage; diff --git a/src/pages/BO/international/localization/index.ts b/src/pages/BO/international/localization/index.ts index 63e76174b..26d0b8e84 100644 --- a/src/pages/BO/international/localization/index.ts +++ b/src/pages/BO/international/localization/index.ts @@ -6,12 +6,12 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOLocalizationPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; - } - if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; - } + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/localization/localization').boLocalizationPage; + } + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/international/localization').boLocalizationPage; + } return require('@versions/develop/pages/BO/international/localization').boLocalizationPage; } /* eslint-enable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ diff --git a/src/utils/test.ts b/src/utils/test.ts index 0c9878771..7bdce4199 100644 --- a/src/utils/test.ts +++ b/src/utils/test.ts @@ -50,8 +50,8 @@ export default { const version: string = process.env.PS_VERSION; return version - .replace(/\.x$/, '.99') - .replace(/^1\.7\./, '7.') - .replace(/^1\.6\./, '6.'); + .replace(/\.x$/, '.99') + .replace(/^1\.7\./, '7.') + .replace(/^1\.6\./, '6.'); }, }; diff --git a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts index 31766ad67..d4b7ced6b 100644 --- a/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts +++ b/src/versions/1.6.1/pages/BO/catalog/products/create/index.ts @@ -19,55 +19,53 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { - - /** + /** * Set product name * @param page {Page} Browser tab * @param name {string} Name of the product * @param locale {string} Locale * @returns {Promise} */ - async setProductName(page: Page, name: string, locale: string = 'en'): Promise { - const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); - if (isShopMultiLanguages) { - await page.locator(this.productNameLanguageButton).click({timeout: 1000}); - await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); - } + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); - await this.setValue(page, this.productNameInput(locale), name); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); } - /** + await this.setValue(page, this.productNameInput(locale), name); + } + + /** * Set product type * @param page {Page} Browser tab * @param productData {FakerProduct} * @returns {Promise} */ - async setProductType(page: Page, productData: FakerProduct): Promise { - switch (productData.type) { - case 'standard': - await page.locator('#simple_product').setChecked(true); - } + async setProductType(page: Page, productData: FakerProduct): Promise { + switch (productData.type) { + case 'standard': + await page.locator('#simple_product').setChecked(true); } + } - /** + /** * Set product * @param page {Page} Browser tab * @param productData {FakerProduct} Data to set in new product page * @returns {Promise} */ - async setProduct(page: Page, productData: FakerProduct): Promise /**/{ - // INFORMATION TAB - // product type - await this.setProductType(page, productData); - // product name - await this.setProductName(page, productData.name, 'en'); + async setProduct(page: Page, productData: FakerProduct): Promise /**/{ + // INFORMATION TAB + // product type + await this.setProductType(page, productData); + // product name + await this.setProductName(page, productData.name, 'en'); - // TODO BUG on 1.6.1.24 not possible to switch product creation tab + // TODO BUG on 1.6.1.24 not possible to switch product creation tab - - -/* //// Tab "Description" + /* //// Tab "Description" // Set description await descriptionTab.setProductDescription(page, productData); // Set name @@ -91,8 +89,8 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd //// Tab "Pricing" await pricingTab.setProductPricing(page, productData); */ - return this.saveProduct(page); - } + return this.saveProduct(page); + } } const boProductsCreatePage = new BOProductsCreatePageVersion(); diff --git a/src/versions/1.6.1/pages/BO/catalog/products/index.ts b/src/versions/1.6.1/pages/BO/catalog/products/index.ts index 7b32a35b5..c4ae31e79 100644 --- a/src/versions/1.6.1/pages/BO/catalog/products/index.ts +++ b/src/versions/1.6.1/pages/BO/catalog/products/index.ts @@ -10,15 +10,15 @@ import type {Page} from 'playwright'; * @extends ProductsPage */ class BOProductsVersion extends ProductsPage implements BOProductsPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on products page */ - constructor() { - super(); - // header - this.newProductButton = '#page-header-desc-product-new_product' - } + constructor() { + super(); + // header + this.newProductButton = '#page-header-desc-product-new_product'; + } } const productsPage = new BOProductsVersion(); diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts index 0c53c68d2..796aec7eb 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/create.ts @@ -6,6 +6,7 @@ import {BOAddressesCreatePage as BOAddressCreatePageVersion} from '@versions/1.7 class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddressesCreatePageInterface { private readonly customerAddressMobilePhoneInput: string; + /** * @constructs * Setting up texts and selectors to use in addresses create page @@ -48,10 +49,10 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @returns {Promise} */ async createEditAddress( - page: Frame|Page, - addressData: FakerAddress, - save: boolean = true, - waitForNavigation: boolean = true, + page: Frame|Page, + addressData: FakerAddress, + save: boolean = true, + waitForNavigation: boolean = true, ): Promise { if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index ae2941796..fa20302bf 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -13,18 +13,18 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa */ constructor() { super(); - // Catalog - this.catalogParentLink = 'li#maintab-AdminCatalog'; - this.productsLink = 'li#subtab-AdminProducts'; - // Customers - this.customersParentLink = 'li#maintab-AdminParentCustomer'; - // Localization - this.internationalParentLink = 'li#maintab-AdminParentLocalization'; - this.localizationLink = 'li#subtab-AdminLocalization'; - // Orders - this.ordersParentLink = 'li#maintab-AdminParentOrders'; - // Shipping - this.shippingLink = '#maintab-AdminParentShipping'; + // Catalog + this.catalogParentLink = 'li#maintab-AdminCatalog'; + this.productsLink = 'li#subtab-AdminProducts'; + // Customers + this.customersParentLink = 'li#maintab-AdminParentCustomer'; + // Localization + this.internationalParentLink = 'li#maintab-AdminParentLocalization'; + this.localizationLink = 'li#subtab-AdminLocalization'; + // Orders + this.ordersParentLink = 'li#maintab-AdminParentOrders'; + // Shipping + this.shippingLink = '#maintab-AdminParentShipping'; } } diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 723880b65..d184de596 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -9,20 +9,20 @@ import type {Page} from 'playwright'; * @extends BOBasePage */ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on addresses page */ - constructor() { - super(); + constructor() { + super(); - // Import localization pack selectors - this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; - this.importButton = 'button.btn.btn-primary:has-text("Import")'; - } + // Import localization pack selectors + this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } - /* Methods */ - /** + /* Methods */ + /** * Import a localization pack * @param page {Page} Browser tab * @param country {string} Country to select @@ -30,34 +30,34 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza * @param downloadPackData {boolean} True if we need to download pack data * @return {Promise} */ - async importLocalizationPack( - page: Page, - country: string, - contentToImport: ImportContent, - downloadPackData: boolean = true, - ): Promise { - // Choose which country to import - await page.locator('#iso_localization_pack_chosen').click(); - await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); - await page.locator('ul.chosen-results li').filter({hasText: country}).click(); - - // Set content import checkboxes - await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); - await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); - await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); - await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); - await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); - await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); - - // Choose if we download pack of data - await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); - - // Import the pack - await page.locator('button[name="submitLocalizationPack"]').click(); - - return this.getAlertSuccessBlockParagraphContent(page, 20000); - } + async importLocalizationPack( + page: Page, + country: string, + contentToImport: ImportContent, + downloadPackData: boolean = true, + ): Promise { + // Choose which country to import + await page.locator('#iso_localization_pack_chosen').click(); + await page.locator('#iso_localization_pack_chosen').getByRole('textbox').fill(country); + await page.locator('ul.chosen-results li').filter({hasText: country}).click(); + + // Set content import checkboxes + await page.locator('input[value="states"]').setChecked(contentToImport.importStates as boolean); + await page.locator('input[value="taxes"]').setChecked(contentToImport.importTaxes as boolean); + await page.locator('input[value="currencies"]').setChecked(contentToImport.importCurrencies as boolean); + await page.locator('input[value="languages"]').setChecked(contentToImport.importLanguages as boolean); + await page.locator('input[value="units"]').setChecked(contentToImport.importUnits as boolean); + await page.locator('input[value="groups"]').setChecked(contentToImport.updatePriceDisplayForGroups as boolean); + + // Choose if we download pack of data + await this.setChecked(page, this.downloadPackDataToggleInput(downloadPackData ? 'yes' : 'no')); + + // Import the pack + await page.locator('button[name="submitLocalizationPack"]').click(); + + return this.getAlertSuccessBlockParagraphContent(page, 20000); + } } const boLocalizationPage = new BOLocalizationPage(); -export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file +export {boLocalizationPage, BOLocalizationPage}; diff --git a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts index 1583b0fe7..7faffff1f 100644 --- a/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.6.1/pages/BO/shipping/carriers/create.ts @@ -2,10 +2,9 @@ import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/cr import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { - constructor() { - super(); - - } + constructor() { + super(); + } } const boCarriersCreatePage = new BOCarriersCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/international/localization/index.ts b/src/versions/1.7.7/pages/BO/international/localization/index.ts index 2a3913cc7..db290dd42 100644 --- a/src/versions/1.7.7/pages/BO/international/localization/index.ts +++ b/src/versions/1.7.7/pages/BO/international/localization/index.ts @@ -7,16 +7,16 @@ import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/develop * @extends BOBasePage */ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocalizationPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on addresses page */ - constructor() { - super(); + constructor() { + super(); - this.importButton = 'button.btn.btn-primary:has-text("Import")'; - } + this.importButton = 'button.btn.btn-primary:has-text("Import")'; + } } const boLocalizationPage = new BOLocalizationPage(); -export {boLocalizationPage, BOLocalizationPage}; \ No newline at end of file +export {boLocalizationPage, BOLocalizationPage}; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index a4950a672..6efb18238 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,7 +19,6 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { - /** * Set product name * @param page {Page} Browser tab @@ -29,6 +28,7 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd */ async setProductName(page: Page, name: string, locale: string = 'en'): Promise { const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { await page.locator(this.productNameLanguageButton).click({timeout: 1000}); await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts index 44ef1299c..faa024145 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescription.ts @@ -12,39 +12,42 @@ import type {Page} from 'playwright'; * @extends DescriptionTab */ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { - private readonly productShortDescriptionIframe: string; - private readonly productDescriptionIframe: string; - private productWithCombinationsInput: string; - /** + private readonly productShortDescriptionIframe: string; + + private readonly productDescriptionIframe: string; + + private productWithCombinationsInput: string; + + /** * @constructs * Setting up texts and selectors to use on description tab */ - constructor() { - super(); + constructor() { + super(); - this.descriptionTabLink = '#product_description-tab-nav'; - this.productShortDescriptionIframe = '#product_description_description_short'; - this.productDescriptionIframe = '#product_description_description'; - this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; - } + this.descriptionTabLink = '#product_description-tab-nav'; + this.productShortDescriptionIframe = '#product_description_description_short'; + this.productDescriptionIframe = '#product_description_description'; + this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; + } - /** + /** * Set product description * @param page {Page} Browser tab * @param productData {FakerProduct} Data to set in description form * @returns {Promise} */ - async setProductDescription(page: Page, productData: FakerProduct): Promise { - await this.waitForSelectorAndClick(page, this.descriptionTabLink); - if (productData.type === 'combinations') { - await page.locator(this.productWithCombinationsInput).click(); - } + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } - await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); - await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); - await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); - } + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } } const descriptionTab = new BOProductTabDescriptionVersion(); diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 1aecaf958..8403c5272 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -1,6 +1,7 @@ import type FakerCarrier from '@data/faker/carrier'; import type FakerGroup from '@data/faker/group'; import {type CarrierRange} from '@data/types/carrier'; +import {tr} from '@faker-js/faker'; import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/develop/pages/BO/shipping/carriers/create'; import type {Page} from 'playwright'; @@ -100,9 +101,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - if (!carrierData.freeShipping) { - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); diff --git a/src/versions/8.2/pages/FO/classic/searchResults/index.ts b/src/versions/8.2/pages/FO/classic/searchResults/index.ts index c8d3dfd29..34f2f5090 100644 --- a/src/versions/8.2/pages/FO/classic/searchResults/index.ts +++ b/src/versions/8.2/pages/FO/classic/searchResults/index.ts @@ -10,13 +10,13 @@ import {SearchResultsPage} from '@versions/develop/pages/FO/classic/searchResult * @extends SearchResultsPage */ class FoSearchResultsPageVersion extends SearchResultsPage implements FoSearchResultsPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on search results page */ - constructor(theme: string = 'classic') { - super(theme); - } + constructor(theme: string = 'classic') { + super(theme); + } } const searchResultsPage = new FoSearchResultsPageVersion(); From 040bef26ca62fded69a68806f8bc6804279c9d39 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:45:03 +0200 Subject: [PATCH 547/609] Try better way for handlingCost and freeShipping --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 8403c5272..66a29cee2 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,8 +100,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); + + if (!carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); + } + if (!carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); + } if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 55ef158ab6e8cda754c455b3ed4e6598d1547179 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:51:24 +0200 Subject: [PATCH 548/609] Handle set enabled --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 66a29cee2..9c3d7e3dc 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -202,7 +202,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + if (!carrierData.enable) { + await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + } await page.locator(this.finishButton).click(); // Return successful message From 46a5ffdefeb602c675eaa970037e727dcc4a8a91 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 15:39:51 +0200 Subject: [PATCH 549/609] Add new way to handle toggle for freeshipping, handlingcost, enable --- .../8.2/pages/BO/shipping/carriers/create.ts | 40 ++++++++++++++++--- 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 9c3d7e3dc..e833a385b 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,13 +100,30 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - - if (!carrierData.freeShipping) { + /* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - } - if (!carrierData.handlingCosts) { + }*/ + if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle('off')); + }} + if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.freeShipping) { + await this.setChecked(page, this.freeShippingToggle('on')); + }} + + +/* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + }*/ + if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle('off')); + }} + if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.handlingCosts) { + await this.setChecked(page, this.addHandlingCostsToggle('on')); + }} if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -202,9 +219,20 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - if (!carrierData.enable) { +/* if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); + }*/ + if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { + if (!carrierData.enable) { + await this.setChecked(page, this.enableToggle('off')); + } + } + if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { + if (carrierData.enable) { + await this.setChecked(page, this.enableToggle('on')); + } } + await page.locator(this.finishButton).click(); // Return successful message From d2bdfd57a1d0ffb67ef7451a20fb634da0a1d0bb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 09:26:45 +0200 Subject: [PATCH 550/609] Overide locator for carrier enable in 1.7.7 --- src/pages/BO/shipping/carriers/create.ts | 3 +++ .../1.7.7/pages/BO/shipping/carriers/create.ts | 13 +++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/shipping/carriers/create.ts diff --git a/src/pages/BO/shipping/carriers/create.ts b/src/pages/BO/shipping/carriers/create.ts index 4adcd9105..df83938c6 100644 --- a/src/pages/BO/shipping/carriers/create.ts +++ b/src/pages/BO/shipping/carriers/create.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOCarriersCreatePageInterface { + if (semver.lt(psVersion, '7.8.0')) { + return require('@versions/1.7.7/pages/BO/shipping/carriers/create').boCarriersCreatePage; + } if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/shipping/carriers/create').boCarriersCreatePage; } diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts new file mode 100644 index 000000000..095e9b604 --- /dev/null +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -0,0 +1,13 @@ +import {BOCarriersCreatePageInterface} from '@interfaces/BO/shipping/carriers/create'; +import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2/pages/BO/shipping/carriers/create'; + +class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { + constructor() { + super(); + // Summary + this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; + } +} + +const boCarriersCreatePage = new BOCarriersCreatePage(); +export {boCarriersCreatePage, BOCarriersCreatePage}; From 8a4ecf573473ab294e19bd7478bfa27f8fd0ee9c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 09:30:57 +0200 Subject: [PATCH 551/609] Second overide for carriers creation --- src/versions/1.7.7/pages/BO/shipping/carriers/create.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts index 095e9b604..eae428702 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -4,6 +4,10 @@ import {BOCarriersCreatePage as BOCarriersCreatePageVersion} from '@versions/8.2 class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarriersCreatePageInterface { constructor() { super(); + + // Shipping locations and costs + this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; + this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; // Summary this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; } From cb80370a10dc4bd758fcfc42b10d583127e2c0cf Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:02:30 +0200 Subject: [PATCH 552/609] Force click freeshipping and shipping cost --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index e833a385b..7a319ae43 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off')); + await this.setChecked(page, this.freeShippingToggle('off'), true, true); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on')); + await this.setChecked(page, this.freeShippingToggle('on'), true, true); }} @@ -118,11 +118,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off')); + await this.setChecked(page, this.addHandlingCostsToggle('off'), true, true); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on')); + await this.setChecked(page, this.addHandlingCostsToggle('on'), true, true); }} if (carrierData.billing === 'According to total price') { From e87b87c7cb254b90798fff5966228dccce5128c9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:11:15 +0200 Subject: [PATCH 553/609] Add force enable --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 7a319ae43..e21019416 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -224,12 +224,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off')); + await this.setChecked(page, this.enableToggle('off'), true, true); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on')); + await this.setChecked(page, this.enableToggle('on'), true, true); } } From 0f19d6ca862a657263c9e794f4ea2a67e53819f1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:18:17 +0200 Subject: [PATCH 554/609] Remove force click --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index e21019416..308fa67c3 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off'), true, true); + await this.setChecked(page, this.freeShippingToggle('off'), true); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on'), true, true); + await this.setChecked(page, this.freeShippingToggle('on'), true); }} @@ -118,11 +118,11 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off'), true, true); + await this.setChecked(page, this.addHandlingCostsToggle('off'), true); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on'), true, true); + await this.setChecked(page, this.addHandlingCostsToggle('on'), true); }} if (carrierData.billing === 'According to total price') { @@ -224,12 +224,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off'), true, true); + await this.setChecked(page, this.enableToggle('off'), true); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on'), true, true); + await this.setChecked(page, this.enableToggle('on'), true); } } From dce53a44996e25299989f3f0d0f5961867636787 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:26:07 +0200 Subject: [PATCH 555/609] Try other way to click --- .../8.2/pages/BO/shipping/carriers/create.ts | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 308fa67c3..0f382ddc5 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -105,11 +105,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('off'), true); + //await this.setChecked(page, this.freeShippingToggle('off'), true); + await page.locator(this.freeShippingToggle('off')).click(); }} if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { if (carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle('on'), true); + //await this.setChecked(page, this.freeShippingToggle('on'), true); + await page.locator(this.freeShippingToggle('on')).click(); }} @@ -118,11 +120,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('off'), true); + //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); + await page.locator(this.addHandlingCostsToggle('off')).click(); }} if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { if (carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle('on'), true); + //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); + await page.locator(this.addHandlingCostsToggle('on')).click(); }} if (carrierData.billing === 'According to total price') { @@ -224,12 +228,15 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }*/ if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle('off'), true); + //await this.setChecked(page, this.enableToggle('off'), true); + await page.locator(this.enableToggle('off')).click(); } } if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { if (carrierData.enable) { - await this.setChecked(page, this.enableToggle('on'), true); + //await this.setChecked(page, this.enableToggle('on'), true); + await page.locator(this.enableToggle('on')).click(); + } } From 27bc82e9e9146b35477a88a7937cfea26e70071a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:44:23 +0200 Subject: [PATCH 556/609] Try rollback to the old method --- .../8.2/pages/BO/shipping/carriers/create.ts | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 0f382ddc5..f7795a5ab 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,10 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - /* if (!carrierData.freeShipping) { + if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - }*/ - if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); await page.locator(this.freeShippingToggle('off')).click(); @@ -112,13 +112,13 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr if (carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('on'), true); await page.locator(this.freeShippingToggle('on')).click(); - }} + }}*/ -/* if (!carrierData.handlingCosts) { + if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - }*/ - if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); await page.locator(this.addHandlingCostsToggle('off')).click(); @@ -127,7 +127,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr if (carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); await page.locator(this.addHandlingCostsToggle('on')).click(); - }} + }}*/ if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -223,10 +223,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary -/* if (!carrierData.enable) { + if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - }*/ - if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { + } +/* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { //await this.setChecked(page, this.enableToggle('off'), true); await page.locator(this.enableToggle('off')).click(); @@ -238,7 +238,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.enableToggle('on')).click(); } - } + }*/ await page.locator(this.finishButton).click(); From e4495aba53381a5cf77adce32e310a7cbc6fe91b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 10:57:37 +0200 Subject: [PATCH 557/609] Try again another way for carriers --- .../8.2/pages/BO/shipping/carriers/create.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index f7795a5ab..4676f0b16 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,9 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - if (!carrierData.freeShipping) { +/* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - } + }*/ + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).click({ force: true, timeout: 1000}); /* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); @@ -115,9 +116,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr }}*/ - if (!carrierData.handlingCosts) { +/* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - } + }*/ + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).click({ force: true, timeout: 1000}); /* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); @@ -223,9 +225,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - if (!carrierData.enable) { +/* if (!carrierData.enable) { await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - } + }*/ + + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).click({ force: true, timeout: 1000}); + /* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { //await this.setChecked(page, this.enableToggle('off'), true); From db73241f915b4a84932b4a7ab0242acc5f2d7578 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 27 Aug 2025 14:54:47 +0200 Subject: [PATCH 558/609] Try other method for freeshipping and handling cost --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 4676f0b16..f7af8ee88 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -103,7 +103,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr /* if (!carrierData.freeShipping) { await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); }*/ - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.freeShipping) { //await this.setChecked(page, this.freeShippingToggle('off'), true); @@ -119,7 +119,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr /* if (!carrierData.handlingCosts) { await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); }*/ - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.handlingCosts) { //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); @@ -229,7 +229,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); }*/ - await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).click({ force: true, timeout: 1000}); + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); /* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { if (!carrierData.enable) { From f20b9e15705b3c7077deb7fcf554faed179cb583 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 09:46:32 +0200 Subject: [PATCH 559/609] Try remove locator overide for 1.7.7.8 --- .../pages/BO/shipping/carriers/create.ts | 6 ++-- .../8.2/pages/BO/shipping/carriers/create.ts | 32 ++----------------- 2 files changed, 5 insertions(+), 33 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts index eae428702..54516c485 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/create.ts @@ -6,10 +6,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr super(); // Shipping locations and costs - this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; - this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; + //this.addHandlingCostsToggle = (toggle: string) => `#step_carrier_ranges #shipping_handling_${toggle}`; + //this.freeShippingToggle = (toggle: string) => `#step_carrier_ranges #is_free_${toggle}`; // Summary - this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; + //this.enableToggle = (toggle: string) => `#step_carrier_summary #active_${toggle}`; } } diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index f7af8ee88..c0f369e44 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,36 +100,8 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs -/* if (!carrierData.freeShipping) { - await this.setChecked(page, this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')); - }*/ - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 1000}); -/* if (await page.locator(this.freeShippingToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.freeShipping) { - //await this.setChecked(page, this.freeShippingToggle('off'), true); - await page.locator(this.freeShippingToggle('off')).click(); - }} - if (await page.locator(this.freeShippingToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.freeShipping) { - //await this.setChecked(page, this.freeShippingToggle('on'), true); - await page.locator(this.freeShippingToggle('on')).click(); - }}*/ - - -/* if (!carrierData.handlingCosts) { - await this.setChecked(page, this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')); - }*/ - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 1000}); -/* if (await page.locator(this.addHandlingCostsToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.handlingCosts) { - //await this.setChecked(page, this.addHandlingCostsToggle('off'), true); - await page.locator(this.addHandlingCostsToggle('off')).click(); - }} - if (await page.locator(this.addHandlingCostsToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.handlingCosts) { - //await this.setChecked(page, this.addHandlingCostsToggle('on'), true); - await page.locator(this.addHandlingCostsToggle('on')).click(); - }}*/ + await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 51720e1c73c9bd476488cde21b9548ba5f679eb0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:11:22 +0200 Subject: [PATCH 560/609] Try click by label for carriers?? --- .../8.2/pages/BO/shipping/carriers/create.ts | 27 +++++-------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index c0f369e44..37c833124 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -100,8 +100,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Set shipping locations and costs - await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); + await page.getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -197,25 +199,8 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary -/* if (!carrierData.enable) { - await this.setChecked(page, this.enableToggle(carrierData.enable ? 'on' : 'off')); - }*/ - - await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - -/* if (await page.locator(this.enableToggle('on')).isChecked({timeout: 1500})) { - if (!carrierData.enable) { - //await this.setChecked(page, this.enableToggle('off'), true); - await page.locator(this.enableToggle('off')).click(); - } - } - if (await page.locator(this.enableToggle('off')).isChecked({timeout: 1500})) { - if (carrierData.enable) { - //await this.setChecked(page, this.enableToggle('on'), true); - await page.locator(this.enableToggle('on')).click(); - - } - }*/ + //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); + await page.getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); From f23a69ccc06a038a4657b153536b0a7d82fd4481 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:20:39 +0200 Subject: [PATCH 561/609] Try add locator --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 37c833124..104a2d504 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 03afa438a780b7925c6e76b2d03f9e08a350f40f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:29:18 +0200 Subject: [PATCH 562/609] Try other way ... --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 104a2d504..9ceaab7b9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByLabel(`shipping_handling_${carrierData.handlingCosts ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('shipping_handling_cost').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByLabel(`is_free_${carrierData.freeShipping ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From d70624f1103400824aedc2adcf4d54fcc4cad266 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:46:51 +0200 Subject: [PATCH 563/609] edit name error --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 9ceaab7b9..d0ce521a7 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,7 +101,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('shipping_handling_cost').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.locator('input').getByTitle('shipping_handling').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); From b91aa64faefd632eae61f0a11e57221761207cf0 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 10:55:55 +0200 Subject: [PATCH 564/609] Try getByRole --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d0ce521a7..d8a2507fb 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('shipping_handling').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.locator('input').getByTitle('is_free').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); From 4726596ada4875b590b60aa00ef7bd0825ad404b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 11:00:43 +0200 Subject: [PATCH 565/609] Add missing name to get by role --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d8a2507fb..fa805c1c7 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,9 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio').getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'shipping_handling'}).getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio').getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'is_free'}).getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -200,7 +200,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - await page.getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + await page.getByRole('radio', {name: 'active'}).getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); From 7a487e1a6952d7eb5e4910994e0c71bda0d25c1c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:15:17 +0200 Subject: [PATCH 566/609] Try conditions on ID# --- .../8.2/pages/BO/shipping/carriers/create.ts | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index fa805c1c7..91d6b61d9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -101,9 +101,19 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio', {name: 'shipping_handling'}).getByLabel(`${carrierData.handlingCosts ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + if (carrierData.freeShipping) { + await page.locator('#is_free_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.freeShipping) { + await page.locator('#is_free_off').setChecked(true, {timeout: 1500}); + } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); - await page.getByRole('radio', {name: 'is_free'}).getByLabel(`${carrierData.freeShipping ? 'Yes' : 'No'}`).setChecked(true, {timeout: 1500}); + if (carrierData.handlingCosts) { + await page.locator('#shipping_handling_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.handlingCosts) { + await page.locator('#shipping_handling_off').setChecked(true, {timeout: 1500}); + } if (carrierData.billing === 'According to total price') { await page.locator(this.billingPriceRadioButton).click(); @@ -200,7 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - await page.getByRole('radio', {name: 'active'}).getByLabel(`active_${carrierData.enable ? 'on' : 'off'}`).setChecked(true, {timeout: 1500}); + if (carrierData.enable) { + await page.locator('#active_on').setChecked(true, {timeout: 1500}); + } + if (!carrierData.enable) { + await page.locator('#active_off').setChecked(true, {timeout: 1500}); + } await page.locator(this.finishButton).click(); From 04eea873d776d68052f42a533ddc6679ee900712 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:24:36 +0200 Subject: [PATCH 567/609] Try force click --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 91d6b61d9..2833c2e99 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -102,17 +102,17 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.freeShipping) { - await page.locator('#is_free_on').setChecked(true, {timeout: 1500}); + await page.locator('#is_free_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.freeShipping) { - await page.locator('#is_free_off').setChecked(true, {timeout: 1500}); + await page.locator('#is_free_off').setChecked(true, {force: true, timeout: 1500}); } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.handlingCosts) { - await page.locator('#shipping_handling_on').setChecked(true, {timeout: 1500}); + await page.locator('#shipping_handling_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.handlingCosts) { - await page.locator('#shipping_handling_off').setChecked(true, {timeout: 1500}); + await page.locator('#shipping_handling_off').setChecked(true, {force: true, timeout: 1500}); } if (carrierData.billing === 'According to total price') { @@ -211,10 +211,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); if (carrierData.enable) { - await page.locator('#active_on').setChecked(true, {timeout: 1500}); + await page.locator('#active_on').setChecked(true, {force: true, timeout: 1500}); } if (!carrierData.enable) { - await page.locator('#active_off').setChecked(true, {timeout: 1500}); + await page.locator('#active_off').setChecked(true, {force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From a968c5b1dec71fc83e53232301ad727312fe68f8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:33:12 +0200 Subject: [PATCH 568/609] try click instead of set checked --- .../8.2/pages/BO/shipping/carriers/create.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 2833c2e99..d6bbe6a35 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -102,17 +102,17 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Set shipping locations and costs //await page.locator(this.freeShippingToggle(carrierData.freeShipping ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.freeShipping) { - await page.locator('#is_free_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#is_free_on').click({force: true, timeout: 1500}); } if (!carrierData.freeShipping) { - await page.locator('#is_free_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#is_free_off').click({force: true, timeout: 1500}); } //await page.locator(this.addHandlingCostsToggle(carrierData.handlingCosts ? 'on' : 'off')).setChecked(true, {timeout: 2000}); if (carrierData.handlingCosts) { - await page.locator('#shipping_handling_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#shipping_handling_on').click({force: true, timeout: 1500}); } if (!carrierData.handlingCosts) { - await page.locator('#shipping_handling_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#shipping_handling_off').click({force: true, timeout: 1500}); } if (carrierData.billing === 'According to total price') { @@ -211,10 +211,10 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); if (carrierData.enable) { - await page.locator('#active_on').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#active_on').click({force: true, timeout: 1500}); } if (!carrierData.enable) { - await page.locator('#active_off').setChecked(true, {force: true, timeout: 1500}); + await page.locator('input#active_off').click({force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From 8cdef2b6770dbf606262597e7764343abff55505 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:51:29 +0200 Subject: [PATCH 569/609] force click enable --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index d6bbe6a35..ec8caf154 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -210,13 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - if (carrierData.enable) { + if (carrierData.enable === true) { await page.locator('input#active_on').click({force: true, timeout: 1500}); } - if (!carrierData.enable) { + if (carrierData.enable === false) { await page.locator('input#active_off').click({force: true, timeout: 1500}); } - await page.locator(this.finishButton).click(); // Return successful message From 13e976d05cd6926d9cfa66c896bf69bd944b7d7b Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 14:57:05 +0200 Subject: [PATCH 570/609] Try inverse active on and off --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index ec8caf154..21dad15ef 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -210,11 +210,12 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr // Summary //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); + // TODO here something is weird when enable data is true we have to click active_off !!! even if in DOM yes = active_on if (carrierData.enable === true) { - await page.locator('input#active_on').click({force: true, timeout: 1500}); + await page.locator('input#active_off').click({force: true, timeout: 1500}); } if (carrierData.enable === false) { - await page.locator('input#active_off').click({force: true, timeout: 1500}); + await page.locator('input#active_on').click({force: true, timeout: 1500}); } await page.locator(this.finishButton).click(); From 359c076d475cab186949f49e0c4fbb84d71cc858 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 15:00:47 +0200 Subject: [PATCH 571/609] Back to setChecked for enable button --- src/versions/8.2/pages/BO/shipping/carriers/create.ts | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/create.ts b/src/versions/8.2/pages/BO/shipping/carriers/create.ts index 21dad15ef..faee5fdb4 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/create.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/create.ts @@ -209,14 +209,7 @@ class BOCarriersCreatePage extends BOCarriersCreatePageVersion implements BOCarr await page.locator(this.nextButton).click(); // Summary - //await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1000}); - // TODO here something is weird when enable data is true we have to click active_off !!! even if in DOM yes = active_on - if (carrierData.enable === true) { - await page.locator('input#active_off').click({force: true, timeout: 1500}); - } - if (carrierData.enable === false) { - await page.locator('input#active_on').click({force: true, timeout: 1500}); - } + await page.locator(this.enableToggle(carrierData.enable ? 'on' : 'off')).setChecked(true, {timeout: 1500}); await page.locator(this.finishButton).click(); // Return successful message From 25100c59383cdd96a2b5f10c4f4acc251b9dfc28 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 16:13:17 +0200 Subject: [PATCH 572/609] Comment waitForResponse --- .../develop/pages/BO/customers/addresses/create.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/versions/develop/pages/BO/customers/addresses/create.ts b/src/versions/develop/pages/BO/customers/addresses/create.ts index f685a6957..41c9ae8e7 100644 --- a/src/versions/develop/pages/BO/customers/addresses/create.ts +++ b/src/versions/develop/pages/BO/customers/addresses/create.ts @@ -103,14 +103,15 @@ class BOAddressesCreatePage extends BOBasePage implements BOAddressesCreatePageI ): Promise { if (await this.elementVisible(page, this.customerEmailInput, 2000)) { await this.setValue(page, this.customerEmailInput, addressData.email); - if ('keyboard' in page) { + +/* if ('keyboard' in page) { await page.keyboard.press('Tab'); } if ('waitForResponse' in page) { - await page.waitForResponse('**/sell/customers/customer-information**', { + await page.waitForResponse('**!/sell/customers/customer-information**', { timeout: 3000, }); - } + }*/ } await this.setValue(page, this.customerAddressdniInput, addressData.dni); await this.setValue(page, this.customerAddressAliasInput, addressData.alias); From 42087581fa160d6dc3e11c492a35a497bbc59b2f Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 16:25:26 +0200 Subject: [PATCH 573/609] Comment another -waitForResponse- --- src/versions/develop/pages/BO/orders/create.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/orders/create.ts b/src/versions/develop/pages/BO/orders/create.ts index b1b112ee5..7cb7304d1 100644 --- a/src/versions/develop/pages/BO/orders/create.ts +++ b/src/versions/develop/pages/BO/orders/create.ts @@ -691,7 +691,8 @@ class BOOrderCreatePage extends BOBasePage implements BOOrdersCreatePageInterfac // Add to cart await page.locator(this.addtoCartButton).click(); // Wait for the ajax call to be over (no visible feedback sadly) - await page.waitForResponse('**/sell/orders/carts/**/products**'); + // Disabled temporary + //await page.waitForResponse('**/sell/orders/carts/**/products**'); // The table visible is required, but on second addition it is always visible anyway await this.waitForVisibleSelector(page, this.productsTable); From 7cb2bc8aee55b5c706f07cff5cd62235a479e67c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 2 Sep 2025 17:43:05 +0200 Subject: [PATCH 574/609] Add await to dialogListener --- src/pages/commonPage.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/commonPage.ts b/src/pages/commonPage.ts index 2a787520d..0492c4004 100644 --- a/src/pages/commonPage.ts +++ b/src/pages/commonPage.ts @@ -317,13 +317,13 @@ export default class CommonPage implements CommonPageInterface { * @return {Promise} */ async dialogListener(page: Page, accept: boolean = true, text: string = ''): Promise { - page.once('dialog', (dialog) => { + page.once('dialog', async (dialog) => { if (accept && text === '') { - dialog.accept(); + await dialog.accept(); } else if (text !== '') { - dialog.accept(text); + await dialog.accept(text); } else { - dialog.dismiss(); + await dialog.dismiss(); } }); } From 97275a23802752bd78cb326900fcd778e650fcd8 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 3 Sep 2025 08:51:29 +0200 Subject: [PATCH 575/609] Try force remove dialog handler before handling new one --- src/pages/commonPage.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pages/commonPage.ts b/src/pages/commonPage.ts index 0492c4004..7c9a63e53 100644 --- a/src/pages/commonPage.ts +++ b/src/pages/commonPage.ts @@ -317,6 +317,7 @@ export default class CommonPage implements CommonPageInterface { * @return {Promise} */ async dialogListener(page: Page, accept: boolean = true, text: string = ''): Promise { + page.removeAllListeners?.('dialog'); page.once('dialog', async (dialog) => { if (accept && text === '') { await dialog.accept(); From 1ca773fd34ef567757766dbc8a4c5fc9b5131251 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:00:21 +0200 Subject: [PATCH 576/609] Add carriers for 1.7.7 --- src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts new file mode 100644 index 000000000..81ebe88aa --- /dev/null +++ b/src/versions/1.7.7/pages/BO/carriers/index.ts @@ -0,0 +1,18 @@ +// Import pages +import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; +import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; + + +class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { + /** + * @constructs + * Setting up texts and selectors to use in orders page + */ + constructor() { + super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; + } +} + +module.exports = new BOCarriersPage(); From dc8384dba3480f39e008b4bdf628cfe3c752edf4 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 23 Apr 2025 15:24:42 +0200 Subject: [PATCH 577/609] Move carriers folder to shipping folder --- src/versions/1.7.7/pages/BO/carriers/index.ts | 18 ------------------ .../1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 2 files changed, 2 insertions(+), 18 deletions(-) delete mode 100644 src/versions/1.7.7/pages/BO/carriers/index.ts diff --git a/src/versions/1.7.7/pages/BO/carriers/index.ts b/src/versions/1.7.7/pages/BO/carriers/index.ts deleted file mode 100644 index 81ebe88aa..000000000 --- a/src/versions/1.7.7/pages/BO/carriers/index.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Import pages -import {BOCarriersPageInterface} from "@interfaces/BO/shipping/carriers"; -import {BOCarriersPage as BOCarriersPageVersion} from "@versions/develop/pages/BO/shipping/carriers"; - - -class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInterface { - /** - * @constructs - * Setting up texts and selectors to use in orders page - */ - constructor() { - super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; - } -} - -module.exports = new BOCarriersPage(); diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 82b3a1bc5583b6599cd61131cec5fccba47124e9 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 11:59:10 +0200 Subject: [PATCH 578/609] Add page title and success message to 1.7.7 --- .../1.7.7/pages/BO/customers/addresses/create.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 07b98b822..1ec35207e 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -7,11 +7,16 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + constructor() { + super(); + + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; + + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); From 92b91eacb4a36c18f5c108657a2689ea7190ccde Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 12:11:47 +0200 Subject: [PATCH 579/609] Fix description in jsdocs --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From 5ce5594fc89c6b3a621f4da35f33c62e7d5d60ac Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:19:42 +0200 Subject: [PATCH 580/609] Re-add carrier create page link --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 176fb1ef1..465869208 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,6 +9,8 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); + // Header links + this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From b7f9286450d978dace30be5d18d0e16d3e23b882 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 14:36:05 +0200 Subject: [PATCH 581/609] implement version for addresses index --- .../1.7.7/pages/BO/customers/addresses/create.ts | 15 +++++++-------- .../1.7.7/pages/BO/customers/addresses/index.ts | 1 + 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 1ec35207e..19dfe39b4 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -7,16 +7,15 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr * @constructs * Setting up texts and selectors to use in addresses create page */ - constructor() { - super(); + constructor() { + super(); - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; + // Title and messages + this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links - this.saveAddressButton = '.card-footer button.btn-primary'; - } + // Header links + this.saveAddressButton = '.card-footer button.btn-primary'; + } } const boAddressesCreatePage = new BOAddressesCreatePage(); diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 519ce98b9..6006d49a0 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -14,6 +14,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI constructor() { super(); this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; + this.successfulCreationMessage = 'Successful creation.'; } } From 49087b167eab491c00f896d539582227f052f505 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Apr 2025 17:06:21 +0200 Subject: [PATCH 582/609] Add temp log for debug --- src/versions/1.7.7/pages/BO/orders/create.ts | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index 93438f56a..fb4e61402 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,9 +1,8 @@ // Import pages import FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; -import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; -// Imports from playwright import type {Page} from '@playwright/test'; +import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -54,6 +53,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea await this.clickAndWaitForURL(page, this.createOrderButton); } + /** + * Choose addresses in form + * @param page {Page} Browser tab + * @param deliveryAddress {string} Delivery address to choose + * @param invoiceAddress {string} Invoice address to choose + * @returns {Promise} + */ + async chooseAddresses(page: Page, deliveryAddress: string, invoiceAddress: string): Promise { + console.log(deliveryAddress); + await this.selectByVisibleText(page, this.deliveryAddressSelect, deliveryAddress); + await this.selectByVisibleText(page, this.invoiceAddressSelect, invoiceAddress); + } + /** * Set payment method * @param page {Page} Browser tab From 0c42696f4ddff81dd69c772239508c00871b2103 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:23:08 +0200 Subject: [PATCH 583/609] Override setPaymentMethod for 1.7.7 --- src/versions/1.7.7/pages/BO/orders/create.ts | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index fb4e61402..da4c15a3c 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -1,8 +1,9 @@ // Import pages import FakerOrder from '@data/faker/order'; import {BOOrdersCreatePageInterface} from '@interfaces/BO/orders/create'; -import type {Page} from '@playwright/test'; import {BOOrderCreatePage as BOOrderCreatePageVersion} from '@versions/1.7.8/pages/BO/orders/create'; +// Imports from playwright +import type {Page} from '@playwright/test'; class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCreatePageInterface { /** @@ -75,6 +76,19 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); } + + /** + * Set payment method + * @param page {Page} Browser tab + * @param paymentMethodModuleName {string} Payment method to choose + * @returns {Promise} + */ + async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { + await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); +/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); + await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); + await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ + } } const boOrderCreatePage = new BOOrderCreatePage(); From 095a51a77f7b9955dbe961113a67ec1f47d4eed6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 11:28:55 +0200 Subject: [PATCH 584/609] Remove unwanted comments --- src/versions/1.7.7/pages/BO/orders/create.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/orders/create.ts b/src/versions/1.7.7/pages/BO/orders/create.ts index da4c15a3c..ce0f285c4 100644 --- a/src/versions/1.7.7/pages/BO/orders/create.ts +++ b/src/versions/1.7.7/pages/BO/orders/create.ts @@ -85,9 +85,6 @@ class BOOrderCreatePage extends BOOrderCreatePageVersion implements BOOrdersCrea */ async setPaymentMethod(page: Page, paymentMethodModuleName: string): Promise { await page.locator(this.paymentMethodSelect).selectOption(paymentMethodModuleName); -/* await this.waitForSelectorAndClick(page, this.paymentMethodSelect); - await this.waitForVisibleSelector(page, this.paymentMethodSelectResult); - await page.locator(this.paymentMethodOption(paymentMethodModuleName)).click();*/ } } From 3c171d487af2b50fdb2d5bf290b35cecc8e33bf7 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 13:57:15 +0200 Subject: [PATCH 585/609] Move selector override from 1.7.7 to 8.2 --- src/versions/1.7.7/pages/BO/customers/addresses/create.ts | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts index 19dfe39b4..07b98b822 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/create.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/create.ts @@ -9,10 +9,6 @@ class BOAddressesCreatePage extends BOAddressCreatePageVersion implements BOAddr */ constructor() { super(); - - // Title and messages - this.pageTitleCreate = `Addresses • ${global.INSTALL.SHOP_NAME}`; - // Header links this.saveAddressButton = '.card-footer button.btn-primary'; } From d14a57ef389900939e27ae4320fd8996fa76ab22 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:08:00 +0200 Subject: [PATCH 586/609] Move carrier button selector override from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/shipping/carriers/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts index 465869208..176fb1ef1 100644 --- a/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts +++ b/src/versions/1.7.7/pages/BO/shipping/carriers/index.ts @@ -9,8 +9,6 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte */ constructor() { super(); - // Header links - this.addNewCarrierLink = 'a#page-header-desc-carrier-new_carrier'; } } From ebcfe2a76be191f1c8bcf665ee68a4b66dc94470 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Fri, 25 Apr 2025 14:20:12 +0200 Subject: [PATCH 587/609] Move adress creation success message from 1.7.7 to 1.7.8 --- src/versions/1.7.7/pages/BO/customers/addresses/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts index 6006d49a0..519ce98b9 100644 --- a/src/versions/1.7.7/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.7.7/pages/BO/customers/addresses/index.ts @@ -14,7 +14,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI constructor() { super(); this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; - this.successfulCreationMessage = 'Successful creation.'; } } From 23c487796910b979ce15a99558f4041105d4d87e Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 10:44:58 +0200 Subject: [PATCH 588/609] Add login compatibility for 1.6.1.24 --- src/data/faker/cmsPage.ts | 2 +- src/pages/BO/login/index.ts | 3 +++ src/versions/1.6.1.24/pages/BO/login/index.ts | 21 +++++++++++++++++++ .../8.2/pages/BO/shipping/carriers/index.ts | 12 +++++------ .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- .../develop/pages/BO/quickAccess/index.ts | 2 +- .../develop/pages/BO/searchResults.ts | 2 +- .../pages/BO/shipping/carriers/index.ts | 14 ++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 11 files changed, 51 insertions(+), 27 deletions(-) create mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index 9e2cf6c42..dea1cf4a1 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index the page */ + /** @type {boolean} True to index.ts the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index ed20f001e..a2759a9f3 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,6 +6,9 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { + if (semver.lt(psVersion, '7.0.0')) { + return require('@versions/1.6.1/pages/BO/login').loginPage; + } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts new file mode 100644 index 000000000..94bf43565 --- /dev/null +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -0,0 +1,21 @@ +// Import pages +import type {LoginPageInterface} from '@interfaces/BO/login'; +import {LoginPage} from '@versions/1.7.2/pages/BO/login'; + +/** + * Bo login page, contains functions that can be used on the page + * @class + * @extends ProductsPage + */ +class BOLoginVersion extends LoginPage implements LoginPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on login page + */ + constructor() { + super(); + } +} + +module.exports = new BOLoginVersion(); + diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 55503ee50..1c201b2a9 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 66053f27a..937e704b0 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index 1-based) + * @param nth {number} Index of the card (index.ts 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0bd20a8ad..0441624e0 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 449d1b95e..9e46a7b31 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index cc0d3261e..e66d8b17a 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index in the table + * @param row {number} Row index.ts in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index a87f8bdd7..774b69fff 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index" + * Click "Add missing products to the index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index" + * Click "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index" + * Click on the cron jon link for "Re-build the entire index.ts" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 59282a9c9..1d776ba58 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index) is added to a wishlist + * Check if a product (based on its index.ts) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index b873b9b5d..fdf6f4c20 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -208,7 +208,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -218,7 +218,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index of product in list of products + * @param id {number} index.ts of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -458,7 +458,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index) to the first wishlist + * Add a product (based on its index.ts) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 9998fae7e83da0367a9e39497609d486aa4c000a Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:26:10 +0200 Subject: [PATCH 589/609] Remove unwanted changes --- src/data/faker/cmsPage.ts | 2 +- src/versions/1.6.1.24/pages/BO/login/index.ts | 9 ++++----- .../pages/BO/modules/psgdpr/tabDataConfig.ts | 6 +++--- src/versions/develop/pages/BO/quickAccess/index.ts | 2 +- .../develop/pages/BO/shipping/carriers/index.ts | 14 +++++++------- .../pages/BO/shopParameters/search/index.ts | 6 +++--- .../develop/pages/FO/classic/category/index.ts | 4 ++-- .../develop/pages/FO/classic/home/index.ts | 6 +++--- 8 files changed, 24 insertions(+), 25 deletions(-) diff --git a/src/data/faker/cmsPage.ts b/src/data/faker/cmsPage.ts index dea1cf4a1..9e2cf6c42 100644 --- a/src/data/faker/cmsPage.ts +++ b/src/data/faker/cmsPage.ts @@ -59,7 +59,7 @@ export default class FakerCMSPage { /** @type {number} Position */ this.position = pageToCreate.position === undefined ? 0 : pageToCreate.position; - /** @type {boolean} True to index.ts the page */ + /** @type {boolean} True to index the page */ this.indexation = pageToCreate.indexation === undefined ? true : pageToCreate.indexation; } } diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts index 94bf43565..fbb75adbe 100644 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ b/src/versions/1.6.1.24/pages/BO/login/index.ts @@ -8,14 +8,13 @@ import {LoginPage} from '@versions/1.7.2/pages/BO/login'; * @extends ProductsPage */ class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** + /** * @constructs * Setting up texts and selectors to use on login page */ - constructor() { - super(); - } + constructor() { + super(); + } } module.exports = new BOLoginVersion(); - diff --git a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts index 937e704b0..66053f27a 100644 --- a/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts +++ b/src/versions/develop/pages/BO/modules/psgdpr/tabDataConfig.ts @@ -101,7 +101,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on a result card * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultCard(page: Page, nth: number): Promise { @@ -112,7 +112,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async clickResultRemoveData(page: Page, nth: number, cancel: boolean = false): Promise { @@ -130,7 +130,7 @@ class PsGdprTabDataConfigPage extends ModuleConfigurationPage implements ModuleP /** * Click on "Remove data" * @param page {Page} Browser tab - * @param nth {number} Index of the card (index.ts 1-based) + * @param nth {number} Index of the card (index 1-based) * @returns {Promise} */ async isModalRemoveDataVisible(page: Page): Promise { diff --git a/src/versions/develop/pages/BO/quickAccess/index.ts b/src/versions/develop/pages/BO/quickAccess/index.ts index 0441624e0..0bd20a8ad 100644 --- a/src/versions/develop/pages/BO/quickAccess/index.ts +++ b/src/versions/develop/pages/BO/quickAccess/index.ts @@ -114,7 +114,7 @@ class BOQuickAccess extends BOBasePage implements BOQuickAccessInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shipping/carriers/index.ts b/src/versions/develop/pages/BO/shipping/carriers/index.ts index e66d8b17a..cc0d3261e 100644 --- a/src/versions/develop/pages/BO/shipping/carriers/index.ts +++ b/src/versions/develop/pages/BO/shipping/carriers/index.ts @@ -260,7 +260,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Go to edit carrier page * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async goToEditCarrierPage(page: Page, row: number): Promise { @@ -270,7 +270,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -319,7 +319,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { @@ -533,7 +533,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number): Promise { @@ -551,7 +551,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -569,7 +569,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -587,7 +587,7 @@ class BOCarriersPage extends BOBasePage implements BOCarriersPageInterface { /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ diff --git a/src/versions/develop/pages/BO/shopParameters/search/index.ts b/src/versions/develop/pages/BO/shopParameters/search/index.ts index 774b69fff..a87f8bdd7 100644 --- a/src/versions/develop/pages/BO/shopParameters/search/index.ts +++ b/src/versions/develop/pages/BO/shopParameters/search/index.ts @@ -182,7 +182,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Add missing products to the index.ts" + * Click "Add missing products to the index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -193,7 +193,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click "Re-build the entire index.ts" + * Click "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ @@ -204,7 +204,7 @@ class BOSearchPage extends BOBasePage implements BOSearchPageInterface { } /** - * Click on the cron jon link for "Re-build the entire index.ts" + * Click on the cron jon link for "Re-build the entire index" * @param page {Page} Browser tab * @returns {Promise} */ diff --git a/src/versions/develop/pages/FO/classic/category/index.ts b/src/versions/develop/pages/FO/classic/category/index.ts index 1d776ba58..59282a9c9 100644 --- a/src/versions/develop/pages/FO/classic/category/index.ts +++ b/src/versions/develop/pages/FO/classic/category/index.ts @@ -693,7 +693,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise @@ -717,7 +717,7 @@ class CategoryPage extends FOBasePage implements FoCategoryPageInterface { } /** - * Check if a product (based on its index.ts) is added to a wishlist + * Check if a product (based on its index) is added to a wishlist * @param page {Page} * @param idxProduct {number} * @returns Promise diff --git a/src/versions/develop/pages/FO/classic/home/index.ts b/src/versions/develop/pages/FO/classic/home/index.ts index fdf6f4c20..b873b9b5d 100644 --- a/src/versions/develop/pages/FO/classic/home/index.ts +++ b/src/versions/develop/pages/FO/classic/home/index.ts @@ -208,7 +208,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Check product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async isPriceVisible(page: Page, id: number = 1): Promise { @@ -218,7 +218,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { /** * Get product price * @param page {Page} Browser tab - * @param id {number} index.ts of product in list of products + * @param id {number} index of product in list of products * @return {Promise} */ async getProductPrice(page:Page, id: number = 1): Promise { @@ -458,7 +458,7 @@ class FoHomePage extends FOBasePage implements FoHomePageInterface { } /** - * Add a product (based on its index.ts) to the first wishlist + * Add a product (based on its index) to the first wishlist * @param page {Page} Browser tab * @param idxProduct {number} Id of product * @returns Promise From 0772cee3b81df8a29295ed376c32bf4d5b0205e2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:28:06 +0200 Subject: [PATCH 590/609] Remove unwanted changes part2 --- src/versions/8.2/pages/BO/shipping/carriers/index.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/versions/8.2/pages/BO/shipping/carriers/index.ts b/src/versions/8.2/pages/BO/shipping/carriers/index.ts index 1c201b2a9..5d0c73525 100644 --- a/src/versions/8.2/pages/BO/shipping/carriers/index.ts +++ b/src/versions/8.2/pages/BO/shipping/carriers/index.ts @@ -89,7 +89,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get text from column in table * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ @@ -130,7 +130,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Get carrier status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async getStatus(page: Page, row: number = 1): Promise { @@ -140,7 +140,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set carriers status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param valueWanted {boolean} The carrier status value * @return {Promise}, true if click has been performed */ @@ -158,7 +158,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Is free shipping * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @returns {Promise} */ async isFreeShipping(page: Page, row: number = 1): Promise { @@ -168,7 +168,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Set free shipping status * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index. in the table * @param valueWanted {boolean} The carrier status value * @return {Promise} */ @@ -340,7 +340,7 @@ class BOCarriersPage extends BOCarriersPageVersion implements BOCarriersPageInte /** * Delete carrier from row * @param page {Page} Browser tab - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @return {Promise} */ async deleteCarrier(page: Page, row: number): Promise { From 540165470fc40c4237e81edd31ae4bcf826057d5 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:30:23 +0200 Subject: [PATCH 591/609] Remove unwanted changes part3 --- src/versions/develop/pages/BO/searchResults.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/develop/pages/BO/searchResults.ts b/src/versions/develop/pages/BO/searchResults.ts index 9e46a7b31..449d1b95e 100644 --- a/src/versions/develop/pages/BO/searchResults.ts +++ b/src/versions/develop/pages/BO/searchResults.ts @@ -155,7 +155,7 @@ class BOSearchResultsPage extends BOBasePage implements BOSearchResultsPageInter * Get text from column in table * @param page {Page} Browser tab * @param type {string} Type of results wanted - * @param row {number} Row index.ts in the table + * @param row {number} Row index in the table * @param columnName {string} Column name in the table * @return {Promise} */ From 89203ab82f7031cf9ca2d3e5543fb772a4756a2d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 11:52:13 +0200 Subject: [PATCH 592/609] Add compat requirement in pages --- src/versions/1.6.1.24/pages/BO/login/index.ts | 20 ------------------- 1 file changed, 20 deletions(-) delete mode 100644 src/versions/1.6.1.24/pages/BO/login/index.ts diff --git a/src/versions/1.6.1.24/pages/BO/login/index.ts b/src/versions/1.6.1.24/pages/BO/login/index.ts deleted file mode 100644 index fbb75adbe..000000000 --- a/src/versions/1.6.1.24/pages/BO/login/index.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Import pages -import type {LoginPageInterface} from '@interfaces/BO/login'; -import {LoginPage} from '@versions/1.7.2/pages/BO/login'; - -/** - * Bo login page, contains functions that can be used on the page - * @class - * @extends ProductsPage - */ -class BOLoginVersion extends LoginPage implements LoginPageInterface { - /** - * @constructs - * Setting up texts and selectors to use on login page - */ - constructor() { - super(); - } -} - -module.exports = new BOLoginVersion(); From a5a7091151ac86852382ee8cc637d3665632f089 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:09:12 +0200 Subject: [PATCH 593/609] Remove temporary login require --- src/pages/BO/login/index.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/pages/BO/login/index.ts b/src/pages/BO/login/index.ts index a2759a9f3..ed20f001e 100644 --- a/src/pages/BO/login/index.ts +++ b/src/pages/BO/login/index.ts @@ -6,9 +6,6 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): LoginPageInterface { - if (semver.lt(psVersion, '7.0.0')) { - return require('@versions/1.6.1/pages/BO/login').loginPage; - } if (semver.lt(psVersion, '7.3.0')) { return require('@versions/1.7.2/pages/BO/login').loginPage; } From 0a8c128b5a1da8271fb3ada65b6abc6aa973bc25 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 15:58:33 +0200 Subject: [PATCH 594/609] Try implementes carriers link to 1.6.1 --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index fa20302bf..da8fedd0d 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -7,6 +7,8 @@ import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dash * @extends DashboardPage */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { + private shippingLink: string; + private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page @@ -25,6 +27,7 @@ class DashboardPage extends DashboardPageVersion implements DashboardPageInterfa this.ordersParentLink = 'li#maintab-AdminParentOrders'; // Shipping this.shippingLink = '#maintab-AdminParentShipping'; + this.carriersLink = '#subtab-AdminCarriers'; } } From 1aace3da7379bc55bf5f1b8e28bdc63a7587c916 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Apr 2025 16:16:18 +0200 Subject: [PATCH 595/609] Correctly implementes Dashboard --- src/versions/1.6.1/pages/BO/dashboard/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/dashboard/index.ts b/src/versions/1.6.1/pages/BO/dashboard/index.ts index da8fedd0d..420653990 100644 --- a/src/versions/1.6.1/pages/BO/dashboard/index.ts +++ b/src/versions/1.6.1/pages/BO/dashboard/index.ts @@ -7,8 +7,6 @@ import {Dashboard as DashboardPageVersion} from '@versions/develop/pages/BO/dash * @extends DashboardPage */ class DashboardPage extends DashboardPageVersion implements DashboardPageInterface { - private shippingLink: string; - private carriersLink: string; /** * @constructs * Setting up titles and selectors to use on dashboard page From f5d30785901a1b200227856116eea69e2070e4fb Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:16:44 +0200 Subject: [PATCH 596/609] Update alert block locators --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index c02e580f6..93c34a89b 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -17,6 +17,11 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; + // Alert Text + this.alertBlock = 'div.alert'; + this.alertTextBlock = `${this.alertBlock}`; + this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; + this.alertSuccessBlock = `${this.alertBlock}.alert-success`; } } From d7952c09ce483de671dc9e27fed95c67f4a97b8d Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:27:44 +0200 Subject: [PATCH 597/609] Update success block --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 93c34a89b..71e803798 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -22,6 +22,7 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.alertTextBlock = `${this.alertBlock}`; this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; this.alertSuccessBlock = `${this.alertBlock}.alert-success`; + this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From a52125633c175f5f97327753b5eed4a6e51ccf14 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Apr 2025 12:32:38 +0200 Subject: [PATCH 598/609] Override save and getSuccessTxt --- src/versions/1.6.1/pages/BO/customers/addresses/index.ts | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts index 71e803798..c02e580f6 100644 --- a/src/versions/1.6.1/pages/BO/customers/addresses/index.ts +++ b/src/versions/1.6.1/pages/BO/customers/addresses/index.ts @@ -17,12 +17,6 @@ class BOAddressesPage extends BOAddressesPageVersion implements BOAddressesPageI this.pageTitle = `Addresses • ${global.INSTALL.SHOP_NAME}`; // Header links this.addNewAddressLink = '#page-header-desc-address-new_address'; - // Alert Text - this.alertBlock = 'div.alert'; - this.alertTextBlock = `${this.alertBlock}`; - this.alertBlockCloseButton = `${this.alertBlock} button[aria-label='Close']`; - this.alertSuccessBlock = `${this.alertBlock}.alert-success`; - this.alertSuccessBlockParagraph = `${this.alertSuccessBlock}`; } } From aafd076655b80f9e16075008cab3c3fa68dbbc63 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:27:30 +0200 Subject: [PATCH 599/609] Update pdfjs version to try remove unwanted warning logs --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 225da52f6..a63031987 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^3.6.172", + "pdfjs-dist": "^4.10.38", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From ebd2ac4d81bf7fafed826a5829cde90e911a6902 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Thu, 24 Jul 2025 14:30:20 +0200 Subject: [PATCH 600/609] Rollback --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a63031987..225da52f6 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "js-image-generator": "^1.0.4", "libsodium-wrappers": "^0.7.13", "maildev": "^2.1.0", - "pdfjs-dist": "^4.10.38", + "pdfjs-dist": "^3.6.172", "semver": "^7.5.4", "xlsx": "^0.18.5", "xpath-ts": "^1.3.13" From b674d17db990659a961683bb2fad02d795900046 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:22:45 +0200 Subject: [PATCH 601/609] Edit require for catalog/product/create/tabDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 06871259e..a05473067 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,13 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + } + if (semver.lt(psVersion, '8.2.0')) { + return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.3.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; From db9173a8dc3ed7fd0c007beb4cd97d013011e634 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 15:51:36 +0200 Subject: [PATCH 602/609] Edit setProductDescription for 8.2.1 --- .../catalog/products/create/tabDescription.ts | 4 +- .../products/create/tabDescriptiion.ts | 47 +++++++++++++++++++ 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index a05473067..701bb89a7 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -7,10 +7,10 @@ const psVersion = testContext.getPSVersion(); /* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '7.8.0')) { - return require('@versions/1.7.8/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/1.7.7/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.1.0')) { - return require('@versions/8.1/pages/BO/catalog/products/create/tabDescription').descriptionTab; + return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.2.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts new file mode 100644 index 000000000..521652fae --- /dev/null +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -0,0 +1,47 @@ +// Import pages +import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; + +import type FakerProduct from '@data/faker/product'; + +import type {Page} from 'playwright'; + +/** + * Bo product description tab, contains functions that can be used on the page + * @class + * @extends DescriptionTab + */ +class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + /** + * @constructs + * Setting up texts and selectors to use on description tab + */ + constructor() { + super(); + + this.descriptionTabLink = '#product_description-tab-nav'; + this.productShortDescriptionIframe = '#product_description_description_short'; + this.productDescriptionIframe = '#product_description_description'; + } + + /** + * Set product description + * @param page {Page} Browser tab + * @param productData {FakerProduct} Data to set in description form + * @returns {Promise} + */ + async setProductDescription(page: Page, productData: FakerProduct): Promise { + await this.waitForSelectorAndClick(page, this.descriptionTabLink); + if (productData.type === 'combinations') { + await page.locator(this.productWithCombinationsInput).click(); + } + + await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); + + await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); + await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); + } +} + +const descriptionTab = new BOProductTabDescriptionVersion(); +export {descriptionTab, BOProductTabDescriptionVersion}; From b81e579404503534e4933af05c0fa8fdd2b3f237 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:25:43 +0200 Subject: [PATCH 603/609] Edit versionning for productDescription --- src/pages/BO/catalog/products/create/tabDescription.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 701bb89a7..88e08b0f8 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '8.2.0')) { + if (semver.lt(psVersion, '9.0.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.3.0')) { From 4d30c187c5dc407ca7ea1bf0ef35ce546e4b07ba Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:33:29 +0200 Subject: [PATCH 604/609] Edit productDescription --- .../8.2/pages/BO/catalog/products/create/tabDescriptiion.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts index 521652fae..44ef1299c 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts @@ -1,6 +1,6 @@ // Import pages import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; -import {DescriptionTab} from '@versions/8.0/pages/BO/catalog/products/create/tabDescription'; +import {DescriptionTab} from '@versions/develop/pages/BO/catalog/products/create/tabDescription'; import type FakerProduct from '@data/faker/product'; @@ -12,6 +12,9 @@ import type {Page} from 'playwright'; * @extends DescriptionTab */ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { + private readonly productShortDescriptionIframe: string; + private readonly productDescriptionIframe: string; + private productWithCombinationsInput: string; /** * @constructs * Setting up texts and selectors to use on description tab @@ -22,6 +25,7 @@ class BOProductTabDescriptionVersion extends DescriptionTab implements BOProduct this.descriptionTabLink = '#product_description-tab-nav'; this.productShortDescriptionIframe = '#product_description_description_short'; this.productDescriptionIframe = '#product_description_description'; + this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; } /** From 3fc6ecb7cadfe54ab370d106abda4a974ddb4ca2 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Mon, 28 Jul 2025 16:41:22 +0200 Subject: [PATCH 605/609] Edit typo on file name --- .../products/create/tabDescriptiion.ts | 51 ------------------- 1 file changed, 51 deletions(-) delete mode 100644 src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts diff --git a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts b/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts deleted file mode 100644 index 44ef1299c..000000000 --- a/src/versions/8.2/pages/BO/catalog/products/create/tabDescriptiion.ts +++ /dev/null @@ -1,51 +0,0 @@ -// Import pages -import type {BOProductsCreateTabDescriptionPageInterface} from '@interfaces/BO/catalog/products/create/tabDescription'; -import {DescriptionTab} from '@versions/develop/pages/BO/catalog/products/create/tabDescription'; - -import type FakerProduct from '@data/faker/product'; - -import type {Page} from 'playwright'; - -/** - * Bo product description tab, contains functions that can be used on the page - * @class - * @extends DescriptionTab - */ -class BOProductTabDescriptionVersion extends DescriptionTab implements BOProductsCreateTabDescriptionPageInterface { - private readonly productShortDescriptionIframe: string; - private readonly productDescriptionIframe: string; - private productWithCombinationsInput: string; - /** - * @constructs - * Setting up texts and selectors to use on description tab - */ - constructor() { - super(); - - this.descriptionTabLink = '#product_description-tab-nav'; - this.productShortDescriptionIframe = '#product_description_description_short'; - this.productDescriptionIframe = '#product_description_description'; - this.productWithCombinationsInput = '#show_variations_selector div:nth-of-type(2) input'; - } - - /** - * Set product description - * @param page {Page} Browser tab - * @param productData {FakerProduct} Data to set in description form - * @returns {Promise} - */ - async setProductDescription(page: Page, productData: FakerProduct): Promise { - await this.waitForSelectorAndClick(page, this.descriptionTabLink); - if (productData.type === 'combinations') { - await page.locator(this.productWithCombinationsInput).click(); - } - - await this.addProductImages(page, [productData.coverImage, productData.thumbImage]); - - await this.setValueOnTinymceInput(page, this.productDescriptionIframe, productData.description); - await this.setValueOnTinymceInput(page, this.productShortDescriptionIframe, productData.summary); - } -} - -const descriptionTab = new BOProductTabDescriptionVersion(); -export {descriptionTab, BOProductTabDescriptionVersion}; From e153d1f02b77ed1f6238dc3c2b0077bd13333053 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 29 Jul 2025 10:23:58 +0200 Subject: [PATCH 606/609] Add setProductName for 8.2 --- .../catalog/products/create/tabDescription.ts | 2 +- .../pages/BO/catalog/products/create/index.ts | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/pages/BO/catalog/products/create/tabDescription.ts b/src/pages/BO/catalog/products/create/tabDescription.ts index 88e08b0f8..920b73b0b 100644 --- a/src/pages/BO/catalog/products/create/tabDescription.ts +++ b/src/pages/BO/catalog/products/create/tabDescription.ts @@ -12,7 +12,7 @@ function requirePage(): BOProductsCreateTabDescriptionPageInterface { if (semver.lt(psVersion, '8.1.0')) { return require('@versions/8.0/pages/BO/catalog/products/create/tabDescription').descriptionTab; } - if (semver.lt(psVersion, '9.0.0')) { + if (semver.lt(psVersion, '8.3.0')) { return require('@versions/8.2/pages/BO/catalog/products/create/tabDescription').descriptionTab; } if (semver.lt(psVersion, '8.3.0')) { diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 6efb18238..981a4628f 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,6 +19,24 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { + + /** + * Set product name + * @param page {Page} Browser tab + * @param name {string} Name of the product + * @param locale {string} Locale + * @returns {Promise} + */ + async setProductName(page: Page, name: string, locale: string = 'en'): Promise { + const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { + await page.locator(this.productNameLanguageButton).click({timeout: 1000}); + await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000}); + } + + await this.setValue(page, this.productNameInput(locale), name); + } + /** * Set product name * @param page {Page} Browser tab From 6c0cfb5b11face38db8c2e6e1038d9f6bb62e1f1 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 14:36:33 +0200 Subject: [PATCH 607/609] Update 1.6 locators for localization --- .../pages/BO/localization/localization/index.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index d184de596..96b39f5c1 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -1,4 +1,3 @@ -import ImportContent from '@data/types/localization'; import {type BOLocalizationPageInterface} from '@interfaces/BO/international/localization'; import {BOLocalizationPage as BOLocalizationPageVersion} from '@versions/1.7.7/pages/BO/international/localization'; import type {Page} from 'playwright'; @@ -15,10 +14,16 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza */ constructor() { super(); - - // Import localization pack selectors - this.downloadPackDataToggleInput = (toggle: string | number) => `#download_updated_pack_${toggle}`; - this.importButton = 'button.btn.btn-primary:has-text("Import")'; + // Import localization pack selectors + this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importStatesCheckbox = '#selection[]_states'; + this.importTaxesCheckbox = '#selection[]_taxes'; + this.importCurrenciesCheckbox = '#selection[]_currencies'; + this.importLanguagesCheckbox = '#selection[]_languages'; + this.importUnitsCheckbox = '#selection[]_units'; + this.updatepriceDisplayForGroupsCHeckbox = '#selection[]_groups'; + this.downloadPackDataToggleInput = (toggle: number) => `#download_updated_pack_${toggle}`; + this.importButton = 'button.btn.btn-primary:has-text("Import")'; } /* Methods */ From b87a09c8efb4433f4a67ecfbfe69478a2ff431a6 Mon Sep 17 00:00:00 2001 From: SD1982 Date: Wed, 13 Aug 2025 15:13:07 +0200 Subject: [PATCH 608/609] Edit locator for localization select --- src/versions/1.6.1/pages/BO/localization/localization/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/1.6.1/pages/BO/localization/localization/index.ts b/src/versions/1.6.1/pages/BO/localization/localization/index.ts index 96b39f5c1..bbac8b764 100644 --- a/src/versions/1.6.1/pages/BO/localization/localization/index.ts +++ b/src/versions/1.6.1/pages/BO/localization/localization/index.ts @@ -15,7 +15,7 @@ class BOLocalizationPage extends BOLocalizationPageVersion implements BOLocaliza constructor() { super(); // Import localization pack selectors - this.importlocalizationPackSelect = 'select#iso_localization_pack'; + this.importlocalizationPackSelect = '#iso_localization_pack'; this.importStatesCheckbox = '#selection[]_states'; this.importTaxesCheckbox = '#selection[]_taxes'; this.importCurrenciesCheckbox = '#selection[]_currencies'; From 772f7e99f9f9c12bad69efd8d493d4f587fefd4c Mon Sep 17 00:00:00 2001 From: SD1982 Date: Tue, 26 Aug 2025 11:36:43 +0200 Subject: [PATCH 609/609] Edit createCarrier for 8.2 --- src/versions/8.2/pages/BO/catalog/products/create/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/versions/8.2/pages/BO/catalog/products/create/index.ts b/src/versions/8.2/pages/BO/catalog/products/create/index.ts index 981a4628f..c8f8d7370 100644 --- a/src/versions/8.2/pages/BO/catalog/products/create/index.ts +++ b/src/versions/8.2/pages/BO/catalog/products/create/index.ts @@ -19,7 +19,6 @@ import type {Page} from 'playwright'; * @extends BOProductsCreatePage */ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProductsCreatePageInterface { - /** * Set product name * @param page {Page} Browser tab @@ -29,6 +28,7 @@ class BOProductsCreatePageVersion extends BOProductsCreatePage implements BOProd */ async setProductName(page: Page, name: string, locale: string = 'en'): Promise { const isShopMultiLanguages = await page.locator(this.productNameLanguageButton).isVisible({timeout: 1200}); + if (isShopMultiLanguages) { await page.locator(this.productNameLanguageButton).click({timeout: 1000}); await page.locator(this.productNameLanguageDropdownItem(locale)).click({timeout: 1000});