@plumeria/utils 21.2.2 → 21.2.3
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/parser.js +29 -39
- package/package.json +1 -1
package/dist/parser.js
CHANGED
|
@@ -365,12 +365,12 @@ function objectExpressionToObject(node, staticTable, keyframesHashTable, viewTra
|
|
|
365
365
|
obj[key] = 'cr-' + resolvedCreate;
|
|
366
366
|
return;
|
|
367
367
|
}
|
|
368
|
-
const resolvedTheme = resolveCreateThemeTableMemberExpressionByNode(val, createThemeHashTable, createThemeObjectTable);
|
|
368
|
+
const resolvedTheme = resolveCreateThemeTableMemberExpressionByNode(val, staticTable, createThemeHashTable, createThemeObjectTable);
|
|
369
369
|
if (resolvedTheme !== undefined) {
|
|
370
370
|
obj[key] = resolvedTheme;
|
|
371
371
|
return;
|
|
372
372
|
}
|
|
373
|
-
const resolvedStatic = resolveCreateStaticTableMemberExpression(val, createStaticHashTable, createStaticObjectTable);
|
|
373
|
+
const resolvedStatic = resolveCreateStaticTableMemberExpression(val, staticTable, createStaticHashTable, createStaticObjectTable);
|
|
374
374
|
if (resolvedStatic !== undefined) {
|
|
375
375
|
obj[key] = resolvedStatic;
|
|
376
376
|
return;
|
|
@@ -726,10 +726,10 @@ function getPropertyKey(node, staticTable, keyframesHashTable, viewTransitionHas
|
|
|
726
726
|
const result = resolveStaticTableMemberExpression(expr, staticTable);
|
|
727
727
|
if (typeof result === 'string')
|
|
728
728
|
return result;
|
|
729
|
-
const staticResult = resolveCreateStaticTableMemberExpression(expr, createStaticHashTable, createStaticObjectTable);
|
|
729
|
+
const staticResult = resolveCreateStaticTableMemberExpression(expr, staticTable, createStaticHashTable, createStaticObjectTable);
|
|
730
730
|
if (typeof staticResult === 'string')
|
|
731
731
|
return staticResult;
|
|
732
|
-
const themeResult = resolveCreateThemeTableMemberExpressionByNode(expr, createThemeHashTable, createThemeObjectTable);
|
|
732
|
+
const themeResult = resolveCreateThemeTableMemberExpressionByNode(expr, staticTable, createThemeHashTable, createThemeObjectTable);
|
|
733
733
|
if (typeof themeResult === 'string')
|
|
734
734
|
return themeResult;
|
|
735
735
|
}
|
|
@@ -912,11 +912,11 @@ function evaluateExpression(node, staticTable, keyframesHashTable, viewTransitio
|
|
|
912
912
|
if (resolved !== undefined) {
|
|
913
913
|
return resolved;
|
|
914
914
|
}
|
|
915
|
-
const resolvedTheme = resolveCreateThemeTableMemberExpressionByNode(node, createThemeHashTable, createThemeObjectTable);
|
|
915
|
+
const resolvedTheme = resolveCreateThemeTableMemberExpressionByNode(node, staticTable, createThemeHashTable, createThemeObjectTable);
|
|
916
916
|
if (resolvedTheme !== undefined) {
|
|
917
917
|
return resolvedTheme;
|
|
918
918
|
}
|
|
919
|
-
const resolvedStatic = resolveCreateStaticTableMemberExpression(node, createStaticHashTable, createStaticObjectTable);
|
|
919
|
+
const resolvedStatic = resolveCreateStaticTableMemberExpression(node, staticTable, createStaticHashTable, createStaticObjectTable);
|
|
920
920
|
if (resolvedStatic !== undefined) {
|
|
921
921
|
return resolvedStatic;
|
|
922
922
|
}
|
|
@@ -972,26 +972,30 @@ function resolveCreateTableMemberExpression(node, createHashTable) {
|
|
|
972
972
|
return createHashTable[node.value];
|
|
973
973
|
}
|
|
974
974
|
}
|
|
975
|
+
function memberKey(node, staticTable) {
|
|
976
|
+
const property = node.property;
|
|
977
|
+
if (exports.t.isIdentifier(property))
|
|
978
|
+
return property.value;
|
|
979
|
+
if (property.type !== 'Computed')
|
|
980
|
+
return undefined;
|
|
981
|
+
const key = unwrapExpression(property.expression);
|
|
982
|
+
const value = exports.t.isStringLiteral(key) || exports.t.isNumericLiteral(key)
|
|
983
|
+
? key.value
|
|
984
|
+
: exports.t.isIdentifier(key)
|
|
985
|
+
? staticTable[key.value]
|
|
986
|
+
: undefined;
|
|
987
|
+
return typeof value === 'string' || typeof value === 'number'
|
|
988
|
+
? String(value)
|
|
989
|
+
: undefined;
|
|
990
|
+
}
|
|
975
991
|
function resolveStaticTableMemberExpression(node, staticTable) {
|
|
976
992
|
const keys = [];
|
|
977
993
|
let current = node;
|
|
978
994
|
while (exports.t.isMemberExpression(current)) {
|
|
979
|
-
const
|
|
980
|
-
|
|
981
|
-
? property.value
|
|
982
|
-
: property.type === 'Computed'
|
|
983
|
-
? unwrapExpression(property.expression)
|
|
984
|
-
: undefined;
|
|
985
|
-
const value = typeof key === 'string'
|
|
986
|
-
? key
|
|
987
|
-
: exports.t.isStringLiteral(key) || exports.t.isNumericLiteral(key)
|
|
988
|
-
? String(key.value)
|
|
989
|
-
: exports.t.isIdentifier(key)
|
|
990
|
-
? staticTable[key.value]
|
|
991
|
-
: undefined;
|
|
992
|
-
if (typeof value !== 'string' && typeof value !== 'number')
|
|
995
|
+
const key = memberKey(current, staticTable);
|
|
996
|
+
if (key === undefined)
|
|
993
997
|
return undefined;
|
|
994
|
-
keys.unshift(
|
|
998
|
+
keys.unshift(key);
|
|
995
999
|
current = unwrapExpression(current.object);
|
|
996
1000
|
}
|
|
997
1001
|
if (!exports.t.isIdentifier(current))
|
|
@@ -1004,21 +1008,14 @@ function resolveStaticTableMemberExpression(node, staticTable) {
|
|
|
1004
1008
|
}
|
|
1005
1009
|
return value;
|
|
1006
1010
|
}
|
|
1007
|
-
function resolveCreateThemeTableMemberExpressionByNode(node, createThemeHashTable, createThemeObjectTable) {
|
|
1011
|
+
function resolveCreateThemeTableMemberExpressionByNode(node, staticTable, createThemeHashTable, createThemeObjectTable) {
|
|
1008
1012
|
if (exports.t.isMemberExpression(node) && exports.t.isIdentifier(node.object)) {
|
|
1009
1013
|
const varName = node.object.value;
|
|
1010
1014
|
const hash = createThemeHashTable[varName];
|
|
1011
1015
|
if (hash) {
|
|
1012
1016
|
const themeObj = createThemeObjectTable[hash];
|
|
1013
1017
|
if (themeObj) {
|
|
1014
|
-
|
|
1015
|
-
if (exports.t.isIdentifier(node.property)) {
|
|
1016
|
-
key = node.property.value;
|
|
1017
|
-
}
|
|
1018
|
-
else if (node.property.type === 'Computed' &&
|
|
1019
|
-
exports.t.isStringLiteral(node.property.expression)) {
|
|
1020
|
-
key = node.property.expression.value;
|
|
1021
|
-
}
|
|
1018
|
+
const key = memberKey(node, staticTable);
|
|
1022
1019
|
if (key && themeObj[key] !== undefined) {
|
|
1023
1020
|
const value = themeObj[key];
|
|
1024
1021
|
const atomicHash = (0, zss_engine_1.genBase36Hash)({ _theme: hash, [key]: value }, 1, 8);
|
|
@@ -1030,21 +1027,14 @@ function resolveCreateThemeTableMemberExpressionByNode(node, createThemeHashTabl
|
|
|
1030
1027
|
}
|
|
1031
1028
|
return undefined;
|
|
1032
1029
|
}
|
|
1033
|
-
function resolveCreateStaticTableMemberExpression(node, createStaticHashTable, createStaticObjectTable) {
|
|
1030
|
+
function resolveCreateStaticTableMemberExpression(node, staticTable, createStaticHashTable, createStaticObjectTable) {
|
|
1034
1031
|
if (exports.t.isMemberExpression(node) && exports.t.isIdentifier(node.object)) {
|
|
1035
1032
|
const varName = node.object.value;
|
|
1036
1033
|
const hash = createStaticHashTable[varName];
|
|
1037
1034
|
if (hash) {
|
|
1038
1035
|
const staticObj = createStaticObjectTable[hash];
|
|
1039
1036
|
if (staticObj) {
|
|
1040
|
-
|
|
1041
|
-
if (exports.t.isIdentifier(node.property)) {
|
|
1042
|
-
key = node.property.value;
|
|
1043
|
-
}
|
|
1044
|
-
else if (node.property.type === 'Computed' &&
|
|
1045
|
-
exports.t.isStringLiteral(node.property.expression)) {
|
|
1046
|
-
key = node.property.expression.value;
|
|
1047
|
-
}
|
|
1037
|
+
const key = memberKey(node, staticTable);
|
|
1048
1038
|
if (key && staticObj[key] !== undefined) {
|
|
1049
1039
|
return staticObj[key];
|
|
1050
1040
|
}
|