From 7c7ca21c1bb9b009973b6ad0a775fad5a438e444 Mon Sep 17 00:00:00 2001 From: WebDevNerdStuff Date: Sat, 27 Apr 2024 17:03:31 -0700 Subject: [PATCH 1/9] Add cypress to ignore --- .eslintrc.js | 1 + 1 file changed, 1 insertion(+) diff --git a/.eslintrc.js b/.eslintrc.js index 4d657bd..967f7ea 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -15,6 +15,7 @@ module.exports = { 'vite.build.config.mts', 'vite.config.mts', '*.bk.vue', + 'cypress/**/*', ], overrides: [ { From ba30e9e2208e80da23e046461a0cb970264b530a Mon Sep 17 00:00:00 2001 From: WebDevNerdStuff Date: Sat, 27 Apr 2024 17:03:51 -0700 Subject: [PATCH 2/9] add cypress --- cypress.config.ts | 12 + cypress/fixtures/example.json | 5 + cypress/support/commands.ts | 37 ++ cypress/support/component-index.html | 12 + cypress/support/component.ts | 39 ++ package.json | 4 +- pnpm-lock.yaml | 647 +++++++++++++++++++++++++-- 7 files changed, 726 insertions(+), 30 deletions(-) create mode 100644 cypress.config.ts create mode 100644 cypress/fixtures/example.json create mode 100644 cypress/support/commands.ts create mode 100644 cypress/support/component-index.html create mode 100644 cypress/support/component.ts diff --git a/cypress.config.ts b/cypress.config.ts new file mode 100644 index 0000000..0996383 --- /dev/null +++ b/cypress.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from "cypress"; + +export default defineConfig({ + component: { + devServer: { + framework: "vue", + bundler: "vite", + }, + }, + viewportHeight: 768, + viewportWidth: 1024, +}); diff --git a/cypress/fixtures/example.json b/cypress/fixtures/example.json new file mode 100644 index 0000000..02e4254 --- /dev/null +++ b/cypress/fixtures/example.json @@ -0,0 +1,5 @@ +{ + "name": "Using fixtures to represent data", + "email": "hello@cypress.io", + "body": "Fixtures are a great way to mock data for responses to routes" +} diff --git a/cypress/support/commands.ts b/cypress/support/commands.ts new file mode 100644 index 0000000..698b01a --- /dev/null +++ b/cypress/support/commands.ts @@ -0,0 +1,37 @@ +/// +// *********************************************** +// This example commands.ts shows you how to +// create various custom commands and overwrite +// existing commands. +// +// For more comprehensive examples of custom +// commands please read more here: +// https://on.cypress.io/custom-commands +// *********************************************** +// +// +// -- This is a parent command -- +// Cypress.Commands.add('login', (email, password) => { ... }) +// +// +// -- This is a child command -- +// Cypress.Commands.add('drag', { prevSubject: 'element'}, (subject, options) => { ... }) +// +// +// -- This is a dual command -- +// Cypress.Commands.add('dismiss', { prevSubject: 'optional'}, (subject, options) => { ... }) +// +// +// -- This will overwrite an existing command -- +// Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... }) +// +// declare global { +// namespace Cypress { +// interface Chainable { +// login(email: string, password: string): Chainable +// drag(subject: string, options?: Partial): Chainable +// dismiss(subject: string, options?: Partial): Chainable +// visit(originalFn: CommandOriginalFn, url: string, options: Partial): Chainable +// } +// } +// } \ No newline at end of file diff --git a/cypress/support/component-index.html b/cypress/support/component-index.html new file mode 100644 index 0000000..ac6e79f --- /dev/null +++ b/cypress/support/component-index.html @@ -0,0 +1,12 @@ + + + + + + + Components App + + +
+ + \ No newline at end of file diff --git a/cypress/support/component.ts b/cypress/support/component.ts new file mode 100644 index 0000000..9b33d4a --- /dev/null +++ b/cypress/support/component.ts @@ -0,0 +1,39 @@ +// *********************************************************** +// This example support/component.ts is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +import './commands' + +// Alternatively you can use CommonJS syntax: +// require('./commands') + +import { mount } from 'cypress/vue' + +// Augment the Cypress namespace to include type definitions for +// your custom command. +// Alternatively, can be defined in cypress/support/component.d.ts +// with a at the top of your spec. +declare global { + namespace Cypress { + interface Chainable { + mount: typeof mount + } + } +} + +Cypress.Commands.add('mount', mount) + +// Example use: +// cy.mount(MyComponent) \ No newline at end of file diff --git a/package.json b/package.json index 44599a5..9dbf84f 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,8 @@ "prepare": "husky install", "test:dev": "NODE_OPTIONS='--no-warnings' vitest", "test:commit": "vitest --run --bail 1", - "test:build": "vitest --run --bail 1 --reporter dot" + "test:build": "vitest --run --bail 1 --reporter dot", + "cy:open": "cypress open" }, "lint-staged": { "src/**/*.{js,ts,vue}": [ @@ -100,6 +101,7 @@ "@vue/eslint-config-typescript": "^12.0.0", "@vue/test-utils": "^2.4.3", "autoprefixer": "^10.4.16", + "cypress": "^13.8.1", "eslint": "^8.56.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-import": "^2.29.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fd4a739..bd772e1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -82,6 +82,9 @@ devDependencies: autoprefixer: specifier: ^10.4.16 version: 10.4.16(postcss@8.4.33) + cypress: + specifier: ^13.8.1 + version: 13.8.1 eslint: specifier: ^8.56.0 version: 8.56.0 @@ -280,6 +283,13 @@ packages: '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 + /@colors/colors@1.5.0: + resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} + engines: {node: '>=0.1.90'} + requiresBuild: true + dev: true + optional: true + /@csstools/css-parser-algorithms@2.5.0(@csstools/css-tokenizer@2.2.3): resolution: {integrity: sha512-abypo6m9re3clXA00eu5syw+oaPHbJTPapu9C4pzNsJ4hdZDzushT50Zhu+iIYXgEe1CxnRMn7ngsbV+MLrlpQ==} engines: {node: ^14 || ^16 || >=18} @@ -314,6 +324,39 @@ packages: postcss-selector-parser: 6.0.15 dev: true + /@cypress/request@3.0.1: + resolution: {integrity: sha512-TWivJlJi8ZDx2wGOw1dbLuHJKUYX7bWySw377nlnGOW3hP9/MUKIsEdXT/YngWxVdgNCHRBmFlBipE+5/2ZZlQ==} + engines: {node: '>= 6'} + dependencies: + aws-sign2: 0.7.0 + aws4: 1.12.0 + caseless: 0.12.0 + combined-stream: 1.0.8 + extend: 3.0.2 + forever-agent: 0.6.1 + form-data: 2.3.3 + http-signature: 1.3.6 + is-typedarray: 1.0.0 + isstream: 0.1.2 + json-stringify-safe: 5.0.1 + mime-types: 2.1.35 + performance-now: 2.1.0 + qs: 6.10.4 + safe-buffer: 5.2.1 + tough-cookie: 4.1.3 + tunnel-agent: 0.6.0 + uuid: 8.3.2 + dev: true + + /@cypress/xvfb@1.2.4(supports-color@8.1.1): + resolution: {integrity: sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==} + dependencies: + debug: 3.2.7(supports-color@8.1.1) + lodash.once: 4.1.1 + transitivePeerDependencies: + - supports-color + dev: true + /@discoveryjs/json-ext@0.5.7: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} @@ -546,7 +589,7 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) espree: 9.6.1 globals: 13.24.0 ignore: 5.3.0 @@ -626,7 +669,7 @@ packages: engines: {node: '>=10.10.0'} dependencies: '@humanwhocodes/object-schema': 2.0.2 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -1243,6 +1286,14 @@ packages: '@types/node': 20.11.0 dev: true + /@types/sinonjs__fake-timers@8.1.1: + resolution: {integrity: sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==} + dev: true + + /@types/sizzle@2.3.8: + resolution: {integrity: sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==} + dev: true + /@types/sockjs@0.3.36: resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==} dependencies: @@ -1255,6 +1306,14 @@ packages: '@types/node': 20.11.0 dev: true + /@types/yauzl@2.10.3: + resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} + requiresBuild: true + dependencies: + '@types/node': 20.11.0 + dev: true + optional: true + /@typescript-eslint/eslint-plugin@6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.3.3): resolution: {integrity: sha512-nISDRYnnIpk7VCFrGcu1rnZfM1Dh9LRHnfgdkjcbi/l7g16VYRri3TjXi9Ir4lOZSw5N/gnV/3H7jIPQ8Q4daA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -1272,7 +1331,7 @@ packages: '@typescript-eslint/type-utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/visitor-keys': 6.18.1 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 graphemer: 1.4.0 ignore: 5.3.0 @@ -1298,7 +1357,7 @@ packages: '@typescript-eslint/types': 6.18.1 '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) '@typescript-eslint/visitor-keys': 6.18.1 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 typescript: 5.3.3 transitivePeerDependencies: @@ -1325,7 +1384,7 @@ packages: dependencies: '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 ts-api-utils: 1.0.3(typescript@5.3.3) typescript: 5.3.3 @@ -1349,7 +1408,7 @@ packages: dependencies: '@typescript-eslint/types': 6.18.1 '@typescript-eslint/visitor-keys': 6.18.1 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 @@ -1559,7 +1618,7 @@ packages: css-loader: 6.8.1(webpack@5.89.0) css-minimizer-webpack-plugin: 3.4.1(webpack@5.89.0) cssnano: 5.1.15(postcss@8.4.33) - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) default-gateway: 6.0.3 dotenv: 10.0.0 dotenv-expand: 5.1.0 @@ -2060,11 +2119,19 @@ packages: resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} engines: {node: '>= 14'} dependencies: - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true + /aggregate-error@3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} + dependencies: + clean-stack: 2.2.0 + indent-string: 4.0.0 + dev: true + /ajv-formats@2.1.1(ajv@8.12.0): resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: @@ -2111,11 +2178,23 @@ packages: uri-js: 4.4.1 dev: true + /ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + dev: true + /ansi-escapes@3.2.0: resolution: {integrity: sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==} engines: {node: '>=4'} dev: true + /ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + dependencies: + type-fest: 0.21.3 + dev: true + /ansi-escapes@6.2.0: resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} engines: {node: '>=14.16'} @@ -2281,6 +2360,17 @@ packages: is-shared-array-buffer: 1.0.2 dev: true + /asn1@0.2.6: + resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} + dependencies: + safer-buffer: 2.1.2 + dev: true + + /assert-plus@1.0.0: + resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} + engines: {node: '>=0.8'} + dev: true + /assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true @@ -2330,6 +2420,14 @@ packages: engines: {node: '>= 0.4'} dev: true + /aws-sign2@0.7.0: + resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} + dev: true + + /aws4@1.12.0: + resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} + dev: true + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true @@ -2346,6 +2444,12 @@ packages: resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==} dev: true + /bcrypt-pbkdf@1.0.2: + resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} + dependencies: + tweetnacl: 0.14.5 + dev: true + /bidi-js@1.0.3: resolution: {integrity: sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==} dependencies: @@ -2369,6 +2473,10 @@ packages: readable-stream: 3.6.2 dev: true + /blob-util@2.0.2: + resolution: {integrity: sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==} + dev: true + /bluebird@3.7.2: resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} dev: true @@ -2437,6 +2545,10 @@ packages: update-browserslist-db: 1.0.13(browserslist@4.22.1) dev: true + /buffer-crc32@0.2.13: + resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} + dev: true + /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true @@ -2468,6 +2580,11 @@ packages: engines: {node: '>=8'} dev: true + /cachedir@2.4.0: + resolution: {integrity: sha512-9EtFOZR8g22CL7BWjJ9BUx1+A/djkofnyW3aOXZORNW2kxoUpx2h+uN2cOqwPmFhnpVmxg+KW2OjOSgChTEvsQ==} + engines: {node: '>=6'} + dev: true + /call-bind@1.0.5: resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} dependencies: @@ -2506,6 +2623,10 @@ packages: engines: {node: '>=4'} dev: true + /caseless@0.12.0: + resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} + dev: true + /chai@4.4.0: resolution: {integrity: sha512-x9cHNq1uvkCdU+5xTkNh5WtgD4e4yDFCsp9jVc7N7qVeKeftv3gO/ZrviX5d+3ZfxdYnZXZYujjRInu1RogU6A==} engines: {node: '>=4'} @@ -2555,6 +2676,11 @@ packages: get-func-name: 2.0.2 dev: true + /check-more-types@2.24.0: + resolution: {integrity: sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==} + engines: {node: '>= 0.8.0'} + dev: true + /chokidar@3.5.3: resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} @@ -2579,6 +2705,11 @@ packages: resolution: {integrity: sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==} dev: true + /ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + dev: true + /clean-css@5.3.2: resolution: {integrity: sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==} engines: {node: '>= 10.0'} @@ -2586,6 +2717,11 @@ packages: source-map: 0.6.1 dev: true + /clean-stack@2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} + dev: true + /cli-cursor@2.1.0: resolution: {integrity: sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==} engines: {node: '>=4'} @@ -2625,6 +2761,23 @@ packages: engines: {node: '>=6'} dev: true + /cli-table3@0.6.4: + resolution: {integrity: sha512-Lm3L0p+/npIQWNIiyF/nAn7T5dnOwR3xNTHXYEBFBFVPXzCVNZ5lqEC/1eo/EVfpDsQ1I+TX4ORPQgp+UI0CRw==} + engines: {node: 10.* || >= 12.*} + dependencies: + string-width: 4.2.3 + optionalDependencies: + '@colors/colors': 1.5.0 + dev: true + + /cli-truncate@2.1.0: + resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} + engines: {node: '>=8'} + dependencies: + slice-ansi: 3.0.0 + string-width: 4.2.3 + dev: true + /cli-truncate@4.0.0: resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} engines: {node: '>=18'} @@ -2719,6 +2872,11 @@ packages: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: true + /commander@6.2.1: + resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} + engines: {node: '>= 6'} + dev: true + /commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -2736,6 +2894,11 @@ packages: dev: true optional: true + /common-tags@1.8.2: + resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} + engines: {node: '>=4.0.0'} + dev: true + /commondir@1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} dev: true @@ -2993,6 +3156,10 @@ packages: webpack: 5.89.0 dev: true + /core-util-is@1.0.2: + resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} + dev: true + /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} dev: true @@ -3224,6 +3391,63 @@ packages: /csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + /cypress@13.8.1: + resolution: {integrity: sha512-Uk6ovhRbTg6FmXjeZW/TkbRM07KPtvM5gah1BIMp4Y2s+i/NMxgaLw0+PbYTOdw1+egE0FP3mWRiGcRkjjmhzA==} + engines: {node: ^16.0.0 || ^18.0.0 || >=20.0.0} + hasBin: true + requiresBuild: true + dependencies: + '@cypress/request': 3.0.1 + '@cypress/xvfb': 1.2.4(supports-color@8.1.1) + '@types/sinonjs__fake-timers': 8.1.1 + '@types/sizzle': 2.3.8 + arch: 2.2.0 + blob-util: 2.0.2 + bluebird: 3.7.2 + buffer: 5.7.1 + cachedir: 2.4.0 + chalk: 4.1.2 + check-more-types: 2.24.0 + cli-cursor: 3.1.0 + cli-table3: 0.6.4 + commander: 6.2.1 + common-tags: 1.8.2 + dayjs: 1.11.10 + debug: 4.3.4(supports-color@8.1.1) + enquirer: 2.4.1 + eventemitter2: 6.4.7 + execa: 4.1.0 + executable: 4.1.1 + extract-zip: 2.0.1(supports-color@8.1.1) + figures: 3.2.0 + fs-extra: 9.1.0 + getos: 3.2.1 + is-ci: 3.0.1 + is-installed-globally: 0.4.0 + lazy-ass: 1.6.0 + listr2: 3.14.0(enquirer@2.4.1) + lodash: 4.17.21 + log-symbols: 4.1.0 + minimist: 1.2.8 + ospath: 1.2.2 + pretty-bytes: 5.6.0 + process: 0.11.10 + proxy-from-env: 1.0.0 + request-progress: 3.0.0 + semver: 7.5.4 + supports-color: 8.1.1 + tmp: 0.2.3 + untildify: 4.0.0 + yauzl: 2.10.0 + dev: true + + /dashdash@1.14.1: + resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} + engines: {node: '>=0.10'} + dependencies: + assert-plus: 1.0.0 + dev: true + /data-urls@5.0.0: resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} engines: {node: '>=18'} @@ -3232,6 +3456,10 @@ packages: whatwg-url: 14.0.0 dev: true + /dayjs@1.11.10: + resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} + dev: true + /de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} dev: true @@ -3247,7 +3475,7 @@ packages: ms: 2.0.0 dev: true - /debug@3.2.7: + /debug@3.2.7(supports-color@8.1.1): resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} peerDependencies: supports-color: '*' @@ -3256,9 +3484,10 @@ packages: optional: true dependencies: ms: 2.1.3 + supports-color: 8.1.1 dev: true - /debug@4.3.4: + /debug@4.3.4(supports-color@8.1.1): resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} peerDependencies: @@ -3268,6 +3497,7 @@ packages: optional: true dependencies: ms: 2.1.2 + supports-color: 8.1.1 dev: true /decimal.js@10.4.3: @@ -3477,6 +3707,13 @@ packages: engines: {node: '>=6.0.0'} dev: true + /ecc-jsbn@0.1.2: + resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} + dependencies: + jsbn: 0.1.1 + safer-buffer: 2.1.2 + dev: true + /editorconfig@1.0.4: resolution: {integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==} engines: {node: '>=14'} @@ -3536,6 +3773,14 @@ packages: tapable: 2.2.1 dev: true + /enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + dev: true + /entities@2.2.0: resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} dev: true @@ -3701,7 +3946,7 @@ packages: /eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} dependencies: - debug: 3.2.7 + debug: 3.2.7(supports-color@8.1.1) is-core-module: 2.13.1 resolve: 1.22.8 transitivePeerDependencies: @@ -3730,7 +3975,7 @@ packages: optional: true dependencies: '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) - debug: 3.2.7 + debug: 3.2.7(supports-color@8.1.1) eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: @@ -3752,7 +3997,7 @@ packages: array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 array.prototype.flatmap: 1.3.2 - debug: 3.2.7 + debug: 3.2.7(supports-color@8.1.1) doctrine: 2.1.0 eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 @@ -3864,7 +4109,7 @@ packages: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 @@ -3956,6 +4201,10 @@ packages: engines: {node: '>=4.0.0'} dev: true + /eventemitter2@6.4.7: + resolution: {integrity: sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==} + dev: true + /eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} dev: true @@ -3995,6 +4244,21 @@ packages: strip-eof: 1.0.0 dev: true + /execa@4.1.0: + resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} + engines: {node: '>=10'} + dependencies: + cross-spawn: 7.0.3 + get-stream: 5.2.0 + human-signals: 1.1.1 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + dev: true + /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -4025,6 +4289,13 @@ packages: strip-final-newline: 3.0.0 dev: true + /executable@4.1.1: + resolution: {integrity: sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==} + engines: {node: '>=4'} + dependencies: + pify: 2.3.0 + dev: true + /express@4.18.2: resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==} engines: {node: '>= 0.10.0'} @@ -4064,6 +4335,29 @@ packages: - supports-color dev: true + /extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + dev: true + + /extract-zip@2.0.1(supports-color@8.1.1): + resolution: {integrity: sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==} + engines: {node: '>= 10.17.0'} + hasBin: true + dependencies: + debug: 4.3.4(supports-color@8.1.1) + get-stream: 5.2.0 + yauzl: 2.10.0 + optionalDependencies: + '@types/yauzl': 2.10.3 + transitivePeerDependencies: + - supports-color + dev: true + + /extsprintf@1.3.0: + resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} + engines: {'0': node >=0.6.0} + dev: true + /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true @@ -4109,6 +4403,12 @@ packages: websocket-driver: 0.7.4 dev: true + /fd-slicer@1.1.0: + resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} + dependencies: + pend: 1.2.0 + dev: true + /figures@2.0.0: resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==} engines: {node: '>=4'} @@ -4116,6 +4416,13 @@ packages: escape-string-regexp: 1.0.5 dev: true + /figures@3.2.0: + resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} + engines: {node: '>=8'} + dependencies: + escape-string-regexp: 1.0.5 + dev: true + /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -4227,7 +4534,7 @@ packages: debug: optional: true dependencies: - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) dev: true /for-each@0.3.3: @@ -4244,6 +4551,19 @@ packages: signal-exit: 4.1.0 dev: true + /forever-agent@0.6.1: + resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} + dev: true + + /form-data@2.3.3: + resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} + engines: {node: '>= 0.12'} + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + dev: true + /form-data@4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} @@ -4379,6 +4699,13 @@ packages: pump: 3.0.0 dev: true + /get-stream@5.2.0: + resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} + engines: {node: '>=8'} + dependencies: + pump: 3.0.0 + dev: true + /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -4397,6 +4724,18 @@ packages: get-intrinsic: 1.2.2 dev: true + /getos@3.2.1: + resolution: {integrity: sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==} + dependencies: + async: 3.2.5 + dev: true + + /getpass@0.1.7: + resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} + dependencies: + assert-plus: 1.0.0 + dev: true + /gh-pages@6.1.1: resolution: {integrity: sha512-upnohfjBwN5hBP9w2dPE7HO5JJTHzSGMV1JrLrHvNuqmjoYHg6TBrCcnEoorjG/e0ejbuvnwyKMdTyM40PEByw==} engines: {node: '>=10'} @@ -4463,6 +4802,13 @@ packages: once: 1.4.0 dev: true + /global-dirs@3.0.1: + resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} + engines: {node: '>=10'} + dependencies: + ini: 2.0.0 + dev: true + /global-modules@2.0.0: resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==} engines: {node: '>=6'} @@ -4720,7 +5066,7 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true @@ -4755,16 +5101,30 @@ packages: - debug dev: true + /http-signature@1.3.6: + resolution: {integrity: sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==} + engines: {node: '>=0.10'} + dependencies: + assert-plus: 1.0.0 + jsprim: 2.0.2 + sshpk: 1.18.0 + dev: true + /https-proxy-agent@7.0.2: resolution: {integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==} engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: true + /human-signals@1.1.1: + resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} + engines: {node: '>=8.12.0'} + dev: true + /human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} @@ -4853,6 +5213,11 @@ packages: engines: {node: '>=0.8.19'} dev: true + /indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + dev: true + /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: @@ -4872,6 +5237,11 @@ packages: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} dev: true + /ini@2.0.0: + resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==} + engines: {node: '>=10'} + dev: true + /internal-slot@1.0.6: resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} engines: {node: '>= 0.4'} @@ -4943,6 +5313,13 @@ packages: ci-info: 1.6.0 dev: true + /is-ci@3.0.1: + resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} + hasBin: true + dependencies: + ci-info: 3.9.0 + dev: true + /is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: @@ -5002,6 +5379,14 @@ packages: is-extglob: 2.1.1 dev: true + /is-installed-globally@0.4.0: + resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==} + engines: {node: '>=10'} + dependencies: + global-dirs: 3.0.1 + is-path-inside: 3.0.3 + dev: true + /is-interactive@1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} @@ -5110,6 +5495,10 @@ packages: which-typed-array: 1.1.13 dev: true + /is-typedarray@1.0.0: + resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} + dev: true + /is-unicode-supported@0.1.0: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} @@ -5145,6 +5534,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /isstream@0.1.2: + resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} + dev: true + /jackspeak@2.3.6: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} @@ -5221,6 +5614,10 @@ packages: argparse: 2.0.1 dev: true + /jsbn@0.1.1: + resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} + dev: true + /jsdom@23.2.0: resolution: {integrity: sha512-L88oL7D/8ufIES+Zjz7v0aes+oBMh2Xnh3ygWvL0OaICOomKEPKuPnIfBJekiXr+BHbbMjrWn/xqrDQuxFTeyA==} engines: {node: '>=18'} @@ -5277,10 +5674,18 @@ packages: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} dev: true + /json-schema@0.4.0: + resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + dev: true + /json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} dev: true + /json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + dev: true + /json5@1.0.2: resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} hasBin: true @@ -5312,6 +5717,16 @@ packages: graceful-fs: 4.2.11 dev: true + /jsprim@2.0.2: + resolution: {integrity: sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==} + engines: {'0': node >=0.6.0} + dependencies: + assert-plus: 1.0.0 + extsprintf: 1.3.0 + json-schema: 0.4.0 + verror: 1.10.0 + dev: true + /keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: @@ -5349,6 +5764,11 @@ packages: shell-quote: 1.8.1 dev: true + /lazy-ass@1.6.0: + resolution: {integrity: sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==} + engines: {node: '> 0.8'} + dev: true + /levn@0.4.1: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} @@ -5378,7 +5798,7 @@ packages: dependencies: chalk: 5.3.0 commander: 11.1.0 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) execa: 8.0.1 lilconfig: 3.0.0 listr2: 8.0.0 @@ -5390,6 +5810,26 @@ packages: - supports-color dev: true + /listr2@3.14.0(enquirer@2.4.1): + resolution: {integrity: sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==} + engines: {node: '>=10.0.0'} + peerDependencies: + enquirer: '>= 2.3.0 < 3' + peerDependenciesMeta: + enquirer: + optional: true + dependencies: + cli-truncate: 2.1.0 + colorette: 2.0.20 + enquirer: 2.4.1 + log-update: 4.0.0 + p-map: 4.0.0 + rfdc: 1.3.0 + rxjs: 7.8.1 + through: 2.3.8 + wrap-ansi: 7.0.0 + dev: true + /listr2@8.0.0: resolution: {integrity: sha512-u8cusxAcyqAiQ2RhYvV7kRKNLgUvtObIbhOX2NCXqvp1UU32xIg5CT22ykS2TPKJXZWJwtK3IKLiqAGlGNE+Zg==} engines: {node: '>=18.0.0'} @@ -5496,6 +5936,10 @@ packages: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} dev: true + /lodash.once@4.1.1: + resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} + dev: true + /lodash.pullall@4.2.0: resolution: {integrity: sha512-VhqxBKH0ZxPpLhiu68YD1KnHmbhQJQctcipvmFnqIBDYzcIHzf3Zpu0tpeOKtR4x76p9yohc506eGdOjTmyIBg==} dev: true @@ -5533,6 +5977,16 @@ packages: wrap-ansi: 3.0.1 dev: true + /log-update@4.0.0: + resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} + engines: {node: '>=10'} + dependencies: + ansi-escapes: 4.3.2 + cli-cursor: 3.1.0 + slice-ansi: 4.0.0 + wrap-ansi: 6.2.0 + dev: true + /log-update@6.0.0: resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==} engines: {node: '>=18'} @@ -6051,6 +6505,10 @@ packages: wcwidth: 1.0.1 dev: true + /ospath@1.2.2: + resolution: {integrity: sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==} + dev: true + /p-finally@1.0.0: resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} engines: {node: '>=4'} @@ -6091,6 +6549,13 @@ packages: p-limit: 3.1.0 dev: true + /p-map@4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} + engines: {node: '>=10'} + dependencies: + aggregate-error: 3.1.0 + dev: true + /p-queue@6.6.2: resolution: {integrity: sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==} engines: {node: '>=8'} @@ -6233,6 +6698,14 @@ packages: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} dev: true + /pend@1.2.0: + resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} + dev: true + + /performance-now@2.1.0: + resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} + dev: true + /picocolors@0.2.1: resolution: {integrity: sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==} dev: true @@ -6311,7 +6784,7 @@ packages: engines: {node: '>= 0.12.0'} dependencies: async: 2.6.4 - debug: 3.2.7 + debug: 3.2.7(supports-color@8.1.1) mkdirp: 0.5.6 transitivePeerDependencies: - supports-color @@ -6802,6 +7275,11 @@ packages: hasBin: true dev: true + /pretty-bytes@5.6.0: + resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} + engines: {node: '>=6'} + dev: true + /pretty-error@4.0.0: resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} dependencies: @@ -6827,6 +7305,11 @@ packages: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} dev: true + /process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + dev: true + /progress-webpack-plugin@1.0.16(webpack@5.89.0): resolution: {integrity: sha512-sdiHuuKOzELcBANHfrupYo+r99iPRyOnw15qX+rNlVUqXGfjXdH4IgxriKwG1kNJwVswKQHMdj1hYZMcb9jFaA==} engines: {node: '>= 10.13.0'} @@ -6856,6 +7339,10 @@ packages: ipaddr.js: 1.9.1 dev: true + /proxy-from-env@1.0.0: + resolution: {integrity: sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==} + dev: true + /pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} dev: true @@ -6876,6 +7363,13 @@ packages: engines: {node: '>=6'} dev: true + /qs@6.10.4: + resolution: {integrity: sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==} + engines: {node: '>=0.6'} + dependencies: + side-channel: 1.0.4 + dev: true + /qs@6.11.0: resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} engines: {node: '>=0.6'} @@ -6987,6 +7481,12 @@ packages: strip-ansi: 6.0.1 dev: true + /request-progress@3.0.0: + resolution: {integrity: sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==} + dependencies: + throttleit: 1.0.1 + dev: true + /require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -7172,6 +7672,12 @@ packages: queue-microtask: 1.2.3 dev: true + /rxjs@7.8.1: + resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} + dependencies: + tslib: 2.6.2 + dev: true + /safe-array-concat@1.0.1: resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} engines: {node: '>=0.4'} @@ -7428,6 +7934,15 @@ packages: engines: {node: '>=8'} dev: true + /slice-ansi@3.0.0: + resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} + engines: {node: '>=8'} + dependencies: + ansi-styles: 4.3.0 + astral-regex: 2.0.0 + is-fullwidth-code-point: 3.0.0 + dev: true + /slice-ansi@4.0.0: resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} engines: {node: '>=10'} @@ -7506,7 +8021,7 @@ packages: /spdy-transport@3.0.0: resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==} dependencies: - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) detect-node: 2.1.0 hpack.js: 2.1.6 obuf: 1.1.2 @@ -7520,7 +8035,7 @@ packages: resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==} engines: {node: '>=6.0.0'} dependencies: - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) handle-thing: 2.0.1 http-deceiver: 1.2.7 select-hose: 2.0.0 @@ -7533,6 +8048,22 @@ packages: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} dev: true + /sshpk@1.18.0: + resolution: {integrity: sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==} + engines: {node: '>=0.10.0'} + hasBin: true + dependencies: + asn1: 0.2.6 + assert-plus: 1.0.0 + bcrypt-pbkdf: 1.0.2 + dashdash: 1.14.1 + ecc-jsbn: 0.1.2 + getpass: 0.1.7 + jsbn: 0.1.1 + safer-buffer: 2.1.2 + tweetnacl: 0.14.5 + dev: true + /ssri@8.0.1: resolution: {integrity: sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==} engines: {node: '>= 8'} @@ -7788,7 +8319,7 @@ packages: cosmiconfig: 9.0.0(typescript@5.3.3) css-functions-list: 3.2.1 css-tree: 2.3.1 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) fast-glob: 3.3.2 fastest-levenshtein: 1.0.16 file-entry-cache: 8.0.0 @@ -7968,6 +8499,14 @@ packages: webpack: 5.89.0 dev: true + /throttleit@1.0.1: + resolution: {integrity: sha512-vDZpf9Chs9mAdfY046mcPt8fg5QSZr37hEH4TXYBnDF+izxgrbRGUAAaBvIk/fJm9aOFCGFd1EsNg5AZCbnQCQ==} + dev: true + + /through@2.3.8: + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + dev: true + /thunky@1.1.0: resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==} dev: true @@ -7986,6 +8525,11 @@ packages: engines: {node: '>=14.0.0'} dev: true + /tmp@0.2.3: + resolution: {integrity: sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==} + engines: {node: '>=14.14'} + dev: true + /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} @@ -8057,6 +8601,16 @@ packages: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: true + /tunnel-agent@0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + dependencies: + safe-buffer: 5.2.1 + dev: true + + /tweetnacl@0.14.5: + resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==} + dev: true + /type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -8074,6 +8628,11 @@ packages: engines: {node: '>=10'} dev: true + /type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + dev: true + /type-fest@0.6.0: resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} engines: {node: '>=8'} @@ -8234,6 +8793,11 @@ packages: webpack-virtual-modules: 0.6.1 dev: true + /untildify@4.0.0: + resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} + engines: {node: '>=8'} + dev: true + /upath@2.0.1: resolution: {integrity: sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==} engines: {node: '>=4'} @@ -8298,13 +8862,22 @@ packages: engines: {node: '>= 0.8'} dev: true + /verror@1.10.0: + resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==} + engines: {'0': node >=0.6.0} + dependencies: + assert-plus: 1.0.0 + core-util-is: 1.0.2 + extsprintf: 1.3.0 + dev: true + /vite-node@1.1.3(@types/node@20.11.0)(sass@1.69.7): resolution: {integrity: sha512-BLSO72YAkIUuNrOx+8uznYICJfTEbvBAmWClY3hpath5+h1mbPS5OMn42lrTxXuyCazVyZoDkSRnju78GiVCqA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true dependencies: cac: 6.7.14 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) pathe: 1.1.2 picocolors: 1.0.0 vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) @@ -8340,7 +8913,7 @@ packages: '@microsoft/api-extractor': 7.39.0(@types/node@20.11.0) '@rollup/pluginutils': 5.1.0(rollup@4.9.4) '@vue/language-core': 1.8.27(typescript@5.3.3) - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) kolorist: 1.8.0 typescript: 5.3.3 vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) @@ -8396,7 +8969,7 @@ packages: dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.9.4) chokidar: 3.5.3 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) postcss: 8.4.33 rollup: 4.9.4 stylelint: 16.1.0(typescript@5.3.3) @@ -8414,7 +8987,7 @@ packages: vuetify: ^3.0.0 dependencies: '@vuetify/loader-shared': 2.0.1(vue@3.4.10)(vuetify@3.4.10) - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) upath: 2.0.1 vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) vue: 3.4.10(typescript@5.3.3) @@ -8494,7 +9067,7 @@ packages: acorn-walk: 8.3.2 cac: 6.7.14 chai: 4.4.0 - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) execa: 8.0.1 jsdom: 23.2.0 local-pkg: 0.5.0 @@ -8543,7 +9116,7 @@ packages: peerDependencies: eslint: '>=6.0.0' dependencies: - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 @@ -8561,7 +9134,7 @@ packages: peerDependencies: eslint: '>=6.0.0' dependencies: - debug: 4.3.4 + debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 @@ -9054,6 +9627,15 @@ packages: strip-ansi: 4.0.0 dev: true + /wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + /wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -9178,6 +9760,13 @@ packages: yargs-parser: 20.2.9 dev: true + /yauzl@2.10.0: + resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} + dependencies: + buffer-crc32: 0.2.13 + fd-slicer: 1.1.0 + dev: true + /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} From 5989d387a2b7ccafcea88b8ea85361c1619bb2a3 Mon Sep 17 00:00:00 2001 From: WebDevNerdStuff Date: Sun, 28 Apr 2024 13:40:34 -0700 Subject: [PATCH 3/9] update config --- .editorconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.editorconfig b/.editorconfig index ec90d88..bf5d04e 100644 --- a/.editorconfig +++ b/.editorconfig @@ -14,7 +14,7 @@ trim_trailing_whitespace = false [*.{yml,yaml}] indent_size = 2 -[*.{js,ts,mts,vue}] +[*.{js,ts,tsx,mts,vue}] indent_size = 2 indent_style = tab From 573aa93847945934409ac1516cc78d7defd64db1 Mon Sep 17 00:00:00 2001 From: WebDevNerdStuff Date: Sun, 28 Apr 2024 13:40:55 -0700 Subject: [PATCH 4/9] Add cypress --- .eslintrc.js | 1 + cypress.config.ts | 23 +++++++++------ cypress/support/e2e.ts | 20 +++++++++++++ src/plugin/__tests__/VCodeBlock.cy.ts | 41 +++++++++++++++++++++++++++ 4 files changed, 77 insertions(+), 8 deletions(-) create mode 100644 cypress/support/e2e.ts create mode 100644 src/plugin/__tests__/VCodeBlock.cy.ts diff --git a/.eslintrc.js b/.eslintrc.js index 967f7ea..3bd53f2 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -16,6 +16,7 @@ module.exports = { 'vite.config.mts', '*.bk.vue', 'cypress/**/*', + '**/**/*.cy.ts', ], overrides: [ { diff --git a/cypress.config.ts b/cypress.config.ts index 0996383..0aecdf1 100644 --- a/cypress.config.ts +++ b/cypress.config.ts @@ -1,12 +1,19 @@ import { defineConfig } from "cypress"; export default defineConfig({ - component: { - devServer: { - framework: "vue", - bundler: "vite", - }, - }, - viewportHeight: 768, - viewportWidth: 1024, + component: { + devServer: { + framework: "vue", + bundler: "vite", + }, + }, + + viewportHeight: 768, + viewportWidth: 1024, + + e2e: { + setupNodeEvents(on, config) { + // implement node event listeners here + }, + }, }); diff --git a/cypress/support/e2e.ts b/cypress/support/e2e.ts new file mode 100644 index 0000000..f80f74f --- /dev/null +++ b/cypress/support/e2e.ts @@ -0,0 +1,20 @@ +// *********************************************************** +// This example support/e2e.ts is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +import './commands' + +// Alternatively you can use CommonJS syntax: +// require('./commands') \ No newline at end of file diff --git a/src/plugin/__tests__/VCodeBlock.cy.ts b/src/plugin/__tests__/VCodeBlock.cy.ts new file mode 100644 index 0000000..41071bb --- /dev/null +++ b/src/plugin/__tests__/VCodeBlock.cy.ts @@ -0,0 +1,41 @@ +import { VCodeBlock } from '../index'; +import { + mount, +} from 'cypress/vue'; + +// const errorMessage = '[vue-code-block]: You must set either the prismjs or highlightjs props.'; + +describe('Highlight.js', () => { + + it('should render js', () => { + // see: https://on.cypress.io/mounting-vue + mount(VCodeBlock, { + props: { + code: 'const foo = "bar"\nconsole.log(foo)', + highlightjs: true, + } + }); + }); + + + // it('render html', () => { + // mount(VCodeBlock, { + // props: { + // code: ` + // + // Document + // + // + //

Hello World

+ // + // `, + // highlightjs: true, + // lang: 'html' + // } + // }); + // }); + +}); + + +// const errorMessage = '[vue-code-block]: You must set either the prismjs or highlightjs props.'; From 873011509e33c4fed9ba90b7f81be78a938f4a81 Mon Sep 17 00:00:00 2001 From: WebDevNerdStuff Date: Sat, 11 May 2024 16:51:23 -0700 Subject: [PATCH 5/9] add cypress tests and remove vitest tests --- .../__snapshots__/classes.test.ts.snap | 43 ---- .../__snapshots__/styles.test.ts.snap | 98 ------- .../composables/__tests__/classes.cy.ts | 240 ++++++++++++++++++ .../composables/__tests__/classes.test.ts | 218 ---------------- .../{helpers.test.ts => helpers.cy.ts} | 15 +- .../{styles.test.ts => styles.cy.ts} | 89 +++++-- src/plugin/composables/classes.ts | 1 + src/plugin/composables/styles.ts | 3 +- 8 files changed, 315 insertions(+), 392 deletions(-) delete mode 100644 src/plugin/composables/__tests__/__snapshots__/classes.test.ts.snap delete mode 100644 src/plugin/composables/__tests__/__snapshots__/styles.test.ts.snap create mode 100644 src/plugin/composables/__tests__/classes.cy.ts delete mode 100644 src/plugin/composables/__tests__/classes.test.ts rename src/plugin/composables/__tests__/{helpers.test.ts => helpers.cy.ts} (76%) rename src/plugin/composables/__tests__/{styles.test.ts => styles.cy.ts} (69%) diff --git a/src/plugin/composables/__tests__/__snapshots__/classes.test.ts.snap b/src/plugin/composables/__tests__/__snapshots__/classes.test.ts.snap deleted file mode 100644 index def6329..0000000 --- a/src/plugin/composables/__tests__/__snapshots__/classes.test.ts.snap +++ /dev/null @@ -1,43 +0,0 @@ -// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html - -exports[`Classes Composable > useCodeBlockClasses > should return the codeblock class defaults 1`] = ` -{ - "v-code-block": true, - "v-code-block--highlightjs": true, - "v-code-block--mobile": false, - "v-code-block--prismjs": false, - "v-code-block-mb-5": true, -} -`; - -exports[`Classes Composable > useCopyButtonClasses > should return copy button class defaults 1`] = ` -{ - "v-code-block--code-copy-button": true, - "v-code-block--code-copy-button-mobile": false, - "v-code-block--code-copy-button-persist": false, - "v-code-block--code-copy-button-status-copy": true, -} -`; - -exports[`Classes Composable > useIconClasses > should return icon class defaults 1`] = ` -{ - "v-code-block--button-copy-icon-status-copy": true, - "v-code-block--me-1": true, - "v-code-block--tab-prism-neon-bunny-icon": true, - "v-code-block--tab-prism-neon-bunny-icon-status-copy": true, -} -`; - -exports[`Classes Composable > useLabelClasses > should return icon class defaults 1`] = ` -{ - "v-code-block--label": true, - "v-code-block--label-mobile": false, -} -`; - -exports[`Classes Composable > useTabClasses > should return icon class defaults 1`] = ` -{ - "v-code-block--tab-neon-bunny": true, - "v-code-block--tab-prism-neon-bunny": true, -} -`; diff --git a/src/plugin/composables/__tests__/__snapshots__/styles.test.ts.snap b/src/plugin/composables/__tests__/__snapshots__/styles.test.ts.snap deleted file mode 100644 index e36f5ae..0000000 --- a/src/plugin/composables/__tests__/__snapshots__/styles.test.ts.snap +++ /dev/null @@ -1,98 +0,0 @@ -// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html - -exports[`Styles Composable > useCodeTagStyles > should return the code tag style defaults 1`] = ` -{ - "padding": "1em", - "width": "100%", -} -`; - -exports[`Styles Composable > useCodeTagStyles > should return the code tag style defaults if loading 1`] = ` -{ - "padding": "1em", - "width": "", -} -`; - -exports[`Styles Composable > useHeaderStyles > should return gap as undefined 1`] = ` -{ - "bottom": "0", - "gap": "0px", -} -`; - -exports[`Styles Composable > useHeaderStyles > should return tabGap as 0px 1`] = ` -{ - "bottom": "0", - "gap": "0px", -} -`; - -exports[`Styles Composable > useHeaderStyles > should return tabGap as 0px 2`] = ` -{ - "bottom": "0", - "gap": "0px", -} -`; - -exports[`Styles Composable > useHeaderStyles > should return the header style defaults 1`] = ` -{ - "bottom": "1px", - "gap": "0.25rem", -} -`; - -exports[`Styles Composable > useHeaderStyles > should return the header style with floatingTabs as false 1`] = ` -{ - "bottom": "0", - "gap": "0.25rem", -} -`; - -exports[`Styles Composable > usePreTagStyles > should return the pre tag style defaults 1`] = ` -{ - "borderRadius": "0.5rem", - "display": "flex", - "height": "auto", - "maxHeight": "auto", - "overflow": "auto", -} -`; - -exports[`Styles Composable > usePreTagStyles > should return the set radius if no tabs 1`] = ` -{ - "borderRadius": "0.5rem", - "display": "flex", - "height": "auto", - "maxHeight": "auto", - "overflow": "auto", -} -`; - -exports[`Styles Composable > usePreTagStyles > should return the set radius with tabs 1`] = ` -{ - "borderRadius": "0.5rem 0 0.5rem 0.5rem !important", - "display": "flex", - "height": "auto", - "maxHeight": "auto", - "overflow": "auto", -} -`; - -exports[`Styles Composable > useTabGroupStyles > should return tabGap as 0px 1`] = ` -{ - "gap": "0px", -} -`; - -exports[`Styles Composable > useTabGroupStyles > should return tabGap as 0px 2`] = ` -{ - "gap": "0px", -} -`; - -exports[`Styles Composable > useTabGroupStyles > should return the tab group style defaults 1`] = ` -{ - "gap": "0.25rem", -} -`; diff --git a/src/plugin/composables/__tests__/classes.cy.ts b/src/plugin/composables/__tests__/classes.cy.ts new file mode 100644 index 0000000..dc5a706 --- /dev/null +++ b/src/plugin/composables/__tests__/classes.cy.ts @@ -0,0 +1,240 @@ +import { ref } from 'vue'; + +import { + useCodeBlockClasses, + useCopyButtonClasses, + useIconClasses, + useLabelClasses, + useTabClasses, +} from '../classes'; +import { + CopyStatus, + Props, + UseTheme, +} from '../../types'; +import { AllProps } from '../../utils/props'; +import { pluginName } from '../../utils/globals'; + + +const defaultProps: Props = { ...AllProps }; +const defaultTheme = defaultProps.theme as UseTheme; + + +describe('Classes Composable', () => { + describe('useCodeBlockClasses', () => { + const isMobile = ref(false); + const isMobileClass = `${pluginName}--mobile`; + const isPrism = ref(false); + const isPrismClass = `${pluginName}--prismjs`; + let classes = useCodeBlockClasses({ isMobile, isPrism }); + + it('should return the codeblock class defaults', () => { + expect(classes).to.deep.equal({ + "v-code-block": true, + "v-code-block--highlightjs": true, + "v-code-block--mobile": false, + "v-code-block--prismjs": false, + "v-code-block-mb-5": true, + }); + }); + + it('mobile classes', () => { + isMobile.value = true; + + classes = useCodeBlockClasses({ isMobile, isPrism }); + expect(classes[isMobileClass]).to.be.true; + + isMobile.value = false; + classes = useCodeBlockClasses({ isMobile, isPrism }); + expect(classes[isMobileClass]).to.be.false; + }); + + it('prismjs classes', () => { + isPrism.value = true; + + classes = useCodeBlockClasses({ isMobile, isPrism }); + expect(classes[isPrismClass]).to.be.true; + + isPrism.value = false; + classes = useCodeBlockClasses({ isMobile, isPrism }); + expect(classes[isPrismClass]).to.be.false; + }); + }); + + describe('useCopyButtonClasses', () => { + const copyStatus = ref('copy'); + const copyStatusClassPrefix = `${pluginName}--code-copy-button-status`; + const isMobile = ref(false); + const isMobileClass = `${pluginName}--code-copy-button-mobile`; + const persistentCopyButton = ref(defaultProps.persistentCopyButton); + const persistentCopyButtonCLass = `${pluginName}--code-copy-button-persist`; + + let classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + + it('should return copy button class defaults', () => { + expect(classes).to.deep.equal({ + "v-code-block--code-copy-button": true, + "v-code-block--code-copy-button-mobile": false, + "v-code-block--code-copy-button-persist": false, + "v-code-block--code-copy-button-status-copy": true, + }); + }); + + it('copy status classes', () => { + classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + expect(classes[`${copyStatusClassPrefix}-copy`]).to.be.true; + + copyStatus.value = 'success'; + classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + expect(classes[`${copyStatusClassPrefix}-success`]).to.be.true; + + copyStatus.value = 'failed'; + classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + expect(classes[`${copyStatusClassPrefix}-failed`]).to.be.true; + }); + + it('mobile classes', () => { + isMobile.value = true; + classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + expect(classes[isMobileClass]).to.be.true; + + isMobile.value = false; + classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + expect(classes[isMobileClass]).to.be.false; + }); + + it('persistent copy button classes', () => { + persistentCopyButton.value = true; + classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + expect(classes[persistentCopyButtonCLass]).to.be.true; + + persistentCopyButton.value = false; + classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); + expect(classes[persistentCopyButtonCLass]).to.be.false; + }); + }); + + describe('useIconClasses', () => { + const copyStatus = ref('copy'); + const highlightjs = ref(defaultProps.highlightjs); + const highlightjsStatusClassPrefix = `${pluginName}--tab-highlightjs-${defaultTheme}-icon-status`; + const prismCopyStatusClassPrefix = `${pluginName}--tab-prism-${defaultTheme}-icon-status`; + const prismjsClass = `${pluginName}--tab-prism-neon-bunny-icon`; + const highlightjsClass = `${pluginName}--tab-highlightjs-neon-bunny-icon`; + + let classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + + it('should return icon class defaults', () => { + expect(classes).to.deep.equal({ + "v-code-block--button-copy-icon-status-copy": true, + "v-code-block--me-1": true, + "v-code-block--tab-prism-neon-bunny-icon": true, + "v-code-block--tab-prism-neon-bunny-icon-status-copy": true, + }); + }); + + it('highlightjs class', () => { + highlightjs.value = true; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[highlightjsClass]).to.be.true; + + highlightjs.value = false; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[highlightjsClass]).to.be.undefined; + }); + + it('prismjs class', () => { + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[prismjsClass]).to.be.true; + + highlightjs.value = true; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[prismjsClass]).to.be.undefined; + }); + + it('copy status classes for prismjs', () => { + highlightjs.value = false; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[`${prismCopyStatusClassPrefix}-copy`]).to.be.true; + + copyStatus.value = 'success'; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[`${prismCopyStatusClassPrefix}-success`]).to.be.true; + + copyStatus.value = 'failed'; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[`${prismCopyStatusClassPrefix}-failed`]).to.be.true; + }); + + it('copy status classes for highlightjs', () => { + highlightjs.value = true; + copyStatus.value = 'copy'; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[`${highlightjsStatusClassPrefix}-copy`]).to.be.true; + + copyStatus.value = 'success'; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[`${highlightjsStatusClassPrefix}-success`]).to.be.true; + + copyStatus.value = 'failed'; + classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); + expect(classes[`${highlightjsStatusClassPrefix}-failed`]).to.be.true; + }); + }); + + describe('useLabelClasses', () => { + const isMobile = ref(false); + const mobileClass = `${pluginName}--label-mobile`; + + let classes = useLabelClasses({ isMobile }); + + it('should return icon class defaults', () => { + expect(classes).to.deep.equal({ + "v-code-block--label": true, + "v-code-block--label-mobile": false, + }); + }); + + it('mobile classes', () => { + classes = useLabelClasses({ isMobile }); + expect(classes[mobileClass]).to.be.false; + + isMobile.value = true; + classes = useLabelClasses({ isMobile }); + expect(classes[mobileClass]).to.be.true; + }); + }); + + describe('useTabClasses', () => { + const highlightjs = ref(defaultProps.highlightjs); + const tabClassPrefix = `${pluginName}--tab`; + + let classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); + + it('should return icon class defaults', () => { + expect(classes).to.deep.equal({ + "v-code-block--tab-neon-bunny": true, + "v-code-block--tab-prism-neon-bunny": true, + }); + }); + + it('highlightjs classes', () => { + classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); + expect(classes[`${tabClassPrefix}-highlightjs-${defaultTheme}`]).to.be.undefined; + + highlightjs.value = true; + classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); + expect(classes[`${tabClassPrefix}-highlightjs-${defaultTheme}`]).to.be.true; + }); + + it('prismjs classes', () => { + highlightjs.value = false; + classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); + expect(classes[`${tabClassPrefix}-prism-${defaultTheme}`]).to.be.true; + + highlightjs.value = true; + classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); + expect(classes[`${tabClassPrefix}-prism-${defaultTheme}`]).to.be.undefined; + }); + }); +}); diff --git a/src/plugin/composables/__tests__/classes.test.ts b/src/plugin/composables/__tests__/classes.test.ts deleted file mode 100644 index 7430fb7..0000000 --- a/src/plugin/composables/__tests__/classes.test.ts +++ /dev/null @@ -1,218 +0,0 @@ -import { describe, it, expect, test } from 'vitest'; -import { ref } from 'vue'; -import { - useCodeBlockClasses, - useCopyButtonClasses, - useIconClasses, - useLabelClasses, - useTabClasses, -} from '../classes'; -import { - CopyStatus, - Props, - UseTheme, -} from '../../types'; -import { AllProps } from '../../utils/props'; -import { pluginName } from '../../utils/globals'; - - -const defaultProps: Props = { ...AllProps }; -const defaultTheme = defaultProps.theme as UseTheme; - - -describe('Classes Composable', () => { - describe('useCodeBlockClasses', () => { - const isMobile = ref(false); - const isMobileClass = `${pluginName}--mobile`; - const isPrism = ref(false); - const isPrismClass = `${pluginName}--prismjs`; - let classes = useCodeBlockClasses({ isMobile, isPrism }); - - it('should return the codeblock class defaults', () => { - expect(classes).toMatchSnapshot(); - }); - - test('mobile classes', () => { - isMobile.value = true; - - classes = useCodeBlockClasses({ isMobile, isPrism }); - expect(classes[isMobileClass]).toBeTruthy(); - - isMobile.value = false; - classes = useCodeBlockClasses({ isMobile, isPrism }); - expect(classes[isMobileClass]).toBeFalsy(); - }); - - test('prismjs classes', () => { - isPrism.value = true; - - classes = useCodeBlockClasses({ isMobile, isPrism }); - expect(classes[isPrismClass]).toBeTruthy(); - - isPrism.value = false; - classes = useCodeBlockClasses({ isMobile, isPrism }); - expect(classes[isPrismClass]).toBeFalsy(); - }); - }); - - describe('useCopyButtonClasses', () => { - const copyStatus = ref('copy'); - const copyStatusClassPrefix = `${pluginName}--code-copy-button-status`; - const isMobile = ref(false); - const isMobileClass = `${pluginName}--code-copy-button-mobile`; - const persistentCopyButton = ref(defaultProps.persistentCopyButton); - const persistentCopyButtonCLass = `${pluginName}--code-copy-button-persist`; - - let classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - - it('should return copy button class defaults', () => { - expect(classes).toMatchSnapshot(); - }); - - test('copy status classes', () => { - classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - expect(classes[`${copyStatusClassPrefix}-copy`]).toBeTruthy(); - - copyStatus.value = 'success'; - classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - expect(classes[`${copyStatusClassPrefix}-success`]).toBeTruthy(); - - copyStatus.value = 'failed'; - classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - expect(classes[`${copyStatusClassPrefix}-failed`]).toMatchInlineSnapshot(`true`); - }); - - test('mobile classes', () => { - isMobile.value = true; - classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - expect(classes[isMobileClass]).toBeTruthy(); - - isMobile.value = false; - classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - expect(classes[isMobileClass]).toBeFalsy(); - }); - - test('persistent copy button classes', () => { - persistentCopyButton.value = true; - classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - expect(classes[persistentCopyButtonCLass]).toBeTruthy(); - - persistentCopyButton.value = false; - classes = useCopyButtonClasses({ copyStatus, isMobile, persistentCopyButton }); - expect(classes[persistentCopyButtonCLass]).toBeFalsy(); - }); - }); - - describe('useIconClasses', () => { - const copyStatus = ref('copy'); - const highlightjs = ref(defaultProps.highlightjs); - const highlightjsStatusClassPrefix = `${pluginName}--tab-highlightjs-${defaultTheme}-icon-status`; - const prismCopyStatusClassPrefix = `${pluginName}--tab-prism-${defaultTheme}-icon-status`; - const prismjsClass = `${pluginName}--tab-prism-neon-bunny-icon`; - const highlightjsClass = `${pluginName}--tab-highlightjs-neon-bunny-icon`; - - let classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - - it('should return icon class defaults', () => { - expect(classes).toMatchSnapshot(); - }); - - test('highlightjs class', () => { - highlightjs.value = true; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[highlightjsClass]).toBeTruthy(); - - highlightjs.value = false; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[highlightjsClass]).toBeFalsy(); - }); - - test('prismjs class', () => { - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[prismjsClass]).toBeTruthy(); - - highlightjs.value = true; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[prismjsClass]).toBeFalsy(); - }); - - test('copy status classes for prismjs', () => { - highlightjs.value = false; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[`${prismCopyStatusClassPrefix}-copy`]).toBeTruthy(); - - copyStatus.value = 'success'; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[`${prismCopyStatusClassPrefix}-success`]).toBeTruthy(); - - copyStatus.value = 'failed'; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[`${prismCopyStatusClassPrefix}-failed`]).toBeTruthy(); - }); - - test('copy status classes for highlightjs', () => { - highlightjs.value = true; - copyStatus.value = 'copy'; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[`${highlightjsStatusClassPrefix}-copy`]).toBeTruthy(); - - copyStatus.value = 'success'; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[`${highlightjsStatusClassPrefix}-success`]).toBeTruthy(); - - copyStatus.value = 'failed'; - classes = useIconClasses({ copyStatus, highlightjs, useTheme: defaultTheme }); - expect(classes[`${highlightjsStatusClassPrefix}-failed`]).toBeTruthy(); - }); - }); - - describe('useLabelClasses', () => { - const isMobile = ref(false); - const mobileClass = `${pluginName}--label-mobile`; - - let classes = useLabelClasses({ isMobile }); - - it('should return icon class defaults', () => { - expect(classes).toMatchSnapshot(); - }); - - test('mobile classes', () => { - classes = useLabelClasses({ isMobile }); - expect(classes[mobileClass]).toBeFalsy(); - - isMobile.value = true; - classes = useLabelClasses({ isMobile }); - expect(classes[mobileClass]).toBeTruthy(); - }); - }); - - describe('useTabClasses', () => { - const highlightjs = ref(defaultProps.highlightjs); - const tabClassPrefix = `${pluginName}--tab`; - - let classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); - - it('should return icon class defaults', () => { - expect(classes).toMatchSnapshot(); - }); - - test('highlightjs classes', () => { - classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); - expect(classes[`${tabClassPrefix}-highlightjs-${defaultTheme}`]).toBeFalsy(); - - highlightjs.value = true; - classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); - expect(classes[`${tabClassPrefix}-highlightjs-${defaultTheme}`]).toBeTruthy(); - }); - - test('prismjs classes', () => { - highlightjs.value = false; - classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); - expect(classes[`${tabClassPrefix}-prism-${defaultTheme}`]).toBeTruthy(); - - highlightjs.value = true; - classes = useTabClasses({ highlightjs, useTheme: defaultTheme }); - expect(classes[`${tabClassPrefix}-prism-${defaultTheme}`]).toBeFalsy(); - }); - }); -}); diff --git a/src/plugin/composables/__tests__/helpers.test.ts b/src/plugin/composables/__tests__/helpers.cy.ts similarity index 76% rename from src/plugin/composables/__tests__/helpers.test.ts rename to src/plugin/composables/__tests__/helpers.cy.ts index bb735ed..b22d3ca 100644 --- a/src/plugin/composables/__tests__/helpers.test.ts +++ b/src/plugin/composables/__tests__/helpers.cy.ts @@ -1,4 +1,3 @@ -import { describe, it, expect } from 'vitest'; import { useConvertToUnit } from '../helpers'; describe('Helpers Composable', () => { @@ -7,37 +6,37 @@ describe('Helpers Composable', () => { it('should return string with a default px unit', () => { const unit = useConvertToUnit({ str: String(testValue) }); - expect(unit).toBe(`${testValue}px`); + expect(unit).to.eq(`${testValue}px`); }); it('should return number with a default px unit', () => { const unit = useConvertToUnit({ str: testValue }); - expect(unit).toBe(`${testValue}px`); + expect(unit).to.eq(`${testValue}px`); }); it('should return string with a supplied unit', () => { const unit = useConvertToUnit({ str: String(testValue), unit: 'em' }); - expect(unit).toBe(`${testValue}em`); + expect(unit).to.eq(`${testValue}em`); }); it('should return number with a supplied unit', () => { const unit = useConvertToUnit({ str: testValue, unit: 'em' }); - expect(unit).toBe(`${testValue}em`); + expect(unit).to.eq(`${testValue}em`); }); it('should return undefined if str is null', () => { const unit = useConvertToUnit({ str: null }); - expect(unit).toBe(undefined); + expect(unit).to.eq(undefined); }); it('should return undefined if str is undefined', () => { const unit = useConvertToUnit({ str: undefined }); - expect(unit).toBe(undefined); + expect(unit).to.eq(undefined); }); it('should return undefined if str is empty', () => { const unit = useConvertToUnit({ str: '' }); - expect(unit).toBe(undefined); + expect(unit).to.eq(undefined); }); }); }); diff --git a/src/plugin/composables/__tests__/styles.test.ts b/src/plugin/composables/__tests__/styles.cy.ts similarity index 69% rename from src/plugin/composables/__tests__/styles.test.ts rename to src/plugin/composables/__tests__/styles.cy.ts index 7276563..4d57245 100644 --- a/src/plugin/composables/__tests__/styles.test.ts +++ b/src/plugin/composables/__tests__/styles.cy.ts @@ -1,4 +1,3 @@ -import { describe, it, expect } from 'vitest'; import { ref } from 'vue'; import { useCodeTagStyles, @@ -24,13 +23,19 @@ describe('Styles Composable', () => { it('should return the code tag style defaults', () => { expect( useCodeTagStyles({ isLoading: false, useTheme: theme }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "padding": "1em", + "width": "100%", + }); }); it('should return the code tag style defaults if loading', () => { expect( useCodeTagStyles({ isLoading: true, useTheme: theme }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "padding": "1em", + "width": "", + }); }); }); @@ -42,29 +47,44 @@ describe('Styles Composable', () => { it('should return the header style defaults', () => { expect( useHeaderStyles({ floatingTabs, tabGap }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "bottom": "1px", + "gap": "0.25rem", + }); }); it('should return the header style with floatingTabs as false', () => { expect( useHeaderStyles({ floatingTabs: false, tabGap }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "bottom": "0", + "gap": "0.25rem", + }); }); it('should return gap as undefined', () => { expect( useHeaderStyles({ floatingTabs: false, tabGap: '' }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "bottom": "0", + "gap": "0px", + }); }); it('should return tabGap as 0px', () => { expect( useHeaderStyles({ floatingTabs: false, tabGap: undefined }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "bottom": "0", + "gap": "0px", + }); expect( useHeaderStyles({ floatingTabs: false, tabGap: '' }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "bottom": "0", + "gap": "0px", + }); }); }); @@ -80,34 +100,49 @@ describe('Styles Composable', () => { it('should return the pre tag style defaults', () => { expect( usePreTagStyles({ copyTab, height, maxHeight, radius, runTab, tabs, useTheme: defaultTheme }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "borderRadius": "0.5rem", + "display": "flex", + "height": "auto", + "maxHeight": "auto", + "overflow": "auto", + }); }); it('should return the set radius if no tabs', () => { expect( usePreTagStyles({ copyTab, height, maxHeight, radius, runTab, tabs, useTheme: defaultTheme }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "borderRadius": "0.5rem", + "display": "flex", + "height": "auto", + "maxHeight": "auto", + "overflow": "auto", + }); }); it('should return the set radius with tabs', () => { expect( usePreTagStyles({ copyTab, height, maxHeight, radius, runTab, tabs: true, useTheme: defaultTheme }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "borderRadius": "0.5rem 0 0.5rem 0.5rem !important", + "display": "flex", + "height": "auto", + "maxHeight": "auto", + "overflow": "auto", + }); }); - // TODO (fix): The border radius is not set correctly if using multiple units with tabs // it('should return the set radius', () => { expect( usePreTagStyles({ copyTab, height, maxHeight, radius: '0 1em', runTab, tabs: true, useTheme: defaultTheme }) - ).toMatchInlineSnapshot(` - { - "borderRadius": "0 1em 0 0 1em 0 1em !important", - "display": "flex", - "height": "auto", - "maxHeight": "auto", - "overflow": "auto", - } - `); + ).to.deep.equal({ + "borderRadius": "0 1em 0 0 1em 0 1em !important", + "display": "flex", + "height": "auto", + "maxHeight": "auto", + "overflow": "auto", + }); }); }); @@ -118,17 +153,23 @@ describe('Styles Composable', () => { it('should return the tab group style defaults', () => { expect( useTabGroupStyles({ tabGap }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "gap": "0.25rem", + }); }); it('should return tabGap as 0px', () => { expect( useTabGroupStyles({ tabGap: undefined }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "gap": "0px", + }); expect( useTabGroupStyles({ tabGap: '' }) - ).toMatchSnapshot(); + ).to.deep.equal({ + "gap": "0px", + }); }); }); diff --git a/src/plugin/composables/classes.ts b/src/plugin/composables/classes.ts index f6a6a46..91b4edb 100644 --- a/src/plugin/composables/classes.ts +++ b/src/plugin/composables/classes.ts @@ -1,3 +1,4 @@ +import { unref } from 'vue'; import { pluginName } from '../utils/globals'; import { UseCodeBlockClasses, diff --git a/src/plugin/composables/styles.ts b/src/plugin/composables/styles.ts index e1dbb54..0e522af 100644 --- a/src/plugin/composables/styles.ts +++ b/src/plugin/composables/styles.ts @@ -1,4 +1,5 @@ -import { CSSProperties } from 'vue'; +import { unref } from 'vue'; +import type { CSSProperties, } from 'vue'; import { useConvertToUnit } from './helpers'; import { UseCodeTagStyles, From 04a724d56d963443d1ca56f93dd8385f8473fd4d Mon Sep 17 00:00:00 2001 From: WebDevNerdStuff Date: Sat, 11 May 2024 18:27:12 -0700 Subject: [PATCH 6/9] update packages --- package.json | 76 +- pnpm-lock.yaml | 2643 +++++++++++++++++++++++++++++++----------------- 2 files changed, 1770 insertions(+), 949 deletions(-) diff --git a/package.json b/package.json index 9dbf84f..c58791d 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "module": "dist/vue-code-block.es.js", "types": "dist/plugin/types/index.d.ts", "scripts": { - "dev": "NODE_OPTIONS='--no-warnings' vite", + "dev": "NODE_OPTIONS='--no-warnings' vite --host", "watch": "pnpm dev", "play": "sh src/playground/configs/build.sh && NODE_ENV=playground pnpm dev", "sass": "sass --watch --no-source-map src/plugin/themes/scss/:src/plugin/themes/css", @@ -77,66 +77,70 @@ "highlight.js": "^11.8.0", "prismjs": "^1.29.0", "ua-parser-js": "^1.0.35", - "vue": "^3.4.10" + "vue": "^3.4.27" }, "devDependencies": { - "@fortawesome/fontawesome-svg-core": "^6.5.1", - "@fortawesome/free-brands-svg-icons": "^6.5.1", - "@fortawesome/free-regular-svg-icons": "^6.5.1", - "@fortawesome/free-solid-svg-icons": "^6.5.1", - "@fortawesome/vue-fontawesome": "^3.0.5", + "@fortawesome/fontawesome-svg-core": "^6.5.2", + "@fortawesome/free-brands-svg-icons": "^6.5.2", + "@fortawesome/free-regular-svg-icons": "^6.5.2", + "@fortawesome/free-solid-svg-icons": "^6.5.2", + "@fortawesome/vue-fontawesome": "^3.0.6", "@mdi/font": "^7.4.47", + "@percy/cli": "^1.28.6", + "@percy/cypress": "^3.1.2", "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-terser": "^0.4.4", - "@stylistic/stylelint-plugin": "^2.0.0", - "@types/node": "^20.11.0", - "@types/prismjs": "^1.26.3", + "@stylistic/stylelint-plugin": "^2.1.2", + "@types/cypress": "^1.1.3", + "@types/jest": "^29.5.12", + "@types/node": "^20.12.11", + "@types/prismjs": "^1.26.4", "@typescript-eslint/eslint-plugin": "^6.18.1", "@typescript-eslint/parser": "^6.18.1", - "@vitejs/plugin-vue": "^5.0.3", + "@vitejs/plugin-vue": "^5.0.4", "@vue/cli-plugin-eslint": "^5.0.8", "@vue/cli-service": "^5.0.8", - "@vue/compiler-sfc": "^3.4.10", - "@vue/eslint-config-typescript": "^12.0.0", - "@vue/test-utils": "^2.4.3", - "autoprefixer": "^10.4.16", - "cypress": "^13.8.1", + "@vue/compiler-sfc": "^3.4.27", + "@vue/eslint-config-typescript": "^13.0.0", + "@vue/test-utils": "^2.4.6", + "autoprefixer": "^10.4.19", + "cypress": "^13.9.0", "eslint": "^8.56.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-import": "^2.29.1", "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-vue": "^9.20.0", "gh-pages": "^6.1.1", - "husky": "^8.0.3", - "jsdom": "^23.2.0", - "lint-staged": "^15.2.0", + "husky": "^9.0.11", + "jsdom": "^24.0.0", + "lint-staged": "^15.2.2", "pinia": "^2.1.7", - "postcss": "^8.4.33", - "postcss-html": "^1.5.0", + "postcss": "^8.4.38", + "postcss-html": "^1.7.0", "postcss-scss": "^4.0.9", - "prettier": "^3.1.1", - "rollup": "^4.9.4", + "prettier": "^3.2.5", + "rollup": "^4.17.2", "rollup-plugin-postcss": "^4.0.2", "rollup-plugin-scss": "^4.0.0", "rollup-plugin-typescript2": "^0.36.0", - "sass": "^1.69.7", - "stylelint": "^16.1.0", + "sass": "^1.77.1", + "stylelint": "^16.5.0", "stylelint-config-standard": "^36.0.0", "stylelint-order": "^6.0.4", - "stylelint-scss": "^6.0.0", - "typescript": "^5.3.3", - "unplugin-auto-import": "^0.17.3", - "vite": "^5.0.11", - "vite-plugin-css-injected-by-js": "^3.3.1", - "vite-plugin-dts": "^3.7.0", + "stylelint-scss": "^6.3.0", + "typescript": "^5.4.5", + "unplugin-auto-import": "^0.17.6", + "vite": "^5.2.11", + "vite-plugin-css-injected-by-js": "^3.5.1", + "vite-plugin-dts": "^3.9.1", "vite-plugin-eslint": "^1.8.1", - "vite-plugin-static-copy": "^1.0.0", + "vite-plugin-static-copy": "^1.0.4", "vite-plugin-stylelint": "^5.3.1", - "vite-plugin-vuetify": "^2.0.1", - "vitest": "^1.1.3", - "vue-tsc": "^1.8.27", - "vuetify": "^3.4.10", + "vite-plugin-vuetify": "^2.0.3", + "vitest": "^1.6.0", + "vue-tsc": "^2.0.17", + "vuetify": "^3.6.5", "webfontloader": "^1.6.28" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bd772e1..6c4eda3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,76 +15,88 @@ dependencies: specifier: ^1.0.35 version: 1.0.37 vue: - specifier: ^3.4.10 - version: 3.4.10(typescript@5.3.3) + specifier: ^3.4.27 + version: 3.4.27(typescript@5.4.5) devDependencies: '@fortawesome/fontawesome-svg-core': - specifier: ^6.5.1 - version: 6.5.1 + specifier: ^6.5.2 + version: 6.5.2 '@fortawesome/free-brands-svg-icons': - specifier: ^6.5.1 - version: 6.5.1 + specifier: ^6.5.2 + version: 6.5.2 '@fortawesome/free-regular-svg-icons': - specifier: ^6.5.1 - version: 6.5.1 + specifier: ^6.5.2 + version: 6.5.2 '@fortawesome/free-solid-svg-icons': - specifier: ^6.5.1 - version: 6.5.1 + specifier: ^6.5.2 + version: 6.5.2 '@fortawesome/vue-fontawesome': - specifier: ^3.0.5 - version: 3.0.5(@fortawesome/fontawesome-svg-core@6.5.1)(vue@3.4.10) + specifier: ^3.0.6 + version: 3.0.6(@fortawesome/fontawesome-svg-core@6.5.2)(vue@3.4.27) '@mdi/font': specifier: ^7.4.47 version: 7.4.47 + '@percy/cli': + specifier: ^1.28.6 + version: 1.28.6(typescript@5.4.5) + '@percy/cypress': + specifier: ^3.1.2 + version: 3.1.2(cypress@13.9.0) '@rollup/plugin-commonjs': specifier: ^25.0.7 - version: 25.0.7(rollup@4.9.4) + version: 25.0.7(rollup@4.17.2) '@rollup/plugin-node-resolve': specifier: ^15.2.3 - version: 15.2.3(rollup@4.9.4) + version: 15.2.3(rollup@4.17.2) '@rollup/plugin-terser': specifier: ^0.4.4 - version: 0.4.4(rollup@4.9.4) + version: 0.4.4(rollup@4.17.2) '@stylistic/stylelint-plugin': - specifier: ^2.0.0 - version: 2.0.0(stylelint@16.1.0) + specifier: ^2.1.2 + version: 2.1.2(stylelint@16.5.0) + '@types/cypress': + specifier: ^1.1.3 + version: 1.1.3 + '@types/jest': + specifier: ^29.5.12 + version: 29.5.12 '@types/node': - specifier: ^20.11.0 - version: 20.11.0 + specifier: ^20.12.11 + version: 20.12.11 '@types/prismjs': - specifier: ^1.26.3 - version: 1.26.3 + specifier: ^1.26.4 + version: 1.26.4 '@typescript-eslint/eslint-plugin': specifier: ^6.18.1 - version: 6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.3.3) + version: 6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.4.5) '@typescript-eslint/parser': specifier: ^6.18.1 - version: 6.18.1(eslint@8.56.0)(typescript@5.3.3) + version: 6.18.1(eslint@8.56.0)(typescript@5.4.5) '@vitejs/plugin-vue': - specifier: ^5.0.3 - version: 5.0.3(vite@5.0.11)(vue@3.4.10) + specifier: ^5.0.4 + version: 5.0.4(vite@5.2.11)(vue@3.4.27) '@vue/cli-plugin-eslint': specifier: ^5.0.8 version: 5.0.8(@vue/cli-service@5.0.8)(eslint@8.56.0) '@vue/cli-service': specifier: ^5.0.8 - version: 5.0.8(@vue/compiler-sfc@3.4.10)(prettier@3.1.1)(vue@3.4.10) + version: 5.0.8(@vue/compiler-sfc@3.4.27)(prettier@3.2.5)(vue@3.4.27) '@vue/compiler-sfc': - specifier: ^3.4.10 - version: 3.4.10 + specifier: ^3.4.27 + version: 3.4.27 '@vue/eslint-config-typescript': - specifier: ^12.0.0 - version: 12.0.0(eslint-plugin-vue@9.20.0)(eslint@8.56.0)(typescript@5.3.3) + specifier: ^13.0.0 + version: 13.0.0(eslint-plugin-vue@9.20.0)(eslint@8.56.0)(typescript@5.4.5) '@vue/test-utils': - specifier: ^2.4.3 - version: 2.4.3(vue@3.4.10) + specifier: ^2.4.6 + version: 2.4.6 autoprefixer: - specifier: ^10.4.16 - version: 10.4.16(postcss@8.4.33) + specifier: ^10.4.19 + version: 10.4.19(postcss@8.4.38) cypress: - specifier: ^13.8.1 - version: 13.8.1 + specifier: ^13.9.0 + version: 13.9.0 eslint: specifier: ^8.56.0 version: 8.56.0 @@ -96,7 +108,7 @@ devDependencies: version: 2.29.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0) eslint-plugin-prettier: specifier: ^5.1.3 - version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.56.0)(prettier@3.1.1) + version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.56.0)(prettier@3.2.5) eslint-plugin-vue: specifier: ^9.20.0 version: 9.20.0(eslint@8.56.0) @@ -104,92 +116,92 @@ devDependencies: specifier: ^6.1.1 version: 6.1.1 husky: - specifier: ^8.0.3 - version: 8.0.3 + specifier: ^9.0.11 + version: 9.0.11 jsdom: - specifier: ^23.2.0 - version: 23.2.0 + specifier: ^24.0.0 + version: 24.0.0 lint-staged: - specifier: ^15.2.0 - version: 15.2.0 + specifier: ^15.2.2 + version: 15.2.2 pinia: specifier: ^2.1.7 - version: 2.1.7(typescript@5.3.3)(vue@3.4.10) + version: 2.1.7(typescript@5.4.5)(vue@3.4.27) postcss: - specifier: ^8.4.33 - version: 8.4.33 + specifier: ^8.4.38 + version: 8.4.38 postcss-html: - specifier: ^1.5.0 - version: 1.5.0 + specifier: ^1.7.0 + version: 1.7.0 postcss-scss: specifier: ^4.0.9 - version: 4.0.9(postcss@8.4.33) + version: 4.0.9(postcss@8.4.38) prettier: - specifier: ^3.1.1 - version: 3.1.1 + specifier: ^3.2.5 + version: 3.2.5 rollup: - specifier: ^4.9.4 - version: 4.9.4 + specifier: ^4.17.2 + version: 4.17.2 rollup-plugin-postcss: specifier: ^4.0.2 - version: 4.0.2(postcss@8.4.33) + version: 4.0.2(postcss@8.4.38) rollup-plugin-scss: specifier: ^4.0.0 version: 4.0.0 rollup-plugin-typescript2: specifier: ^0.36.0 - version: 0.36.0(rollup@4.9.4)(typescript@5.3.3) + version: 0.36.0(rollup@4.17.2)(typescript@5.4.5) sass: - specifier: ^1.69.7 - version: 1.69.7 + specifier: ^1.77.1 + version: 1.77.1 stylelint: - specifier: ^16.1.0 - version: 16.1.0(typescript@5.3.3) + specifier: ^16.5.0 + version: 16.5.0(typescript@5.4.5) stylelint-config-standard: specifier: ^36.0.0 - version: 36.0.0(stylelint@16.1.0) + version: 36.0.0(stylelint@16.5.0) stylelint-order: specifier: ^6.0.4 - version: 6.0.4(stylelint@16.1.0) + version: 6.0.4(stylelint@16.5.0) stylelint-scss: - specifier: ^6.0.0 - version: 6.0.0(stylelint@16.1.0) + specifier: ^6.3.0 + version: 6.3.0(stylelint@16.5.0) typescript: - specifier: ^5.3.3 - version: 5.3.3 + specifier: ^5.4.5 + version: 5.4.5 unplugin-auto-import: - specifier: ^0.17.3 - version: 0.17.3(rollup@4.9.4) + specifier: ^0.17.6 + version: 0.17.6(rollup@4.17.2) vite: - specifier: ^5.0.11 - version: 5.0.11(@types/node@20.11.0)(sass@1.69.7) + specifier: ^5.2.11 + version: 5.2.11(@types/node@20.12.11)(sass@1.77.1) vite-plugin-css-injected-by-js: - specifier: ^3.3.1 - version: 3.3.1(vite@5.0.11) + specifier: ^3.5.1 + version: 3.5.1(vite@5.2.11) vite-plugin-dts: - specifier: ^3.7.0 - version: 3.7.0(@types/node@20.11.0)(rollup@4.9.4)(typescript@5.3.3)(vite@5.0.11) + specifier: ^3.9.1 + version: 3.9.1(@types/node@20.12.11)(rollup@4.17.2)(typescript@5.4.5)(vite@5.2.11) vite-plugin-eslint: specifier: ^1.8.1 - version: 1.8.1(eslint@8.56.0)(vite@5.0.11) + version: 1.8.1(eslint@8.56.0)(vite@5.2.11) vite-plugin-static-copy: - specifier: ^1.0.0 - version: 1.0.0(vite@5.0.11) + specifier: ^1.0.4 + version: 1.0.4(vite@5.2.11) vite-plugin-stylelint: specifier: ^5.3.1 - version: 5.3.1(postcss@8.4.33)(rollup@4.9.4)(stylelint@16.1.0)(vite@5.0.11) + version: 5.3.1(postcss@8.4.38)(rollup@4.17.2)(stylelint@16.5.0)(vite@5.2.11) vite-plugin-vuetify: - specifier: ^2.0.1 - version: 2.0.1(vite@5.0.11)(vue@3.4.10)(vuetify@3.4.10) + specifier: ^2.0.3 + version: 2.0.3(vite@5.2.11)(vue@3.4.27)(vuetify@3.6.5) vitest: - specifier: ^1.1.3 - version: 1.1.3(@types/node@20.11.0)(jsdom@23.2.0)(sass@1.69.7) + specifier: ^1.6.0 + version: 1.6.0(@types/node@20.12.11)(jsdom@24.0.0)(sass@1.77.1) vue-tsc: - specifier: ^1.8.27 - version: 1.8.27(typescript@5.3.3) + specifier: ^2.0.17 + version: 2.0.17(typescript@5.4.5) vuetify: - specifier: ^3.4.10 - version: 3.4.10(typescript@5.3.3)(vite-plugin-vuetify@2.0.1)(vue@3.4.10) + specifier: ^3.6.5 + version: 3.6.5(typescript@5.4.5)(vite-plugin-vuetify@2.0.3)(vue@3.4.27) webfontloader: specifier: ^1.6.28 version: 1.6.28 @@ -210,16 +222,8 @@ packages: js-message: 1.0.7 dev: true - /@antfu/utils@0.7.7: - resolution: {integrity: sha512-gFPqTG7otEJ8uP6wrhDv6mqwGWYZKNvAcCq6u9hOj0c+IKCEsY4L1oC9trPq2SaWIzAfHvqfBDxF591JkMf+kg==} - dev: true - - /@asamuzakjp/dom-selector@2.0.1: - resolution: {integrity: sha512-QJAJffmCiymkv6YyQ7voyQb5caCth6jzZsQncYCpHXrJ7RqdYG5y43+is8mnFcYubdOkr7cn1+na9BdFMxqw7w==} - dependencies: - bidi-js: 1.0.3 - css-tree: 2.3.1 - is-potential-custom-element-name: 1.0.1 + /@antfu/utils@0.7.8: + resolution: {integrity: sha512-rWQkqXRESdjXtc+7NRfK9lASQjpXJu1ayp7qi1d23zZorY+wBHVLHHoVcMsEnkqEBWTFqbztO7/QdJFzyEcLTg==} dev: true /@babel/code-frame@7.23.5: @@ -246,13 +250,18 @@ packages: semver: 6.3.1 dev: true - /@babel/helper-string-parser@7.23.4: - resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} + /@babel/helper-string-parser@7.24.1: + resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} engines: {node: '>=6.9.0'} /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-validator-identifier@7.24.5: + resolution: {integrity: sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==} + engines: {node: '>=6.9.0'} /@babel/helper-validator-option@7.22.15: resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} @@ -268,19 +277,19 @@ packages: js-tokens: 4.0.0 dev: true - /@babel/parser@7.23.6: - resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==} + /@babel/parser@7.24.5: + resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.5 - /@babel/types@7.23.6: - resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==} + /@babel/types@7.24.5: + resolution: {integrity: sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-string-parser': 7.23.4 - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-string-parser': 7.24.1 + '@babel/helper-validator-identifier': 7.24.5 to-fast-properties: 2.0.0 /@colors/colors@1.5.0: @@ -290,38 +299,38 @@ packages: dev: true optional: true - /@csstools/css-parser-algorithms@2.5.0(@csstools/css-tokenizer@2.2.3): - resolution: {integrity: sha512-abypo6m9re3clXA00eu5syw+oaPHbJTPapu9C4pzNsJ4hdZDzushT50Zhu+iIYXgEe1CxnRMn7ngsbV+MLrlpQ==} + /@csstools/css-parser-algorithms@2.6.3(@csstools/css-tokenizer@2.3.1): + resolution: {integrity: sha512-xI/tL2zxzEbESvnSxwFgwvy5HS00oCXxL4MLs6HUiDcYfwowsoQaABKxUElp1ARITrINzBnsECOc1q0eg2GOrA==} engines: {node: ^14 || ^16 || >=18} peerDependencies: - '@csstools/css-tokenizer': ^2.2.3 + '@csstools/css-tokenizer': ^2.3.1 dependencies: - '@csstools/css-tokenizer': 2.2.3 + '@csstools/css-tokenizer': 2.3.1 dev: true - /@csstools/css-tokenizer@2.2.3: - resolution: {integrity: sha512-pp//EvZ9dUmGuGtG1p+n17gTHEOqu9jO+FiCUjNN3BDmyhdA2Jq9QsVeR7K8/2QCK17HSsioPlTW9ZkzoWb3Lg==} + /@csstools/css-tokenizer@2.3.1: + resolution: {integrity: sha512-iMNHTyxLbBlWIfGtabT157LH9DUx9X8+Y3oymFEuMj8HNc+rpE3dPFGFgHjpKfjeFDjLjYIAIhXPGvS2lKxL9g==} engines: {node: ^14 || ^16 || >=18} dev: true - /@csstools/media-query-list-parser@2.1.7(@csstools/css-parser-algorithms@2.5.0)(@csstools/css-tokenizer@2.2.3): - resolution: {integrity: sha512-lHPKJDkPUECsyAvD60joYfDmp8UERYxHGkFfyLJFTVK/ERJe0sVlIFLXU5XFxdjNDTerp5L4KeaKG+Z5S94qxQ==} + /@csstools/media-query-list-parser@2.1.11(@csstools/css-parser-algorithms@2.6.3)(@csstools/css-tokenizer@2.3.1): + resolution: {integrity: sha512-uox5MVhvNHqitPP+SynrB1o8oPxPMt2JLgp5ghJOWf54WGQ5OKu47efne49r1SWqs3wRP8xSWjnO9MBKxhB1dA==} engines: {node: ^14 || ^16 || >=18} peerDependencies: - '@csstools/css-parser-algorithms': ^2.5.0 - '@csstools/css-tokenizer': ^2.2.3 + '@csstools/css-parser-algorithms': ^2.6.3 + '@csstools/css-tokenizer': ^2.3.1 dependencies: - '@csstools/css-parser-algorithms': 2.5.0(@csstools/css-tokenizer@2.2.3) - '@csstools/css-tokenizer': 2.2.3 + '@csstools/css-parser-algorithms': 2.6.3(@csstools/css-tokenizer@2.3.1) + '@csstools/css-tokenizer': 2.3.1 dev: true - /@csstools/selector-specificity@3.0.1(postcss-selector-parser@6.0.15): - resolution: {integrity: sha512-NPljRHkq4a14YzZ3YD406uaxh7s0g6eAq3L9aLOWywoqe8PkYamAvtsh7KNX6c++ihDrJ0RiU+/z7rGnhlZ5ww==} + /@csstools/selector-specificity@3.1.0(postcss-selector-parser@6.0.16): + resolution: {integrity: sha512-tGDFEHZ4XJeIt5NF7/nAfLGqPckmDZSnYne5gl67p4agQolE5s4rofdQ3e+VkeukfR91lVtSQ/Jt9DqM1ICiIQ==} engines: {node: ^14 || ^16 || >=18} peerDependencies: postcss-selector-parser: ^6.0.13 dependencies: - postcss-selector-parser: 6.0.15 + postcss-selector-parser: 6.0.16 dev: true /@cypress/request@3.0.1: @@ -343,7 +352,7 @@ packages: performance-now: 2.1.0 qs: 6.10.4 safe-buffer: 5.2.1 - tough-cookie: 4.1.3 + tough-cookie: 4.1.4 tunnel-agent: 0.6.0 uuid: 8.3.2 dev: true @@ -362,8 +371,12 @@ packages: engines: {node: '>=10.0.0'} dev: true - /@esbuild/aix-ppc64@0.19.11: - resolution: {integrity: sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==} + /@dual-bundle/import-meta-resolve@4.1.0: + resolution: {integrity: sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==} + dev: true + + /@esbuild/aix-ppc64@0.20.2: + resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] @@ -371,8 +384,8 @@ packages: dev: true optional: true - /@esbuild/android-arm64@0.19.11: - resolution: {integrity: sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==} + /@esbuild/android-arm64@0.20.2: + resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -380,8 +393,8 @@ packages: dev: true optional: true - /@esbuild/android-arm@0.19.11: - resolution: {integrity: sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==} + /@esbuild/android-arm@0.20.2: + resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -389,8 +402,8 @@ packages: dev: true optional: true - /@esbuild/android-x64@0.19.11: - resolution: {integrity: sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==} + /@esbuild/android-x64@0.20.2: + resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -398,8 +411,8 @@ packages: dev: true optional: true - /@esbuild/darwin-arm64@0.19.11: - resolution: {integrity: sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==} + /@esbuild/darwin-arm64@0.20.2: + resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -407,8 +420,8 @@ packages: dev: true optional: true - /@esbuild/darwin-x64@0.19.11: - resolution: {integrity: sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==} + /@esbuild/darwin-x64@0.20.2: + resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -416,8 +429,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-arm64@0.19.11: - resolution: {integrity: sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==} + /@esbuild/freebsd-arm64@0.20.2: + resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -425,8 +438,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-x64@0.19.11: - resolution: {integrity: sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==} + /@esbuild/freebsd-x64@0.20.2: + resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -434,8 +447,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm64@0.19.11: - resolution: {integrity: sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==} + /@esbuild/linux-arm64@0.20.2: + resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -443,8 +456,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm@0.19.11: - resolution: {integrity: sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==} + /@esbuild/linux-arm@0.20.2: + resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -452,8 +465,8 @@ packages: dev: true optional: true - /@esbuild/linux-ia32@0.19.11: - resolution: {integrity: sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==} + /@esbuild/linux-ia32@0.20.2: + resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -461,8 +474,8 @@ packages: dev: true optional: true - /@esbuild/linux-loong64@0.19.11: - resolution: {integrity: sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==} + /@esbuild/linux-loong64@0.20.2: + resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -470,8 +483,8 @@ packages: dev: true optional: true - /@esbuild/linux-mips64el@0.19.11: - resolution: {integrity: sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==} + /@esbuild/linux-mips64el@0.20.2: + resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -479,8 +492,8 @@ packages: dev: true optional: true - /@esbuild/linux-ppc64@0.19.11: - resolution: {integrity: sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==} + /@esbuild/linux-ppc64@0.20.2: + resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -488,8 +501,8 @@ packages: dev: true optional: true - /@esbuild/linux-riscv64@0.19.11: - resolution: {integrity: sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==} + /@esbuild/linux-riscv64@0.20.2: + resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -497,8 +510,8 @@ packages: dev: true optional: true - /@esbuild/linux-s390x@0.19.11: - resolution: {integrity: sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==} + /@esbuild/linux-s390x@0.20.2: + resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -506,8 +519,8 @@ packages: dev: true optional: true - /@esbuild/linux-x64@0.19.11: - resolution: {integrity: sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==} + /@esbuild/linux-x64@0.20.2: + resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -515,8 +528,8 @@ packages: dev: true optional: true - /@esbuild/netbsd-x64@0.19.11: - resolution: {integrity: sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==} + /@esbuild/netbsd-x64@0.20.2: + resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -524,8 +537,8 @@ packages: dev: true optional: true - /@esbuild/openbsd-x64@0.19.11: - resolution: {integrity: sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==} + /@esbuild/openbsd-x64@0.20.2: + resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -533,8 +546,8 @@ packages: dev: true optional: true - /@esbuild/sunos-x64@0.19.11: - resolution: {integrity: sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==} + /@esbuild/sunos-x64@0.20.2: + resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -542,8 +555,8 @@ packages: dev: true optional: true - /@esbuild/win32-arm64@0.19.11: - resolution: {integrity: sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==} + /@esbuild/win32-arm64@0.20.2: + resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -551,8 +564,8 @@ packages: dev: true optional: true - /@esbuild/win32-ia32@0.19.11: - resolution: {integrity: sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==} + /@esbuild/win32-ia32@0.20.2: + resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -560,8 +573,8 @@ packages: dev: true optional: true - /@esbuild/win32-x64@0.19.11: - resolution: {integrity: sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==} + /@esbuild/win32-x64@0.20.2: + resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -606,52 +619,52 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@fortawesome/fontawesome-common-types@6.5.1: - resolution: {integrity: sha512-GkWzv+L6d2bI5f/Vk6ikJ9xtl7dfXtoRu3YGE6nq0p/FFqA1ebMOAWg3XgRyb0I6LYyYkiAo+3/KrwuBp8xG7A==} + /@fortawesome/fontawesome-common-types@6.5.2: + resolution: {integrity: sha512-gBxPg3aVO6J0kpfHNILc+NMhXnqHumFxOmjYCFfOiLZfwhnnfhtsdA2hfJlDnj+8PjAs6kKQPenOTKj3Rf7zHw==} engines: {node: '>=6'} requiresBuild: true dev: true - /@fortawesome/fontawesome-svg-core@6.5.1: - resolution: {integrity: sha512-MfRCYlQPXoLlpem+egxjfkEuP9UQswTrlCOsknus/NcMoblTH2g0jPrapbcIb04KGA7E2GZxbAccGZfWoYgsrQ==} + /@fortawesome/fontawesome-svg-core@6.5.2: + resolution: {integrity: sha512-5CdaCBGl8Rh9ohNdxeeTMxIj8oc3KNBgIeLMvJosBMdslK/UnEB8rzyDRrbKdL1kDweqBPo4GT9wvnakHWucZw==} engines: {node: '>=6'} requiresBuild: true dependencies: - '@fortawesome/fontawesome-common-types': 6.5.1 + '@fortawesome/fontawesome-common-types': 6.5.2 dev: true - /@fortawesome/free-brands-svg-icons@6.5.1: - resolution: {integrity: sha512-093l7DAkx0aEtBq66Sf19MgoZewv1zeY9/4C7vSKPO4qMwEsW/2VYTUTpBtLwfb9T2R73tXaRDPmE4UqLCYHfg==} + /@fortawesome/free-brands-svg-icons@6.5.2: + resolution: {integrity: sha512-zi5FNYdmKLnEc0jc0uuHH17kz/hfYTg4Uei0wMGzcoCL/4d3WM3u1VMc0iGGa31HuhV5i7ZK8ZlTCQrHqRHSGQ==} engines: {node: '>=6'} requiresBuild: true dependencies: - '@fortawesome/fontawesome-common-types': 6.5.1 + '@fortawesome/fontawesome-common-types': 6.5.2 dev: true - /@fortawesome/free-regular-svg-icons@6.5.1: - resolution: {integrity: sha512-m6ShXn+wvqEU69wSP84coxLbNl7sGVZb+Ca+XZq6k30SzuP3X4TfPqtycgUh9ASwlNh5OfQCd8pDIWxl+O+LlQ==} + /@fortawesome/free-regular-svg-icons@6.5.2: + resolution: {integrity: sha512-iabw/f5f8Uy2nTRtJ13XZTS1O5+t+anvlamJ3zJGLEVE2pKsAWhPv2lq01uQlfgCX7VaveT3EVs515cCN9jRbw==} engines: {node: '>=6'} requiresBuild: true dependencies: - '@fortawesome/fontawesome-common-types': 6.5.1 + '@fortawesome/fontawesome-common-types': 6.5.2 dev: true - /@fortawesome/free-solid-svg-icons@6.5.1: - resolution: {integrity: sha512-S1PPfU3mIJa59biTtXJz1oI0+KAXW6bkAb31XKhxdxtuXDiUIFsih4JR1v5BbxY7hVHsD1RKq+jRkVRaf773NQ==} + /@fortawesome/free-solid-svg-icons@6.5.2: + resolution: {integrity: sha512-QWFZYXFE7O1Gr1dTIp+D6UcFUF0qElOnZptpi7PBUMylJh+vFmIedVe1Ir6RM1t2tEQLLSV1k7bR4o92M+uqlw==} engines: {node: '>=6'} requiresBuild: true dependencies: - '@fortawesome/fontawesome-common-types': 6.5.1 + '@fortawesome/fontawesome-common-types': 6.5.2 dev: true - /@fortawesome/vue-fontawesome@3.0.5(@fortawesome/fontawesome-svg-core@6.5.1)(vue@3.4.10): - resolution: {integrity: sha512-isZZ4+utQH9qg9cWxWYHQ9GwI3r5FeO7GnmzKYV+gbjxcptQhh+F99iZXi1Y9AvFUEgy8kRpAdvDlbb3drWFrw==} + /@fortawesome/vue-fontawesome@3.0.6(@fortawesome/fontawesome-svg-core@6.5.2)(vue@3.4.27): + resolution: {integrity: sha512-akrL7lTroyNpPkoHtvK2UpsMzJr6jXdHaQ0YdcwqDsB8jdwlpNHZYijpOUd9KJsARr+VB3WXY4EyObepqJ4ytQ==} peerDependencies: '@fortawesome/fontawesome-svg-core': ~1 || ~6 vue: '>= 3.0.0 < 4' dependencies: - '@fortawesome/fontawesome-svg-core': 6.5.1 - vue: 3.4.10(typescript@5.3.3) + '@fortawesome/fontawesome-svg-core': 6.5.2 + vue: 3.4.27(typescript@5.4.5) dev: true /@hapi/hoek@9.3.0: @@ -696,6 +709,13 @@ packages: wrap-ansi-cjs: /wrap-ansi@7.0.0 dev: true + /@jest/expect-utils@29.7.0: + resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + jest-get-type: 29.6.3 + dev: true + /@jest/schemas@29.6.3: resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -703,6 +723,18 @@ packages: '@sinclair/typebox': 0.27.8 dev: true + /@jest/types@29.6.3: + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/schemas': 29.6.3 + '@types/istanbul-lib-coverage': 2.0.6 + '@types/istanbul-reports': 3.0.4 + '@types/node': 20.12.11 + '@types/yargs': 17.0.32 + chalk: 4.1.2 + dev: true + /@jridgewell/gen-mapping@0.3.3: resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} engines: {node: '>=6.0.0'} @@ -747,32 +779,33 @@ packages: resolution: {integrity: sha512-43MtGpd585SNzHZPcYowu/84Vz2a2g31TvPMTm9uTiCSWzaheQySUcSyUH/46fPnuPQWof2yd0pGBtzee/IQWw==} dev: true - /@microsoft/api-extractor-model@7.28.3(@types/node@20.11.0): - resolution: {integrity: sha512-wT/kB2oDbdZXITyDh2SQLzaWwTOFbV326fP0pUwNW00WeliARs0qjmXBWmGWardEzp2U3/axkO3Lboqun6vrig==} + /@microsoft/api-extractor-model@7.28.13(@types/node@20.12.11): + resolution: {integrity: sha512-39v/JyldX4MS9uzHcdfmjjfS6cYGAoXV+io8B5a338pkHiSt+gy2eXQ0Q7cGFJ7quSa1VqqlMdlPrB6sLR/cAw==} dependencies: '@microsoft/tsdoc': 0.14.2 '@microsoft/tsdoc-config': 0.16.2 - '@rushstack/node-core-library': 3.62.0(@types/node@20.11.0) + '@rushstack/node-core-library': 4.0.2(@types/node@20.12.11) transitivePeerDependencies: - '@types/node' dev: true - /@microsoft/api-extractor@7.39.0(@types/node@20.11.0): - resolution: {integrity: sha512-PuXxzadgnvp+wdeZFPonssRAj/EW4Gm4s75TXzPk09h3wJ8RS3x7typf95B4vwZRrPTQBGopdUl+/vHvlPdAcg==} + /@microsoft/api-extractor@7.43.0(@types/node@20.12.11): + resolution: {integrity: sha512-GFhTcJpB+MI6FhvXEI9b2K0snulNLWHqC/BbcJtyNYcKUiw7l3Lgis5ApsYncJ0leALX7/of4XfmXk+maT111w==} hasBin: true dependencies: - '@microsoft/api-extractor-model': 7.28.3(@types/node@20.11.0) + '@microsoft/api-extractor-model': 7.28.13(@types/node@20.12.11) '@microsoft/tsdoc': 0.14.2 '@microsoft/tsdoc-config': 0.16.2 - '@rushstack/node-core-library': 3.62.0(@types/node@20.11.0) - '@rushstack/rig-package': 0.5.1 - '@rushstack/ts-command-line': 4.17.1 - colors: 1.2.5 + '@rushstack/node-core-library': 4.0.2(@types/node@20.12.11) + '@rushstack/rig-package': 0.5.2 + '@rushstack/terminal': 0.10.0(@types/node@20.12.11) + '@rushstack/ts-command-line': 4.19.1(@types/node@20.12.11) lodash: 4.17.21 + minimatch: 3.0.8 resolve: 1.22.8 semver: 7.5.4 source-map: 0.6.1 - typescript: 5.3.3 + typescript: 5.4.2 transitivePeerDependencies: - '@types/node' dev: true @@ -822,6 +855,209 @@ packages: resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==} dev: true + /@percy/cli-app@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-XwIVnrU3nNuUnHSD2O75kmTh2XE/yxUr47weHUZZQPX0HjedzrOUfLpH9ykCcS/Or1wymZyWrCDSJpe+rWYdyA==} + engines: {node: '>=14'} + dependencies: + '@percy/cli-command': 1.28.6(typescript@5.4.5) + '@percy/cli-exec': 1.28.6(typescript@5.4.5) + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cli-build@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-od4mR9RgpiB/yW4p8OyBK+G+irWz/m61ds3OjwCVxMDV588vvuHy9Gl/3CNFf403AawMwklZS+rGIlwcEhnnSw==} + engines: {node: '>=14'} + dependencies: + '@percy/cli-command': 1.28.6(typescript@5.4.5) + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cli-command@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-2vgoO7kBj7QG32511HXIJDrMcatUS5Nrtr7/3OQ9go5LXL1sk/DLOalmgqsCx9dOgSQ77h9dMlIG9ApIlza42g==} + engines: {node: '>=14'} + hasBin: true + dependencies: + '@percy/config': 1.28.6(typescript@5.4.5) + '@percy/core': 1.28.6(typescript@5.4.5) + '@percy/logger': 1.28.6 + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cli-config@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-APpFpc71OhLBiaXL93xHdHakbZdo7WmiNbLkAwwE+b2HabxnwiBru/G0NRX7nMW1TL+qeLPwjq5mJKQMRq73HQ==} + engines: {node: '>=14'} + dependencies: + '@percy/cli-command': 1.28.6(typescript@5.4.5) + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cli-exec@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-fV3oJB3tMnkimSw+rW/PeauFoZadF4zz3tacglvWXhSLdLrGXqB5Q2dVq5nqsXC4ogb2ZdRmTKX/bFwjlGc6hQ==} + engines: {node: '>=14'} + dependencies: + '@percy/cli-command': 1.28.6(typescript@5.4.5) + cross-spawn: 7.0.3 + which: 2.0.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cli-snapshot@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-9ncOPvwy52RwSEv8fVEgtKcjmjJRtjxJ1uBhotfmd7jbt75XWuBj+3PQcSrq3M+U+y2b7PpSUJ8uKjUDup2o+g==} + engines: {node: '>=14'} + dependencies: + '@percy/cli-command': 1.28.6(typescript@5.4.5) + yaml: 2.3.4 + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cli-upload@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-WAN4b4Irwk2vED7RQon4wc7eL9yKjI8r/TKYkmdTZo2VCEZ1OfrkKbKLxiqy0/OqwA4MIDjGJg9k9jZeab68Pw==} + engines: {node: '>=14'} + dependencies: + '@percy/cli-command': 1.28.6(typescript@5.4.5) + fast-glob: 3.3.2 + image-size: 1.1.1 + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cli@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-LK+8/S97lW4CBWS1QKTqb2H6bV7XxMX50bYEQmc1CqF533AQ9vSjAHz3sRQk3ZZZivaSFiRm2NDTxgoo5KdY2A==} + engines: {node: '>=14'} + hasBin: true + dependencies: + '@percy/cli-app': 1.28.6(typescript@5.4.5) + '@percy/cli-build': 1.28.6(typescript@5.4.5) + '@percy/cli-command': 1.28.6(typescript@5.4.5) + '@percy/cli-config': 1.28.6(typescript@5.4.5) + '@percy/cli-exec': 1.28.6(typescript@5.4.5) + '@percy/cli-snapshot': 1.28.6(typescript@5.4.5) + '@percy/cli-upload': 1.28.6(typescript@5.4.5) + '@percy/client': 1.28.6 + '@percy/logger': 1.28.6 + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/client@1.28.6: + resolution: {integrity: sha512-gr/0QLlybQMttcgOu/oPiwiFXp+bYATNRa4kNPFkyD9T85TzvSmF+T+s2qdZiQuSjXO92nXYbiu3uHN/NVmyHw==} + engines: {node: '>=14'} + dependencies: + '@percy/env': 1.28.6 + '@percy/logger': 1.28.6 + pako: 2.1.0 + dev: true + + /@percy/config@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-Q+4Ojyl2O42MUDCZIvUyNeddpxpDxpM4jWRDbyO+NH1QZ3hdl1AOyfdnpm9wZRbi78UrlMi+jkkGyNCgMsD5gQ==} + engines: {node: '>=14'} + dependencies: + '@percy/logger': 1.28.6 + ajv: 8.12.0 + cosmiconfig: 8.3.6(typescript@5.4.5) + yaml: 2.3.4 + transitivePeerDependencies: + - typescript + dev: true + + /@percy/core@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-lSUfccpvwYdkKkd1AuIXEAk98Q0yU+eppb8lakQOAxvxl1g40nggCub624m+w3OCT8hqXxmENhyjO1CAdoCJGA==} + engines: {node: '>=14'} + requiresBuild: true + dependencies: + '@percy/client': 1.28.6 + '@percy/config': 1.28.6(typescript@5.4.5) + '@percy/dom': 1.28.6 + '@percy/logger': 1.28.6 + '@percy/webdriver-utils': 1.28.6(typescript@5.4.5) + content-disposition: 0.5.4 + cross-spawn: 7.0.3 + extract-zip: 2.0.1(supports-color@8.1.1) + fast-glob: 3.3.2 + micromatch: 4.0.5 + mime-types: 2.1.35 + pako: 2.1.0 + path-to-regexp: 6.2.2 + rimraf: 3.0.2 + ws: 8.16.0 + yaml: 2.4.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + dev: true + + /@percy/cypress@3.1.2(cypress@13.9.0): + resolution: {integrity: sha512-JXrGDZbqwkzQd2h5T5D7PvqoucNaiMh4ChPp8cLQiEtRuLHta9nf1lEuXH+jnatGL2j+3jJFIHJ0L7XrgVnvQA==} + peerDependencies: + cypress: '>=3' + dependencies: + '@percy/sdk-utils': 1.28.6 + cypress: 13.9.0 + dev: true + + /@percy/dom@1.28.6: + resolution: {integrity: sha512-OElN+lpNc/Eq124L6S9Kg3tn5vg06pndYC5+UnpYHD7+8dN5kKmGI7BLY3EZQoOxl2iXoE+KDgCbaXczzOdTDA==} + dev: true + + /@percy/env@1.28.6: + resolution: {integrity: sha512-duTelUOyXCrKyaNs7bC+qpWt4wmCE5hRqCvKCtU/Jtp/eUkltmn3q4sy7VmpXd62P8hD/lzen5M8gQ9ztTfVkQ==} + engines: {node: '>=14'} + dependencies: + '@percy/logger': 1.28.6 + dev: true + + /@percy/logger@1.28.6: + resolution: {integrity: sha512-QhgLJ3sPkZfQ/7GhX2IKzGCbH5+zRcScP3ffcw4qZtPfCPwbgVq5wrd5naCKBYlpxv6CUByCR8jzmkxFrOpVCQ==} + engines: {node: '>=14'} + dev: true + + /@percy/sdk-utils@1.28.6: + resolution: {integrity: sha512-cfpylC1bvp93EPQpwvYybdw5I4/fAABKR0hfCcyN7LF0FRgXE3/Onj7ebW41gypDilw2Q1nW0gUSwPj9MyoTOg==} + engines: {node: '>=14'} + dev: true + + /@percy/webdriver-utils@1.28.6(typescript@5.4.5): + resolution: {integrity: sha512-appsfiyQdcpv7cCSIUM3YLwfGccaNFvFcWQxtDI1aJ/5nI//mjx2wzm/s3hh5v4l0ZgmSHVnQ/3r0udmx+sccA==} + engines: {node: '>=14'} + dependencies: + '@percy/config': 1.28.6(typescript@5.4.5) + '@percy/sdk-utils': 1.28.6 + transitivePeerDependencies: + - typescript + dev: true + /@pkgjs/parseargs@0.11.0: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -838,7 +1074,7 @@ packages: resolution: {integrity: sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==} dev: true - /@rollup/plugin-commonjs@25.0.7(rollup@4.9.4): + /@rollup/plugin-commonjs@25.0.7(rollup@4.17.2): resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -847,16 +1083,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.9.4) + '@rollup/pluginutils': 5.0.5(rollup@4.17.2) commondir: 1.0.1 estree-walker: 2.0.2 glob: 8.1.0 is-reference: 1.2.1 magic-string: 0.30.5 - rollup: 4.9.4 + rollup: 4.17.2 dev: true - /@rollup/plugin-node-resolve@15.2.3(rollup@4.9.4): + /@rollup/plugin-node-resolve@15.2.3(rollup@4.17.2): resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -865,16 +1101,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.9.4) + '@rollup/pluginutils': 5.0.5(rollup@4.17.2) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.8 - rollup: 4.9.4 + rollup: 4.17.2 dev: true - /@rollup/plugin-terser@0.4.4(rollup@4.9.4): + /@rollup/plugin-terser@0.4.4(rollup@4.17.2): resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} engines: {node: '>=14.0.0'} peerDependencies: @@ -883,7 +1119,7 @@ packages: rollup: optional: true dependencies: - rollup: 4.9.4 + rollup: 4.17.2 serialize-javascript: 6.0.1 smob: 1.4.1 terser: 5.24.0 @@ -897,7 +1133,7 @@ packages: picomatch: 2.3.1 dev: true - /@rollup/pluginutils@5.0.5(rollup@4.9.4): + /@rollup/pluginutils@5.0.5(rollup@4.17.2): resolution: {integrity: sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==} engines: {node: '>=14.0.0'} peerDependencies: @@ -909,10 +1145,10 @@ packages: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 4.9.4 + rollup: 4.17.2 dev: true - /@rollup/pluginutils@5.1.0(rollup@4.9.4): + /@rollup/pluginutils@5.1.0(rollup@4.17.2): resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} engines: {node: '>=14.0.0'} peerDependencies: @@ -924,123 +1160,146 @@ packages: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 4.9.4 + rollup: 4.17.2 dev: true - /@rollup/rollup-android-arm-eabi@4.9.4: - resolution: {integrity: sha512-ub/SN3yWqIv5CWiAZPHVS1DloyZsJbtXmX4HxUTIpS0BHm9pW5iYBo2mIZi+hE3AeiTzHz33blwSnhdUo+9NpA==} + /@rollup/rollup-android-arm-eabi@4.17.2: + resolution: {integrity: sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==} cpu: [arm] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-android-arm64@4.9.4: - resolution: {integrity: sha512-ehcBrOR5XTl0W0t2WxfTyHCR/3Cq2jfb+I4W+Ch8Y9b5G+vbAecVv0Fx/J1QKktOrgUYsIKxWAKgIpvw56IFNA==} + /@rollup/rollup-android-arm64@4.17.2: + resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==} cpu: [arm64] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-arm64@4.9.4: - resolution: {integrity: sha512-1fzh1lWExwSTWy8vJPnNbNM02WZDS8AW3McEOb7wW+nPChLKf3WG2aG7fhaUmfX5FKw9zhsF5+MBwArGyNM7NA==} + /@rollup/rollup-darwin-arm64@4.17.2: + resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-x64@4.9.4: - resolution: {integrity: sha512-Gc6cukkF38RcYQ6uPdiXi70JB0f29CwcQ7+r4QpfNpQFVHXRd0DfWFidoGxjSx1DwOETM97JPz1RXL5ISSB0pA==} + /@rollup/rollup-darwin-x64@4.17.2: + resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.9.4: - resolution: {integrity: sha512-g21RTeFzoTl8GxosHbnQZ0/JkuFIB13C3T7Y0HtKzOXmoHhewLbVTFBQZu+z5m9STH6FZ7L/oPgU4Nm5ErN2fw==} + /@rollup/rollup-linux-arm-gnueabihf@4.17.2: + resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm-musleabihf@4.17.2: + resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.9.4: - resolution: {integrity: sha512-TVYVWD/SYwWzGGnbfTkrNpdE4HON46orgMNHCivlXmlsSGQOx/OHHYiQcMIOx38/GWgwr/po2LBn7wypkWw/Mg==} + /@rollup/rollup-linux-arm64-gnu@4.17.2: + resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-musl@4.9.4: - resolution: {integrity: sha512-XcKvuendwizYYhFxpvQ3xVpzje2HHImzg33wL9zvxtj77HvPStbSGI9czrdbfrf8DGMcNNReH9pVZv8qejAQ5A==} + /@rollup/rollup-linux-arm64-musl@4.17.2: + resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-riscv64-gnu@4.9.4: - resolution: {integrity: sha512-LFHS/8Q+I9YA0yVETyjonMJ3UA+DczeBd/MqNEzsGSTdNvSJa1OJZcSH8GiXLvcizgp9AlHs2walqRcqzjOi3A==} + /@rollup/rollup-linux-powerpc64le-gnu@4.17.2: + resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.17.2: + resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==} cpu: [riscv64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-gnu@4.9.4: - resolution: {integrity: sha512-dIYgo+j1+yfy81i0YVU5KnQrIJZE8ERomx17ReU4GREjGtDW4X+nvkBak2xAUpyqLs4eleDSj3RrV72fQos7zw==} + /@rollup/rollup-linux-s390x-gnu@4.17.2: + resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-gnu@4.17.2: + resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-musl@4.9.4: - resolution: {integrity: sha512-RoaYxjdHQ5TPjaPrLsfKqR3pakMr3JGqZ+jZM0zP2IkDtsGa4CqYaWSfQmZVgFUCgLrTnzX+cnHS3nfl+kB6ZQ==} + /@rollup/rollup-linux-x64-musl@4.17.2: + resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.9.4: - resolution: {integrity: sha512-T8Q3XHV+Jjf5e49B4EAaLKV74BbX7/qYBRQ8Wop/+TyyU0k+vSjiLVSHNWdVd1goMjZcbhDmYZUYW5RFqkBNHQ==} + /@rollup/rollup-win32-arm64-msvc@4.17.2: + resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.9.4: - resolution: {integrity: sha512-z+JQ7JirDUHAsMecVydnBPWLwJjbppU+7LZjffGf+Jvrxq+dVjIE7By163Sc9DKc3ADSU50qPVw0KonBS+a+HQ==} + /@rollup/rollup-win32-ia32-msvc@4.17.2: + resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==} cpu: [ia32] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-x64-msvc@4.9.4: - resolution: {integrity: sha512-LfdGXCV9rdEify1oxlN9eamvDSjv9md9ZVMAbNHA87xqIfFCxImxan9qZ8+Un54iK2nnqPlbnSi4R54ONtbWBw==} + /@rollup/rollup-win32-x64-msvc@4.17.2: + resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==} cpu: [x64] os: [win32] requiresBuild: true dev: true optional: true - /@rushstack/node-core-library@3.62.0(@types/node@20.11.0): - resolution: {integrity: sha512-88aJn2h8UpSvdwuDXBv1/v1heM6GnBf3RjEy6ZPP7UnzHNCqOHA2Ut+ScYUbXcqIdfew9JlTAe3g+cnX9xQ/Aw==} + /@rushstack/node-core-library@4.0.2(@types/node@20.12.11): + resolution: {integrity: sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true dependencies: - '@types/node': 20.11.0 - colors: 1.2.5 + '@types/node': 20.12.11 fs-extra: 7.0.1 import-lazy: 4.0.0 jju: 1.4.0 @@ -1049,20 +1308,35 @@ packages: z-schema: 5.0.5 dev: true - /@rushstack/rig-package@0.5.1: - resolution: {integrity: sha512-pXRYSe29TjRw7rqxD4WS3HN/sRSbfr+tJs4a9uuaSIBAITbUggygdhuG0VrO0EO+QqH91GhYMN4S6KRtOEmGVA==} + /@rushstack/rig-package@0.5.2: + resolution: {integrity: sha512-mUDecIJeH3yYGZs2a48k+pbhM6JYwWlgjs2Ca5f2n1G2/kgdgP9D/07oglEGf6mRyXEnazhEENeYTSNDRCwdqA==} dependencies: resolve: 1.22.8 strip-json-comments: 3.1.1 dev: true - /@rushstack/ts-command-line@4.17.1: - resolution: {integrity: sha512-2jweO1O57BYP5qdBGl6apJLB+aRIn5ccIRTPDyULh0KMwVzFqWtw6IZWt1qtUoZD/pD2RNkIOosH6Cq45rIYeg==} + /@rushstack/terminal@0.10.0(@types/node@20.12.11): + resolution: {integrity: sha512-UbELbXnUdc7EKwfH2sb8ChqNgapUOdqcCIdQP4NGxBpTZV2sQyeekuK3zmfQSa/MN+/7b4kBogl2wq0vpkpYGw==} + peerDependencies: + '@types/node': '*' + peerDependenciesMeta: + '@types/node': + optional: true dependencies: + '@rushstack/node-core-library': 4.0.2(@types/node@20.12.11) + '@types/node': 20.12.11 + supports-color: 8.1.1 + dev: true + + /@rushstack/ts-command-line@4.19.1(@types/node@20.12.11): + resolution: {integrity: sha512-J7H768dgcpG60d7skZ5uSSwyCZs/S2HrWP1Ds8d1qYAyaaeJmpmmLr9BVw97RjFzmQPOYnoXcKA4GkqDCkduQg==} + dependencies: + '@rushstack/terminal': 0.10.0(@types/node@20.12.11) '@types/argparse': 1.0.38 argparse: 1.0.10 - colors: 1.2.5 string-argv: 0.3.2 + transitivePeerDependencies: + - '@types/node' dev: true /@sideway/address@4.1.4: @@ -1100,20 +1374,20 @@ packages: resolution: {integrity: sha512-T7VNNlYVM1SgQ+VsMYhnDkcGmWhQdL0bDyGm5TlQ3GBXnJscEClUUOKduWTmm2zCnvNLC1hc3JpuXjs/nFOc5w==} dev: true - /@stylistic/stylelint-plugin@2.0.0(stylelint@16.1.0): - resolution: {integrity: sha512-dHKuT6PGd1WGZLOTuozAM7GdQzdmlmnFXYzvV1jYJXXpcCpV/OJ3+n8TXpMkoOeKHpJydY43EOoZTO1W/FOA4Q==} + /@stylistic/stylelint-plugin@2.1.2(stylelint@16.5.0): + resolution: {integrity: sha512-JsSqu0Y3vsX+PBl+DwULxC0cIv9C1yIcq1MXkx7pBOGtTqU26a75I8MPYMiEYvrsXgsKLi65xVgy1iLVSZquJA==} engines: {node: ^18.12 || >=20.9} peerDependencies: stylelint: ^16.0.2 dependencies: - '@csstools/css-parser-algorithms': 2.5.0(@csstools/css-tokenizer@2.2.3) - '@csstools/css-tokenizer': 2.2.3 - '@csstools/media-query-list-parser': 2.1.7(@csstools/css-parser-algorithms@2.5.0)(@csstools/css-tokenizer@2.2.3) + '@csstools/css-parser-algorithms': 2.6.3(@csstools/css-tokenizer@2.3.1) + '@csstools/css-tokenizer': 2.3.1 + '@csstools/media-query-list-parser': 2.1.11(@csstools/css-parser-algorithms@2.6.3)(@csstools/css-tokenizer@2.3.1) is-plain-object: 5.0.0 - postcss-selector-parser: 6.0.15 + postcss-selector-parser: 6.0.16 postcss-value-parser: 4.2.0 style-search: 0.1.0 - stylelint: 16.1.0(typescript@5.3.3) + stylelint: 16.5.0(typescript@5.4.5) dev: true /@trysound/sax@0.2.0: @@ -1129,26 +1403,33 @@ packages: resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: '@types/connect': 3.4.38 - '@types/node': 20.11.0 + '@types/node': 20.12.11 dev: true /@types/bonjour@3.5.13: resolution: {integrity: sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 dev: true /@types/connect-history-api-fallback@1.5.3: resolution: {integrity: sha512-6mfQ6iNvhSKCZJoY6sIG3m0pKkdUcweVNOLuBBKvoWGzl2yRxOJcYOTRyLKt3nxXvBLJWa6QkW//tgbIwJehmA==} dependencies: '@types/express-serve-static-core': 4.17.41 - '@types/node': 20.11.0 + '@types/node': 20.12.11 dev: true /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 + dev: true + + /@types/cypress@1.1.3: + resolution: {integrity: sha512-OXe0Gw8LeCflkG1oPgFpyrYWJmEKqYncBsD/J0r17r0ETx/TnIGDNLwXt/pFYSYuYTpzcq1q3g62M9DrfsBL4g==} + deprecated: This is a stub types definition for cypress (https://cypress.io). cypress provides its own type definitions, so you don't need @types/cypress installed! + dependencies: + cypress: 13.9.0 dev: true /@types/eslint-scope@3.7.7: @@ -1172,7 +1453,7 @@ packages: /@types/express-serve-static-core@4.17.41: resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 '@types/qs': 6.9.10 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -1198,7 +1479,30 @@ packages: /@types/http-proxy@1.17.14: resolution: {integrity: sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 + dev: true + + /@types/istanbul-lib-coverage@2.0.6: + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + dev: true + + /@types/istanbul-lib-report@3.0.3: + resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==} + dependencies: + '@types/istanbul-lib-coverage': 2.0.6 + dev: true + + /@types/istanbul-reports@3.0.4: + resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} + dependencies: + '@types/istanbul-lib-report': 3.0.3 + dev: true + + /@types/jest@29.5.12: + resolution: {integrity: sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==} + dependencies: + expect: 29.7.0 + pretty-format: 29.7.0 dev: true /@types/json-schema@7.0.15: @@ -1224,11 +1528,11 @@ packages: /@types/node-forge@1.3.9: resolution: {integrity: sha512-meK88cx/sTalPSLSoCzkiUB4VPIFHmxtXm5FaaqRDqBX2i/Sy8bJ4odsan0b20RBjPh06dAQ+OTTdnyQyhJZyQ==} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 dev: true - /@types/node@20.11.0: - resolution: {integrity: sha512-o9bjXmDNcF7GbM4CNQpmi+TutCgap/K3w1JyKgxAjqx41zp9qlIAVFi0IhCNsJcXolEqLWhbFbEeL0PvYm4pcQ==} + /@types/node@20.12.11: + resolution: {integrity: sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==} dependencies: undici-types: 5.26.5 dev: true @@ -1241,8 +1545,8 @@ packages: resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} dev: true - /@types/prismjs@1.26.3: - resolution: {integrity: sha512-A0D0aTXvjlqJ5ZILMz3rNfDBOx9hHxLZYv2by47Sm/pqW35zzjusrZTryatjN/Rf8Us2gZrJD+KeHbUSTux1Cw==} + /@types/prismjs@1.26.4: + resolution: {integrity: sha512-rlAnzkW2sZOjbqZ743IHUhFcvzaGbqijwOu8QZnZCjfQzBqFE3s4lOTJEsxikImav9uzz/42I+O7YUs1mWgMlg==} dev: true /@types/qs@6.9.10: @@ -1265,11 +1569,15 @@ packages: resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} dev: true + /@types/semver@7.5.8: + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + dev: true + /@types/send@0.17.4: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: '@types/mime': 1.3.5 - '@types/node': 20.11.0 + '@types/node': 20.12.11 dev: true /@types/serve-index@1.9.4: @@ -1283,7 +1591,7 @@ packages: dependencies: '@types/http-errors': 2.0.4 '@types/mime': 3.0.4 - '@types/node': 20.11.0 + '@types/node': 20.12.11 dev: true /@types/sinonjs__fake-timers@8.1.1: @@ -1297,24 +1605,38 @@ packages: /@types/sockjs@0.3.36: resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 + dev: true + + /@types/stack-utils@2.0.3: + resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} dev: true /@types/ws@8.5.9: resolution: {integrity: sha512-jbdrY0a8lxfdTp/+r7Z4CkycbOFN8WX+IOchLJr3juT/xzbJ8URyTVSJ/hvNdadTgM1mnedb47n+Y31GsFnQlg==} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 + dev: true + + /@types/yargs-parser@21.0.3: + resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} + dev: true + + /@types/yargs@17.0.32: + resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==} + dependencies: + '@types/yargs-parser': 21.0.3 dev: true /@types/yauzl@2.10.3: resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} requiresBuild: true dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 dev: true optional: true - /@typescript-eslint/eslint-plugin@6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.3.3): + /@typescript-eslint/eslint-plugin@6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.4.5): resolution: {integrity: sha512-nISDRYnnIpk7VCFrGcu1rnZfM1Dh9LRHnfgdkjcbi/l7g16VYRri3TjXi9Ir4lOZSw5N/gnV/3H7jIPQ8Q4daA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -1326,10 +1648,10 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.4.5) '@typescript-eslint/scope-manager': 6.18.1 - '@typescript-eslint/type-utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/type-utils': 6.18.1(eslint@8.56.0)(typescript@5.4.5) + '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.4.5) '@typescript-eslint/visitor-keys': 6.18.1 debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 @@ -1337,13 +1659,42 @@ packages: ignore: 5.3.0 natural-compare: 1.4.0 semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.3.3) - typescript: 5.3.3 + ts-api-utils: 1.0.3(typescript@5.4.5) + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@6.18.1(eslint@8.56.0)(typescript@5.3.3): + /@typescript-eslint/eslint-plugin@7.8.0(@typescript-eslint/parser@7.8.0)(eslint@8.56.0)(typescript@5.4.5): + resolution: {integrity: sha512-gFTT+ezJmkwutUPmB0skOj3GZJtlEGnlssems4AjkVweUPGj7jRwwqg0Hhg7++kPGJqKtTYx+R05Ftww372aIg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + '@typescript-eslint/parser': ^7.0.0 + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@eslint-community/regexpp': 4.10.0 + '@typescript-eslint/parser': 7.8.0(eslint@8.56.0)(typescript@5.4.5) + '@typescript-eslint/scope-manager': 7.8.0 + '@typescript-eslint/type-utils': 7.8.0(eslint@8.56.0)(typescript@5.4.5) + '@typescript-eslint/utils': 7.8.0(eslint@8.56.0)(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.8.0 + debug: 4.3.4(supports-color@8.1.1) + eslint: 8.56.0 + graphemer: 1.4.0 + ignore: 5.3.1 + natural-compare: 1.4.0 + semver: 7.6.2 + ts-api-utils: 1.3.0(typescript@5.4.5) + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser@6.18.1(eslint@8.56.0)(typescript@5.4.5): resolution: {integrity: sha512-zct/MdJnVaRRNy9e84XnVtRv9Vf91/qqe+hZJtKanjojud4wAVy/7lXxJmMyX6X6J+xc6c//YEWvpeif8cAhWA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -1355,11 +1706,32 @@ packages: dependencies: '@typescript-eslint/scope-manager': 6.18.1 '@typescript-eslint/types': 6.18.1 - '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.4.5) '@typescript-eslint/visitor-keys': 6.18.1 debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 - typescript: 5.3.3 + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser@7.8.0(eslint@8.56.0)(typescript@5.4.5): + resolution: {integrity: sha512-KgKQly1pv0l4ltcftP59uQZCi4HUYswCLbTqVZEJu7uLX8CTLyswqMLqLN+2QFz4jCptqWVV4SB7vdxcH2+0kQ==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 7.8.0 + '@typescript-eslint/types': 7.8.0 + '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.8.0 + debug: 4.3.4(supports-color@8.1.1) + eslint: 8.56.0 + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true @@ -1372,7 +1744,15 @@ packages: '@typescript-eslint/visitor-keys': 6.18.1 dev: true - /@typescript-eslint/type-utils@6.18.1(eslint@8.56.0)(typescript@5.3.3): + /@typescript-eslint/scope-manager@7.8.0: + resolution: {integrity: sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g==} + engines: {node: ^18.18.0 || >=20.0.0} + dependencies: + '@typescript-eslint/types': 7.8.0 + '@typescript-eslint/visitor-keys': 7.8.0 + dev: true + + /@typescript-eslint/type-utils@6.18.1(eslint@8.56.0)(typescript@5.4.5): resolution: {integrity: sha512-wyOSKhuzHeU/5pcRDP2G2Ndci+4g653V43gXTpt4nbyoIOAASkGDA9JIAgbQCdCkcr1MvpSYWzxTz0olCn8+/Q==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -1382,12 +1762,32 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) - '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.4.5) + '@typescript-eslint/utils': 6.18.1(eslint@8.56.0)(typescript@5.4.5) + debug: 4.3.4(supports-color@8.1.1) + eslint: 8.56.0 + ts-api-utils: 1.0.3(typescript@5.4.5) + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/type-utils@7.8.0(eslint@8.56.0)(typescript@5.4.5): + resolution: {integrity: sha512-H70R3AefQDQpz9mGv13Uhi121FNMh+WEaRqcXTX09YEDky21km4dV1ZXJIp8QjXc4ZaVkXVdohvWDzbnbHDS+A==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5) + '@typescript-eslint/utils': 7.8.0(eslint@8.56.0)(typescript@5.4.5) debug: 4.3.4(supports-color@8.1.1) eslint: 8.56.0 - ts-api-utils: 1.0.3(typescript@5.3.3) - typescript: 5.3.3 + ts-api-utils: 1.3.0(typescript@5.4.5) + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true @@ -1397,7 +1797,12 @@ packages: engines: {node: ^16.0.0 || >=18.0.0} dev: true - /@typescript-eslint/typescript-estree@6.18.1(typescript@5.3.3): + /@typescript-eslint/types@7.8.0: + resolution: {integrity: sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==} + engines: {node: ^18.18.0 || >=20.0.0} + dev: true + + /@typescript-eslint/typescript-estree@6.18.1(typescript@5.4.5): resolution: {integrity: sha512-fv9B94UAhywPRhUeeV/v+3SBDvcPiLxRZJw/xZeeGgRLQZ6rLMG+8krrJUyIf6s1ecWTzlsbp0rlw7n9sjufHA==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -1413,13 +1818,35 @@ packages: is-glob: 4.0.3 minimatch: 9.0.3 semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.3.3) - typescript: 5.3.3 + ts-api-utils: 1.0.3(typescript@5.4.5) + typescript: 5.4.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@6.18.1(eslint@8.56.0)(typescript@5.3.3): + /@typescript-eslint/typescript-estree@7.8.0(typescript@5.4.5): + resolution: {integrity: sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 7.8.0 + '@typescript-eslint/visitor-keys': 7.8.0 + debug: 4.3.4(supports-color@8.1.1) + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.4 + semver: 7.6.2 + ts-api-utils: 1.3.0(typescript@5.4.5) + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/utils@6.18.1(eslint@8.56.0)(typescript@5.4.5): resolution: {integrity: sha512-zZmTuVZvD1wpoceHvoQpOiewmWu3uP9FuTWo8vqpy2ffsmfCE8mklRPi+vmnIYAIk9t/4kOThri2QCDgor+OpQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -1430,7 +1857,7 @@ packages: '@types/semver': 7.5.6 '@typescript-eslint/scope-manager': 6.18.1 '@typescript-eslint/types': 6.18.1 - '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.18.1(typescript@5.4.5) eslint: 8.56.0 semver: 7.5.4 transitivePeerDependencies: @@ -1438,6 +1865,25 @@ packages: - typescript dev: true + /@typescript-eslint/utils@7.8.0(eslint@8.56.0)(typescript@5.4.5): + resolution: {integrity: sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 + '@typescript-eslint/scope-manager': 7.8.0 + '@typescript-eslint/types': 7.8.0 + '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5) + eslint: 8.56.0 + semver: 7.6.2 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + /@typescript-eslint/visitor-keys@6.18.1: resolution: {integrity: sha512-/kvt0C5lRqGoCfsbmm7/CwMqoSkY3zzHLIjdhHZQW3VFrnz7ATecOHR7nb7V+xn4286MBxfnQfQhAmCI0u+bJA==} engines: {node: ^16.0.0 || >=18.0.0} @@ -1446,53 +1892,61 @@ packages: eslint-visitor-keys: 3.4.3 dev: true + /@typescript-eslint/visitor-keys@7.8.0: + resolution: {integrity: sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA==} + engines: {node: ^18.18.0 || >=20.0.0} + dependencies: + '@typescript-eslint/types': 7.8.0 + eslint-visitor-keys: 3.4.3 + dev: true + /@ungap/structured-clone@1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} dev: true - /@vitejs/plugin-vue@5.0.3(vite@5.0.11)(vue@3.4.10): - resolution: {integrity: sha512-b8S5dVS40rgHdDrw+DQi/xOM9ed+kSRZzfm1T74bMmBDCd8XO87NKlFYInzCtwvtWwXZvo1QxE2OSspTATWrbA==} + /@vitejs/plugin-vue@5.0.4(vite@5.2.11)(vue@3.4.27): + resolution: {integrity: sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: vite: ^5.0.0 vue: ^3.2.25 dependencies: - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) - vue: 3.4.10(typescript@5.3.3) + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) + vue: 3.4.27(typescript@5.4.5) dev: true - /@vitest/expect@1.1.3: - resolution: {integrity: sha512-MnJqsKc1Ko04lksF9XoRJza0bGGwTtqfbyrsYv5on4rcEkdo+QgUdITenBQBUltKzdxW7K3rWh+nXRULwsdaVg==} + /@vitest/expect@1.6.0: + resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} dependencies: - '@vitest/spy': 1.1.3 - '@vitest/utils': 1.1.3 - chai: 4.4.0 + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + chai: 4.4.1 dev: true - /@vitest/runner@1.1.3: - resolution: {integrity: sha512-Va2XbWMnhSdDEh/OFxyUltgQuuDRxnarK1hW5QNN4URpQrqq6jtt8cfww/pQQ4i0LjoYxh/3bYWvDFlR9tU73g==} + /@vitest/runner@1.6.0: + resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} dependencies: - '@vitest/utils': 1.1.3 + '@vitest/utils': 1.6.0 p-limit: 5.0.0 pathe: 1.1.2 dev: true - /@vitest/snapshot@1.1.3: - resolution: {integrity: sha512-U0r8pRXsLAdxSVAyGNcqOU2H3Z4Y2dAAGGelL50O0QRMdi1WWeYHdrH/QWpN1e8juWfVKsb8B+pyJwTC+4Gy9w==} + /@vitest/snapshot@1.6.0: + resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} dependencies: - magic-string: 0.30.5 + magic-string: 0.30.10 pathe: 1.1.2 pretty-format: 29.7.0 dev: true - /@vitest/spy@1.1.3: - resolution: {integrity: sha512-Ec0qWyGS5LhATFQtldvChPTAHv08yHIOZfiNcjwRQbFPHpkih0md9KAbs7TfeIfL7OFKoe7B/6ukBTqByubXkQ==} + /@vitest/spy@1.6.0: + resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} dependencies: - tinyspy: 2.2.0 + tinyspy: 2.2.1 dev: true - /@vitest/utils@1.1.3: - resolution: {integrity: sha512-Dyt3UMcdElTll2H75vhxfpZu03uFpXRCHxWnzcrFjZxT1kTbq8ALUYIeBgGolo1gldVdI0YSlQRacsqxTwNqwg==} + /@vitest/utils@1.6.0: + resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} dependencies: diff-sequences: 29.6.3 estree-walker: 3.0.3 @@ -1506,12 +1960,24 @@ packages: '@volar/source-map': 1.11.1 dev: true + /@volar/language-core@2.2.2: + resolution: {integrity: sha512-GuvEL4JdxbnLVhPLICncCGT+tVW4cIz9GxXNeDofNnJ4iNTKhr5suGVsA1GLOne9PbraSjn8PlLt+pvLxuRVeQ==} + dependencies: + '@volar/source-map': 2.2.2 + dev: true + /@volar/source-map@1.11.1: resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==} dependencies: muggle-string: 0.3.1 dev: true + /@volar/source-map@2.2.2: + resolution: {integrity: sha512-vUwvZuSW6iN4JI9QRinh9EjFasx1TUtnaWMKwgWx08xz1PyYuNkLlWlrZXBZ5GGBhML0u230M/7X+AHY2h9yKg==} + dependencies: + muggle-string: 0.4.1 + dev: true + /@volar/typescript@1.11.1: resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==} dependencies: @@ -1519,6 +1985,13 @@ packages: path-browserify: 1.0.1 dev: true + /@volar/typescript@2.2.2: + resolution: {integrity: sha512-WcwOREz7+uOrpjUrKhOMaOKKmyPdtqF95HWX7SE0d9hhBB1KkfahxhaAex5U9Bn43LfINHlycLoYCNEtfeKm0g==} + dependencies: + '@volar/language-core': 2.2.2 + path-browserify: 1.0.1 + dev: true + /@vue/cli-overlay@5.0.8: resolution: {integrity: sha512-KmtievE/B4kcXp6SuM2gzsnSd8WebkQpg3XaB6GmFh1BJGRqa1UiW9up7L/Q67uOdTigHxr5Ar2lZms4RcDjwQ==} dev: true @@ -1529,7 +2002,7 @@ packages: '@vue/cli-service': ^3.0.0 || ^4.0.0 || ^5.0.0-0 eslint: '>=7.5.0' dependencies: - '@vue/cli-service': 5.0.8(@vue/compiler-sfc@3.4.10)(prettier@3.1.1)(vue@3.4.10) + '@vue/cli-service': 5.0.8(@vue/compiler-sfc@3.4.27)(prettier@3.2.5)(vue@3.4.27) '@vue/cli-shared-utils': 5.0.8 eslint: 8.56.0 eslint-webpack-plugin: 3.2.0(eslint@8.56.0)(webpack@5.89.0) @@ -1549,7 +2022,7 @@ packages: peerDependencies: '@vue/cli-service': ^3.0.0 || ^4.0.0 || ^5.0.0-0 dependencies: - '@vue/cli-service': 5.0.8(@vue/compiler-sfc@3.4.10)(prettier@3.1.1)(vue@3.4.10) + '@vue/cli-service': 5.0.8(@vue/compiler-sfc@3.4.27)(prettier@3.2.5)(vue@3.4.27) '@vue/cli-shared-utils': 5.0.8 transitivePeerDependencies: - encoding @@ -1560,10 +2033,10 @@ packages: peerDependencies: '@vue/cli-service': ^3.0.0 || ^4.0.0 || ^5.0.0-0 dependencies: - '@vue/cli-service': 5.0.8(@vue/compiler-sfc@3.4.10)(prettier@3.1.1)(vue@3.4.10) + '@vue/cli-service': 5.0.8(@vue/compiler-sfc@3.4.27)(prettier@3.2.5)(vue@3.4.27) dev: true - /@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.10)(prettier@3.1.1)(vue@3.4.10): + /@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.27)(prettier@3.2.5)(vue@3.4.27): resolution: {integrity: sha512-nV7tYQLe7YsTtzFrfOMIHc5N2hp5lHG2rpYr0aNja9rNljdgcPZLyQRb2YRivTHqTv7lI962UXFURcpStHgyFw==} engines: {node: ^12.0.0 || >= 14.0.0} hasBin: true @@ -1603,12 +2076,12 @@ packages: '@vue/cli-plugin-vuex': 5.0.8(@vue/cli-service@5.0.8) '@vue/cli-shared-utils': 5.0.8 '@vue/component-compiler-utils': 3.3.0 - '@vue/vue-loader-v15': /vue-loader@15.11.1(@vue/compiler-sfc@3.4.10)(css-loader@6.8.1)(prettier@3.1.1)(webpack@5.89.0) + '@vue/vue-loader-v15': /vue-loader@15.11.1(@vue/compiler-sfc@3.4.27)(css-loader@6.8.1)(prettier@3.2.5)(webpack@5.89.0) '@vue/web-component-wrapper': 1.3.0 acorn: 8.11.2 acorn-walk: 8.3.0 address: 1.2.2 - autoprefixer: 10.4.16(postcss@8.4.33) + autoprefixer: 10.4.19(postcss@8.4.38) browserslist: 4.22.1 case-sensitive-paths-webpack-plugin: 2.4.0 cli-highlight: 2.1.11 @@ -1617,7 +2090,7 @@ packages: copy-webpack-plugin: 9.1.0(webpack@5.89.0) css-loader: 6.8.1(webpack@5.89.0) css-minimizer-webpack-plugin: 3.4.1(webpack@5.89.0) - cssnano: 5.1.15(postcss@8.4.33) + cssnano: 5.1.15(postcss@8.4.38) debug: 4.3.4(supports-color@8.1.1) default-gateway: 6.0.3 dotenv: 10.0.0 @@ -1634,13 +2107,13 @@ packages: minimist: 1.2.8 module-alias: 2.2.3 portfinder: 1.0.32 - postcss: 8.4.33 - postcss-loader: 6.2.1(postcss@8.4.33)(webpack@5.89.0) + postcss: 8.4.38 + postcss-loader: 6.2.1(postcss@8.4.38)(webpack@5.89.0) progress-webpack-plugin: 1.0.16(webpack@5.89.0) ssri: 8.0.1 terser-webpack-plugin: 5.3.9(webpack@5.89.0) thread-loader: 3.0.4(webpack@5.89.0) - vue-loader: 17.3.1(@vue/compiler-sfc@3.4.10)(vue@3.4.10)(webpack@5.89.0) + vue-loader: 17.3.1(@vue/compiler-sfc@3.4.27)(vue@3.4.27)(webpack@5.89.0) vue-style-loader: 4.1.3 webpack: 5.89.0 webpack-bundle-analyzer: 4.9.1 @@ -1738,39 +2211,39 @@ packages: - encoding dev: true - /@vue/compiler-core@3.4.10: - resolution: {integrity: sha512-53vxh7K9qbx+JILnGEhrFRyr7H7e4NdT8RuTNU3m6HhJKFvcAqFTNXpYMHnyuAzzRGdsbsYHBgQC3H6xEXTG6w==} + /@vue/compiler-core@3.4.27: + resolution: {integrity: sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==} dependencies: - '@babel/parser': 7.23.6 - '@vue/shared': 3.4.10 + '@babel/parser': 7.24.5 + '@vue/shared': 3.4.27 entities: 4.5.0 estree-walker: 2.0.2 - source-map-js: 1.0.2 + source-map-js: 1.2.0 - /@vue/compiler-dom@3.4.10: - resolution: {integrity: sha512-QAALBJksIFpXGYuo74rtMgnwpVZDvd3kYbUa4gYX9s/5QiqEvZSgbKtOdUGydXcxKPt3ifC+0/bhPVHXN2694A==} + /@vue/compiler-dom@3.4.27: + resolution: {integrity: sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==} dependencies: - '@vue/compiler-core': 3.4.10 - '@vue/shared': 3.4.10 + '@vue/compiler-core': 3.4.27 + '@vue/shared': 3.4.27 - /@vue/compiler-sfc@3.4.10: - resolution: {integrity: sha512-sTOssaQySgrMjrhZxmAqdp6n+E51VteIVIDaOR537H2P63DyzMmig21U0XXFxiXmMIfrK91lAInnc+bIAYemGw==} + /@vue/compiler-sfc@3.4.27: + resolution: {integrity: sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==} dependencies: - '@babel/parser': 7.23.6 - '@vue/compiler-core': 3.4.10 - '@vue/compiler-dom': 3.4.10 - '@vue/compiler-ssr': 3.4.10 - '@vue/shared': 3.4.10 + '@babel/parser': 7.24.5 + '@vue/compiler-core': 3.4.27 + '@vue/compiler-dom': 3.4.27 + '@vue/compiler-ssr': 3.4.27 + '@vue/shared': 3.4.27 estree-walker: 2.0.2 - magic-string: 0.30.5 - postcss: 8.4.33 - source-map-js: 1.0.2 + magic-string: 0.30.10 + postcss: 8.4.38 + source-map-js: 1.2.0 - /@vue/compiler-ssr@3.4.10: - resolution: {integrity: sha512-Y90TL1abretWbUiK5rv+9smS1thCHE5sSuhZgiLh6cxgZ2Pcy3BEvDd3reID0iwNcTdMbTeE6NI3Aq4Mux6hqQ==} + /@vue/compiler-ssr@3.4.27: + resolution: {integrity: sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==} dependencies: - '@vue/compiler-dom': 3.4.10 - '@vue/shared': 3.4.10 + '@vue/compiler-dom': 3.4.27 + '@vue/shared': 3.4.27 /@vue/component-compiler-utils@3.3.0: resolution: {integrity: sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==} @@ -1780,7 +2253,7 @@ packages: lru-cache: 4.1.5 merge-source-map: 1.1.0 postcss: 7.0.39 - postcss-selector-parser: 6.0.15 + postcss-selector-parser: 6.0.16 source-map: 0.6.1 vue-template-es2015-compiler: 1.9.1 optionalDependencies: @@ -1845,28 +2318,28 @@ packages: resolution: {integrity: sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==} dev: true - /@vue/eslint-config-typescript@12.0.0(eslint-plugin-vue@9.20.0)(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-StxLFet2Qe97T8+7L8pGlhYBBr8Eg05LPuTDVopQV6il+SK6qqom59BA/rcFipUef2jD8P2X44Vd8tMFytfvlg==} - engines: {node: ^14.17.0 || >=16.0.0} + /@vue/eslint-config-typescript@13.0.0(eslint-plugin-vue@9.20.0)(eslint@8.56.0)(typescript@5.4.5): + resolution: {integrity: sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==} + engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: - eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 + eslint: ^8.56.0 eslint-plugin-vue: ^9.0.0 - typescript: '*' + typescript: '>=4.7.4' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 6.18.1(@typescript-eslint/parser@6.18.1)(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/eslint-plugin': 7.8.0(@typescript-eslint/parser@7.8.0)(eslint@8.56.0)(typescript@5.4.5) + '@typescript-eslint/parser': 7.8.0(eslint@8.56.0)(typescript@5.4.5) eslint: 8.56.0 eslint-plugin-vue: 9.20.0(eslint@8.56.0) - typescript: 5.3.3 - vue-eslint-parser: 9.3.2(eslint@8.56.0) + typescript: 5.4.5 + vue-eslint-parser: 9.4.2(eslint@8.56.0) transitivePeerDependencies: - supports-color dev: true - /@vue/language-core@1.8.27(typescript@5.3.3): + /@vue/language-core@1.8.27(typescript@5.4.5): resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==} peerDependencies: typescript: '*' @@ -1876,73 +2349,84 @@ packages: dependencies: '@volar/language-core': 1.11.1 '@volar/source-map': 1.11.1 - '@vue/compiler-dom': 3.4.10 - '@vue/shared': 3.4.10 + '@vue/compiler-dom': 3.4.27 + '@vue/shared': 3.4.27 computeds: 0.0.1 - minimatch: 9.0.3 + minimatch: 9.0.4 muggle-string: 0.3.1 path-browserify: 1.0.1 - typescript: 5.3.3 + typescript: 5.4.5 vue-template-compiler: 2.7.16 dev: true - /@vue/reactivity@3.4.10: - resolution: {integrity: sha512-SmGGpo37LzPcAFTopHNIJRNVOQfma9YgyPkAzx9/TJ01lbCCYigS28hEcY1hjiJ1PRK8iVX62Ov5yzmUgYH/pQ==} + /@vue/language-core@2.0.17(typescript@5.4.5): + resolution: {integrity: sha512-tHw2J6G9yL4kn3jN5MftOHEq86Y6qnuohBQ1OHkJ73fAv3OYgwDI1cfX7ds0OEJEycOMG64BA3ql5bDgDa41zw==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: - '@vue/shared': 3.4.10 + '@volar/language-core': 2.2.2 + '@vue/compiler-dom': 3.4.27 + '@vue/shared': 3.4.27 + computeds: 0.0.1 + minimatch: 9.0.4 + path-browserify: 1.0.1 + typescript: 5.4.5 + vue-template-compiler: 2.7.16 + dev: true + + /@vue/reactivity@3.4.27: + resolution: {integrity: sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==} + dependencies: + '@vue/shared': 3.4.27 - /@vue/runtime-core@3.4.10: - resolution: {integrity: sha512-Ri2Cz9sFr66AEUewGUK8IXhIUAhshTHVUGuJR8pqMbtjIds+zPa8QPO5UZImGMQ8HTY7eEpKwztCct9V3+Iqug==} + /@vue/runtime-core@3.4.27: + resolution: {integrity: sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA==} dependencies: - '@vue/reactivity': 3.4.10 - '@vue/shared': 3.4.10 + '@vue/reactivity': 3.4.27 + '@vue/shared': 3.4.27 - /@vue/runtime-dom@3.4.10: - resolution: {integrity: sha512-ROsdi5M2niRDmjXJNZ8KKiGwXyG1FO8l9n6sCN0kaJEHbjWkuigu96YAI3fK/AWUZPSXXEcMEBVPC6rL3mmUuA==} + /@vue/runtime-dom@3.4.27: + resolution: {integrity: sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q==} dependencies: - '@vue/runtime-core': 3.4.10 - '@vue/shared': 3.4.10 + '@vue/runtime-core': 3.4.27 + '@vue/shared': 3.4.27 csstype: 3.1.3 - /@vue/server-renderer@3.4.10(vue@3.4.10): - resolution: {integrity: sha512-WpCBAhesLq44JKWfdFqb+Bi4ACUW0d8x1z90GnE0spccsAlEDMXV5nm+pwXLyW0OdP2iPrO/n/QMJh4B1v9Ciw==} + /@vue/server-renderer@3.4.27(vue@3.4.27): + resolution: {integrity: sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA==} peerDependencies: - vue: 3.4.10 + vue: 3.4.27 dependencies: - '@vue/compiler-ssr': 3.4.10 - '@vue/shared': 3.4.10 - vue: 3.4.10(typescript@5.3.3) + '@vue/compiler-ssr': 3.4.27 + '@vue/shared': 3.4.27 + vue: 3.4.27(typescript@5.4.5) - /@vue/shared@3.4.10: - resolution: {integrity: sha512-C0mIVhwW1xQLMFyqMJxnhq6fWyE02lCgcE+TDdtGpg6B3H6kh/0YcqS54qYc76UJNlWegf3VgsLqgk6D9hBmzQ==} + /@vue/shared@3.4.27: + resolution: {integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==} - /@vue/test-utils@2.4.3(vue@3.4.10): - resolution: {integrity: sha512-F4K7mF+ad++VlTrxMJVRnenKSJmO6fkQt2wpRDiKDesQMkfpniGWsqEi/JevxGBo2qEkwwjvTUAoiGJLNx++CA==} - peerDependencies: - '@vue/server-renderer': ^3.0.1 - vue: ^3.0.1 - peerDependenciesMeta: - '@vue/server-renderer': - optional: true + /@vue/test-utils@2.4.6: + resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==} dependencies: - js-beautify: 1.14.11 - vue: 3.4.10(typescript@5.3.3) - vue-component-type-helpers: 1.8.25 + js-beautify: 1.15.1 + vue-component-type-helpers: 2.0.17 dev: true /@vue/web-component-wrapper@1.3.0: resolution: {integrity: sha512-Iu8Tbg3f+emIIMmI2ycSI8QcEuAUgPTgHwesDU1eKMLE4YC/c/sFbGc70QgMq31ijRftV0R7vCm9co6rldCeOA==} dev: true - /@vuetify/loader-shared@2.0.1(vue@3.4.10)(vuetify@3.4.10): - resolution: {integrity: sha512-zy5/ohEO7RcJaWYu2Xiy8TBEOkTb42XvWvSAJwXAtY8OlwqyGhzzBp9OvMVjLGIuFXumBpXKlsaVIkeN0OWWSw==} + /@vuetify/loader-shared@2.0.3(vue@3.4.27)(vuetify@3.6.5): + resolution: {integrity: sha512-Ss3GC7eJYkp2SF6xVzsT7FAruEmdihmn4OCk2+UocREerlXKWgOKKzTN5PN3ZVN5q05jHHrsNhTuWbhN61Bpdg==} peerDependencies: vue: ^3.0.0 vuetify: ^3.0.0 dependencies: upath: 2.0.1 - vue: 3.4.10(typescript@5.3.3) - vuetify: 3.4.10(typescript@5.3.3)(vite-plugin-vuetify@2.0.1)(vue@3.4.10) + vue: 3.4.27(typescript@5.4.5) + vuetify: 3.6.5(typescript@5.4.5)(vite-plugin-vuetify@2.0.3)(vue@3.4.27) dev: true /@webassemblyjs/ast@1.11.6: @@ -2115,8 +2599,8 @@ packages: engines: {node: '>= 10.0.0'} dev: true - /agent-base@7.1.0: - resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} + /agent-base@7.1.1: + resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} engines: {node: '>= 14'} dependencies: debug: 4.3.4(supports-color@8.1.1) @@ -2178,6 +2662,15 @@ packages: uri-js: 4.4.1 dev: true + /ajv@8.13.0: + resolution: {integrity: sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==} + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + dev: true + /ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} @@ -2195,11 +2688,9 @@ packages: type-fest: 0.21.3 dev: true - /ansi-escapes@6.2.0: - resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} + /ansi-escapes@6.2.1: + resolution: {integrity: sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==} engines: {node: '>=14.16'} - dependencies: - type-fest: 3.13.1 dev: true /ansi-html-community@0.0.8: @@ -2399,19 +2890,19 @@ packages: engines: {node: '>= 4.0.0'} dev: true - /autoprefixer@10.4.16(postcss@8.4.33): - resolution: {integrity: sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==} + /autoprefixer@10.4.19(postcss@8.4.38): + resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: postcss: ^8.1.0 dependencies: - browserslist: 4.22.1 - caniuse-lite: 1.0.30001561 + browserslist: 4.23.0 + caniuse-lite: 1.0.30001617 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.0 - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true @@ -2450,12 +2941,6 @@ packages: tweetnacl: 0.14.5 dev: true - /bidi-js@1.0.3: - resolution: {integrity: sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==} - dependencies: - require-from-string: 2.0.2 - dev: true - /big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} dev: true @@ -2539,10 +3024,21 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001561 - electron-to-chromium: 1.4.581 - node-releases: 2.0.13 - update-browserslist-db: 1.0.13(browserslist@4.22.1) + caniuse-lite: 1.0.30001617 + electron-to-chromium: 1.4.763 + node-releases: 2.0.14 + update-browserslist-db: 1.0.15(browserslist@4.22.1) + dev: true + + /browserslist@4.23.0: + resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + caniuse-lite: 1.0.30001617 + electron-to-chromium: 1.4.763 + node-releases: 2.0.14 + update-browserslist-db: 1.0.15(browserslist@4.23.0) dev: true /buffer-crc32@0.2.13: @@ -2593,6 +3089,17 @@ packages: set-function-length: 1.1.1 dev: true + /call-bind@1.0.7: + resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} + engines: {node: '>= 0.4'} + dependencies: + 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.2 + dev: true + /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -2609,13 +3116,13 @@ packages: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: browserslist: 4.22.1 - caniuse-lite: 1.0.30001561 + caniuse-lite: 1.0.30001617 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 dev: true - /caniuse-lite@1.0.30001561: - resolution: {integrity: sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==} + /caniuse-lite@1.0.30001617: + resolution: {integrity: sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==} dev: true /case-sensitive-paths-webpack-plugin@2.4.0: @@ -2627,8 +3134,8 @@ packages: resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} dev: true - /chai@4.4.0: - resolution: {integrity: sha512-x9cHNq1uvkCdU+5xTkNh5WtgD4e4yDFCsp9jVc7N7qVeKeftv3gO/ZrviX5d+3ZfxdYnZXZYujjRInu1RogU6A==} + /chai@4.4.1: + resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} engines: {node: '>=4'} dependencies: assertion-error: 1.1.0 @@ -2696,6 +3203,21 @@ packages: fsevents: 2.3.3 dev: true + /chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + dependencies: + anymatch: 3.1.3 + braces: 3.0.2 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + dev: true + /chrome-trace-event@1.0.3: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} @@ -2783,7 +3305,7 @@ packages: engines: {node: '>=18'} dependencies: slice-ansi: 5.0.0 - string-width: 7.0.0 + string-width: 7.1.0 dev: true /clipboardy@2.3.0: @@ -2846,11 +3368,6 @@ packages: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} dev: true - /colors@1.2.5: - resolution: {integrity: sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==} - engines: {node: '>=0.1.90'} - dev: true - /combined-stream@1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} @@ -2939,6 +3456,10 @@ packages: source-map: 0.6.1 dev: true + /confbox@0.1.7: + resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} + dev: true + /config-chain@1.1.13: resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} dependencies: @@ -3175,7 +3696,23 @@ packages: yaml: 1.10.2 dev: true - /cosmiconfig@9.0.0(typescript@5.3.3): + /cosmiconfig@8.3.6(typescript@5.4.5): + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + typescript: 5.4.5 + dev: true + + /cosmiconfig@9.0.0(typescript@5.4.5): resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} engines: {node: '>=14'} peerDependencies: @@ -3188,7 +3725,7 @@ packages: import-fresh: 3.3.0 js-yaml: 4.1.0 parse-json: 5.2.0 - typescript: 5.3.3 + typescript: 5.4.5 dev: true /cross-spawn@5.1.0: @@ -3219,17 +3756,17 @@ packages: which: 2.0.2 dev: true - /css-declaration-sorter@6.4.1(postcss@8.4.33): + /css-declaration-sorter@6.4.1(postcss@8.4.38): resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==} engines: {node: ^10 || ^12 || >=14} peerDependencies: postcss: ^8.0.9 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /css-functions-list@3.2.1: - resolution: {integrity: sha512-Nj5YcaGgBtuUmn1D7oHqPW0c9iui7xsTsj5lIX8ZgevdfhmjFfKB3r8moHJtNJnctnYXJyYX5I1pp90HM4TPgQ==} + /css-functions-list@3.2.2: + resolution: {integrity: sha512-c+N0v6wbKVxTu5gOBBFkr9BEdBWaqqjQeiJ8QvSRIJOf+UxlJh930m8e6/WNeODIK0mYLFkoONrnj16i2EcvfQ==} engines: {node: '>=12 || >=16'} dev: true @@ -3239,14 +3776,14 @@ packages: peerDependencies: webpack: ^5.0.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.33) - postcss: 8.4.33 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.33) - postcss-modules-local-by-default: 4.0.3(postcss@8.4.33) - postcss-modules-scope: 3.0.0(postcss@8.4.33) - postcss-modules-values: 4.0.0(postcss@8.4.33) + icss-utils: 5.1.0(postcss@8.4.38) + postcss: 8.4.38 + postcss-modules-extract-imports: 3.0.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.3(postcss@8.4.38) + postcss-modules-scope: 3.0.0(postcss@8.4.38) + postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 - semver: 7.5.4 + semver: 7.6.2 webpack: 5.89.0 dev: true @@ -3269,9 +3806,9 @@ packages: esbuild: optional: true dependencies: - cssnano: 5.1.15(postcss@8.4.33) + cssnano: 5.1.15(postcss@8.4.38) jest-worker: 27.5.1 - postcss: 8.4.33 + postcss: 8.4.38 schema-utils: 4.2.0 serialize-javascript: 6.0.1 source-map: 0.6.1 @@ -3301,7 +3838,7 @@ packages: engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} dependencies: mdn-data: 2.0.30 - source-map-js: 1.0.2 + source-map-js: 1.2.0 dev: true /css-what@6.1.0: @@ -3315,62 +3852,62 @@ packages: hasBin: true dev: true - /cssnano-preset-default@5.2.14(postcss@8.4.33): + /cssnano-preset-default@5.2.14(postcss@8.4.38): resolution: {integrity: sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - css-declaration-sorter: 6.4.1(postcss@8.4.33) - cssnano-utils: 3.1.0(postcss@8.4.33) - postcss: 8.4.33 - postcss-calc: 8.2.4(postcss@8.4.33) - postcss-colormin: 5.3.1(postcss@8.4.33) - postcss-convert-values: 5.1.3(postcss@8.4.33) - postcss-discard-comments: 5.1.2(postcss@8.4.33) - postcss-discard-duplicates: 5.1.0(postcss@8.4.33) - postcss-discard-empty: 5.1.1(postcss@8.4.33) - postcss-discard-overridden: 5.1.0(postcss@8.4.33) - postcss-merge-longhand: 5.1.7(postcss@8.4.33) - postcss-merge-rules: 5.1.4(postcss@8.4.33) - postcss-minify-font-values: 5.1.0(postcss@8.4.33) - postcss-minify-gradients: 5.1.1(postcss@8.4.33) - postcss-minify-params: 5.1.4(postcss@8.4.33) - postcss-minify-selectors: 5.2.1(postcss@8.4.33) - postcss-normalize-charset: 5.1.0(postcss@8.4.33) - postcss-normalize-display-values: 5.1.0(postcss@8.4.33) - postcss-normalize-positions: 5.1.1(postcss@8.4.33) - postcss-normalize-repeat-style: 5.1.1(postcss@8.4.33) - postcss-normalize-string: 5.1.0(postcss@8.4.33) - postcss-normalize-timing-functions: 5.1.0(postcss@8.4.33) - postcss-normalize-unicode: 5.1.1(postcss@8.4.33) - postcss-normalize-url: 5.1.0(postcss@8.4.33) - postcss-normalize-whitespace: 5.1.1(postcss@8.4.33) - postcss-ordered-values: 5.1.3(postcss@8.4.33) - postcss-reduce-initial: 5.1.2(postcss@8.4.33) - postcss-reduce-transforms: 5.1.0(postcss@8.4.33) - postcss-svgo: 5.1.0(postcss@8.4.33) - postcss-unique-selectors: 5.1.1(postcss@8.4.33) - dev: true - - /cssnano-utils@3.1.0(postcss@8.4.33): + css-declaration-sorter: 6.4.1(postcss@8.4.38) + cssnano-utils: 3.1.0(postcss@8.4.38) + postcss: 8.4.38 + postcss-calc: 8.2.4(postcss@8.4.38) + postcss-colormin: 5.3.1(postcss@8.4.38) + postcss-convert-values: 5.1.3(postcss@8.4.38) + postcss-discard-comments: 5.1.2(postcss@8.4.38) + postcss-discard-duplicates: 5.1.0(postcss@8.4.38) + postcss-discard-empty: 5.1.1(postcss@8.4.38) + postcss-discard-overridden: 5.1.0(postcss@8.4.38) + postcss-merge-longhand: 5.1.7(postcss@8.4.38) + postcss-merge-rules: 5.1.4(postcss@8.4.38) + postcss-minify-font-values: 5.1.0(postcss@8.4.38) + postcss-minify-gradients: 5.1.1(postcss@8.4.38) + postcss-minify-params: 5.1.4(postcss@8.4.38) + postcss-minify-selectors: 5.2.1(postcss@8.4.38) + postcss-normalize-charset: 5.1.0(postcss@8.4.38) + postcss-normalize-display-values: 5.1.0(postcss@8.4.38) + postcss-normalize-positions: 5.1.1(postcss@8.4.38) + postcss-normalize-repeat-style: 5.1.1(postcss@8.4.38) + postcss-normalize-string: 5.1.0(postcss@8.4.38) + postcss-normalize-timing-functions: 5.1.0(postcss@8.4.38) + postcss-normalize-unicode: 5.1.1(postcss@8.4.38) + postcss-normalize-url: 5.1.0(postcss@8.4.38) + postcss-normalize-whitespace: 5.1.1(postcss@8.4.38) + postcss-ordered-values: 5.1.3(postcss@8.4.38) + postcss-reduce-initial: 5.1.2(postcss@8.4.38) + postcss-reduce-transforms: 5.1.0(postcss@8.4.38) + postcss-svgo: 5.1.0(postcss@8.4.38) + postcss-unique-selectors: 5.1.1(postcss@8.4.38) + dev: true + + /cssnano-utils@3.1.0(postcss@8.4.38): resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /cssnano@5.1.15(postcss@8.4.33): + /cssnano@5.1.15(postcss@8.4.38): resolution: {integrity: sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-preset-default: 5.2.14(postcss@8.4.33) + cssnano-preset-default: 5.2.14(postcss@8.4.38) lilconfig: 2.1.0 - postcss: 8.4.33 + postcss: 8.4.38 yaml: 1.10.2 dev: true @@ -3391,8 +3928,8 @@ packages: /csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - /cypress@13.8.1: - resolution: {integrity: sha512-Uk6ovhRbTg6FmXjeZW/TkbRM07KPtvM5gah1BIMp4Y2s+i/NMxgaLw0+PbYTOdw1+egE0FP3mWRiGcRkjjmhzA==} + /cypress@13.9.0: + resolution: {integrity: sha512-atNjmYfHsvTuCaxTxLZr9xGoHz53LLui3266WWxXJHY7+N6OdwJdg/feEa3T+buez9dmUXHT1izCOklqG82uCQ==} engines: {node: ^16.0.0 || ^18.0.0 || >=20.0.0} hasBin: true requiresBuild: true @@ -3412,7 +3949,7 @@ packages: cli-table3: 0.6.4 commander: 6.2.1 common-tags: 1.8.2 - dayjs: 1.11.10 + dayjs: 1.11.11 debug: 4.3.4(supports-color@8.1.1) enquirer: 2.4.1 eventemitter2: 6.4.7 @@ -3434,7 +3971,7 @@ packages: process: 0.11.10 proxy-from-env: 1.0.0 request-progress: 3.0.0 - semver: 7.5.4 + semver: 7.6.2 supports-color: 8.1.1 tmp: 0.2.3 untildify: 4.0.0 @@ -3456,8 +3993,8 @@ packages: whatwg-url: 14.0.0 dev: true - /dayjs@1.11.10: - resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} + /dayjs@1.11.11: + resolution: {integrity: sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==} dev: true /de-indent@1.0.2: @@ -3547,6 +4084,15 @@ packages: has-property-descriptors: 1.0.1 dev: true + /define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + dependencies: + es-define-property: 1.0.0 + es-errors: 1.3.0 + gopd: 1.0.1 + dev: true + /define-lazy-prop@2.0.0: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} engines: {node: '>=8'} @@ -3722,15 +4268,15 @@ packages: '@one-ini/wasm': 0.1.1 commander: 10.0.1 minimatch: 9.0.1 - semver: 7.5.4 + semver: 7.6.2 dev: true /ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: true - /electron-to-chromium@1.4.581: - resolution: {integrity: sha512-6uhqWBIapTJUxgPTCHH9sqdbxIMPt7oXl0VcAL1kOtlU6aECdcMncCrX5Z7sHQ/invtrC9jUQUef7+HhO8vVFw==} + /electron-to-chromium@1.4.763: + resolution: {integrity: sha512-k4J8NrtJ9QrvHLRo8Q18OncqBCB7tIUyqxRcJnlonQ0ioHKYB988GcDFF3ZePmnb8eHEopDs/wPHR/iGAFgoUQ==} dev: true /email-addresses@5.0.0: @@ -3851,6 +4397,18 @@ packages: which-typed-array: 1.1.13 dev: true + /es-define-property@1.0.0: + resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.4 + dev: true + + /es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + dev: true + /es-module-lexer@1.4.1: resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} dev: true @@ -3879,35 +4437,35 @@ packages: is-symbol: 1.0.4 dev: true - /esbuild@0.19.11: - resolution: {integrity: sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==} + /esbuild@0.20.2: + resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/aix-ppc64': 0.19.11 - '@esbuild/android-arm': 0.19.11 - '@esbuild/android-arm64': 0.19.11 - '@esbuild/android-x64': 0.19.11 - '@esbuild/darwin-arm64': 0.19.11 - '@esbuild/darwin-x64': 0.19.11 - '@esbuild/freebsd-arm64': 0.19.11 - '@esbuild/freebsd-x64': 0.19.11 - '@esbuild/linux-arm': 0.19.11 - '@esbuild/linux-arm64': 0.19.11 - '@esbuild/linux-ia32': 0.19.11 - '@esbuild/linux-loong64': 0.19.11 - '@esbuild/linux-mips64el': 0.19.11 - '@esbuild/linux-ppc64': 0.19.11 - '@esbuild/linux-riscv64': 0.19.11 - '@esbuild/linux-s390x': 0.19.11 - '@esbuild/linux-x64': 0.19.11 - '@esbuild/netbsd-x64': 0.19.11 - '@esbuild/openbsd-x64': 0.19.11 - '@esbuild/sunos-x64': 0.19.11 - '@esbuild/win32-arm64': 0.19.11 - '@esbuild/win32-ia32': 0.19.11 - '@esbuild/win32-x64': 0.19.11 + '@esbuild/aix-ppc64': 0.20.2 + '@esbuild/android-arm': 0.20.2 + '@esbuild/android-arm64': 0.20.2 + '@esbuild/android-x64': 0.20.2 + '@esbuild/darwin-arm64': 0.20.2 + '@esbuild/darwin-x64': 0.20.2 + '@esbuild/freebsd-arm64': 0.20.2 + '@esbuild/freebsd-x64': 0.20.2 + '@esbuild/linux-arm': 0.20.2 + '@esbuild/linux-arm64': 0.20.2 + '@esbuild/linux-ia32': 0.20.2 + '@esbuild/linux-loong64': 0.20.2 + '@esbuild/linux-mips64el': 0.20.2 + '@esbuild/linux-ppc64': 0.20.2 + '@esbuild/linux-riscv64': 0.20.2 + '@esbuild/linux-s390x': 0.20.2 + '@esbuild/linux-x64': 0.20.2 + '@esbuild/netbsd-x64': 0.20.2 + '@esbuild/openbsd-x64': 0.20.2 + '@esbuild/sunos-x64': 0.20.2 + '@esbuild/win32-arm64': 0.20.2 + '@esbuild/win32-ia32': 0.20.2 + '@esbuild/win32-x64': 0.20.2 dev: true /escalade@3.1.1: @@ -3915,6 +4473,11 @@ packages: engines: {node: '>=6'} dev: true + /escalade@3.1.2: + resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} + engines: {node: '>=6'} + dev: true + /escape-html@1.0.3: resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} dev: true @@ -3924,6 +4487,11 @@ packages: engines: {node: '>=0.8.0'} dev: true + /escape-string-regexp@2.0.0: + resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} + engines: {node: '>=8'} + dev: true + /escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} @@ -3974,7 +4542,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.4.5) debug: 3.2.7(supports-color@8.1.1) eslint: 8.56.0 eslint-import-resolver-node: 0.3.9 @@ -3992,7 +4560,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.18.1(eslint@8.56.0)(typescript@5.4.5) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.2 @@ -4017,7 +4585,7 @@ packages: - supports-color dev: true - /eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@8.56.0)(prettier@3.1.1): + /eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@8.56.0)(prettier@3.2.5): resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -4033,7 +4601,7 @@ packages: dependencies: eslint: 8.56.0 eslint-config-prettier: 9.1.0(eslint@8.56.0) - prettier: 3.1.1 + prettier: 3.2.5 prettier-linter-helpers: 1.0.0 synckit: 0.8.8 dev: true @@ -4283,7 +4851,7 @@ packages: human-signals: 5.0.0 is-stream: 3.0.0 merge-stream: 2.0.0 - npm-run-path: 5.2.0 + npm-run-path: 5.3.0 onetime: 6.0.0 signal-exit: 4.1.0 strip-final-newline: 3.0.0 @@ -4296,6 +4864,17 @@ packages: pify: 2.3.0 dev: true + /expect@29.7.0: + resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/expect-utils': 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + dev: true + /express@4.18.2: resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==} engines: {node: '>= 0.10.0'} @@ -4434,7 +5013,7 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} dependencies: - flat-cache: 4.0.0 + flat-cache: 4.0.1 dev: true /filename-reserved-regex@2.0.0: @@ -4507,13 +5086,12 @@ packages: rimraf: 3.0.2 dev: true - /flat-cache@4.0.0: - resolution: {integrity: sha512-EryKbCE/wxpxKniQlyas6PY1I9vwtF3uCBweX+N8KYTCn3Y12RTGtQAJ/bd5pl7kxUAc8v/R3Ake/N17OZiFqA==} + /flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} dependencies: - flatted: 3.2.9 + flatted: 3.3.1 keyv: 4.5.4 - rimraf: 5.0.5 dev: true /flat@5.0.2: @@ -4525,6 +5103,10 @@ packages: resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} dev: true + /flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + dev: true + /follow-redirects@1.15.4(debug@4.3.4): resolution: {integrity: sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==} engines: {node: '>=4.0'} @@ -4687,6 +5269,17 @@ packages: hasown: 2.0.0 dev: true + /get-intrinsic@1.2.4: + resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} + engines: {node: '>= 0.4'} + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + has-proto: 1.0.3 + has-symbols: 1.0.3 + hasown: 2.0.2 + dev: true + /get-stream@3.0.0: resolution: {integrity: sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==} engines: {node: '>=4'} @@ -4768,16 +5361,16 @@ packages: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} dev: true - /glob@10.3.10: - resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} + /glob@10.3.14: + resolution: {integrity: sha512-4fkAqu93xe9Mk7le9v0y3VrPDqLKHarNi2s4Pv7f2yOvfhWfhc7hRPHC/JyqMqb8B/Dt/eGS4n7ykwf3fOsl8g==} engines: {node: '>=16 || 14 >=14.17'} hasBin: true dependencies: foreground-child: 3.1.1 jackspeak: 2.3.6 - minimatch: 9.0.3 - minipass: 7.0.4 - path-scurry: 1.10.1 + minimatch: 9.0.4 + minipass: 7.1.1 + path-scurry: 1.11.0 dev: true /glob@7.2.3: @@ -4911,11 +5504,22 @@ packages: get-intrinsic: 1.2.2 dev: true + /has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + dependencies: + es-define-property: 1.0.0 + dev: true + /has-proto@1.0.1: resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} engines: {node: '>= 0.4'} dev: true + /has-proto@1.0.3: + resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} + engines: {node: '>= 0.4'} + dev: true + /has-symbols@1.0.3: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} engines: {node: '>= 0.4'} @@ -4943,6 +5547,13 @@ packages: function-bind: 1.1.2 dev: true + /hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + dependencies: + function-bind: 1.1.2 + dev: true + /he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true @@ -5061,11 +5672,11 @@ packages: resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} dev: true - /http-proxy-agent@7.0.0: - resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==} + /http-proxy-agent@7.0.2: + resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} engines: {node: '>= 14'} dependencies: - agent-base: 7.1.0 + agent-base: 7.1.1 debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -5110,11 +5721,11 @@ packages: sshpk: 1.18.0 dev: true - /https-proxy-agent@7.0.2: - resolution: {integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==} + /https-proxy-agent@7.0.4: + resolution: {integrity: sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==} engines: {node: '>= 14'} dependencies: - agent-base: 7.1.0 + agent-base: 7.1.1 debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -5135,9 +5746,9 @@ packages: engines: {node: '>=16.17.0'} dev: true - /husky@8.0.3: - resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==} - engines: {node: '>=14'} + /husky@9.0.11: + resolution: {integrity: sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==} + engines: {node: '>=18'} hasBin: true dev: true @@ -5159,13 +5770,13 @@ packages: resolution: {integrity: sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==} dev: true - /icss-utils@5.1.0(postcss@8.4.33): + /icss-utils@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true /ieee754@1.2.1: @@ -5177,8 +5788,21 @@ packages: engines: {node: '>= 4'} dev: true - /immutable@4.3.4: - resolution: {integrity: sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==} + /ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} + engines: {node: '>= 4'} + dev: true + + /image-size@1.1.1: + resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==} + engines: {node: '>=16.x'} + hasBin: true + dependencies: + queue: 6.0.2 + dev: true + + /immutable@4.3.5: + resolution: {integrity: sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==} dev: true /import-cwd@3.0.0: @@ -5551,11 +6175,63 @@ packages: resolution: {integrity: sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==} dev: true + /jest-diff@29.7.0: + resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + chalk: 4.1.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + dev: true + + /jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dev: true + + /jest-matcher-utils@29.7.0: + resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + chalk: 4.1.2 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + dev: true + + /jest-message-util@29.7.0: + resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@babel/code-frame': 7.23.5 + '@jest/types': 29.6.3 + '@types/stack-utils': 2.0.3 + chalk: 4.1.2 + graceful-fs: 4.2.11 + micromatch: 4.0.5 + pretty-format: 29.7.0 + slash: 3.0.0 + stack-utils: 2.0.6 + dev: true + + /jest-util@29.7.0: + resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.6.3 + '@types/node': 20.12.11 + chalk: 4.1.2 + ci-info: 3.9.0 + graceful-fs: 4.2.11 + picomatch: 2.3.1 + dev: true + /jest-worker@27.5.1: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -5564,7 +6240,7 @@ packages: resolution: {integrity: sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@types/node': 20.11.0 + '@types/node': 20.12.11 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -5583,15 +6259,21 @@ packages: '@sideway/pinpoint': 2.0.0 dev: true - /js-beautify@1.14.11: - resolution: {integrity: sha512-rPogWqAfoYh1Ryqqh2agUpVfbxAhbjuN1SmU86dskQUKouRiggUTCO4+2ym9UPXllc2WAp0J+T5qxn7Um3lCdw==} + /js-beautify@1.15.1: + resolution: {integrity: sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==} engines: {node: '>=14'} hasBin: true dependencies: config-chain: 1.1.13 editorconfig: 1.0.4 - glob: 10.3.10 - nopt: 7.2.0 + glob: 10.3.14 + js-cookie: 3.0.5 + nopt: 7.2.1 + dev: true + + /js-cookie@3.0.5: + resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} + engines: {node: '>=14'} dev: true /js-message@1.0.7: @@ -5603,8 +6285,8 @@ packages: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: true - /js-tokens@8.0.2: - resolution: {integrity: sha512-Olnt+V7xYdvGze9YTbGFZIfQXuGV4R3nQwwl8BrtgaPE/wq8UFpUHWuTNc05saowhSr1ZO6tx+V6RjE9D5YQog==} + /js-tokens@9.0.0: + resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==} dev: true /js-yaml@4.1.0: @@ -5618,8 +6300,8 @@ packages: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} dev: true - /jsdom@23.2.0: - resolution: {integrity: sha512-L88oL7D/8ufIES+Zjz7v0aes+oBMh2Xnh3ygWvL0OaICOomKEPKuPnIfBJekiXr+BHbbMjrWn/xqrDQuxFTeyA==} + /jsdom@24.0.0: + resolution: {integrity: sha512-UDS2NayCvmXSXVP6mpTj+73JnNQadZlr9N68189xib2tx5Mls7swlTNao26IoHv46BZJFvXygyRtyXd1feAk1A==} engines: {node: '>=18'} peerDependencies: canvas: ^2.11.2 @@ -5627,26 +6309,26 @@ packages: canvas: optional: true dependencies: - '@asamuzakjp/dom-selector': 2.0.1 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.0 - https-proxy-agent: 7.0.2 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.4 is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.9 parse5: 7.1.2 rrweb-cssom: 0.6.0 saxes: 6.0.0 symbol-tree: 3.2.4 - tough-cookie: 4.1.3 + 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.16.0 + ws: 8.17.0 xml-name-validator: 5.0.0 transitivePeerDependencies: - bufferutil @@ -5699,10 +6381,6 @@ packages: hasBin: true dev: true - /jsonc-parser@3.2.0: - resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} - dev: true - /jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} optionalDependencies: @@ -5743,8 +6421,8 @@ packages: engines: {node: '>= 8'} dev: true - /known-css-properties@0.29.0: - resolution: {integrity: sha512-Ne7wqW7/9Cz54PDt4I3tcV+hAyat8ypyOGzYRJQfdxnnjeWsTxt1cy8pjvvKeI5kfXuyvULyeeAvwvvtAX3ayQ==} + /known-css-properties@0.30.0: + resolution: {integrity: sha512-VSWXYUnsPu9+WYKkfmJyLKtIvaRJi1kXUqVmBACORXZQxT5oZDsoZ2vQP+bQFDnWtpI/4eq3MLoRMjI2fnLzTQ==} dev: true /kolorist@1.8.0: @@ -5791,8 +6469,8 @@ packages: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: true - /lint-staged@15.2.0: - resolution: {integrity: sha512-TFZzUEV00f+2YLaVPWBWGAMq7So6yQx+GG8YRMDeOEIf95Zn5RyiLMsEiX4KTNl9vq/w+NqRJkLA1kPIo15ufQ==} + /lint-staged@15.2.2: + resolution: {integrity: sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==} engines: {node: '>=18.12.0'} hasBin: true dependencies: @@ -5801,7 +6479,7 @@ packages: debug: 4.3.4(supports-color@8.1.1) execa: 8.0.1 lilconfig: 3.0.0 - listr2: 8.0.0 + listr2: 8.0.1 micromatch: 4.0.5 pidtree: 0.6.0 string-argv: 0.3.2 @@ -5824,21 +6502,21 @@ packages: enquirer: 2.4.1 log-update: 4.0.0 p-map: 4.0.0 - rfdc: 1.3.0 + rfdc: 1.3.1 rxjs: 7.8.1 through: 2.3.8 wrap-ansi: 7.0.0 dev: true - /listr2@8.0.0: - resolution: {integrity: sha512-u8cusxAcyqAiQ2RhYvV7kRKNLgUvtObIbhOX2NCXqvp1UU32xIg5CT22ykS2TPKJXZWJwtK3IKLiqAGlGNE+Zg==} + /listr2@8.0.1: + resolution: {integrity: sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==} engines: {node: '>=18.0.0'} dependencies: cli-truncate: 4.0.0 colorette: 2.0.20 eventemitter3: 5.0.1 log-update: 6.0.0 - rfdc: 1.3.0 + rfdc: 1.3.1 wrap-ansi: 9.0.0 dev: true @@ -5874,8 +6552,8 @@ packages: resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} engines: {node: '>=14'} dependencies: - mlly: 1.4.2 - pkg-types: 1.0.3 + mlly: 1.7.0 + pkg-types: 1.1.1 dev: true /locate-path@5.0.0: @@ -5991,7 +6669,7 @@ packages: resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==} engines: {node: '>=18'} dependencies: - ansi-escapes: 6.2.0 + ansi-escapes: 6.2.1 cli-cursor: 4.0.0 slice-ansi: 7.1.0 strip-ansi: 7.1.0 @@ -6010,8 +6688,8 @@ packages: tslib: 2.6.2 dev: true - /lru-cache@10.1.0: - resolution: {integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==} + /lru-cache@10.2.2: + resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} engines: {node: 14 || >=16.14} dev: true @@ -6035,11 +6713,17 @@ packages: yallist: 4.0.0 dev: true + /magic-string@0.30.10: + resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + /magic-string@0.30.5: resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 + dev: true /make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} @@ -6072,8 +6756,8 @@ packages: fs-monkey: 1.0.5 dev: true - /meow@13.1.0: - resolution: {integrity: sha512-o5R/R3Tzxq0PJ3v3qcQJtSvSE9nKOLSAaDuuoMzDVuGTwHdccMWcYomh9Xolng2tjT6O/Y83d+0coVGof6tqmA==} + /meow@13.2.0: + resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==} engines: {node: '>=18'} dev: true @@ -6156,6 +6840,12 @@ packages: resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} dev: true + /minimatch@3.0.8: + resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==} + dependencies: + brace-expansion: 1.1.11 + dev: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -6183,6 +6873,13 @@ packages: brace-expansion: 2.0.1 dev: true + /minimatch@9.0.4: + resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} + engines: {node: '>=16 || 14 >=14.17'} + dependencies: + brace-expansion: 2.0.1 + dev: true + /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} dev: true @@ -6194,8 +6891,8 @@ packages: yallist: 4.0.0 dev: true - /minipass@7.0.4: - resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} + /minipass@7.1.1: + resolution: {integrity: sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==} engines: {node: '>=16 || 14 >=14.17'} dev: true @@ -6206,13 +6903,13 @@ packages: minimist: 1.2.8 dev: true - /mlly@1.4.2: - resolution: {integrity: sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==} + /mlly@1.7.0: + resolution: {integrity: sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==} dependencies: acorn: 8.11.3 pathe: 1.1.2 - pkg-types: 1.0.3 - ufo: 1.3.2 + pkg-types: 1.1.1 + ufo: 1.5.3 dev: true /module-alias@2.2.3: @@ -6240,6 +6937,10 @@ packages: resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==} dev: true + /muggle-string@0.4.1: + resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} + dev: true + /multicast-dns@7.2.5: resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==} hasBin: true @@ -6302,12 +7003,12 @@ packages: engines: {node: '>= 6.13.0'} dev: true - /node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + /node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} dev: true - /nopt@7.2.0: - resolution: {integrity: sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==} + /nopt@7.2.1: + resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} hasBin: true dependencies: @@ -6357,8 +7058,8 @@ packages: path-key: 3.1.1 dev: true - /npm-run-path@5.2.0: - resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} + /npm-run-path@5.3.0: + resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: path-key: 4.0.0 @@ -6370,6 +7071,10 @@ packages: boolbase: 1.0.0 dev: true + /nwsapi@2.2.9: + resolution: {integrity: sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==} + dev: true + /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -6584,6 +7289,10 @@ packages: engines: {node: '>=6'} dev: true + /pako@2.1.0: + resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} + dev: true + /param-case@3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} dependencies: @@ -6673,18 +7382,22 @@ packages: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true - /path-scurry@1.10.1: - resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} + /path-scurry@1.11.0: + resolution: {integrity: sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==} engines: {node: '>=16 || 14 >=14.17'} dependencies: - lru-cache: 10.1.0 - minipass: 7.0.4 + lru-cache: 10.2.2 + minipass: 7.1.1 dev: true /path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} dev: true + /path-to-regexp@6.2.2: + resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==} + dev: true + /path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -6734,7 +7447,7 @@ packages: engines: {node: '>=10'} dev: true - /pinia@2.1.7(typescript@5.3.3)(vue@3.4.10): + /pinia@2.1.7(typescript@5.4.5)(vue@3.4.27): resolution: {integrity: sha512-+C2AHFtcFqjPih0zpYuvof37SFxMQ7OEG2zV9jRI12i9BOy3YQVAHwdKtyyc8pDcDyIc33WCIsZaCFWU7WWxGQ==} peerDependencies: '@vue/composition-api': ^1.4.0 @@ -6747,9 +7460,9 @@ packages: optional: true dependencies: '@vue/devtools-api': 6.5.1 - typescript: 5.3.3 - vue: 3.4.10(typescript@5.3.3) - vue-demi: 0.14.6(vue@3.4.10) + typescript: 5.4.5 + vue: 3.4.27(typescript@5.4.5) + vue-demi: 0.14.6(vue@3.4.27) dev: true /pinkie-promise@2.0.1: @@ -6771,11 +7484,11 @@ packages: find-up: 4.1.0 dev: true - /pkg-types@1.0.3: - resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} + /pkg-types@1.1.1: + resolution: {integrity: sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==} dependencies: - jsonc-parser: 3.2.0 - mlly: 1.4.2 + confbox: 0.1.7 + mlly: 1.7.0 pathe: 1.1.2 dev: true @@ -6790,17 +7503,17 @@ packages: - supports-color dev: true - /postcss-calc@8.2.4(postcss@8.4.33): + /postcss-calc@8.2.4(postcss@8.4.38): resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} peerDependencies: postcss: ^8.2.2 dependencies: - postcss: 8.4.33 - postcss-selector-parser: 6.0.15 + postcss: 8.4.38 + postcss-selector-parser: 6.0.16 postcss-value-parser: 4.2.0 dev: true - /postcss-colormin@5.3.1(postcss@8.4.33): + /postcss-colormin@5.3.1(postcss@8.4.38): resolution: {integrity: sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -6809,68 +7522,68 @@ packages: browserslist: 4.22.1 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-convert-values@5.1.3(postcss@8.4.33): + /postcss-convert-values@5.1.3(postcss@8.4.38): resolution: {integrity: sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.22.1 - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-discard-comments@5.1.2(postcss@8.4.33): + /postcss-discard-comments@5.1.2(postcss@8.4.38): resolution: {integrity: sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-discard-duplicates@5.1.0(postcss@8.4.33): + /postcss-discard-duplicates@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-discard-empty@5.1.1(postcss@8.4.33): + /postcss-discard-empty@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-discard-overridden@5.1.0(postcss@8.4.33): + /postcss-discard-overridden@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-html@1.5.0: - resolution: {integrity: sha512-kCMRWJRHKicpA166kc2lAVUGxDZL324bkj/pVOb6RhjB0Z5Krl7mN0AsVkBhVIRZZirY0lyQXG38HCVaoKVNoA==} + /postcss-html@1.7.0: + resolution: {integrity: sha512-MfcMpSUIaR/nNgeVS8AyvyDugXlADjN9AcV7e5rDfrF1wduIAGSkL4q2+wgrZgA3sHVAHLDO9FuauHhZYW2nBw==} engines: {node: ^12 || >=14} dependencies: htmlparser2: 8.0.2 - js-tokens: 8.0.2 - postcss: 8.4.33 - postcss-safe-parser: 6.0.0(postcss@8.4.33) + js-tokens: 9.0.0 + postcss: 8.4.38 + postcss-safe-parser: 6.0.0(postcss@8.4.38) dev: true - /postcss-load-config@3.1.4(postcss@8.4.33): + /postcss-load-config@3.1.4(postcss@8.4.38): resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} engines: {node: '>= 10'} peerDependencies: @@ -6883,11 +7596,11 @@ packages: optional: true dependencies: lilconfig: 2.1.0 - postcss: 8.4.33 + postcss: 8.4.38 yaml: 1.10.2 dev: true - /postcss-loader@6.2.1(postcss@8.4.33)(webpack@5.89.0): + /postcss-loader@6.2.1(postcss@8.4.38)(webpack@5.89.0): resolution: {integrity: sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==} engines: {node: '>= 12.13.0'} peerDependencies: @@ -6896,8 +7609,8 @@ packages: dependencies: cosmiconfig: 7.1.0 klona: 2.0.6 - postcss: 8.4.33 - semver: 7.5.4 + postcss: 8.4.38 + semver: 7.6.2 webpack: 5.89.0 dev: true @@ -6905,18 +7618,18 @@ packages: resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==} dev: true - /postcss-merge-longhand@5.1.7(postcss@8.4.33): + /postcss-merge-longhand@5.1.7(postcss@8.4.38): resolution: {integrity: sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 - stylehacks: 5.1.1(postcss@8.4.33) + stylehacks: 5.1.1(postcss@8.4.38) dev: true - /postcss-merge-rules@5.1.4(postcss@8.4.33): + /postcss-merge-rules@5.1.4(postcss@8.4.38): resolution: {integrity: sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -6924,97 +7637,97 @@ packages: dependencies: browserslist: 4.22.1 caniuse-api: 3.0.0 - cssnano-utils: 3.1.0(postcss@8.4.33) - postcss: 8.4.33 - postcss-selector-parser: 6.0.15 + cssnano-utils: 3.1.0(postcss@8.4.38) + postcss: 8.4.38 + postcss-selector-parser: 6.0.16 dev: true - /postcss-minify-font-values@5.1.0(postcss@8.4.33): + /postcss-minify-font-values@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-minify-gradients@5.1.1(postcss@8.4.33): + /postcss-minify-gradients@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: colord: 2.9.3 - cssnano-utils: 3.1.0(postcss@8.4.33) - postcss: 8.4.33 + cssnano-utils: 3.1.0(postcss@8.4.38) + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-minify-params@5.1.4(postcss@8.4.33): + /postcss-minify-params@5.1.4(postcss@8.4.38): resolution: {integrity: sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.22.1 - cssnano-utils: 3.1.0(postcss@8.4.33) - postcss: 8.4.33 + cssnano-utils: 3.1.0(postcss@8.4.38) + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-minify-selectors@5.2.1(postcss@8.4.33): + /postcss-minify-selectors@5.2.1(postcss@8.4.38): resolution: {integrity: sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 - postcss-selector-parser: 6.0.15 + postcss: 8.4.38 + postcss-selector-parser: 6.0.16 dev: true - /postcss-modules-extract-imports@3.0.0(postcss@8.4.33): + /postcss-modules-extract-imports@3.0.0(postcss@8.4.38): resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-modules-local-by-default@4.0.3(postcss@8.4.33): + /postcss-modules-local-by-default@4.0.3(postcss@8.4.38): resolution: {integrity: sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.33) - postcss: 8.4.33 + icss-utils: 5.1.0(postcss@8.4.38) + postcss: 8.4.38 postcss-selector-parser: 6.0.13 postcss-value-parser: 4.2.0 dev: true - /postcss-modules-scope@3.0.0(postcss@8.4.33): + /postcss-modules-scope@3.0.0(postcss@8.4.38): resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-selector-parser: 6.0.13 dev: true - /postcss-modules-values@4.0.0(postcss@8.4.33): + /postcss-modules-values@4.0.0(postcss@8.4.38): resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 dependencies: - icss-utils: 5.1.0(postcss@8.4.33) - postcss: 8.4.33 + icss-utils: 5.1.0(postcss@8.4.38) + postcss: 8.4.38 dev: true - /postcss-modules@4.3.1(postcss@8.4.33): + /postcss-modules@4.3.1(postcss@8.4.38): resolution: {integrity: sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==} peerDependencies: postcss: ^8.0.0 @@ -7022,117 +7735,117 @@ packages: generic-names: 4.0.0 icss-replace-symbols: 1.1.0 lodash.camelcase: 4.3.0 - postcss: 8.4.33 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.33) - postcss-modules-local-by-default: 4.0.3(postcss@8.4.33) - postcss-modules-scope: 3.0.0(postcss@8.4.33) - postcss-modules-values: 4.0.0(postcss@8.4.33) + postcss: 8.4.38 + postcss-modules-extract-imports: 3.0.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.3(postcss@8.4.38) + postcss-modules-scope: 3.0.0(postcss@8.4.38) + postcss-modules-values: 4.0.0(postcss@8.4.38) string-hash: 1.1.3 dev: true - /postcss-normalize-charset@5.1.0(postcss@8.4.33): + /postcss-normalize-charset@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-normalize-display-values@5.1.0(postcss@8.4.33): + /postcss-normalize-display-values@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-positions@5.1.1(postcss@8.4.33): + /postcss-normalize-positions@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-repeat-style@5.1.1(postcss@8.4.33): + /postcss-normalize-repeat-style@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-string@5.1.0(postcss@8.4.33): + /postcss-normalize-string@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-timing-functions@5.1.0(postcss@8.4.33): + /postcss-normalize-timing-functions@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-unicode@5.1.1(postcss@8.4.33): + /postcss-normalize-unicode@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.22.1 - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-url@5.1.0(postcss@8.4.33): + /postcss-normalize-url@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: normalize-url: 6.1.0 - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-whitespace@5.1.1(postcss@8.4.33): + /postcss-normalize-whitespace@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-ordered-values@5.1.3(postcss@8.4.33): + /postcss-ordered-values@5.1.3(postcss@8.4.38): resolution: {integrity: sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0(postcss@8.4.33) - postcss: 8.4.33 + cssnano-utils: 3.1.0(postcss@8.4.38) + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true - /postcss-reduce-initial@5.1.2(postcss@8.4.33): + /postcss-reduce-initial@5.1.2(postcss@8.4.38): resolution: {integrity: sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -7140,16 +7853,16 @@ packages: dependencies: browserslist: 4.22.1 caniuse-api: 3.0.0 - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-reduce-transforms@5.1.0(postcss@8.4.33): + /postcss-reduce-transforms@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 dev: true @@ -7157,31 +7870,31 @@ packages: resolution: {integrity: sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==} dev: true - /postcss-safe-parser@6.0.0(postcss@8.4.33): + /postcss-safe-parser@6.0.0(postcss@8.4.38): resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.3.3 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-safe-parser@7.0.0(postcss@8.4.33): + /postcss-safe-parser@7.0.0(postcss@8.4.38): resolution: {integrity: sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg==} engines: {node: '>=18.0'} peerDependencies: postcss: ^8.4.31 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-scss@4.0.9(postcss@8.4.33): + /postcss-scss@4.0.9(postcss@8.4.38): resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.4.29 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true /postcss-selector-parser@6.0.13: @@ -7200,33 +7913,41 @@ packages: util-deprecate: 1.0.2 dev: true - /postcss-sorting@8.0.2(postcss@8.4.33): + /postcss-selector-parser@6.0.16: + resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==} + engines: {node: '>=4'} + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + dev: true + + /postcss-sorting@8.0.2(postcss@8.4.38): resolution: {integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==} peerDependencies: postcss: ^8.4.20 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 dev: true - /postcss-svgo@5.1.0(postcss@8.4.33): + /postcss-svgo@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 + postcss: 8.4.38 postcss-value-parser: 4.2.0 svgo: 2.8.0 dev: true - /postcss-unique-selectors@5.1.1(postcss@8.4.33): + /postcss-unique-selectors@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.33 - postcss-selector-parser: 6.0.15 + postcss: 8.4.38 + postcss-selector-parser: 6.0.16 dev: true /postcss-value-parser@4.2.0: @@ -7241,13 +7962,13 @@ packages: source-map: 0.6.1 dev: true - /postcss@8.4.33: - resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} + /postcss@8.4.38: + resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.0.0 - source-map-js: 1.0.2 + source-map-js: 1.2.0 /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} @@ -7269,8 +7990,8 @@ packages: dev: true optional: true - /prettier@3.1.1: - resolution: {integrity: sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==} + /prettier@3.2.5: + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} engines: {node: '>=14'} hasBin: true dev: true @@ -7367,7 +8088,7 @@ packages: resolution: {integrity: sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==} engines: {node: '>=0.6'} dependencies: - side-channel: 1.0.4 + side-channel: 1.0.6 dev: true /qs@6.11.0: @@ -7385,6 +8106,12 @@ packages: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} dev: true + /queue@6.0.2: + resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} + dependencies: + inherits: 2.0.4 + dev: true + /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: @@ -7561,8 +8288,8 @@ packages: engines: {iojs: '>=1.0.0', node: '>=0.10.0'} dev: true - /rfdc@1.3.0: - resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} + /rfdc@1.3.1: + resolution: {integrity: sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==} dev: true /rimraf@3.0.2: @@ -7572,15 +8299,7 @@ packages: glob: 7.2.3 dev: true - /rimraf@5.0.5: - resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} - engines: {node: '>=14'} - hasBin: true - dependencies: - glob: 10.3.10 - dev: true - - /rollup-plugin-postcss@4.0.2(postcss@8.4.33): + /rollup-plugin-postcss@4.0.2(postcss@8.4.38): resolution: {integrity: sha512-05EaY6zvZdmvPUDi3uCcAQoESDcYnv8ogJJQRp6V5kZ6J6P7uAVJlrTZcaaA20wTH527YTnKfkAoPxWI/jPp4w==} engines: {node: '>=10'} peerDependencies: @@ -7588,13 +8307,13 @@ packages: dependencies: chalk: 4.1.2 concat-with-sourcemaps: 1.1.0 - cssnano: 5.1.15(postcss@8.4.33) + cssnano: 5.1.15(postcss@8.4.38) import-cwd: 3.0.0 p-queue: 6.6.2 pify: 5.0.0 - postcss: 8.4.33 - postcss-load-config: 3.1.4(postcss@8.4.33) - postcss-modules: 4.3.1(postcss@8.4.33) + postcss: 8.4.38 + postcss-load-config: 3.1.4(postcss@8.4.38) + postcss-modules: 4.3.1(postcss@8.4.38) promise.series: 0.2.0 resolve: 1.22.8 rollup-pluginutils: 2.8.2 @@ -7610,7 +8329,7 @@ packages: rollup-pluginutils: 2.8.2 dev: true - /rollup-plugin-typescript2@0.36.0(rollup@4.9.4)(typescript@5.3.3): + /rollup-plugin-typescript2@0.36.0(rollup@4.17.2)(typescript@5.4.5): resolution: {integrity: sha512-NB2CSQDxSe9+Oe2ahZbf+B4bh7pHwjV5L+RSYpCu7Q5ROuN94F9b6ioWwKfz3ueL3KTtmX4o2MUH2cgHDIEUsw==} peerDependencies: rollup: '>=1.26.3' @@ -7619,10 +8338,10 @@ packages: '@rollup/pluginutils': 4.2.1 find-cache-dir: 3.3.2 fs-extra: 10.1.0 - rollup: 4.9.4 + rollup: 4.17.2 semver: 7.5.4 tslib: 2.6.2 - typescript: 5.3.3 + typescript: 5.4.5 dev: true /rollup-pluginutils@2.8.2: @@ -7639,26 +8358,29 @@ packages: fsevents: 2.3.3 dev: true - /rollup@4.9.4: - resolution: {integrity: sha512-2ztU7pY/lrQyXSCnnoU4ICjT/tCG9cdH3/G25ERqE3Lst6vl2BCM5hL2Nw+sslAvAf+ccKsAq1SkKQALyqhR7g==} + /rollup@4.17.2: + resolution: {integrity: sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: '@types/estree': 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.9.4 - '@rollup/rollup-android-arm64': 4.9.4 - '@rollup/rollup-darwin-arm64': 4.9.4 - '@rollup/rollup-darwin-x64': 4.9.4 - '@rollup/rollup-linux-arm-gnueabihf': 4.9.4 - '@rollup/rollup-linux-arm64-gnu': 4.9.4 - '@rollup/rollup-linux-arm64-musl': 4.9.4 - '@rollup/rollup-linux-riscv64-gnu': 4.9.4 - '@rollup/rollup-linux-x64-gnu': 4.9.4 - '@rollup/rollup-linux-x64-musl': 4.9.4 - '@rollup/rollup-win32-arm64-msvc': 4.9.4 - '@rollup/rollup-win32-ia32-msvc': 4.9.4 - '@rollup/rollup-win32-x64-msvc': 4.9.4 + '@rollup/rollup-android-arm-eabi': 4.17.2 + '@rollup/rollup-android-arm64': 4.17.2 + '@rollup/rollup-darwin-arm64': 4.17.2 + '@rollup/rollup-darwin-x64': 4.17.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.17.2 + '@rollup/rollup-linux-arm-musleabihf': 4.17.2 + '@rollup/rollup-linux-arm64-gnu': 4.17.2 + '@rollup/rollup-linux-arm64-musl': 4.17.2 + '@rollup/rollup-linux-powerpc64le-gnu': 4.17.2 + '@rollup/rollup-linux-riscv64-gnu': 4.17.2 + '@rollup/rollup-linux-s390x-gnu': 4.17.2 + '@rollup/rollup-linux-x64-gnu': 4.17.2 + '@rollup/rollup-linux-x64-musl': 4.17.2 + '@rollup/rollup-win32-arm64-msvc': 4.17.2 + '@rollup/rollup-win32-ia32-msvc': 4.17.2 + '@rollup/rollup-win32-x64-msvc': 4.17.2 fsevents: 2.3.3 dev: true @@ -7713,14 +8435,14 @@ packages: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: true - /sass@1.69.7: - resolution: {integrity: sha512-rzj2soDeZ8wtE2egyLXgOOHQvaC2iosZrkF6v3EUG+tBwEvhqUCzm0VP3k9gHF9LXbSrRhT5SksoI56Iw8NPnQ==} + /sass@1.77.1: + resolution: {integrity: sha512-OMEyfirt9XEfyvocduUIOlUSkWOXS/LAt6oblR/ISXCTukyavjex+zQNm51pPCOiFKY1QpWvEH1EeCkgyV3I6w==} engines: {node: '>=14.0.0'} hasBin: true dependencies: - chokidar: 3.5.3 - immutable: 4.3.4 - source-map-js: 1.0.2 + chokidar: 3.6.0 + immutable: 4.3.5 + source-map-js: 1.2.0 dev: true /saxes@6.0.0: @@ -7749,8 +8471,8 @@ packages: ajv-keywords: 5.1.0(ajv@8.12.0) dev: true - /scule@1.2.0: - resolution: {integrity: sha512-CRCmi5zHQnSoeCik9565PONMg0kfkvYmcSqrbOJY4txFfy1wvVULV4FDaiXhUblUgahdqz3F2NwHZ8i4eBTwUw==} + /scule@1.3.0: + resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==} dev: true /select-hose@2.0.0: @@ -7783,6 +8505,12 @@ packages: lru-cache: 6.0.0 dev: true + /semver@7.6.2: + resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} + engines: {node: '>=10'} + hasBin: true + dev: true + /send@0.18.0: resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} engines: {node: '>= 0.8.0'} @@ -7847,6 +8575,18 @@ packages: has-property-descriptors: 1.0.1 dev: true + /set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + dependencies: + 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 + dev: true + /set-function-name@2.0.1: resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} engines: {node: '>= 0.4'} @@ -7907,6 +8647,16 @@ packages: object-inspect: 1.13.1 dev: true + /side-channel@1.0.6: + resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 + object-inspect: 1.13.1 + dev: true + /siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} dev: true @@ -7980,8 +8730,8 @@ packages: websocket-driver: 0.7.4 dev: true - /source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} + /source-map-js@1.2.0: + resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} engines: {node: '>=0.10.0'} /source-map-support@0.5.21: @@ -8076,6 +8826,13 @@ packages: deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' dev: true + /stack-utils@2.0.6: + resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} + engines: {node: '>=10'} + dependencies: + escape-string-regexp: 2.0.0 + dev: true + /stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true @@ -8133,8 +8890,8 @@ packages: strip-ansi: 7.1.0 dev: true - /string-width@7.0.0: - resolution: {integrity: sha512-GPQHj7row82Hjo9hKZieKcHIhaAIKOJvFSIZXuCU9OASVZrMNUaZuz++SPVrBjnLsnk4k+z9f2EIypgxf2vNFw==} + /string-width@7.1.0: + resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==} engines: {node: '>=18'} dependencies: emoji-regex: 10.3.0 @@ -8236,6 +8993,12 @@ packages: acorn: 8.11.3 dev: true + /strip-literal@2.1.0: + resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==} + dependencies: + js-tokens: 9.0.0 + dev: true + /strip-outer@1.0.1: resolution: {integrity: sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==} engines: {node: '>=0.10.0'} @@ -8251,73 +9014,74 @@ packages: resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==} dev: true - /stylehacks@5.1.1(postcss@8.4.33): + /stylehacks@5.1.1(postcss@8.4.38): resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.22.1 - postcss: 8.4.33 - postcss-selector-parser: 6.0.15 + postcss: 8.4.38 + postcss-selector-parser: 6.0.16 dev: true - /stylelint-config-recommended@14.0.0(stylelint@16.1.0): + /stylelint-config-recommended@14.0.0(stylelint@16.5.0): resolution: {integrity: sha512-jSkx290CglS8StmrLp2TxAppIajzIBZKYm3IxT89Kg6fGlxbPiTiyH9PS5YUuVAFwaJLl1ikiXX0QWjI0jmgZQ==} engines: {node: '>=18.12.0'} peerDependencies: stylelint: ^16.0.0 dependencies: - stylelint: 16.1.0(typescript@5.3.3) + stylelint: 16.5.0(typescript@5.4.5) dev: true - /stylelint-config-standard@36.0.0(stylelint@16.1.0): + /stylelint-config-standard@36.0.0(stylelint@16.5.0): resolution: {integrity: sha512-3Kjyq4d62bYFp/Aq8PMKDwlgUyPU4nacXsjDLWJdNPRUgpuxALu1KnlAHIj36cdtxViVhXexZij65yM0uNIHug==} engines: {node: '>=18.12.0'} peerDependencies: stylelint: ^16.1.0 dependencies: - stylelint: 16.1.0(typescript@5.3.3) - stylelint-config-recommended: 14.0.0(stylelint@16.1.0) + stylelint: 16.5.0(typescript@5.4.5) + stylelint-config-recommended: 14.0.0(stylelint@16.5.0) dev: true - /stylelint-order@6.0.4(stylelint@16.1.0): + /stylelint-order@6.0.4(stylelint@16.5.0): resolution: {integrity: sha512-0UuKo4+s1hgQ/uAxlYU4h0o0HS4NiQDud0NAUNI0aa8FJdmYHA5ZZTFHiV5FpmE3071e9pZx5j0QpVJW5zOCUA==} peerDependencies: stylelint: ^14.0.0 || ^15.0.0 || ^16.0.1 dependencies: - postcss: 8.4.33 - postcss-sorting: 8.0.2(postcss@8.4.33) - stylelint: 16.1.0(typescript@5.3.3) + postcss: 8.4.38 + postcss-sorting: 8.0.2(postcss@8.4.38) + stylelint: 16.5.0(typescript@5.4.5) dev: true - /stylelint-scss@6.0.0(stylelint@16.1.0): - resolution: {integrity: sha512-N1xV/Ef5PNRQQt9E45unzGvBUN1KZxCI8B4FgN/pMfmyRYbZGVN4y9qWlvOMdScU17c8VVCnjIHTVn38Bb6qSA==} + /stylelint-scss@6.3.0(stylelint@16.5.0): + resolution: {integrity: sha512-8OSpiuf1xC7f8kllJsBOFAOYp/mR/C1FXMVeOFjtJPw+AFvEmC93FaklHt7MlOqU4poxuQ1TkYMyfI0V+1SxjA==} engines: {node: '>=18.12.0'} peerDependencies: stylelint: ^16.0.2 dependencies: - known-css-properties: 0.29.0 + known-css-properties: 0.30.0 postcss-media-query-parser: 0.2.3 postcss-resolve-nested-selector: 0.1.1 - postcss-selector-parser: 6.0.15 + postcss-selector-parser: 6.0.16 postcss-value-parser: 4.2.0 - stylelint: 16.1.0(typescript@5.3.3) + stylelint: 16.5.0(typescript@5.4.5) dev: true - /stylelint@16.1.0(typescript@5.3.3): - resolution: {integrity: sha512-Sh1rRV0lN1qxz/QsuuooLWsIZ/ona7NKw/fRZd6y6PyXYdD2W0EAzJ8yJcwSx4Iw/muz0CF09VZ+z4EiTAcKmg==} + /stylelint@16.5.0(typescript@5.4.5): + resolution: {integrity: sha512-IlCBtVrG+qTy3v+tZTk50W8BIomjY/RUuzdrDqdnlCYwVuzXtPbiGfxYqtyYAyOMcb+195zRsuHn6tgfPmFfbw==} engines: {node: '>=18.12.0'} hasBin: true dependencies: - '@csstools/css-parser-algorithms': 2.5.0(@csstools/css-tokenizer@2.2.3) - '@csstools/css-tokenizer': 2.2.3 - '@csstools/media-query-list-parser': 2.1.7(@csstools/css-parser-algorithms@2.5.0)(@csstools/css-tokenizer@2.2.3) - '@csstools/selector-specificity': 3.0.1(postcss-selector-parser@6.0.15) + '@csstools/css-parser-algorithms': 2.6.3(@csstools/css-tokenizer@2.3.1) + '@csstools/css-tokenizer': 2.3.1 + '@csstools/media-query-list-parser': 2.1.11(@csstools/css-parser-algorithms@2.6.3)(@csstools/css-tokenizer@2.3.1) + '@csstools/selector-specificity': 3.1.0(postcss-selector-parser@6.0.16) + '@dual-bundle/import-meta-resolve': 4.1.0 balanced-match: 2.0.0 colord: 2.9.3 - cosmiconfig: 9.0.0(typescript@5.3.3) - css-functions-list: 3.2.1 + cosmiconfig: 9.0.0(typescript@5.4.5) + css-functions-list: 3.2.2 css-tree: 2.3.1 debug: 4.3.4(supports-color@8.1.1) fast-glob: 3.3.2 @@ -8327,26 +9091,26 @@ packages: globby: 11.1.0 globjoin: 0.1.4 html-tags: 3.3.1 - ignore: 5.3.0 + ignore: 5.3.1 imurmurhash: 0.1.4 is-plain-object: 5.0.0 - known-css-properties: 0.29.0 + known-css-properties: 0.30.0 mathml-tag-names: 2.1.3 - meow: 13.1.0 + meow: 13.2.0 micromatch: 4.0.5 normalize-path: 3.0.0 picocolors: 1.0.0 - postcss: 8.4.33 + postcss: 8.4.38 postcss-resolve-nested-selector: 0.1.1 - postcss-safe-parser: 7.0.0(postcss@8.4.33) - postcss-selector-parser: 6.0.15 + postcss-safe-parser: 7.0.0(postcss@8.4.38) + postcss-selector-parser: 6.0.16 postcss-value-parser: 4.2.0 resolve-from: 5.0.0 string-width: 4.2.3 strip-ansi: 7.1.0 supports-hyperlinks: 3.0.0 svg-tags: 1.0.0 - table: 6.8.1 + table: 6.8.2 write-file-atomic: 5.0.1 transitivePeerDependencies: - supports-color @@ -8417,11 +9181,11 @@ packages: tslib: 2.6.2 dev: true - /table@6.8.1: - resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==} + /table@6.8.2: + resolution: {integrity: sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==} engines: {node: '>=10.0.0'} dependencies: - ajv: 8.12.0 + ajv: 8.13.0 lodash.truncate: 4.4.2 slice-ansi: 4.0.0 string-width: 4.2.3 @@ -8511,17 +9275,17 @@ packages: resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==} dev: true - /tinybench@2.5.1: - resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==} + /tinybench@2.8.0: + resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} dev: true - /tinypool@0.8.1: - resolution: {integrity: sha512-zBTCK0cCgRROxvs9c0CGK838sPkeokNGdQVUUwHAbynHFlmyJYj825f/oRs528HaIJ97lo0pLIlDUzwN+IorWg==} + /tinypool@0.8.4: + resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} engines: {node: '>=14.0.0'} dev: true - /tinyspy@2.2.0: - resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} + /tinyspy@2.2.1: + resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} engines: {node: '>=14.0.0'} dev: true @@ -8551,8 +9315,8 @@ packages: engines: {node: '>=6'} dev: true - /tough-cookie@4.1.3: - resolution: {integrity: sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==} + /tough-cookie@4.1.4: + resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} engines: {node: '>=6'} dependencies: psl: 1.9.0 @@ -8579,13 +9343,22 @@ packages: escape-string-regexp: 1.0.5 dev: true - /ts-api-utils@1.0.3(typescript@5.3.3): + /ts-api-utils@1.0.3(typescript@5.4.5): resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} engines: {node: '>=16.13.0'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.3.3 + typescript: 5.4.5 + dev: true + + /ts-api-utils@1.3.0(typescript@5.4.5): + resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' + dependencies: + typescript: 5.4.5 dev: true /tsconfig-paths@3.15.0: @@ -8643,11 +9416,6 @@ packages: engines: {node: '>=8'} dev: true - /type-fest@3.13.1: - resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} - engines: {node: '>=14.16'} - dev: true - /type-is@1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} @@ -8694,8 +9462,14 @@ packages: is-typed-array: 1.1.12 dev: true - /typescript@5.3.3: - resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} + /typescript@5.4.2: + resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==} + engines: {node: '>=14.17'} + hasBin: true + dev: true + + /typescript@5.4.5: + resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} engines: {node: '>=14.17'} hasBin: true @@ -8703,8 +9477,8 @@ packages: resolution: {integrity: sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==} dev: false - /ufo@1.3.2: - resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} + /ufo@1.5.3: + resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} dev: true /unbox-primitive@1.0.2: @@ -8720,22 +9494,22 @@ packages: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} dev: true - /unimport@3.7.1(rollup@4.9.4): + /unimport@3.7.1(rollup@4.17.2): resolution: {integrity: sha512-V9HpXYfsZye5bPPYUgs0Otn3ODS1mDUciaBlXljI4C2fTwfFpvFZRywmlOu943puN9sncxROMZhsZCjNXEpzEQ==} dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.9.4) + '@rollup/pluginutils': 5.1.0(rollup@4.17.2) acorn: 8.11.3 escape-string-regexp: 5.0.0 estree-walker: 3.0.3 fast-glob: 3.3.2 local-pkg: 0.5.0 - magic-string: 0.30.5 - mlly: 1.4.2 + magic-string: 0.30.10 + mlly: 1.7.0 pathe: 1.1.2 - pkg-types: 1.0.3 - scule: 1.2.0 + pkg-types: 1.1.1 + scule: 1.3.0 strip-literal: 1.3.0 - unplugin: 1.6.0 + unplugin: 1.10.1 transitivePeerDependencies: - rollup dev: true @@ -8760,8 +9534,8 @@ packages: engines: {node: '>= 0.8'} dev: true - /unplugin-auto-import@0.17.3(rollup@4.9.4): - resolution: {integrity: sha512-0cn0wr8X579TtdZKUAps0dDVrYzttx38ImdxZjmCeNlMDJX8UuSjO83vFqgS4ClNDIGWAute+xl9j5vRSX+vsw==} + /unplugin-auto-import@0.17.6(rollup@4.17.2): + resolution: {integrity: sha512-dmX0Pex5DzMzVuALkexboOZvh51fL/BD6aoPO7qHoTYGlQp0GRKsREv2KMF1lzYI9SXKQiRxAjwzbQnrFFNydQ==} engines: {node: '>=14'} peerDependencies: '@nuxt/kit': ^3.2.2 @@ -8772,23 +9546,24 @@ packages: '@vueuse/core': optional: true dependencies: - '@antfu/utils': 0.7.7 - '@rollup/pluginutils': 5.1.0(rollup@4.9.4) + '@antfu/utils': 0.7.8 + '@rollup/pluginutils': 5.1.0(rollup@4.17.2) fast-glob: 3.3.2 local-pkg: 0.5.0 - magic-string: 0.30.5 - minimatch: 9.0.3 - unimport: 3.7.1(rollup@4.9.4) - unplugin: 1.6.0 + magic-string: 0.30.10 + minimatch: 9.0.4 + unimport: 3.7.1(rollup@4.17.2) + unplugin: 1.10.1 transitivePeerDependencies: - rollup dev: true - /unplugin@1.6.0: - resolution: {integrity: sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ==} + /unplugin@1.10.1: + resolution: {integrity: sha512-d6Mhq8RJeGA8UfKCu54Um4lFA0eSaRa3XxdAJg8tIdxbu1ubW0hBCZUL7yI2uGyYCRndvbK8FLHzqy2XKfeMsg==} + engines: {node: '>=14.0.0'} dependencies: acorn: 8.11.3 - chokidar: 3.5.3 + chokidar: 3.6.0 webpack-sources: 3.2.3 webpack-virtual-modules: 0.6.1 dev: true @@ -8803,14 +9578,25 @@ packages: engines: {node: '>=4'} dev: true - /update-browserslist-db@1.0.13(browserslist@4.22.1): - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + /update-browserslist-db@1.0.15(browserslist@4.22.1): + resolution: {integrity: sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: browserslist: 4.22.1 - escalade: 3.1.1 + escalade: 3.1.2 + picocolors: 1.0.0 + dev: true + + /update-browserslist-db@1.0.15(browserslist@4.23.0): + resolution: {integrity: sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + dependencies: + browserslist: 4.23.0 + escalade: 3.1.2 picocolors: 1.0.0 dev: true @@ -8852,8 +9638,8 @@ packages: spdx-expression-parse: 3.0.1 dev: true - /validator@13.11.0: - resolution: {integrity: sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ==} + /validator@13.12.0: + resolution: {integrity: sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==} engines: {node: '>= 0.10'} dev: true @@ -8871,8 +9657,8 @@ packages: extsprintf: 1.3.0 dev: true - /vite-node@1.1.3(@types/node@20.11.0)(sass@1.69.7): - resolution: {integrity: sha512-BLSO72YAkIUuNrOx+8uznYICJfTEbvBAmWClY3hpath5+h1mbPS5OMn42lrTxXuyCazVyZoDkSRnju78GiVCqA==} + /vite-node@1.6.0(@types/node@20.12.11)(sass@1.77.1): + resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true dependencies: @@ -8880,7 +9666,7 @@ packages: debug: 4.3.4(supports-color@8.1.1) pathe: 1.1.2 picocolors: 1.0.0 - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) transitivePeerDependencies: - '@types/node' - less @@ -8892,16 +9678,16 @@ packages: - terser dev: true - /vite-plugin-css-injected-by-js@3.3.1(vite@5.0.11): - resolution: {integrity: sha512-PjM/X45DR3/V1K1fTRs8HtZHEQ55kIfdrn+dzaqNBFrOYO073SeSNCxp4j7gSYhV9NffVHaEnOL4myoko0ePAg==} + /vite-plugin-css-injected-by-js@3.5.1(vite@5.2.11): + resolution: {integrity: sha512-9ioqwDuEBxW55gNoWFEDhfLTrVKXEEZgl5adhWmmqa88EQGKfTmexy4v1Rh0pAS6RhKQs2bUYQArprB32JpUZQ==} peerDependencies: vite: '>2.0.0-0' dependencies: - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) dev: true - /vite-plugin-dts@3.7.0(@types/node@20.11.0)(rollup@4.9.4)(typescript@5.3.3)(vite@5.0.11): - resolution: {integrity: sha512-np1uPaYzu98AtPReB8zkMnbjwcNHOABsLhqVOf81b3ol9b5M2wPcAVs8oqPnOpr6Us+7yDXVauwkxsk5+ldmRA==} + /vite-plugin-dts@3.9.1(@types/node@20.12.11)(rollup@4.17.2)(typescript@5.4.5)(vite@5.2.11): + resolution: {integrity: sha512-rVp2KM9Ue22NGWB8dNtWEr+KekN3rIgz1tWD050QnRGlriUCmaDwa7qA5zDEjbXg5lAXhYMSBJtx3q3hQIJZSg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -8910,21 +9696,22 @@ packages: vite: optional: true dependencies: - '@microsoft/api-extractor': 7.39.0(@types/node@20.11.0) - '@rollup/pluginutils': 5.1.0(rollup@4.9.4) - '@vue/language-core': 1.8.27(typescript@5.3.3) + '@microsoft/api-extractor': 7.43.0(@types/node@20.12.11) + '@rollup/pluginutils': 5.1.0(rollup@4.17.2) + '@vue/language-core': 1.8.27(typescript@5.4.5) debug: 4.3.4(supports-color@8.1.1) kolorist: 1.8.0 - typescript: 5.3.3 - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) - vue-tsc: 1.8.27(typescript@5.3.3) + magic-string: 0.30.10 + typescript: 5.4.5 + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) + vue-tsc: 1.8.27(typescript@5.4.5) transitivePeerDependencies: - '@types/node' - rollup - supports-color dev: true - /vite-plugin-eslint@1.8.1(eslint@8.56.0)(vite@5.0.11): + /vite-plugin-eslint@1.8.1(eslint@8.56.0)(vite@5.2.11): resolution: {integrity: sha512-PqdMf3Y2fLO9FsNPmMX+//2BF5SF8nEWspZdgl4kSt7UvHDRHVVfHvxsD7ULYzZrJDGRxR81Nq7TOFgwMnUang==} peerDependencies: eslint: '>=7' @@ -8934,23 +9721,23 @@ packages: '@types/eslint': 8.44.7 eslint: 8.56.0 rollup: 2.79.1 - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) dev: true - /vite-plugin-static-copy@1.0.0(vite@5.0.11): - resolution: {integrity: sha512-kMlrB3WDtC5GzFedNIPkpjnOAr8M11PfWOiUaONrUZ3AqogTsOmIhTt6w7Fh311wl8pN81ld7sfuOEogFJ9N8A==} + /vite-plugin-static-copy@1.0.4(vite@5.2.11): + resolution: {integrity: sha512-UtyOttgoeotSCwmBugsEZCZJZcIpjE9NGO7jlZ9OeedYpBueBdspD8waRZrjE+yQLH6qGNU2CvYB2FILviCQjg==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: vite: ^5.0.0 dependencies: - chokidar: 3.5.3 + chokidar: 3.6.0 fast-glob: 3.3.2 fs-extra: 11.2.0 picocolors: 1.0.0 - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) dev: true - /vite-plugin-stylelint@5.3.1(postcss@8.4.33)(rollup@4.9.4)(stylelint@16.1.0)(vite@5.0.11): + /vite-plugin-stylelint@5.3.1(postcss@8.4.38)(rollup@4.17.2)(stylelint@16.5.0)(vite@5.2.11): resolution: {integrity: sha512-M/hSdfOwnOVghbJDeuuYIU2xO/MMukYR8QcEyNKFPG8ro1L+DlTdViix2B2d/FvAw14WPX88ckA5A7NvUjJz8w==} engines: {node: '>=14.18'} peerDependencies: @@ -8967,37 +9754,37 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.9.4) + '@rollup/pluginutils': 5.1.0(rollup@4.17.2) chokidar: 3.5.3 debug: 4.3.4(supports-color@8.1.1) - postcss: 8.4.33 - rollup: 4.9.4 - stylelint: 16.1.0(typescript@5.3.3) - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) + postcss: 8.4.38 + rollup: 4.17.2 + stylelint: 16.5.0(typescript@5.4.5) + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) transitivePeerDependencies: - supports-color dev: true - /vite-plugin-vuetify@2.0.1(vite@5.0.11)(vue@3.4.10)(vuetify@3.4.10): - resolution: {integrity: sha512-GlRVAruohE8b0FqmeYYh1cYg3n8THGOv066uMA44qLv9uhUxSLw55CS7fi2yU0wH363TJ2vq36zUsPTjRFrjGQ==} + /vite-plugin-vuetify@2.0.3(vite@5.2.11)(vue@3.4.27)(vuetify@3.6.5): + resolution: {integrity: sha512-HbYajgGgb/noaVKNRhnnXIiQZrNXfNIeanUGAwXgOxL6h/KULS40Uf51Kyz8hNmdegF+DwjgXXI/8J1PNS83xw==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: vite: '>=5' vue: ^3.0.0 vuetify: ^3.0.0 dependencies: - '@vuetify/loader-shared': 2.0.1(vue@3.4.10)(vuetify@3.4.10) + '@vuetify/loader-shared': 2.0.3(vue@3.4.27)(vuetify@3.6.5) debug: 4.3.4(supports-color@8.1.1) upath: 2.0.1 - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) - vue: 3.4.10(typescript@5.3.3) - vuetify: 3.4.10(typescript@5.3.3)(vite-plugin-vuetify@2.0.1)(vue@3.4.10) + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) + vue: 3.4.27(typescript@5.4.5) + vuetify: 3.6.5(typescript@5.4.5)(vite-plugin-vuetify@2.0.3)(vue@3.4.27) transitivePeerDependencies: - supports-color dev: true - /vite@5.0.11(@types/node@20.11.0)(sass@1.69.7): - resolution: {integrity: sha512-XBMnDjZcNAw/G1gEiskiM1v6yzM4GE5aMGvhWTlHAYYhxb7S3/V1s3m2LDHa8Vh6yIWYYB0iJwsEaS523c4oYA==} + /vite@5.2.11(@types/node@20.12.11)(sass@1.77.1): + resolution: {integrity: sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -9024,24 +9811,24 @@ packages: terser: optional: true dependencies: - '@types/node': 20.11.0 - esbuild: 0.19.11 - postcss: 8.4.33 - rollup: 4.9.4 - sass: 1.69.7 + '@types/node': 20.12.11 + esbuild: 0.20.2 + postcss: 8.4.38 + rollup: 4.17.2 + sass: 1.77.1 optionalDependencies: fsevents: 2.3.3 dev: true - /vitest@1.1.3(@types/node@20.11.0)(jsdom@23.2.0)(sass@1.69.7): - resolution: {integrity: sha512-2l8om1NOkiA90/Y207PsEvJLYygddsOyr81wLQ20Ra8IlLKbyQncWsGZjnbkyG2KwwuTXLQjEPOJuxGMG8qJBQ==} + /vitest@1.6.0(@types/node@20.12.11)(jsdom@24.0.0)(sass@1.77.1): + resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': ^1.0.0 - '@vitest/ui': ^1.0.0 + '@vitest/browser': 1.6.0 + '@vitest/ui': 1.6.0 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -9058,28 +9845,27 @@ packages: jsdom: optional: true dependencies: - '@types/node': 20.11.0 - '@vitest/expect': 1.1.3 - '@vitest/runner': 1.1.3 - '@vitest/snapshot': 1.1.3 - '@vitest/spy': 1.1.3 - '@vitest/utils': 1.1.3 + '@types/node': 20.12.11 + '@vitest/expect': 1.6.0 + '@vitest/runner': 1.6.0 + '@vitest/snapshot': 1.6.0 + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 acorn-walk: 8.3.2 - cac: 6.7.14 - chai: 4.4.0 + chai: 4.4.1 debug: 4.3.4(supports-color@8.1.1) execa: 8.0.1 - jsdom: 23.2.0 + jsdom: 24.0.0 local-pkg: 0.5.0 - magic-string: 0.30.5 + magic-string: 0.30.10 pathe: 1.1.2 picocolors: 1.0.0 std-env: 3.7.0 - strip-literal: 1.3.0 - tinybench: 2.5.1 - tinypool: 0.8.1 - vite: 5.0.11(@types/node@20.11.0)(sass@1.69.7) - vite-node: 1.1.3(@types/node@20.11.0)(sass@1.69.7) + strip-literal: 2.1.0 + tinybench: 2.8.0 + tinypool: 0.8.4 + vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1) + vite-node: 1.6.0(@types/node@20.12.11)(sass@1.77.1) why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -9091,11 +9877,11 @@ packages: - terser dev: true - /vue-component-type-helpers@1.8.25: - resolution: {integrity: sha512-NCA6sekiJIMnMs4DdORxATXD+/NRkQpS32UC+I1KQJUasx+Z7MZUb3Y+MsKsFmX+PgyTYSteb73JW77AibaCCw==} + /vue-component-type-helpers@2.0.17: + resolution: {integrity: sha512-2car49m8ciqg/JjgMBkx7o/Fd2A7fHESxNqL/2vJYFLXm4VwYO4yH0rexOi4a35vwNgDyvt17B07Vj126l9rAQ==} dev: true - /vue-demi@0.14.6(vue@3.4.10): + /vue-demi@0.14.6(vue@3.4.27): resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==} engines: {node: '>=12'} hasBin: true @@ -9107,11 +9893,11 @@ packages: '@vue/composition-api': optional: true dependencies: - vue: 3.4.10(typescript@5.3.3) + vue: 3.4.27(typescript@5.4.5) dev: true - /vue-eslint-parser@9.3.2(eslint@8.56.0): - resolution: {integrity: sha512-q7tWyCVaV9f8iQyIA5Mkj/S6AoJ9KBN8IeUSf3XEmBrOtxOZnfTg5s4KClbZBCK3GtnT/+RyCLZyDHuZwTuBjg==} + /vue-eslint-parser@9.4.0(eslint@8.56.0): + resolution: {integrity: sha512-7KsNBb6gHFA75BtneJsoK/dbZ281whUIwFYdQxA68QrCrGMXYzUMbPDHGcOQ0OocIVKrWSKWXZ4mL7tonCXoUw==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' @@ -9128,8 +9914,8 @@ packages: - supports-color dev: true - /vue-eslint-parser@9.4.0(eslint@8.56.0): - resolution: {integrity: sha512-7KsNBb6gHFA75BtneJsoK/dbZ281whUIwFYdQxA68QrCrGMXYzUMbPDHGcOQ0OocIVKrWSKWXZ4mL7tonCXoUw==} + /vue-eslint-parser@9.4.2(eslint@8.56.0): + resolution: {integrity: sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' @@ -9141,7 +9927,7 @@ packages: espree: 9.6.1 esquery: 1.5.0 lodash: 4.17.21 - semver: 7.5.4 + semver: 7.6.2 transitivePeerDependencies: - supports-color dev: true @@ -9150,7 +9936,7 @@ packages: resolution: {integrity: sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==} dev: true - /vue-loader@15.11.1(@vue/compiler-sfc@3.4.10)(css-loader@6.8.1)(prettier@3.1.1)(webpack@5.89.0): + /vue-loader@15.11.1(@vue/compiler-sfc@3.4.27)(css-loader@6.8.1)(prettier@3.2.5)(webpack@5.89.0): resolution: {integrity: sha512-0iw4VchYLePqJfJu9s62ACWUXeSqM30SQqlIftbYWM3C+jpPcEHKSPUZBLjSF9au4HTHQ/naF6OGnO3Q/qGR3Q==} peerDependencies: '@vue/compiler-sfc': ^3.0.8 @@ -9169,12 +9955,12 @@ packages: vue-template-compiler: optional: true dependencies: - '@vue/compiler-sfc': 3.4.10 + '@vue/compiler-sfc': 3.4.27 '@vue/component-compiler-utils': 3.3.0 css-loader: 6.8.1(webpack@5.89.0) hash-sum: 1.0.2 loader-utils: 1.4.2 - prettier: 3.1.1 + prettier: 3.2.5 vue-hot-reload-api: 2.3.4 vue-style-loader: 4.1.3 webpack: 5.89.0 @@ -9234,7 +10020,7 @@ packages: - whiskers dev: true - /vue-loader@17.3.1(@vue/compiler-sfc@3.4.10)(vue@3.4.10)(webpack@5.89.0): + /vue-loader@17.3.1(@vue/compiler-sfc@3.4.27)(vue@3.4.27)(webpack@5.89.0): resolution: {integrity: sha512-nmVu7KU8geOyzsStyyaxID/uBGDMS8BkPXb6Lu2SNkMawriIbb+hYrNtgftHMKxOSkjjjTF5OSSwPo3KP59egg==} peerDependencies: '@vue/compiler-sfc': '*' @@ -9246,10 +10032,10 @@ packages: vue: optional: true dependencies: - '@vue/compiler-sfc': 3.4.10 + '@vue/compiler-sfc': 3.4.27 chalk: 4.1.2 hash-sum: 2.0.0 - vue: 3.4.10(typescript@5.3.3) + vue: 3.4.27(typescript@5.4.5) watchpack: 2.4.0 webpack: 5.89.0 dev: true @@ -9272,42 +10058,54 @@ packages: resolution: {integrity: sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==} dev: true - /vue-tsc@1.8.27(typescript@5.3.3): + /vue-tsc@1.8.27(typescript@5.4.5): resolution: {integrity: sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==} hasBin: true peerDependencies: typescript: '*' dependencies: '@volar/typescript': 1.11.1 - '@vue/language-core': 1.8.27(typescript@5.3.3) - semver: 7.5.4 - typescript: 5.3.3 + '@vue/language-core': 1.8.27(typescript@5.4.5) + semver: 7.6.2 + typescript: 5.4.5 + dev: true + + /vue-tsc@2.0.17(typescript@5.4.5): + resolution: {integrity: sha512-RRZsiCBD1hvATQb321xV+SkRDKsK5hgFQ4WXy5wuYsyyjz8xAK4DjxHkpH7PFoJKUbZTbeW8KzhejzXZS49Tzw==} + hasBin: true + peerDependencies: + typescript: '*' + dependencies: + '@volar/typescript': 2.2.2 + '@vue/language-core': 2.0.17(typescript@5.4.5) + semver: 7.6.2 + typescript: 5.4.5 dev: true - /vue@3.4.10(typescript@5.3.3): - resolution: {integrity: sha512-c+O8qGqdWPF9joTCzMGeDDedViooh6c8RY3+eW5+6GCAIY8YjChmU06LsUu0PnMZbIk1oKUoJTqKzmghYtFypw==} + /vue@3.4.27(typescript@5.4.5): + resolution: {integrity: sha512-8s/56uK6r01r1icG/aEOHqyMVxd1bkYcSe9j8HcKtr/xTOFWvnzIVTehNW+5Yt89f+DLBe4A569pnZLS5HzAMA==} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@vue/compiler-dom': 3.4.10 - '@vue/compiler-sfc': 3.4.10 - '@vue/runtime-dom': 3.4.10 - '@vue/server-renderer': 3.4.10(vue@3.4.10) - '@vue/shared': 3.4.10 - typescript: 5.3.3 + '@vue/compiler-dom': 3.4.27 + '@vue/compiler-sfc': 3.4.27 + '@vue/runtime-dom': 3.4.27 + '@vue/server-renderer': 3.4.27(vue@3.4.27) + '@vue/shared': 3.4.27 + typescript: 5.4.5 - /vuetify@3.4.10(typescript@5.3.3)(vite-plugin-vuetify@2.0.1)(vue@3.4.10): - resolution: {integrity: sha512-tObGoumCJxuK26OpS/CLZZIJAgDtN2cnd31vJscVhpuf6jeMD7wh8IsgfZownAOXU1FcKWVQwn1RSDsoXk5cJA==} + /vuetify@3.6.5(typescript@5.4.5)(vite-plugin-vuetify@2.0.3)(vue@3.4.27): + resolution: {integrity: sha512-YrHTM1vb7UllAtfH9tWfTo1wYMjyCSybu4WtXrfMRpMwAaZWgfrMmqD/4Tc+0KqDsDsYMXaYs0nJ6HtdMJZbyA==} engines: {node: ^12.20 || >=14.13} peerDependencies: typescript: '>=4.7' - vite-plugin-vuetify: '>=1.0.0-alpha.12' + vite-plugin-vuetify: '>=1.0.0' vue: ^3.3.0 vue-i18n: ^9.0.0 - webpack-plugin-vuetify: '>=2.0.0-alpha.11' + webpack-plugin-vuetify: '>=2.0.0' peerDependenciesMeta: typescript: optional: true @@ -9318,9 +10116,9 @@ packages: webpack-plugin-vuetify: optional: true dependencies: - typescript: 5.3.3 - vite-plugin-vuetify: 2.0.1(vite@5.0.11)(vue@3.4.10)(vuetify@3.4.10) - vue: 3.4.10(typescript@5.3.3) + typescript: 5.4.5 + vite-plugin-vuetify: 2.0.3(vite@5.2.11)(vue@3.4.27)(vuetify@3.6.5) + vue: 3.4.27(typescript@5.4.5) dev: true /w3c-xmlserializer@5.0.0: @@ -9434,7 +10232,7 @@ packages: '@types/ws': 8.5.9 ansi-html-community: 0.0.8 bonjour-service: 1.1.1 - chokidar: 3.5.3 + chokidar: 3.6.0 colorette: 2.0.20 compression: 1.7.4 connect-history-api-fallback: 2.0.0 @@ -9455,7 +10253,7 @@ packages: spdy: 4.0.2 webpack: 5.89.0 webpack-dev-middleware: 5.3.3(webpack@5.89.0) - ws: 8.16.0 + ws: 8.17.0 transitivePeerDependencies: - bufferutil - debug @@ -9659,7 +10457,7 @@ packages: engines: {node: '>=18'} dependencies: ansi-styles: 6.2.1 - string-width: 7.0.0 + string-width: 7.1.0 strip-ansi: 7.1.0 dev: true @@ -9701,6 +10499,19 @@ packages: optional: true dev: true + /ws@8.17.0: + resolution: {integrity: sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dev: true + /xml-name-validator@4.0.0: resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} engines: {node: '>=12'} @@ -9742,6 +10553,12 @@ packages: engines: {node: '>= 14'} dev: true + /yaml@2.4.2: + resolution: {integrity: sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==} + engines: {node: '>= 14'} + hasBin: true + dev: true + /yargs-parser@20.2.9: resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} engines: {node: '>=10'} @@ -9795,7 +10612,7 @@ packages: dependencies: lodash.get: 4.4.2 lodash.isequal: 4.5.0 - validator: 13.11.0 + validator: 13.12.0 optionalDependencies: commander: 9.5.0 dev: true From ac569f0fc044435deecadf0c66d7c4b69e1bbb99 Mon Sep 17 00:00:00 2001 From: WebDevNerdStuff Date: Sat, 11 May 2024 18:27:52 -0700 Subject: [PATCH 7/9] adding cypress tests --- cypress.config.ts | 23 +- cypress/support/commands.ts | 3 +- .../__tests__/HighlightJsExamples.cy.ts | 235 ++++++++++++++++++ src/plugin/__tests__/PrismJsExamples.cy.ts | 227 +++++++++++++++++ src/plugin/__tests__/VCodeBlock.cy.ts | 41 --- tsconfig.json | 3 +- 6 files changed, 476 insertions(+), 56 deletions(-) create mode 100644 src/plugin/__tests__/HighlightJsExamples.cy.ts create mode 100644 src/plugin/__tests__/PrismJsExamples.cy.ts delete mode 100644 src/plugin/__tests__/VCodeBlock.cy.ts diff --git a/cypress.config.ts b/cypress.config.ts index 0aecdf1..04ccfc0 100644 --- a/cypress.config.ts +++ b/cypress.config.ts @@ -1,19 +1,16 @@ import { defineConfig } from "cypress"; export default defineConfig({ - component: { - devServer: { - framework: "vue", - bundler: "vite", - }, - }, + e2e: { + baseUrl: 'http://192.168.4.79:5173/vue-code-block/', + // excludeSpecPattern: ['./src/plugin/__tests__'], + specPattern: './src/plugin/**/*.cy.{js,jsx,ts,tsx}', + setupNodeEvents(on, config) { + // implement node event listeners here + }, + }, - viewportHeight: 768, - viewportWidth: 1024, + viewportHeight: 1080, + viewportWidth: 1920, - e2e: { - setupNodeEvents(on, config) { - // implement node event listeners here - }, - }, }); diff --git a/cypress/support/commands.ts b/cypress/support/commands.ts index 698b01a..10be49f 100644 --- a/cypress/support/commands.ts +++ b/cypress/support/commands.ts @@ -34,4 +34,5 @@ // visit(originalFn: CommandOriginalFn, url: string, options: Partial): Chainable // } // } -// } \ No newline at end of file +// } +import '@percy/cypress'; diff --git a/src/plugin/__tests__/HighlightJsExamples.cy.ts b/src/plugin/__tests__/HighlightJsExamples.cy.ts new file mode 100644 index 0000000..12416cd --- /dev/null +++ b/src/plugin/__tests__/HighlightJsExamples.cy.ts @@ -0,0 +1,235 @@ +describe('VCodeBlock Component - Highlight.js', () => { + beforeEach(() => { + cy.visit('/'); + cy.get('[data-cy="library-select"]').parent().click().type('highlightjs'); + }); + + it('should have v-code-block--highlightjs on all v-code-block elements', () => { + cy.get('.v-code-block').should('have.class', 'v-code-block--highlightjs'); + }); + + describe('JavaScript Example', () => { + const codeBlockExamples = '#lang-js-examples .v-code-block'; + + it('should have 1 code block', () => { + cy.get(codeBlockExamples).should('have.length', 1); + }); + + it('should have code block classes', () => { + cy.get(codeBlockExamples).children('.v-code-block--code').should('exist'); + cy.get(codeBlockExamples).find('.v-code-block--code-copy-button').should('exist'); + cy.get(codeBlockExamples).find('.v-code-block--code-copy-button-status-copy').should('exist'); + cy.get(codeBlockExamples).find('.v-code-block--button-copy-icon').should('exist'); + }); + + it('should have a pre and code elements', () => { + cy.get(codeBlockExamples).find('pre, code').should('exist'); + }); + + it('should have a pre/code elements with language-javascript & code.hljs class', () => { + cy.get(codeBlockExamples).find('pre, code').should('have.class', 'language-javascript'); + cy.get(codeBlockExamples).find('code').should('have.class', 'hljs'); + }); + + it('should contain rendered code', () => { + cy.get(codeBlockExamples).find('code').should('contain.text', 'const numbers = [1, 2, 3, 4, 5];'); + }); + }); + + describe('Vue Example', () => { + const codeBlockExamples = '#lang-vue-examples .v-code-block'; + + it('should have 1 code block', () => { + cy.get(codeBlockExamples).should('have.length', 1); + }); + + it('should have code block classes', () => { + cy.get(codeBlockExamples).children('.v-code-block--code').should('exist'); + cy.get(codeBlockExamples).find('.v-code-block--code-copy-button').should('exist'); + cy.get(codeBlockExamples).find('.v-code-block--code-copy-button-status-copy').should('exist'); + cy.get(codeBlockExamples).find('.v-code-block--button-copy-icon').should('exist'); + }); + + it('should have a pre and code elements', () => { + cy.get(codeBlockExamples).find('pre, code').should('exist'); + }); + + it('should have a pre/code elements with language-html class & code.hljs class', () => { + cy.get(codeBlockExamples).find('pre, code').should('have.class', 'language-html'); + cy.get(codeBlockExamples).find('code').should('have.class', 'hljs'); + }); + + it('should contain rendered code', () => { + cy.get(codeBlockExamples).find('code').should('contain.text', '