tailwindcss 0.0.0-insiders.e4482c7 → 0.0.0-insiders.e4af07f
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/README.md +1 -1
- package/index.css +5 -0
- package/lib/cli/build/index.js +13 -8
- package/lib/cli/build/plugin.js +130 -76
- package/lib/cli/build/utils.js +18 -8
- package/lib/cli/build/watching.js +12 -10
- package/lib/cli/help/index.js +6 -4
- package/lib/cli/index.js +5 -4
- package/lib/cli/init/index.js +8 -6
- package/lib/cli.js +1 -5
- package/lib/corePluginList.js +4 -1
- package/lib/corePlugins.js +103 -40
- package/lib/css/preflight.css +7 -1
- package/lib/featureFlags.js +22 -16
- package/lib/index.js +1 -5
- package/lib/lib/cacheInvalidation.js +7 -5
- package/lib/lib/collapseAdjacentRules.js +3 -1
- package/lib/lib/collapseDuplicateDeclarations.js +10 -8
- package/lib/lib/content.js +45 -15
- package/lib/lib/defaultExtractor.js +6 -4
- package/lib/lib/detectNesting.js +3 -1
- package/lib/lib/evaluateTailwindFunctions.js +20 -16
- package/lib/lib/expandApplyAtRules.js +41 -33
- package/lib/lib/expandTailwindAtRules.js +66 -24
- package/lib/lib/findAtConfigPath.js +6 -4
- package/lib/lib/generateRules.js +46 -42
- package/lib/lib/getModuleDependencies.js +12 -9
- package/lib/lib/handleImportAtRules.js +50 -0
- package/lib/lib/load-config.js +14 -8
- package/lib/lib/normalizeTailwindDirectives.js +5 -18
- package/lib/lib/offsets.js +9 -7
- package/lib/lib/partitionApplyAtRules.js +3 -1
- package/lib/lib/regex.js +21 -7
- package/lib/lib/remap-bitfield.js +3 -1
- package/lib/lib/resolveDefaultsAtRules.js +24 -20
- package/lib/lib/setupContextUtils.js +69 -69
- package/lib/lib/setupTrackingContext.js +27 -24
- package/lib/lib/sharedState.js +29 -28
- package/lib/lib/substituteScreenAtRules.js +5 -3
- package/lib/plugin.js +93 -27
- package/lib/postcss-plugins/nesting/index.js +3 -1
- package/lib/postcss-plugins/nesting/plugin.js +8 -6
- package/lib/processTailwindFeatures.js +14 -12
- package/lib/public/colors.js +49 -25
- package/lib/public/create-plugin.js +5 -3
- package/lib/public/default-config.js +6 -4
- package/lib/public/default-theme.js +6 -4
- package/lib/public/load-config.js +5 -3
- package/lib/public/resolve-config.js +6 -4
- package/lib/util/applyImportantSelector.js +36 -0
- package/lib/util/bigSign.js +3 -1
- package/lib/util/buildMediaQuery.js +3 -1
- package/lib/util/cloneDeep.js +3 -1
- package/lib/util/cloneNodes.js +3 -1
- package/lib/util/color.js +10 -6
- package/lib/util/colorNames.js +752 -0
- package/lib/util/configurePlugins.js +3 -1
- package/lib/util/createPlugin.js +3 -1
- package/lib/util/createUtilityPlugin.js +5 -3
- package/lib/util/dataTypes.js +59 -21
- package/lib/util/defaults.js +6 -4
- package/lib/util/escapeClassName.js +7 -5
- package/lib/util/escapeCommas.js +3 -1
- package/lib/util/flattenColorPalette.js +3 -1
- package/lib/util/formatVariantSelector.js +28 -106
- package/lib/util/getAllConfigs.js +6 -4
- package/lib/util/hashConfig.js +6 -4
- package/lib/util/isKeyframeRule.js +3 -1
- package/lib/util/isPlainObject.js +3 -1
- package/lib/util/isSyntacticallyValidPropertyValue.js +3 -1
- package/lib/util/log.js +25 -4
- package/lib/util/nameClass.js +12 -6
- package/lib/util/negateValue.js +3 -1
- package/lib/util/normalizeConfig.js +42 -14
- package/lib/util/normalizeScreens.js +12 -4
- package/lib/util/parseAnimationValue.js +3 -1
- package/lib/util/parseBoxShadowValue.js +6 -2
- package/lib/util/parseDependency.js +3 -1
- package/lib/util/parseGlob.js +6 -4
- package/lib/util/parseObjectStyles.js +9 -7
- package/lib/util/pluginUtils.js +29 -19
- package/lib/util/prefixSelector.js +6 -4
- package/lib/util/pseudoElements.js +209 -0
- package/lib/util/removeAlphaVariables.js +3 -1
- package/lib/util/resolveConfig.js +10 -8
- package/lib/util/resolveConfigPath.js +9 -5
- package/lib/util/responsive.js +6 -4
- package/lib/util/splitAtTopLevelOnly.js +3 -1
- package/lib/util/tap.js +3 -1
- package/lib/util/toColorValue.js +3 -1
- package/lib/util/toPath.js +3 -1
- package/lib/util/transformThemeValue.js +6 -4
- package/lib/util/validateConfig.js +27 -3
- package/lib/util/validateFormalSyntax.js +3 -1
- package/lib/util/withAlphaVariable.js +6 -2
- package/lib/value-parser/LICENSE +22 -0
- package/lib/value-parser/README.md +3 -0
- package/lib/value-parser/index.d.js +2 -0
- package/lib/value-parser/index.js +22 -0
- package/lib/value-parser/parse.js +259 -0
- package/lib/value-parser/stringify.js +38 -0
- package/lib/value-parser/unit.js +86 -0
- package/lib/value-parser/walk.js +16 -0
- package/package.json +45 -58
- package/src/cli/build/index.js +4 -0
- package/src/cli/build/plugin.js +71 -46
- package/src/cli/index.js +1 -0
- package/src/cli.js +1 -5
- package/src/corePluginList.js +1 -1
- package/src/corePlugins.js +101 -22
- package/src/css/preflight.css +7 -1
- package/src/featureFlags.js +7 -10
- package/src/index.js +1 -5
- package/src/lib/content.js +33 -1
- package/src/lib/defaultExtractor.js +1 -1
- package/src/lib/evaluateTailwindFunctions.js +4 -1
- package/src/lib/expandApplyAtRules.js +8 -1
- package/src/lib/expandTailwindAtRules.js +59 -27
- package/src/lib/generateRules.js +9 -12
- package/src/lib/getModuleDependencies.js +2 -1
- package/src/lib/handleImportAtRules.js +34 -0
- package/src/lib/load-config.ts +9 -5
- package/src/lib/normalizeTailwindDirectives.js +0 -27
- package/src/lib/offsets.js +3 -3
- package/src/lib/setupContextUtils.js +6 -15
- package/src/lib/setupTrackingContext.js +2 -4
- package/src/lib/sharedState.js +10 -20
- package/src/plugin.js +83 -57
- package/src/public/colors.js +22 -0
- package/src/util/applyImportantSelector.js +27 -0
- package/src/util/color.js +1 -1
- package/src/util/colorNames.js +150 -0
- package/src/util/dataTypes.js +17 -6
- package/src/util/formatVariantSelector.js +2 -98
- package/src/util/log.js +24 -0
- package/src/util/normalizeConfig.js +38 -11
- package/src/util/pluginUtils.js +1 -9
- package/src/util/pseudoElements.js +167 -0
- package/src/util/validateConfig.js +23 -0
- package/src/value-parser/LICENSE +22 -0
- package/src/value-parser/README.md +3 -0
- package/src/value-parser/index.d.ts +177 -0
- package/src/value-parser/index.js +28 -0
- package/src/value-parser/parse.js +303 -0
- package/src/value-parser/stringify.js +41 -0
- package/src/value-parser/unit.js +118 -0
- package/src/value-parser/walk.js +18 -0
- package/stubs/config.full.js +37 -1
- package/stubs/config.simple.js +1 -1
- package/stubs/postcss.config.cjs +0 -1
- package/stubs/postcss.config.js +0 -1
- package/types/config.d.ts +3 -7
- package/types/generated/colors.d.ts +22 -0
- package/types/generated/corePluginList.d.ts +1 -1
- package/types/generated/default-theme.d.ts +26 -1
- package/lib/cli/build/deps.js +0 -54
- package/lib/cli-peer-dependencies.js +0 -28
- package/lib/oxide/cli/build/deps.js +0 -81
- package/lib/oxide/cli/build/index.js +0 -51
- package/lib/oxide/cli/build/plugin.js +0 -373
- package/lib/oxide/cli/build/utils.js +0 -77
- package/lib/oxide/cli/build/watching.js +0 -177
- package/lib/oxide/cli/help/index.js +0 -70
- package/lib/oxide/cli/index.js +0 -214
- package/lib/oxide/cli/init/index.js +0 -50
- package/lib/oxide/cli.js +0 -5
- package/lib/oxide/postcss-plugin.js +0 -2
- package/peers/index.js +0 -79461
- package/scripts/swap-engines.js +0 -40
- package/src/cli/build/deps.js +0 -56
- package/src/cli-peer-dependencies.js +0 -15
- package/src/oxide/cli/build/deps.ts +0 -91
- package/src/oxide/cli/build/index.ts +0 -47
- package/src/oxide/cli/build/plugin.ts +0 -442
- package/src/oxide/cli/build/utils.ts +0 -74
- package/src/oxide/cli/build/watching.ts +0 -225
- package/src/oxide/cli/help/index.ts +0 -69
- package/src/oxide/cli/index.ts +0 -204
- package/src/oxide/cli/init/index.ts +0 -59
- package/src/oxide/cli.ts +0 -1
- package/src/oxide/postcss-plugin.ts +0 -1
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
<p align="center">
|
|
17
|
-
<a href="https://github.com/tailwindlabs/tailwindcss/actions"><img src="https://img.shields.io/github/actions/workflow/status/tailwindlabs/tailwindcss/ci
|
|
17
|
+
<a href="https://github.com/tailwindlabs/tailwindcss/actions"><img src="https://img.shields.io/github/actions/workflow/status/tailwindlabs/tailwindcss/ci.yml?branch=master" alt="Build Status"></a>
|
|
18
18
|
<a href="https://www.npmjs.com/package/tailwindcss"><img src="https://img.shields.io/npm/dt/tailwindcss.svg" alt="Total Downloads"></a>
|
|
19
19
|
<a href="https://github.com/tailwindcss/tailwindcss/releases"><img src="https://img.shields.io/npm/v/tailwindcss.svg" alt="Latest Release"></a>
|
|
20
20
|
<a href="https://github.com/tailwindcss/tailwindcss/blob/master/LICENSE"><img src="https://img.shields.io/npm/l/tailwindcss.svg" alt="License"></a>
|
package/index.css
ADDED
package/lib/cli/build/index.js
CHANGED
|
@@ -5,13 +5,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "build", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get: ()
|
|
8
|
+
get: function() {
|
|
9
|
+
return build;
|
|
10
|
+
}
|
|
9
11
|
});
|
|
10
|
-
const _fs = /*#__PURE__*/
|
|
11
|
-
const _path = /*#__PURE__*/
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
function
|
|
12
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
13
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
14
|
+
const _resolveConfigPath = require("../../util/resolveConfigPath.js");
|
|
15
|
+
const _plugin = require("./plugin.js");
|
|
16
|
+
function _interop_require_default(obj) {
|
|
15
17
|
return obj && obj.__esModule ? obj : {
|
|
16
18
|
default: obj
|
|
17
19
|
};
|
|
@@ -32,9 +34,12 @@ async function build(args) {
|
|
|
32
34
|
console.error(`Specified config file ${args["--config"]} does not exist.`);
|
|
33
35
|
process.exit(9);
|
|
34
36
|
}
|
|
37
|
+
if (args["--no-autoprefixer"]) {
|
|
38
|
+
console.error("[deprecation] The --no-autoprefixer flag is deprecated and has no effect.");
|
|
39
|
+
}
|
|
35
40
|
// TODO: Reference the @config path here if exists
|
|
36
|
-
let configPath = args["--config"] ? args["--config"] : (0,
|
|
37
|
-
let processor = await (0,
|
|
41
|
+
let configPath = args["--config"] ? args["--config"] : (0, _resolveConfigPath.resolveDefaultConfigPath)();
|
|
42
|
+
let processor = await (0, _plugin.createProcessor)(args, configPath);
|
|
38
43
|
if (shouldWatch) {
|
|
39
44
|
// Abort the watcher if stdin is closed to avoid zombie processes
|
|
40
45
|
// You can disable this behavior with --watch=always
|
package/lib/cli/build/plugin.js
CHANGED
|
@@ -5,33 +5,118 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "createProcessor", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get: ()
|
|
8
|
+
get: function() {
|
|
9
|
+
return createProcessor;
|
|
10
|
+
}
|
|
9
11
|
});
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
12
|
+
const _packagejson = /*#__PURE__*/ _interop_require_default(require("../../../package.json"));
|
|
13
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
14
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
15
|
+
const _postcss = /*#__PURE__*/ _interop_require_default(require("postcss"));
|
|
16
|
+
const _postcssloadconfig = /*#__PURE__*/ _interop_require_default(require("postcss-load-config"));
|
|
17
|
+
const _browserslist = /*#__PURE__*/ _interop_require_default(require("browserslist"));
|
|
18
|
+
const _lightningcss = /*#__PURE__*/ _interop_require_wildcard(require("lightningcss"));
|
|
13
19
|
const _lilconfig = require("lilconfig");
|
|
14
|
-
const _plugins = /*#__PURE__*/
|
|
20
|
+
const _plugins = /*#__PURE__*/ _interop_require_default(require("postcss-load-config/src/plugins" // Little bit scary, looking at private/internal API
|
|
15
21
|
));
|
|
16
|
-
const _options = /*#__PURE__*/
|
|
22
|
+
const _options = /*#__PURE__*/ _interop_require_default(require("postcss-load-config/src/options" // Little bit scary, looking at private/internal API
|
|
17
23
|
));
|
|
18
|
-
const _processTailwindFeatures = /*#__PURE__*/
|
|
19
|
-
const _deps = require("./deps");
|
|
24
|
+
const _processTailwindFeatures = /*#__PURE__*/ _interop_require_default(require("../../processTailwindFeatures"));
|
|
20
25
|
const _utils = require("./utils");
|
|
21
26
|
const _sharedState = require("../../lib/sharedState");
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const _log = /*#__PURE__*/
|
|
28
|
-
const
|
|
29
|
-
const _getModuleDependencies = /*#__PURE__*/
|
|
30
|
-
|
|
27
|
+
const _resolveConfig = /*#__PURE__*/ _interop_require_default(require("../../../resolveConfig.js"));
|
|
28
|
+
const _content = require("../../lib/content.js");
|
|
29
|
+
const _watching = require("./watching.js");
|
|
30
|
+
const _fastglob = /*#__PURE__*/ _interop_require_default(require("fast-glob"));
|
|
31
|
+
const _findAtConfigPath = require("../../lib/findAtConfigPath.js");
|
|
32
|
+
const _log = /*#__PURE__*/ _interop_require_default(require("../../util/log"));
|
|
33
|
+
const _loadconfig = require("../../lib/load-config");
|
|
34
|
+
const _getModuleDependencies = /*#__PURE__*/ _interop_require_default(require("../../lib/getModuleDependencies"));
|
|
35
|
+
const _validateConfig = require("../../util/validateConfig");
|
|
36
|
+
const _handleImportAtRules = require("../../lib/handleImportAtRules");
|
|
37
|
+
const _featureFlags = require("../../featureFlags");
|
|
38
|
+
function _interop_require_default(obj) {
|
|
31
39
|
return obj && obj.__esModule ? obj : {
|
|
32
40
|
default: obj
|
|
33
41
|
};
|
|
34
42
|
}
|
|
43
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
44
|
+
if (typeof WeakMap !== "function") return null;
|
|
45
|
+
var cacheBabelInterop = new WeakMap();
|
|
46
|
+
var cacheNodeInterop = new WeakMap();
|
|
47
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
48
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
49
|
+
})(nodeInterop);
|
|
50
|
+
}
|
|
51
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
52
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
53
|
+
return obj;
|
|
54
|
+
}
|
|
55
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
56
|
+
return {
|
|
57
|
+
default: obj
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
61
|
+
if (cache && cache.has(obj)) {
|
|
62
|
+
return cache.get(obj);
|
|
63
|
+
}
|
|
64
|
+
var newObj = {};
|
|
65
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
66
|
+
for(var key in obj){
|
|
67
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
68
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
69
|
+
if (desc && (desc.get || desc.set)) {
|
|
70
|
+
Object.defineProperty(newObj, key, desc);
|
|
71
|
+
} else {
|
|
72
|
+
newObj[key] = obj[key];
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
newObj.default = obj;
|
|
77
|
+
if (cache) {
|
|
78
|
+
cache.set(obj, newObj);
|
|
79
|
+
}
|
|
80
|
+
return newObj;
|
|
81
|
+
}
|
|
82
|
+
function license() {
|
|
83
|
+
return `/* ! tailwindcss v${_packagejson.default.version} | MIT License | https://tailwindcss.com */\n`;
|
|
84
|
+
}
|
|
85
|
+
async function lightningcss(result, { map =true , minify =true } = {}) {
|
|
86
|
+
try {
|
|
87
|
+
var _browserslist_findConfig;
|
|
88
|
+
var _result_opts_from;
|
|
89
|
+
let resolvedBrowsersListConfig = (_browserslist_findConfig = _browserslist.default.findConfig((_result_opts_from = result.opts.from) !== null && _result_opts_from !== void 0 ? _result_opts_from : process.cwd())) === null || _browserslist_findConfig === void 0 ? void 0 : _browserslist_findConfig.defaults;
|
|
90
|
+
let defaultBrowsersListConfig = _packagejson.default.browserslist;
|
|
91
|
+
let browsersListConfig = resolvedBrowsersListConfig !== null && resolvedBrowsersListConfig !== void 0 ? resolvedBrowsersListConfig : defaultBrowsersListConfig;
|
|
92
|
+
let transformed = _lightningcss.default.transform({
|
|
93
|
+
filename: result.opts.from || "input.css",
|
|
94
|
+
code: Buffer.from(result.css, "utf-8"),
|
|
95
|
+
minify,
|
|
96
|
+
sourceMap: result.map === undefined ? map : !!result.map,
|
|
97
|
+
inputSourceMap: result.map ? result.map.toString() : undefined,
|
|
98
|
+
targets: _lightningcss.default.browserslistToTargets((0, _browserslist.default)(browsersListConfig)),
|
|
99
|
+
drafts: {
|
|
100
|
+
nesting: true
|
|
101
|
+
},
|
|
102
|
+
include: _lightningcss.Features.Nesting,
|
|
103
|
+
exclude: _lightningcss.Features.LogicalProperties
|
|
104
|
+
});
|
|
105
|
+
return Object.assign(result, {
|
|
106
|
+
css: transformed.code.toString("utf8"),
|
|
107
|
+
map: result.map ? Object.assign(result.map, {
|
|
108
|
+
toString () {
|
|
109
|
+
var _transformed_map;
|
|
110
|
+
return (_transformed_map = transformed.map) === null || _transformed_map === void 0 ? void 0 : _transformed_map.toString();
|
|
111
|
+
}
|
|
112
|
+
}) : result.map
|
|
113
|
+
});
|
|
114
|
+
} catch (err) {
|
|
115
|
+
console.error("Unable to use Lightning CSS. Using raw version instead.");
|
|
116
|
+
console.error(err);
|
|
117
|
+
return result;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
35
120
|
/**
|
|
36
121
|
*
|
|
37
122
|
* @param {string} [customPostCssPath ]
|
|
@@ -55,7 +140,7 @@ function _interopRequireDefault(obj) {
|
|
|
55
140
|
plugins: (0, _plugins.default)(config, file),
|
|
56
141
|
options: (0, _options.default)(config, file)
|
|
57
142
|
};
|
|
58
|
-
})() : await (0,
|
|
143
|
+
})() : await (0, _postcssloadconfig.default)();
|
|
59
144
|
let configPlugins = config.plugins;
|
|
60
145
|
let configPluginTailwindIdx = configPlugins.findIndex((plugin)=>{
|
|
61
146
|
if (typeof plugin === "function" && plugin.name === "tailwindcss") {
|
|
@@ -74,48 +159,16 @@ function _interopRequireDefault(obj) {
|
|
|
74
159
|
config.options
|
|
75
160
|
];
|
|
76
161
|
}
|
|
77
|
-
function loadBuiltinPostcssPlugins() {
|
|
78
|
-
let postcss = (0, _deps.loadPostcss)();
|
|
79
|
-
let IMPORT_COMMENT = "__TAILWIND_RESTORE_IMPORT__: ";
|
|
80
|
-
return [
|
|
81
|
-
[
|
|
82
|
-
(root)=>{
|
|
83
|
-
root.walkAtRules("import", (rule)=>{
|
|
84
|
-
if (rule.params.slice(1).startsWith("tailwindcss/")) {
|
|
85
|
-
rule.after(postcss.comment({
|
|
86
|
-
text: IMPORT_COMMENT + rule.params
|
|
87
|
-
}));
|
|
88
|
-
rule.remove();
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
},
|
|
92
|
-
(0, _deps.loadPostcssImport)(),
|
|
93
|
-
(root)=>{
|
|
94
|
-
root.walkComments((rule)=>{
|
|
95
|
-
if (rule.text.startsWith(IMPORT_COMMENT)) {
|
|
96
|
-
rule.after(postcss.atRule({
|
|
97
|
-
name: "import",
|
|
98
|
-
params: rule.text.replace(IMPORT_COMMENT, "")
|
|
99
|
-
}));
|
|
100
|
-
rule.remove();
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
],
|
|
105
|
-
[],
|
|
106
|
-
{}
|
|
107
|
-
];
|
|
108
|
-
}
|
|
109
162
|
let state = {
|
|
110
163
|
/** @type {any} */ context: null,
|
|
111
164
|
/** @type {ReturnType<typeof createWatcher> | null} */ watcher: null,
|
|
112
165
|
/** @type {{content: string, extension: string}[]} */ changedContent: [],
|
|
113
|
-
/** @type {
|
|
166
|
+
/** @type {{config: import('../../../types').Config, dependencies: Set<string>, dispose: Function } | null} */ configBag: null,
|
|
114
167
|
contextDependencies: new Set(),
|
|
115
168
|
/** @type {import('../../lib/content.js').ContentPath[]} */ contentPaths: [],
|
|
116
169
|
refreshContentPaths () {
|
|
117
170
|
var _this_context;
|
|
118
|
-
this.contentPaths = (0,
|
|
171
|
+
this.contentPaths = (0, _content.parseCandidateFiles)(this.context, (_this_context = this.context) === null || _this_context === void 0 ? void 0 : _this_context.tailwindConfig);
|
|
119
172
|
},
|
|
120
173
|
get config () {
|
|
121
174
|
return this.context.tailwindConfig;
|
|
@@ -130,7 +183,7 @@ let state = {
|
|
|
130
183
|
if (this.watcher && configPath) {
|
|
131
184
|
this.refreshConfigDependencies();
|
|
132
185
|
}
|
|
133
|
-
let config = (0,
|
|
186
|
+
let config = (0, _loadconfig.loadConfig)(configPath);
|
|
134
187
|
let dependencies = (0, _getModuleDependencies.default)(configPath);
|
|
135
188
|
this.configBag = {
|
|
136
189
|
config,
|
|
@@ -141,12 +194,7 @@ let state = {
|
|
|
141
194
|
}
|
|
142
195
|
}
|
|
143
196
|
};
|
|
144
|
-
|
|
145
|
-
this.configBag.config = (0, _resolveConfigJs.default)(this.configBag.config, {
|
|
146
|
-
content: {
|
|
147
|
-
files: []
|
|
148
|
-
}
|
|
149
|
-
});
|
|
197
|
+
this.configBag.config = (0, _validateConfig.validateConfig)((0, _resolveConfig.default)(this.configBag.config));
|
|
150
198
|
// Override content files if `--content` has been passed explicitly
|
|
151
199
|
if ((content === null || content === void 0 ? void 0 : content.length) > 0) {
|
|
152
200
|
this.configBag.config.content.files = content;
|
|
@@ -163,9 +211,9 @@ let state = {
|
|
|
163
211
|
let content = [];
|
|
164
212
|
// Resolve globs from the content config
|
|
165
213
|
// TODO: When we make the postcss plugin async-capable this can become async
|
|
166
|
-
let files =
|
|
214
|
+
let files = _fastglob.default.sync(this.contentPatterns.all);
|
|
167
215
|
for (let file of files){
|
|
168
|
-
if (
|
|
216
|
+
if ((0, _featureFlags.flagEnabled)(this.config, "oxideParser")) {
|
|
169
217
|
content.push({
|
|
170
218
|
file,
|
|
171
219
|
extension: _path.default.extname(file).slice(1)
|
|
@@ -195,8 +243,8 @@ let state = {
|
|
|
195
243
|
return this.context;
|
|
196
244
|
}
|
|
197
245
|
_sharedState.env.DEBUG && console.time("Searching for config");
|
|
198
|
-
var
|
|
199
|
-
let configPath = (
|
|
246
|
+
var _findAtConfigPath1;
|
|
247
|
+
let configPath = (_findAtConfigPath1 = (0, _findAtConfigPath.findAtConfigPath)(root, result)) !== null && _findAtConfigPath1 !== void 0 ? _findAtConfigPath1 : cliConfigPath;
|
|
200
248
|
_sharedState.env.DEBUG && console.timeEnd("Searching for config");
|
|
201
249
|
_sharedState.env.DEBUG && console.time("Loading config");
|
|
202
250
|
let config = this.loadConfig(configPath, content);
|
|
@@ -223,12 +271,16 @@ let state = {
|
|
|
223
271
|
};
|
|
224
272
|
async function createProcessor(args, cliConfigPath) {
|
|
225
273
|
var _args_content;
|
|
226
|
-
let postcss = (0, _deps.loadPostcss)();
|
|
227
274
|
let input = args["--input"];
|
|
228
275
|
let output = args["--output"];
|
|
229
276
|
let includePostCss = args["--postcss"];
|
|
230
277
|
let customPostCssPath = typeof args["--postcss"] === "string" ? args["--postcss"] : undefined;
|
|
231
|
-
let [beforePlugins, afterPlugins, postcssOptions] = includePostCss ? await loadPostCssPlugins(customPostCssPath) :
|
|
278
|
+
let [beforePlugins, afterPlugins, postcssOptions] = includePostCss ? await loadPostCssPlugins(customPostCssPath) : [
|
|
279
|
+
[],
|
|
280
|
+
[],
|
|
281
|
+
{}
|
|
282
|
+
];
|
|
283
|
+
beforePlugins.unshift(...(0, _handleImportAtRules.handleImportAtRules)());
|
|
232
284
|
if (args["--purge"]) {
|
|
233
285
|
_log.default.warn("purge-flag-deprecated", [
|
|
234
286
|
"The `--purge` flag has been deprecated.",
|
|
@@ -267,12 +319,10 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
267
319
|
...beforePlugins,
|
|
268
320
|
tailwindPlugin,
|
|
269
321
|
!args["--minify"] && _utils.formatNodes,
|
|
270
|
-
...afterPlugins
|
|
271
|
-
!args["--no-autoprefixer"] && (0, _deps.loadAutoprefixer)(),
|
|
272
|
-
args["--minify"] && (0, _deps.loadCssNano)()
|
|
322
|
+
...afterPlugins
|
|
273
323
|
].filter(Boolean);
|
|
274
324
|
/** @type {import('postcss').Processor} */ // @ts-ignore
|
|
275
|
-
let processor =
|
|
325
|
+
let processor = (0, _postcss.default)(plugins);
|
|
276
326
|
async function readInput() {
|
|
277
327
|
// Piping in data, let's drain the stdin
|
|
278
328
|
if (input === "-") {
|
|
@@ -287,10 +337,14 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
287
337
|
}
|
|
288
338
|
async function build() {
|
|
289
339
|
let start = process.hrtime.bigint();
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
340
|
+
let options = {
|
|
341
|
+
...postcssOptions,
|
|
342
|
+
from: input,
|
|
343
|
+
to: output
|
|
344
|
+
};
|
|
345
|
+
return readInput().then((css)=>processor.process(css, options)).then((result)=>lightningcss(result, {
|
|
346
|
+
...options,
|
|
347
|
+
minify: !!args["--minify"]
|
|
294
348
|
})).then((result)=>{
|
|
295
349
|
if (!state.watcher) {
|
|
296
350
|
return result;
|
|
@@ -309,11 +363,11 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
309
363
|
return result;
|
|
310
364
|
}).then((result)=>{
|
|
311
365
|
if (!output) {
|
|
312
|
-
process.stdout.write(result.css);
|
|
366
|
+
process.stdout.write(license() + result.css);
|
|
313
367
|
return;
|
|
314
368
|
}
|
|
315
369
|
return Promise.all([
|
|
316
|
-
(0, _utils.outputFile)(result.opts.to, result.css),
|
|
370
|
+
(0, _utils.outputFile)(result.opts.to, license() + result.css),
|
|
317
371
|
result.map && (0, _utils.outputFile)(result.opts.to + ".map", result.map.toString())
|
|
318
372
|
]);
|
|
319
373
|
}).then(()=>{
|
|
@@ -351,7 +405,7 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
351
405
|
return {
|
|
352
406
|
build,
|
|
353
407
|
watch: async ()=>{
|
|
354
|
-
state.watcher = (0,
|
|
408
|
+
state.watcher = (0, _watching.createWatcher)(args, {
|
|
355
409
|
state,
|
|
356
410
|
/**
|
|
357
411
|
* @param {{file: string, content(): Promise<string>, extension: string}[]} changes
|
package/lib/cli/build/utils.js
CHANGED
|
@@ -10,15 +10,25 @@ function _export(target, all) {
|
|
|
10
10
|
});
|
|
11
11
|
}
|
|
12
12
|
_export(exports, {
|
|
13
|
-
indentRecursive: ()
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
indentRecursive: function() {
|
|
14
|
+
return indentRecursive;
|
|
15
|
+
},
|
|
16
|
+
formatNodes: function() {
|
|
17
|
+
return formatNodes;
|
|
18
|
+
},
|
|
19
|
+
readFileWithRetries: function() {
|
|
20
|
+
return readFileWithRetries;
|
|
21
|
+
},
|
|
22
|
+
drainStdin: function() {
|
|
23
|
+
return drainStdin;
|
|
24
|
+
},
|
|
25
|
+
outputFile: function() {
|
|
26
|
+
return outputFile;
|
|
27
|
+
}
|
|
18
28
|
});
|
|
19
|
-
const _fs = /*#__PURE__*/
|
|
20
|
-
const _path = /*#__PURE__*/
|
|
21
|
-
function
|
|
29
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
30
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
31
|
+
function _interop_require_default(obj) {
|
|
22
32
|
return obj && obj.__esModule ? obj : {
|
|
23
33
|
default: obj
|
|
24
34
|
};
|
|
@@ -5,15 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "createWatcher", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get: ()
|
|
8
|
+
get: function() {
|
|
9
|
+
return createWatcher;
|
|
10
|
+
}
|
|
9
11
|
});
|
|
10
|
-
const _chokidar = /*#__PURE__*/
|
|
11
|
-
const _fs = /*#__PURE__*/
|
|
12
|
-
const _micromatch = /*#__PURE__*/
|
|
13
|
-
const
|
|
14
|
-
const _path = /*#__PURE__*/
|
|
15
|
-
const
|
|
16
|
-
function
|
|
12
|
+
const _chokidar = /*#__PURE__*/ _interop_require_default(require("chokidar"));
|
|
13
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
14
|
+
const _micromatch = /*#__PURE__*/ _interop_require_default(require("micromatch"));
|
|
15
|
+
const _normalizepath = /*#__PURE__*/ _interop_require_default(require("normalize-path"));
|
|
16
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
17
|
+
const _utils = require("./utils.js");
|
|
18
|
+
function _interop_require_default(obj) {
|
|
17
19
|
return obj && obj.__esModule ? obj : {
|
|
18
20
|
default: obj
|
|
19
21
|
};
|
|
@@ -111,7 +113,7 @@ function createWatcher(args, { state , rebuild }) {
|
|
|
111
113
|
// This can happen when a file is pseudo-atomically replaced (a copy is created, overwritten, the old one is unlinked, and the new one is renamed)
|
|
112
114
|
// TODO: An an optimization we should allow removal when the config changes
|
|
113
115
|
watcher.on("unlink", (file)=>{
|
|
114
|
-
file = (0,
|
|
116
|
+
file = (0, _normalizepath.default)(file);
|
|
115
117
|
// Only re-add the file if it's not covered by a dynamic pattern
|
|
116
118
|
if (!_micromatch.default.some([
|
|
117
119
|
file
|
|
@@ -150,7 +152,7 @@ function createWatcher(args, { state , rebuild }) {
|
|
|
150
152
|
// We need to read the file as early as possible outside of the chain
|
|
151
153
|
// because it may be gone by the time we get to it. doing the read
|
|
152
154
|
// immediately increases the chance that the file is still there
|
|
153
|
-
let content = await (0,
|
|
155
|
+
let content = await (0, _utils.readFileWithRetries)(_path.default.resolve(filePath));
|
|
154
156
|
if (content === undefined) {
|
|
155
157
|
return;
|
|
156
158
|
}
|
package/lib/cli/help/index.js
CHANGED
|
@@ -5,10 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "help", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get: ()
|
|
8
|
+
get: function() {
|
|
9
|
+
return help;
|
|
10
|
+
}
|
|
9
11
|
});
|
|
10
|
-
const
|
|
11
|
-
function
|
|
12
|
+
const _packagejson = /*#__PURE__*/ _interop_require_default(require("../../../package.json"));
|
|
13
|
+
function _interop_require_default(obj) {
|
|
12
14
|
return obj && obj.__esModule ? obj : {
|
|
13
15
|
default: obj
|
|
14
16
|
};
|
|
@@ -17,7 +19,7 @@ function help({ message , usage , commands , options }) {
|
|
|
17
19
|
let indent = 2;
|
|
18
20
|
// Render header
|
|
19
21
|
console.log();
|
|
20
|
-
console.log(`${
|
|
22
|
+
console.log(`${_packagejson.default.name} v${_packagejson.default.version}`);
|
|
21
23
|
// Render message
|
|
22
24
|
if (message) {
|
|
23
25
|
console.log();
|
package/lib/cli/index.js
CHANGED
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
const _path = /*#__PURE__*/
|
|
7
|
-
const _arg = /*#__PURE__*/
|
|
8
|
-
const _fs = /*#__PURE__*/
|
|
6
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
7
|
+
const _arg = /*#__PURE__*/ _interop_require_default(require("arg"));
|
|
8
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
9
9
|
const _build = require("./build");
|
|
10
10
|
const _help = require("./help");
|
|
11
11
|
const _init = require("./init");
|
|
12
|
-
function
|
|
12
|
+
function _interop_require_default(obj) {
|
|
13
13
|
return obj && obj.__esModule ? obj : {
|
|
14
14
|
default: obj
|
|
15
15
|
};
|
|
@@ -91,6 +91,7 @@ let commands = {
|
|
|
91
91
|
description: "Path to a custom config file"
|
|
92
92
|
},
|
|
93
93
|
"--no-autoprefixer": {
|
|
94
|
+
deprecated: true,
|
|
94
95
|
type: Boolean,
|
|
95
96
|
description: "Disable autoprefixer"
|
|
96
97
|
},
|
package/lib/cli/init/index.js
CHANGED
|
@@ -5,11 +5,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "init", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get: ()
|
|
8
|
+
get: function() {
|
|
9
|
+
return init;
|
|
10
|
+
}
|
|
9
11
|
});
|
|
10
|
-
const _fs = /*#__PURE__*/
|
|
11
|
-
const _path = /*#__PURE__*/
|
|
12
|
-
function
|
|
12
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
13
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
14
|
+
function _interop_require_default(obj) {
|
|
13
15
|
return obj && obj.__esModule ? obj : {
|
|
14
16
|
default: obj
|
|
15
17
|
};
|
|
@@ -47,8 +49,8 @@ function init(args) {
|
|
|
47
49
|
if (_fs.default.existsSync(postcssConfigLocation)) {
|
|
48
50
|
messages.push(`${_path.default.basename(postcssConfigLocation)} already exists.`);
|
|
49
51
|
} else {
|
|
50
|
-
let
|
|
51
|
-
_fs.default.writeFileSync(postcssConfigLocation,
|
|
52
|
+
let stubFile = _fs.default.readFileSync(isProjectESM ? _path.default.resolve(__dirname, "../../../stubs/postcss.config.js") : _path.default.resolve(__dirname, "../../../stubs/postcss.config.cjs"), "utf8");
|
|
53
|
+
_fs.default.writeFileSync(postcssConfigLocation, stubFile, "utf8");
|
|
52
54
|
messages.push(`Created PostCSS config file: ${_path.default.basename(postcssConfigLocation)}`);
|
|
53
55
|
}
|
|
54
56
|
}
|
package/lib/cli.js
CHANGED
package/lib/corePluginList.js
CHANGED
|
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
});
|
|
5
5
|
Object.defineProperty(exports, "default", {
|
|
6
6
|
enumerable: true,
|
|
7
|
-
get: ()
|
|
7
|
+
get: function() {
|
|
8
|
+
return _default;
|
|
9
|
+
}
|
|
8
10
|
});
|
|
9
11
|
const _default = [
|
|
10
12
|
"preflight",
|
|
@@ -96,6 +98,7 @@ const _default = [
|
|
|
96
98
|
"textOverflow",
|
|
97
99
|
"hyphens",
|
|
98
100
|
"whitespace",
|
|
101
|
+
"textWrap",
|
|
99
102
|
"wordBreak",
|
|
100
103
|
"borderRadius",
|
|
101
104
|
"borderWidth",
|