From d3343f1f7bfe3a5bba1814421f198b6d0d7f07a5 Mon Sep 17 00:00:00 2001 From: Ilia Mashkov Date: Mon, 24 Nov 2025 12:21:04 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20=D0=A3=D1=81=D1=82=D0=B0=D0=B2=D0=BD?= =?UTF-8?q?=D0=BE=D0=B2=D0=BB=D0=B5=D0=BD=20=D0=BF=D0=BB=D0=B0=D0=B3=D0=B8?= =?UTF-8?q?=D0=BD=20=D0=B4=D0=BB=D1=8F=20=D1=81=D0=BE=D0=B1=D0=BB=D1=8E?= =?UTF-8?q?=D0=B4=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=81=D1=82=D0=B8=D0=BB=D0=B8?= =?UTF-8?q?=D0=B7=D0=B0=D1=86=D0=B8=D0=B8=20=D0=BA=D0=BE=D0=B4=D0=B0=20?= =?UTF-8?q?=D0=B2=20=D1=84=D0=B0=D0=B9=D0=BB=D0=B0=D1=85=20=D1=81=D1=82?= =?UTF-8?q?=D0=B8=D0=BB=D0=B5=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + pnpm-lock.yaml | 25 +++++++++++++++++++++++++ stylelint.config.js | 6 +++++- 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index a0592c5..ff45996 100644 --- a/package.json +++ b/package.json @@ -40,6 +40,7 @@ "@storybook/addon-webpack5-compiler-babel": "^4.0.0", "@storybook/react": "^8.6.14", "@storybook/react-webpack5": "^8.6.14", + "@stylistic/stylelint-plugin": "^4.0.0", "@svgr/webpack": "^8.1.0", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 49ec6d0..351f9e0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -63,6 +63,9 @@ importers: '@storybook/react-webpack5': specifier: ^8.6.14 version: 8.6.14(@storybook/test@8.6.14(storybook@8.6.14(prettier@3.6.2)))(esbuild@0.25.12)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(storybook@8.6.14(prettier@3.6.2))(typescript@5.9.3)(webpack-cli@5.1.4) + '@stylistic/stylelint-plugin': + specifier: ^4.0.0 + version: 4.0.0(stylelint@16.25.0(typescript@5.9.3)) '@svgr/webpack': specifier: ^8.1.0 version: 8.1.0(typescript@5.9.3) @@ -1664,6 +1667,12 @@ packages: peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 + '@stylistic/stylelint-plugin@4.0.0': + resolution: {integrity: sha512-CFwt3K4Y/7bygNCLCQ8Sy4Hzgbhxq3BsNW0FIuYxl17HD3ywptm54ocyeiLVRrk5jtz1Zwks7Xr9eiZt8SWHAw==} + engines: {node: ^18.12 || >=20.9} + peerDependencies: + stylelint: ^16.22.0 + '@svgr/babel-plugin-add-jsx-attribute@8.0.0': resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} engines: {node: '>=14'} @@ -5224,6 +5233,9 @@ packages: peerDependencies: webpack: ^5.27.0 + style-search@0.1.0: + resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==} + stylelint-config-recommended-scss@14.1.0: resolution: {integrity: sha512-bhaMhh1u5dQqSsf6ri2GVWWQW5iUjBYgcHkh7SgDDn92ijoItC/cfO/W+fpXshgTQWhwFkP1rVcewcv4jaftRg==} engines: {node: '>=18.12.0'} @@ -7531,6 +7543,17 @@ snapshots: dependencies: storybook: 8.6.14(prettier@3.6.2) + '@stylistic/stylelint-plugin@4.0.0(stylelint@16.25.0(typescript@5.9.3))': + dependencies: + '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) + '@csstools/css-tokenizer': 3.0.4 + '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) + postcss: 8.5.6 + postcss-selector-parser: 7.1.0 + postcss-value-parser: 4.2.0 + style-search: 0.1.0 + stylelint: 16.25.0(typescript@5.9.3) + '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.28.5)': dependencies: '@babel/core': 7.28.5 @@ -11617,6 +11640,8 @@ snapshots: dependencies: webpack: 5.103.0(esbuild@0.25.12)(webpack-cli@5.1.4) + style-search@0.1.0: {} + stylelint-config-recommended-scss@14.1.0(postcss@8.5.6)(stylelint@16.25.0(typescript@5.9.3)): dependencies: postcss-scss: 4.0.9(postcss@8.5.6) diff --git a/stylelint.config.js b/stylelint.config.js index 7ead2f2..f51a6f5 100644 --- a/stylelint.config.js +++ b/stylelint.config.js @@ -46,8 +46,12 @@ const { module.exports = { extends: 'stylelint-config-standard-scss', - plugins: ['stylelint-order'], + plugins: [ + 'stylelint-order', + '@stylistic/stylelint-plugin', + ], rules: { + '@stylistic/indentation': 2, 'selector-class-pattern': null, 'order/order': selectorOrdering, 'order/properties-order': propertyOrdering,