@plumeria/utils 18.3.4 → 18.3.6
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.d.ts +1 -1
- package/dist/index.js +2 -1
- package/dist/parser.d.ts +1 -0
- package/dist/parser.js +28 -23
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export type { CSSObject, StaticTable, KeyframesHashTable, ViewTransitionHashTable, CreateHashTable, CreateFunctionTable, VariantsHashTable, CreateThemeHashTable, CreateStaticHashTable, } from './types';
|
|
2
|
-
export { objectExpressionToObject, collectLocalConsts, traverse, t, getRootIdentifier, extractOndemandStyles, deepMerge, scanAll, getFileDependencies, resolveExport, resolveComponentKey, } from './parser';
|
|
2
|
+
export { objectExpressionToObject, collectLocalConsts, traverse, t, getRootIdentifier, extractOndemandStyles, deepMerge, scanAll, getFileDependencies, resolveExport, resolveComponentKey, resolveThemeSelector, } from './parser';
|
|
3
3
|
export type { StyleRecord } from './create';
|
|
4
4
|
export { getStyleRecords } from './create';
|
|
5
5
|
export type { Specificity } from 'zss-engine';
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DEFAULT_STYLE_PROP = exports.timedAsync = exports.timed = exports.tally = exports.measure = exports.mark = exports.profiling = exports.collectReferenceIdentifiers = exports.getLeadingCommentLength = exports.processVariants = exports.optimizer = exports.resolveImportPath = exports.themeHashOf = exports.getStateWeights = exports.getPseudoElement = exports.getSpecificity = exports.getStyleRecords = exports.resolveComponentKey = exports.resolveExport = exports.getFileDependencies = exports.scanAll = exports.deepMerge = exports.extractOndemandStyles = exports.getRootIdentifier = exports.t = exports.traverse = exports.collectLocalConsts = exports.objectExpressionToObject = void 0;
|
|
3
|
+
exports.DEFAULT_STYLE_PROP = exports.timedAsync = exports.timed = exports.tally = exports.measure = exports.mark = exports.profiling = exports.collectReferenceIdentifiers = exports.getLeadingCommentLength = exports.processVariants = exports.optimizer = exports.resolveImportPath = exports.themeHashOf = exports.getStateWeights = exports.getPseudoElement = exports.getSpecificity = exports.getStyleRecords = exports.resolveThemeSelector = exports.resolveComponentKey = exports.resolveExport = exports.getFileDependencies = exports.scanAll = exports.deepMerge = exports.extractOndemandStyles = 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,7 @@ Object.defineProperty(exports, "scanAll", { enumerable: true, get: function () {
|
|
|
13
13
|
Object.defineProperty(exports, "getFileDependencies", { enumerable: true, get: function () { return parser_1.getFileDependencies; } });
|
|
14
14
|
Object.defineProperty(exports, "resolveExport", { enumerable: true, get: function () { return parser_1.resolveExport; } });
|
|
15
15
|
Object.defineProperty(exports, "resolveComponentKey", { enumerable: true, get: function () { return parser_1.resolveComponentKey; } });
|
|
16
|
+
Object.defineProperty(exports, "resolveThemeSelector", { enumerable: true, get: function () { return parser_1.resolveThemeSelector; } });
|
|
16
17
|
var create_1 = require("./create");
|
|
17
18
|
Object.defineProperty(exports, "getStyleRecords", { enumerable: true, get: function () { return create_1.getStyleRecords; } });
|
|
18
19
|
var zss_engine_1 = require("zss-engine");
|
package/dist/parser.d.ts
CHANGED
|
@@ -36,6 +36,7 @@ export declare function traverse(node: Module | JSXExpression, visitor: {
|
|
|
36
36
|
}): void;
|
|
37
37
|
export declare function objectExpressionToObject(node: ObjectExpression, staticTable: StaticTable, keyframesHashTable: KeyframesHashTable, viewTransitionHashTable: ViewTransitionHashTable, createThemeHashTable: CreateThemeHashTable, createThemeObjectTable: CreateThemeObjectTable, createHashTable: CreateHashTable, createStaticHashTable: CreateStaticHashTable, createStaticObjectTable: CreateStaticObjectTable, variantsHashTable: VariantsHashTable, resolveVariable?: (name: string) => any): CSSObject;
|
|
38
38
|
export declare function collectLocalConsts(ast: Module): Record<string, any>;
|
|
39
|
+
export declare function resolveThemeSelector(node: Expression, staticTable: StaticTable, createStaticHashTable: CreateStaticHashTable, createStaticObjectTable: CreateStaticObjectTable): string;
|
|
39
40
|
export declare function scanAll(): Tables;
|
|
40
41
|
export declare function getFileDependencies(filePath: string): string[];
|
|
41
42
|
export declare function resolveExport(filePath: string, exportName: string, visited?: Set<string>): {
|
package/dist/parser.js
CHANGED
|
@@ -38,6 +38,7 @@ exports.resolveComponentKey = resolveComponentKey;
|
|
|
38
38
|
exports.traverse = traverse;
|
|
39
39
|
exports.objectExpressionToObject = objectExpressionToObject;
|
|
40
40
|
exports.collectLocalConsts = collectLocalConsts;
|
|
41
|
+
exports.resolveThemeSelector = resolveThemeSelector;
|
|
41
42
|
exports.scanAll = scanAll;
|
|
42
43
|
exports.getFileDependencies = getFileDependencies;
|
|
43
44
|
exports.resolveExport = resolveExport;
|
|
@@ -725,10 +726,10 @@ function evaluateExpression(node, staticTable, keyframesHashTable, viewTransitio
|
|
|
725
726
|
return staticTable[node.value];
|
|
726
727
|
}
|
|
727
728
|
if (keyframesHashTable[node.value] !== undefined) {
|
|
728
|
-
return keyframesHashTable[node.value];
|
|
729
|
+
return 'kf-' + keyframesHashTable[node.value];
|
|
729
730
|
}
|
|
730
731
|
if (viewTransitionHashTable[node.value] !== undefined) {
|
|
731
|
-
return viewTransitionHashTable[node.value];
|
|
732
|
+
return 'vt-' + viewTransitionHashTable[node.value];
|
|
732
733
|
}
|
|
733
734
|
if (createStaticHashTable[node.value] !== undefined) {
|
|
734
735
|
const hash = createStaticHashTable[node.value];
|
|
@@ -883,6 +884,15 @@ function resolveCreateStaticTableMemberExpression(node, createStaticHashTable, c
|
|
|
883
884
|
}
|
|
884
885
|
return undefined;
|
|
885
886
|
}
|
|
887
|
+
function resolveThemeSelector(node, staticTable, createStaticHashTable, createStaticObjectTable) {
|
|
888
|
+
try {
|
|
889
|
+
const value = evaluateExpression(node, staticTable, {}, {}, {}, {}, createStaticHashTable, createStaticObjectTable);
|
|
890
|
+
return typeof value === 'string' ? value : '';
|
|
891
|
+
}
|
|
892
|
+
catch {
|
|
893
|
+
return '';
|
|
894
|
+
}
|
|
895
|
+
}
|
|
886
896
|
const fileCache = {};
|
|
887
897
|
const dependentsMap = new Map();
|
|
888
898
|
let knownFiles = new Set();
|
|
@@ -1342,11 +1352,7 @@ function scanAll() {
|
|
|
1342
1352
|
registerObjectOwner('viewTransitionObjectTable', hash, filePath);
|
|
1343
1353
|
}
|
|
1344
1354
|
else if (method === 'createTheme') {
|
|
1345
|
-
|
|
1346
|
-
const selectorExpr = init.arguments[0].expression;
|
|
1347
|
-
if (exports.t.isStringLiteral(selectorExpr)) {
|
|
1348
|
-
selector = selectorExpr.value;
|
|
1349
|
-
}
|
|
1355
|
+
const selector = resolveThemeSelector(init.arguments[0].expression, scopedStaticTable, localCreateStaticHashTable, localCreateStaticObjectTable);
|
|
1350
1356
|
const hash = (0, createTheme_1.themeHashOf)(selector, obj);
|
|
1351
1357
|
localTables.createThemeObjectTable[hash] = obj;
|
|
1352
1358
|
localCreateThemeObjectTable[hash] = obj;
|
|
@@ -1830,6 +1836,7 @@ function resolveExport(filePath, exportName, visited = new Set()) {
|
|
|
1830
1836
|
}
|
|
1831
1837
|
return null;
|
|
1832
1838
|
}
|
|
1839
|
+
const REFERENCE_MARKER = /(kf|vt|cr)-([0-9a-z]+)/g;
|
|
1833
1840
|
function extractOndemandStyles(obj, extractedSheets, t) {
|
|
1834
1841
|
if (!obj || typeof obj !== 'object')
|
|
1835
1842
|
return;
|
|
@@ -1844,28 +1851,26 @@ function extractOndemandStyles(obj, extractedSheets, t) {
|
|
|
1844
1851
|
visited.add(n);
|
|
1845
1852
|
Object.values(n).forEach((val) => {
|
|
1846
1853
|
if (typeof val === 'string') {
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1854
|
+
for (const [, kind, hash] of val.matchAll(REFERENCE_MARKER)) {
|
|
1855
|
+
if (kind === 'kf') {
|
|
1856
|
+
if (!keyframesHashes.has(hash) && t.keyframesObjectTable[hash]) {
|
|
1857
|
+
keyframesHashes.add(hash);
|
|
1858
|
+
walk(t.keyframesObjectTable[hash]);
|
|
1859
|
+
}
|
|
1852
1860
|
}
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1861
|
+
else if (kind === 'vt') {
|
|
1862
|
+
if (!viewTransitionHashes.has(hash) &&
|
|
1863
|
+
t.viewTransitionObjectTable[hash]) {
|
|
1864
|
+
viewTransitionHashes.add(hash);
|
|
1865
|
+
walk(t.viewTransitionObjectTable[hash]);
|
|
1866
|
+
}
|
|
1859
1867
|
}
|
|
1860
|
-
|
|
1861
|
-
else if (val.startsWith('cr-')) {
|
|
1862
|
-
const hash = val.slice(3);
|
|
1863
|
-
if (!createHashes.has(hash)) {
|
|
1868
|
+
else if (!createHashes.has(hash) && t.createObjectTable[hash]) {
|
|
1864
1869
|
createHashes.add(hash);
|
|
1865
1870
|
walk(t.createObjectTable[hash]);
|
|
1866
1871
|
}
|
|
1867
1872
|
}
|
|
1868
|
-
|
|
1873
|
+
if (val.includes('var(--')) {
|
|
1869
1874
|
let startIdx = 0;
|
|
1870
1875
|
while ((startIdx = val.indexOf('var(--', startIdx)) !== -1) {
|
|
1871
1876
|
startIdx += 4;
|