@culur/config-stylelint 1.3.8 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/README.md +20 -18
- package/dist/chunk-2L6F34NR.cjs +14 -0
- package/dist/chunk-2L6F34NR.cjs.map +1 -0
- package/dist/chunk-5HZAPKJK.cjs +14 -0
- package/dist/chunk-5HZAPKJK.cjs.map +1 -0
- package/dist/chunk-7YJC5A7X.js +311 -0
- package/dist/chunk-7YJC5A7X.js.map +1 -0
- package/dist/chunk-AHYV3TPN.cjs +14 -0
- package/dist/{chunk-44IJ2A3A.cjs.map → chunk-AHYV3TPN.cjs.map} +1 -1
- package/dist/chunk-BT2UAWU5.cjs +14 -0
- package/dist/{chunk-A2NZOYLK.cjs.map → chunk-BT2UAWU5.cjs.map} +1 -1
- package/dist/chunk-ETSJ5CPB.js +12 -0
- package/dist/chunk-ETSJ5CPB.js.map +1 -0
- package/dist/chunk-FCMONRWK.cjs +14 -0
- package/dist/{chunk-OG7QOQGS.cjs.map → chunk-FCMONRWK.cjs.map} +1 -1
- package/dist/{chunk-2CTXRP5Z.js → chunk-GQ257A2K.js} +3 -3
- package/dist/{chunk-2CTXRP5Z.js.map → chunk-GQ257A2K.js.map} +1 -1
- package/dist/chunk-IOXNKZ3W.js +12 -0
- package/dist/chunk-IOXNKZ3W.js.map +1 -0
- package/dist/chunk-IPZUILFB.js +13 -0
- package/dist/chunk-IPZUILFB.js.map +1 -0
- package/dist/chunk-IRWIKWXE.cjs +14 -0
- package/dist/chunk-IRWIKWXE.cjs.map +1 -0
- package/dist/chunk-JI7O4HVJ.cjs +15 -0
- package/dist/chunk-JI7O4HVJ.cjs.map +1 -0
- package/dist/{chunk-UBTDEDPU.js → chunk-K2R66Y7L.js} +3 -3
- package/dist/{chunk-UBTDEDPU.js.map → chunk-K2R66Y7L.js.map} +1 -1
- package/dist/chunk-NYHPFT42.cjs +14 -0
- package/dist/chunk-NYHPFT42.cjs.map +1 -0
- package/dist/chunk-OJBMU5EQ.cjs +313 -0
- package/dist/chunk-OJBMU5EQ.cjs.map +1 -0
- package/dist/{chunk-EVBVPEHS.js → chunk-P4T4OD2E.js} +3 -3
- package/dist/{chunk-EVBVPEHS.js.map → chunk-P4T4OD2E.js.map} +1 -1
- package/dist/chunk-PZP7E3HL.cjs +14 -0
- package/dist/{chunk-ZMJKJBWC.cjs.map → chunk-PZP7E3HL.cjs.map} +1 -1
- package/dist/chunk-Q5FJF5TP.js +12 -0
- package/dist/chunk-Q5FJF5TP.js.map +1 -0
- package/dist/chunk-RK6QB4CM.js +12 -0
- package/dist/chunk-RK6QB4CM.js.map +1 -0
- package/dist/chunk-VAAZVLQ7.js +12 -0
- package/dist/chunk-VAAZVLQ7.js.map +1 -0
- package/dist/{chunk-CHZLHGNT.js → chunk-VI54LIUS.js} +3 -3
- package/dist/{chunk-CHZLHGNT.js.map → chunk-VI54LIUS.js.map} +1 -1
- package/dist/chunk-WEHMG43L.cjs +14 -0
- package/dist/chunk-WEHMG43L.cjs.map +1 -0
- package/dist/factory.cjs +2 -2
- package/dist/factory.js +1 -1
- package/dist/shareable-configs/auto.cjs +3 -3
- package/dist/shareable-configs/auto.js +2 -2
- package/dist/shareable-configs/none.cjs +3 -3
- package/dist/shareable-configs/none.js +2 -2
- package/dist/shareable-configs/sass-vue.cjs +3 -3
- package/dist/shareable-configs/sass-vue.js +2 -2
- package/dist/shareable-configs/sass.cjs +3 -3
- package/dist/shareable-configs/sass.js +2 -2
- package/dist/shareable-configs/tailwind3-sass-vue.cjs +11 -0
- package/dist/shareable-configs/{tailwind-sass-vue.js.map → tailwind3-sass-vue.cjs.map} +1 -1
- package/dist/shareable-configs/tailwind3-sass-vue.js +5 -0
- package/dist/shareable-configs/{tailwind-sass-vue.cjs.map → tailwind3-sass-vue.js.map} +1 -1
- package/dist/shareable-configs/tailwind3-sass.cjs +11 -0
- package/dist/shareable-configs/tailwind3-sass.cjs.map +1 -0
- package/dist/shareable-configs/tailwind3-sass.js +5 -0
- package/dist/shareable-configs/{tailwind-sass.cjs.map → tailwind3-sass.js.map} +1 -1
- package/dist/shareable-configs/tailwind3.cjs +11 -0
- package/dist/shareable-configs/{tailwind-sass.js.map → tailwind3.cjs.map} +1 -1
- package/dist/shareable-configs/tailwind3.js +5 -0
- package/dist/shareable-configs/{tailwind.cjs.map → tailwind3.js.map} +1 -1
- package/dist/shareable-configs/tailwind4-vue.cjs +11 -0
- package/dist/shareable-configs/tailwind4-vue.cjs.map +1 -0
- package/dist/shareable-configs/tailwind4-vue.d.cts +5 -0
- package/dist/shareable-configs/tailwind4-vue.d.ts +5 -0
- package/dist/shareable-configs/tailwind4-vue.js +5 -0
- package/dist/shareable-configs/tailwind4-vue.js.map +1 -0
- package/dist/shareable-configs/tailwind4.cjs +11 -0
- package/dist/shareable-configs/tailwind4.cjs.map +1 -0
- package/dist/shareable-configs/tailwind4.d.cts +5 -0
- package/dist/shareable-configs/tailwind4.d.ts +5 -0
- package/dist/shareable-configs/tailwind4.js +5 -0
- package/dist/shareable-configs/{tailwind.js.map → tailwind4.js.map} +1 -1
- package/dist/shareable-configs/vue.cjs +3 -3
- package/dist/shareable-configs/vue.js +2 -2
- package/package.json +4 -4
- package/src/configs/css.ts +3 -1
- package/src/rules/at-rule-no-deprecated.ts +1 -1
- package/src/rules/at-rule-no-unknown.ts +65 -15
- package/src/rules/function-no-unknown.ts +48 -23
- package/src/rules/import-notation.ts +9 -0
- package/src/rules/order.ts +37 -28
- package/src/shareable-configs/auto.ts +2 -2
- package/src/shareable-configs/{tailwind-sass-vue.ts → tailwind3-sass-vue.ts} +1 -1
- package/src/shareable-configs/{tailwind-sass.ts → tailwind3-sass.ts} +1 -1
- package/src/shareable-configs/{tailwind.ts → tailwind3.ts} +1 -1
- package/src/shareable-configs/tailwind4-vue.ts +7 -0
- package/src/shareable-configs/tailwind4.ts +7 -0
- package/src/utils/utils.ts +13 -8
- package/dist/chunk-44IJ2A3A.cjs +0 -14
- package/dist/chunk-A2NZOYLK.cjs +0 -14
- package/dist/chunk-BDRH55QN.cjs +0 -14
- package/dist/chunk-BDRH55QN.cjs.map +0 -1
- package/dist/chunk-CHXDX6M7.cjs +0 -15
- package/dist/chunk-CHXDX6M7.cjs.map +0 -1
- package/dist/chunk-KF2ALUOE.cjs +0 -14
- package/dist/chunk-KF2ALUOE.cjs.map +0 -1
- package/dist/chunk-MXOP2HB2.cjs +0 -223
- package/dist/chunk-MXOP2HB2.cjs.map +0 -1
- package/dist/chunk-NB4RBGXO.cjs +0 -14
- package/dist/chunk-NB4RBGXO.cjs.map +0 -1
- package/dist/chunk-OG7QOQGS.cjs +0 -14
- package/dist/chunk-PTH56WWZ.js +0 -13
- package/dist/chunk-PTH56WWZ.js.map +0 -1
- package/dist/chunk-QKYH3IPZ.js +0 -12
- package/dist/chunk-QKYH3IPZ.js.map +0 -1
- package/dist/chunk-SW666XRH.js +0 -12
- package/dist/chunk-SW666XRH.js.map +0 -1
- package/dist/chunk-UEUXXDU5.js +0 -221
- package/dist/chunk-UEUXXDU5.js.map +0 -1
- package/dist/chunk-YXKIGFVU.js +0 -12
- package/dist/chunk-YXKIGFVU.js.map +0 -1
- package/dist/chunk-ZMJKJBWC.cjs +0 -14
- package/dist/shareable-configs/tailwind-sass-vue.cjs +0 -11
- package/dist/shareable-configs/tailwind-sass-vue.js +0 -5
- package/dist/shareable-configs/tailwind-sass.cjs +0 -11
- package/dist/shareable-configs/tailwind-sass.js +0 -5
- package/dist/shareable-configs/tailwind.cjs +0 -11
- package/dist/shareable-configs/tailwind.js +0 -5
- /package/dist/shareable-configs/{tailwind-sass-vue.d.cts → tailwind3-sass-vue.d.cts} +0 -0
- /package/dist/shareable-configs/{tailwind-sass-vue.d.ts → tailwind3-sass-vue.d.ts} +0 -0
- /package/dist/shareable-configs/{tailwind-sass.d.cts → tailwind3-sass.d.cts} +0 -0
- /package/dist/shareable-configs/{tailwind-sass.d.ts → tailwind3-sass.d.ts} +0 -0
- /package/dist/shareable-configs/{tailwind.d.cts → tailwind3.d.cts} +0 -0
- /package/dist/shareable-configs/{tailwind.d.ts → tailwind3.d.ts} +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
3
|
+
var chunkBT2UAWU5_cjs = require('../chunk-BT2UAWU5.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
5
|
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
module.exports =
|
|
9
|
+
module.exports = chunkBT2UAWU5_cjs.none_default;
|
|
10
10
|
//# sourceMappingURL=none.cjs.map
|
|
11
11
|
//# sourceMappingURL=none.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { none_default as default } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { none_default as default } from '../chunk-K2R66Y7L.js';
|
|
2
|
+
import '../chunk-7YJC5A7X.js';
|
|
3
3
|
import '../chunk-KEXKKQVW.js';
|
|
4
4
|
//# sourceMappingURL=none.js.map
|
|
5
5
|
//# sourceMappingURL=none.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
3
|
+
var chunkFCMONRWK_cjs = require('../chunk-FCMONRWK.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
5
|
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
module.exports =
|
|
9
|
+
module.exports = chunkFCMONRWK_cjs.sass_vue_default;
|
|
10
10
|
//# sourceMappingURL=sass-vue.cjs.map
|
|
11
11
|
//# sourceMappingURL=sass-vue.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { sass_vue_default as default } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { sass_vue_default as default } from '../chunk-VI54LIUS.js';
|
|
2
|
+
import '../chunk-7YJC5A7X.js';
|
|
3
3
|
import '../chunk-KEXKKQVW.js';
|
|
4
4
|
//# sourceMappingURL=sass-vue.js.map
|
|
5
5
|
//# sourceMappingURL=sass-vue.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
3
|
+
var chunkAHYV3TPN_cjs = require('../chunk-AHYV3TPN.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
5
|
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
module.exports =
|
|
9
|
+
module.exports = chunkAHYV3TPN_cjs.sass_default;
|
|
10
10
|
//# sourceMappingURL=sass.cjs.map
|
|
11
11
|
//# sourceMappingURL=sass.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { sass_default as default } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { sass_default as default } from '../chunk-GQ257A2K.js';
|
|
2
|
+
import '../chunk-7YJC5A7X.js';
|
|
3
3
|
import '../chunk-KEXKKQVW.js';
|
|
4
4
|
//# sourceMappingURL=sass.js.map
|
|
5
5
|
//# sourceMappingURL=sass.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunk5HZAPKJK_cjs = require('../chunk-5HZAPKJK.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
|
+
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
module.exports = chunk5HZAPKJK_cjs.tailwind3_sass_vue_default;
|
|
10
|
+
//# sourceMappingURL=tailwind3-sass-vue.cjs.map
|
|
11
|
+
//# sourceMappingURL=tailwind3-sass-vue.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind3-sass-vue.cjs"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind3-sass-vue.js"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkWEHMG43L_cjs = require('../chunk-WEHMG43L.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
|
+
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
module.exports = chunkWEHMG43L_cjs.tailwind3_sass_default;
|
|
10
|
+
//# sourceMappingURL=tailwind3-sass.cjs.map
|
|
11
|
+
//# sourceMappingURL=tailwind3-sass.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind3-sass.cjs"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind3-sass.js"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunk2L6F34NR_cjs = require('../chunk-2L6F34NR.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
|
+
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
module.exports = chunk2L6F34NR_cjs.tailwind3_default;
|
|
10
|
+
//# sourceMappingURL=tailwind3.cjs.map
|
|
11
|
+
//# sourceMappingURL=tailwind3.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind3.cjs"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind3.js"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkIRWIKWXE_cjs = require('../chunk-IRWIKWXE.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
|
+
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
module.exports = chunkIRWIKWXE_cjs.tailwind4_vue_default;
|
|
10
|
+
//# sourceMappingURL=tailwind4-vue.cjs.map
|
|
11
|
+
//# sourceMappingURL=tailwind4-vue.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind4-vue.cjs"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind4-vue.js"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkNYHPFT42_cjs = require('../chunk-NYHPFT42.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
|
+
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
module.exports = chunkNYHPFT42_cjs.tailwind4_default;
|
|
10
|
+
//# sourceMappingURL=tailwind4.cjs.map
|
|
11
|
+
//# sourceMappingURL=tailwind4.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind4.cjs"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tailwind4.js"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
3
|
+
var chunkPZP7E3HL_cjs = require('../chunk-PZP7E3HL.cjs');
|
|
4
|
+
require('../chunk-OJBMU5EQ.cjs');
|
|
5
5
|
require('../chunk-5ZIVWI7Q.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
module.exports =
|
|
9
|
+
module.exports = chunkPZP7E3HL_cjs.vue_default;
|
|
10
10
|
//# sourceMappingURL=vue.cjs.map
|
|
11
11
|
//# sourceMappingURL=vue.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { vue_default as default } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { vue_default as default } from '../chunk-P4T4OD2E.js';
|
|
2
|
+
import '../chunk-7YJC5A7X.js';
|
|
3
3
|
import '../chunk-KEXKKQVW.js';
|
|
4
4
|
//# sourceMappingURL=vue.js.map
|
|
5
5
|
//# sourceMappingURL=vue.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@culur/config-stylelint",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "Culur's stylelint configuration",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"stylelint-order": "^6.0.4",
|
|
79
79
|
"stylelint-scss": "^6.11.1",
|
|
80
80
|
"stylelint-selector-bem-pattern": "^4.0.1",
|
|
81
|
-
"@culur/utils-packages": "1.
|
|
81
|
+
"@culur/utils-packages": "1.2.0"
|
|
82
82
|
},
|
|
83
83
|
"devDependencies": {
|
|
84
84
|
"dedent": "^1.5.3",
|
|
@@ -86,9 +86,9 @@
|
|
|
86
86
|
"postcss-html": "^1.8.0",
|
|
87
87
|
"postcss-sass": "^0.5.0",
|
|
88
88
|
"postcss-scss": "^4.0.9",
|
|
89
|
-
"@culur/config-tsup": "1.2.
|
|
89
|
+
"@culur/config-tsup": "1.2.4",
|
|
90
90
|
"@culur/config-typescript": "1.1.1",
|
|
91
|
-
"@culur/config-vite": "1.1.
|
|
91
|
+
"@culur/config-vite": "1.1.6"
|
|
92
92
|
},
|
|
93
93
|
"peerDependencies": {
|
|
94
94
|
"stylelint": ">=16.14.1"
|
package/src/configs/css.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { atRuleNoDeprecated } from '~/rules/at-rule-no-deprecated';
|
|
|
4
4
|
import { atRuleNoUnknownCSS } from '~/rules/at-rule-no-unknown';
|
|
5
5
|
import { declarationBlockNoRedundantLonghandProperties } from '~/rules/declaration-block-no-redundant-longhand-properties';
|
|
6
6
|
import { functionNoUnknown } from '~/rules/function-no-unknown';
|
|
7
|
+
import { importNotationCSS } from '~/rules/import-notation';
|
|
7
8
|
import { order } from '~/rules/order';
|
|
8
9
|
import { selectorPseudoClassNoUnknown } from '~/rules/selector-pseudo-class-no-unknown';
|
|
9
10
|
|
|
@@ -11,10 +12,11 @@ export const configCss = (packages: Partial<Packages>): Config => ({
|
|
|
11
12
|
extends: ['stylelint-config-standard', 'stylelint-config-clean-order'],
|
|
12
13
|
plugins: ['stylelint-order', 'stylelint-selector-bem-pattern'],
|
|
13
14
|
rules: {
|
|
14
|
-
...atRuleNoUnknownCSS(packages),
|
|
15
15
|
...atRuleNoDeprecated(packages), // override this rule in `stylelint-config-standard`
|
|
16
|
+
...atRuleNoUnknownCSS(packages),
|
|
16
17
|
...declarationBlockNoRedundantLonghandProperties,
|
|
17
18
|
...functionNoUnknown(packages),
|
|
19
|
+
...importNotationCSS(packages),
|
|
18
20
|
...order(packages),
|
|
19
21
|
...selectorPseudoClassNoUnknown,
|
|
20
22
|
'declaration-empty-line-before': null,
|
|
@@ -4,7 +4,7 @@ import { defineRule, defineRules } from '~/utils';
|
|
|
4
4
|
// https://github.com/stylelint/stylelint/blob/16.14.1/lib/reference/atKeywords.mjs#L3
|
|
5
5
|
|
|
6
6
|
export const atRuleNoDeprecatedRule = (packages: Partial<Packages>) =>
|
|
7
|
-
defineRule<
|
|
7
|
+
defineRule<true, { ignoreAtRules: (string | RegExp)[] }>([
|
|
8
8
|
true,
|
|
9
9
|
{ ignoreAtRules: packages.tailwind ? ['apply'] : [] },
|
|
10
10
|
]);
|
|
@@ -1,24 +1,74 @@
|
|
|
1
1
|
import type { Packages } from '@culur/utils-packages';
|
|
2
2
|
import { defineRule, defineRules } from '~/utils';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
4
|
+
const getIgnoreAtRulesByTailwindVersion = (
|
|
5
|
+
tailwindVersion: false | number | undefined,
|
|
6
|
+
) => {
|
|
7
|
+
switch (tailwindVersion) {
|
|
8
|
+
// https://tailwindcss-v0.netlify.app//docs/functions-and-directives
|
|
9
|
+
case 0:
|
|
10
|
+
return [
|
|
11
|
+
// Directives
|
|
12
|
+
'tailwind',
|
|
13
|
+
'apply',
|
|
14
|
+
|
|
15
|
+
'variants',
|
|
16
|
+
'responsive',
|
|
17
|
+
'screen',
|
|
18
|
+
];
|
|
19
|
+
|
|
20
|
+
// https://v1.tailwindcss.com/docs/functions-and-directives
|
|
21
|
+
// https://v2.tailwindcss.com/docs/functions-and-directives
|
|
22
|
+
case 1:
|
|
23
|
+
case 2:
|
|
24
|
+
return [
|
|
25
|
+
// Directives
|
|
26
|
+
'tailwind',
|
|
27
|
+
'apply',
|
|
28
|
+
'layer', // new
|
|
29
|
+
|
|
30
|
+
'variants',
|
|
31
|
+
'responsive',
|
|
32
|
+
'screen',
|
|
33
|
+
];
|
|
34
|
+
|
|
35
|
+
// https://v3.tailwindcss.com/docs/functions-and-directives
|
|
36
|
+
case 3:
|
|
37
|
+
return [
|
|
38
|
+
// Directives
|
|
39
|
+
'tailwind',
|
|
40
|
+
'layer',
|
|
41
|
+
'apply',
|
|
42
|
+
'config', // new
|
|
43
|
+
];
|
|
44
|
+
|
|
45
|
+
// https://tailwindcss.com/docs/functions-and-directives
|
|
46
|
+
case 4:
|
|
47
|
+
return [
|
|
48
|
+
// Directives
|
|
49
|
+
'import',
|
|
50
|
+
'theme',
|
|
51
|
+
'source',
|
|
52
|
+
'utility',
|
|
53
|
+
'variant',
|
|
54
|
+
'custom-variant',
|
|
55
|
+
'apply',
|
|
56
|
+
'reference',
|
|
57
|
+
|
|
58
|
+
// Compatibility
|
|
59
|
+
'config',
|
|
60
|
+
'plugin',
|
|
61
|
+
];
|
|
62
|
+
|
|
63
|
+
default:
|
|
64
|
+
return [];
|
|
65
|
+
}
|
|
66
|
+
};
|
|
17
67
|
|
|
18
68
|
export const atRuleNoUnknownRule = (packages: Partial<Packages>) =>
|
|
19
|
-
defineRule<
|
|
69
|
+
defineRule<true, { ignoreAtRules: (string | RegExp)[] }>([
|
|
20
70
|
true,
|
|
21
|
-
{ ignoreAtRules: packages.tailwind
|
|
71
|
+
{ ignoreAtRules: getIgnoreAtRulesByTailwindVersion(packages.tailwind) },
|
|
22
72
|
]);
|
|
23
73
|
|
|
24
74
|
export const atRuleNoUnknownCSS = (packages: Partial<Packages>) =>
|
|
@@ -1,31 +1,56 @@
|
|
|
1
1
|
import type { Packages } from '@culur/utils-packages';
|
|
2
2
|
import { defineRule, defineRules } from '~/utils';
|
|
3
3
|
|
|
4
|
+
const getIgnoreFunctionsByTailwindVersion = (
|
|
5
|
+
tailwindVersion: false | number | undefined,
|
|
6
|
+
) => {
|
|
7
|
+
switch (tailwindVersion) {
|
|
8
|
+
// https://tailwindcss-v0.netlify.app//docs/functions-and-directives
|
|
9
|
+
case 0:
|
|
10
|
+
return ['config'];
|
|
11
|
+
|
|
12
|
+
// https://v1.tailwindcss.com/docs/functions-and-directives
|
|
13
|
+
case 1:
|
|
14
|
+
return ['theme'];
|
|
15
|
+
|
|
16
|
+
// https://v2.tailwindcss.com/docs/functions-and-directives
|
|
17
|
+
case 2:
|
|
18
|
+
return ['screen', 'theme'];
|
|
19
|
+
|
|
20
|
+
// https://v3.tailwindcss.com/docs/functions-and-directives
|
|
21
|
+
case 3:
|
|
22
|
+
return ['theme', 'screen'];
|
|
23
|
+
|
|
24
|
+
// https://tailwindcss.com/docs/functions-and-directives
|
|
25
|
+
case 4:
|
|
26
|
+
return ['--alpha', '--spacing', 'theme'];
|
|
27
|
+
|
|
28
|
+
default:
|
|
29
|
+
return [];
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
const getIgnoreFunctions = (packages: Partial<Packages>) => [
|
|
34
|
+
// https://tailwindcss.com
|
|
35
|
+
...getIgnoreFunctionsByTailwindVersion(packages.tailwind),
|
|
36
|
+
|
|
37
|
+
// https://sass-lang.com/documentation/modules/list
|
|
38
|
+
// https://sass-lang.com/documentation/modules/math
|
|
39
|
+
// https://sass-lang.com/documentation/modules/color
|
|
40
|
+
...(packages.sass //
|
|
41
|
+
? [/^(list|math|color)\..+/]
|
|
42
|
+
: []),
|
|
43
|
+
|
|
44
|
+
// https://vuejs.org/api/sfc-css-features.html#v-bind-in-css
|
|
45
|
+
...(packages.vue //
|
|
46
|
+
? ['v-bind']
|
|
47
|
+
: []),
|
|
48
|
+
];
|
|
49
|
+
|
|
4
50
|
export function functionNoUnknownRule(packages: Partial<Packages>) {
|
|
5
|
-
|
|
6
|
-
// https://tailwindcss.com/docs/functions-and-directives#functions
|
|
7
|
-
...(packages.tailwind //
|
|
8
|
-
? ['theme', 'screen']
|
|
9
|
-
: []),
|
|
10
|
-
|
|
11
|
-
// https://sass-lang.com/documentation/modules/list
|
|
12
|
-
// https://sass-lang.com/documentation/modules/math
|
|
13
|
-
// https://sass-lang.com/documentation/modules/color
|
|
14
|
-
...(packages.sass //
|
|
15
|
-
? [/^(list|math|color)\..+/]
|
|
16
|
-
: []),
|
|
17
|
-
|
|
18
|
-
// https://vuejs.org/api/sfc-css-features.html#v-bind-in-css
|
|
19
|
-
...(packages.vue //
|
|
20
|
-
? ['v-bind']
|
|
21
|
-
: []),
|
|
22
|
-
];
|
|
23
|
-
|
|
24
|
-
return defineRule<boolean, { ignoreFunctions: (string | RegExp)[] }>([
|
|
51
|
+
return defineRule<true, { ignoreFunctions: (string | RegExp)[] }>([
|
|
25
52
|
true,
|
|
26
|
-
ignoreFunctions
|
|
27
|
-
? { ignoreFunctions }
|
|
28
|
-
: { ignoreFunctions: [] },
|
|
53
|
+
{ ignoreFunctions: getIgnoreFunctions(packages) },
|
|
29
54
|
]);
|
|
30
55
|
}
|
|
31
56
|
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Packages } from '@culur/utils-packages';
|
|
2
|
+
import { defineRules, isInRange } from '~/utils';
|
|
3
|
+
|
|
4
|
+
export const importNotationCSS = (packages: Partial<Packages>) =>
|
|
5
|
+
defineRules(
|
|
6
|
+
isInRange(packages.tailwind, 4) //
|
|
7
|
+
? { 'import-notation': null }
|
|
8
|
+
: {},
|
|
9
|
+
);
|
package/src/rules/order.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Packages } from '@culur/utils-packages';
|
|
2
|
-
import { defineRule, defineRules } from '~/utils';
|
|
2
|
+
import { defineRule, defineRules, isInRange } from '~/utils';
|
|
3
3
|
|
|
4
4
|
// https://github.com/hudochenkov/stylelint-order/blob/master/rules/order/README.md#options
|
|
5
5
|
|
|
@@ -30,50 +30,59 @@ interface SecondaryOptions {
|
|
|
30
30
|
unspecified?: 'top' | 'bottom' | 'ignore';
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
const definePrimaryOption = (
|
|
34
|
-
|
|
35
|
-
) => options.filter((option): option is PrimaryOption[number] => !!option);
|
|
33
|
+
const definePrimaryOption = (...options: (PrimaryOption[number] | false | undefined)[]) =>
|
|
34
|
+
options.filter((option): option is PrimaryOption[number] => !!option);
|
|
36
35
|
|
|
37
36
|
export const orderRule = (packages: Partial<Packages>) =>
|
|
38
37
|
defineRule<PrimaryOption, SecondaryOptions>([
|
|
39
38
|
definePrimaryOption(
|
|
40
39
|
//! import
|
|
41
|
-
packages.sass && { type: 'at-rule', name: 'use' }, // scss:
|
|
42
|
-
packages.sass && { type: 'at-rule', name: 'forward' }, // scss:
|
|
43
|
-
packages.sass && { type: 'at-rule', name: 'import' }, // scss:
|
|
40
|
+
packages.sass /**********************************/ && { type: 'at-rule', name: 'use' }, // scss: @use 'path/path';
|
|
41
|
+
packages.sass /**********************************/ && { type: 'at-rule', name: 'forward' }, // scss: @forward 'path/path';
|
|
42
|
+
packages.sass /**********************************/ && { type: 'at-rule', name: 'import' }, // scss: @import 'path/path';
|
|
43
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'import' }, // tailwind 4: @import "tailwindcss";
|
|
44
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'source' }, // tailwind 4: @source "../node_modules/@culur/ui-lib";
|
|
45
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'reference' }, // tailwind 4: @reference "../../app.css";
|
|
44
46
|
|
|
45
47
|
//! root
|
|
46
|
-
packages.tailwind && { type: 'at-rule', name: '
|
|
47
|
-
packages.tailwind && { type: 'at-rule', name: '
|
|
48
|
-
packages.tailwind && { type: 'at-rule', name: '
|
|
48
|
+
isInRange(packages.tailwind, 0, 1, 2, 3) /*******/ && { type: 'at-rule', name: 'tailwind' }, // tailwind 0,1,2,3 : @tailwind base;
|
|
49
|
+
isInRange(packages.tailwind, 3, 4) /*************/ && { type: 'at-rule', name: 'config' }, // tailwind 3,4: @config 'tailwind.custom.config.js'
|
|
50
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'plugin' }, // tailwind 4: @plugin '@tailwindcss/typography'
|
|
51
|
+
isInRange(packages.tailwind, 1, 2, 3) /**********/ && { type: 'at-rule', name: 'layer' }, // tailwind 1,2,3 : @layer base {}
|
|
49
52
|
|
|
50
53
|
//! variables
|
|
51
|
-
'dollar-variables', //
|
|
52
|
-
'at-variables', //
|
|
53
|
-
{ type: 'at-rule', hasBlock: false }, //
|
|
54
|
-
'custom-properties', //
|
|
54
|
+
'dollar-variables', // css: $variable: 10px;
|
|
55
|
+
'at-variables', // css: @variable: 10px;
|
|
56
|
+
{ type: 'at-rule', hasBlock: false }, // css: @variable: 10px;
|
|
57
|
+
'custom-properties', // css: --property: 10px;
|
|
58
|
+
|
|
59
|
+
//! tailwind
|
|
60
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'theme' }, // tailwind 4: @theme {}
|
|
61
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'custom-variant' }, // tailwind 4: @custom-variant pointer-coarse (@media (pointer: coarse));
|
|
55
62
|
|
|
56
63
|
//! functions, methods
|
|
57
|
-
packages.sass && { type: 'at-rule', name: 'function' }, // scss:
|
|
58
|
-
packages.sass && { type: 'at-rule', name: 'mixin' }, // scss:
|
|
64
|
+
packages.sass /**********************************/ && { type: 'at-rule', name: 'function' }, // scss: @function sum() {}
|
|
65
|
+
packages.sass /**********************************/ && { type: 'at-rule', name: 'mixin' }, // scss: @mixin mixin-name {}
|
|
66
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'utility' }, // tailwind 4: @utility tab-4 { tab-size: 4; }
|
|
59
67
|
|
|
60
68
|
//! declarations
|
|
61
|
-
packages.sass && { type: 'at-rule', name: 'extend' }, // scss:
|
|
62
|
-
packages.sass && { type: 'at-rule', name: 'include' }, // scss:
|
|
63
|
-
packages.tailwind && { type: 'at-rule', name: 'apply' }, //
|
|
64
|
-
'less-mixins', //
|
|
65
|
-
'declarations', //
|
|
69
|
+
packages.sass /**********************************/ && { type: 'at-rule', name: 'extend' }, // scss: @extend .class-name;
|
|
70
|
+
packages.sass /**********************************/ && { type: 'at-rule', name: 'include' }, // scss: @include mixin-name;
|
|
71
|
+
isInRange(packages.tailwind, 0, 1, 2, 3, 4) /****/ && { type: 'at-rule', name: 'apply' }, // tailwind 0,1,2,3,4: @apply p-3;
|
|
72
|
+
'less-mixins', // less: .mixin();
|
|
73
|
+
'declarations', // css: display: block;
|
|
66
74
|
|
|
67
75
|
//! block rules
|
|
68
|
-
{ type: 'rule', selector: /^&::[\w-]+/ }, //
|
|
69
|
-
'rules', //
|
|
76
|
+
{ type: 'rule', selector: /^&::[\w-]+/ }, // css: &::after {}
|
|
77
|
+
'rules', // css: child-component {}
|
|
70
78
|
|
|
71
79
|
//! blocks nested
|
|
72
|
-
packages.sass && { type: 'at-rule', name: 'at-root' }, //
|
|
73
|
-
packages.tailwind && { type: 'at-rule', name: 'responsive' }, //
|
|
74
|
-
packages.tailwind && { type: 'at-rule', name: 'variants' }, //
|
|
75
|
-
packages.tailwind && { type: 'at-rule', name: 'screen' }, //
|
|
76
|
-
{ type: 'at-rule',
|
|
80
|
+
packages.sass && { type: 'at-rule', name: 'at-root' }, // scss: @at-root selector { /* content */ }
|
|
81
|
+
isInRange(packages.tailwind, 0, 1, 2) /**********/ && { type: 'at-rule', name: 'responsive' }, // tailwind 0,1,2 : @responsive {}
|
|
82
|
+
isInRange(packages.tailwind, 0, 1, 2) /**********/ && { type: 'at-rule', name: 'variants' }, // tailwind 0,1,2 : @variants hover {}
|
|
83
|
+
isInRange(packages.tailwind, 0, 1, 2) /**********/ && { type: 'at-rule', name: 'screen' }, // tailwind 0,1,2 : @screen sm {}
|
|
84
|
+
isInRange(packages.tailwind, 4) /****************/ && { type: 'at-rule', name: 'variants' }, // tailwind 4: @variant dark {}
|
|
85
|
+
{ type: 'at-rule', hasBlock: true }, // css: @media () {}
|
|
77
86
|
),
|
|
78
87
|
{
|
|
79
88
|
unspecified: 'bottom',
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { defineHasPackages } from '@culur/utils-packages';
|
|
2
2
|
import defineConfig from '~/factory';
|
|
3
3
|
|
|
4
|
-
const {
|
|
4
|
+
const { tailwindVersion, hasSass, hasVue } = defineHasPackages();
|
|
5
5
|
|
|
6
6
|
export default defineConfig({
|
|
7
|
-
tailwind:
|
|
7
|
+
tailwind: tailwindVersion(),
|
|
8
8
|
sass: hasSass(),
|
|
9
9
|
vue: hasVue(),
|
|
10
10
|
});
|