tailwindcss 0.0.0-insiders.ea139f2 → 0.0.0-insiders.ea4e1cd
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/LICENSE +1 -2
- package/README.md +15 -7
- package/colors.d.ts +3 -0
- package/colors.js +2 -1
- package/defaultConfig.d.ts +3 -0
- package/defaultConfig.js +2 -1
- package/defaultTheme.d.ts +4 -0
- package/defaultTheme.js +2 -1
- package/lib/cli/build/deps.js +62 -0
- package/lib/cli/build/index.js +54 -0
- package/lib/cli/build/plugin.js +378 -0
- package/lib/cli/build/utils.js +88 -0
- package/lib/cli/build/watching.js +182 -0
- package/lib/cli/help/index.js +73 -0
- package/lib/cli/index.js +230 -0
- package/lib/cli/init/index.js +63 -0
- package/lib/cli-peer-dependencies.js +28 -7
- package/lib/cli.js +4 -703
- package/lib/corePluginList.js +12 -3
- package/lib/corePlugins.js +2373 -1863
- package/lib/css/preflight.css +10 -8
- package/lib/featureFlags.js +49 -26
- package/lib/index.js +1 -31
- package/lib/lib/cacheInvalidation.js +92 -0
- package/lib/lib/collapseAdjacentRules.js +30 -10
- package/lib/lib/collapseDuplicateDeclarations.js +60 -4
- package/lib/lib/content.js +181 -0
- package/lib/lib/defaultExtractor.js +243 -0
- package/lib/lib/detectNesting.js +21 -10
- package/lib/lib/evaluateTailwindFunctions.js +115 -50
- package/lib/lib/expandApplyAtRules.js +467 -161
- package/lib/lib/expandTailwindAtRules.js +160 -133
- package/lib/lib/findAtConfigPath.js +46 -0
- package/lib/lib/generateRules.js +553 -200
- package/lib/lib/getModuleDependencies.js +88 -37
- package/lib/lib/load-config.js +42 -0
- package/lib/lib/normalizeTailwindDirectives.js +46 -33
- package/lib/lib/offsets.js +306 -0
- package/lib/lib/partitionApplyAtRules.js +58 -0
- package/lib/lib/regex.js +74 -0
- package/lib/lib/remap-bitfield.js +89 -0
- package/lib/lib/resolveDefaultsAtRules.js +98 -58
- package/lib/lib/setupContextUtils.js +773 -321
- package/lib/lib/setupTrackingContext.js +70 -75
- package/lib/lib/sharedState.js +78 -10
- package/lib/lib/substituteScreenAtRules.js +14 -10
- package/lib/oxide/cli/build/deps.js +89 -0
- package/lib/oxide/cli/build/index.js +53 -0
- package/lib/oxide/cli/build/plugin.js +375 -0
- package/lib/oxide/cli/build/utils.js +87 -0
- package/lib/oxide/cli/build/watching.js +179 -0
- package/lib/oxide/cli/help/index.js +72 -0
- package/lib/oxide/cli/index.js +214 -0
- package/lib/oxide/cli/init/index.js +52 -0
- package/lib/oxide/cli.js +5 -0
- package/lib/oxide/postcss-plugin.js +2 -0
- package/lib/plugin.js +98 -0
- package/{nesting → lib/postcss-plugins/nesting}/README.md +2 -2
- package/lib/postcss-plugins/nesting/index.js +21 -0
- package/lib/postcss-plugins/nesting/plugin.js +89 -0
- package/lib/processTailwindFeatures.js +39 -26
- package/lib/public/colors.js +272 -246
- package/lib/public/create-plugin.js +9 -5
- package/lib/public/default-config.js +10 -6
- package/lib/public/default-theme.js +10 -6
- package/lib/public/load-config.js +12 -0
- package/lib/public/resolve-config.js +11 -6
- package/lib/util/applyImportantSelector.js +36 -0
- package/lib/util/bigSign.js +6 -1
- package/lib/util/buildMediaQuery.js +13 -6
- package/lib/util/cloneDeep.js +9 -6
- package/lib/util/cloneNodes.js +23 -3
- package/lib/util/color.js +70 -38
- package/lib/util/colorNames.js +752 -0
- package/lib/util/configurePlugins.js +7 -2
- package/lib/util/createPlugin.js +8 -6
- package/lib/util/createUtilityPlugin.js +16 -16
- package/lib/util/dataTypes.js +173 -108
- package/lib/util/defaults.js +14 -3
- package/lib/util/escapeClassName.js +13 -8
- package/lib/util/escapeCommas.js +7 -2
- package/lib/util/flattenColorPalette.js +11 -12
- package/lib/util/formatVariantSelector.js +228 -151
- package/lib/util/getAllConfigs.js +33 -12
- package/lib/util/hashConfig.js +9 -4
- package/lib/util/isKeyframeRule.js +7 -2
- package/lib/util/isPlainObject.js +7 -2
- package/lib/util/{isValidArbitraryValue.js → isSyntacticallyValidPropertyValue.js} +25 -15
- package/lib/util/log.js +27 -13
- package/lib/util/nameClass.js +27 -10
- package/lib/util/negateValue.js +25 -8
- package/lib/util/normalizeConfig.js +139 -65
- package/lib/util/normalizeScreens.js +131 -11
- package/lib/util/parseAnimationValue.js +44 -40
- package/lib/util/parseBoxShadowValue.js +34 -23
- package/lib/util/parseDependency.js +39 -55
- package/lib/util/parseGlob.js +36 -0
- package/lib/util/parseObjectStyles.js +15 -10
- package/lib/util/pluginUtils.js +159 -69
- package/lib/util/prefixSelector.js +30 -12
- package/lib/util/pseudoElements.js +229 -0
- package/lib/util/removeAlphaVariables.js +31 -0
- package/lib/util/resolveConfig.js +97 -75
- package/lib/util/resolveConfigPath.js +30 -12
- package/lib/util/responsive.js +11 -6
- package/lib/util/splitAtTopLevelOnly.js +51 -0
- package/lib/util/tap.js +6 -1
- package/lib/util/toColorValue.js +7 -3
- package/lib/util/toPath.js +26 -3
- package/lib/util/transformThemeValue.js +40 -30
- package/lib/util/validateConfig.js +37 -0
- package/lib/util/validateFormalSyntax.js +26 -0
- package/lib/util/withAlphaVariable.js +27 -15
- package/loadConfig.d.ts +4 -0
- package/loadConfig.js +2 -0
- package/nesting/index.js +2 -12
- package/package.json +66 -57
- package/peers/index.js +75964 -55560
- package/plugin.d.ts +11 -0
- package/plugin.js +2 -1
- package/resolveConfig.d.ts +12 -0
- package/resolveConfig.js +2 -1
- package/scripts/generate-types.js +105 -0
- package/scripts/release-channel.js +18 -0
- package/scripts/release-notes.js +21 -0
- package/scripts/swap-engines.js +40 -0
- package/scripts/type-utils.js +27 -0
- package/src/cli/build/deps.js +56 -0
- package/src/cli/build/index.js +49 -0
- package/src/cli/build/plugin.js +444 -0
- package/src/cli/build/utils.js +76 -0
- package/src/cli/build/watching.js +229 -0
- package/src/cli/help/index.js +70 -0
- package/src/cli/index.js +216 -0
- package/src/cli/init/index.js +79 -0
- package/src/cli-peer-dependencies.js +7 -1
- package/src/cli.js +4 -765
- package/src/corePluginList.js +1 -1
- package/src/corePlugins.js +786 -306
- package/src/css/preflight.css +10 -8
- package/src/featureFlags.js +21 -5
- package/src/index.js +1 -34
- package/src/lib/cacheInvalidation.js +52 -0
- package/src/lib/collapseAdjacentRules.js +21 -2
- package/src/lib/collapseDuplicateDeclarations.js +66 -1
- package/src/lib/content.js +208 -0
- package/src/lib/defaultExtractor.js +217 -0
- package/src/lib/detectNesting.js +9 -1
- package/src/lib/evaluateTailwindFunctions.js +79 -8
- package/src/lib/expandApplyAtRules.js +515 -153
- package/src/lib/expandTailwindAtRules.js +115 -86
- package/src/lib/findAtConfigPath.js +48 -0
- package/src/lib/generateRules.js +545 -147
- package/src/lib/getModuleDependencies.js +70 -30
- package/src/lib/load-config.ts +31 -0
- package/src/lib/normalizeTailwindDirectives.js +7 -1
- package/src/lib/offsets.js +373 -0
- package/src/lib/partitionApplyAtRules.js +52 -0
- package/src/lib/regex.js +74 -0
- package/src/lib/remap-bitfield.js +82 -0
- package/src/lib/resolveDefaultsAtRules.js +59 -17
- package/src/lib/setupContextUtils.js +701 -175
- package/src/lib/setupTrackingContext.js +51 -62
- package/src/lib/sharedState.js +58 -7
- package/src/oxide/cli/build/deps.ts +91 -0
- package/src/oxide/cli/build/index.ts +47 -0
- package/src/oxide/cli/build/plugin.ts +442 -0
- package/src/oxide/cli/build/utils.ts +74 -0
- package/src/oxide/cli/build/watching.ts +225 -0
- package/src/oxide/cli/help/index.ts +69 -0
- package/src/oxide/cli/index.ts +204 -0
- package/src/oxide/cli/init/index.ts +59 -0
- package/src/oxide/cli.ts +1 -0
- package/src/oxide/postcss-plugin.ts +1 -0
- package/src/plugin.js +107 -0
- package/src/postcss-plugins/nesting/README.md +42 -0
- package/src/postcss-plugins/nesting/index.js +13 -0
- package/src/postcss-plugins/nesting/plugin.js +80 -0
- package/src/processTailwindFeatures.js +12 -2
- package/src/public/colors.js +22 -0
- package/src/public/default-config.js +1 -1
- package/src/public/default-theme.js +2 -2
- package/src/public/load-config.js +2 -0
- package/src/util/applyImportantSelector.js +27 -0
- package/src/util/buildMediaQuery.js +5 -3
- package/src/util/cloneNodes.js +19 -2
- package/src/util/color.js +44 -12
- package/src/util/colorNames.js +150 -0
- package/src/util/dataTypes.js +51 -16
- package/src/util/defaults.js +6 -0
- package/src/util/formatVariantSelector.js +264 -144
- package/src/util/getAllConfigs.js +21 -2
- package/src/util/{isValidArbitraryValue.js → isSyntacticallyValidPropertyValue.js} +1 -1
- package/src/util/log.js +11 -7
- package/src/util/nameClass.js +4 -0
- package/src/util/negateValue.js +11 -3
- package/src/util/normalizeConfig.js +57 -5
- package/src/util/normalizeScreens.js +105 -7
- package/src/util/parseBoxShadowValue.js +4 -3
- package/src/util/parseDependency.js +37 -42
- package/src/util/parseGlob.js +24 -0
- package/src/util/pluginUtils.js +123 -24
- package/src/util/prefixSelector.js +30 -10
- package/src/util/pseudoElements.js +170 -0
- package/src/util/removeAlphaVariables.js +24 -0
- package/src/util/resolveConfig.js +74 -26
- package/src/util/resolveConfigPath.js +12 -1
- package/src/util/splitAtTopLevelOnly.js +52 -0
- package/src/util/toPath.js +23 -1
- package/src/util/transformThemeValue.js +13 -3
- package/src/util/validateConfig.js +26 -0
- package/src/util/validateFormalSyntax.js +34 -0
- package/src/util/withAlphaVariable.js +1 -1
- package/stubs/.gitignore +1 -0
- package/stubs/.prettierrc.json +6 -0
- package/stubs/{defaultConfig.stub.js → config.full.js} +206 -166
- package/stubs/postcss.config.js +6 -0
- package/stubs/tailwind.config.cjs +2 -0
- package/stubs/tailwind.config.js +2 -0
- package/stubs/tailwind.config.ts +3 -0
- package/types/config.d.ts +368 -0
- package/types/generated/.gitkeep +0 -0
- package/types/generated/colors.d.ts +298 -0
- package/types/generated/corePluginList.d.ts +1 -0
- package/types/generated/default-theme.d.ts +371 -0
- package/types/index.d.ts +7 -0
- package/CHANGELOG.md +0 -1843
- package/lib/constants.js +0 -37
- package/lib/lib/setupWatchingContext.js +0 -288
- package/nesting/plugin.js +0 -41
- package/scripts/install-integrations.js +0 -27
- package/scripts/rebuildFixtures.js +0 -68
- package/src/constants.js +0 -17
- package/src/lib/setupWatchingContext.js +0 -311
- /package/stubs/{simpleConfig.stub.js → config.simple.js} +0 -0
- /package/stubs/{defaultPostCssConfig.stub.js → postcss.config.cjs} +0 -0
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
6
11
|
function _default(pluginConfig, plugins) {
|
|
7
12
|
if (pluginConfig === undefined) {
|
|
8
13
|
return plugins;
|
|
@@ -12,7 +17,7 @@ function _default(pluginConfig, plugins) {
|
|
|
12
17
|
return pluginConfig !== false && pluginConfig[pluginName] !== false;
|
|
13
18
|
}).concat(Object.keys(pluginConfig).filter((pluginName)=>{
|
|
14
19
|
return pluginConfig[pluginName] !== false;
|
|
15
|
-
})))
|
|
20
|
+
})))
|
|
16
21
|
];
|
|
17
22
|
return pluginNames;
|
|
18
23
|
}
|
package/lib/util/createPlugin.js
CHANGED
|
@@ -2,16 +2,19 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
6
11
|
function createPlugin(plugin, config) {
|
|
7
12
|
return {
|
|
8
13
|
handler: plugin,
|
|
9
14
|
config
|
|
10
15
|
};
|
|
11
16
|
}
|
|
12
|
-
createPlugin.withOptions = function(pluginFunction, configFunction = ()=>({
|
|
13
|
-
})
|
|
14
|
-
) {
|
|
17
|
+
createPlugin.withOptions = function(pluginFunction, configFunction = ()=>({})) {
|
|
15
18
|
const optionsFunction = function(options) {
|
|
16
19
|
return {
|
|
17
20
|
__options: options,
|
|
@@ -26,5 +29,4 @@ createPlugin.withOptions = function(pluginFunction, configFunction = ()=>({
|
|
|
26
29
|
optionsFunction.__configFunction = configFunction;
|
|
27
30
|
return optionsFunction;
|
|
28
31
|
};
|
|
29
|
-
|
|
30
|
-
exports.default = _default;
|
|
32
|
+
const _default = createPlugin;
|
|
@@ -2,9 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
6
|
-
|
|
7
|
-
function
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return createUtilityPlugin;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _transformThemeValue = /*#__PURE__*/ _interop_require_default(require("./transformThemeValue"));
|
|
12
|
+
function _interop_require_default(obj) {
|
|
8
13
|
return obj && obj.__esModule ? obj : {
|
|
9
14
|
default: obj
|
|
10
15
|
};
|
|
@@ -16,17 +21,16 @@ function createUtilityPlugin(themeKey, utilityVariations = [
|
|
|
16
21
|
themeKey
|
|
17
22
|
]
|
|
18
23
|
]
|
|
19
|
-
], { filterDefault =false , ...options } = {
|
|
20
|
-
|
|
21
|
-
let transformValue = (0, _transformThemeValue).default(themeKey);
|
|
24
|
+
], { filterDefault =false , ...options } = {}) {
|
|
25
|
+
let transformValue = (0, _transformThemeValue.default)(themeKey);
|
|
22
26
|
return function({ matchUtilities , theme }) {
|
|
23
27
|
for (let utilityVariation of utilityVariations){
|
|
24
28
|
let group = Array.isArray(utilityVariation[0]) ? utilityVariation : [
|
|
25
29
|
utilityVariation
|
|
26
30
|
];
|
|
27
|
-
var
|
|
28
|
-
matchUtilities(group.reduce((
|
|
29
|
-
return Object.assign(
|
|
31
|
+
var _theme;
|
|
32
|
+
matchUtilities(group.reduce((obj, [classPrefix, properties])=>{
|
|
33
|
+
return Object.assign(obj, {
|
|
30
34
|
[classPrefix]: (value)=>{
|
|
31
35
|
return properties.reduce((obj, name)=>{
|
|
32
36
|
if (Array.isArray(name)) {
|
|
@@ -37,16 +41,12 @@ function createUtilityPlugin(themeKey, utilityVariations = [
|
|
|
37
41
|
return Object.assign(obj, {
|
|
38
42
|
[name]: transformValue(value)
|
|
39
43
|
});
|
|
40
|
-
}, {
|
|
41
|
-
});
|
|
44
|
+
}, {});
|
|
42
45
|
}
|
|
43
46
|
});
|
|
44
|
-
}, {
|
|
45
|
-
}), {
|
|
47
|
+
}, {}), {
|
|
46
48
|
...options,
|
|
47
|
-
values: filterDefault ? Object.fromEntries(Object.entries((
|
|
48
|
-
}).filter(([modifier])=>modifier !== 'DEFAULT'
|
|
49
|
-
)) : theme(themeKey)
|
|
49
|
+
values: filterDefault ? Object.fromEntries(Object.entries((_theme = theme(themeKey)) !== null && _theme !== void 0 ? _theme : {}).filter(([modifier])=>modifier !== "DEFAULT")) : theme(themeKey)
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
52
|
};
|
package/lib/util/dataTypes.js
CHANGED
|
@@ -2,99 +2,163 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
exports
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
normalize: function() {
|
|
13
|
+
return normalize;
|
|
14
|
+
},
|
|
15
|
+
url: function() {
|
|
16
|
+
return url;
|
|
17
|
+
},
|
|
18
|
+
number: function() {
|
|
19
|
+
return number;
|
|
20
|
+
},
|
|
21
|
+
percentage: function() {
|
|
22
|
+
return percentage;
|
|
23
|
+
},
|
|
24
|
+
length: function() {
|
|
25
|
+
return length;
|
|
26
|
+
},
|
|
27
|
+
lineWidth: function() {
|
|
28
|
+
return lineWidth;
|
|
29
|
+
},
|
|
30
|
+
shadow: function() {
|
|
31
|
+
return shadow;
|
|
32
|
+
},
|
|
33
|
+
color: function() {
|
|
34
|
+
return color;
|
|
35
|
+
},
|
|
36
|
+
image: function() {
|
|
37
|
+
return image;
|
|
38
|
+
},
|
|
39
|
+
gradient: function() {
|
|
40
|
+
return gradient;
|
|
41
|
+
},
|
|
42
|
+
position: function() {
|
|
43
|
+
return position;
|
|
44
|
+
},
|
|
45
|
+
familyName: function() {
|
|
46
|
+
return familyName;
|
|
47
|
+
},
|
|
48
|
+
genericName: function() {
|
|
49
|
+
return genericName;
|
|
50
|
+
},
|
|
51
|
+
absoluteSize: function() {
|
|
52
|
+
return absoluteSize;
|
|
53
|
+
},
|
|
54
|
+
relativeSize: function() {
|
|
55
|
+
return relativeSize;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
const _color = require("./color");
|
|
59
|
+
const _parseBoxShadowValue = require("./parseBoxShadowValue");
|
|
60
|
+
const _splitAtTopLevelOnly = require("./splitAtTopLevelOnly");
|
|
22
61
|
let cssFunctions = [
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
62
|
+
"min",
|
|
63
|
+
"max",
|
|
64
|
+
"clamp",
|
|
65
|
+
"calc"
|
|
27
66
|
];
|
|
28
67
|
// Ref: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Types
|
|
29
|
-
|
|
30
|
-
;
|
|
31
|
-
|
|
32
|
-
;
|
|
68
|
+
function isCSSFunction(value) {
|
|
69
|
+
return cssFunctions.some((fn)=>new RegExp(`^${fn}\\(.*\\)`).test(value));
|
|
70
|
+
}
|
|
71
|
+
const placeholder = "--tw-placeholder";
|
|
72
|
+
const placeholderRe = new RegExp(placeholder, "g");
|
|
33
73
|
function normalize(value, isRoot = true) {
|
|
74
|
+
if (value.startsWith("--")) {
|
|
75
|
+
return `var(${value})`;
|
|
76
|
+
}
|
|
34
77
|
// Keep raw strings if it starts with `url(`
|
|
35
|
-
if (value.includes(
|
|
78
|
+
if (value.includes("url(")) {
|
|
36
79
|
return value.split(/(url\(.*?\))/g).filter(Boolean).map((part)=>{
|
|
37
80
|
if (/^url\(.*?\)$/.test(part)) {
|
|
38
81
|
return part;
|
|
39
82
|
}
|
|
40
83
|
return normalize(part, false);
|
|
41
|
-
}).join(
|
|
84
|
+
}).join("");
|
|
42
85
|
}
|
|
43
86
|
// Convert `_` to ` `, except for escaped underscores `\_`
|
|
44
|
-
value = value.replace(/([^\\])_+/g, (fullMatch, characterBefore)=>characterBefore +
|
|
45
|
-
).replace(/^_/g, ' ').replace(/\\_/g, '_');
|
|
87
|
+
value = value.replace(/([^\\])_+/g, (fullMatch, characterBefore)=>characterBefore + " ".repeat(fullMatch.length - 1)).replace(/^_/g, " ").replace(/\\_/g, "_");
|
|
46
88
|
// Remove leftover whitespace
|
|
47
89
|
if (isRoot) {
|
|
48
90
|
value = value.trim();
|
|
49
91
|
}
|
|
50
|
-
// Add spaces around operators inside calc() that do not follow an operator
|
|
92
|
+
// Add spaces around operators inside math functions like calc() that do not follow an operator
|
|
51
93
|
// or '('.
|
|
52
|
-
|
|
94
|
+
value = value.replace(/(calc|min|max|clamp)\(.+\)/g, (match)=>{
|
|
95
|
+
let vars = [];
|
|
96
|
+
return match.replace(/var\((--.+?)[,)]/g, (match, g1)=>{
|
|
97
|
+
vars.push(g1);
|
|
98
|
+
return match.replace(g1, placeholder);
|
|
99
|
+
}).replace(/(-?\d*\.?\d(?!\b-\d.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g, "$1 $2 ").replace(placeholderRe, ()=>vars.shift());
|
|
100
|
+
});
|
|
101
|
+
return value;
|
|
53
102
|
}
|
|
54
103
|
function url(value) {
|
|
55
|
-
return value.startsWith(
|
|
104
|
+
return value.startsWith("url(");
|
|
56
105
|
}
|
|
57
106
|
function number(value) {
|
|
58
|
-
return !isNaN(Number(value)) ||
|
|
59
|
-
);
|
|
107
|
+
return !isNaN(Number(value)) || isCSSFunction(value);
|
|
60
108
|
}
|
|
61
109
|
function percentage(value) {
|
|
62
|
-
return
|
|
63
|
-
);
|
|
110
|
+
return value.endsWith("%") && number(value.slice(0, -1)) || isCSSFunction(value);
|
|
64
111
|
}
|
|
112
|
+
// Please refer to MDN when updating this list:
|
|
113
|
+
// https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Values_and_units
|
|
114
|
+
// https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Container_Queries#container_query_length_units
|
|
65
115
|
let lengthUnits = [
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
116
|
+
"cm",
|
|
117
|
+
"mm",
|
|
118
|
+
"Q",
|
|
119
|
+
"in",
|
|
120
|
+
"pc",
|
|
121
|
+
"pt",
|
|
122
|
+
"px",
|
|
123
|
+
"em",
|
|
124
|
+
"ex",
|
|
125
|
+
"ch",
|
|
126
|
+
"rem",
|
|
127
|
+
"lh",
|
|
128
|
+
"rlh",
|
|
129
|
+
"vw",
|
|
130
|
+
"vh",
|
|
131
|
+
"vmin",
|
|
132
|
+
"vmax",
|
|
133
|
+
"vb",
|
|
134
|
+
"vi",
|
|
135
|
+
"svw",
|
|
136
|
+
"svh",
|
|
137
|
+
"lvw",
|
|
138
|
+
"lvh",
|
|
139
|
+
"dvw",
|
|
140
|
+
"dvh",
|
|
141
|
+
"cqw",
|
|
142
|
+
"cqh",
|
|
143
|
+
"cqi",
|
|
144
|
+
"cqb",
|
|
145
|
+
"cqmin",
|
|
146
|
+
"cqmax"
|
|
82
147
|
];
|
|
83
|
-
let lengthUnitsPattern = `(?:${lengthUnits.join(
|
|
148
|
+
let lengthUnitsPattern = `(?:${lengthUnits.join("|")})`;
|
|
84
149
|
function length(value) {
|
|
85
|
-
return value ===
|
|
86
|
-
);
|
|
150
|
+
return value === "0" || new RegExp(`^[+-]?[0-9]*\.?[0-9]+(?:[eE][+-]?[0-9]+)?${lengthUnitsPattern}$`).test(value) || isCSSFunction(value);
|
|
87
151
|
}
|
|
88
152
|
let lineWidths = new Set([
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
153
|
+
"thin",
|
|
154
|
+
"medium",
|
|
155
|
+
"thick"
|
|
92
156
|
]);
|
|
93
157
|
function lineWidth(value) {
|
|
94
158
|
return lineWidths.has(value);
|
|
95
159
|
}
|
|
96
160
|
function shadow(value) {
|
|
97
|
-
let parsedShadows = (0, _parseBoxShadowValue
|
|
161
|
+
let parsedShadows = (0, _parseBoxShadowValue.parseBoxShadowValue)(normalize(value));
|
|
98
162
|
for (let parsedShadow of parsedShadows){
|
|
99
163
|
if (!parsedShadow.valid) {
|
|
100
164
|
return false;
|
|
@@ -104,10 +168,12 @@ function shadow(value) {
|
|
|
104
168
|
}
|
|
105
169
|
function color(value) {
|
|
106
170
|
let colors = 0;
|
|
107
|
-
let result =
|
|
171
|
+
let result = (0, _splitAtTopLevelOnly.splitAtTopLevelOnly)(value, "_").every((part)=>{
|
|
108
172
|
part = normalize(part);
|
|
109
|
-
if (part.startsWith(
|
|
110
|
-
if ((0, _color
|
|
173
|
+
if (part.startsWith("var(")) return true;
|
|
174
|
+
if ((0, _color.parseColor)(part, {
|
|
175
|
+
loose: true
|
|
176
|
+
}) !== null) return colors++, true;
|
|
111
177
|
return false;
|
|
112
178
|
});
|
|
113
179
|
if (!result) return false;
|
|
@@ -115,16 +181,15 @@ function color(value) {
|
|
|
115
181
|
}
|
|
116
182
|
function image(value) {
|
|
117
183
|
let images = 0;
|
|
118
|
-
let result =
|
|
184
|
+
let result = (0, _splitAtTopLevelOnly.splitAtTopLevelOnly)(value, ",").every((part)=>{
|
|
119
185
|
part = normalize(part);
|
|
120
|
-
if (part.startsWith(
|
|
186
|
+
if (part.startsWith("var(")) return true;
|
|
121
187
|
if (url(part) || gradient(part) || [
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
].some((fn)=>part.startsWith(fn)
|
|
127
|
-
)) {
|
|
188
|
+
"element(",
|
|
189
|
+
"image(",
|
|
190
|
+
"cross-fade(",
|
|
191
|
+
"image-set("
|
|
192
|
+
].some((fn)=>part.startsWith(fn))) {
|
|
128
193
|
images++;
|
|
129
194
|
return true;
|
|
130
195
|
}
|
|
@@ -134,11 +199,11 @@ function image(value) {
|
|
|
134
199
|
return images > 0;
|
|
135
200
|
}
|
|
136
201
|
let gradientTypes = new Set([
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
202
|
+
"linear-gradient",
|
|
203
|
+
"radial-gradient",
|
|
204
|
+
"repeating-linear-gradient",
|
|
205
|
+
"repeating-radial-gradient",
|
|
206
|
+
"conic-gradient"
|
|
142
207
|
]);
|
|
143
208
|
function gradient(value) {
|
|
144
209
|
value = normalize(value);
|
|
@@ -150,17 +215,17 @@ function gradient(value) {
|
|
|
150
215
|
return false;
|
|
151
216
|
}
|
|
152
217
|
let validPositions = new Set([
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
218
|
+
"center",
|
|
219
|
+
"top",
|
|
220
|
+
"right",
|
|
221
|
+
"bottom",
|
|
222
|
+
"left"
|
|
158
223
|
]);
|
|
159
224
|
function position(value) {
|
|
160
225
|
let positions = 0;
|
|
161
|
-
let result =
|
|
226
|
+
let result = (0, _splitAtTopLevelOnly.splitAtTopLevelOnly)(value, "_").every((part)=>{
|
|
162
227
|
part = normalize(part);
|
|
163
|
-
if (part.startsWith(
|
|
228
|
+
if (part.startsWith("var(")) return true;
|
|
164
229
|
if (validPositions.has(part) || length(part) || percentage(part)) {
|
|
165
230
|
positions++;
|
|
166
231
|
return true;
|
|
@@ -172,11 +237,11 @@ function position(value) {
|
|
|
172
237
|
}
|
|
173
238
|
function familyName(value) {
|
|
174
239
|
let fonts = 0;
|
|
175
|
-
let result =
|
|
240
|
+
let result = (0, _splitAtTopLevelOnly.splitAtTopLevelOnly)(value, ",").every((part)=>{
|
|
176
241
|
part = normalize(part);
|
|
177
|
-
if (part.startsWith(
|
|
242
|
+
if (part.startsWith("var(")) return true;
|
|
178
243
|
// If it contains spaces, then it should be quoted
|
|
179
|
-
if (part.includes(
|
|
244
|
+
if (part.includes(" ")) {
|
|
180
245
|
if (!/(['"])([^"']+)\1/g.test(part)) {
|
|
181
246
|
return false;
|
|
182
247
|
}
|
|
@@ -192,39 +257,39 @@ function familyName(value) {
|
|
|
192
257
|
return fonts > 0;
|
|
193
258
|
}
|
|
194
259
|
let genericNames = new Set([
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
260
|
+
"serif",
|
|
261
|
+
"sans-serif",
|
|
262
|
+
"monospace",
|
|
263
|
+
"cursive",
|
|
264
|
+
"fantasy",
|
|
265
|
+
"system-ui",
|
|
266
|
+
"ui-serif",
|
|
267
|
+
"ui-sans-serif",
|
|
268
|
+
"ui-monospace",
|
|
269
|
+
"ui-rounded",
|
|
270
|
+
"math",
|
|
271
|
+
"emoji",
|
|
272
|
+
"fangsong"
|
|
208
273
|
]);
|
|
209
274
|
function genericName(value) {
|
|
210
275
|
return genericNames.has(value);
|
|
211
276
|
}
|
|
212
277
|
let absoluteSizes = new Set([
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
278
|
+
"xx-small",
|
|
279
|
+
"x-small",
|
|
280
|
+
"small",
|
|
281
|
+
"medium",
|
|
282
|
+
"large",
|
|
283
|
+
"x-large",
|
|
284
|
+
"x-large",
|
|
285
|
+
"xxx-large"
|
|
221
286
|
]);
|
|
222
287
|
function absoluteSize(value) {
|
|
223
288
|
return absoluteSizes.has(value);
|
|
224
289
|
}
|
|
225
290
|
let relativeSizes = new Set([
|
|
226
|
-
|
|
227
|
-
|
|
291
|
+
"larger",
|
|
292
|
+
"smaller"
|
|
228
293
|
]);
|
|
229
294
|
function relativeSize(value) {
|
|
230
295
|
return relativeSizes.has(value);
|
package/lib/util/defaults.js
CHANGED
|
@@ -2,12 +2,23 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
5
|
+
Object.defineProperty(exports, "defaults", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return defaults;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
6
11
|
function defaults(target, ...sources) {
|
|
7
12
|
for (let source of sources){
|
|
8
13
|
for(let k in source){
|
|
9
|
-
var
|
|
10
|
-
if (!(target === null || target === void 0 ? void 0 : (
|
|
14
|
+
var _target_hasOwnProperty;
|
|
15
|
+
if (!(target === null || target === void 0 ? void 0 : (_target_hasOwnProperty = target.hasOwnProperty) === null || _target_hasOwnProperty === void 0 ? void 0 : _target_hasOwnProperty.call(target, k))) {
|
|
16
|
+
target[k] = source[k];
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
for (let k of Object.getOwnPropertySymbols(source)){
|
|
20
|
+
var _target_hasOwnProperty1;
|
|
21
|
+
if (!(target === null || target === void 0 ? void 0 : (_target_hasOwnProperty1 = target.hasOwnProperty) === null || _target_hasOwnProperty1 === void 0 ? void 0 : _target_hasOwnProperty1.call(target, k))) {
|
|
11
22
|
target[k] = source[k];
|
|
12
23
|
}
|
|
13
24
|
}
|
|
@@ -2,18 +2,23 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return escapeClassName;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _postcssselectorparser = /*#__PURE__*/ _interop_require_default(require("postcss-selector-parser"));
|
|
12
|
+
const _escapeCommas = /*#__PURE__*/ _interop_require_default(require("./escapeCommas"));
|
|
13
|
+
function _interop_require_default(obj) {
|
|
9
14
|
return obj && obj.__esModule ? obj : {
|
|
10
15
|
default: obj
|
|
11
16
|
};
|
|
12
17
|
}
|
|
13
18
|
function escapeClassName(className) {
|
|
14
|
-
var
|
|
15
|
-
let node =
|
|
19
|
+
var _node_raws;
|
|
20
|
+
let node = _postcssselectorparser.default.className();
|
|
16
21
|
node.value = className;
|
|
17
|
-
var
|
|
18
|
-
return (0, _escapeCommas
|
|
22
|
+
var _node_raws_value;
|
|
23
|
+
return (0, _escapeCommas.default)((_node_raws_value = node === null || node === void 0 ? void 0 : (_node_raws = node.raws) === null || _node_raws === void 0 ? void 0 : _node_raws.value) !== null && _node_raws_value !== void 0 ? _node_raws_value : node.value);
|
|
19
24
|
}
|
package/lib/util/escapeCommas.js
CHANGED
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return escapeCommas;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
6
11
|
function escapeCommas(className) {
|
|
7
|
-
return className.replace(/\\,/g,
|
|
12
|
+
return className.replace(/\\,/g, "\\2c ");
|
|
8
13
|
}
|
|
@@ -2,18 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
exports
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const flattenColorPalette = (colors)=>Object.assign({}, ...Object.entries(colors !== null && colors !== void 0 ? colors : {}).flatMap(([color, values])=>typeof values == "object" ? Object.entries(flattenColorPalette(values)).map(([number, hex])=>({
|
|
12
|
+
[color + (number === "DEFAULT" ? "" : `-${number}`)]: hex
|
|
13
|
+
})) : [
|
|
12
14
|
{
|
|
13
15
|
[`${color}`]: values
|
|
14
16
|
}
|
|
15
|
-
]
|
|
16
|
-
|
|
17
|
-
;
|
|
18
|
-
var _default = flattenColorPalette;
|
|
19
|
-
exports.default = _default;
|
|
17
|
+
]));
|
|
18
|
+
const _default = flattenColorPalette;
|