From 255fbf552fbe0a452cf07a053fab69de8ee7af48 Mon Sep 17 00:00:00 2001 From: Jess Telford Date: Tue, 9 Jul 2024 13:15:30 +1000 Subject: [PATCH] Revert "Upgrade `stylelint-polaris` to `stylelint` v16 (#12337)" This reverts commit b2d2da488b5639cb43cc210ce64db5419460f1dc. --- .changeset/little-impalas-knock.md | 5 - .changeset/tricky-mayflies-push.md | 5 - .eslintrc.js | 3 - .prettierignore | 4 - .stylelintrc.js | 7 - package.json | 17 +- patches/stylelint@16.6.1.patch | 26 - pnpm-lock.yaml | 1910 ++++------------- polaris-migrator/package.json | 6 +- ...styles-insert-stylelint-disable.input.scss | 71 + ...tyles-insert-stylelint-disable.output.scss | 84 + .../tests/test-config.js | 19 + .../tests/transform.test.ts | 17 + .../transform.ts | 146 ++ polaris-migrator/src/utilities/check.ts | 6 +- polaris-react/postcss-mixins/button-base.css | 1 - .../ActionList/ActionList.module.css | 2 + .../RollupActions/RollupActions.module.css | 3 + .../SecondaryAction.module.css | 4 +- .../MappedAction/MappedAction.module.css | 3 + polaris-react/src/components/Box/Box.tsx | 18 +- .../src/components/Button/Button.module.css | 8 +- .../components/Checkbox/Checkbox.module.css | 21 +- .../src/components/Choice/Choice.module.css | 1 - .../components/Choice/tests/Choice.test.tsx | 2 +- .../Combobox/tests/Combobox.test.tsx | 13 +- .../components/DataTable/DataTable.module.css | 2 +- .../DatePicker/DatePicker.module.css | 3 + .../components/Weekday/tests/Weekday.test.tsx | 2 +- .../DatePicker/tests/DatePicker.test.tsx | 2 +- .../DescriptionList.module.css | 2 + .../components/DropZone/DropZone.module.css | 1 + .../DropZone/tests/DropZone.test.tsx | 2 +- .../ExceptionList/ExceptionList.module.css | 2 + .../src/components/Filters/Filters.module.css | 1 + .../FilterPill/FilterPill.module.css | 3 +- .../components/FiltersBar/FiltersBar.tsx | 7 +- .../src/components/Frame/Frame.module.css | 5 +- .../ToastManager/ToastManager.module.css | 3 +- .../components/ToastManager/ToastManager.tsx | 9 +- .../IndexTable/IndexTable.module.css | 174 +- .../components/Labelled/Labelled.module.css | 1 + .../ConnectedFilterControl.module.css | 4 + .../LegacyTabs/LegacyTabs.module.css | 6 +- .../LegacyTabs/tests/LegacyTabs.test.tsx | 4 +- .../tests/MediaQueryProvider.test.tsx | 2 + .../Modal/components/Dialog/Dialog.module.css | 4 +- .../Navigation/Navigation.module.css | 24 +- .../src/components/OptionList/OptionList.tsx | 4 +- .../components/Option/Option.module.css | 7 +- .../Page/components/Header/Header.module.css | 9 +- .../Header/components/Title/Title.module.css | 1 + .../tests/PolarisTestProvider.test.tsx | 1 + .../src/components/Popover/Popover.module.css | 4 +- .../PopoverOverlay/PopoverOverlay.tsx | 13 +- .../RadioButton/RadioButton.module.css | 11 +- .../components/DualThumb/DualThumb.module.css | 2 + .../SingleThumb/SingleThumb.module.css | 2 + .../ResourceItem/ResourceItem.module.css | 4 + .../ResourceList/ResourceList.module.css | 9 +- .../src/components/Select/Select.module.css | 12 +- .../components/Select/tests/Select.test.tsx | 4 +- .../ShadowBevel/ShadowBevel.module.css | 2 + .../src/components/Tabs/Tabs.module.css | 1 + .../src/components/Tabs/tests/Tabs.test.tsx | 4 +- .../src/components/Tag/Tag.module.css | 8 +- .../components/TextField/TextField.module.css | 18 +- .../components/Resizer/tests/Resizer.test.tsx | 8 +- .../TextField/tests/TextField.test.tsx | 12 +- .../components/Thumbnail/Thumbnail.module.css | 1 + .../TooltipOverlay/TooltipOverlay.module.css | 1 + .../src/components/TopBar/TopBar.module.css | 5 +- .../SearchField/SearchField.module.css | 7 +- .../tests/use-is-after-initial-mount.test.tsx | 1 + .../src/utilities/use-event-listener.ts | 16 +- .../playroom/FrameComponent.tsx | 8 +- .../PatternsExample/PatternsExample.tsx | 140 +- stylelint-polaris/package.json | 6 +- stylelint-polaris/plugins/coverage/index.js | 4 +- .../index.js | 4 +- .../plugins/media-query-allowed-list/index.js | 4 +- 81 files changed, 1121 insertions(+), 1877 deletions(-) delete mode 100644 .changeset/little-impalas-knock.md delete mode 100644 .changeset/tricky-mayflies-push.md delete mode 100644 patches/stylelint@16.6.1.patch create mode 100644 polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.input.scss create mode 100644 polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.output.scss create mode 100644 polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/test-config.js create mode 100644 polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/transform.test.ts create mode 100644 polaris-migrator/src/migrations/styles-insert-stylelint-disable/transform.ts diff --git a/.changeset/little-impalas-knock.md b/.changeset/little-impalas-knock.md deleted file mode 100644 index 0f3b7faa581..00000000000 --- a/.changeset/little-impalas-knock.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/stylelint-polaris': major ---- - -Dropped support for `stylelint` v14 and v15 diff --git a/.changeset/tricky-mayflies-push.md b/.changeset/tricky-mayflies-push.md deleted file mode 100644 index 25c2d1eb855..00000000000 --- a/.changeset/tricky-mayflies-push.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@shopify/polaris-migrator': major ---- - -Removed `styles-insert-stylelint-disable` migration diff --git a/.eslintrc.js b/.eslintrc.js index 18728f62e62..d50397e9ab2 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -69,7 +69,6 @@ module.exports = { '@typescript-eslint/consistent-type-imports': 'error', '@typescript-eslint/consistent-type-exports': 'error', '@typescript-eslint/naming-convention': 'off', - '@typescript-eslint/consistent-indexed-object-style': 'off', 'jsx-a11y/label-has-for': [ 2, { @@ -87,8 +86,6 @@ module.exports = { 'jsx-a11y/click-events-have-key-events': 'off', 'jsx-a11y/no-noninteractive-element-interactions': 'off', 'jsx-a11y/no-noninteractive-element-to-interactive-role': 'off', - 'jest/no-conditional-in-test': 'off', - 'jest/no-standalone-expect': 'off', 'no-restricted-imports': [ 'error', { diff --git a/.prettierignore b/.prettierignore index 456affe98a4..e41b0709127 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,8 +1,4 @@ .next -pnpm-lock.yaml -**/CHANGELOG.md -/polaris-migrator/src/migrations/**/tests/*.scss -/polaris-migrator/templates/**/*.hbs dist node_modules /polaris-react/build diff --git a/.stylelintrc.js b/.stylelintrc.js index 4584429dcf2..0723273ba25 100644 --- a/.stylelintrc.js +++ b/.stylelintrc.js @@ -9,13 +9,6 @@ module.exports = { 'value-keyword-case': ['lower', {camelCaseSvgKeywords: true}], 'at-rule-no-unknown': null, 'scss/at-rule-no-unknown': true, - 'selector-max-class': 5, - 'selector-max-combinators': 5, - 'selector-max-compound-selectors': 5, - 'selector-max-specificity': '0,5,0', - // Disabling this rule as it's not forward-compatible with new CSS rules - // that get added. See: https://github.com/stylelint/stylelint/issues/7630 - 'declaration-block-no-redundant-longhand-properties': null, }, overrides: [ { diff --git a/package.json b/package.json index 66b47d39243..4ff17dee4ef 100644 --- a/package.json +++ b/package.json @@ -40,37 +40,32 @@ "@rollup/plugin-replace": "^5.0.2", "@rollup/plugin-virtual": "^3.0.1", "@rollup/pluginutils": "^5.0.2", - "@shopify/eslint-plugin": "^45.0.0", - "@shopify/stylelint-plugin": "^14.0.0", + "@shopify/eslint-plugin": "^42.0.1", + "@shopify/stylelint-plugin": "^11.0.0", "@shopify/typescript-configs": "^5.1.0", "@size-limit/preset-small-lib": "^5.0.3", "@types/jest": "^29.5.12", "@types/node": "^20.10.0", "babel-loader": "^9.1.2", - "eslint": "^8.56.0", + "eslint": "^8.3.0", "eslint-plugin-storybook": "^0.8.0", "execa": "^5.0.0", "jest": "^29.7.0", "jest-environment-jsdom": "^29.7.0", - "jest-preset-stylelint": "^7.0.1", + "jest-preset-stylelint": "^5.0.3", "jest-watch-typeahead": "^2.2.2", "js-yaml": "^4.1.0", "npm-run-all": "^4.1.5", "postinstall-postinstall": "^2.1.0", - "prettier": "^3.3.2", + "prettier": "^2.5.0", "rollup": "^3.12.0", "rollup-plugin-node-externals": "^5.1.0", "size-limit": "^5.0.3", - "stylelint": "^16.6.1", + "stylelint": "^14.15.0", "ts-node": "^10.7.0", "turbo": "^1.11.1", "typescript": "^4.9.3" }, - "pnpm": { - "patchedDependencies": { - "stylelint@16.6.1": "patches/stylelint@16.6.1.patch" - } - }, "size-limit": [ { "name": "polaris-react-cjs", diff --git a/patches/stylelint@16.6.1.patch b/patches/stylelint@16.6.1.patch deleted file mode 100644 index f34b75a88a3..00000000000 --- a/patches/stylelint@16.6.1.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/lib/utils/checkAgainstRule.cjs b/lib/utils/checkAgainstRule.cjs -index 862f0c77f2ec60a26ac670230c531be88cead26f..e2c40a2009941ccd9e6c4a8f49f654c8e6ae1ef3 100644 ---- a/lib/utils/checkAgainstRule.cjs -+++ b/lib/utils/checkAgainstRule.cjs -@@ -45,7 +45,7 @@ async function checkAgainstRule(options, callback) { - const [primary, secondary] = settings; - const ruleFunc = rule(primary, secondary || {}, context); - -- ruleFunc( -+ await ruleFunc( - root, - - // NOTE: This temporary PostCSS result doesn't have a property for Stylelint use. -diff --git a/lib/utils/checkAgainstRule.mjs b/lib/utils/checkAgainstRule.mjs -index c82c6c82734ba7a41f59a57aa7a89f149378599f..168270665e953635e3cb223fe5ebdbbbaf69ff54 100644 ---- a/lib/utils/checkAgainstRule.mjs -+++ b/lib/utils/checkAgainstRule.mjs -@@ -42,7 +42,7 @@ export default async function checkAgainstRule(options, callback) { - const [primary, secondary] = settings; - const ruleFunc = rule(primary, secondary || {}, context); - -- ruleFunc( -+ await ruleFunc( - root, - - // NOTE: This temporary PostCSS result doesn't have a property for Stylelint use. diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7183a7da935..9396558aad3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,11 +4,6 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -patchedDependencies: - stylelint@16.6.1: - hash: wls6x7gbpq4g6z7ydobqcmwpgu - path: patches/stylelint@16.6.1.patch - importers: .: @@ -65,11 +60,11 @@ importers: specifier: ^5.0.2 version: 5.0.2(rollup@3.29.4) '@shopify/eslint-plugin': - specifier: ^45.0.0 - version: 45.0.0(@babel/core@7.23.6)(eslint@8.57.0)(jest@29.7.0)(prettier@3.3.2)(typescript@4.9.3) + specifier: ^42.0.1 + version: 42.0.1(@babel/core@7.23.6)(eslint@8.10.0)(jest@29.7.0)(prettier@2.8.8)(typescript@4.9.3) '@shopify/stylelint-plugin': - specifier: ^14.0.0 - version: 14.0.0(prettier@3.3.2)(stylelint@16.6.1) + specifier: ^11.0.0 + version: 11.0.1(prettier@2.8.8)(stylelint@14.15.0) '@shopify/typescript-configs': specifier: ^5.1.0 version: 5.1.0 @@ -86,11 +81,11 @@ importers: specifier: ^9.1.2 version: 9.1.2(@babel/core@7.23.6)(webpack@5.76.0) eslint: - specifier: ^8.56.0 - version: 8.57.0 + specifier: ^8.3.0 + version: 8.10.0 eslint-plugin-storybook: specifier: ^0.8.0 - version: 0.8.0(eslint@8.57.0)(typescript@4.9.3) + version: 0.8.0(eslint@8.10.0)(typescript@4.9.3) execa: specifier: ^5.0.0 version: 5.1.1 @@ -101,8 +96,8 @@ importers: specifier: ^29.7.0 version: 29.7.0 jest-preset-stylelint: - specifier: ^7.0.1 - version: 7.0.1(jest@29.7.0) + specifier: ^5.0.3 + version: 5.0.4(jest@29.7.0) jest-watch-typeahead: specifier: ^2.2.2 version: 2.2.2(jest@29.7.0) @@ -116,8 +111,8 @@ importers: specifier: ^2.1.0 version: 2.1.0 prettier: - specifier: ^3.3.2 - version: 3.3.2 + specifier: ^2.5.0 + version: 2.8.8 rollup: specifier: ^3.12.0 version: 3.29.4 @@ -128,8 +123,8 @@ importers: specifier: ^5.0.3 version: 5.0.5 stylelint: - specifier: ^16.6.1 - version: 16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3) + specifier: ^14.15.0 + version: 14.15.0 ts-node: specifier: ^10.7.0 version: 10.7.0(@types/node@20.12.5)(typescript@4.9.3) @@ -229,8 +224,8 @@ importers: specifier: ^4.2.0 version: 4.2.0 stylelint: - specifier: ^16.6.1 - version: 16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3) + specifier: ^14.15.0 + version: 14.15.0 devDependencies: '@rollup/plugin-babel': specifier: ^5.3.1 @@ -260,8 +255,8 @@ importers: specifier: ^0.0.5 version: 0.0.5(plop@3.1.1) prettier: - specifier: ^3.3.2 - version: 3.3.2 + specifier: ^2.7.1 + version: 2.8.8 type-fest: specifier: ^2.19.0 version: 2.19.0 @@ -704,16 +699,16 @@ importers: version: 0.2.3 postcss-scss: specifier: ^4.0.9 - version: 4.0.9(postcss@8.4.39) + version: 4.0.9(postcss@8.4.32) postcss-value-parser: specifier: ^4.2.0 version: 4.2.0 stylelint: - specifier: ^16.0.0 - version: 16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3) + specifier: ^14.15.0 || ^15.0.0 + version: 14.15.0 stylelint-scss: - specifier: ^6.3.2 - version: 6.3.2(stylelint@16.6.1) + specifier: ^4.4.0 + version: 4.7.0(stylelint@14.15.0) packages: @@ -767,7 +762,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/highlight': 7.24.2 - picocolors: 1.0.1 + picocolors: 1.0.0 /@babel/compat-data@7.23.5: resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} @@ -817,7 +812,7 @@ packages: transitivePeerDependencies: - supports-color - /@babel/eslint-parser@7.17.0(@babel/core@7.23.6)(eslint@8.57.0): + /@babel/eslint-parser@7.17.0(@babel/core@7.23.6)(eslint@8.10.0): resolution: {integrity: sha512-PUEJ7ZBXbRkbq3qqM/jZ2nIuakUBqCYc7Qf52Lj7dlZ6zERnqisdHioL0l4wwQZnmskMeasqUNzLBFKs3nylXA==} engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} peerDependencies: @@ -825,21 +820,21 @@ packages: eslint: ^7.5.0 || ^8.0.0 dependencies: '@babel/core': 7.23.6 - eslint: 8.57.0 + eslint: 8.10.0 eslint-scope: 5.1.1 eslint-visitor-keys: 2.1.0 semver: 6.3.1 dev: true - /@babel/eslint-plugin@7.17.7(@babel/eslint-parser@7.17.0)(eslint@8.57.0): + /@babel/eslint-plugin@7.17.7(@babel/eslint-parser@7.17.0)(eslint@8.10.0): resolution: {integrity: sha512-JATUoJJXSgwI0T8juxWYtK1JSgoLpIGUsCHIv+NMXcUDA2vIe6nvAHR9vnuJgs/P1hOFw7vPwibixzfqBBLIVw==} engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} peerDependencies: '@babel/eslint-parser': '>=7.11.0' eslint: '>=7.5.0' dependencies: - '@babel/eslint-parser': 7.17.0(@babel/core@7.23.6)(eslint@8.57.0) - eslint: 8.57.0 + '@babel/eslint-parser': 7.17.0(@babel/core@7.23.6)(eslint@8.10.0) + eslint: 8.10.0 eslint-rule-composer: 0.3.0 dev: true @@ -1152,7 +1147,7 @@ packages: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - picocolors: 1.0.1 + picocolors: 1.0.0 /@babel/node@7.20.7(@babel/core@7.23.6): resolution: {integrity: sha512-AQt3gVcP+fpFuoFn4FmIW/+5JovvEoA9og4Y1LrRw0pv3jkl4tujZMMy3X/3ugjLrEy3k1aNywo3JIl3g+jVXQ==} @@ -3427,33 +3422,11 @@ packages: '@csstools/css-tokenizer': 2.2.1 dev: true - /@csstools/css-parser-algorithms@2.7.0(@csstools/css-tokenizer@2.3.3): - resolution: {integrity: sha512-qvBMcOU/uWFCH/VO0MYe0AMs0BGMWAt6FTryMbFIKYtZtVnqTZtT8ktv5o718llkaGZWomJezJZjq3vJDHeJNQ==} - engines: {node: ^14 || ^16 || >=18} - peerDependencies: - '@csstools/css-tokenizer': ^2.3.2 - dependencies: - '@csstools/css-tokenizer': 2.3.3 - /@csstools/css-tokenizer@2.2.1: resolution: {integrity: sha512-Zmsf2f/CaEPWEVgw29odOj+WEVoiJy9s9NOv5GgNY9mZ1CZ7394By6wONrONrTsnNDv6F9hR02nvFihrGVGHBg==} engines: {node: ^14 || ^16 || >=18} dev: true - /@csstools/css-tokenizer@2.3.3: - resolution: {integrity: sha512-fTaF0vRcXVJ4cmwg8nHofydDjitKMDBzC8cCu+O/Lg13C4PdkC15GVjGpbmWauOOnhomVSTg5I5LpLJFJE2Hfw==} - engines: {node: ^14 || ^16 || >=18} - - /@csstools/media-query-list-parser@2.1.12(@csstools/css-parser-algorithms@2.7.0)(@csstools/css-tokenizer@2.3.3): - resolution: {integrity: sha512-t1/CdyVJzOQUiGUcIBXRzTAkWTFPxiPnoKwowKW2z9Uj78c2bBWI/X94BeVfUwVq1xtCjD7dnO8kS6WONgp8Jw==} - engines: {node: ^14 || ^16 || >=18} - peerDependencies: - '@csstools/css-parser-algorithms': ^2.7.0 - '@csstools/css-tokenizer': ^2.3.2 - dependencies: - '@csstools/css-parser-algorithms': 2.7.0(@csstools/css-tokenizer@2.3.3) - '@csstools/css-tokenizer': 2.3.3 - /@csstools/media-query-list-parser@2.1.5(@csstools/css-parser-algorithms@2.3.2)(@csstools/css-tokenizer@2.2.1): resolution: {integrity: sha512-IxVBdYzR8pYe89JiyXQuYk4aVVoCPhMJkz6ElRwlVysjwURTsTk/bmY/z4FfeRE+CRBMlykPwXEVUg8lThv7AQ==} engines: {node: ^14 || ^16 || >=18} @@ -3474,31 +3447,30 @@ packages: postcss: 8.4.32 dev: true - /@csstools/selector-specificity@3.0.2(postcss-selector-parser@6.0.15): - resolution: {integrity: sha512-RpHaZ1h9LE7aALeQXmXrJkRG84ZxIsctEN2biEUmFyKpzFM3zZ35eUMcIzZFsw/2olQE6v69+esEqU2f1MKycg==} - engines: {node: ^14 || ^16 || >=18} + /@csstools/selector-specificity@2.0.2(postcss-selector-parser@6.0.15)(postcss@8.4.32): + resolution: {integrity: sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==} + engines: {node: ^12 || ^14 || >=16} peerDependencies: - postcss-selector-parser: ^6.0.13 + postcss: ^8.2 + postcss-selector-parser: ^6.0.10 dependencies: + postcss: 8.4.32 postcss-selector-parser: 6.0.15 - dev: true - /@csstools/selector-specificity@3.1.1(postcss-selector-parser@6.1.0): - resolution: {integrity: sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==} + /@csstools/selector-specificity@3.0.2(postcss-selector-parser@6.0.15): + resolution: {integrity: sha512-RpHaZ1h9LE7aALeQXmXrJkRG84ZxIsctEN2biEUmFyKpzFM3zZ35eUMcIzZFsw/2olQE6v69+esEqU2f1MKycg==} engines: {node: ^14 || ^16 || >=18} peerDependencies: postcss-selector-parser: ^6.0.13 dependencies: - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 6.0.15 + dev: true /@discoveryjs/json-ext@0.5.7: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} dev: true - /@dual-bundle/import-meta-resolve@4.1.0: - resolution: {integrity: sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==} - /@emotion/hash@0.8.0: resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==} dev: true @@ -3723,28 +3695,18 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.3.0(eslint@8.57.0): + /@eslint-community/eslint-utils@4.3.0(eslint@8.10.0): resolution: {integrity: sha512-v3oplH6FYCULtFuCeqyuTd9D2WKO937Dxdq+GmHOLL72TTRriLxz2VLlNfkZRsvj6PKnOPAtuT6dwrs/pA5DvA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - dependencies: - eslint: 8.57.0 + eslint: 8.10.0 eslint-visitor-keys: 3.3.0 dev: true - /@eslint-community/regexpp@4.11.0: - resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} + /@eslint-community/regexpp@4.4.1: + resolution: {integrity: sha512-BISJ6ZE4xQsuL/FmsyRaiffpq977bMlsKfGHTQrOGFErfByxIe6iZTxPf/00Zon9b9a7iUykfQwejN3s2ZW/Bw==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} dev: true @@ -3765,28 +3727,6 @@ packages: - supports-color dev: true - /@eslint/eslintrc@2.1.4: - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.6.1 - globals: 13.24.0 - ignore: 5.3.1 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - dev: true - - /@eslint/js@8.57.0: - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /@esm2cjs/aggregate-error@4.0.1: resolution: {integrity: sha512-bcKpYqFlH6BJhIV0ru9zymGCNZ7WB6F9YdBADaBPkMM2hewT0xYSHni728KYddb11XrVGHEC0s3TrtD+Mj+W7w==} engines: {node: '>=12'} @@ -3885,18 +3825,6 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@humanwhocodes/config-array@0.11.14: - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - deprecated: Use @eslint/config-array instead - dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true - /@humanwhocodes/config-array@0.9.5: resolution: {integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==} engines: {node: '>=10.10.0'} @@ -3908,27 +3836,17 @@ packages: - supports-color dev: true - /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - dev: true - /@humanwhocodes/object-schema@1.2.1: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true - /@humanwhocodes/object-schema@2.0.3: - resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - deprecated: Use @eslint/object-schema instead - dev: true - /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} dependencies: string-width: 5.1.2 string-width-cjs: /string-width@4.2.3 - strip-ansi: 7.1.0 + strip-ansi: 7.0.1 strip-ansi-cjs: /strip-ansi@6.0.1 wrap-ansi: 8.1.0 wrap-ansi-cjs: /wrap-ansi@7.0.0 @@ -4830,11 +4748,6 @@ packages: dev: true optional: true - /@pkgr/core@0.1.1: - resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - dev: true - /@polka/url@1.0.0-next.21: resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} dev: true @@ -5077,38 +4990,37 @@ packages: engines: {node: ^14.17.0 || >=16.0.0} dev: true - /@shopify/eslint-plugin@45.0.0(@babel/core@7.23.6)(eslint@8.57.0)(jest@29.7.0)(prettier@3.3.2)(typescript@4.9.3): - resolution: {integrity: sha512-aRgVkl+EovLk6OC4WzT+C6hgAyta5VReEIdetpe+/bJhVovlqbFjYa3yHGvEM4VuWv8sim7XH2VV3ZsDiwpgvQ==, tarball: https://registry.npmjs.org/@shopify/eslint-plugin/-/eslint-plugin-45.0.0.tgz} + /@shopify/eslint-plugin@42.0.1(@babel/core@7.23.6)(eslint@8.10.0)(jest@29.7.0)(prettier@2.8.8)(typescript@4.9.3): + resolution: {integrity: sha512-rtWKd0hdXkyhYo8XkG7TYYVFCIQV8cJ2zCQHaYmsq5p7q1EZ9itXoOcNFzrNjSmiqXoDjCDpBj+33bcZYHKG3Q==} peerDependencies: - eslint: ^8.56.0 + eslint: ^8.3.0 dependencies: - '@babel/eslint-parser': 7.17.0(@babel/core@7.23.6)(eslint@8.57.0) - '@babel/eslint-plugin': 7.17.7(@babel/eslint-parser@7.17.0)(eslint@8.57.0) - '@typescript-eslint/eslint-plugin': 7.15.0(@typescript-eslint/parser@7.15.0)(eslint@8.57.0)(typescript@4.9.3) - '@typescript-eslint/parser': 7.15.0(eslint@8.57.0)(typescript@4.9.3) + '@babel/eslint-parser': 7.17.0(@babel/core@7.23.6)(eslint@8.10.0) + '@babel/eslint-plugin': 7.17.7(@babel/eslint-parser@7.17.0)(eslint@8.10.0) + '@typescript-eslint/eslint-plugin': 5.56.0(@typescript-eslint/parser@5.56.0)(eslint@8.10.0)(typescript@4.9.3) + '@typescript-eslint/parser': 5.56.0(eslint@8.10.0)(typescript@4.9.3) change-case: 4.1.2 common-tags: 1.8.2 doctrine: 2.1.0 - eslint: 8.57.0 - eslint-config-prettier: 9.1.0(eslint@8.57.0) - eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.15.0)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) - eslint-plugin-eslint-comments: 3.2.0(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.15.0)(eslint@8.57.0) - eslint-plugin-jest: 28.6.0(@typescript-eslint/eslint-plugin@7.15.0)(eslint@8.57.0)(jest@29.7.0)(typescript@4.9.3) - eslint-plugin-jest-formatting: 3.1.0(eslint@8.57.0) - eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0) - eslint-plugin-node: 11.1.0(eslint@8.57.0) - eslint-plugin-prettier: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.3.2) - eslint-plugin-promise: 6.4.0(eslint@8.57.0) - eslint-plugin-react: 7.34.3(eslint@8.57.0) - eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) - eslint-plugin-sort-class-members: 1.20.0(eslint@8.57.0) + eslint: 8.10.0 + eslint-config-prettier: 8.5.0(eslint@8.10.0) + eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@2.7.1)(eslint@8.10.0) + eslint-plugin-eslint-comments: 3.2.0(eslint@8.10.0) + eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.10.0) + eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@5.56.0)(eslint@8.10.0)(jest@29.7.0)(typescript@4.9.3) + eslint-plugin-jest-formatting: 3.1.0(eslint@8.10.0) + eslint-plugin-jsx-a11y: 6.5.1(eslint@8.10.0) + eslint-plugin-node: 11.1.0(eslint@8.10.0) + eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.5.0)(eslint@8.10.0)(prettier@2.8.8) + eslint-plugin-promise: 6.0.0(eslint@8.10.0) + eslint-plugin-react: 7.31.10(eslint@8.10.0) + eslint-plugin-react-hooks: 4.6.0(eslint@8.10.0) + eslint-plugin-sort-class-members: 1.14.1(eslint@8.10.0) jsx-ast-utils: 3.2.2 pkg-dir: 5.0.0 pluralize: 8.0.0 transitivePeerDependencies: - '@babel/core' - - '@types/eslint' - eslint-import-resolver-node - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -5157,17 +5069,18 @@ packages: react-reconciler: 0.28.0(react@18.2.0) dev: true - /@shopify/stylelint-plugin@14.0.0(prettier@3.3.2)(stylelint@16.6.1): - resolution: {integrity: sha512-2URgR6E+G7zUR5VjBxsLhEUwg+U6hNoOJOekuNUswJAvSlWYk38rca78FYDTBRZ2P7JW11vb61ODVEcty9CMaw==, tarball: https://registry.npmjs.org/@shopify/stylelint-plugin/-/stylelint-plugin-14.0.0.tgz} + /@shopify/stylelint-plugin@11.0.1(prettier@2.8.8)(stylelint@14.15.0): + resolution: {integrity: sha512-5QBUaI7uFtXiiRVmH42dUgbKYfoHLc0+9sIaXNvNu2nDLZLxMoXAdj3RNOWJknj4xXETToyBTRJKRasv4CK4iA==} peerDependencies: - stylelint: '>=16.0.0' + stylelint: '>=14.1.0' dependencies: - postcss: 8.4.39 - postcss-scss: 4.0.9(postcss@8.4.39) - stylelint: 16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3) - stylelint-order: 6.0.4(stylelint@16.6.1) - stylelint-prettier: 5.0.0(prettier@3.3.2)(stylelint@16.6.1) - stylelint-scss: 6.3.2(stylelint@16.6.1) + postcss: 8.4.32 + postcss-scss: 4.0.9(postcss@8.4.32) + stylelint: 14.15.0 + stylelint-config-prettier: 9.0.3(stylelint@14.15.0) + stylelint-order: 5.0.0(stylelint@14.15.0) + stylelint-prettier: 2.0.0(prettier@2.8.8)(stylelint@14.15.0) + stylelint-scss: 4.7.0(stylelint@14.15.0) transitivePeerDependencies: - prettier dev: true @@ -5476,7 +5389,7 @@ packages: jscodeshift: 0.15.1(@babel/preset-env@7.23.6) leven: 3.1.0 ora: 5.4.1 - prettier: 3.3.2 + prettier: 3.2.5 prompts: 2.4.2 read-pkg-up: 7.0.1 semver: 7.5.4 @@ -5515,7 +5428,7 @@ packages: globby: 11.1.0 jscodeshift: 0.15.1(@babel/preset-env@7.23.6) lodash: 4.17.21 - prettier: 3.3.2 + prettier: 3.2.5 recast: 0.23.6 tiny-invariant: 1.3.1 transitivePeerDependencies: @@ -6692,7 +6605,6 @@ packages: /@types/parse-json@4.0.0: resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} - dev: true /@types/parse5@5.0.3: resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==} @@ -6883,69 +6795,62 @@ packages: '@types/yargs-parser': 21.0.0 dev: true - /@typescript-eslint/eslint-plugin@7.15.0(@typescript-eslint/parser@7.15.0)(eslint@8.57.0)(typescript@4.9.3): - resolution: {integrity: sha512-uiNHpyjZtFrLwLDpHnzaDlP3Tt6sGMqTCiqmxaN4n4RP0EfYZDODJyddiFDF44Hjwxr5xAcaYxVKm9QKQFJFLA==} - engines: {node: ^18.18.0 || >=20.0.0} + /@typescript-eslint/eslint-plugin@5.56.0(@typescript-eslint/parser@5.56.0)(eslint@8.10.0)(typescript@4.9.3): + resolution: {integrity: sha512-ZNW37Ccl3oMZkzxrYDUX4o7cnuPgU+YrcaYXzsRtLB16I1FR5SHMqga3zGsaSliZADCWo2v8qHWqAYIj8nWCCg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 + '@typescript-eslint/parser': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@eslint-community/regexpp': 4.11.0 - '@typescript-eslint/parser': 7.15.0(eslint@8.57.0)(typescript@4.9.3) - '@typescript-eslint/scope-manager': 7.15.0 - '@typescript-eslint/type-utils': 7.15.0(eslint@8.57.0)(typescript@4.9.3) - '@typescript-eslint/utils': 7.15.0(eslint@8.57.0)(typescript@4.9.3) - '@typescript-eslint/visitor-keys': 7.15.0 - eslint: 8.57.0 - graphemer: 1.4.0 - ignore: 5.3.1 - natural-compare: 1.4.0 - ts-api-utils: 1.3.0(typescript@4.9.3) + '@eslint-community/regexpp': 4.4.1 + '@typescript-eslint/parser': 5.56.0(eslint@8.10.0)(typescript@4.9.3) + '@typescript-eslint/scope-manager': 5.56.0 + '@typescript-eslint/type-utils': 5.56.0(eslint@8.10.0)(typescript@4.9.3) + '@typescript-eslint/utils': 5.56.0(eslint@8.10.0)(typescript@4.9.3) + debug: 4.3.4 + eslint: 8.10.0 + grapheme-splitter: 1.0.4 + ignore: 5.2.0 + natural-compare-lite: 1.4.0 + semver: 7.5.4 + tsutils: 3.21.0(typescript@4.9.3) typescript: 4.9.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@5.56.0(eslint@8.10.0)(typescript@4.9.3): - resolution: {integrity: sha512-sn1OZmBxUsgxMmR8a8U5QM/Wl+tyqlH//jTqCg8daTAmhAk26L2PFhcqPLlYBhYUJMZJK276qLXlHN3a83o2cg==} + /@typescript-eslint/experimental-utils@5.56.0(eslint@8.10.0)(typescript@4.9.3): + resolution: {integrity: sha512-sxWuj0eO5nItmKgZmsBbChVt90EhfkuncDCPbLAVeEJ+SCjXMcZN3AhhNbxed7IeGJ4XwsdL3/FMvD4r+FLqqA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true dependencies: - '@typescript-eslint/scope-manager': 5.56.0 - '@typescript-eslint/types': 5.56.0 - '@typescript-eslint/typescript-estree': 5.56.0(typescript@4.9.3) - debug: 4.3.4 + '@typescript-eslint/utils': 5.56.0(eslint@8.10.0)(typescript@4.9.3) eslint: 8.10.0 - typescript: 4.9.3 transitivePeerDependencies: - supports-color + - typescript dev: true - /@typescript-eslint/parser@7.15.0(eslint@8.57.0)(typescript@4.9.3): - resolution: {integrity: sha512-k9fYuQNnypLFcqORNClRykkGOMOj+pV6V91R4GO/l1FDGwpqmSwoOQrOHo3cGaH63e+D3ZiCAOsuS/D2c99j/A==} - engines: {node: ^18.18.0 || >=20.0.0} + /@typescript-eslint/parser@5.56.0(eslint@8.10.0)(typescript@4.9.3): + resolution: {integrity: sha512-sn1OZmBxUsgxMmR8a8U5QM/Wl+tyqlH//jTqCg8daTAmhAk26L2PFhcqPLlYBhYUJMZJK276qLXlHN3a83o2cg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - eslint: ^8.56.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 7.15.0 - '@typescript-eslint/types': 7.15.0 - '@typescript-eslint/typescript-estree': 7.15.0(typescript@4.9.3) - '@typescript-eslint/visitor-keys': 7.15.0 + '@typescript-eslint/scope-manager': 5.56.0 + '@typescript-eslint/types': 5.56.0 + '@typescript-eslint/typescript-estree': 5.56.0(typescript@4.9.3) debug: 4.3.4 - eslint: 8.57.0 + eslint: 8.10.0 typescript: 4.9.3 transitivePeerDependencies: - supports-color @@ -6967,29 +6872,21 @@ packages: '@typescript-eslint/visitor-keys': 5.62.0 dev: true - /@typescript-eslint/scope-manager@7.15.0: - resolution: {integrity: sha512-Q/1yrF/XbxOTvttNVPihxh1b9fxamjEoz2Os/Pe38OHwxC24CyCqXxGTOdpb4lt6HYtqw9HetA/Rf6gDGaMPlw==} - engines: {node: ^18.18.0 || >=20.0.0} - dependencies: - '@typescript-eslint/types': 7.15.0 - '@typescript-eslint/visitor-keys': 7.15.0 - dev: true - - /@typescript-eslint/type-utils@7.15.0(eslint@8.57.0)(typescript@4.9.3): - resolution: {integrity: sha512-SkgriaeV6PDvpA6253PDVep0qCqgbO1IOBiycjnXsszNTVQe5flN5wR5jiczoEoDEnAqYFSFFc9al9BSGVltkg==} - engines: {node: ^18.18.0 || >=20.0.0} + /@typescript-eslint/type-utils@5.56.0(eslint@8.10.0)(typescript@4.9.3): + resolution: {integrity: sha512-8WxgOgJjWRy6m4xg9KoSHPzBNZeQbGlQOH7l2QEhQID/+YseaFxg5J/DLwWSsi9Axj4e/cCiKx7PVzOq38tY4A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - eslint: ^8.56.0 + eslint: '*' typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 7.15.0(typescript@4.9.3) - '@typescript-eslint/utils': 7.15.0(eslint@8.57.0)(typescript@4.9.3) + '@typescript-eslint/typescript-estree': 5.56.0(typescript@4.9.3) + '@typescript-eslint/utils': 5.56.0(eslint@8.10.0)(typescript@4.9.3) debug: 4.3.4 - eslint: 8.57.0 - ts-api-utils: 1.3.0(typescript@4.9.3) + eslint: 8.10.0 + tsutils: 3.21.0(typescript@4.9.3) typescript: 4.9.3 transitivePeerDependencies: - supports-color @@ -7005,11 +6902,6 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/types@7.15.0: - resolution: {integrity: sha512-aV1+B1+ySXbQH0pLK0rx66I3IkiZNidYobyfn0WFsdGhSXw+P3YOqeTq5GED458SfB24tg+ux3S+9g118hjlTw==} - engines: {node: ^18.18.0 || >=20.0.0} - dev: true - /@typescript-eslint/typescript-estree@5.56.0(typescript@4.9.3): resolution: {integrity: sha512-41CH/GncsLXOJi0jb74SnC7jVPWeVJ0pxQj8bOjH1h2O26jXN3YHKDT1ejkVz5YeTEQPeLCCRY0U2r68tfNOcg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -7052,41 +6944,39 @@ packages: - supports-color dev: true - /@typescript-eslint/typescript-estree@7.15.0(typescript@4.9.3): - resolution: {integrity: sha512-gjyB/rHAopL/XxfmYThQbXbzRMGhZzGw6KpcMbfe8Q3nNQKStpxnUKeXb0KiN/fFDR42Z43szs6rY7eHk0zdGQ==} - engines: {node: ^18.18.0 || >=20.0.0} + /@typescript-eslint/utils@5.56.0(eslint@8.10.0)(typescript@4.9.3): + resolution: {integrity: sha512-XhZDVdLnUJNtbzaJeDSCIYaM+Tgr59gZGbFuELgF7m0IY03PlciidS7UQNKLE0+WpUTn1GlycEr6Ivb/afjbhA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@typescript-eslint/types': 7.15.0 - '@typescript-eslint/visitor-keys': 7.15.0 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.2 - ts-api-utils: 1.3.0(typescript@4.9.3) - typescript: 4.9.3 + '@eslint-community/eslint-utils': 4.3.0(eslint@8.10.0) + '@types/json-schema': 7.0.11 + '@types/semver': 7.5.6 + '@typescript-eslint/scope-manager': 5.56.0 + '@typescript-eslint/types': 5.56.0 + '@typescript-eslint/typescript-estree': 5.56.0(typescript@4.9.3) + eslint: 8.10.0 + eslint-scope: 5.1.1 + semver: 7.5.4 transitivePeerDependencies: - supports-color + - typescript dev: true - /@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@4.9.3): + /@typescript-eslint/utils@5.62.0(eslint@8.10.0)(typescript@4.9.3): resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.3.0(eslint@8.57.0) + '@eslint-community/eslint-utils': 4.3.0(eslint@8.10.0) '@types/json-schema': 7.0.11 '@types/semver': 7.5.6 '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.3) - eslint: 8.57.0 + eslint: 8.10.0 eslint-scope: 5.1.1 semver: 7.5.4 transitivePeerDependencies: @@ -7094,22 +6984,6 @@ packages: - typescript dev: true - /@typescript-eslint/utils@7.15.0(eslint@8.57.0)(typescript@4.9.3): - resolution: {integrity: sha512-hfDMDqaqOqsUVGiEPSMLR/AjTSCsmJwjpKkYQRo1FNbmW4tBwBspYDwO9eh7sKSTwMQgBw9/T4DHudPaqshRWA==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@typescript-eslint/scope-manager': 7.15.0 - '@typescript-eslint/types': 7.15.0 - '@typescript-eslint/typescript-estree': 7.15.0(typescript@4.9.3) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - /@typescript-eslint/visitor-keys@5.56.0: resolution: {integrity: sha512-1mFdED7u5bZpX6Xxf5N9U2c18sb+8EvU3tyOIj6LQZ5OOvnmj8BVeNNP603OFPm5KkS1a7IvCIcwrdHXaEMG/Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -7126,18 +7000,6 @@ packages: eslint-visitor-keys: 3.3.0 dev: true - /@typescript-eslint/visitor-keys@7.15.0: - resolution: {integrity: sha512-Hqgy/ETgpt2L5xueA/zHHIl4fJI2O4XUE9l4+OIfbJIRSnTJb/QscncdqqZzofQegIJugRIF57OJea1khw2SDw==} - engines: {node: ^18.18.0 || >=20.0.0} - dependencies: - '@typescript-eslint/types': 7.15.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@ungap/structured-clone@1.2.0: - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - dev: true - /@use-it/event-listener@0.1.7(react@18.2.0): resolution: {integrity: sha512-hgfExDzUU9uTRTPDCpw2s9jWTxcxmpJya3fK5ADpf5VDpSy8WYwY/kh28XE0tUcbsljeP8wfan48QvAQTSSa3Q==} peerDependencies: @@ -7811,6 +7673,7 @@ packages: /ansi-regex@6.0.1: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} + dev: true /ansi-styles@2.2.1: resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==} @@ -7951,14 +7814,6 @@ packages: is-array-buffer: 3.0.2 dev: true - /array-buffer-byte-length@1.0.1: - resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - is-array-buffer: 3.0.4 - dev: true - /array-differ@1.0.0: resolution: {integrity: sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==} engines: {node: '>=0.10.0'} @@ -7993,18 +7848,6 @@ packages: is-string: 1.0.7 dev: true - /array-includes@3.1.8: - resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - is-string: 1.0.7 - dev: true - /array-slice@1.1.0: resolution: {integrity: sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==} engines: {node: '>=0.10.0'} @@ -8030,30 +7873,6 @@ packages: resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==} engines: {node: '>=0.10.0'} - /array.prototype.findlast@1.2.5: - resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - es-shim-unscopables: 1.0.2 - dev: true - - /array.prototype.findlastindex@1.2.5: - resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - es-shim-unscopables: 1.0.2 - dev: true - /array.prototype.flat@1.3.1: resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} engines: {node: '>= 0.4'} @@ -8064,16 +7883,6 @@ packages: es-shim-unscopables: 1.0.0 dev: true - /array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.0 - dev: true - /array.prototype.flatmap@1.3.1: resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} engines: {node: '>= 0.4'} @@ -8084,50 +7893,6 @@ packages: es-shim-unscopables: 1.0.0 dev: true - /array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.0 - dev: true - - /array.prototype.toreversed@1.1.2: - resolution: {integrity: sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.0 - dev: true - - /array.prototype.tosorted@1.1.4: - resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-shim-unscopables: 1.0.2 - dev: true - - /arraybuffer.prototype.slice@1.0.3: - resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.1 - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - get-intrinsic: 1.2.4 - is-array-buffer: 3.0.4 - is-shared-array-buffer: 1.0.3 - dev: true - /arrify@1.0.1: resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} engines: {node: '>=0.10.0'} @@ -8173,10 +7938,6 @@ packages: resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} dev: true - /ast-types-flow@0.0.8: - resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} - dev: true - /ast-types@0.14.2: resolution: {integrity: sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==} engines: {node: '>=4'} @@ -8261,11 +8022,6 @@ packages: engines: {node: '>=4'} dev: true - /axe-core@4.9.1: - resolution: {integrity: sha512-QbUdXJVTpvUTHU7871ppZkdOLBeGUKBQWHkHrvN2V9IQWGMt61zf3B45BtzjxEJzYuj0JBjBZP/hmYS/R9pmAw==} - engines: {node: '>=4'} - dev: true - /axe-html-reporter@2.2.3(axe-core@4.9.0): resolution: {integrity: sha512-io8aCEt4fJvv43W+33n3zEa8rdplH5Ti2v5fOnth3GBKLhLHarNs7jj46xGfpnGnpaNrz23/tXPHC3HbwTzwwA==} engines: {node: '>=8.9.0'} @@ -8314,12 +8070,6 @@ packages: resolution: {integrity: sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==} dev: true - /axobject-query@3.1.1: - resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==} - dependencies: - deep-equal: 2.2.3 - dev: true - /azure-devops-node-api@11.1.1: resolution: {integrity: sha512-XDG91XzLZ15reP12s3jFkKS8oiagSICjnLwxEYieme4+4h3ZveFOFRA4iYIG40RyHXsiI0mefFYYMFIJbMpWcg==} dependencies: @@ -8822,12 +8572,6 @@ packages: dependencies: fill-range: 7.0.1 - /braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - dependencies: - fill-range: 7.1.1 - /breakword@1.0.5: resolution: {integrity: sha512-ex5W9DoOQ/LUEU3PMdLs9ua/CYZl1678NUkKOdUSi8Aw5F1idieaiRURCBFJCwVcrD1J8Iy3vfWSloaMwO2qFg==} dependencies: @@ -10012,22 +9756,6 @@ packages: parse-json: 5.2.0 path-type: 4.0.0 yaml: 1.10.2 - dev: true - - /cosmiconfig@9.0.0(typescript@4.9.3): - resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=4.9.5' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - env-paths: 2.2.1 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - parse-json: 5.2.0 - typescript: 4.9.3 /create-ecdh@4.0.4: resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==} @@ -10161,18 +9889,18 @@ packages: engines: {node: '>=4'} dev: true - /css-declaration-sorter@6.2.2(postcss@8.4.39): + /css-declaration-sorter@6.2.2(postcss@8.4.32): resolution: {integrity: sha512-Ufadglr88ZLsrvS11gjeu/40Lw74D9Am/Jpr3LlYm5Q4ZP5KdlUhG+6u2EjyXeZcxmZ2h1ebCKngDjolpeLHpg==} engines: {node: ^10 || ^12 || >=14} peerDependencies: postcss: ^8.0.9 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true - /css-functions-list@3.2.2: - resolution: {integrity: sha512-c+N0v6wbKVxTu5gOBBFkr9BEdBWaqqjQeiJ8QvSRIJOf+UxlJh930m8e6/WNeODIK0mYLFkoONrnj16i2EcvfQ==} - engines: {node: '>=12 || >=16'} + /css-functions-list@3.1.0: + resolution: {integrity: sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w==} + engines: {node: '>=12.22'} /css-in-js-utils@2.0.1: resolution: {integrity: sha512-PJF0SpJT+WdbVVt0AOYp9C8GnuruRlL/UFW7932nLWmFLQTaWEzTBQEx7/hn4BuV+WON75iAViSUJLiU3PKbpA==} @@ -10249,13 +9977,6 @@ packages: source-map: 0.6.1 dev: true - /css-tree@2.3.1: - resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} - dependencies: - mdn-data: 2.0.30 - source-map-js: 1.0.2 - /css-what@5.1.0: resolution: {integrity: sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==} engines: {node: '>= 6'} @@ -10275,62 +9996,62 @@ packages: engines: {node: '>=4'} hasBin: true - /cssnano-preset-default@5.2.7(postcss@8.4.39): + /cssnano-preset-default@5.2.7(postcss@8.4.32): resolution: {integrity: sha512-JiKP38ymZQK+zVKevphPzNSGHSlTI+AOwlasoSRtSVMUU285O7/6uZyd5NbW92ZHp41m0sSHe6JoZosakj63uA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - css-declaration-sorter: 6.2.2(postcss@8.4.39) - cssnano-utils: 3.1.0(postcss@8.4.39) - postcss: 8.4.39 - postcss-calc: 8.2.4(postcss@8.4.39) - postcss-colormin: 5.3.0(postcss@8.4.39) - postcss-convert-values: 5.1.0(postcss@8.4.39) - postcss-discard-comments: 5.1.1(postcss@8.4.39) - postcss-discard-duplicates: 5.1.0(postcss@8.4.39) - postcss-discard-empty: 5.1.1(postcss@8.4.39) - postcss-discard-overridden: 5.1.0(postcss@8.4.39) - postcss-merge-longhand: 5.1.4(postcss@8.4.39) - postcss-merge-rules: 5.1.1(postcss@8.4.39) - postcss-minify-font-values: 5.1.0(postcss@8.4.39) - postcss-minify-gradients: 5.1.1(postcss@8.4.39) - postcss-minify-params: 5.1.2(postcss@8.4.39) - postcss-minify-selectors: 5.2.0(postcss@8.4.39) - postcss-normalize-charset: 5.1.0(postcss@8.4.39) - postcss-normalize-display-values: 5.1.0(postcss@8.4.39) - postcss-normalize-positions: 5.1.0(postcss@8.4.39) - postcss-normalize-repeat-style: 5.1.0(postcss@8.4.39) - postcss-normalize-string: 5.1.0(postcss@8.4.39) - postcss-normalize-timing-functions: 5.1.0(postcss@8.4.39) - postcss-normalize-unicode: 5.1.0(postcss@8.4.39) - postcss-normalize-url: 5.1.0(postcss@8.4.39) - postcss-normalize-whitespace: 5.1.1(postcss@8.4.39) - postcss-ordered-values: 5.1.1(postcss@8.4.39) - postcss-reduce-initial: 5.1.0(postcss@8.4.39) - postcss-reduce-transforms: 5.1.0(postcss@8.4.39) - postcss-svgo: 5.1.0(postcss@8.4.39) - postcss-unique-selectors: 5.1.1(postcss@8.4.39) - dev: true - - /cssnano-utils@3.1.0(postcss@8.4.39): + css-declaration-sorter: 6.2.2(postcss@8.4.32) + cssnano-utils: 3.1.0(postcss@8.4.32) + postcss: 8.4.32 + postcss-calc: 8.2.4(postcss@8.4.32) + postcss-colormin: 5.3.0(postcss@8.4.32) + postcss-convert-values: 5.1.0(postcss@8.4.32) + postcss-discard-comments: 5.1.1(postcss@8.4.32) + postcss-discard-duplicates: 5.1.0(postcss@8.4.32) + postcss-discard-empty: 5.1.1(postcss@8.4.32) + postcss-discard-overridden: 5.1.0(postcss@8.4.32) + postcss-merge-longhand: 5.1.4(postcss@8.4.32) + postcss-merge-rules: 5.1.1(postcss@8.4.32) + postcss-minify-font-values: 5.1.0(postcss@8.4.32) + postcss-minify-gradients: 5.1.1(postcss@8.4.32) + postcss-minify-params: 5.1.2(postcss@8.4.32) + postcss-minify-selectors: 5.2.0(postcss@8.4.32) + postcss-normalize-charset: 5.1.0(postcss@8.4.32) + postcss-normalize-display-values: 5.1.0(postcss@8.4.32) + postcss-normalize-positions: 5.1.0(postcss@8.4.32) + postcss-normalize-repeat-style: 5.1.0(postcss@8.4.32) + postcss-normalize-string: 5.1.0(postcss@8.4.32) + postcss-normalize-timing-functions: 5.1.0(postcss@8.4.32) + postcss-normalize-unicode: 5.1.0(postcss@8.4.32) + postcss-normalize-url: 5.1.0(postcss@8.4.32) + postcss-normalize-whitespace: 5.1.1(postcss@8.4.32) + postcss-ordered-values: 5.1.1(postcss@8.4.32) + postcss-reduce-initial: 5.1.0(postcss@8.4.32) + postcss-reduce-transforms: 5.1.0(postcss@8.4.32) + postcss-svgo: 5.1.0(postcss@8.4.32) + postcss-unique-selectors: 5.1.1(postcss@8.4.32) + dev: true + + /cssnano-utils@3.1.0(postcss@8.4.32): resolution: {integrity: sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true - /cssnano@5.1.7(postcss@8.4.39): + /cssnano@5.1.7(postcss@8.4.32): resolution: {integrity: sha512-pVsUV6LcTXif7lvKKW9ZrmX+rGRzxkEdJuVJcp5ftUjWITgwam5LMZOgaTvUrWPkcORBey6he7JKb4XAJvrpKg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-preset-default: 5.2.7(postcss@8.4.39) + cssnano-preset-default: 5.2.7(postcss@8.4.32) lilconfig: 2.0.5 - postcss: 8.4.39 + postcss: 8.4.32 yaml: 1.10.2 dev: true @@ -10427,40 +10148,13 @@ packages: whatwg-url: 11.0.0 dev: true - /data-view-buffer@1.0.1: - resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - is-data-view: 1.0.1 + /dataloader@1.4.0: + resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} dev: true - /data-view-byte-length@1.0.1: - resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - is-data-view: 1.0.1 - dev: true - - /data-view-byte-offset@1.0.0: - resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - is-data-view: 1.0.1 - dev: true - - /dataloader@1.4.0: - resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} - dev: true - - /datauri@3.0.0: - resolution: {integrity: sha512-NeDFuUPV1YCpCn8MUIcDk1QnuyenUHs7f4Q5P0n9FFA0neKFrfEH9esR+YMW95BplbYfdmjbs0Pl/ZGAaM2QHQ==} - engines: {node: '>= 8'} + /datauri@3.0.0: + resolution: {integrity: sha512-NeDFuUPV1YCpCn8MUIcDk1QnuyenUHs7f4Q5P0n9FFA0neKFrfEH9esR+YMW95BplbYfdmjbs0Pl/ZGAaM2QHQ==} + engines: {node: '>= 8'} dependencies: image-size: 0.8.3 mimer: 1.1.0 @@ -11150,10 +10844,6 @@ packages: engines: {node: '>=0.12'} dev: true - /env-paths@2.2.1: - resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} - engines: {node: '>=6'} - /envinfo@7.11.0: resolution: {integrity: sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg==} engines: {node: '>=4'} @@ -11227,58 +10917,6 @@ packages: which-typed-array: 1.1.9 dev: true - /es-abstract@1.23.3: - resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.1 - arraybuffer.prototype.slice: 1.0.3 - available-typed-arrays: 1.0.7 - call-bind: 1.0.7 - data-view-buffer: 1.0.1 - data-view-byte-length: 1.0.1 - data-view-byte-offset: 1.0.0 - es-define-property: 1.0.0 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - es-set-tostringtag: 2.0.3 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.4 - get-symbol-description: 1.0.2 - globalthis: 1.0.3 - gopd: 1.0.1 - has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 - hasown: 2.0.2 - internal-slot: 1.0.7 - is-array-buffer: 3.0.4 - is-callable: 1.2.7 - is-data-view: 1.0.1 - is-negative-zero: 2.0.3 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.3 - is-string: 1.0.7 - is-typed-array: 1.1.13 - is-weakref: 1.0.2 - object-inspect: 1.13.2 - object-keys: 1.1.1 - object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 - safe-array-concat: 1.1.2 - safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.9 - string.prototype.trimend: 1.0.8 - string.prototype.trimstart: 1.0.8 - typed-array-buffer: 1.0.2 - typed-array-byte-length: 1.0.1 - typed-array-byte-offset: 1.0.2 - typed-array-length: 1.0.6 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.15 - dev: true - /es-define-property@1.0.0: resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} engines: {node: '>= 0.4'} @@ -11305,37 +10943,10 @@ packages: stop-iteration-iterator: 1.0.0 dev: true - /es-iterator-helpers@1.0.19: - resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-set-tostringtag: 2.0.3 - function-bind: 1.1.2 - get-intrinsic: 1.2.4 - globalthis: 1.0.3 - has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 - internal-slot: 1.0.7 - iterator.prototype: 1.1.2 - safe-array-concat: 1.1.2 - dev: true - /es-module-lexer@0.9.3: resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} dev: true - /es-object-atoms@1.0.0: - resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - dev: true - /es-set-tostringtag@2.0.1: resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} engines: {node: '>= 0.4'} @@ -11345,27 +10956,12 @@ packages: has-tostringtag: 1.0.0 dev: true - /es-set-tostringtag@2.0.3: - resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.2.4 - has-tostringtag: 1.0.2 - hasown: 2.0.2 - dev: true - /es-shim-unscopables@1.0.0: resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} dependencies: has: 1.0.3 dev: true - /es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - dependencies: - hasown: 2.0.1 - dev: true - /es-to-primitive@1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} engines: {node: '>= 0.4'} @@ -11493,7 +11089,7 @@ packages: eslint: 8.10.0 eslint-import-resolver-node: 0.3.7 eslint-import-resolver-typescript: 2.7.1(eslint-plugin-import@2.27.5)(eslint@8.10.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@7.15.0)(eslint@8.10.0) + eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.10.0) eslint-plugin-jsx-a11y: 6.5.1(eslint@8.10.0) eslint-plugin-react: 7.31.10(eslint@8.10.0) eslint-plugin-react-hooks: 4.6.0(eslint@8.10.0) @@ -11503,13 +11099,13 @@ packages: - supports-color dev: true - /eslint-config-prettier@9.1.0(eslint@8.57.0): - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + /eslint-config-prettier@8.5.0(eslint@8.10.0): + resolution: {integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.57.0 + eslint: 8.10.0 dev: true /eslint-import-resolver-node@0.3.7: @@ -11522,16 +11118,6 @@ packages: - supports-color dev: true - /eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - dependencies: - debug: 3.2.7 - is-core-module: 2.13.1 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - dev: true - /eslint-import-resolver-typescript@2.7.1(eslint-plugin-import@2.27.5)(eslint@8.10.0): resolution: {integrity: sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==} engines: {node: '>=4'} @@ -11541,7 +11127,7 @@ packages: dependencies: debug: 4.3.4 eslint: 8.10.0 - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@7.15.0)(eslint@8.10.0) + eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.10.0) glob: 7.2.0 is-glob: 4.0.3 resolve: 1.22.8 @@ -11550,7 +11136,7 @@ packages: - supports-color dev: true - /eslint-module-utils@2.7.4(@typescript-eslint/parser@7.15.0)(eslint-import-resolver-node@0.3.7)(eslint@8.10.0): + /eslint-module-utils@2.7.4(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@2.7.1)(eslint@8.10.0): resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==} engines: {node: '>=4'} peerDependencies: @@ -11571,66 +11157,38 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 7.15.0(eslint@8.57.0)(typescript@4.9.3) + '@typescript-eslint/parser': 5.56.0(eslint@8.10.0)(typescript@4.9.3) debug: 3.2.7 eslint: 8.10.0 eslint-import-resolver-node: 0.3.7 + eslint-import-resolver-typescript: 2.7.1(eslint-plugin-import@2.27.5)(eslint@8.10.0) transitivePeerDependencies: - supports-color dev: true - /eslint-module-utils@2.8.1(@typescript-eslint/parser@7.15.0)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): - resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - dependencies: - '@typescript-eslint/parser': 7.15.0(eslint@8.57.0)(typescript@4.9.3) - debug: 3.2.7 - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - transitivePeerDependencies: - - supports-color - dev: true - - /eslint-plugin-es@3.0.1(eslint@8.57.0): + /eslint-plugin-es@3.0.1(eslint@8.10.0): resolution: {integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==} engines: {node: '>=8.10.0'} peerDependencies: eslint: '>=4.19.1' dependencies: - eslint: 8.57.0 + eslint: 8.10.0 eslint-utils: 2.1.0 regexpp: 3.2.0 dev: true - /eslint-plugin-eslint-comments@3.2.0(eslint@8.57.0): + /eslint-plugin-eslint-comments@3.2.0(eslint@8.10.0): resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} engines: {node: '>=6.5.0'} peerDependencies: eslint: '>=4.19.1' dependencies: escape-string-regexp: 1.0.5 - eslint: 8.57.0 - ignore: 5.3.1 + eslint: 8.10.0 + ignore: 5.2.0 dev: true - /eslint-plugin-import@2.27.5(@typescript-eslint/parser@7.15.0)(eslint@8.10.0): + /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.10.0): resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} engines: {node: '>=4'} peerDependencies: @@ -11640,7 +11198,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 7.15.0(eslint@8.57.0)(typescript@4.9.3) + '@typescript-eslint/parser': 5.56.0(eslint@8.10.0)(typescript@4.9.3) array-includes: 3.1.6 array.prototype.flat: 1.3.1 array.prototype.flatmap: 1.3.1 @@ -11648,7 +11206,7 @@ packages: doctrine: 2.1.0 eslint: 8.10.0 eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.7.4(@typescript-eslint/parser@7.15.0)(eslint-import-resolver-node@0.3.7)(eslint@8.10.0) + eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@2.7.1)(eslint@8.10.0) has: 1.0.3 is-core-module: 2.13.1 is-glob: 4.0.3 @@ -11663,56 +11221,21 @@ packages: - supports-color dev: true - /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.15.0)(eslint@8.57.0): - resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - dependencies: - '@typescript-eslint/parser': 7.15.0(eslint@8.57.0)(typescript@4.9.3) - array-includes: 3.1.8 - array.prototype.findlastindex: 1.2.5 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.57.0 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.15.0)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) - hasown: 2.0.1 - is-core-module: 2.13.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.8 - object.groupby: 1.0.3 - object.values: 1.2.0 - semver: 6.3.1 - tsconfig-paths: 3.15.0 - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-plugin-jest-formatting@3.1.0(eslint@8.57.0): + /eslint-plugin-jest-formatting@3.1.0(eslint@8.10.0): resolution: {integrity: sha512-XyysraZ1JSgGbLSDxjj5HzKKh0glgWf+7CkqxbTqb7zEhW7X2WHo5SBQ8cGhnszKN+2Lj3/oevBlHNbHezoc/A==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=0.8.0' dependencies: - eslint: 8.57.0 + eslint: 8.10.0 dev: true - /eslint-plugin-jest@28.6.0(@typescript-eslint/eslint-plugin@7.15.0)(eslint@8.57.0)(jest@29.7.0)(typescript@4.9.3): - resolution: {integrity: sha512-YG28E1/MIKwnz+e2H7VwYPzHUYU4aMa19w0yGcwXnnmJH6EfgHahTJ2un3IyraUxNfnz/KUhJAFXNNwWPo12tg==} - engines: {node: ^16.10.0 || ^18.12.0 || >=20.0.0} + /eslint-plugin-jest@25.7.0(@typescript-eslint/eslint-plugin@5.56.0)(eslint@8.10.0)(jest@29.7.0)(typescript@4.9.3): + resolution: {integrity: sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} peerDependencies: - '@typescript-eslint/eslint-plugin': ^6.0.0 || ^7.0.0 - eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + '@typescript-eslint/eslint-plugin': ^4.0.0 || ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 jest: '*' peerDependenciesMeta: '@typescript-eslint/eslint-plugin': @@ -11720,9 +11243,9 @@ packages: jest: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 7.15.0(@typescript-eslint/parser@7.15.0)(eslint@8.57.0)(typescript@4.9.3) - '@typescript-eslint/utils': 7.15.0(eslint@8.57.0)(typescript@4.9.3) - eslint: 8.57.0 + '@typescript-eslint/eslint-plugin': 5.56.0(@typescript-eslint/parser@5.56.0)(eslint@8.10.0)(typescript@4.9.3) + '@typescript-eslint/experimental-utils': 5.56.0(eslint@8.10.0)(typescript@4.9.3) + eslint: 8.10.0 jest: 29.7.0(@types/node@20.12.5)(ts-node@10.7.0) transitivePeerDependencies: - supports-color @@ -11750,74 +11273,45 @@ packages: minimatch: 3.1.2 dev: true - /eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0): - resolution: {integrity: sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==} - engines: {node: '>=4.0'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - dependencies: - aria-query: 5.1.3 - array-includes: 3.1.8 - array.prototype.flatmap: 1.3.2 - ast-types-flow: 0.0.8 - axe-core: 4.9.1 - axobject-query: 3.1.1 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - es-iterator-helpers: 1.0.19 - eslint: 8.57.0 - hasown: 2.0.2 - jsx-ast-utils: 3.3.5 - language-tags: 1.0.9 - minimatch: 3.1.2 - object.fromentries: 2.0.8 - safe-regex-test: 1.0.3 - string.prototype.includes: 2.0.0 - dev: true - - /eslint-plugin-node@11.1.0(eslint@8.57.0): + /eslint-plugin-node@11.1.0(eslint@8.10.0): resolution: {integrity: sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==} engines: {node: '>=8.10.0'} peerDependencies: eslint: '>=5.16.0' dependencies: - eslint: 8.57.0 - eslint-plugin-es: 3.0.1(eslint@8.57.0) + eslint: 8.10.0 + eslint-plugin-es: 3.0.1(eslint@8.10.0) eslint-utils: 2.1.0 - ignore: 5.3.1 + ignore: 5.2.0 minimatch: 3.1.2 resolve: 1.22.8 semver: 6.3.1 dev: true - /eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.3.2): - resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==} - engines: {node: ^14.18.0 || >=16.0.0} + /eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.5.0)(eslint@8.10.0)(prettier@2.8.8): + resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} + engines: {node: '>=12.0.0'} peerDependencies: - '@types/eslint': '>=8.0.0' - eslint: '>=8.0.0' + eslint: '>=7.28.0' eslint-config-prettier: '*' - prettier: '>=3.0.0' + prettier: '>=2.0.0' peerDependenciesMeta: - '@types/eslint': - optional: true eslint-config-prettier: optional: true dependencies: - eslint: 8.57.0 - eslint-config-prettier: 9.1.0(eslint@8.57.0) - prettier: 3.3.2 + eslint: 8.10.0 + eslint-config-prettier: 8.5.0(eslint@8.10.0) + prettier: 2.8.8 prettier-linter-helpers: 1.0.0 - synckit: 0.8.8 dev: true - /eslint-plugin-promise@6.4.0(eslint@8.57.0): - resolution: {integrity: sha512-/KWWRaD3fGkVCZsdR0RU53PSthFmoHVhZl+y9+6DqeDLSikLdlUVpVEAmI6iCRR5QyOjBYBqHZV/bdv4DJ4Gtw==} + /eslint-plugin-promise@6.0.0(eslint@8.10.0): + resolution: {integrity: sha512-7GPezalm5Bfi/E22PnQxDWH2iW9GTvAlUNTztemeHb6c1BniSyoeTrM87JkC0wYdi6aQrZX9p2qEiAno8aTcbw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + eslint: ^7.0.0 || ^8.0.0 dependencies: - eslint: 8.57.0 + eslint: 8.10.0 dev: true /eslint-plugin-react-hooks@4.6.0(eslint@8.10.0): @@ -11829,15 +11323,6 @@ packages: eslint: 8.10.0 dev: true - /eslint-plugin-react-hooks@4.6.2(eslint@8.57.0): - resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - dependencies: - eslint: 8.57.0 - dev: true - /eslint-plugin-react@7.31.10(eslint@8.10.0): resolution: {integrity: sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==} engines: {node: '>=4'} @@ -11861,51 +11346,24 @@ packages: string.prototype.matchall: 4.0.7 dev: true - /eslint-plugin-react@7.34.3(eslint@8.57.0): - resolution: {integrity: sha512-aoW4MV891jkUulwDApQbPYTVZmeuSyFrudpbTAQuj5Fv8VL+o6df2xIGpw8B0hPjAaih1/Fb0om9grCdyFYemA==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - dependencies: - array-includes: 3.1.8 - array.prototype.findlast: 1.2.5 - array.prototype.flatmap: 1.3.2 - array.prototype.toreversed: 1.1.2 - array.prototype.tosorted: 1.1.4 - doctrine: 2.1.0 - es-iterator-helpers: 1.0.19 - eslint: 8.57.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.2.2 - minimatch: 3.1.2 - object.entries: 1.1.8 - object.fromentries: 2.0.8 - object.hasown: 1.1.4 - object.values: 1.2.0 - prop-types: 15.8.1 - resolve: 2.0.0-next.5 - semver: 6.3.1 - string.prototype.matchall: 4.0.11 - dev: true - - /eslint-plugin-sort-class-members@1.20.0(eslint@8.57.0): - resolution: {integrity: sha512-xNaik4GQ/pRwd1soIVI28HEXZbrWoLR5krau2+E8YcHj7N09UviPg5mYhf/rELG29bIFJdXDOFJazN90+luMOw==} + /eslint-plugin-sort-class-members@1.14.1(eslint@8.10.0): + resolution: {integrity: sha512-/Q/cm3h4N9DBNYvJMQMhluucSmr3Yydr9U0BgGcXUQe/rgWdXKSymZ5Ewcf4vmAG0bbTmAYmekuMnYYrqlu9Rg==} engines: {node: '>=4.0.0'} peerDependencies: eslint: '>=0.8.0' dependencies: - eslint: 8.57.0 + eslint: 8.10.0 dev: true - /eslint-plugin-storybook@0.8.0(eslint@8.57.0)(typescript@4.9.3): + /eslint-plugin-storybook@0.8.0(eslint@8.10.0)(typescript@4.9.3): resolution: {integrity: sha512-CZeVO5EzmPY7qghO2t64oaFM+8FTaD4uzOEjHKp516exyTKo+skKAL9GI3QALS2BXhyALJjNtwbmr1XinGE8bA==} engines: {node: '>= 18'} peerDependencies: eslint: '>=6' dependencies: '@storybook/csf': 0.0.1 - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@4.9.3) - eslint: 8.57.0 + '@typescript-eslint/utils': 5.62.0(eslint@8.10.0)(typescript@4.9.3) + eslint: 8.10.0 requireindex: 1.2.0 ts-dedent: 2.2.0 transitivePeerDependencies: @@ -11942,14 +11400,6 @@ packages: estraverse: 5.3.0 dev: true - /eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - dev: true - /eslint-utils@2.1.0: resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} engines: {node: '>=6'} @@ -11982,11 +11432,6 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /eslint@8.10.0: resolution: {integrity: sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -12031,53 +11476,6 @@ packages: - supports-color dev: true - /eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - dependencies: - '@eslint-community/eslint-utils': 4.3.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.11.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.24.0 - graphemer: 1.4.0 - ignore: 5.3.1 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.4 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - dev: true - /espree@9.3.1: resolution: {integrity: sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -12087,15 +11485,6 @@ packages: eslint-visitor-keys: 3.3.0 dev: true - /espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - acorn: 8.11.2 - acorn-jsx: 5.3.2(acorn@8.11.2) - eslint-visitor-keys: 3.4.3 - dev: true - /esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} @@ -12108,13 +11497,6 @@ packages: estraverse: 5.3.0 dev: true - /esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} - engines: {node: '>=0.10'} - dependencies: - estraverse: 5.3.0 - dev: true - /esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} engines: {node: '>=4.0'} @@ -12460,16 +11842,6 @@ packages: merge2: 1.4.1 micromatch: 4.0.5 - /fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.7 - /fast-json-parse@1.0.3: resolution: {integrity: sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==} dev: false @@ -12584,13 +11956,6 @@ packages: engines: {node: ^10.12.0 || >=12.0.0} dependencies: flat-cache: 3.0.4 - dev: true - - /file-entry-cache@9.0.0: - resolution: {integrity: sha512-6MgEugi8p2tiUhqO7GnPsmbCCzj0YRCwwaTbpGRyKZesjRSzkqkAE9fPp7V2yMs5hwfgbQLgdvSSkGNg1s5Uvw==} - engines: {node: '>=18'} - dependencies: - flat-cache: 5.0.0 /file-loader@6.2.0(webpack@4.46.0): resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} @@ -12647,12 +12012,6 @@ packages: dependencies: to-regex-range: 5.0.1 - /fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - dependencies: - to-regex-range: 5.0.1 - /filter-obj@1.1.0: resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==} engines: {node: '>=0.10.0'} @@ -12795,21 +12154,9 @@ packages: dependencies: flatted: 3.2.5 rimraf: 3.0.2 - dev: true - - /flat-cache@5.0.0: - resolution: {integrity: sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==} - engines: {node: '>=18'} - dependencies: - flatted: 3.3.1 - keyv: 4.5.4 /flatted@3.2.5: resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==} - dev: true - - /flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} /flow-parser@0.183.0: resolution: {integrity: sha512-2e/aIZIM7iJpHCBxpqdXetYYoO3YQEJzA7M8v5bhWhXCu+lIfkeSfOWycWW0rhlnJyjMftbmwn6B2eenKeGlag==} @@ -13062,16 +12409,6 @@ packages: functions-have-names: 1.2.3 dev: true - /function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - functions-have-names: 1.2.3 - dev: true - /functional-red-black-tree@1.0.1: resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==} dev: true @@ -13198,15 +12535,6 @@ packages: get-intrinsic: 1.2.0 dev: true - /get-symbol-description@1.0.2: - resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - get-intrinsic: 1.2.4 - dev: true - /get-value@2.0.6: resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} engines: {node: '>=0.10.0'} @@ -13415,13 +12743,6 @@ packages: type-fest: 0.20.2 dev: true - /globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - dependencies: - type-fest: 0.20.2 - dev: true - /globalthis@1.0.3: resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} engines: {node: '>= 0.4'} @@ -13458,7 +12779,7 @@ packages: dependencies: dir-glob: 3.0.1 fast-glob: 3.2.12 - ignore: 5.3.1 + ignore: 5.2.0 merge2: 1.4.1 slash: 4.0.0 dev: true @@ -13516,10 +12837,6 @@ packages: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: true - /graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - dev: true - /gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} @@ -13605,11 +12922,6 @@ packages: 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'} @@ -13690,13 +13002,6 @@ packages: dependencies: function-bind: 1.1.2 - /hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - dependencies: - function-bind: 1.1.2 - dev: true - /hast-util-from-parse5@6.0.1: resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==} dependencies: @@ -13899,11 +13204,6 @@ packages: /html-tags@3.2.0: resolution: {integrity: sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==} engines: {node: '>=8'} - dev: true - - /html-tags@3.3.1: - resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} - engines: {node: '>=8'} /html-webpack-plugin@5.5.0(webpack@5.76.0): resolution: {integrity: sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==} @@ -14163,10 +13463,6 @@ packages: resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} engines: {node: '>= 4'} - /ignore@5.3.1: - resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} - engines: {node: '>= 4'} - /image-size@0.8.3: resolution: {integrity: sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==} engines: {node: '>=6.9.0'} @@ -14202,6 +13498,10 @@ packages: engines: {node: '>=4'} dev: false + /import-lazy@4.0.0: + resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} + engines: {node: '>=8'} + /import-local@3.1.0: resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} engines: {node: '>=8'} @@ -14366,15 +13666,6 @@ packages: side-channel: 1.0.4 dev: true - /internal-slot@1.0.7: - resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} - engines: {node: '>= 0.4'} - dependencies: - es-errors: 1.3.0 - hasown: 2.0.1 - side-channel: 1.0.6 - dev: true - /interpret@2.2.0: resolution: {integrity: sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==} engines: {node: '>= 0.10'} @@ -14461,14 +13752,6 @@ packages: is-typed-array: 1.1.10 dev: true - /is-array-buffer@3.0.4: - resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - dev: true - /is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} @@ -14476,13 +13759,6 @@ packages: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} dev: false - /is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} - dependencies: - has-tostringtag: 1.0.2 - dev: true - /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: @@ -14570,13 +13846,6 @@ packages: dependencies: kind-of: 6.0.3 - /is-data-view@1.0.1: - resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} - engines: {node: '>= 0.4'} - dependencies: - is-typed-array: 1.1.13 - dev: true - /is-date-object@1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} @@ -14637,12 +13906,6 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} - /is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} - dependencies: - call-bind: 1.0.7 - dev: true - /is-finite@1.1.0: resolution: {integrity: sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==} engines: {node: '>=0.10.0'} @@ -14756,11 +14019,6 @@ packages: engines: {node: '>= 0.4'} dev: true - /is-negative-zero@2.0.3: - resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} - engines: {node: '>= 0.4'} - dev: true - /is-npm@1.0.0: resolution: {integrity: sha512-9r39FIr3d+KD9SbX0sfMsHzb5PP3uimOiwr3YupUaUFG4W0l1U57Rx3utpttV7qz5U3jmrO5auUa04LU9pyHsg==} engines: {node: '>=0.10.0'} @@ -14890,13 +14148,6 @@ packages: call-bind: 1.0.2 dev: true - /is-shared-array-buffer@1.0.3: - resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - dev: true - /is-stream@1.1.0: resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} engines: {node: '>=0.10.0'} @@ -14946,13 +14197,6 @@ packages: gopd: 1.0.1 has-tostringtag: 1.0.0 - /is-typed-array@1.1.13: - resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} - engines: {node: '>= 0.4'} - dependencies: - which-typed-array: 1.1.15 - dev: true - /is-typedarray@1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} dev: true @@ -15146,16 +14390,6 @@ packages: textextensions: 2.6.0 dev: false - /iterator.prototype@1.1.2: - resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} - dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.6 - set-function-name: 2.0.2 - dev: true - /jackspeak@2.3.6: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} @@ -15616,7 +14850,7 @@ packages: resolution: {integrity: sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@babel/code-frame': 7.24.2 + '@babel/code-frame': 7.23.5 '@jest/types': 28.1.3 '@types/stack-utils': 2.0.1 chalk: 4.1.2 @@ -15706,11 +14940,11 @@ packages: jest-resolve: 29.7.0 dev: true - /jest-preset-stylelint@7.0.1(jest@29.7.0): - resolution: {integrity: sha512-umVx7qx/O2pTMdZvG8HcMmExo/7rXpYsNK/22GKQ6ulLBxfgVSINLtkav77ZH505Uy6g0tDoEbWuPoWe5vJuMQ==} - engines: {node: '>=18.12.0'} + /jest-preset-stylelint@5.0.4(jest@29.7.0): + resolution: {integrity: sha512-y9j3kATHB/FIxfKsNZEnK/3GkeVnmyXz2GgtFO5fogMOlZrNf0mvF674kmTaebguvRGn7Gxmd7kqMihwIIgN3A==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} peerDependencies: - jest: ^29.0.2 + jest: ^25.3.0 || ^26.0.1 || ^27.0.1 || ^28.0.2 dependencies: jest: 29.7.0(@types/node@20.12.5)(ts-node@10.7.0) dev: true @@ -16283,6 +15517,7 @@ packages: /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + dev: true /json-parse-better-errors@1.0.2: resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} @@ -16344,16 +15579,6 @@ packages: object.assign: 4.1.4 dev: true - /jsx-ast-utils@3.3.5: - resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} - engines: {node: '>=4.0'} - dependencies: - array-includes: 3.1.8 - array.prototype.flat: 1.3.1 - object.assign: 4.1.4 - object.values: 1.1.6 - dev: true - /junit-report-builder@3.2.1: resolution: {integrity: sha512-IMCp5XyDQ4YESDE4Za7im3buM0/7cMnRfe17k2X8B05FnUl9vqnaliX6cgOEmPIeWKfJrEe/gANRq/XgqttCqQ==} engines: {node: '>=8'} @@ -16379,11 +15604,6 @@ packages: json-buffer: 3.0.1 dev: true - /keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - dependencies: - json-buffer: 3.0.1 - /kind-of@3.2.2: resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} engines: {node: '>=0.10.0'} @@ -16424,8 +15644,8 @@ packages: engines: {node: '>= 8'} dev: true - /known-css-properties@0.31.0: - resolution: {integrity: sha512-sBPIUGTNF0czz0mwGGUoKKJC8Q7On1GPbCSFPfyEsfHb2DyBG0Y4QtV+EVWpINSaiGKZblDNuF5AezxSgOhesQ==} + /known-css-properties@0.26.0: + resolution: {integrity: sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==} /language-subtag-registry@0.3.21: resolution: {integrity: sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==} @@ -16437,13 +15657,6 @@ packages: language-subtag-registry: 0.3.21 dev: true - /language-tags@1.0.9: - resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} - engines: {node: '>=0.10'} - dependencies: - language-subtag-registry: 0.3.21 - dev: true - /last-call-webpack-plugin@3.0.0: resolution: {integrity: sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==} dependencies: @@ -17143,9 +16356,6 @@ packages: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} dev: true - /mdn-data@2.0.30: - resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} - /mdurl@1.0.1: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} dev: true @@ -17212,10 +16422,6 @@ packages: yargs-parser: 20.2.9 dev: true - /meow@13.2.0: - resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==} - engines: {node: '>=18'} - /meow@3.7.0: resolution: {integrity: sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==} engines: {node: '>=0.10.0'} @@ -17265,7 +16471,6 @@ packages: trim-newlines: 3.0.1 type-fest: 0.18.1 yargs-parser: 20.2.9 - dev: false /merge-descriptors@1.0.1: resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} @@ -17663,13 +16868,6 @@ packages: braces: 3.0.2 picomatch: 2.3.1 - /micromatch@4.0.7: - resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} - engines: {node: '>=8.6'} - dependencies: - braces: 3.0.3 - picomatch: 2.3.1 - /miller-rabin@4.0.1: resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==} hasBin: true @@ -17781,13 +16979,6 @@ packages: dependencies: brace-expansion: 2.0.1 - /minimatch@9.0.5: - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - brace-expansion: 2.0.1 - dev: true - /minimist-options@4.1.0: resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} engines: {node: '>= 6'} @@ -18020,6 +17211,10 @@ packages: /napi-build-utils@1.0.2: resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} + /natural-compare-lite@1.4.0: + resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} + dev: true + /natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true @@ -18402,11 +17597,6 @@ packages: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} dev: true - /object-inspect@1.13.2: - resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} - engines: {node: '>= 0.4'} - dev: true - /object-is@1.1.5: resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} engines: {node: '>= 0.4'} @@ -18433,16 +17623,6 @@ packages: has-symbols: 1.0.3 object-keys: 1.1.1 - /object.assign@4.1.5: - resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - has-symbols: 1.0.3 - object-keys: 1.1.1 - dev: true - /object.defaults@1.1.0: resolution: {integrity: sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==} engines: {node: '>=0.10.0'} @@ -18462,15 +17642,6 @@ packages: es-abstract: 1.21.2 dev: true - /object.entries@1.1.8: - resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - dev: true - /object.fromentries@2.0.5: resolution: {integrity: sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==} engines: {node: '>= 0.4'} @@ -18480,16 +17651,6 @@ packages: es-abstract: 1.21.2 dev: true - /object.fromentries@2.0.8: - resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - dev: true - /object.getownpropertydescriptors@2.1.3: resolution: {integrity: sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==} engines: {node: '>= 0.8'} @@ -18499,15 +17660,6 @@ packages: es-abstract: 1.21.2 dev: true - /object.groupby@1.0.3: - resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - dev: true - /object.hasown@1.1.1: resolution: {integrity: sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==} dependencies: @@ -18515,15 +17667,6 @@ packages: es-abstract: 1.21.2 dev: true - /object.hasown@1.1.4: - resolution: {integrity: sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==} - engines: {node: '>= 0.4'} - dependencies: - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - dev: true - /object.map@1.0.1: resolution: {integrity: sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==} engines: {node: '>=0.10.0'} @@ -18547,15 +17690,6 @@ packages: es-abstract: 1.21.2 dev: true - /object.values@1.2.0: - resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - dev: true - /objectorarray@1.0.5: resolution: {integrity: sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg==} dev: false @@ -18635,9 +17769,9 @@ packages: peerDependencies: webpack: ^4.0.0 dependencies: - cssnano: 5.1.7(postcss@8.4.39) + cssnano: 5.1.7(postcss@8.4.32) last-call-webpack-plugin: 3.0.0 - postcss: 8.4.39 + postcss: 8.4.32 webpack: 4.46.0 dev: true @@ -18650,19 +17784,7 @@ packages: levn: 0.4.1 prelude-ls: 1.2.1 type-check: 0.4.0 - word-wrap: 1.2.4 - dev: true - - /optionator@0.9.4: - resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} - engines: {node: '>= 0.8.0'} - dependencies: - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - word-wrap: 1.2.5 + word-wrap: 1.2.4 dev: true /ora@1.4.0: @@ -18985,7 +18107,7 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.24.2 + '@babel/code-frame': 7.23.5 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -19243,9 +18365,6 @@ packages: /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - /picocolors@1.0.1: - resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - /picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} @@ -19482,17 +18601,7 @@ packages: postcss-value-parser: 4.2.0 dev: true - /postcss-calc@8.2.4(postcss@8.4.39): - resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} - peerDependencies: - postcss: ^8.2.2 - dependencies: - postcss: 8.4.39 - postcss-selector-parser: 6.0.15 - postcss-value-parser: 4.2.0 - dev: true - - /postcss-colormin@5.3.0(postcss@8.4.39): + /postcss-colormin@5.3.0(postcss@8.4.32): resolution: {integrity: sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -19501,17 +18610,17 @@ packages: browserslist: 4.22.2 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-convert-values@5.1.0(postcss@8.4.39): + /postcss-convert-values@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-GkyPbZEYJiWtQB0KZ0X6qusqFHUepguBCNFi9t5JJc7I2OTXG7C0twbTLvCfaKOLl3rSXmpAwV7W5txd91V84g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true @@ -19528,13 +18637,13 @@ packages: postcss: 8.4.32 dev: true - /postcss-discard-comments@5.1.1(postcss@8.4.39): + /postcss-discard-comments@5.1.1(postcss@8.4.32): resolution: {integrity: sha512-5JscyFmvkUxz/5/+TB3QTTT9Gi9jHkcn8dcmmuN68JQcv3aQg4y88yEHHhwFB52l/NkaJ43O0dbksGMAo49nfQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true /postcss-discard-comments@6.0.1(postcss@8.4.32): @@ -19546,31 +18655,31 @@ packages: postcss: 8.4.32 dev: true - /postcss-discard-duplicates@5.1.0(postcss@8.4.39): + /postcss-discard-duplicates@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true - /postcss-discard-empty@5.1.1(postcss@8.4.39): + /postcss-discard-empty@5.1.1(postcss@8.4.32): resolution: {integrity: sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true - /postcss-discard-overridden@5.1.0(postcss@8.4.39): + /postcss-discard-overridden@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true /postcss-flexbugs-fixes@5.0.2(postcss@8.4.32): @@ -19622,18 +18731,18 @@ packages: /postcss-media-query-parser@0.2.3: resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==} - /postcss-merge-longhand@5.1.4(postcss@8.4.39): + /postcss-merge-longhand@5.1.4(postcss@8.4.32): resolution: {integrity: sha512-hbqRRqYfmXoGpzYKeW0/NCZhvNyQIlQeWVSao5iKWdyx7skLvCfQFGIUsP9NUs3dSbPac2IC4Go85/zG+7MlmA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 - stylehacks: 5.1.0(postcss@8.4.39) + stylehacks: 5.1.0(postcss@8.4.32) dev: true - /postcss-merge-rules@5.1.1(postcss@8.4.39): + /postcss-merge-rules@5.1.1(postcss@8.4.32): resolution: {integrity: sha512-8wv8q2cXjEuCcgpIB1Xx1pIy8/rhMPIQqYKNzEdyx37m6gpq83mQQdCxgIkFgliyEnKvdwJf/C61vN4tQDq4Ww==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -19641,52 +18750,52 @@ packages: dependencies: browserslist: 4.22.2 caniuse-api: 3.0.0 - cssnano-utils: 3.1.0(postcss@8.4.39) - postcss: 8.4.39 + cssnano-utils: 3.1.0(postcss@8.4.32) + postcss: 8.4.32 postcss-selector-parser: 6.0.15 dev: true - /postcss-minify-font-values@5.1.0(postcss@8.4.39): + /postcss-minify-font-values@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-minify-gradients@5.1.1(postcss@8.4.39): + /postcss-minify-gradients@5.1.1(postcss@8.4.32): 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.39) - postcss: 8.4.39 + cssnano-utils: 3.1.0(postcss@8.4.32) + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-minify-params@5.1.2(postcss@8.4.39): + /postcss-minify-params@5.1.2(postcss@8.4.32): resolution: {integrity: sha512-aEP+p71S/urY48HWaRHasyx4WHQJyOYaKpQ6eXl8k0kxg66Wt/30VR6/woh8THgcpRbonJD5IeD+CzNhPi1L8g==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.22.2 - cssnano-utils: 3.1.0(postcss@8.4.39) - postcss: 8.4.39 + cssnano-utils: 3.1.0(postcss@8.4.32) + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-minify-selectors@5.2.0(postcss@8.4.39): + /postcss-minify-selectors@5.2.0(postcss@8.4.32): resolution: {integrity: sha512-vYxvHkW+iULstA+ctVNx0VoRAR4THQQRkG77o0oa4/mBS0OzGvvzLIvHDv/nNEM0crzN2WIyFU5X7wZhaUK3RA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-selector-parser: 6.0.15 dev: true @@ -19771,105 +18880,105 @@ packages: postcss-selector-parser: 6.0.15 dev: true - /postcss-normalize-charset@5.1.0(postcss@8.4.39): + /postcss-normalize-charset@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true - /postcss-normalize-display-values@5.1.0(postcss@8.4.39): + /postcss-normalize-display-values@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-positions@5.1.0(postcss@8.4.39): + /postcss-normalize-positions@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-8gmItgA4H5xiUxgN/3TVvXRoJxkAWLW6f/KKhdsH03atg0cB8ilXnrB5PpSshwVu/dD2ZsRFQcR1OEmSBDAgcQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-repeat-style@5.1.0(postcss@8.4.39): + /postcss-normalize-repeat-style@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-IR3uBjc+7mcWGL6CtniKNQ4Rr5fTxwkaDHwMBDGGs1x9IVRkYIT/M4NelZWkAOBdV6v3Z9S46zqaKGlyzHSchw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-string@5.1.0(postcss@8.4.39): + /postcss-normalize-string@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-timing-functions@5.1.0(postcss@8.4.39): + /postcss-normalize-timing-functions@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-unicode@5.1.0(postcss@8.4.39): + /postcss-normalize-unicode@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.22.2 - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-url@5.1.0(postcss@8.4.39): + /postcss-normalize-url@5.1.0(postcss@8.4.32): 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.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-normalize-whitespace@5.1.1(postcss@8.4.39): + /postcss-normalize-whitespace@5.1.1(postcss@8.4.32): resolution: {integrity: sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true - /postcss-ordered-values@5.1.1(postcss@8.4.39): + /postcss-ordered-values@5.1.1(postcss@8.4.32): resolution: {integrity: sha512-7lxgXF0NaoMIgyihL/2boNAEZKiW0+HkMhdKMTD93CjW8TdCy2hSdj8lsAo+uwm7EDG16Da2Jdmtqpedl0cMfw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-utils: 3.1.0(postcss@8.4.39) - postcss: 8.4.39 + cssnano-utils: 3.1.0(postcss@8.4.32) + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true @@ -19881,7 +18990,7 @@ packages: postcss: 8.4.32 dev: true - /postcss-reduce-initial@5.1.0(postcss@8.4.39): + /postcss-reduce-initial@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: @@ -19889,46 +18998,37 @@ packages: dependencies: browserslist: 4.22.2 caniuse-api: 3.0.0 - postcss: 8.4.39 + postcss: 8.4.32 dev: true - /postcss-reduce-transforms@5.1.0(postcss@8.4.39): + /postcss-reduce-transforms@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 dev: true /postcss-resolve-nested-selector@0.1.1: resolution: {integrity: sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==} - /postcss-safe-parser@7.0.0(postcss@8.4.39): - resolution: {integrity: sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg==} - engines: {node: '>=18.0'} - peerDependencies: - postcss: ^8.4.31 - dependencies: - postcss: 8.4.39 - - /postcss-scss@4.0.9(postcss@8.4.32): - resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} + /postcss-safe-parser@6.0.0(postcss@8.4.32): + resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} engines: {node: '>=12.0'} peerDependencies: - postcss: ^8.4.29 + postcss: ^8.3.3 dependencies: postcss: 8.4.32 - dev: false - /postcss-scss@4.0.9(postcss@8.4.39): + /postcss-scss@4.0.9(postcss@8.4.32): resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.4.29 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 /postcss-selector-parser@6.0.15: resolution: {integrity: sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==} @@ -19936,14 +19036,6 @@ packages: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 - dev: true - - /postcss-selector-parser@6.1.0: - resolution: {integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==} - engines: {node: '>=4'} - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 /postcss-simple-vars@7.0.1(postcss@8.4.32): resolution: {integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==} @@ -19954,32 +19046,32 @@ packages: postcss: 8.4.32 dev: true - /postcss-sorting@8.0.2(postcss@8.4.39): - resolution: {integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==} + /postcss-sorting@7.0.1(postcss@8.4.32): + resolution: {integrity: sha512-iLBFYz6VRYyLJEJsBJ8M3TCqNcckVzz4wFounSc5Oez35ogE/X+aoC5fFu103Ot7NyvjU3/xqIXn93Gp3kJk4g==} peerDependencies: - postcss: ^8.4.20 + postcss: ^8.3.9 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 dev: true - /postcss-svgo@5.1.0(postcss@8.4.39): + /postcss-svgo@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-value-parser: 4.2.0 svgo: 2.8.0 dev: true - /postcss-unique-selectors@5.1.1(postcss@8.4.39): + /postcss-unique-selectors@5.1.1(postcss@8.4.32): resolution: {integrity: sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: - postcss: 8.4.39 + postcss: 8.4.32 postcss-selector-parser: 6.0.15 dev: true @@ -20000,8 +19092,8 @@ packages: engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 - picocolors: 1.0.1 - source-map-js: 1.2.0 + picocolors: 1.0.0 + source-map-js: 1.0.2 dev: false /postcss@8.4.32: @@ -20012,14 +19104,6 @@ packages: picocolors: 1.0.0 source-map-js: 1.0.2 - /postcss@8.4.39: - resolution: {integrity: sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.1 - source-map-js: 1.2.0 - /postinstall-postinstall@2.1.0: resolution: {integrity: sha512-7hQX6ZlZXIoRiWNrbMQaLzUUfH+sSx39u8EJ9HYuDc1kLo9IXKWjM5RSquZN1ad5GnH8CGFM78fsAAQi3OKEEQ==} requiresBuild: true @@ -20082,8 +19166,8 @@ packages: hasBin: true dev: true - /prettier@3.3.2: - resolution: {integrity: sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==} + /prettier@3.2.5: + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} engines: {node: '>=14'} hasBin: true dev: true @@ -20782,19 +19866,6 @@ packages: engines: {node: '>=6'} dev: true - /reflect.getprototypeof@1.0.6: - resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - get-intrinsic: 1.2.4 - globalthis: 1.0.3 - which-builtin-type: 1.1.3 - dev: true - /refractor@3.6.0: resolution: {integrity: sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==} dependencies: @@ -21140,15 +20211,6 @@ packages: path-parse: 1.0.7 dev: true - /resolve@2.0.0-next.5: - resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} - hasBin: true - dependencies: - is-core-module: 2.13.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - dev: true - /responselike@2.0.1: resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} dependencies: @@ -21206,7 +20268,6 @@ packages: hasBin: true dependencies: glob: 7.2.0 - dev: true /ripemd160@2.0.2: resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} @@ -21294,16 +20355,6 @@ packages: mri: 1.2.0 dev: false - /safe-array-concat@1.1.2: - resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} - engines: {node: '>=0.4'} - dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - isarray: 2.0.5 - dev: true - /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} @@ -21318,15 +20369,6 @@ packages: is-regex: 1.1.4 dev: true - /safe-regex-test@1.0.3: - resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - is-regex: 1.1.4 - dev: true - /safe-regex@1.1.0: resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} dependencies: @@ -21505,12 +20547,6 @@ packages: dependencies: lru-cache: 6.0.0 - /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'} @@ -21741,22 +20777,13 @@ packages: object-inspect: 1.12.3 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.2 - dev: true - /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} /signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + dev: true /simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} @@ -21920,10 +20947,6 @@ packages: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} - /source-map-js@1.2.0: - resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} - engines: {node: '>=0.10.0'} - /source-map-resolve@0.5.3: resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==} deprecated: See https://github.com/lydell/source-map-resolve#deprecated @@ -22268,38 +21291,13 @@ packages: dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 - strip-ansi: 7.1.0 + strip-ansi: 7.0.1 dev: true /string.prototype.codepointat@0.2.1: resolution: {integrity: sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==} dev: true - /string.prototype.includes@2.0.0: - resolution: {integrity: sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==} - dependencies: - define-properties: 1.2.1 - es-abstract: 1.21.2 - dev: true - - /string.prototype.matchall@4.0.11: - resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - gopd: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.7 - regexp.prototype.flags: 1.5.2 - set-function-name: 2.0.2 - side-channel: 1.0.6 - dev: true - /string.prototype.matchall@4.0.7: resolution: {integrity: sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==} dependencies: @@ -22331,16 +21329,6 @@ packages: es-abstract: 1.21.2 dev: true - /string.prototype.trim@1.2.9: - resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - dev: true - /string.prototype.trimend@1.0.6: resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} dependencies: @@ -22349,14 +21337,6 @@ packages: es-abstract: 1.21.2 dev: true - /string.prototype.trimend@1.0.8: - resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - dev: true - /string.prototype.trimstart@1.0.6: resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} dependencies: @@ -22365,15 +21345,6 @@ packages: es-abstract: 1.21.2 dev: true - /string.prototype.trimstart@1.0.8: - resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - dev: true - /string_decoder@1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} dependencies: @@ -22419,12 +21390,6 @@ packages: ansi-regex: 6.0.1 dev: true - /strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - dependencies: - ansi-regex: 6.0.1 - /strip-bom-string@1.0.0: resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} engines: {node: '>=0.10.0'} @@ -22511,6 +21476,9 @@ packages: webpack: 5.76.0 dev: true + /style-search@0.1.0: + resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==} + /style-to-object@0.3.0: resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} dependencies: @@ -22548,100 +21516,105 @@ packages: react: 18.2.0 dev: false - /stylehacks@5.1.0(postcss@8.4.39): + /stylehacks@5.1.0(postcss@8.4.32): resolution: {integrity: sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==} engines: {node: ^10 || ^12 || >=14.0} peerDependencies: postcss: ^8.2.15 dependencies: browserslist: 4.22.2 - postcss: 8.4.39 + postcss: 8.4.32 postcss-selector-parser: 6.0.15 dev: true - /stylelint-order@6.0.4(stylelint@16.6.1): - resolution: {integrity: sha512-0UuKo4+s1hgQ/uAxlYU4h0o0HS4NiQDud0NAUNI0aa8FJdmYHA5ZZTFHiV5FpmE3071e9pZx5j0QpVJW5zOCUA==} + /stylelint-config-prettier@9.0.3(stylelint@14.15.0): + resolution: {integrity: sha512-5n9gUDp/n5tTMCq1GLqSpA30w2sqWITSSEiAWQlpxkKGAUbjcemQ0nbkRvRUa0B1LgD3+hCvdL7B1eTxy1QHJg==} + engines: {node: '>= 12'} + hasBin: true + peerDependencies: + stylelint: '>=11.0.0' + dependencies: + stylelint: 14.15.0 + dev: true + + /stylelint-order@5.0.0(stylelint@14.15.0): + resolution: {integrity: sha512-OWQ7pmicXufDw5BlRqzdz3fkGKJPgLyDwD1rFY3AIEfIH/LQY38Vu/85v8/up0I+VPiuGRwbc2Hg3zLAsJaiyw==} peerDependencies: - stylelint: ^14.0.0 || ^15.0.0 || ^16.0.1 + stylelint: ^14.0.0 dependencies: - postcss: 8.4.39 - postcss-sorting: 8.0.2(postcss@8.4.39) - stylelint: 16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3) + postcss: 8.4.32 + postcss-sorting: 7.0.1(postcss@8.4.32) + stylelint: 14.15.0 dev: true - /stylelint-prettier@5.0.0(prettier@3.3.2)(stylelint@16.6.1): - resolution: {integrity: sha512-RHfSlRJIsaVg5Br94gZVdWlz/rBTyQzZflNE6dXvSxt/GthWMY3gEHsWZEBaVGg7GM+XrtVSp4RznFlB7i0oyw==} - engines: {node: '>=18.12.0'} + /stylelint-prettier@2.0.0(prettier@2.8.8)(stylelint@14.15.0): + resolution: {integrity: sha512-jvT3G+9lopkeB0ARmDPszyfaOnvnIF+30QCjZxyt7E6fynI1T9mOKgYDNb9bXX17M7PXMZaX3j/26wqakjp1tw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - prettier: '>=3.0.0' - stylelint: '>=16.0.0' + prettier: '>=2.0.0' + stylelint: '>=14.0.0' dependencies: - prettier: 3.3.2 + prettier: 2.8.8 prettier-linter-helpers: 1.0.0 - stylelint: 16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3) + stylelint: 14.15.0 dev: true - /stylelint-scss@6.3.2(stylelint@16.6.1): - resolution: {integrity: sha512-pNk9mXOVKkQtd+SROPC9io8ISSgX+tOVPhFdBE+LaKQnJMLdWPbGKAGYv4Wmf/RrnOjkutunNTN9kKMhkdE5qA==} - engines: {node: '>=18.12.0'} + /stylelint-scss@4.7.0(stylelint@14.15.0): + resolution: {integrity: sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==} peerDependencies: - stylelint: ^16.0.2 + stylelint: ^14.5.1 || ^15.0.0 dependencies: - known-css-properties: 0.31.0 postcss-media-query-parser: 0.2.3 postcss-resolve-nested-selector: 0.1.1 - postcss-selector-parser: 6.1.0 + postcss-selector-parser: 6.0.15 postcss-value-parser: 4.2.0 - stylelint: 16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3) + stylelint: 14.15.0 - /stylelint@16.6.1(patch_hash=wls6x7gbpq4g6z7ydobqcmwpgu)(typescript@4.9.3): - resolution: {integrity: sha512-yNgz2PqWLkhH2hw6X9AweV9YvoafbAD5ZsFdKN9BvSDVwGvPh+AUIrn7lYwy1S7IHmtFin75LLfX1m0D2tHu8Q==} - engines: {node: '>=18.12.0'} + /stylelint@14.15.0: + resolution: {integrity: sha512-JOgDAo5QRsqiOZPZO+B9rKJvBm64S0xasbuRPAbPs6/vQDgDCnZLIiw6XcAS6GQKk9k1sBWR6rmH3Mfj8OknKg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} hasBin: true dependencies: - '@csstools/css-parser-algorithms': 2.7.0(@csstools/css-tokenizer@2.3.3) - '@csstools/css-tokenizer': 2.3.3 - '@csstools/media-query-list-parser': 2.1.12(@csstools/css-parser-algorithms@2.7.0)(@csstools/css-tokenizer@2.3.3) - '@csstools/selector-specificity': 3.1.1(postcss-selector-parser@6.1.0) - '@dual-bundle/import-meta-resolve': 4.1.0 + '@csstools/selector-specificity': 2.0.2(postcss-selector-parser@6.0.15)(postcss@8.4.32) balanced-match: 2.0.0 colord: 2.9.3 - cosmiconfig: 9.0.0(typescript@4.9.3) - css-functions-list: 3.2.2 - css-tree: 2.3.1 + cosmiconfig: 7.1.0 + css-functions-list: 3.1.0 debug: 4.3.4 - fast-glob: 3.3.2 + fast-glob: 3.2.12 fastest-levenshtein: 1.0.16 - file-entry-cache: 9.0.0 + file-entry-cache: 6.0.1 global-modules: 2.0.0 globby: 11.1.0 globjoin: 0.1.4 - html-tags: 3.3.1 - ignore: 5.3.1 + html-tags: 3.2.0 + ignore: 5.2.0 + import-lazy: 4.0.0 imurmurhash: 0.1.4 is-plain-object: 5.0.0 - known-css-properties: 0.31.0 + known-css-properties: 0.26.0 mathml-tag-names: 2.1.3 - meow: 13.2.0 - micromatch: 4.0.7 + meow: 9.0.0 + micromatch: 4.0.5 normalize-path: 3.0.0 - picocolors: 1.0.1 - postcss: 8.4.39 + picocolors: 1.0.0 + postcss: 8.4.32 + postcss-media-query-parser: 0.2.3 postcss-resolve-nested-selector: 0.1.1 - postcss-safe-parser: 7.0.0(postcss@8.4.39) - postcss-selector-parser: 6.1.0 + postcss-safe-parser: 6.0.0(postcss@8.4.32) + postcss-selector-parser: 6.0.15 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 + strip-ansi: 6.0.1 + style-search: 0.1.0 + supports-hyperlinks: 2.3.0 svg-tags: 1.0.0 - table: 6.8.2 - write-file-atomic: 5.0.1 + table: 6.8.1 + v8-compile-cache: 2.3.0 + write-file-atomic: 4.0.2 transitivePeerDependencies: - supports-color - - typescript - patched: true /stylis@4.1.2: resolution: {integrity: sha512-Nn2CCrG2ZaFziDxaZPN43CXqn+j7tcdjPFCkRBkFue8QYXC2HdEwnw5TCBo4yQZ2WxKYeSi0fdoOrtEqgDrXbA==} @@ -22686,14 +21659,6 @@ packages: dependencies: has-flag: 4.0.0 supports-color: 7.2.0 - dev: true - - /supports-hyperlinks@3.0.0: - resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==} - engines: {node: '>=14.18'} - dependencies: - has-flag: 4.0.0 - supports-color: 7.2.0 /supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} @@ -22731,14 +21696,6 @@ packages: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} dev: true - /synckit@0.8.8: - resolution: {integrity: sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==} - engines: {node: ^14.18.0 || >=16.0.0} - dependencies: - '@pkgr/core': 0.1.1 - tslib: 2.6.3 - dev: true - /table-layout@1.0.2: resolution: {integrity: sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==} engines: {node: '>=8.0.0'} @@ -22749,8 +21706,8 @@ packages: wordwrapjs: 4.0.1 dev: true - /table@6.8.2: - resolution: {integrity: sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==} + /table@6.8.1: + resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==} engines: {node: '>=10.0.0'} dependencies: ajv: 8.12.0 @@ -23180,15 +22137,6 @@ packages: /trough@2.1.0: resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} - /ts-api-utils@1.3.0(typescript@4.9.3): - resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} - engines: {node: '>=16'} - peerDependencies: - typescript: '>=4.2.0' - dependencies: - typescript: 4.9.3 - dev: true - /ts-dedent@2.2.0: resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} engines: {node: '>=6.10'} @@ -23250,15 +22198,6 @@ packages: strip-bom: 3.0.0 dev: true - /tsconfig-paths@3.15.0: - resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 - dev: true - /tsconfig-paths@4.2.0: resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} engines: {node: '>=6'} @@ -23274,10 +22213,6 @@ packages: /tslib@2.4.0: resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} - /tslib@2.6.3: - resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} - dev: true - /tsutils@3.21.0(typescript@4.9.3): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} @@ -23401,7 +22336,6 @@ packages: /type-fest@0.18.1: resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} engines: {node: '>=10'} - dev: false /type-fest@0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} @@ -23439,38 +22373,6 @@ packages: mime-types: 2.1.35 dev: true - /typed-array-buffer@1.0.2: - resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - is-typed-array: 1.1.13 - dev: true - - /typed-array-byte-length@1.0.1: - resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 - is-typed-array: 1.1.13 - dev: true - - /typed-array-byte-offset@1.0.2: - resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.7 - for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 - is-typed-array: 1.1.13 - dev: true - /typed-array-length@1.0.4: resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} dependencies: @@ -23479,18 +22381,6 @@ packages: is-typed-array: 1.1.10 dev: true - /typed-array-length@1.0.6: - resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 - is-typed-array: 1.1.13 - possible-typed-array-names: 1.0.0 - dev: true - /typed-rest-client@1.8.6: resolution: {integrity: sha512-xcQpTEAJw2DP7GqVNECh4dD+riS+C1qndXLfBCJ3xk0kqprtGN491P5KlmrDbKdtuW8NEcP/5ChxiJI3S9WYTA==} dependencies: @@ -23512,6 +22402,7 @@ packages: resolution: {integrity: sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==} engines: {node: '>=4.2.0'} hasBin: true + dev: true /typical@4.0.0: resolution: {integrity: sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==} @@ -23798,7 +22689,7 @@ packages: dependencies: browserslist: 4.22.2 escalade: 3.1.1 - picocolors: 1.0.1 + picocolors: 1.0.0 /update-check@1.5.4: resolution: {integrity: sha512-5YHsflzHP4t1G+8WGPlvKbJEbAJGCgw+Em+dGR1KmBUbr1J36SJBqlHLjR7oob7sco5hWHGQVcr9B2poIVDDTQ==} @@ -23970,7 +22861,6 @@ packages: /v8-compile-cache@2.3.0: resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} - dev: true /v8-to-istanbul@9.2.0: resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==} @@ -24581,24 +23471,6 @@ packages: is-symbol: 1.0.4 dev: true - /which-builtin-type@1.1.3: - resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} - engines: {node: '>= 0.4'} - dependencies: - function.prototype.name: 1.1.5 - has-tostringtag: 1.0.2 - is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.0.2 - is-generator-function: 1.0.10 - is-regex: 1.1.4 - is-weakref: 1.0.2 - isarray: 2.0.5 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.2 - which-typed-array: 1.1.15 - dev: true - /which-collection@1.0.2: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} @@ -24680,11 +23552,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /word-wrap@1.2.5: - resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} - engines: {node: '>=0.10.0'} - dev: true - /wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} dev: true @@ -24727,7 +23594,7 @@ packages: dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 - strip-ansi: 7.1.0 + strip-ansi: 7.0.1 dev: true /wrappy@1.0.2: @@ -24755,14 +23622,6 @@ packages: dependencies: imurmurhash: 0.1.4 signal-exit: 3.0.7 - dev: true - - /write-file-atomic@5.0.1: - resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dependencies: - imurmurhash: 0.1.4 - signal-exit: 4.1.0 /ws@7.5.7: resolution: {integrity: sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==} @@ -24867,7 +23726,6 @@ packages: /yaml@1.10.2: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} - dev: true /yargs-parser@18.1.3: resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} diff --git a/polaris-migrator/package.json b/polaris-migrator/package.json index d93a0e21a9a..cb886dfce76 100644 --- a/polaris-migrator/package.json +++ b/polaris-migrator/package.json @@ -31,7 +31,7 @@ "dev": "rollup -c -w", "start": "./bin/migrator-cli.js", "lint": "TIMING=1 eslint --cache .", - "test": "NODE_OPTIONS=\"--experimental-vm-modules --no-warnings\" jest", + "test": "jest", "clean": "rm -rf .turbo node_modules dist *.tsbuildinfo", "generate": "plop" }, @@ -46,7 +46,7 @@ "postcss": "^8.4.14", "postcss-scss": "^4.0.4", "postcss-value-parser": "^4.2.0", - "stylelint": "^16.6.1" + "stylelint": "^14.15.0" }, "devDependencies": { "@types/is-git-clean": "^1.1.0", @@ -58,7 +58,7 @@ "@shopify/polaris": "^13.6.1", "plop": "^3.1.1", "plop-dir": "^0.0.5", - "prettier": "^3.3.2", + "prettier": "^2.7.1", "type-fest": "^2.19.0" } } diff --git a/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.input.scss b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.input.scss new file mode 100644 index 00000000000..4d705026d5c --- /dev/null +++ b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.input.scss @@ -0,0 +1,71 @@ +@import 'styles/common'; + +$no-extra-newlines-above-this: 1rem; + +.BaseCase { + padding: 1rem; +} + +.NoInsert { + padding: var(--p-space-4); +} + +.ExistingDisableComment { + // stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY + padding: 1rem; +} + +.Nested { + .Keeps { + .Spacing { + padding: 1rem; + } + } +} + +.CombineComment { + /* stylelint-disable-next-line my-original-rule -- original comment */ + padding: 1rem; + /* stylelint-disable-next-line my-original-rule */ + margin: 1rem; + /* stylelint-disable-next-line my-original-rule -- original comment */ + margin-top: var(--p-space-1); +} + +.MultiLineAtRule { + @media screen and (min-width: 1rem), + (min-width: 1rem) and #{1rem} { + grid-column: 1rem; + } +} + +.MultiLineDecl { + margin-top: calc( + (1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem) * -0.5 + ); +} + +.AnotherMultiLine { + $vertical-padding: calc( + (1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem) * -0.5 + ); +} + +.AtRuleMultilineNoBlock { + @include safe-area-for( + left, + calc(1rem - 1rem + 1rem - 1rem + 1rem - 1rem), + left + ); +} + +.DescriptionlessDisable { + @media print { + // stylelint-disable-next-line declaration-no-important + padding: var(--p-space-4) !important; + } +} + +a:unknown { + padding: var(--p-space-4); +} diff --git a/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.output.scss b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.output.scss new file mode 100644 index 00000000000..f49efd4cf8f --- /dev/null +++ b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/styles-insert-stylelint-disable.output.scss @@ -0,0 +1,84 @@ +@import 'styles/common'; + +// stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY +$no-extra-newlines-above-this: 1rem; + +.BaseCase { + // stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY + padding: 1rem; +} + +.NoInsert { + padding: var(--p-space-4); +} + +.ExistingDisableComment { + // stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY + padding: 1rem; +} + +.Nested { + .Keeps { + .Spacing { + // stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY + padding: 1rem; + } + } +} + +.CombineComment { + // stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY, original comment + padding: 1rem; + // stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY + margin: 1rem; + /* stylelint-disable-next-line my-original-rule -- original comment */ + margin-top: var(--p-space-1); +} + +.MultiLineAtRule { + // stylelint-disable -- generated by polaris-migrator DO NOT COPY + @media screen and (min-width: 1rem), + (min-width: 1rem) and #{1rem} { + // stylelint-enable + // stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY + grid-column: 1rem; + } +} + +.MultiLineDecl { + // stylelint-disable -- generated by polaris-migrator DO NOT COPY + margin-top: calc( + (1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem) * -0.5 + ); + // stylelint-enable +} + +.AnotherMultiLine { + // stylelint-disable -- generated by polaris-migrator DO NOT COPY + $vertical-padding: calc( + (1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem + 1rem - 1rem) * -0.5 + ); + // stylelint-enable +} + +.AtRuleMultilineNoBlock { + // stylelint-disable -- generated by polaris-migrator DO NOT COPY + @include safe-area-for( + left, + calc(1rem - 1rem + 1rem - 1rem + 1rem - 1rem), + left + ); + // stylelint-enable +} + +.DescriptionlessDisable { + @media print { + // stylelint-disable-next-line declaration-no-important -- generated by polaris-migrator DO NOT COPY + padding: var(--p-space-4) !important; + } +} + +// stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY +a:unknown { + padding: var(--p-space-4); +} diff --git a/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/test-config.js b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/test-config.js new file mode 100644 index 00000000000..294af391a1d --- /dev/null +++ b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/test-config.js @@ -0,0 +1,19 @@ +const path = require('path'); + +module.exports = { + customSyntax: 'postcss-scss', + reportDescriptionlessDisables: true, + plugins: [ + path.join( + __dirname, + '../../../../../stylelint-polaris/plugins/at-rule-disallowed-list', + ), + ], + rules: { + 'unit-disallowed-list': ['rem'], + 'selector-pseudo-class-no-unknown': true, + 'polaris/at-rule-disallowed-list': { + include: [/([\w-]+\.)?safe-area-for($|\()/], + }, + }, +}; diff --git a/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/transform.test.ts b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/transform.test.ts new file mode 100644 index 00000000000..dcc61a1cc33 --- /dev/null +++ b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/tests/transform.test.ts @@ -0,0 +1,17 @@ +import path from 'path'; + +import {check} from '../../../utilities/check'; + +const transform = 'styles-insert-stylelint-disable'; +const fixtures = ['styles-insert-stylelint-disable']; + +for (const fixture of fixtures) { + check(__dirname, { + fixture, + transform, + extension: 'scss', + options: { + config: path.join(__dirname, './test-config'), + }, + }); +} diff --git a/polaris-migrator/src/migrations/styles-insert-stylelint-disable/transform.ts b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/transform.ts new file mode 100644 index 00000000000..d797baf7482 --- /dev/null +++ b/polaris-migrator/src/migrations/styles-insert-stylelint-disable/transform.ts @@ -0,0 +1,146 @@ +import os from 'os'; + +import type {API, FileInfo, Options} from 'jscodeshift'; +import type {Node, Comment, Plugin, Root} from 'postcss'; +import postcss from 'postcss'; +import type {StylelintPostcssResult} from 'stylelint'; +import stylelint from 'stylelint'; + +const crossPlatformNewlineRegExp = /\r\n?|\n/; +const polarisContextMsg = '-- generated by polaris-migrator DO NOT COPY'; + +const plugin = (): Plugin => { + return { + postcssPlugin: 'styles-insert-stylelint-disable', + Once(root, {result}) { + result.messages.forEach(({node}) => { + // If a polaris ignore comment exists above the node already, + // do nothing + if (node.prev()?.text?.includes(polarisContextMsg)) { + return; + } + + const isMultiline = + crossPlatformNewlineRegExp.test(node.value) || + crossPlatformNewlineRegExp.test(node.text) || + crossPlatformNewlineRegExp.test(node.params); + + const commentText = `${ + isMultiline ? 'stylelint-disable' : 'stylelint-disable-next-line' + } ${polarisContextMsg}`; + + const comment = createDisableComment(commentText, node.prev()); + + node.before(comment); + + if (isMultiline) { + (node.type === 'atrule' && node?.nodes?.length) || + node.type === 'rule' + ? node.prepend(createCommentNode('stylelint-enable')) + : node.after(createCommentNode('stylelint-enable')); + } + + deleteExtraNewlinesBeforeNode(node); + }); + + fillDescriptionlessDisables(result, root); + }, + }; +}; + +export default async function transformer( + file: FileInfo, + _: API, + options: Options, +) { + return postcss([ + stylelint({ + config: { + extends: [options.config ?? '@shopify/stylelint-polaris'], + }, + }) as Plugin, + plugin(), + ]) + .process(file.source, { + from: file.path, + syntax: require('postcss-scss'), + }) + .then((result) => { + return result.css; + }); +} + +/** + * Create a postcss comment node in the style: + * `// ${text}` + */ +function createCommentNode(text: string): Comment { + return new postcss.Comment({ + text, + raws: { + left: ' ', + right: '', + inline: true, + }, + }); +} + +/** + * Create a new disable comment with the given text. + * If the prevNode and the text are both disable-next-line + * comments, they are combined into a single comment with their + * description texts seperated by a comma. + */ +function createDisableComment(text: string, prevNode: Comment): Comment { + if ( + prevNode?.type !== 'comment' || + !prevNode.text.includes('stylelint-disable-next-line') || + !text.includes('stylelint-disable-next-line') + ) { + return createCommentNode(text); + } + + const prevDescription = prevNode.text?.split('--')?.[1]?.trim(); + const commentText = prevDescription?.length + ? [text, prevDescription].join(', ') + : text; + + prevNode.remove(); + + return createCommentNode(commentText); +} + +/** + * Reduces the number of newline characters in a node's before + * raws to just one. This is helpful to ensure that there is + * only one newline between a disable-next-line comment and + * the warning node. + */ +function deleteExtraNewlinesBeforeNode(node: Node) { + node.raws.before = `${os.EOL}${node.raws.before.replace( + new RegExp(crossPlatformNewlineRegExp, 'g'), + '', + )}`; +} + +/** + * If report-descriptionless-disables is enabled on stylelint, + * add a generated description to disables that don't have one. + */ +function fillDescriptionlessDisables(result: any, root: Root) { + const stylelintResult = result?.stylelint as StylelintPostcssResult; + + if (stylelintResult?.config?.reportDescriptionlessDisables) { + root.walkComments((comment) => { + if ( + comment.text.includes('stylelint-disable') && + !comment.text.includes('--') + ) { + comment.before( + createCommentNode([comment.text, polarisContextMsg].join(' ')), + ); + comment.remove(); + } + }); + } +} diff --git a/polaris-migrator/src/utilities/check.ts b/polaris-migrator/src/utilities/check.ts index d45aaae5977..32f1e0ccda4 100644 --- a/polaris-migrator/src/utilities/check.ts +++ b/polaris-migrator/src/utilities/check.ts @@ -58,14 +58,14 @@ export function check( // Assumes transform is one level up from tests directory const module = await import(path.join(dirName, '..', 'transform')); const output = await applyTransform( - {...module.default}, + {...module}, {source, path: inputPath}, options, ); // Format output and expected with prettier for white spaces and line breaks consistency - expect(await prettier.format(output, {parser})).toBe( - await prettier.format(expected, {parser}), + expect(prettier.format(output, {parser})).toBe( + prettier.format(expected, {parser}), ); }); }); diff --git a/polaris-react/postcss-mixins/button-base.css b/polaris-react/postcss-mixins/button-base.css index 0b13f15850f..2429b871035 100644 --- a/polaris-react/postcss-mixins/button-base.css +++ b/polaris-react/postcss-mixins/button-base.css @@ -31,7 +31,6 @@ &:focus-visible { box-shadow: var(--p-shadow-200); - @mixin no-focus-ring; outline: var(--p-border-width-050) solid var(--p-color-border-focus); outline-offset: var(--p-space-025); diff --git a/polaris-react/src/components/ActionList/ActionList.module.css b/polaris-react/src/components/ActionList/ActionList.module.css index 922b9bfefdd..b32dfdf0d62 100644 --- a/polaris-react/src/components/ActionList/ActionList.module.css +++ b/polaris-react/src/components/ActionList/ActionList.module.css @@ -86,6 +86,7 @@ background-color: var(--p-color-bg-surface-critical-hover); } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &:active, &.active { background-color: var(--p-color-bg-surface-critical-active); @@ -101,6 +102,7 @@ background-color: unset; } + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .Prefix svg, .Suffix svg { fill: var(--p-color-icon-disabled); diff --git a/polaris-react/src/components/ActionMenu/components/RollupActions/RollupActions.module.css b/polaris-react/src/components/ActionMenu/components/RollupActions/RollupActions.module.css index 1680f9f2825..0122e904aaf 100644 --- a/polaris-react/src/components/ActionMenu/components/RollupActions/RollupActions.module.css +++ b/polaris-react/src/components/ActionMenu/components/RollupActions/RollupActions.module.css @@ -8,10 +8,12 @@ box-shadow: none; margin: 0; + /* stylelint-disable-next-line selector-max-specificity -- apply active styles */ &:active { background: var(--p-color-bg-fill-tertiary-active); } + /* stylelint-disable-next-line selector-max-specificity -- apply focus styles */ &:focus:not(:active) { /* stylelint-disable-next-line polaris/border/polaris/at-rule-disallowed-list -- button overrides */ @mixin no-focus-ring; @@ -20,6 +22,7 @@ background: var(--p-color-bg-fill-tertiary-active); } + /* stylelint-disable-next-line selector-max-specificity -- apply hover styles */ &:hover { background: var(--p-color-bg-fill-tertiary-hover); } diff --git a/polaris-react/src/components/ActionMenu/components/SecondaryAction/SecondaryAction.module.css b/polaris-react/src/components/ActionMenu/components/SecondaryAction/SecondaryAction.module.css index 647e76aa593..f7ca82e69fe 100644 --- a/polaris-react/src/components/ActionMenu/components/SecondaryAction/SecondaryAction.module.css +++ b/polaris-react/src/components/ActionMenu/components/SecondaryAction/SecondaryAction.module.css @@ -50,15 +50,17 @@ button { color: var(--p-color-text-critical) !important; - /* stylelint-disable-next-line selector-max-type -- override svg fill */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-type -- override svg fill */ svg { fill: var(--p-color-text-critical); } + /* stylelint-disable-next-line selector-max-specificity -- apply hover styles */ &:is(:hover, :focus) { background-color: var(--p-color-bg-fill-tertiary-hover) !important; } + /* stylelint-disable-next-line selector-max-specificity -- apply focus/active styles */ &:active { background-color: var(--p-color-bg-fill-tertiary-active) !important; } diff --git a/polaris-react/src/components/Autocomplete/components/MappedAction/MappedAction.module.css b/polaris-react/src/components/Autocomplete/components/MappedAction/MappedAction.module.css index 9c596dd2271..f1349e1787c 100644 --- a/polaris-react/src/components/Autocomplete/components/MappedAction/MappedAction.module.css +++ b/polaris-react/src/components/Autocomplete/components/MappedAction/MappedAction.module.css @@ -12,6 +12,7 @@ [data-focused] { .Action { + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: var(--p-color-icon); } @@ -83,6 +84,7 @@ background-color: var(--p-color-bg-surface-critical-hover); } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &:active, &.selected { background-color: var(--p-color-bg-surface-critical-active); @@ -93,6 +95,7 @@ background-image: none; color: var(--p-color-text-disabled); + /* stylelint-disable-next-line selector-max-class, selector-max-specificity, selector-max-combinators -- generated by polaris-migrator DO NOT COPY */ .Prefix svg, .Suffix svg { fill: var(--p-color-icon-disabled); diff --git a/polaris-react/src/components/Box/Box.tsx b/polaris-react/src/components/Box/Box.tsx index ee8f965bd34..3c14adf8c9c 100644 --- a/polaris-react/src/components/Box/Box.tsx +++ b/polaris-react/src/components/Box/Box.tsx @@ -208,20 +208,20 @@ export const Box = forwardRef( const borderStyleValue = borderStyle ? borderStyle : borderColor || - borderWidth || - borderBlockStartWidth || - borderBlockEndWidth || - borderInlineStartWidth || - borderInlineEndWidth - ? 'solid' - : undefined; + borderWidth || + borderBlockStartWidth || + borderBlockEndWidth || + borderInlineStartWidth || + borderInlineEndWidth + ? 'solid' + : undefined; // eslint-disable-next-line no-nested-ternary const outlineStyleValue = outlineStyle ? outlineStyle : outlineColor || outlineWidth - ? 'solid' - : undefined; + ? 'solid' + : undefined; const style = { '--pc-box-color': color ? `var(--p-color-${color})` : undefined, diff --git a/polaris-react/src/components/Button/Button.module.css b/polaris-react/src/components/Button/Button.module.css index 161275d1c4d..6bad52a3504 100644 --- a/polaris-react/src/components/Button/Button.module.css +++ b/polaris-react/src/components/Button/Button.module.css @@ -41,8 +41,8 @@ } /* https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity#increasing_specificity_by_duplicating_selector - Remove the duplicate selectors once `Icon` supports no fill so there won't be competing specificity. - Duplicate selectors to bump specificity to be greater than Icon's svg fill (0, 1, 1) */ + Remove the duplicate selectors once `Icon` supports no fill so there won't be competing specificity */ +/* stylelint-disable selector-max-specificity -- Duplicate selectors to bump specificity to be greater than Icon's svg fill (0, 1, 1) */ .Button.Button svg { fill: var(--pc-button-icon-fill); } @@ -68,6 +68,7 @@ .pressed.pressed:focus-visible svg { fill: var(--pc-button-icon-fill_pressed); } +/* stylelint-enable selector-max-specificity */ .Button:hover { background: var(--pc-button-bg_hover); @@ -362,6 +363,7 @@ } /* BUTTON GROUP */ +/* stylelint-disable -- selector-max-combinators */ [data-buttongroup-variant='segmented'] > *:not(:first-child) .Button:is(.variantPrimary) { @@ -393,3 +395,5 @@ [data-buttongroup-connected-top='true'] > *:last-child .Button { border-top-right-radius: var(--p-border-radius-0); } + +/* stylelint-enable -- selector-max-combinators */ diff --git a/polaris-react/src/components/Checkbox/Checkbox.module.css b/polaris-react/src/components/Checkbox/Checkbox.module.css index 81579e83ed2..1f2ca74d86a 100644 --- a/polaris-react/src/components/Checkbox/Checkbox.module.css +++ b/polaris-react/src/components/Checkbox/Checkbox.module.css @@ -6,8 +6,7 @@ .ChoiceLabel .Backdrop { border-width: 0; box-shadow: inset 0 0 0 var(--p-border-width-0165) var(--p-color-input-border); - transition: - border-color var(--p-motion-duration-100) var(--p-motion-ease-out), + transition: border-color var(--p-motion-duration-100) var(--p-motion-ease-out), border-width var(--p-motion-duration-100) var(--p-motion-ease-out), box-shadow var(--p-motion-duration-100) var(--p-motion-ease-out); @@ -29,7 +28,7 @@ box-shadow: inset 0 0 0 var(--p-space-050) var(--p-color-bg-fill-brand); } -/* stylelint-disable selector-max-specificity, max-nesting-depth -- Much easier to read the rules when written like this */ +/* stylelint-disable selector-max-specificity, selector-max-class, selector-max-combinators, max-nesting-depth -- Much easier to read the rules when written like this */ .Input { position: absolute; z-index: var(--p-z-index-1); @@ -61,8 +60,7 @@ } ~ .Icon { - transition: - opacity var(--p-motion-duration-150) var(--p-motion-ease-out), + transition: opacity var(--p-motion-duration-150) var(--p-motion-ease-out), transform var(--p-motion-duration-150) var(--p-motion-ease-out); opacity: 1; @@ -137,7 +135,7 @@ } } } - /* stylelint-enable selector-max-specificity, max-nesting-depth */ + /* stylelint-enable selector-max-specificity, selector-max-class, selector-max-combinators, max-nesting-depth */ } .Backdrop { @@ -160,8 +158,7 @@ transform-origin: 50% 50%; pointer-events: none; opacity: 0; - transition: - opacity var(--p-motion-duration-100) var(--p-motion-ease-out), + transition: opacity var(--p-motion-duration-100) var(--p-motion-ease-out), transform var(--p-motion-duration-100) var(--p-motion-ease-out); top: calc(-1 * var(--p-space-050)); @@ -193,7 +190,7 @@ } } -/* stylelint-disable selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ +/* stylelint-disable selector-max-specificity, selector-max-class, selector-max-combinators, selector-max-compound-selectors -- generated by polaris-migrator DO NOT COPY */ .error { .Icon svg { color: var(--p-color-text-critical-on-bg-fill); @@ -241,14 +238,14 @@ } } } -/* stylelint-enable selector-max-specificity */ +/* stylelint-enable selector-max-specificity, selector-max-class, selector-max-combinators */ -/* stylelint-disable-next-line selector-max-type -- override */ +/* stylelint-disable-next-line selector-max-combinators, selector-max-type -- override */ .animated svg > path { stroke-dasharray: 2; stroke-dashoffset: 2; - /* stylelint-disable-next-line selector-max-type, selector-no-qualifying-type -- override */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-type, selector-no-qualifying-type -- override */ &.checked { animation-name: pathAnimation; animation-duration: var(--p-motion-duration-150); diff --git a/polaris-react/src/components/Choice/Choice.module.css b/polaris-react/src/components/Choice/Choice.module.css index 0c49a286f7d..feaf003ee98 100644 --- a/polaris-react/src/components/Choice/Choice.module.css +++ b/polaris-react/src/components/Choice/Choice.module.css @@ -9,7 +9,6 @@ */ /* stylelint-disable-next-line length-zero-no-unit -- see above */ --pc-choice-space-0: 0rem; - @mixin responsive-props choice, bleed-block-start, --pc-choice-bleed-block-start; @mixin responsive-props choice, bleed-block-end, --pc-choice-bleed-block-end; diff --git a/polaris-react/src/components/Choice/tests/Choice.test.tsx b/polaris-react/src/components/Choice/tests/Choice.test.tsx index 9a1a15aad9e..dec46a182ff 100644 --- a/polaris-react/src/components/Choice/tests/Choice.test.tsx +++ b/polaris-react/src/components/Choice/tests/Choice.test.tsx @@ -21,7 +21,7 @@ describe('', () => { expect(element).toContainReactComponent('label', { htmlFor: 'MyChoice', }); - expect(element.find('label')).toContainReactText('Label'); + expect(element.find('label'))!.toContainReactText('Label'); }); it('renders error markup when provided with a value', () => { diff --git a/polaris-react/src/components/Combobox/tests/Combobox.test.tsx b/polaris-react/src/components/Combobox/tests/Combobox.test.tsx index 2b43f13a861..7b43e55154a 100644 --- a/polaris-react/src/components/Combobox/tests/Combobox.test.tsx +++ b/polaris-react/src/components/Combobox/tests/Combobox.test.tsx @@ -119,11 +119,14 @@ describe('', () => { /> } > - {inputValue.length > 0 ? ( - - - - ) : null} + { + // eslint-disable-next-line jest/no-if + inputValue.length > 0 ? ( + + + + ) : null + } ); } diff --git a/polaris-react/src/components/DataTable/DataTable.module.css b/polaris-react/src/components/DataTable/DataTable.module.css index cbcd5b5b72f..fd8b1d1a959 100644 --- a/polaris-react/src/components/DataTable/DataTable.module.css +++ b/polaris-react/src/components/DataTable/DataTable.module.css @@ -65,7 +65,7 @@ border-spacing: 0; } -/* stylelint-disable selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ +/* stylelint-disable selector-max-class, selector-max-combinators, selector-max-specificity, selector-max-compound-selectors -- generated by polaris-migrator DO NOT COPY */ .TableRow + .TableRow { .Cell { border-top: var(--p-border-width-025) solid var(--p-color-border-secondary); diff --git a/polaris-react/src/components/DatePicker/DatePicker.module.css b/polaris-react/src/components/DatePicker/DatePicker.module.css index 65971d3c77a..4843591ad43 100644 --- a/polaris-react/src/components/DatePicker/DatePicker.module.css +++ b/polaris-react/src/components/DatePicker/DatePicker.module.css @@ -186,10 +186,12 @@ .Week { margin-bottom: var(--p-space-050); + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ > .Day-inRange:first-child:not(.Day-firstInRange):not(.Day-lastInRange) { border-radius: var(--p-border-radius-100) 0 0 var(--p-border-radius-100); } + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ > .Day-inRange:last-child:not(.Day-firstInRange):not(.Day-lastInRange) { border-radius: 0 var(--p-border-radius-100) var(--p-border-radius-100) 0; } @@ -197,6 +199,7 @@ .Day-inRange, .Day-inRange:not(:hover) + .Day { + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &::after { /* stylelint-disable -- generated by polaris-migrator DO NOT COPY */ border-radius: 0 var(--pc-date-picker-range-end-border-radius) diff --git a/polaris-react/src/components/DatePicker/components/Weekday/tests/Weekday.test.tsx b/polaris-react/src/components/DatePicker/components/Weekday/tests/Weekday.test.tsx index d53d0018bc8..e5eff4d3639 100644 --- a/polaris-react/src/components/DatePicker/components/Weekday/tests/Weekday.test.tsx +++ b/polaris-react/src/components/DatePicker/components/Weekday/tests/Weekday.test.tsx @@ -15,7 +15,7 @@ describe('', () => { , ); expect(weekday).toContainReactText('Su'); - expect(weekday.find('th')).toHaveReactProps({ + expect(weekday.find('th'))!.toHaveReactProps({ 'aria-label': 'Sunday', }); }); diff --git a/polaris-react/src/components/DatePicker/tests/DatePicker.test.tsx b/polaris-react/src/components/DatePicker/tests/DatePicker.test.tsx index 7670bf2e691..0405ffcd878 100644 --- a/polaris-react/src/components/DatePicker/tests/DatePicker.test.tsx +++ b/polaris-react/src/components/DatePicker/tests/DatePicker.test.tsx @@ -154,7 +154,7 @@ describe('', () => { , ); - expect(datePicker.find('div')).toHaveReactProps({ + expect(datePicker.find('div'))!.toHaveReactProps({ id, }); }); diff --git a/polaris-react/src/components/DescriptionList/DescriptionList.module.css b/polaris-react/src/components/DescriptionList/DescriptionList.module.css index 72d68e0c777..deea116e94d 100644 --- a/polaris-react/src/components/DescriptionList/DescriptionList.module.css +++ b/polaris-react/src/components/DescriptionList/DescriptionList.module.css @@ -26,6 +26,7 @@ padding: var(--p-space-200) var(--p-space-200) var(--p-space-200) 0; } + /* stylelint-disable-next-line selector-max-class, selector-max-combinators -- generated by polaris-migrator DO NOT COPY */ .Description + & + .Description { border-top: var(--p-border-width-025) solid var(--p-color-border-secondary); @@ -53,6 +54,7 @@ padding: var(--p-space-200) 0; } + /* stylelint-disable-next-line selector-max-class, selector-max-combinators -- generated by polaris-migrator DO NOT COPY */ + .Term + .Description { border-top: var(--p-border-width-025) solid var(--p-color-border-secondary); diff --git a/polaris-react/src/components/DropZone/DropZone.module.css b/polaris-react/src/components/DropZone/DropZone.module.css index ab13b717949..37c246eb0a1 100755 --- a/polaris-react/src/components/DropZone/DropZone.module.css +++ b/polaris-react/src/components/DropZone/DropZone.module.css @@ -62,6 +62,7 @@ cursor: pointer; background-color: var(--p-color-input-bg-surface-hover); + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &::after { border-color: var(--p-color-input-border-hover); } diff --git a/polaris-react/src/components/DropZone/tests/DropZone.test.tsx b/polaris-react/src/components/DropZone/tests/DropZone.test.tsx index 3cc0b2a7d11..6a25e998107 100755 --- a/polaris-react/src/components/DropZone/tests/DropZone.test.tsx +++ b/polaris-react/src/components/DropZone/tests/DropZone.test.tsx @@ -207,7 +207,7 @@ describe('', () => { it('renders a disabled input when the disabled prop is true', () => { const dropZone = mountWithApp(); - expect(dropZone.find('input', {type: 'file'})).toHaveReactProps({ + expect(dropZone.find('input', {type: 'file'})!).toHaveReactProps({ disabled: true, }); }); diff --git a/polaris-react/src/components/ExceptionList/ExceptionList.module.css b/polaris-react/src/components/ExceptionList/ExceptionList.module.css index 5008523936b..13543c66a24 100644 --- a/polaris-react/src/components/ExceptionList/ExceptionList.module.css +++ b/polaris-react/src/components/ExceptionList/ExceptionList.module.css @@ -29,10 +29,12 @@ fill: var(--p-color-icon-secondary); } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ .statusWarning & svg { fill: var(--p-color-text-caution); } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ .statusCritical & svg { fill: var(--p-color-text-critical); } diff --git a/polaris-react/src/components/Filters/Filters.module.css b/polaris-react/src/components/Filters/Filters.module.css index a1b5607435e..5b149b96482 100644 --- a/polaris-react/src/components/Filters/Filters.module.css +++ b/polaris-react/src/components/Filters/Filters.module.css @@ -191,6 +191,7 @@ .AddFilter { padding: var(--p-space-300) var(--p-space-200); + /* stylelint-disable-next-line selector-max-combinators -- required to hide the text of the button */ span { display: none; } diff --git a/polaris-react/src/components/Filters/components/FilterPill/FilterPill.module.css b/polaris-react/src/components/Filters/components/FilterPill/FilterPill.module.css index 83bbf89998d..745010abd2f 100644 --- a/polaris-react/src/components/Filters/components/FilterPill/FilterPill.module.css +++ b/polaris-react/src/components/Filters/components/FilterPill/FilterPill.module.css @@ -7,7 +7,7 @@ /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin focus-ring base, var(--p-border-width-025); - + /* stylelint-disable-next-line selector-max-specificity -- specificity is required to override focus-ring mixin */ &.focusedFilterButton:focus-within:not(:active) { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin focus-ring base, 0, focused; @@ -84,7 +84,6 @@ .ActiveFilterButton .ToggleButton { padding-right: var(--p-space-050); - @media (--p-breakpoints-md-up) { padding-right: 0; } diff --git a/polaris-react/src/components/Filters/components/FiltersBar/FiltersBar.tsx b/polaris-react/src/components/Filters/components/FiltersBar/FiltersBar.tsx index 1577d8783d1..3a5ca335e02 100644 --- a/polaris-react/src/components/Filters/components/FiltersBar/FiltersBar.tsx +++ b/polaris-react/src/components/Filters/components/FiltersBar/FiltersBar.tsx @@ -101,9 +101,10 @@ export function FiltersBar({ const pinnedFilters = localPinnedFilters .map((key) => filters.find((filter) => filter.key === key)) - .reduce< - FilterInterface[] - >((acc, filter) => (filter ? [...acc, filter] : acc), []); + .reduce( + (acc, filter) => (filter ? [...acc, filter] : acc), + [], + ); const onFilterClick = ({key, onAction}: FilterInterface) => diff --git a/polaris-react/src/components/Frame/Frame.module.css b/polaris-react/src/components/Frame/Frame.module.css index f247daaebdf..be01114ae31 100644 --- a/polaris-react/src/components/Frame/Frame.module.css +++ b/polaris-react/src/components/Frame/Frame.module.css @@ -221,7 +221,6 @@ border-inline-end: var(--p-border-width-025) solid var(--p-color-border); min-width: 0; - @media (--p-breakpoints-sm-up) { /* stylelint-disable -- polaris/conventions/polaris/custom-property-allowed-list -- Polaris component custom properties */ max-width: calc(100vw - var(--pc-app-provider-scrollbar-width)); @@ -247,7 +246,6 @@ .hasTopBar & { /* stylelint-disable-next-line -- polaris custom global property */ padding-top: var(--pg-top-bar-height); - @media print { padding-top: 0; } @@ -276,7 +274,6 @@ /* stylelint-disable-next-line -- polaris custom global property */ margin-top: var(--pg-top-bar-height); padding-top: 0; - @media print { margin-top: 0; } @@ -429,7 +426,7 @@ color: var(--p-color-text); &:focus { - border-color: transparent; + border-color: none; box-shadow: none; } } diff --git a/polaris-react/src/components/Frame/components/ToastManager/ToastManager.module.css b/polaris-react/src/components/Frame/components/ToastManager/ToastManager.module.css index 6d7bce7dc3e..be4a63eef77 100644 --- a/polaris-react/src/components/Frame/components/ToastManager/ToastManager.module.css +++ b/polaris-react/src/components/Frame/components/ToastManager/ToastManager.module.css @@ -29,8 +29,7 @@ position: absolute; display: inline-flex; opacity: 0; - transition: - transform var(--p-motion-duration-400) var(--p-motion-ease-out), + transition: transform var(--p-motion-duration-400) var(--p-motion-ease-out), opacity var(--p-motion-duration-400) var(--p-motion-ease-out); /* stylelint-disable-next-line -- required for stacking animation */ transform: translateY(var(--pc-toast-manager-translate-y-out)); diff --git a/polaris-react/src/components/Frame/components/ToastManager/ToastManager.tsx b/polaris-react/src/components/Frame/components/ToastManager/ToastManager.tsx index 0face360a23..40a4fcd861f 100644 --- a/polaris-react/src/components/Frame/components/ToastManager/ToastManager.tsx +++ b/polaris-react/src/components/Frame/components/ToastManager/ToastManager.tsx @@ -99,12 +99,9 @@ export const ToastManager = memo(function ToastManager({ setShouldExpand(false); } if (shouldExpand) { - fullyExpandedTimeout.current = setTimeout( - () => { - isFullyExpanded.current = true; - }, - toastMessages.length * TOAST_TRANSITION_DELAY + 400, - ); + fullyExpandedTimeout.current = setTimeout(() => { + isFullyExpanded.current = true; + }, toastMessages.length * TOAST_TRANSITION_DELAY + 400); } else if (fullyExpandedTimeout.current) { clearTimeout(fullyExpandedTimeout.current); isFullyExpanded.current = false; diff --git a/polaris-react/src/components/IndexTable/IndexTable.module.css b/polaris-react/src/components/IndexTable/IndexTable.module.css index ef91c1a3372..882e82b5506 100644 --- a/polaris-react/src/components/IndexTable/IndexTable.module.css +++ b/polaris-react/src/components/IndexTable/IndexTable.module.css @@ -50,8 +50,7 @@ box-shadow: var(--p-shadow-300); opacity: 0; transform: translateY(-100%); - transition: - opacity var(--p-motion-duration-100) var(--p-motion-ease-in), + transition: opacity var(--p-motion-duration-100) var(--p-motion-ease-in), transform var(--p-motion-duration-100) var(--p-motion-ease-in), visibility var(--p-motion-duration-0) linear var(--p-motion-duration-100); visibility: hidden; @@ -60,8 +59,7 @@ visibility: visible; opacity: 1; transform: translateY(0); - transition: - opacity var(--p-motion-duration-100) var(--p-motion-ease-out), + transition: opacity var(--p-motion-duration-100) var(--p-motion-ease-out), transform var(--p-motion-duration-100) var(--p-motion-ease-out); } @@ -89,6 +87,7 @@ .Table-scrolling, .StickyTable-scrolling { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators -- generated by polaris-migrator DO NOT COPY */ .TableCell-first, .TableCell-first + .TableCell, .TableHeading-first, @@ -111,6 +110,7 @@ &.Table-sticky, &.StickyTable { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .TableCell-first + .TableCell, .TableHeading-second { @media (--p-breakpoints-sm-up) { @@ -118,7 +118,9 @@ } } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.Table-unselectable { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .TableHeading-second, .TableCell:first-child { filter: drop-shadow(1px 0 0 var(--p-color-border-secondary)); @@ -127,6 +129,7 @@ } &.Table-unselectable { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .TableHeading-second, .TableCell:first-child { visibility: visible; @@ -148,6 +151,7 @@ } &.toneSuccess { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell-first, .TableCell-first + .TableCell, @@ -156,9 +160,12 @@ } } + /* stylelint-disable-next-line selector-max-class -- adds success tone for nested rows */ &.TableRow-child.toneSuccess { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds success tone for nested rows */ &, .TableCell-first { + /* stylelint-disable-next-line -- adds success tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-success); } @@ -166,6 +173,7 @@ } &.toneWarning { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- adds warning tone for suspended products */ &, .TableCell-first, .TableCell-first + .TableCell, @@ -174,9 +182,12 @@ } } + /* stylelint-disable-next-line selector-max-class -- adds warning tone for nested rows */ &.TableRow-child.toneWarning { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds warning tone for nested rows */ &, .TableCell-first { + /* stylelint-disable-next-line -- adds warning tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-warning); } @@ -184,6 +195,7 @@ } &.toneCritical { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- adds crtical tone for suspended products */ &, .TableCell-first, .TableCell-first + .TableCell, @@ -192,9 +204,12 @@ } } + /* stylelint-disable-next-line selector-max-class -- adds critical tone for nested rows */ &.TableRow-child.toneCritical { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds critical tone for nested rows */ &, .TableCell-first { + /* stylelint-disable-next-line -- adds critical tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-critical); } @@ -202,6 +217,7 @@ } &.toneSubdued { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell-first, .TableCell-first + .TableCell, @@ -211,9 +227,12 @@ } } + /* stylelint-disable-next-line selector-max-class -- adds secondary tone for nested rows */ &.TableRow-child.toneSubdued { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds secondary tone for nested rows */ &, .TableCell-first { + /* stylelint-disable-next-line -- adds secondary tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-secondary); } @@ -222,7 +241,7 @@ &.TableRow-subheader { cursor: default; - + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, @@ -304,7 +323,7 @@ &.TableRow-selected { border-color: var(--p-color-border); - + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableHeading-first, .TableHeading-second, @@ -314,7 +333,9 @@ background-color: var(--p-color-bg-surface-selected); } + /* stylelint-disable-next-line selector-max-class -- adds selected tone for nested rows */ &.TableRow-child { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds selected tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds selected tone for nested rows */ @@ -324,7 +345,9 @@ } } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.toneSuccess { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, @@ -334,7 +357,9 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds success active tone for nested rows */ &.TableRow-child.toneSuccess { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds success active tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds success active tone for nested rows */ @@ -344,7 +369,9 @@ } } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.toneWarning { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- added crtical tone for suspended products */ &, .TableCell:first-child, .TableCell-first, @@ -354,7 +381,9 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds warning active tone for nested rows */ &.TableRow-child.toneWarning { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds warning active tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds warning active tone for nested rows */ @@ -364,7 +393,9 @@ } } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.toneCritical { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- added crtical tone for suspended products */ &, .TableCell:first-child, .TableCell-first, @@ -374,7 +405,9 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds critical active tone for nested rows */ &.TableRow-child.toneCritical { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds critical active tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds critical active tone for nested rows */ @@ -384,7 +417,9 @@ } } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.toneSubdued { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, @@ -394,7 +429,9 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds secondary active tone for nested rows */ &.TableRow-child.toneSubdued { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds secondary active tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds secondary active tone for nested rows */ @@ -404,7 +441,9 @@ } } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.TableRow-subheader { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, @@ -417,6 +456,7 @@ /* NOTE: `-hovered` must come after `-selected` so elements don't appear to lose their interactivity when selected. */ &.TableRow-hovered:not(.TableRow-disabled) { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell-first, .TableCell-first + .TableCell, @@ -424,7 +464,9 @@ background-color: var(--p-color-bg-surface-hover); } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds hover tone for nested rows */ &.TableRow-child { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds hover tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds hover tone for nested rows */ @@ -434,22 +476,22 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.toneSuccess { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-success-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds success tone for nested rows */ &.TableRow-child.toneSuccess { - /* stylelint-disable selector-max-specificity -- adds success tone for nested rows */ + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds success tone for nested rows */ &, .TableCell-first { - /* stylelint-enable selector-max-specificity */ /* stylelint-disable-next-line -- adds success tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-success-hover); @@ -457,22 +499,22 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.toneCritical { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-critical-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds critical tone for nested rows */ &.TableRow-child.toneCritical { - /* stylelint-disable selector-max-specificity -- adds critical tone for nested rows */ + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds critical tone for nested rows */ &, .TableCell-first { - /* stylelint-enable selector-max-specificity */ /* stylelint-disable-next-line -- adds critical tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-critical-hover); @@ -480,22 +522,22 @@ } } + /* stylelint-disable-next-line -- tone table override */ &.toneWarning { - /* stylelint-disable selector-max-specificity -- tone table override */ + /* stylelint-disable-next-line -- tone table override */ &, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-warning-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds warning tone for nested rows */ &.TableRow-child.toneWarning { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds warning tone for nested rows */ &, .TableCell-first { - /* stylelint-enable selector-max-specificity */ /* stylelint-disable-next-line -- adds warning tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-warning-hover); @@ -503,22 +545,22 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.toneSubdued { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-secondary-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds secondary tone for nested rows */ &.TableRow-child.toneSubdued { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds secondary tone for nested rows */ &, .TableCell-first { - /* stylelint-enable selector-max-specificity */ /* stylelint-disable-next-line -- adds secondary tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-secondary-hover); @@ -526,32 +568,36 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- subheader bg color override */ &.TableRow-subheader { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-secondary); } } } + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.TableRow-hovered.TableRow-selected { + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { background-color: var(--p-color-bg-surface-brand-hover); - /* stylelint-disable-next-line selector-max-specificity -- background color for selected nested rows */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- background color for selected nested rows */ &::before { background-color: var(--p-color-bg-surface-brand-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds hover tone for nested rows */ &.TableRow-child { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds hover tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds hover tone for nested rows */ @@ -561,23 +607,23 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.toneSuccess { - /* stylelint-disable selector-max-class, selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-class, selector-max-specificity */ background-color: var(--p-color-bg-surface-success-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds success hover tone for nested rows */ &.TableRow-child.toneSuccess { - /* stylelint-disable selector-max-class, selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- adds success hover tone for nested rows */ &, .TableCell-first { - /* stylelint-enable selector-max-class, selector-max-specificity */ /* stylelint-disable-next-line -- adds success hover tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-success-hover); @@ -585,50 +631,50 @@ } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.toneWarning { - /* stylelint-disable selector-max-class, selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- added crtical tone for suspended products */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-class, selector-max-specificity */ background-color: var(--p-color-bg-surface-warning-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.toneCritical { - /* stylelint-disable selector-max-class, selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- added crtical tone for suspended products */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-class, selector-max-specificity */ background-color: var(--p-color-bg-surface-critical-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.toneSubdued { - /* stylelint-disable selector-max-class, selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-class, selector-max-specificity */ background-color: var(--p-color-bg-surface-secondary-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &.TableRow-subheader { - /* stylelint-disable selector-max-class, selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-class, selector-max-specificity */ background-color: var(--p-color-bg-surface-secondary); } } @@ -641,10 +687,11 @@ } /* Extra specificity is needed to address edge cases where the zebra striping is combined with other options */ -/* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ +/* stylelint-disable selector-max-specificity, selector-max-class, selector-max-combinators -- extra specificity needed for when combining props */ .ZebraStriping { .Table-scrolling .TableRow:nth-child(2n + 1), .TableRow:nth-child(2n + 1) { + /* stylelint-disable-next-line selector-max-compound-selectors -- extra specificity needed for when combining props */ &, .TableCell:first-child, .TableCell-first, @@ -656,6 +703,7 @@ .Table-scrolling .TableRow:nth-child(2n), .TableRow:nth-child(2n) { + /* stylelint-disable-next-line selector-max-compound-selectors -- extra specificity needed for when combining props */ &, .TableCell:first-child, .TableCell-first, @@ -666,8 +714,10 @@ } .TableRow-child:nth-child(2n) { + /* stylelint-disable-next-line -- adds secondary tone for nested rows */ &, .TableCell-first { + /* stylelint-disable-next-line -- adds secondary tone for nested rows */ &::before { background-color: var(--p-color-bg-surface-secondary); } @@ -678,6 +728,7 @@ .TableRow-hovered:not(.TableRow-disabled):nth-child(2n + 1), .Table-scrolling .TableRow-hovered:not(.TableRow-disabled):nth-child(2n), .TableRow-hovered:not(.TableRow-disabled):nth-child(2n) { + /* stylelint-disable-next-line selector-max-compound-selectors -- extra specificity needed for when combining props */ &, .TableCell:first-child, .TableCell-first, @@ -691,6 +742,7 @@ .TableRow-selected:nth-child(2n + 1), .Table-scrolling .TableRow-selected:nth-child(2n), .TableRow-selected:nth-child(2n) { + /* stylelint-disable-next-line selector-max-compound-selectors -- extra specificity needed for when combining props */ &, .TableCell:first-child, .TableCell-first, @@ -702,6 +754,7 @@ .TableRow-child.TableRow-selected:nth-child(2n), .TableRow-child.TableRow-selected:nth-child(2n + 1) { + /* stylelint-disable-next-line -- adds selected tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds selected tone for nested rows */ @@ -715,19 +768,19 @@ .TableRow-hovered.TableRow-selected:nth-child(2n + 1), .Table-scrolling .TableRow-hovered.TableRow-selected:nth-child(2n), .TableRow-hovered.TableRow-selected:nth-child(2n) { - /* stylelint-disable selector-max-class -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-compound-selectors -- extra specificity needed for when combining props */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-class */ background-color: var(--p-color-bg-surface-brand-hover); } } .TableRow-hovered.TableRow-selected:nth-child(2n), .TableRow-hovered.TableRow-selected:nth-child(2n + 1) { + /* stylelint-disable-next-line -- adds hover tone for nested rows */ &, .TableCell-first { /* stylelint-disable-next-line -- adds hover tone for nested rows */ @@ -737,7 +790,7 @@ } } } -/* stylelint-enable selector-max-specificity */ +/* stylelint-enable selector-max-specificity, selector-max-class, selector-max-combinators */ .TableHeading { /* stylelint-disable -- Polaris component custom properties */ @@ -845,8 +898,7 @@ &:hover, &:focus { - /* stylelint-disable-next-line polaris/motion/declaration-property-unit-disallowed-list -- Shhhh */ - transition-delay: 0s; + transition-delay: none; transform: translateX(var(--p-space-100)); } } @@ -966,6 +1018,7 @@ &:first-child { padding-left: var(--p-space-300); + /* stylelint-disable-next-line selector-max-specificity -- This is a valid selector */ .Table:not(.Table-unselectable) & { /* stylelint-disable-next-line -- specificity overrides */ padding-right: var(--pc-index-table-checkbox-offset-right); @@ -1002,6 +1055,7 @@ .Table-sticky, .StickyTable { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class -- generated by polaris-migrator DO NOT COPY */ .TableCell-first + .TableCell { @media (--p-breakpoints-sm-up) { position: sticky; @@ -1019,7 +1073,7 @@ z-index: var(--pc-index-table-sticky-cell); } } - + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.TableHeading-unselectable { position: sticky; left: 0; @@ -1048,6 +1102,7 @@ ); /* stylelint-enable -- Polaris component custom properties */ &.Table-sticky { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- makes first column sticky when table is unselectable */ .TableCell:first-child { left: 0; background-color: var(--p-color-bg-surface); @@ -1056,7 +1111,9 @@ position: sticky; } + /* stylelint-disable-next-line selector-max-class -- makes first column background secondary for subheader row type */ .TableRow-subheader { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- makes first column background secondary for subheader row type */ .TableCell:first-child { background-color: var(--p-color-bg-surface-secondary); } @@ -1081,6 +1138,7 @@ /* stylelint-enable -- Polaris component custom properties */ .TableRow-hovered:not(.TableRow-disabled) { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity, selector-max-compound-selectors -- generated by polaris-migrator DO NOT COPY */ &, .TableCell:first-child, .TableCell-first, @@ -1089,86 +1147,90 @@ background-color: var(--p-color-bg-surface-hover); } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- fixed hover state for nonselected indexTable */ &.toneSuccess { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity, selector-max-compound-selectors -- fixed hover state for nonselected indexTable */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-success-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- fixed hover state for nonselected indexTable */ &.toneWarning { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity, selector-max-compound-selectors -- fixed hover state for nonselected indexTable */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-warning-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- fixed hover state for nonselected indexTable */ &.toneCritical { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity, selector-max-compound-selectors -- fixed hover state for nonselected indexTable */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-critical-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- fixed hover state for nonselected indexTable */ &.toneSubdued { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity, selector-max-compound-selectors -- fixed hover state for nonselected indexTable */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-secondary-hover); } } + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- fixed hover state for nonselected indexTable */ &.TableRow-subheader { - /* stylelint-disable selector-max-specificity -- extra specificity needed for when combining props */ + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity, selector-max-compound-selectors -- fixed hover state for nonselected indexTable */ &, .TableCell:first-child, .TableCell-first, .TableCell-first + .TableCell, .TableCell:last-child { - /* stylelint-enable selector-max-specificity */ background-color: var(--p-color-bg-surface-secondary); } } } .toneSuccess { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .TableCell:first-child { background-color: var(--p-color-bg-surface-success); } } .toneWarning { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .TableCell:first-child { background-color: var(--p-color-bg-surface-warning); } } .toneCritical { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- added crtical tone for suspended products */ .TableCell:first-child { background-color: var(--p-color-bg-surface-critical); } } .toneSubdued { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .TableCell:first-child { background-color: var(--p-color-bg-surface-secondary); color: var(--p-color-text-secondary); @@ -1333,8 +1395,7 @@ var(--p-space-300); line-height: var(--p-font-line-height-500); background-color: var(--p-color-bg-surface); - transition: - opacity var(--p-motion-duration-100) var(--p-motion-ease), + transition: opacity var(--p-motion-duration-100) var(--p-motion-ease), visibility var(--p-motion-duration-100) var(--p-motion-ease); &.BulkActionsWrapperVisible { @@ -1348,7 +1409,6 @@ --pc-pagination-index: 30; /* stylelint-disable-next-line -- sets the z-index created above */ z-index: var(--pc-pagination-index); - @media (--p-breakpoints-md-up) { position: sticky; bottom: 0; diff --git a/polaris-react/src/components/Labelled/Labelled.module.css b/polaris-react/src/components/Labelled/Labelled.module.css index 1fe8db653c3..2bd8e59f992 100644 --- a/polaris-react/src/components/Labelled/Labelled.module.css +++ b/polaris-react/src/components/Labelled/Labelled.module.css @@ -7,6 +7,7 @@ color: var(--p-color-text-disabled); } +/* stylelint-disable-next-line -- color override since Text component doesn't support this color token */ .disabled > .HelpText > span { color: var(--p-color-text-disabled); } diff --git a/polaris-react/src/components/LegacyFilters/components/ConnectedFilterControl/ConnectedFilterControl.module.css b/polaris-react/src/components/LegacyFilters/components/ConnectedFilterControl/ConnectedFilterControl.module.css index 5077a655274..cfa15803aa1 100644 --- a/polaris-react/src/components/LegacyFilters/components/ConnectedFilterControl/ConnectedFilterControl.module.css +++ b/polaris-react/src/components/LegacyFilters/components/ConnectedFilterControl/ConnectedFilterControl.module.css @@ -1,3 +1,7 @@ +/* stylelint-disable selector-max-class -- generated by polaris-migrator DO NOT COPY */ +/* stylelint-disable selector-max-combinators -- generated by polaris-migrator DO NOT COPY */ +/* stylelint-disable selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ +/* stylelint-disable selector-max-compound-selectors -- generated by polaris-migrator DO NOT COPY */ /* stylelint-disable selector-max-type -- generated by polaris-migrator DO NOT COPY */ .ConnectedFilterControl { /* stylelint-disable -- polaris/conventions/polaris/custom-property-allowed-list */ diff --git a/polaris-react/src/components/LegacyTabs/LegacyTabs.module.css b/polaris-react/src/components/LegacyTabs/LegacyTabs.module.css index 0246c8f5e9d..a76c4532d8a 100644 --- a/polaris-react/src/components/LegacyTabs/LegacyTabs.module.css +++ b/polaris-react/src/components/LegacyTabs/LegacyTabs.module.css @@ -55,6 +55,7 @@ color: var(--p-color-text-brand); background-color: transparent; + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &::before { background-color: var(--p-color-bg-fill-tertiary-hover); } @@ -65,6 +66,7 @@ .Title { background-color: transparent; + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &::before { background: var(--p-color-bg-fill-tertiary-active); } @@ -77,6 +79,7 @@ } &:not(:active) { + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ .Title { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin focus-ring base, 0, focused; @@ -94,7 +97,7 @@ &:focus .Title { outline: var(--p-border-width-050) solid transparent; - + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &::before { background: var(--p-color-bg-fill-brand); } @@ -220,6 +223,7 @@ @mixin focus-ring base, 0, focused; } + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &:hover .Title::before { background-color: var(--p-color-border-hover); } diff --git a/polaris-react/src/components/LegacyTabs/tests/LegacyTabs.test.tsx b/polaris-react/src/components/LegacyTabs/tests/LegacyTabs.test.tsx index 75f17bc1a7a..51c206a751c 100644 --- a/polaris-react/src/components/LegacyTabs/tests/LegacyTabs.test.tsx +++ b/polaris-react/src/components/LegacyTabs/tests/LegacyTabs.test.tsx @@ -99,7 +99,7 @@ describe('', () => { const wrapper = mountWithApp(); tabs.forEach((tab) => { - expect(wrapper.find('ul')).toContainReactComponent(Tab, { + expect(wrapper.find('ul')!).toContainReactComponent(Tab, { id: tab.id, }); }); @@ -118,7 +118,7 @@ describe('', () => { ); panelIDedTabs.forEach((tab) => { - expect(wrapper.find('ul')).toContainReactComponent(Tab, { + expect(wrapper.find('ul')!).toContainReactComponent(Tab, { panelID: tab.panelID, }); }); diff --git a/polaris-react/src/components/MediaQueryProvider/tests/MediaQueryProvider.test.tsx b/polaris-react/src/components/MediaQueryProvider/tests/MediaQueryProvider.test.tsx index 42b7357f908..f1a86e6647a 100644 --- a/polaris-react/src/components/MediaQueryProvider/tests/MediaQueryProvider.test.tsx +++ b/polaris-react/src/components/MediaQueryProvider/tests/MediaQueryProvider.test.tsx @@ -20,6 +20,7 @@ describe('MediaQueryProvider', () => { it('passes isNavigationCollapsed to MediaQueryContext.Provider', () => { function Component() { const mediaQuery = useMediaQuery(); + // eslint-disable-next-line jest/no-if return mediaQuery !== undefined ?
: null; } @@ -34,6 +35,7 @@ describe('MediaQueryProvider', () => { it('sets isNavigationCollapsed when resize occurs', () => { function Component() { const {isNavigationCollapsed} = useMediaQuery(); + // eslint-disable-next-line jest/no-if return isNavigationCollapsed ?
content
: null; } const mediaQueryProvider = mountWithApp( diff --git a/polaris-react/src/components/Modal/components/Dialog/Dialog.module.css b/polaris-react/src/components/Modal/components/Dialog/Dialog.module.css index 28c9ab2d2fc..187e2aa55cc 100644 --- a/polaris-react/src/components/Modal/components/Dialog/Dialog.module.css +++ b/polaris-react/src/components/Modal/components/Dialog/Dialog.module.css @@ -82,7 +82,6 @@ &.sizeFullScreen { height: 100%; - @media (--p-breakpoints-md-up) { height: unset; } @@ -93,8 +92,7 @@ will-change: transform, opacity; opacity: 1; transform: translateY(0); - transition: - transform var(--p-motion-ease) var(--p-motion-duration-200), + transition: transform var(--p-motion-ease) var(--p-motion-duration-200), opacity var(--p-motion-ease) var(--p-motion-duration-200); &.entering, diff --git a/polaris-react/src/components/Navigation/Navigation.module.css b/polaris-react/src/components/Navigation/Navigation.module.css index 9b3be9c6a4d..bd939e2e7df 100644 --- a/polaris-react/src/components/Navigation/Navigation.module.css +++ b/polaris-react/src/components/Navigation/Navigation.module.css @@ -202,13 +202,14 @@ } .Icon-resized { + /* stylelint-disable-next-line selector-max-combinators -- DO NOT COPY polaris-migrator */ svg, img { margin: var(--p-space-050); height: var(--p-space-400); width: var(--p-space-400); } - + /* stylelint-disable-next-line selector-max-combinators -- DO NOT COPY polaris-migrator */ img { border-radius: var(--p-border-radius-100); } @@ -275,7 +276,7 @@ &.ItemInnerWrapper-display-actions-on-hover { @media (--p-breakpoints-md-up) { &:is(:hover, :focus-visible) { - /* stylelint-disable max-nesting-depth -- set background */ + /* stylelint-disable max-nesting-depth, selector-max-class, selector-max-specificity -- set background */ .SecondaryActions { background: var(--secondary-actions-on-hover-background-color); @@ -331,7 +332,7 @@ &.ItemInnerWrapper-display-actions-on-hover { @media (--p-breakpoints-md-up) { - /* stylelint-disable max-nesting-depth -- set background */ + /* stylelint-disable max-nesting-depth, selector-max-class, selector-max-specificity -- set background */ .SecondaryActions { background: var(--p-color-nav-bg-surface-selected); @@ -378,7 +379,7 @@ &.ItemInnerWrapper-display-actions-on-hover { @media (--p-breakpoints-md-up) { - /* stylelint-disable max-nesting-depth -- set background */ + /* stylelint-disable max-nesting-depth, selector-max-class, selector-max-specificity -- set background */ .SecondaryActions { background: var(--secondary-actions-on-hover-background-color); @@ -524,10 +525,12 @@ .Item:hover &, .Item:focus-visible & { + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: var(--p-color-icon); } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ img { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ filter: var(--pc-navigation-filter-icon); @@ -541,10 +544,12 @@ .Item-child-active &, .Item-child-active:hover &, .Item-selected:focus-visible & { + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: var(--p-color-icon-brand); } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ img { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ filter: var(--pc-navigation-filter-icon-action-primary); @@ -599,6 +604,7 @@ } .Text-truncated { + /* stylelint-disable-next-line value-no-vendor-prefix -- generated by polaris-migrator DO NOT COPY */ display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; @@ -796,6 +802,7 @@ @mixin focus-ring base, 0, focused; } + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &:active, &:active:hover { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @@ -824,6 +831,7 @@ color: var(--p-color-text-brand); } + /* stylelint-disable-next-line selector-max-specificity -- set active styles */ &:active, &:active:hover { /* stylelint-disable-next-line -- remove focus ring */ @@ -986,17 +994,20 @@ padding-inline: var(--p-space-150); } + /* stylelint-disable-next-line selector-max-specificity -- set focus styles */ &:focus-visible:not(:active) { /* stylelint-disable-next-line polaris/border/polaris/at-rule-disallowed-list -- remove focus ring mixin */ @mixin no-focus-ring; outline: var(--p-border-width-050) solid var(--p-color-border-focus); } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: var(--p-color-icon); } @media (--p-breakpoints-md-up) { + /* stylelint-disable selector-max-combinators -- generated by polaris-migrator DO NOT COPY */ svg, img { height: var(--p-space-400); @@ -1012,6 +1023,7 @@ &:focus { background: var(--p-color-bg-fill-transparent-hover); + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: var(--p-color-icon-hover); } @@ -1030,6 +1042,7 @@ } } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ &:hover svg { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ fill: var(--p-filter-icon); @@ -1040,16 +1053,19 @@ @mixin focus-ring base, 0, focused; } + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &:focus:hover svg { fill: var(--p-color-icon-hover); } + /* stylelint-disable-next-line selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &:active, &:active:hover { background: var(--p-color-bg-surface-active); /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin no-focus-ring; + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: var(--p-color-icon-active); } diff --git a/polaris-react/src/components/OptionList/OptionList.tsx b/polaris-react/src/components/OptionList/OptionList.tsx index 116a8fd23d7..733d6b01058 100644 --- a/polaris-react/src/components/OptionList/OptionList.tsx +++ b/polaris-react/src/components/OptionList/OptionList.tsx @@ -175,8 +175,8 @@ export function OptionList({ ? '100' : '0' : title - ? '050' - : '0'; + ? '050' + : '0'; return ( * { display: inline; } diff --git a/polaris-react/src/components/PolarisTestProvider/tests/PolarisTestProvider.test.tsx b/polaris-react/src/components/PolarisTestProvider/tests/PolarisTestProvider.test.tsx index 80f282e9315..e63cfe3cb21 100644 --- a/polaris-react/src/components/PolarisTestProvider/tests/PolarisTestProvider.test.tsx +++ b/polaris-react/src/components/PolarisTestProvider/tests/PolarisTestProvider.test.tsx @@ -41,6 +41,7 @@ describe('PolarisTestProvider', () => { it('allows isNavigationCollapsed to be overwritten', () => { function Component() { const {isNavigationCollapsed} = useMediaQuery(); + // eslint-disable-next-line jest/no-if return isNavigationCollapsed ? : null; } diff --git a/polaris-react/src/components/Popover/Popover.module.css b/polaris-react/src/components/Popover/Popover.module.css index ab5eb354b93..8fd9ae74b29 100644 --- a/polaris-react/src/components/Popover/Popover.module.css +++ b/polaris-react/src/components/Popover/Popover.module.css @@ -8,15 +8,13 @@ margin: var(--pc-popover-visible-portion-of-arrow) var(--p-space-200) var(--p-space-400); will-change: left, top; - @mixin shadow-bevel var(--p-shadow-300), var(--p-border-radius-300), null, '', 2; } .PopoverOverlay { opacity: 0; - transition: - opacity var(--p-motion-duration-100) var(--p-motion-ease), + transition: opacity var(--p-motion-duration-100) var(--p-motion-ease), transform var(--p-motion-duration-100) var(--p-motion-ease); /* stylelint-disable-next-line -- Polaris component custom properties */ transform: translateY(var(--pc-popover-vertical-motion-offset)); diff --git a/polaris-react/src/components/Popover/components/PopoverOverlay/PopoverOverlay.tsx b/polaris-react/src/components/Popover/components/PopoverOverlay/PopoverOverlay.tsx index 992b802a6f9..88971157e7f 100644 --- a/polaris-react/src/components/Popover/components/PopoverOverlay/PopoverOverlay.tsx +++ b/polaris-react/src/components/Popover/components/PopoverOverlay/PopoverOverlay.tsx @@ -104,14 +104,11 @@ export class PopoverOverlay extends PureComponent { this.focusContent(); this.changeTransitionStatus(TransitionStatus.Entering, () => { this.clearTransitionTimeout(); - this.enteringTimer = window.setTimeout( - () => { - this.setState({transitionStatus: TransitionStatus.Entered}); - // Important: This will not update when the active theme changes. - // Update this to `useTheme` once converted to a function component. - }, - parseInt(themeDefault.motion['motion-duration-100'], 10), - ); + this.enteringTimer = window.setTimeout(() => { + this.setState({transitionStatus: TransitionStatus.Entered}); + // Important: This will not update when the active theme changes. + // Update this to `useTheme` once converted to a function component. + }, parseInt(themeDefault.motion['motion-duration-100'], 10)); }); } diff --git a/polaris-react/src/components/RadioButton/RadioButton.module.css b/polaris-react/src/components/RadioButton/RadioButton.module.css index 7768a6e1a5c..a1250f8856e 100644 --- a/polaris-react/src/components/RadioButton/RadioButton.module.css +++ b/polaris-react/src/components/RadioButton/RadioButton.module.css @@ -3,7 +3,7 @@ margin: var(--p-space-025); } -/* stylelint-disable selector-max-specificity -- code is much more readable this way */ +/* stylelint-disable selector-max-specificity, selector-max-class, selector-max-combinators -- code is much more readable this way */ .Input { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin visually-hidden; @@ -28,8 +28,8 @@ &::before { background-color: var(--p-color-text-brand-on-bg-fill); - transition: - opacity var(--p-motion-duration-150) var(--p-motion-ease-out), + transition: opacity var(--p-motion-duration-150) + var(--p-motion-ease-out), transform var(--p-motion-duration-150) var(--p-motion-ease-out); opacity: 1; transform: translate(-50%, -50%) scale(1); @@ -93,7 +93,7 @@ } } } -/* stylelint-enable selector-max-specificity */ +/* stylelint-enable selector-max-specificity, selector-max-class, selector-max-combinators */ .Backdrop { /* stylelint-disable-next-line -- Polaris component custom properties */ @@ -130,8 +130,7 @@ width: var(--pc-icon-size-small); background-color: var(--p-color-bg-fill-brand); border-radius: var(--p-border-radius-full); - transition: - opacity var(--p-motion-duration-100) var(--p-motion-ease-out), + transition: opacity var(--p-motion-duration-100) var(--p-motion-ease-out), transform var(--p-motion-duration-100) var(--p-motion-ease-out); @media (forced-colors: active) { diff --git a/polaris-react/src/components/RangeSlider/components/DualThumb/DualThumb.module.css b/polaris-react/src/components/RangeSlider/components/DualThumb/DualThumb.module.css index 5d31160c996..df5b557cf11 100644 --- a/polaris-react/src/components/RangeSlider/components/DualThumb/DualThumb.module.css +++ b/polaris-react/src/components/RangeSlider/components/DualThumb/DualThumb.module.css @@ -166,6 +166,7 @@ transition-duration: var(--p-motion-duration-150); transition-timing-function: var(--p-motion-ease); + /* stylelint-disable selector-max-specificity, selector-max-combinators, selector-max-class -- generated by polaris-migrator DO NOT COPY */ .Thumbs:hover + .Output &, .Thumbs:active + .Output &, .Thumbs:focus + .Output & { @@ -179,6 +180,7 @@ ); } } + /* stylelint-enable selector-max-specificity, selector-max-combinators, selector-max-class -- generated by polaris-migrator DO NOT COPY */ > :first-child { display: block; diff --git a/polaris-react/src/components/RangeSlider/components/SingleThumb/SingleThumb.module.css b/polaris-react/src/components/RangeSlider/components/SingleThumb/SingleThumb.module.css index b5cb12624c5..aa5c21ab92c 100644 --- a/polaris-react/src/components/RangeSlider/components/SingleThumb/SingleThumb.module.css +++ b/polaris-react/src/components/RangeSlider/components/SingleThumb/SingleThumb.module.css @@ -250,6 +250,7 @@ transition-timing-function: var(--p-motion-ease); outline: var(--p-border-width-025) solid transparent; + /* stylelint-disable selector-max-specificity, selector-max-combinators, selector-max-class -- generated by polaris-migrator DO NOT COPY */ .Input:hover + .Output &, .Input:active + .Output &, .Input:focus + .Output & { @@ -263,6 +264,7 @@ ); } } + /* stylelint-enable selector-max-specificity, selector-max-combinators, selector-max-class */ > :first-child { display: block; diff --git a/polaris-react/src/components/ResourceItem/ResourceItem.module.css b/polaris-react/src/components/ResourceItem/ResourceItem.module.css index 8c80564ac1b..68d67fd87a1 100644 --- a/polaris-react/src/components/ResourceItem/ResourceItem.module.css +++ b/polaris-react/src/components/ResourceItem/ResourceItem.module.css @@ -17,6 +17,7 @@ background-color: var(--p-color-bg-surface-secondary-hover); .Actions { + /* stylelint-disable-next-line selector-max-combinators -- show actions on hover */ > * { /* stylelint-disable-next-line -- Polaris component custom properties */ clip: var(--pc-resource-item-action-unhide-clip); @@ -50,6 +51,7 @@ height: 100%; } +/* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ .focusedInner, .focusedInner.focused, .focusedInner.focused.selected { @@ -97,6 +99,7 @@ } .focused & { + /* stylelint-disable-next-line selector-max-combinators -- show actions on focus */ > * { /* stylelint-disable-next-line -- Polaris component custom properties */ clip: var(--pc-resource-item-action-unhide-clip); @@ -158,6 +161,7 @@ } } + /* stylelint-disable-next-line selector-max-class -- set border radius for selectable items */ &.selectable { border-radius: var(--p-border-radius-0); diff --git a/polaris-react/src/components/ResourceList/ResourceList.module.css b/polaris-react/src/components/ResourceList/ResourceList.module.css index e11886f4b9b..4a68711ceaa 100644 --- a/polaris-react/src/components/ResourceList/ResourceList.module.css +++ b/polaris-react/src/components/ResourceList/ResourceList.module.css @@ -1,6 +1,7 @@ .FiltersWrapper { padding: var(--p-space-300); + /* stylelint-disable-next-line selector-max-combinators, selector-max-specificity -- needed to add the dividing line only when the first child is the list */ + .ResourceListWrapper > :first-child:is(.ResourceList) { /* stylelint-disable-next-line -- polaris component custom properties */ border-top: var(--pc-resource-list-separator-border); @@ -15,6 +16,7 @@ border-top-left-radius: var(--p-border-radius-200); border-top-right-radius: var(--p-border-radius-200); + /* stylelint-disable-next-line selector-max-class, selector-max-combinators -- Ssshhhhh */ + .ResourceList, /* Bulk actions get injected into the DOM between the wrapper and resource*/ /* list dynamically when an item is checked, so we have to handle that case*/ @@ -41,6 +43,7 @@ background-color: rgba(255, 255, 255, 0.5); } +/* stylelint-disable-next-line selector-max-class, selector-max-combinators -- Needed to correctly position the header */ .FiltersWrapper + .ResourceListWrapper > .HeaderOuterWrapper { margin-top: calc(-1 * var(--p-space-400)); } @@ -110,6 +113,7 @@ flex: 0 1 auto; margin-left: var(--p-space-400); + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ .HeaderWrapper-hasAlternateTool.HeaderWrapper-hasSelect &, .HeaderWrapper-hasSort.HeaderWrapper-hasSelect & { padding-right: 0; @@ -138,6 +142,7 @@ } @media (--p-breakpoints-sm-up) { + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ .HeaderWrapper-hasSelect &, .HeaderWrapper-hasAlternateTool.HeaderWrapper-hasSelect &, .HeaderWrapper-hasSort.HeaderWrapper-hasSelect & { @@ -189,8 +194,7 @@ visibility: hidden; opacity: 0; - transition: - opacity var(--p-motion-duration-100) var(--p-motion-ease), + transition: opacity var(--p-motion-duration-100) var(--p-motion-ease), visibility var(--p-motion-duration-100) var(--p-motion-ease); &.BulkActionsWrapperVisible { @@ -202,7 +206,6 @@ .PaginationWrapper { /* stylelint-disable-next-line -- sets the z-index created above */ z-index: var(--pc-pagination-index); - @media (--p-breakpoints-md-up) { position: sticky; bottom: 0; diff --git a/polaris-react/src/components/Select/Select.module.css b/polaris-react/src/components/Select/Select.module.css index a8be16700cc..e7aa0cb9296 100644 --- a/polaris-react/src/components/Select/Select.module.css +++ b/polaris-react/src/components/Select/Select.module.css @@ -12,6 +12,7 @@ } &:not(.disabled):not(.error) { + /* stylelint-disable-next-line -- overrides */ &:hover .Backdrop { border-color: var(--p-color-input-border-hover); background-color: var(--p-color-input-bg-surface-hover); @@ -35,6 +36,7 @@ color: inherit; } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ .Icon svg { fill: var(--p-color-icon-disabled); } @@ -76,7 +78,7 @@ } @media (--p-breakpoints-md-down) { - /* stylelint-disable-next-line selector-max-type -- generated by polaris-migrator DO NOT COPY */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-type -- generated by polaris-migrator DO NOT COPY */ div > span { font-size: var(--p-font-size-400); line-height: var(--p-font-line-height-500); @@ -152,6 +154,7 @@ border-color: var(--p-color-border-critical-secondary); background-color: var(--p-color-bg-surface-critical); + /* stylelint-disable-next-line selector-max-class -- generated by polaris-migrator DO NOT COPY */ &.hover, &:hover { border-color: var(--p-color-border-critical); @@ -160,6 +163,7 @@ /* Need to override the higher specificity of the sibling selector so that errors still have red borders. */ + /* stylelint-disable-next-line selector-max-combinators, selector-max-specificity, selector-max-class -- generated by polaris-migrator DO NOT COPY */ .Input:focus-visible ~ .Backdrop { border-color: var(--p-color-border-critical-secondary); border-width: var(--p-border-width-025); @@ -191,11 +195,12 @@ background-color: var(--p-color-bg-surface-magic); } + /* stylelint-disable-next-line selector-max-combinators -- set Icon fill */ .Icon svg { fill: var(--p-color-icon-magic); } - /* stylelint-disable selector-max-specificity, max-nesting-depth -- apply hover and active styles */ + /* stylelint-disable selector-max-specificity, selector-max-class, selector-max-combinators, selector-max-compound-selectors, max-nesting-depth -- apply hover and active styles */ &:not(.disabled):not(.error) { &:not(:focus-within) { &:hover .Backdrop { @@ -214,7 +219,7 @@ } } } - /* stylelint-enable selector-max-specificity */ + /* stylelint-enable selector-max-specificity, selector-max-class, selector-max-combinators */ } @media (-ms-high-contrast: active) { @@ -266,6 +271,7 @@ .Icon { opacity: 1; + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: grayText; } diff --git a/polaris-react/src/components/Select/tests/Select.test.tsx b/polaris-react/src/components/Select/tests/Select.test.tsx index afd2d2267d9..34ca9140903 100644 --- a/polaris-react/src/components/Select/tests/Select.test.tsx +++ b/polaris-react/src/components/Select/tests/Select.test.tsx @@ -299,7 +299,7 @@ describe('', () => { expect(select).toContainReactComponent('select', {'aria-invalid': true}); expect(typeof errorID).toBe('string'); - expect(fieldGroup.find('div', {id: errorID})).toContainReactText( + expect(fieldGroup.find('div', {id: errorID})!).toContainReactText( 'Some error', ); }); diff --git a/polaris-react/src/components/ShadowBevel/ShadowBevel.module.css b/polaris-react/src/components/ShadowBevel/ShadowBevel.module.css index 95aedb393ed..cba19028be0 100644 --- a/polaris-react/src/components/ShadowBevel/ShadowBevel.module.css +++ b/polaris-react/src/components/ShadowBevel/ShadowBevel.module.css @@ -4,10 +4,12 @@ z-index: 0; @mixin scope-custom-property shadow-bevel, z-index; + @mixin responsive-props shadow-bevel, box-shadow, --pc-shadow-bevel-box-shadow; @mixin responsive-props shadow-bevel, border-radius, --pc-shadow-bevel-border-radius; @mixin responsive-props shadow-bevel, content, --pc-shadow-bevel-content; + @mixin shadow-bevel var(--pc-shadow-bevel-box-shadow), var(--pc-shadow-bevel-border-radius), null, var(--pc-shadow-bevel-content), var(--pc-shadow-bevel-z-index); diff --git a/polaris-react/src/components/Tabs/Tabs.module.css b/polaris-react/src/components/Tabs/Tabs.module.css index 6dc5040b399..92478f243d9 100644 --- a/polaris-react/src/components/Tabs/Tabs.module.css +++ b/polaris-react/src/components/Tabs/Tabs.module.css @@ -104,6 +104,7 @@ @mixin focus-ring wide, 0, focused; } + /* stylelint-disable-next-line selector-max-specificity -- specificity required to override focus ring */ &:not([aria-disabled='true']):focus-visible:not(:active) { /* stylelint-disable-next-line -- no way to set focus ring without mixin currently */ @mixin focus-ring base, 0, focused; diff --git a/polaris-react/src/components/Tabs/tests/Tabs.test.tsx b/polaris-react/src/components/Tabs/tests/Tabs.test.tsx index 5a7846d4dcb..dff833fedee 100644 --- a/polaris-react/src/components/Tabs/tests/Tabs.test.tsx +++ b/polaris-react/src/components/Tabs/tests/Tabs.test.tsx @@ -136,7 +136,7 @@ describe('Tabs', () => { const wrapper = mountWithApp(); tabs.forEach((tab) => { - expect(wrapper.find('ul')).toContainReactComponent(Tab, { + expect(wrapper.find('ul')!).toContainReactComponent(Tab, { id: tab.id, }); }); @@ -155,7 +155,7 @@ describe('Tabs', () => { ); panelIDedTabs.forEach((tab) => { - expect(wrapper.find('ul')).toContainReactComponent(Tab, { + expect(wrapper.find('ul')!).toContainReactComponent(Tab, { panelID: tab.panelID, }); }); diff --git a/polaris-react/src/components/Tag/Tag.module.css b/polaris-react/src/components/Tag/Tag.module.css index 79eaa5066d1..d214e8a1ce0 100644 --- a/polaris-react/src/components/Tag/Tag.module.css +++ b/polaris-react/src/components/Tag/Tag.module.css @@ -33,6 +33,7 @@ /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin focus-ring wide; + /* stylelint-disable-next-line selector-max-specificity -- use focus-ring mixin */ &:focus-visible:not(:active) { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin focus-ring base, 0, focused; @@ -159,6 +160,7 @@ .linkable.removable:hover { background: var(--p-color-bg-fill-tertiary-hover); + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- override Button background color */ .Button { background: var(--p-color-bg-fill-tertiary-active); } @@ -174,6 +176,7 @@ } } +/* stylelint-disable-next-line selector-max-class, selector-max-specificity -- override code above */ .sizeLarge .Link.segmented::after { margin-right: 0; } @@ -221,8 +224,9 @@ transparent 100% ); } - +/* stylelint-disable-next-line selector-max-class -- match tag hover color */ .sizeLarge.removable.linkable { + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- match tag hover color */ .Button { background-color: var(--p-color-bg-fill-tertiary-hover); /* stylelint-disable-next-line -- reveal on touch devices */ @@ -230,7 +234,7 @@ background-color: var(--p-color-bg-fill-tertiary); } } - + /* stylelint-disable-next-line selector-max-class, selector-max-specificity -- match tag hover color */ &:hover .overlay { background: linear-gradient( to left, diff --git a/polaris-react/src/components/TextField/TextField.module.css b/polaris-react/src/components/TextField/TextField.module.css index c956f5215ab..99ed23ed5a9 100644 --- a/polaris-react/src/components/TextField/TextField.module.css +++ b/polaris-react/src/components/TextField/TextField.module.css @@ -23,7 +23,7 @@ opacity: 1; } - /* needed to remove extra margin between loading indicator and clear button when visible */ + /* stylelint-disable-next-line -- needed to remove extra margin between loading indicator and clear button when visible */ .Loading:has(+ .ClearButton) { margin-right: 0; } @@ -71,6 +71,7 @@ .Input:focus-visible { outline: none; + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- outline based on child focus requires complex specificity */ ~ .Backdrop { border-color: var(--p-color-input-border-active); border-width: var(--p-border-width-025); @@ -84,28 +85,33 @@ } .error { + /* stylelint-disable-next-line -- set Backdrop styles */ .Input:hover ~ .Backdrop, .Input:focus-visible ~ .Backdrop { border-color: var(--p-color-border-critical-secondary); background-color: var(--p-color-bg-surface-critical); } + /* stylelint-disable-next-line -- set Backdrop styles */ .Input:active ~ .Backdrop, .Input:focus-visible ~ .Backdrop { border-width: var(--p-border-width-025); } + /* stylelint-disable-next-line selector-max-class, selector-max-combinators -- generated by polaris-migrator DO NOT COPY */ > .Input ~ .Backdrop, > .InputAndSuffixWrapper ~ .Backdrop { background-color: var(--p-color-bg-surface-critical); border-color: var(--p-color-border-critical-secondary); + /* stylelint-disable-next-line selector-max-class, selector-max-combinators, selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &::after { border-color: var(--p-color-border-focus); } } } +/* stylelint-disable -- specificity bump for readOnly styles to override */ .readOnly.readOnly { > .Input { color: var(--p-color-text-secondary); @@ -123,8 +129,9 @@ } } } +/* stylelint-enable */ -/* stylelint-disable selector-max-specificity -- specificity bump for magic styles to override */ +/* stylelint-disable selector-max-specificity, selector-max-class, selector-max-combinators -- specificity bump for magic styles to override */ .toneMagic { .Prefix, .Suffix { @@ -227,6 +234,7 @@ } .Prefix + .InputAndSuffixWrapper { + /* stylelint-disable-next-line selector-max-combinators, selector-max-class, selector-max-specificity -- necessary to remove padding when autosizing and with prefix */ .AutoSizeWrapper::after, input, textarea { @@ -330,12 +338,14 @@ } } +/* stylelint-disable -- override focus ring offset by increasing specificity */ .slim.borderless.slim.borderless { .Input, .Backdrop { outline-offset: 0; } } +/* stylelint-enable */ .Input-hasClearButton { /* Hide webkit search input clear button */ @@ -464,8 +474,8 @@ /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ z-index: var(--pc-text-field-contents); margin: 0 var(--p-space-300) 0 var(--p-space-100); - transition: - visibility var(--p-motion-duration-200) var(--p-motion-ease-in-out), + transition: visibility var(--p-motion-duration-200) + var(--p-motion-ease-in-out), opacity var(--p-motion-duration-200) var(--p-motion-ease-in-out); &:focus-visible:enabled { diff --git a/polaris-react/src/components/TextField/components/Resizer/tests/Resizer.test.tsx b/polaris-react/src/components/TextField/components/Resizer/tests/Resizer.test.tsx index eced7278e1e..0296c8b8d94 100644 --- a/polaris-react/src/components/TextField/components/Resizer/tests/Resizer.test.tsx +++ b/polaris-react/src/components/TextField/components/Resizer/tests/Resizer.test.tsx @@ -68,7 +68,7 @@ describe('', () => { ); const expectedEncodedContents = '<div>&
Contents</div>
'; - expect(resizer).toContainReactHtml(expectedEncodedContents); + expect(resizer)!.toContainReactHtml(expectedEncodedContents); }); it('ignores carriage returns when rendering content', () => { @@ -78,7 +78,7 @@ describe('', () => { ); const expectedEncodedContents = '<div>&
Contents</div>
'; - expect(resizer).toContainReactHtml(expectedEncodedContents); + expect(resizer)!.toContainReactHtml(expectedEncodedContents); }); }); @@ -88,14 +88,14 @@ describe('', () => { const resizer = mountWithApp( , ); - expect(resizer.find('div')).toContainReactHtml('


'); + expect(resizer.find('div'))!.toContainReactHtml('


'); }); it('renders nothing when minimumLines is undefined', () => { const resizer = mountWithApp( , ); - expect(resizer.find('div')).not.toContainReactHtml('


'); + expect(resizer.find('div'))!.not.toContainReactHtml('


'); }); }); diff --git a/polaris-react/src/components/TextField/tests/TextField.test.tsx b/polaris-react/src/components/TextField/tests/TextField.test.tsx index 6b033c982ab..bee9827362a 100644 --- a/polaris-react/src/components/TextField/tests/TextField.test.tsx +++ b/polaris-react/src/components/TextField/tests/TextField.test.tsx @@ -624,7 +624,7 @@ describe('', () => { .find('div', {className: styles.TextField})! .trigger('onClick', {target: button}); - expect(textField.find(Connected)).not.toContainReactComponent('div', { + expect(textField.find(Connected)!).not.toContainReactComponent('div', { className: expect.stringContaining(styles.focus), }); }); @@ -650,13 +650,13 @@ describe('', () => { textField.find('label', { id: `${labels[0]}`, }), - ).toContainReactText('TextField'); + )!.toContainReactText('TextField'); expect( textField.find('div', { id: `${labels[1]}`, }), - ).toContainReactText('kg'); + )!.toContainReactText('kg'); }); it('does not set focus `onClick` for the if the `target` is the `suffix`', () => { @@ -676,7 +676,7 @@ describe('', () => { .find('div', {className: styles.TextField})! .trigger('onClick', {target: button}); - expect(textField.find(Connected)).not.toContainReactComponent('div', { + expect(textField.find(Connected)!).not.toContainReactComponent('div', { className: expect.stringContaining(styles.focus), }); }); @@ -704,13 +704,13 @@ describe('', () => { textField.find('label', { id: `${labels[0]}`, }), - ).toContainReactText('TextField'); + )!.toContainReactText('TextField'); expect( textField.find('div', { id: `${labels[1]}`, }), - ).toContainReactText('Antique'); + )!.toContainReactText('Antique'); }); it('sets focus on the input when focused', () => { diff --git a/polaris-react/src/components/Thumbnail/Thumbnail.module.css b/polaris-react/src/components/Thumbnail/Thumbnail.module.css index 4459f354d59..a3d45cc6092 100644 --- a/polaris-react/src/components/Thumbnail/Thumbnail.module.css +++ b/polaris-react/src/components/Thumbnail/Thumbnail.module.css @@ -76,6 +76,7 @@ max-height: 100%; color: var(--p-color-icon-secondary); + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ svg { fill: currentColor; } diff --git a/polaris-react/src/components/Tooltip/components/TooltipOverlay/TooltipOverlay.module.css b/polaris-react/src/components/Tooltip/components/TooltipOverlay/TooltipOverlay.module.css index 75fc48c39c4..315021b5791 100644 --- a/polaris-react/src/components/Tooltip/components/TooltipOverlay/TooltipOverlay.module.css +++ b/polaris-react/src/components/Tooltip/components/TooltipOverlay/TooltipOverlay.module.css @@ -49,6 +49,7 @@ } /* TailDown */ + /* stylelint-disable-next-line -- TailDown styles */ .Tail { top: unset; bottom: calc(-1 * var(--p-space-200)); diff --git a/polaris-react/src/components/TopBar/TopBar.module.css b/polaris-react/src/components/TopBar/TopBar.module.css index b4eca8a0e17..3590c1805c1 100644 --- a/polaris-react/src/components/TopBar/TopBar.module.css +++ b/polaris-react/src/components/TopBar/TopBar.module.css @@ -38,7 +38,6 @@ .LogoDisplayControl { display: none; - @media (--p-breakpoints-md-up) { display: flex; } @@ -77,7 +76,6 @@ .ContextControl { display: none; - @media (--p-breakpoints-md-up) { /* stylelint-disable-next-line -- polaris custom global property */ width: var(--pg-layout-width-nav-base); @@ -120,7 +118,6 @@ width: calc(100% + var(--p-space-500)); height: calc(100% + var(--p-space-500)); } - @media (--p-breakpoints-md-up) { display: none; } @@ -130,12 +127,14 @@ @mixin focus-ring base, 6px; } + /* stylelint-disable selector-max-specificity -- generated by polaris-migrator DO NOT COPY */ &:focus-visible:not(:active) { .IconWrapper { /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ @mixin focus-ring base, 0, focused; } } + /* stylelint-enable selector-max-specificity */ } .LeftContent { diff --git a/polaris-react/src/components/TopBar/components/SearchField/SearchField.module.css b/polaris-react/src/components/TopBar/components/SearchField/SearchField.module.css index 982118af490..bba5dc9e342 100644 --- a/polaris-react/src/components/TopBar/components/SearchField/SearchField.module.css +++ b/polaris-react/src/components/TopBar/components/SearchField/SearchField.module.css @@ -41,17 +41,20 @@ border: var(--p-border-width-025) solid var(--pc-top-bar-border); } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ ~ .Icon svg { fill: var(--p-color-icon-secondary); } } .Input:focus-visible:not(:active) { + /* stylelint-disable-next-line selector-max-specificity -- set Backdrop outline styles */ ~ .Backdrop { outline: var(--p-border-width-050) solid var(--p-color-border-focus); outline-offset: var(--p-space-050); } + /* stylelint-disable-next-line selector-max-combinators, selector-max-specificity -- set Icon fill */ ~ .Icon svg { fill: var(--p-color-icon-secondary); } @@ -63,6 +66,7 @@ border: var(--p-border-width-025) solid var(--pc-top-bar-border); } + /* stylelint-disable-next-line -- generated by polaris-migrator DO NOT COPY */ .Icon svg { fill: var(--p-color-icon-inverse); } @@ -83,8 +87,7 @@ outline: none; color: var(--p-color-text-inverse-secondary); will-change: fill, color; - transition: - fill var(--p-motion-duration-200) var(--p-motion-ease), + transition: fill var(--p-motion-duration-200) var(--p-motion-ease), color var(--p-motion-duration-200) var(--p-motion-ease); &:hover { diff --git a/polaris-react/src/utilities/tests/use-is-after-initial-mount.test.tsx b/polaris-react/src/utilities/tests/use-is-after-initial-mount.test.tsx index 7df9a2b3433..2b5db15c8ed 100644 --- a/polaris-react/src/utilities/tests/use-is-after-initial-mount.test.tsx +++ b/polaris-react/src/utilities/tests/use-is-after-initial-mount.test.tsx @@ -8,6 +8,7 @@ describe('useIsAfterInitialMount', () => { let isAfterInitialMountValue: boolean | undefined; function Component() { const isAfterInitialMount = useIsAfterInitialMount(); + // eslint-disable-next-line jest/no-if if (isAfterInitialMountValue === undefined) isAfterInitialMountValue = !isAfterInitialMount; return null; diff --git a/polaris-react/src/utilities/use-event-listener.ts b/polaris-react/src/utilities/use-event-listener.ts index 40c05c05101..b8ea5e10c99 100644 --- a/polaris-react/src/utilities/use-event-listener.ts +++ b/polaris-react/src/utilities/use-event-listener.ts @@ -15,18 +15,18 @@ type UseEventListenerTarget = /** * Extracts the target element from a React `RefObject` or returns the input element. */ -type ExtractTargetElement = - Target extends RefObject ? Element : Target; +type ExtractTargetElement = Target extends RefObject + ? Element + : Target; /** * Extracts a (lib.dom.ts) EventMap for a given target element. */ -type ExtractEventMap = - ExtractTargetElement extends Window - ? WindowEventMap - : ExtractTargetElement extends Document - ? DocumentEventMap - : HTMLElementEventMap; +type ExtractEventMap = ExtractTargetElement extends Window + ? WindowEventMap + : ExtractTargetElement extends Document + ? DocumentEventMap + : HTMLElementEventMap; /** * Extracts all event names for a given target element. diff --git a/polaris.shopify.com/playroom/FrameComponent.tsx b/polaris.shopify.com/playroom/FrameComponent.tsx index 5b50027eec2..8a72b56c194 100644 --- a/polaris.shopify.com/playroom/FrameComponent.tsx +++ b/polaris.shopify.com/playroom/FrameComponent.tsx @@ -62,16 +62,16 @@ export default function FrameComponent({ // Tell parent frame of the initial size on first render useEffect(() => { - if (!wrapperRef.current || !content) { + if (!wrapperRef.current) { return; } var {height} = wrapperRef.current.getBoundingClientRect(); updateGrowFrameHeight(`${Math.ceil(height)}px`); - }, [content]); + }, []); // Watch for changes in size (screen resizing, interacting, etc); useEffect(() => { - if (!wrapperRef.current || !content) { + if (!wrapperRef.current) { return; } const observer = new ResizeObserver((entries) => { @@ -82,7 +82,7 @@ export default function FrameComponent({ return () => { observer.disconnect(); }; - }, [content]); + }, []); useEffect(() => { const urlFeatures = new URLSearchParams(window.location.search).get( diff --git a/polaris.shopify.com/src/components/PatternsExample/PatternsExample.tsx b/polaris.shopify.com/src/components/PatternsExample/PatternsExample.tsx index b964180c97b..1f945593f46 100644 --- a/polaris.shopify.com/src/components/PatternsExample/PatternsExample.tsx +++ b/polaris.shopify.com/src/components/PatternsExample/PatternsExample.tsx @@ -1,7 +1,6 @@ import {Fragment, useRef, useEffect, useState, useCallback} from 'react'; import {format} from 'prettier/standalone'; -import babel from 'prettier/plugins/babel'; -import estree from 'prettier/plugins/estree'; +import babel from 'prettier/parser-babel'; import endent from 'endent'; import {createUrl} from 'playroom'; import {Stack} from '../Stack'; @@ -15,62 +14,6 @@ import {viewTransition} from '../../utils/various'; import {MaximizeIcon, MinimizeIcon} from '@shopify/polaris-icons'; import Icon from '../Icon'; -function usePromise( - getPromise: () => Promise, - deps?: Array, -): [boolean, T | undefined] { - const [{loading, value}, setValue] = useState<{loading: boolean; value?: T}>({ - loading: true, - }); - useEffect(() => { - let cancelled = false; - getPromise().then((value) => { - // Don't try to call setValue after the component has unmounted - if (!cancelled) { - setValue({loading: false, value}); - } - }); - return () => { - cancelled = true; - }; - }, [getPromise, ...(deps ?? [])]); - return [loading, value]; -} - -const formatCodeSnippet = async (code: string) => { - let prettifiedCode; - - try { - // Casting because the typescript function(str: string) overload is missing - prettifiedCode = await format( - endent(code as unknown as TemplateStringsArray), - { - parser: 'babel', - plugins: [estree, babel], - }, - ); - } catch (error) { - if (process.env.NODE_ENV === 'production') { - console.error(error); - // proceed gracefully - prettifiedCode = code; - } else { - throw error; - } - } - - // We trim and call a custom replace here - // Because prettier appends a semi-colon at the end of the detected JSX phrase for some reason. - // TODO: Validate whether or not we can solve this at a config level. (i.e. disable the rule) - - return prettifiedCode.trim().replace(/[;$]/g, (match, offset, string) => { - if (offset === string.length - 1 || string.lastIndexOf(match) === offset) { - return ''; - } - return match; - }); -}; - const getISOStringYear = () => new Date().toISOString().split('T')[0]; const PlayroomButton = ({code, title}: {code: string; title?: string}) => { @@ -217,36 +160,57 @@ const PatternsExample = ({ } }, [dialogActive, handleMinimize]); - const getFormattedCode = useCallback(async () => { - const formattedCode = await formatCodeSnippet(example.code); - const [sandboxCode, previewCode] = await Promise.all([ - example.sandboxContext - ? formatCodeSnippet( - example.sandboxContext - .replace(/\\\#/g, '') - .replace(/____CODE____;?/, formattedCode), - ) - : formattedCode, - - example.previewContext - ? formatCodeSnippet( - example.previewContext - .replace(/\\\#/g, '') - .replace(/____CODE____;?/, formattedCode), - ) - : formattedCode, - ]); - return [formattedCode, sandboxCode, previewCode]; - }, [example.code, example.sandboxContext, example.previewContext]); - - const [ - formattingCode, - [formattedCode = '', sandboxCode = '', previewCode = ''] = [], - ] = usePromise(getFormattedCode); - - if (formattingCode) { - return null; - } + const formatCodeSnippet = (code: string) => { + let prettifiedCode; + + try { + // Casting because the typescript function(str: string) overload is missing + prettifiedCode = format(endent(code as unknown as TemplateStringsArray), { + parser: 'babel', + plugins: [babel], + }); + } catch (error) { + if (process.env.NODE_ENV === 'production') { + console.error(error); + // proceed gracefully + prettifiedCode = code; + } else { + throw error; + } + } + + // We trim and call a custom replace here + // Because prettier appends a semi-colon at the end of the detected JSX phrase for some reason. + // TODO: Validate whether or not we can solve this at a config level. (i.e. disable the rule) + + return prettifiedCode.trim().replace(/[;$]/g, (match, offset, string) => { + if ( + offset === string.length - 1 || + string.lastIndexOf(match) === offset + ) { + return ''; + } + return match; + }); + }; + + const formattedCode = formatCodeSnippet(example.code); + + const sandboxCode = example.sandboxContext + ? formatCodeSnippet( + example.sandboxContext + .replace(/\\\#/g, '') + .replace(/____CODE____;?/, formattedCode), + ) + : formattedCode; + + const previewCode = example.previewContext + ? formatCodeSnippet( + example.previewContext + .replace(/\\\#/g, '') + .replace(/____CODE____;?/, formattedCode), + ) + : formattedCode; const previewUrl = `/playroom/preview/index.html${createUrl({ code: previewCode, diff --git a/stylelint-polaris/package.json b/stylelint-polaris/package.json index f4e4cd100bc..17c3851a7e8 100644 --- a/stylelint-polaris/package.json +++ b/stylelint-polaris/package.json @@ -31,18 +31,18 @@ "exports": "./index.js", "scripts": { "lint": "TIMING=1 eslint --cache .", - "test": "NODE_OPTIONS=\"--experimental-vm-modules --no-warnings\" jest", + "test": "jest", "clean": "rm -rf .turbo node_modules dist" }, "dependencies": { - "stylelint-scss": "^6.3.2", + "stylelint-scss": "^4.4.0", "postcss-scss": "^4.0.9", "postcss-value-parser": "^4.2.0", "postcss-media-query-parser": "^0.2.3", "@shopify/polaris-tokens": "^9.2.0" }, "peerDependencies": { - "stylelint": "^16.0.0" + "stylelint": "^14.15.0 || ^15.0.0" }, "jest": { "preset": "jest-preset-stylelint" diff --git a/stylelint-polaris/plugins/coverage/index.js b/stylelint-polaris/plugins/coverage/index.js index 34a28889711..135721e46fd 100644 --- a/stylelint-polaris/plugins/coverage/index.js +++ b/stylelint-polaris/plugins/coverage/index.js @@ -71,7 +71,7 @@ module.exports = stylelint.createPlugin( } } - return async (root, result) => { + return (root, result) => { const validOptions = stylelint.utils.validateOptions( result, coverageRuleName, @@ -93,7 +93,7 @@ module.exports = stylelint.createPlugin( severity = result.stylelint.config?.defaultSeverity, } = rule; - await stylelint.utils.checkAgainstRule( + stylelint.utils.checkAgainstRule( { ruleName: stylelintRuleName, ruleSettings, diff --git a/stylelint-polaris/plugins/declaration-property-value-disallowed-list/index.js b/stylelint-polaris/plugins/declaration-property-value-disallowed-list/index.js index ca1ff205f6f..cfc2e0f8cbd 100644 --- a/stylelint-polaris/plugins/declaration-property-value-disallowed-list/index.js +++ b/stylelint-polaris/plugins/declaration-property-value-disallowed-list/index.js @@ -22,7 +22,7 @@ const {rule} = stylelint.createPlugin( ruleName, /** @param {PrimaryOptions} primary */ (primary) => { - return async (root, result) => { + return (root, result) => { const validOptions = stylelint.utils.validateOptions(result, ruleName, { actual: primary, possible: [validateObjectWithArrayProps(isString, isRegExp)], @@ -30,7 +30,7 @@ const {rule} = stylelint.createPlugin( if (!validOptions) return; - await stylelint.utils.checkAgainstRule( + stylelint.utils.checkAgainstRule( { ruleName: 'declaration-property-value-disallowed-list', ruleSettings: primary, diff --git a/stylelint-polaris/plugins/media-query-allowed-list/index.js b/stylelint-polaris/plugins/media-query-allowed-list/index.js index 7faa27fd274..d604db575c1 100644 --- a/stylelint-polaris/plugins/media-query-allowed-list/index.js +++ b/stylelint-polaris/plugins/media-query-allowed-list/index.js @@ -34,7 +34,7 @@ const {rule} = stylelint.createPlugin( ruleName, /** @param {PrimaryOptions} primary */ (primary) => { - return async (root, result) => { + return (root, result) => { const validOptions = stylelint.utils.validateOptions( result, ruleName, @@ -79,7 +79,7 @@ const {rule} = stylelint.createPlugin( // Pass `primary.allowedMediaFeatureNames` to the // built-in `media-feature-name-allowed-list` rule - await stylelint.utils.checkAgainstRule( + stylelint.utils.checkAgainstRule( { ruleName: 'media-feature-name-allowed-list', ruleSettings: allowedMediaFeatureNames,