@plumeria/utils 19.2.11 → 19.2.13
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/dynamicKey.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -1
- package/dist/parser.d.ts +2 -0
- package/dist/parser.js +54 -6
- package/dist/transform.js +91 -105
- package/package.json +1 -1
package/dist/dynamicKey.js
CHANGED
|
@@ -232,7 +232,7 @@ exports.applyVarFallback = applyVarFallback;
|
|
|
232
232
|
const resolveDynamicStyle = (func, runtimeParams, staticTable, tables, providedParams) => {
|
|
233
233
|
if (func.unsupportedParams)
|
|
234
234
|
throw new Error('[plumeria] Dynamic styles require named parameters or object destructuring; array and rest parameters are not supported.');
|
|
235
|
-
const tempStaticTable =
|
|
235
|
+
const tempStaticTable = Object.create(staticTable);
|
|
236
236
|
const resolveBody = () => (0, parser_1.objectExpressionToObject)(func.body, tempStaticTable, tables.keyframesHashTable, tables.viewTransitionHashTable, tables.createThemeHashTable, tables.createThemeObjectTable, tables.createHashTable, tables.createStaticHashTable, tables.createStaticObjectTable);
|
|
237
237
|
const withDefault = Object.entries(func.defaults ?? {}).filter(([param]) => providedParams
|
|
238
238
|
? !providedParams.has(param)
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export type { CSSObject, StaticTable, KeyframesHashTable, ViewTransitionHashTable, CreateHashTable, CreateFunctionTable, CreateThemeHashTable, CreateStaticHashTable, } from './types';
|
|
2
|
-
export { objectExpressionToObject, collectLocalConsts, traverse, t, getRootIdentifier, resolveOriginError, unwrapExpression, extractOndemandStyles, appendSheet, deepMerge, scanAll, resolveFileError, getFileDependencies, resolveExport, resolveComponentKey, resolveThemeSelector, } from './parser';
|
|
2
|
+
export { objectExpressionToObject, collectLocalConsts, traverse, t, getRootIdentifier, resolveOriginError, unwrapExpression, extractOndemandStyles, appendSheet, deepMerge, scanAll, scanOverlay, fileTableKeys, resolveFileError, getFileDependencies, resolveExport, resolveComponentKey, resolveThemeSelector, } from './parser';
|
|
3
3
|
export type { StyleRecord } from './create';
|
|
4
4
|
export { getStyleRecords } from './create';
|
|
5
5
|
export type { NamedParam, StyleFunction, StyleFunctions, DynamicStyleTables, DynamicStyleResult, } from './dynamicKey';
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformSource = exports.assertPropertyPolicy = exports.resolvePropertyPolicy = exports.DEFAULT_STYLE_PROP = exports.timedAsync = exports.timed = exports.tally = exports.measure = exports.mark = exports.profiling = exports.collectReferenceIdentifiers = exports.getLeadingCommentLength = exports.optimizer = exports.resolveImportPath = exports.themeHashOf = exports.getStateWeights = exports.getPseudoElement = exports.getSpecificity = exports.resolveDynamicStyle = exports.applyVarFallback = exports.splitVarByUnit = exports.isUnitlessProp = exports.styleFunctionsOf = exports.getStyleRecords = exports.resolveThemeSelector = exports.resolveComponentKey = exports.resolveExport = exports.getFileDependencies = exports.resolveFileError = exports.scanAll = exports.deepMerge = exports.appendSheet = exports.extractOndemandStyles = exports.unwrapExpression = exports.resolveOriginError = exports.getRootIdentifier = exports.t = exports.traverse = exports.collectLocalConsts = exports.objectExpressionToObject = void 0;
|
|
3
|
+
exports.transformSource = exports.assertPropertyPolicy = exports.resolvePropertyPolicy = exports.DEFAULT_STYLE_PROP = exports.timedAsync = exports.timed = exports.tally = exports.measure = exports.mark = exports.profiling = exports.collectReferenceIdentifiers = exports.getLeadingCommentLength = exports.optimizer = exports.resolveImportPath = exports.themeHashOf = exports.getStateWeights = exports.getPseudoElement = exports.getSpecificity = exports.resolveDynamicStyle = exports.applyVarFallback = exports.splitVarByUnit = exports.isUnitlessProp = exports.styleFunctionsOf = exports.getStyleRecords = exports.resolveThemeSelector = exports.resolveComponentKey = exports.resolveExport = exports.getFileDependencies = exports.resolveFileError = exports.fileTableKeys = exports.scanOverlay = exports.scanAll = exports.deepMerge = exports.appendSheet = exports.extractOndemandStyles = exports.unwrapExpression = exports.resolveOriginError = exports.getRootIdentifier = exports.t = exports.traverse = exports.collectLocalConsts = exports.objectExpressionToObject = void 0;
|
|
4
4
|
var parser_1 = require("./parser");
|
|
5
5
|
Object.defineProperty(exports, "objectExpressionToObject", { enumerable: true, get: function () { return parser_1.objectExpressionToObject; } });
|
|
6
6
|
Object.defineProperty(exports, "collectLocalConsts", { enumerable: true, get: function () { return parser_1.collectLocalConsts; } });
|
|
@@ -13,6 +13,8 @@ Object.defineProperty(exports, "extractOndemandStyles", { enumerable: true, get:
|
|
|
13
13
|
Object.defineProperty(exports, "appendSheet", { enumerable: true, get: function () { return parser_1.appendSheet; } });
|
|
14
14
|
Object.defineProperty(exports, "deepMerge", { enumerable: true, get: function () { return parser_1.deepMerge; } });
|
|
15
15
|
Object.defineProperty(exports, "scanAll", { enumerable: true, get: function () { return parser_1.scanAll; } });
|
|
16
|
+
Object.defineProperty(exports, "scanOverlay", { enumerable: true, get: function () { return parser_1.scanOverlay; } });
|
|
17
|
+
Object.defineProperty(exports, "fileTableKeys", { enumerable: true, get: function () { return parser_1.fileTableKeys; } });
|
|
16
18
|
Object.defineProperty(exports, "resolveFileError", { enumerable: true, get: function () { return parser_1.resolveFileError; } });
|
|
17
19
|
Object.defineProperty(exports, "getFileDependencies", { enumerable: true, get: function () { return parser_1.getFileDependencies; } });
|
|
18
20
|
Object.defineProperty(exports, "resolveExport", { enumerable: true, get: function () { return parser_1.resolveExport; } });
|
package/dist/parser.d.ts
CHANGED
|
@@ -49,6 +49,8 @@ export declare function resolveFileError(actualPath: string, importedName: strin
|
|
|
49
49
|
filePath: string;
|
|
50
50
|
message: string;
|
|
51
51
|
} | undefined;
|
|
52
|
+
export declare function fileTableKeys(filePath: string, tableName: string): ReadonlySet<string> | undefined;
|
|
53
|
+
export declare function scanOverlay(scanCwd?: string): Tables;
|
|
52
54
|
export declare function scanAll(scanCwd?: string): Tables;
|
|
53
55
|
export declare function getFileDependencies(filePath: string): string[];
|
|
54
56
|
export declare function resolveExport(filePath: string, exportName: string, visited?: Set<string>): {
|
package/dist/parser.js
CHANGED
|
@@ -42,6 +42,8 @@ exports.objectExpressionToObject = objectExpressionToObject;
|
|
|
42
42
|
exports.collectLocalConsts = collectLocalConsts;
|
|
43
43
|
exports.resolveThemeSelector = resolveThemeSelector;
|
|
44
44
|
exports.resolveFileError = resolveFileError;
|
|
45
|
+
exports.fileTableKeys = fileTableKeys;
|
|
46
|
+
exports.scanOverlay = scanOverlay;
|
|
45
47
|
exports.scanAll = scanAll;
|
|
46
48
|
exports.getFileDependencies = getFileDependencies;
|
|
47
49
|
exports.resolveExport = resolveExport;
|
|
@@ -271,10 +273,9 @@ function objectExpressionToObject(node, staticTable, keyframesHashTable, viewTra
|
|
|
271
273
|
const root = (0, exports.getRootIdentifier)(val);
|
|
272
274
|
const resolved = root ? resolveVariable(root) : undefined;
|
|
273
275
|
if (resolved !== undefined && root) {
|
|
274
|
-
const member = resolveStaticTableMemberExpression(val, {
|
|
275
|
-
...staticTable,
|
|
276
|
+
const member = resolveStaticTableMemberExpression(val, Object.assign(Object.create(staticTable), {
|
|
276
277
|
[root]: resolved,
|
|
277
|
-
});
|
|
278
|
+
}));
|
|
278
279
|
if (member === undefined)
|
|
279
280
|
throw new Error(`[plumeria] Unknown style member on ${root}.`);
|
|
280
281
|
obj[key] = member;
|
|
@@ -1040,12 +1041,46 @@ let scannedCwd;
|
|
|
1040
1041
|
const objectTableOwners = new Map();
|
|
1041
1042
|
const fileObjectContributions = new Map();
|
|
1042
1043
|
const fileKeyContributions = new Map();
|
|
1043
|
-
|
|
1044
|
-
|
|
1044
|
+
const detachedTables = new Set([
|
|
1045
|
+
'staticTable',
|
|
1046
|
+
'keyframesHashTable',
|
|
1047
|
+
'viewTransitionHashTable',
|
|
1048
|
+
'createHashTable',
|
|
1049
|
+
'createObjectTable',
|
|
1050
|
+
'createFunctionTable',
|
|
1051
|
+
'createThemeHashTable',
|
|
1052
|
+
'componentPropsTable',
|
|
1053
|
+
]);
|
|
1054
|
+
const detachedOverlayTables = new Set([
|
|
1055
|
+
'createThemeHashTable',
|
|
1056
|
+
'componentPropsTable',
|
|
1057
|
+
]);
|
|
1058
|
+
let overlayScan = false;
|
|
1059
|
+
let tablesGeneration = 0;
|
|
1060
|
+
let overlayBaseGeneration = -1;
|
|
1061
|
+
let overlayBase;
|
|
1062
|
+
function layerTables(source, detached) {
|
|
1063
|
+
return Object.fromEntries(Object.entries(source).map(([key, value]) => [
|
|
1045
1064
|
key,
|
|
1046
|
-
key === 'styleReceiverTable'
|
|
1065
|
+
key === 'styleReceiverTable'
|
|
1066
|
+
? value
|
|
1067
|
+
: detached.has(key)
|
|
1068
|
+
? { ...value }
|
|
1069
|
+
: Object.create(value),
|
|
1047
1070
|
]));
|
|
1048
1071
|
}
|
|
1072
|
+
function snapshotTables() {
|
|
1073
|
+
if (!overlayScan)
|
|
1074
|
+
return layerTables(globalAgregatedTables, detachedTables);
|
|
1075
|
+
if (overlayBaseGeneration !== tablesGeneration) {
|
|
1076
|
+
overlayBase = Object.fromEntries(Object.entries(globalAgregatedTables).map(([key, value]) => [
|
|
1077
|
+
key,
|
|
1078
|
+
key === 'styleReceiverTable' ? value : { ...value },
|
|
1079
|
+
]));
|
|
1080
|
+
overlayBaseGeneration = tablesGeneration;
|
|
1081
|
+
}
|
|
1082
|
+
return layerTables(overlayBase, detachedOverlayTables);
|
|
1083
|
+
}
|
|
1049
1084
|
function releaseFileObjects(filePath) {
|
|
1050
1085
|
const contributions = fileObjectContributions.get(filePath);
|
|
1051
1086
|
if (!contributions)
|
|
@@ -1056,6 +1091,9 @@ function releaseFileObjects(filePath) {
|
|
|
1056
1091
|
}
|
|
1057
1092
|
fileObjectContributions.delete(filePath);
|
|
1058
1093
|
}
|
|
1094
|
+
function fileTableKeys(filePath, tableName) {
|
|
1095
|
+
return fileKeyContributions.get(filePath)?.get(tableName);
|
|
1096
|
+
}
|
|
1059
1097
|
function registerFileKey(tableName, key, filePath) {
|
|
1060
1098
|
let contributions = fileKeyContributions.get(filePath);
|
|
1061
1099
|
if (!contributions)
|
|
@@ -1161,6 +1199,15 @@ function statFile(filePath) {
|
|
|
1161
1199
|
throw e;
|
|
1162
1200
|
}
|
|
1163
1201
|
}
|
|
1202
|
+
function scanOverlay(scanCwd = process.cwd()) {
|
|
1203
|
+
overlayScan = true;
|
|
1204
|
+
try {
|
|
1205
|
+
return scanAll(scanCwd);
|
|
1206
|
+
}
|
|
1207
|
+
finally {
|
|
1208
|
+
overlayScan = false;
|
|
1209
|
+
}
|
|
1210
|
+
}
|
|
1164
1211
|
function scanAll(scanCwd = process.cwd()) {
|
|
1165
1212
|
scanning = true;
|
|
1166
1213
|
statMemo.clear();
|
|
@@ -1287,6 +1334,7 @@ function runScan(scanCwd = process.cwd()) {
|
|
|
1287
1334
|
if (invalidated.size === 0 && hasComputedOnce) {
|
|
1288
1335
|
return snapshotTables();
|
|
1289
1336
|
}
|
|
1337
|
+
tablesGeneration++;
|
|
1290
1338
|
for (const fp of deletedFiles) {
|
|
1291
1339
|
const cached = fileCache[fp];
|
|
1292
1340
|
if (cached)
|
package/dist/transform.js
CHANGED
|
@@ -201,7 +201,7 @@ const transformSource = async (env) => {
|
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
};
|
|
204
|
-
const scannedTables = (0, parser_1.
|
|
204
|
+
const scannedTables = (0, parser_1.scanOverlay)();
|
|
205
205
|
const ownFailure = (0, parser_1.resolveFileError)(baseId, '');
|
|
206
206
|
if (ownFailure)
|
|
207
207
|
throwCompilationError(`Plumeria: ${ownFailure.message}`);
|
|
@@ -317,85 +317,83 @@ const transformSource = async (env) => {
|
|
|
317
317
|
const createStaticImportMap = {};
|
|
318
318
|
const plumeriaAliases = {};
|
|
319
319
|
const localImports = {};
|
|
320
|
-
(
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
320
|
+
for (const statement of ast.body) {
|
|
321
|
+
if (statement.type !== 'ImportDeclaration')
|
|
322
|
+
continue;
|
|
323
|
+
const node = statement;
|
|
324
|
+
const sourcePath = node.source.value;
|
|
325
|
+
if (sourcePath === '@plumeria/core') {
|
|
326
|
+
node.specifiers.forEach((specifier) => {
|
|
327
|
+
if (specifier.type === 'ImportNamespaceSpecifier') {
|
|
328
|
+
plumeriaAliases[specifier.local.value] = 'NAMESPACE';
|
|
329
|
+
}
|
|
330
|
+
else if (specifier.type === 'ImportDefaultSpecifier') {
|
|
331
|
+
plumeriaAliases[specifier.local.value] = 'NAMESPACE';
|
|
332
|
+
}
|
|
333
|
+
else if (specifier.type === 'ImportSpecifier') {
|
|
334
|
+
const importedName = specifier.imported
|
|
335
|
+
? specifier.imported.value
|
|
336
|
+
: specifier.local.value;
|
|
337
|
+
plumeriaAliases[specifier.local.value] = importedName;
|
|
338
|
+
}
|
|
339
|
+
});
|
|
340
|
+
}
|
|
341
|
+
const actualPath = (0, resolver_1.resolveImportPath)(sourcePath, resourcePath);
|
|
342
|
+
if (actualPath) {
|
|
343
|
+
node.specifiers.forEach((specifier) => {
|
|
344
|
+
if (specifier.type === 'ImportNamespaceSpecifier') {
|
|
345
|
+
localImports[specifier.local.value] = {
|
|
346
|
+
actualPath,
|
|
347
|
+
importedName: '*',
|
|
348
|
+
};
|
|
349
|
+
return;
|
|
350
|
+
}
|
|
351
|
+
if (specifier.type === 'ImportSpecifier' ||
|
|
352
|
+
specifier.type === 'ImportDefaultSpecifier') {
|
|
353
|
+
const importedName = specifier.type === 'ImportDefaultSpecifier'
|
|
354
|
+
? 'default'
|
|
355
|
+
: specifier.imported
|
|
333
356
|
? specifier.imported.value
|
|
334
357
|
: specifier.local.value;
|
|
335
|
-
|
|
358
|
+
const localName = specifier.local.value;
|
|
359
|
+
let resolvedKey = `${actualPath}-${importedName}`;
|
|
360
|
+
const resolved = (0, parser_1.resolveExport)(actualPath, importedName);
|
|
361
|
+
if (resolved) {
|
|
362
|
+
resolvedKey = `${resolved.filePath}-${resolved.localName}`;
|
|
336
363
|
}
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
node.specifiers.forEach((specifier) => {
|
|
342
|
-
if (specifier.type === 'ImportNamespaceSpecifier') {
|
|
343
|
-
localImports[specifier.local.value] = {
|
|
344
|
-
actualPath,
|
|
345
|
-
importedName: '*',
|
|
346
|
-
};
|
|
347
|
-
return;
|
|
364
|
+
const uniqueKey = resolvedKey;
|
|
365
|
+
localImports[localName] = { actualPath, importedName };
|
|
366
|
+
if (scannedTables.staticTable[uniqueKey]) {
|
|
367
|
+
importMap[localName] = scannedTables.staticTable[uniqueKey];
|
|
348
368
|
}
|
|
349
|
-
if (
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
? 'default'
|
|
353
|
-
: specifier.imported
|
|
354
|
-
? specifier.imported.value
|
|
355
|
-
: specifier.local.value;
|
|
356
|
-
const localName = specifier.local.value;
|
|
357
|
-
let resolvedKey = `${actualPath}-${importedName}`;
|
|
358
|
-
const resolved = (0, parser_1.resolveExport)(actualPath, importedName);
|
|
359
|
-
if (resolved) {
|
|
360
|
-
resolvedKey = `${resolved.filePath}-${resolved.localName}`;
|
|
361
|
-
}
|
|
362
|
-
const uniqueKey = resolvedKey;
|
|
363
|
-
localImports[localName] = { actualPath, importedName };
|
|
364
|
-
if (scannedTables.staticTable[uniqueKey]) {
|
|
365
|
-
importMap[localName] = scannedTables.staticTable[uniqueKey];
|
|
366
|
-
}
|
|
367
|
-
if (scannedTables.keyframesHashTable[uniqueKey]) {
|
|
368
|
-
keyframesImportMap[localName] =
|
|
369
|
-
scannedTables.keyframesHashTable[uniqueKey];
|
|
370
|
-
}
|
|
371
|
-
if (scannedTables.viewTransitionHashTable[uniqueKey]) {
|
|
372
|
-
viewTransitionImportMap[localName] =
|
|
373
|
-
scannedTables.viewTransitionHashTable[uniqueKey];
|
|
374
|
-
}
|
|
375
|
-
if (scannedTables.createHashTable[uniqueKey]) {
|
|
376
|
-
createImportMap[localName] =
|
|
377
|
-
scannedTables.createHashTable[uniqueKey];
|
|
378
|
-
}
|
|
379
|
-
if (scannedTables.createFunctionTable[uniqueKey]) {
|
|
380
|
-
createFunctionImportMap[localName] = (0, dynamicKey_1.styleFunctionsOf)(scannedTables.createFunctionTable[uniqueKey]);
|
|
381
|
-
}
|
|
382
|
-
if (scannedTables.createThemeHashTable[uniqueKey]) {
|
|
383
|
-
createThemeImportMap[localName] =
|
|
384
|
-
scannedTables.createThemeHashTable[uniqueKey];
|
|
385
|
-
}
|
|
386
|
-
if (scannedTables.createStaticHashTable[uniqueKey]) {
|
|
387
|
-
createStaticImportMap[localName] =
|
|
388
|
-
scannedTables.createStaticHashTable[uniqueKey];
|
|
389
|
-
}
|
|
369
|
+
if (scannedTables.keyframesHashTable[uniqueKey]) {
|
|
370
|
+
keyframesImportMap[localName] =
|
|
371
|
+
scannedTables.keyframesHashTable[uniqueKey];
|
|
390
372
|
}
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
373
|
+
if (scannedTables.viewTransitionHashTable[uniqueKey]) {
|
|
374
|
+
viewTransitionImportMap[localName] =
|
|
375
|
+
scannedTables.viewTransitionHashTable[uniqueKey];
|
|
376
|
+
}
|
|
377
|
+
if (scannedTables.createHashTable[uniqueKey]) {
|
|
378
|
+
createImportMap[localName] =
|
|
379
|
+
scannedTables.createHashTable[uniqueKey];
|
|
380
|
+
}
|
|
381
|
+
if (scannedTables.createFunctionTable[uniqueKey]) {
|
|
382
|
+
createFunctionImportMap[localName] = (0, dynamicKey_1.styleFunctionsOf)(scannedTables.createFunctionTable[uniqueKey]);
|
|
383
|
+
}
|
|
384
|
+
if (scannedTables.createThemeHashTable[uniqueKey]) {
|
|
385
|
+
createThemeImportMap[localName] =
|
|
386
|
+
scannedTables.createThemeHashTable[uniqueKey];
|
|
387
|
+
}
|
|
388
|
+
if (scannedTables.createStaticHashTable[uniqueKey]) {
|
|
389
|
+
createStaticImportMap[localName] =
|
|
390
|
+
scannedTables.createStaticHashTable[uniqueKey];
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
});
|
|
394
|
+
}
|
|
398
395
|
}
|
|
396
|
+
const mergedStaticTable = Object.create(scannedTables.staticTable);
|
|
399
397
|
for (const key of Object.keys(localConsts)) {
|
|
400
398
|
mergedStaticTable[key] = localConsts[key];
|
|
401
399
|
}
|
|
@@ -403,54 +401,43 @@ const transformSource = async (env) => {
|
|
|
403
401
|
mergedStaticTable[key] = importMap[key];
|
|
404
402
|
}
|
|
405
403
|
const mergedKeyframesTable = Object.create(scannedTables.keyframesHashTable);
|
|
406
|
-
for (const key of
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
mergedKeyframesTable[varName] = scannedTables.keyframesHashTable[key];
|
|
410
|
-
}
|
|
404
|
+
for (const key of (0, parser_1.fileTableKeys)(resourcePath, 'keyframesHashTable') ?? []) {
|
|
405
|
+
mergedKeyframesTable[key.slice(resourcePath.length + 1)] =
|
|
406
|
+
scannedTables.keyframesHashTable[key];
|
|
411
407
|
}
|
|
412
408
|
for (const key of Object.keys(keyframesImportMap)) {
|
|
413
409
|
mergedKeyframesTable[key] = keyframesImportMap[key];
|
|
414
410
|
}
|
|
415
411
|
const mergedViewTransitionTable = Object.create(scannedTables.viewTransitionHashTable);
|
|
416
|
-
for (const key of
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
scannedTables.viewTransitionHashTable[key];
|
|
421
|
-
}
|
|
412
|
+
for (const key of (0, parser_1.fileTableKeys)(resourcePath, 'viewTransitionHashTable') ??
|
|
413
|
+
[]) {
|
|
414
|
+
mergedViewTransitionTable[key.slice(resourcePath.length + 1)] =
|
|
415
|
+
scannedTables.viewTransitionHashTable[key];
|
|
422
416
|
}
|
|
423
417
|
for (const key of Object.keys(viewTransitionImportMap)) {
|
|
424
418
|
mergedViewTransitionTable[key] = viewTransitionImportMap[key];
|
|
425
419
|
}
|
|
426
420
|
const mergedCreateTable = Object.create(scannedTables.createHashTable);
|
|
427
|
-
for (const key of
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
mergedCreateTable[varName] = scannedTables.createHashTable[key];
|
|
431
|
-
}
|
|
421
|
+
for (const key of (0, parser_1.fileTableKeys)(resourcePath, 'createHashTable') ?? []) {
|
|
422
|
+
mergedCreateTable[key.slice(resourcePath.length + 1)] =
|
|
423
|
+
scannedTables.createHashTable[key];
|
|
432
424
|
}
|
|
433
425
|
for (const key of Object.keys(createImportMap)) {
|
|
434
426
|
mergedCreateTable[key] = createImportMap[key];
|
|
435
427
|
}
|
|
436
428
|
const mergedCreateThemeHashTable = Object.create(scannedTables.createThemeHashTable);
|
|
437
|
-
for (const key of
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
mergedCreateThemeHashTable[varName] =
|
|
441
|
-
scannedTables.createThemeHashTable[key];
|
|
442
|
-
}
|
|
429
|
+
for (const key of (0, parser_1.fileTableKeys)(resourcePath, 'createThemeHashTable') ?? []) {
|
|
430
|
+
mergedCreateThemeHashTable[key.slice(resourcePath.length + 1)] =
|
|
431
|
+
scannedTables.createThemeHashTable[key];
|
|
443
432
|
}
|
|
444
433
|
for (const key of Object.keys(createThemeImportMap)) {
|
|
445
434
|
mergedCreateThemeHashTable[key] = createThemeImportMap[key];
|
|
446
435
|
}
|
|
447
436
|
const mergedCreateStaticHashTable = Object.create(scannedTables.createStaticHashTable);
|
|
448
|
-
for (const key of
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
scannedTables.createStaticHashTable[key];
|
|
453
|
-
}
|
|
437
|
+
for (const key of (0, parser_1.fileTableKeys)(resourcePath, 'createStaticHashTable') ??
|
|
438
|
+
[]) {
|
|
439
|
+
mergedCreateStaticHashTable[key.slice(resourcePath.length + 1)] =
|
|
440
|
+
scannedTables.createStaticHashTable[key];
|
|
454
441
|
}
|
|
455
442
|
for (const key of Object.keys(createStaticImportMap)) {
|
|
456
443
|
mergedCreateStaticHashTable[key] = createStaticImportMap[key];
|
|
@@ -2335,17 +2322,16 @@ const transformSource = async (env) => {
|
|
|
2335
2322
|
for (const replacement of replacements)
|
|
2336
2323
|
replacement.content = replacement.content.replaceAll(deferred.token, content);
|
|
2337
2324
|
}
|
|
2338
|
-
const buffer = Buffer.from(source);
|
|
2339
2325
|
let offset = 0;
|
|
2340
2326
|
const parts = [];
|
|
2341
2327
|
replacements.forEach((r) => {
|
|
2342
2328
|
if (r.start < offset)
|
|
2343
2329
|
return;
|
|
2344
|
-
parts.push(
|
|
2330
|
+
parts.push(sourceBuffer.subarray(offset, r.start));
|
|
2345
2331
|
parts.push(Buffer.from(r.content));
|
|
2346
2332
|
offset = r.end;
|
|
2347
2333
|
});
|
|
2348
|
-
parts.push(
|
|
2334
|
+
parts.push(sourceBuffer.subarray(offset));
|
|
2349
2335
|
const transformedSource = Buffer.concat(parts).toString();
|
|
2350
2336
|
return { code: transformedSource, sheets: [...extractedSheets] };
|
|
2351
2337
|
};
|