@plumeria/compiler 12.0.4 → 12.0.5
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/dist/index.js +54 -37
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -37,6 +37,7 @@ exports.compileCSS = compileCSS;
|
|
|
37
37
|
const core_1 = require("@swc/core");
|
|
38
38
|
const zss_engine_1 = require("zss-engine");
|
|
39
39
|
const fs = __importStar(require("fs"));
|
|
40
|
+
const path = __importStar(require("path"));
|
|
40
41
|
const rs = __importStar(require("@rust-gear/glob"));
|
|
41
42
|
const utils_1 = require("@plumeria/utils");
|
|
42
43
|
const utils_2 = require("@plumeria/utils");
|
|
@@ -120,8 +121,14 @@ function compileCSS(options) {
|
|
|
120
121
|
const leadingBytes = Buffer.byteLength(source.slice(0, leadingLen), 'utf-8');
|
|
121
122
|
const baseByteOffset = ast.span.start - leadingBytes;
|
|
122
123
|
const localConsts = (0, utils_1.collectLocalConsts)(ast);
|
|
123
|
-
const resourcePath = filePath;
|
|
124
|
+
const resourcePath = path.resolve(cwd, filePath);
|
|
124
125
|
const importMap = {};
|
|
126
|
+
const keyframesImportMap = {};
|
|
127
|
+
const viewTransitionImportMap = {};
|
|
128
|
+
const createImportMap = {};
|
|
129
|
+
const variantsImportMap = {};
|
|
130
|
+
const createThemeImportMap = {};
|
|
131
|
+
const createStaticImportMap = {};
|
|
125
132
|
const plumeriaAliases = {};
|
|
126
133
|
(0, utils_1.traverse)(ast, {
|
|
127
134
|
ImportDeclaration({ node }) {
|
|
@@ -154,21 +161,22 @@ function compileCSS(options) {
|
|
|
154
161
|
if (scannedTables.staticTable[uniqueKey])
|
|
155
162
|
importMap[localName] = scannedTables.staticTable[uniqueKey];
|
|
156
163
|
if (scannedTables.keyframesHashTable[uniqueKey])
|
|
157
|
-
|
|
164
|
+
keyframesImportMap[localName] =
|
|
158
165
|
scannedTables.keyframesHashTable[uniqueKey];
|
|
159
166
|
if (scannedTables.viewTransitionHashTable[uniqueKey])
|
|
160
|
-
|
|
167
|
+
viewTransitionImportMap[localName] =
|
|
161
168
|
scannedTables.viewTransitionHashTable[uniqueKey];
|
|
162
169
|
if (scannedTables.createHashTable[uniqueKey])
|
|
163
|
-
|
|
170
|
+
createImportMap[localName] =
|
|
171
|
+
scannedTables.createHashTable[uniqueKey];
|
|
164
172
|
if (scannedTables.variantsHashTable[uniqueKey])
|
|
165
|
-
|
|
173
|
+
variantsImportMap[localName] =
|
|
166
174
|
scannedTables.variantsHashTable[uniqueKey];
|
|
167
175
|
if (scannedTables.createThemeHashTable[uniqueKey])
|
|
168
|
-
|
|
176
|
+
createThemeImportMap[localName] =
|
|
169
177
|
scannedTables.createThemeHashTable[uniqueKey];
|
|
170
178
|
if (scannedTables.createStaticHashTable[uniqueKey])
|
|
171
|
-
|
|
179
|
+
createStaticImportMap[localName] =
|
|
172
180
|
scannedTables.createStaticHashTable[uniqueKey];
|
|
173
181
|
}
|
|
174
182
|
});
|
|
@@ -188,65 +196,74 @@ function compileCSS(options) {
|
|
|
188
196
|
const mergedKeyframesTable = {};
|
|
189
197
|
for (const key of Object.keys(scannedTables.keyframesHashTable)) {
|
|
190
198
|
mergedKeyframesTable[key] = scannedTables.keyframesHashTable[key];
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
if (typeof val === 'string') {
|
|
195
|
-
mergedKeyframesTable[key] = val;
|
|
199
|
+
if (key.startsWith(`${resourcePath}-`)) {
|
|
200
|
+
const varName = key.slice(resourcePath.length + 1);
|
|
201
|
+
mergedKeyframesTable[varName] = scannedTables.keyframesHashTable[key];
|
|
196
202
|
}
|
|
197
203
|
}
|
|
204
|
+
for (const key of Object.keys(keyframesImportMap)) {
|
|
205
|
+
mergedKeyframesTable[key] = keyframesImportMap[key];
|
|
206
|
+
}
|
|
198
207
|
const mergedViewTransitionTable = {};
|
|
199
208
|
for (const key of Object.keys(scannedTables.viewTransitionHashTable)) {
|
|
200
209
|
mergedViewTransitionTable[key] =
|
|
201
210
|
scannedTables.viewTransitionHashTable[key];
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
mergedViewTransitionTable[key] = val;
|
|
211
|
+
if (key.startsWith(`${resourcePath}-`)) {
|
|
212
|
+
const varName = key.slice(resourcePath.length + 1);
|
|
213
|
+
mergedViewTransitionTable[varName] =
|
|
214
|
+
scannedTables.viewTransitionHashTable[key];
|
|
207
215
|
}
|
|
208
216
|
}
|
|
217
|
+
for (const key of Object.keys(viewTransitionImportMap)) {
|
|
218
|
+
mergedViewTransitionTable[key] = viewTransitionImportMap[key];
|
|
219
|
+
}
|
|
209
220
|
const mergedCreateThemeHashTable = {};
|
|
210
221
|
for (const key of Object.keys(scannedTables.createThemeHashTable)) {
|
|
211
222
|
mergedCreateThemeHashTable[key] = scannedTables.createThemeHashTable[key];
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
mergedCreateThemeHashTable[key] = val;
|
|
223
|
+
if (key.startsWith(`${resourcePath}-`)) {
|
|
224
|
+
const varName = key.slice(resourcePath.length + 1);
|
|
225
|
+
mergedCreateThemeHashTable[varName] =
|
|
226
|
+
scannedTables.createThemeHashTable[key];
|
|
217
227
|
}
|
|
218
228
|
}
|
|
229
|
+
for (const key of Object.keys(createThemeImportMap)) {
|
|
230
|
+
mergedCreateThemeHashTable[key] = createThemeImportMap[key];
|
|
231
|
+
}
|
|
219
232
|
const mergedCreateStaticHashTable = {};
|
|
220
233
|
for (const key of Object.keys(scannedTables.createStaticHashTable)) {
|
|
221
234
|
mergedCreateStaticHashTable[key] =
|
|
222
235
|
scannedTables.createStaticHashTable[key];
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
mergedCreateStaticHashTable[key] = val;
|
|
236
|
+
if (key.startsWith(`${resourcePath}-`)) {
|
|
237
|
+
const varName = key.slice(resourcePath.length + 1);
|
|
238
|
+
mergedCreateStaticHashTable[varName] =
|
|
239
|
+
scannedTables.createStaticHashTable[key];
|
|
228
240
|
}
|
|
229
241
|
}
|
|
242
|
+
for (const key of Object.keys(createStaticImportMap)) {
|
|
243
|
+
mergedCreateStaticHashTable[key] = createStaticImportMap[key];
|
|
244
|
+
}
|
|
230
245
|
const mergedCreateTable = {};
|
|
231
246
|
for (const key of Object.keys(scannedTables.createHashTable)) {
|
|
232
247
|
mergedCreateTable[key] = scannedTables.createHashTable[key];
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
if (typeof val === 'string') {
|
|
237
|
-
mergedCreateTable[key] = val;
|
|
248
|
+
if (key.startsWith(`${resourcePath}-`)) {
|
|
249
|
+
const varName = key.slice(resourcePath.length + 1);
|
|
250
|
+
mergedCreateTable[varName] = scannedTables.createHashTable[key];
|
|
238
251
|
}
|
|
239
252
|
}
|
|
253
|
+
for (const key of Object.keys(createImportMap)) {
|
|
254
|
+
mergedCreateTable[key] = createImportMap[key];
|
|
255
|
+
}
|
|
240
256
|
const mergedVariantsTable = {};
|
|
241
257
|
for (const key of Object.keys(scannedTables.variantsHashTable)) {
|
|
242
258
|
mergedVariantsTable[key] = scannedTables.variantsHashTable[key];
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
if (typeof val === 'string') {
|
|
247
|
-
mergedVariantsTable[key] = val;
|
|
259
|
+
if (key.startsWith(`${resourcePath}-`)) {
|
|
260
|
+
const varName = key.slice(resourcePath.length + 1);
|
|
261
|
+
mergedVariantsTable[varName] = scannedTables.variantsHashTable[key];
|
|
248
262
|
}
|
|
249
263
|
}
|
|
264
|
+
for (const key of Object.keys(variantsImportMap)) {
|
|
265
|
+
mergedVariantsTable[key] = variantsImportMap[key];
|
|
266
|
+
}
|
|
250
267
|
const ctx = {
|
|
251
268
|
mergedStaticTable,
|
|
252
269
|
mergedKeyframesTable,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plumeria/compiler",
|
|
3
|
-
"version": "12.0.
|
|
3
|
+
"version": "12.0.5",
|
|
4
4
|
"description": "Plumeria swc based compiler for statically extracting css",
|
|
5
5
|
"author": "Refirst 11",
|
|
6
6
|
"license": "MIT",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"dist/"
|
|
22
22
|
],
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@plumeria/utils": "^12.0.
|
|
24
|
+
"@plumeria/utils": "^12.0.5"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@rust-gear/glob": "1.0.0",
|