tailwindcss 0.0.0-insiders.eeec89a → 0.0.0-insiders.eef91c9
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 -2
- package/lib/cli/build/deps.js +62 -0
- package/lib/cli/build/index.js +0 -3
- package/lib/cli/build/plugin.js +66 -126
- package/lib/cli/build/watching.js +2 -2
- package/lib/cli/help/index.js +2 -2
- package/lib/cli/index.js +3 -4
- package/lib/cli-peer-dependencies.js +36 -0
- package/lib/corePluginList.js +4 -1
- package/lib/corePlugins.js +318 -185
- package/lib/css/preflight.css +20 -9
- package/lib/featureFlags.js +9 -15
- package/lib/lib/content.js +2 -28
- package/lib/lib/defaultExtractor.js +33 -25
- package/lib/lib/evaluateTailwindFunctions.js +4 -4
- package/lib/lib/expandApplyAtRules.js +19 -0
- package/lib/lib/expandTailwindAtRules.js +22 -58
- package/lib/lib/generateRules.js +47 -27
- package/lib/lib/load-config.js +18 -3
- package/lib/lib/normalizeTailwindDirectives.js +15 -0
- package/lib/lib/offsets.js +53 -4
- package/lib/lib/resolveDefaultsAtRules.js +4 -2
- package/lib/lib/setupContextUtils.js +108 -80
- package/lib/lib/setupTrackingContext.js +2 -3
- package/lib/lib/substituteScreenAtRules.js +2 -2
- package/lib/plugin.js +0 -116
- package/lib/postcss-plugins/nesting/index.js +1 -1
- package/lib/postcss-plugins/nesting/plugin.js +2 -2
- package/lib/processTailwindFeatures.js +1 -3
- package/lib/public/colors.js +1 -1
- package/lib/util/cloneNodes.js +33 -13
- package/lib/util/color.js +4 -4
- package/lib/util/createUtilityPlugin.js +2 -2
- package/lib/util/dataTypes.js +69 -6
- package/lib/util/defaults.js +4 -4
- package/lib/util/escapeClassName.js +2 -2
- package/lib/util/formatVariantSelector.js +12 -7
- package/lib/util/getAllConfigs.js +2 -3
- package/lib/util/isPlainObject.js +1 -1
- package/lib/util/log.js +0 -17
- package/lib/util/normalizeConfig.js +28 -59
- package/lib/util/normalizeScreens.js +3 -3
- package/lib/util/pluginUtils.js +22 -7
- package/lib/util/pseudoElements.js +3 -0
- package/lib/util/resolveConfig.js +6 -10
- package/lib/util/validateConfig.js +0 -11
- package/lib/util/withAlphaVariable.js +1 -1
- package/nesting/index.d.ts +4 -0
- package/package.json +39 -34
- package/peers/index.js +96671 -0
- package/resolveConfig.d.ts +22 -3
- package/scripts/generate-types.js +1 -2
- package/src/cli/build/deps.js +56 -0
- package/src/cli/build/index.js +0 -4
- package/src/cli/build/plugin.js +53 -85
- package/src/cli/build/watching.js +1 -1
- package/src/cli/index.js +0 -1
- package/src/cli-peer-dependencies.js +15 -0
- package/src/corePluginList.js +1 -1
- package/src/corePlugins.js +157 -44
- package/src/css/preflight.css +20 -9
- package/src/featureFlags.js +3 -9
- package/src/lib/content.js +1 -33
- package/src/lib/defaultExtractor.js +30 -17
- package/src/lib/expandApplyAtRules.js +24 -0
- package/src/lib/expandTailwindAtRules.js +19 -56
- package/src/lib/generateRules.js +43 -22
- package/src/lib/load-config.ts +13 -0
- package/src/lib/normalizeTailwindDirectives.js +27 -0
- package/src/lib/offsets.js +62 -3
- package/src/lib/resolveDefaultsAtRules.js +5 -1
- package/src/lib/setupContextUtils.js +79 -39
- package/src/plugin.js +0 -86
- package/src/processTailwindFeatures.js +0 -3
- package/src/util/cloneNodes.js +35 -14
- package/src/util/color.js +1 -1
- package/src/util/dataTypes.js +78 -6
- package/src/util/formatVariantSelector.js +7 -0
- package/src/util/isPlainObject.js +1 -1
- package/src/util/log.js +0 -24
- package/src/util/normalizeConfig.js +11 -38
- package/src/util/pluginUtils.js +21 -1
- package/src/util/pseudoElements.js +4 -0
- package/src/util/validateConfig.js +0 -10
- package/stubs/config.full.js +75 -16
- package/stubs/config.simple.js +1 -1
- package/stubs/postcss.config.cjs +1 -0
- package/stubs/postcss.config.js +1 -0
- package/types/config.d.ts +12 -5
- package/types/generated/corePluginList.d.ts +1 -1
- package/types/generated/default-theme.d.ts +34 -9
- package/types/index.d.ts +7 -3
- package/index.css +0 -5
- package/lib/lib/detectNesting.js +0 -45
- package/lib/lib/handleImportAtRules.js +0 -50
- package/src/lib/detectNesting.js +0 -47
- package/src/lib/handleImportAtRules.js +0 -34
package/README.md
CHANGED
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
A utility-first CSS framework for rapidly building custom user interfaces.
|
|
13
13
|
</p>
|
|
14
14
|
|
|
15
|
-
|
|
16
15
|
<p align="center">
|
|
17
16
|
<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
17
|
<a href="https://www.npmjs.com/package/tailwindcss"><img src="https://img.shields.io/npm/dt/tailwindcss.svg" alt="Total Downloads"></a>
|
|
@@ -20,7 +19,7 @@
|
|
|
20
19
|
<a href="https://github.com/tailwindcss/tailwindcss/blob/master/LICENSE"><img src="https://img.shields.io/npm/l/tailwindcss.svg" alt="License"></a>
|
|
21
20
|
</p>
|
|
22
21
|
|
|
23
|
-
|
|
22
|
+
---
|
|
24
23
|
|
|
25
24
|
## Documentation
|
|
26
25
|
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
function _export(target, all) {
|
|
7
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: all[name]
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
_export(exports, {
|
|
13
|
+
loadPostcss: function() {
|
|
14
|
+
return loadPostcss;
|
|
15
|
+
},
|
|
16
|
+
loadPostcssImport: function() {
|
|
17
|
+
return loadPostcssImport;
|
|
18
|
+
},
|
|
19
|
+
loadCssNano: function() {
|
|
20
|
+
return loadCssNano;
|
|
21
|
+
},
|
|
22
|
+
loadAutoprefixer: function() {
|
|
23
|
+
return loadAutoprefixer;
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
const _index = require("../../../peers/index.js");
|
|
27
|
+
function loadPostcss() {
|
|
28
|
+
// Try to load a local `postcss` version first
|
|
29
|
+
try {
|
|
30
|
+
return require("postcss");
|
|
31
|
+
} catch {}
|
|
32
|
+
return (0, _index.lazyPostcss)();
|
|
33
|
+
}
|
|
34
|
+
function loadPostcssImport() {
|
|
35
|
+
// Try to load a local `postcss-import` version first
|
|
36
|
+
try {
|
|
37
|
+
return require("postcss-import");
|
|
38
|
+
} catch {}
|
|
39
|
+
return (0, _index.lazyPostcssImport)();
|
|
40
|
+
}
|
|
41
|
+
function loadCssNano() {
|
|
42
|
+
let options = {
|
|
43
|
+
preset: [
|
|
44
|
+
"default",
|
|
45
|
+
{
|
|
46
|
+
cssDeclarationSorter: false
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
};
|
|
50
|
+
// Try to load a local `cssnano` version first
|
|
51
|
+
try {
|
|
52
|
+
return require("cssnano");
|
|
53
|
+
} catch {}
|
|
54
|
+
return (0, _index.lazyCssnano)()(options);
|
|
55
|
+
}
|
|
56
|
+
function loadAutoprefixer() {
|
|
57
|
+
// Try to load a local `autoprefixer` version first
|
|
58
|
+
try {
|
|
59
|
+
return require("autoprefixer");
|
|
60
|
+
} catch {}
|
|
61
|
+
return (0, _index.lazyAutoprefixer)();
|
|
62
|
+
}
|
package/lib/cli/build/index.js
CHANGED
|
@@ -34,9 +34,6 @@ async function build(args) {
|
|
|
34
34
|
console.error(`Specified config file ${args["--config"]} does not exist.`);
|
|
35
35
|
process.exit(9);
|
|
36
36
|
}
|
|
37
|
-
if (args["--no-autoprefixer"]) {
|
|
38
|
-
console.error("[deprecation] The --no-autoprefixer flag is deprecated and has no effect.");
|
|
39
|
-
}
|
|
40
37
|
// TODO: Reference the @config path here if exists
|
|
41
38
|
let configPath = args["--config"] ? args["--config"] : (0, _resolveConfigPath.resolveDefaultConfigPath)();
|
|
42
39
|
let processor = await (0, _plugin.createProcessor)(args, configPath);
|
package/lib/cli/build/plugin.js
CHANGED
|
@@ -9,19 +9,16 @@ Object.defineProperty(exports, "createProcessor", {
|
|
|
9
9
|
return createProcessor;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
const _packagejson = /*#__PURE__*/ _interop_require_default(require("../../../package.json"));
|
|
13
12
|
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
14
13
|
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
15
|
-
const _postcss = /*#__PURE__*/ _interop_require_default(require("postcss"));
|
|
16
14
|
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"));
|
|
19
15
|
const _lilconfig = require("lilconfig");
|
|
20
16
|
const _plugins = /*#__PURE__*/ _interop_require_default(require("postcss-load-config/src/plugins" // Little bit scary, looking at private/internal API
|
|
21
17
|
));
|
|
22
18
|
const _options = /*#__PURE__*/ _interop_require_default(require("postcss-load-config/src/options" // Little bit scary, looking at private/internal API
|
|
23
19
|
));
|
|
24
20
|
const _processTailwindFeatures = /*#__PURE__*/ _interop_require_default(require("../../processTailwindFeatures"));
|
|
21
|
+
const _deps = require("./deps");
|
|
25
22
|
const _utils = require("./utils");
|
|
26
23
|
const _sharedState = require("../../lib/sharedState");
|
|
27
24
|
const _resolveConfig = /*#__PURE__*/ _interop_require_default(require("../../../resolveConfig.js"));
|
|
@@ -32,91 +29,11 @@ const _findAtConfigPath = require("../../lib/findAtConfigPath.js");
|
|
|
32
29
|
const _log = /*#__PURE__*/ _interop_require_default(require("../../util/log"));
|
|
33
30
|
const _loadconfig = require("../../lib/load-config");
|
|
34
31
|
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
32
|
function _interop_require_default(obj) {
|
|
39
33
|
return obj && obj.__esModule ? obj : {
|
|
40
34
|
default: obj
|
|
41
35
|
};
|
|
42
36
|
}
|
|
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
|
-
}
|
|
120
37
|
/**
|
|
121
38
|
*
|
|
122
39
|
* @param {string} [customPostCssPath ]
|
|
@@ -126,7 +43,7 @@ async function lightningcss(result, { map = true, minify = true } = {}) {
|
|
|
126
43
|
let file = _path.default.resolve(customPostCssPath);
|
|
127
44
|
// Implementation, see: https://unpkg.com/browse/postcss-load-config@3.1.0/src/index.js
|
|
128
45
|
// @ts-ignore
|
|
129
|
-
let { config =
|
|
46
|
+
let { config ={} } = await (0, _lilconfig.lilconfig)("postcss").load(file);
|
|
130
47
|
if (typeof config === "function") {
|
|
131
48
|
config = config();
|
|
132
49
|
} else {
|
|
@@ -159,11 +76,43 @@ async function lightningcss(result, { map = true, minify = true } = {}) {
|
|
|
159
76
|
config.options
|
|
160
77
|
];
|
|
161
78
|
}
|
|
79
|
+
function loadBuiltinPostcssPlugins() {
|
|
80
|
+
let postcss = (0, _deps.loadPostcss)();
|
|
81
|
+
let IMPORT_COMMENT = "__TAILWIND_RESTORE_IMPORT__: ";
|
|
82
|
+
return [
|
|
83
|
+
[
|
|
84
|
+
(root)=>{
|
|
85
|
+
root.walkAtRules("import", (rule)=>{
|
|
86
|
+
if (rule.params.slice(1).startsWith("tailwindcss/")) {
|
|
87
|
+
rule.after(postcss.comment({
|
|
88
|
+
text: IMPORT_COMMENT + rule.params
|
|
89
|
+
}));
|
|
90
|
+
rule.remove();
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
},
|
|
94
|
+
(0, _deps.loadPostcssImport)(),
|
|
95
|
+
(root)=>{
|
|
96
|
+
root.walkComments((rule)=>{
|
|
97
|
+
if (rule.text.startsWith(IMPORT_COMMENT)) {
|
|
98
|
+
rule.after(postcss.atRule({
|
|
99
|
+
name: "import",
|
|
100
|
+
params: rule.text.replace(IMPORT_COMMENT, "")
|
|
101
|
+
}));
|
|
102
|
+
rule.remove();
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
],
|
|
107
|
+
[],
|
|
108
|
+
{}
|
|
109
|
+
];
|
|
110
|
+
}
|
|
162
111
|
let state = {
|
|
163
112
|
/** @type {any} */ context: null,
|
|
164
113
|
/** @type {ReturnType<typeof createWatcher> | null} */ watcher: null,
|
|
165
114
|
/** @type {{content: string, extension: string}[]} */ changedContent: [],
|
|
166
|
-
/** @type {
|
|
115
|
+
/** @type {ReturnType<typeof load> | null} */ configBag: null,
|
|
167
116
|
contextDependencies: new Set(),
|
|
168
117
|
/** @type {import('../../lib/content.js').ContentPath[]} */ contentPaths: [],
|
|
169
118
|
refreshContentPaths () {
|
|
@@ -180,7 +129,6 @@ let state = {
|
|
|
180
129
|
};
|
|
181
130
|
},
|
|
182
131
|
loadConfig (configPath, content) {
|
|
183
|
-
var _content;
|
|
184
132
|
if (this.watcher && configPath) {
|
|
185
133
|
this.refreshConfigDependencies();
|
|
186
134
|
}
|
|
@@ -195,9 +143,14 @@ let state = {
|
|
|
195
143
|
}
|
|
196
144
|
}
|
|
197
145
|
};
|
|
198
|
-
|
|
146
|
+
// @ts-ignore
|
|
147
|
+
this.configBag.config = (0, _resolveConfig.default)(this.configBag.config, {
|
|
148
|
+
content: {
|
|
149
|
+
files: []
|
|
150
|
+
}
|
|
151
|
+
});
|
|
199
152
|
// Override content files if `--content` has been passed explicitly
|
|
200
|
-
if ((
|
|
153
|
+
if ((content === null || content === void 0 ? void 0 : content.length) > 0) {
|
|
201
154
|
this.configBag.config.content.files = content;
|
|
202
155
|
}
|
|
203
156
|
return this.configBag.config;
|
|
@@ -214,23 +167,16 @@ let state = {
|
|
|
214
167
|
// TODO: When we make the postcss plugin async-capable this can become async
|
|
215
168
|
let files = _fastglob.default.sync(this.contentPatterns.all);
|
|
216
169
|
for (let file of files){
|
|
217
|
-
|
|
218
|
-
content.
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
});
|
|
222
|
-
} else {
|
|
223
|
-
content.push({
|
|
224
|
-
content: _fs.default.readFileSync(_path.default.resolve(file), "utf8"),
|
|
225
|
-
extension: _path.default.extname(file).slice(1)
|
|
226
|
-
});
|
|
227
|
-
}
|
|
170
|
+
content.push({
|
|
171
|
+
content: _fs.default.readFileSync(_path.default.resolve(file), "utf8"),
|
|
172
|
+
extension: _path.default.extname(file).slice(1)
|
|
173
|
+
});
|
|
228
174
|
}
|
|
229
175
|
// Resolve raw content in the tailwind config
|
|
230
176
|
let rawContent = this.config.content.files.filter((file)=>{
|
|
231
177
|
return file !== null && typeof file === "object";
|
|
232
178
|
});
|
|
233
|
-
for (let { raw: htmlContent, extension =
|
|
179
|
+
for (let { raw: htmlContent , extension ="html" } of rawContent){
|
|
234
180
|
content.push({
|
|
235
181
|
content: htmlContent,
|
|
236
182
|
extension
|
|
@@ -238,15 +184,15 @@ let state = {
|
|
|
238
184
|
}
|
|
239
185
|
return content;
|
|
240
186
|
},
|
|
241
|
-
getContext ({ createContext, cliConfigPath, root, result, content
|
|
242
|
-
if (this.context) {
|
|
243
|
-
this.context.changedContent = this.changedContent.splice(0);
|
|
244
|
-
return this.context;
|
|
245
|
-
}
|
|
187
|
+
getContext ({ createContext , cliConfigPath , root , result , content }) {
|
|
246
188
|
_sharedState.env.DEBUG && console.time("Searching for config");
|
|
247
189
|
var _findAtConfigPath1;
|
|
248
190
|
let configPath = (_findAtConfigPath1 = (0, _findAtConfigPath.findAtConfigPath)(root, result)) !== null && _findAtConfigPath1 !== void 0 ? _findAtConfigPath1 : cliConfigPath;
|
|
249
191
|
_sharedState.env.DEBUG && console.timeEnd("Searching for config");
|
|
192
|
+
if (this.context) {
|
|
193
|
+
this.context.changedContent = this.changedContent.splice(0);
|
|
194
|
+
return this.context;
|
|
195
|
+
}
|
|
250
196
|
_sharedState.env.DEBUG && console.time("Loading config");
|
|
251
197
|
let config = this.loadConfig(configPath, content);
|
|
252
198
|
_sharedState.env.DEBUG && console.timeEnd("Loading config");
|
|
@@ -272,16 +218,12 @@ let state = {
|
|
|
272
218
|
};
|
|
273
219
|
async function createProcessor(args, cliConfigPath) {
|
|
274
220
|
var _args_content;
|
|
221
|
+
let postcss = (0, _deps.loadPostcss)();
|
|
275
222
|
let input = args["--input"];
|
|
276
223
|
let output = args["--output"];
|
|
277
224
|
let includePostCss = args["--postcss"];
|
|
278
225
|
let customPostCssPath = typeof args["--postcss"] === "string" ? args["--postcss"] : undefined;
|
|
279
|
-
let [beforePlugins, afterPlugins, postcssOptions] = includePostCss ? await loadPostCssPlugins(customPostCssPath) :
|
|
280
|
-
[],
|
|
281
|
-
[],
|
|
282
|
-
{}
|
|
283
|
-
];
|
|
284
|
-
beforePlugins.unshift(...(0, _handleImportAtRules.handleImportAtRules)());
|
|
226
|
+
let [beforePlugins, afterPlugins, postcssOptions] = includePostCss ? await loadPostCssPlugins(customPostCssPath) : loadBuiltinPostcssPlugins();
|
|
285
227
|
if (args["--purge"]) {
|
|
286
228
|
_log.default.warn("purge-flag-deprecated", [
|
|
287
229
|
"The `--purge` flag has been deprecated.",
|
|
@@ -296,9 +238,9 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
296
238
|
let tailwindPlugin = ()=>{
|
|
297
239
|
return {
|
|
298
240
|
postcssPlugin: "tailwindcss",
|
|
299
|
-
async Once (root, { result
|
|
241
|
+
async Once (root, { result }) {
|
|
300
242
|
_sharedState.env.DEBUG && console.time("Compiling CSS");
|
|
301
|
-
await (0, _processTailwindFeatures.default)(({ createContext
|
|
243
|
+
await (0, _processTailwindFeatures.default)(({ createContext })=>{
|
|
302
244
|
console.error();
|
|
303
245
|
console.error("Rebuilding...");
|
|
304
246
|
return ()=>{
|
|
@@ -320,10 +262,12 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
320
262
|
...beforePlugins,
|
|
321
263
|
tailwindPlugin,
|
|
322
264
|
!args["--minify"] && _utils.formatNodes,
|
|
323
|
-
...afterPlugins
|
|
265
|
+
...afterPlugins,
|
|
266
|
+
!args["--no-autoprefixer"] && (0, _deps.loadAutoprefixer)(),
|
|
267
|
+
args["--minify"] && (0, _deps.loadCssNano)()
|
|
324
268
|
].filter(Boolean);
|
|
325
269
|
/** @type {import('postcss').Processor} */ // @ts-ignore
|
|
326
|
-
let processor = (
|
|
270
|
+
let processor = postcss(plugins);
|
|
327
271
|
async function readInput() {
|
|
328
272
|
// Piping in data, let's drain the stdin
|
|
329
273
|
if (input === "-") {
|
|
@@ -338,14 +282,10 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
338
282
|
}
|
|
339
283
|
async function build() {
|
|
340
284
|
let start = process.hrtime.bigint();
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
};
|
|
346
|
-
return readInput().then((css)=>processor.process(css, options)).then((result)=>lightningcss(result, {
|
|
347
|
-
...options,
|
|
348
|
-
minify: !!args["--minify"]
|
|
285
|
+
return readInput().then((css)=>processor.process(css, {
|
|
286
|
+
...postcssOptions,
|
|
287
|
+
from: input,
|
|
288
|
+
to: output
|
|
349
289
|
})).then((result)=>{
|
|
350
290
|
if (!state.watcher) {
|
|
351
291
|
return result;
|
|
@@ -364,11 +304,11 @@ async function createProcessor(args, cliConfigPath) {
|
|
|
364
304
|
return result;
|
|
365
305
|
}).then((result)=>{
|
|
366
306
|
if (!output) {
|
|
367
|
-
process.stdout.write(
|
|
307
|
+
process.stdout.write(result.css);
|
|
368
308
|
return;
|
|
369
309
|
}
|
|
370
310
|
return Promise.all([
|
|
371
|
-
(0, _utils.outputFile)(result.opts.to,
|
|
311
|
+
(0, _utils.outputFile)(result.opts.to, result.css),
|
|
372
312
|
result.map && (0, _utils.outputFile)(result.opts.to + ".map", result.map.toString())
|
|
373
313
|
]);
|
|
374
314
|
}).then(()=>{
|
|
@@ -20,7 +20,7 @@ function _interop_require_default(obj) {
|
|
|
20
20
|
default: obj
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
|
-
function createWatcher(args, { state, rebuild
|
|
23
|
+
function createWatcher(args, { state , rebuild }) {
|
|
24
24
|
let shouldPoll = args["--poll"];
|
|
25
25
|
let shouldCoalesceWriteEvents = shouldPoll || process.platform === "win32";
|
|
26
26
|
// Polling interval in milliseconds
|
|
@@ -126,7 +126,7 @@ function createWatcher(args, { state, rebuild }) {
|
|
|
126
126
|
// This is very likely a chokidar bug but it's one we need to work around
|
|
127
127
|
// We treat this as a change event and rebuild the CSS
|
|
128
128
|
watcher.on("raw", (evt, filePath, meta)=>{
|
|
129
|
-
if (evt !== "rename") {
|
|
129
|
+
if (evt !== "rename" || filePath === null) {
|
|
130
130
|
return;
|
|
131
131
|
}
|
|
132
132
|
let watchedPath = meta.watchedPath;
|
package/lib/cli/help/index.js
CHANGED
|
@@ -15,7 +15,7 @@ function _interop_require_default(obj) {
|
|
|
15
15
|
default: obj
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
-
function help({ message, usage, commands, options
|
|
18
|
+
function help({ message , usage , commands , options }) {
|
|
19
19
|
let indent = 2;
|
|
20
20
|
// Render header
|
|
21
21
|
console.log();
|
|
@@ -60,7 +60,7 @@ function help({ message, usage, commands, options }) {
|
|
|
60
60
|
}
|
|
61
61
|
console.log();
|
|
62
62
|
console.log("Options:");
|
|
63
|
-
for (let { flags, description, deprecated
|
|
63
|
+
for (let { flags , description , deprecated } of Object.values(groupedOptions)){
|
|
64
64
|
if (deprecated) continue;
|
|
65
65
|
if (flags.length === 1) {
|
|
66
66
|
console.log(" ".repeat(indent + 4 /* 4 = "-i, ".length */ ), flags.slice().reverse().join(", ").padEnd(20, " "), description);
|
package/lib/cli/index.js
CHANGED
|
@@ -91,7 +91,6 @@ let commands = {
|
|
|
91
91
|
description: "Path to a custom config file"
|
|
92
92
|
},
|
|
93
93
|
"--no-autoprefixer": {
|
|
94
|
-
deprecated: true,
|
|
95
94
|
type: Boolean,
|
|
96
95
|
description: "Disable autoprefixer"
|
|
97
96
|
},
|
|
@@ -144,15 +143,15 @@ if (commands[command] === undefined) {
|
|
|
144
143
|
}
|
|
145
144
|
}
|
|
146
145
|
// Execute command
|
|
147
|
-
let { args: flags, run
|
|
146
|
+
let { args: flags , run } = commands[command];
|
|
148
147
|
let args = (()=>{
|
|
149
148
|
try {
|
|
150
149
|
let result = (0, _arg.default)(Object.fromEntries(Object.entries({
|
|
151
150
|
...flags,
|
|
152
151
|
...sharedFlags
|
|
153
152
|
}).filter(([_key, value])=>{
|
|
154
|
-
var _value_type
|
|
155
|
-
return !(
|
|
153
|
+
var _value_type;
|
|
154
|
+
return !(value === null || value === void 0 ? void 0 : (_value_type = value.type) === null || _value_type === void 0 ? void 0 : _value_type.manualParsing);
|
|
156
155
|
}).map(([key, value])=>[
|
|
157
156
|
key,
|
|
158
157
|
typeof value === "object" ? value.type : value
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
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
|
+
lazyPostcss: function() {
|
|
13
|
+
return lazyPostcss;
|
|
14
|
+
},
|
|
15
|
+
lazyPostcssImport: function() {
|
|
16
|
+
return lazyPostcssImport;
|
|
17
|
+
},
|
|
18
|
+
lazyAutoprefixer: function() {
|
|
19
|
+
return lazyAutoprefixer;
|
|
20
|
+
},
|
|
21
|
+
lazyCssnano: function() {
|
|
22
|
+
return lazyCssnano;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
function lazyPostcss() {
|
|
26
|
+
return require("postcss");
|
|
27
|
+
}
|
|
28
|
+
function lazyPostcssImport() {
|
|
29
|
+
return require("postcss-import");
|
|
30
|
+
}
|
|
31
|
+
function lazyAutoprefixer() {
|
|
32
|
+
return require("autoprefixer");
|
|
33
|
+
}
|
|
34
|
+
function lazyCssnano() {
|
|
35
|
+
return require("cssnano");
|
|
36
|
+
}
|
package/lib/corePluginList.js
CHANGED
|
@@ -32,6 +32,7 @@ const _default = [
|
|
|
32
32
|
"lineClamp",
|
|
33
33
|
"display",
|
|
34
34
|
"aspectRatio",
|
|
35
|
+
"size",
|
|
35
36
|
"height",
|
|
36
37
|
"maxHeight",
|
|
37
38
|
"minHeight",
|
|
@@ -184,5 +185,7 @@ const _default = [
|
|
|
184
185
|
"transitionDuration",
|
|
185
186
|
"transitionTimingFunction",
|
|
186
187
|
"willChange",
|
|
187
|
-
"
|
|
188
|
+
"contain",
|
|
189
|
+
"content",
|
|
190
|
+
"forcedColorAdjust"
|
|
188
191
|
];
|