Skip to content

Commit 05cb157

Browse files
fix!(stylelint): remove sass support (#539)
* fix!(stylelint): remove sass support * Create fresh-jars-tickle.md Signed-off-by: Kentaro Suzuki <71284054+sushichan044@users.noreply.github.com> * chore: update snapshot (github-actions) --------- Signed-off-by: Kentaro Suzuki <71284054+sushichan044@users.noreply.github.com> Co-authored-by: robo-miku[bot] <185786754+robo-miku[bot]@users.noreply.github.com>
1 parent d572fec commit 05cb157

14 files changed

Lines changed: 137 additions & 4124 deletions

File tree

.changeset/fresh-jars-tickle.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@virtual-live-lab/stylelint-config": major
3+
---
4+
5+
fix!(stylelint): remove sass support

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
- Prettier: `@virtual-live-lab/prettier-config`
1212
- Code formatter for JavaScript / TypeScript / CSS and more
1313
- Stylelint: `@virtual-live-lab/stylelint-config`
14-
- Lint / error check for CSS / SCSS
14+
- Lint / error check for CSS
1515
- TypeScript: `@virtual-live-lab/tsconfig`
1616
- TypeScript configuration presets
1717

packages/stylelint-config/README.md

Lines changed: 2 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -30,29 +30,6 @@ import createConfig from "@virtual-live-lab/stylelint-config";
3030
export default createConfig();
3131
```
3232

33-
### Use for sass / scss
34-
35-
```bash
36-
npm install stylelint \
37-
@virtual-live-lab/stylelint-config \
38-
@double-great/stylelint-a11y \
39-
stylelint-declaration-block-no-ignored-properties \
40-
stylelint-value-no-unknown-custom-properties \
41-
stylelint-config-recommended \
42-
stylelint-config-standard \
43-
stylelint-config-recess-order \
44-
stylelint-config-standard-scss \
45-
stylelint-config-sass-guidelines \
46-
--save-dev
47-
```
48-
49-
```js
50-
// stylelint.config.mjs
51-
import createConfig from "@virtual-live-lab/stylelint-config";
52-
53-
export default createConfig({ sass: true });
54-
```
55-
5633
### Use for Astro
5734

5835
> [!TIP]
@@ -71,8 +48,6 @@ npm install stylelint \
7148
stylelint-config-recommended \
7249
stylelint-config-standard \
7350
stylelint-config-recess-order \
74-
stylelint-config-standard-scss \
75-
stylelint-config-sass-guidelines \
7651
stylelint-config-html \
7752
--save-dev
7853
```
@@ -83,12 +58,11 @@ import createConfig from "@virtual-live-lab/stylelint-config";
8358

8459
export default createConfig({
8560
astro: true,
86-
// enable sass if you use sass / scss
87-
sass: true,
8861
});
8962
```
9063

9164
### a11y rules
65+
9266
a11y rules are enabled by default. If you **do not** want to use a11y rules, you can disable it.
9367

9468
```js
@@ -99,6 +73,7 @@ export default createConfig({ a11y: false });
9973
```
10074

10175
### tailwindcss rules
76+
10277
If you use tailwindcss, you can enable tailwindcss rules.
10378

10479
```js
@@ -120,7 +95,6 @@ import createConfig from "@virtual-live-lab/stylelint-config";
12095

12196
export default createConfig({
12297
tailwindcss: true,
123-
sass: true,
12498
astro: true,
12599
},
126100
{

packages/stylelint-config/docs/vscode-setup.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ VLLでは基本的にVSCodeの利用を推奨しています。ここではVSCod
2222
"editor.codeActionsOnSave": {
2323
"source.fixAll.stylelint": "explicit"
2424
},
25-
"stylelint.validate": ["css", "postcss", "scss"],
25+
"stylelint.validate": ["css", "postcss"],
2626
"stylelint.packageManager": "PROJECT_PACKAGE_MANAGER"
2727
}
2828
```
@@ -33,6 +33,6 @@ VLLでは基本的にVSCodeの利用を推奨しています。ここではVSCod
3333

3434
```json
3535
{
36-
"stylelint.validate": ["css", "postcss", "scss", "astro"]
36+
"stylelint.validate": ["css", "postcss", "astro"]
3737
}
3838
```

packages/stylelint-config/package.json

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,6 @@
1010
".": {
1111
"types": "./dist/index.d.ts",
1212
"import": "./dist/index.js"
13-
},
14-
"./scss": {
15-
"types": "./dist/scss.d.ts",
16-
"import": "./dist/scss.js"
17-
},
18-
"./astro": {
19-
"types": "./dist/astro.d.ts",
20-
"import": "./dist/astro.js"
2113
}
2214
},
2315
"files": [
@@ -40,9 +32,7 @@
4032
"defu": "6.1.4",
4133
"stylelint-config-html": "1.1.0",
4234
"stylelint-config-recess-order": "7.2.0",
43-
"stylelint-config-sass-guidelines": "12.1.0",
4435
"stylelint-config-standard": "39.0.0",
45-
"stylelint-config-standard-scss": "15.0.1",
4636
"stylelint-declaration-block-no-ignored-properties": "2.8.0",
4737
"stylelint-value-no-unknown-custom-properties": "6.0.1"
4838
},

packages/stylelint-config/src/astro.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@ import type { Config } from "stylelint";
44

55
import { createConfig } from "./factory";
66

7-
const config: Config = createConfig({ astro: true, sass: true });
7+
const config: Config = createConfig({ astro: true });
88

99
export default config;

packages/stylelint-config/src/config/tailwind.ts

Lines changed: 6 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
import type { Config } from "stylelint";
22

3-
import { astroFiles, cssFiles, sassFiles } from "../files";
3+
import { astroFiles, cssFiles } from "../files";
44
import { mergeConfigs } from "../util";
55

66
type TailwindOptions = {
77
astro: boolean;
8-
sass: boolean;
98
};
109

1110
export const tailwindConfig = (options: TailwindOptions): Config => {
12-
const { astro, sass } = options;
11+
const { astro } = options;
1312

1413
const configs: Config[] = [];
1514

@@ -36,20 +35,20 @@ export const tailwindConfig = (options: TailwindOptions): Config => {
3635
],
3736
});
3837

39-
if (sass) {
40-
// enable for sass
38+
if (astro) {
39+
// enable for astro with css
4140
configs.push({
4241
overrides: [
4342
{
44-
files: sassFiles,
43+
files: astroFiles,
4544
rules: {
4645
"at-rule-no-deprecated": [
4746
true,
4847
{
4948
ignoreAtRules: tailwindDeprecatedAtRules,
5049
},
5150
],
52-
"scss/at-rule-no-unknown": [
51+
"at-rule-no-unknown": [
5352
true,
5453
{
5554
ignoreAtRules: tailwindAtRules,
@@ -61,56 +60,6 @@ export const tailwindConfig = (options: TailwindOptions): Config => {
6160
});
6261
}
6362

64-
if (astro) {
65-
if (sass) {
66-
// enable for astro with sass
67-
configs.push({
68-
overrides: [
69-
{
70-
files: astroFiles,
71-
rules: {
72-
"at-rule-no-deprecated": [
73-
true,
74-
{
75-
ignoreAtRules: tailwindDeprecatedAtRules,
76-
},
77-
],
78-
"scss/at-rule-no-unknown": [
79-
true,
80-
{
81-
ignoreAtRules: tailwindAtRules,
82-
},
83-
],
84-
},
85-
},
86-
],
87-
});
88-
} else {
89-
// enable for astro with css
90-
configs.push({
91-
overrides: [
92-
{
93-
files: astroFiles,
94-
rules: {
95-
"at-rule-no-deprecated": [
96-
true,
97-
{
98-
ignoreAtRules: tailwindDeprecatedAtRules,
99-
},
100-
],
101-
"at-rule-no-unknown": [
102-
true,
103-
{
104-
ignoreAtRules: tailwindAtRules,
105-
},
106-
],
107-
},
108-
},
109-
],
110-
});
111-
}
112-
}
113-
11463
return mergeConfigs(configs.at(0), ...configs.slice(1));
11564
};
11665

packages/stylelint-config/src/factory.ts

Lines changed: 2 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { Config } from "stylelint";
22

33
import { tailwindConfig } from "./config/tailwind";
4-
import { astroFiles, sassFiles } from "./files";
4+
import { astroFiles } from "./files";
55
import { mergeConfigs } from "./util";
66

77
type PresetOptions = {
@@ -23,12 +23,6 @@ type PresetOptions = {
2323
* @default false
2424
*/
2525
cssModulesKit?: boolean;
26-
/**
27-
* Enable sass / scss rules.
28-
*
29-
* @default false
30-
*/
31-
sass?: boolean;
3226
/**
3327
* Enable tailwindcss rules.
3428
*
@@ -55,7 +49,6 @@ export const createConfig = (
5549
a11y = true,
5650
astro = false,
5751
cssModulesKit = false,
58-
sass = false,
5952
tailwindcss = false,
6053
} = options;
6154

@@ -89,80 +82,7 @@ export const createConfig = (
8982
});
9083
}
9184

92-
if (sass) {
93-
configs.push({
94-
overrides: [
95-
{
96-
extends: [
97-
"stylelint-config-standard-scss",
98-
"stylelint-config-sass-guidelines",
99-
],
100-
files: sassFiles,
101-
name: "@virtual-live-lab/stylelint-config/sass",
102-
rules: {
103-
// see: https://github.com/VirtualLiveLab/js-config/issues/178
104-
"@stylistic/block-opening-brace-space-before": null,
105-
"@stylistic/color-hex-case": null,
106-
"@stylistic/declaration-bang-space-after": null,
107-
"@stylistic/declaration-bang-space-before": null,
108-
"@stylistic/declaration-block-semicolon-newline-after": null,
109-
"@stylistic/declaration-block-semicolon-space-before": null,
110-
"@stylistic/declaration-block-trailing-semicolon": null,
111-
"@stylistic/declaration-colon-space-after": null,
112-
"@stylistic/declaration-colon-space-before": null,
113-
"@stylistic/function-comma-space-after": null,
114-
"@stylistic/function-parentheses-space-inside": null,
115-
"@stylistic/indentation": null,
116-
"@stylistic/media-feature-parentheses-space-inside": null,
117-
"@stylistic/no-missing-end-of-source-newline": null,
118-
"@stylistic/number-leading-zero": null,
119-
"@stylistic/number-no-trailing-zeros": null,
120-
"@stylistic/selector-list-comma-newline-after": null,
121-
"@stylistic/string-quotes": null,
122-
},
123-
},
124-
],
125-
});
126-
}
127-
12885
if (astro) {
129-
// extends: ["stylelint-config-html/astro"] は最後に override に追加しないとパーサーの設定が壊れる
130-
if (sass) {
131-
configs.push({
132-
overrides: [
133-
{
134-
extends: [
135-
"stylelint-config-standard-scss",
136-
"stylelint-config-sass-guidelines",
137-
],
138-
files: astroFiles,
139-
name: "@virtual-live-lab/stylelint-config/astro/sass",
140-
rules: {
141-
// see: https://github.com/VirtualLiveLab/js-config/issues/178
142-
"@stylistic/block-opening-brace-space-before": null,
143-
"@stylistic/color-hex-case": null,
144-
"@stylistic/declaration-bang-space-after": null,
145-
"@stylistic/declaration-bang-space-before": null,
146-
"@stylistic/declaration-block-semicolon-newline-after": null,
147-
"@stylistic/declaration-block-semicolon-space-before": null,
148-
"@stylistic/declaration-block-trailing-semicolon": null,
149-
"@stylistic/declaration-colon-space-after": null,
150-
"@stylistic/declaration-colon-space-before": null,
151-
"@stylistic/function-comma-space-after": null,
152-
"@stylistic/function-parentheses-space-inside": null,
153-
"@stylistic/indentation": null,
154-
"@stylistic/media-feature-parentheses-space-inside": null,
155-
"@stylistic/no-missing-end-of-source-newline": null,
156-
"@stylistic/number-leading-zero": null,
157-
"@stylistic/number-no-trailing-zeros": null,
158-
"@stylistic/selector-list-comma-newline-after": null,
159-
"@stylistic/string-quotes": null,
160-
},
161-
},
162-
],
163-
});
164-
}
165-
16686
// この push が astro 向け override の最後であることを確認すること
16787
configs.push({
16888
overrides: [
@@ -176,7 +96,7 @@ export const createConfig = (
17696
}
17797

17898
if (tailwindcss) {
179-
configs.push(tailwindConfig({ astro, sass }));
99+
configs.push(tailwindConfig({ astro }));
180100
}
181101

182102
if (cssModulesKit) {
Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,5 @@
11
// css
22
export const cssFiles = ["*.css", "**/*.css"] as const satisfies string[];
33

4-
// sass
5-
const _sassFiles = ["*.sass", "**/*.sass"] as const satisfies string[];
6-
const _scssFiles = ["*.scss", "**/*.scss"] as const satisfies string[];
7-
export const sassFiles = [
8-
..._sassFiles,
9-
..._scssFiles,
10-
] as const satisfies string[];
11-
124
// astro
135
export const astroFiles = ["*.astro", "**/*.astro"] as const satisfies string[];

packages/stylelint-config/src/scss.ts

Lines changed: 0 additions & 9 deletions
This file was deleted.

0 commit comments

Comments
 (0)