@plumeria/turbopack-loader 4.2.0 → 4.2.1

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.
Files changed (2) hide show
  1. package/dist/index.js +44 -7
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -27,8 +27,45 @@ async function loader(source) {
27
27
  tsx: true,
28
28
  target: 'es2022',
29
29
  });
30
- const localConsts = (0, utils_1.collectLocalConsts)(ast, this.resourcePath);
31
- Object.assign(utils_1.tables.staticTable, localConsts);
30
+ const localConsts = (0, utils_1.collectLocalConsts)(ast);
31
+ const resourcePath = this.resourcePath;
32
+ const importMap = {};
33
+ (0, utils_1.traverse)(ast, {
34
+ ImportDeclaration({ node }) {
35
+ const sourcePath = node.source.value;
36
+ const actualPath = (0, utils_1.resolveImportPath)(sourcePath, resourcePath);
37
+ if (actualPath && fs_1.default.existsSync(actualPath)) {
38
+ if (fs_1.default.existsSync(actualPath)) {
39
+ node.specifiers.forEach((specifier) => {
40
+ if (specifier.type === 'ImportSpecifier') {
41
+ const importedName = specifier.imported
42
+ ? specifier.imported.value
43
+ : specifier.local.value;
44
+ const localName = specifier.local.value;
45
+ const uniqueKey = `${actualPath}-${importedName}`;
46
+ if (utils_1.tables.staticTable[uniqueKey]) {
47
+ importMap[localName] = utils_1.tables.staticTable[uniqueKey];
48
+ }
49
+ if (utils_1.tables.keyframesHashTable[uniqueKey]) {
50
+ importMap[localName] = utils_1.tables.keyframesHashTable[uniqueKey];
51
+ }
52
+ if (utils_1.tables.viewTransitionHashTable[uniqueKey]) {
53
+ importMap[localName] =
54
+ utils_1.tables.viewTransitionHashTable[uniqueKey];
55
+ }
56
+ if (utils_1.tables.themeTable[uniqueKey]) {
57
+ importMap[localName] = utils_1.tables.themeTable[uniqueKey];
58
+ }
59
+ }
60
+ });
61
+ }
62
+ }
63
+ },
64
+ });
65
+ const mergedStaticTable = Object.assign(Object.create(utils_1.tables.staticTable), localConsts, importMap);
66
+ const mergedKeyframesTable = Object.assign(Object.create(utils_1.tables.keyframesHashTable), importMap);
67
+ const mergedViewTransitionTable = Object.assign(Object.create(utils_1.tables.viewTransitionHashTable), importMap);
68
+ const mergedThemeTable = Object.assign(Object.create(utils_1.tables.themeTable), importMap);
32
69
  const isTSFile = this.resourcePath.endsWith('.ts') && !this.resourcePath.endsWith('.tsx');
33
70
  const localCreateStyles = {};
34
71
  const replacements = [];
@@ -47,7 +84,7 @@ async function loader(source) {
47
84
  const propName = node.init.callee.property.value;
48
85
  if (propName === 'create' &&
49
86
  utils_1.t.isObjectExpression(node.init.arguments[0].expression)) {
50
- const obj = (0, utils_1.objectExpressionToObject)(node.init.arguments[0].expression, utils_1.tables.staticTable, utils_1.tables.keyframesHashTable, utils_1.tables.viewTransitionHashTable, utils_1.tables.themeTable);
87
+ const obj = (0, utils_1.objectExpressionToObject)(node.init.arguments[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable);
51
88
  if (obj) {
52
89
  const hashMap = {};
53
90
  Object.entries(obj).forEach(([key, style]) => {
@@ -145,7 +182,7 @@ async function loader(source) {
145
182
  if (propName === 'keyframes' &&
146
183
  args.length > 0 &&
147
184
  utils_1.t.isObjectExpression(args[0].expression)) {
148
- const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, utils_1.tables.staticTable, utils_1.tables.keyframesHashTable, utils_1.tables.viewTransitionHashTable, utils_1.tables.themeTable);
185
+ const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable);
149
186
  const hash = (0, zss_engine_1.genBase36Hash)(obj, 1, 8);
150
187
  utils_1.tables.keyframesObjectTable[hash] = obj;
151
188
  replacements.push({
@@ -157,7 +194,7 @@ async function loader(source) {
157
194
  else if (propName === 'viewTransition' &&
158
195
  args.length > 0 &&
159
196
  utils_1.t.isObjectExpression(args[0].expression)) {
160
- const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, utils_1.tables.staticTable, utils_1.tables.keyframesHashTable, utils_1.tables.viewTransitionHashTable, utils_1.tables.themeTable);
197
+ const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable);
161
198
  const hash = (0, zss_engine_1.genBase36Hash)(obj, 1, 8);
162
199
  utils_1.tables.viewTransitionObjectTable[hash] = obj;
163
200
  (0, utils_1.extractOndemandStyles)(obj, extractedSheets);
@@ -171,7 +208,7 @@ async function loader(source) {
171
208
  else if (propName === 'createTheme' &&
172
209
  args.length > 0 &&
173
210
  utils_1.t.isObjectExpression(args[0].expression)) {
174
- const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, utils_1.tables.staticTable, utils_1.tables.keyframesHashTable, utils_1.tables.viewTransitionHashTable, utils_1.tables.themeTable);
211
+ const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable);
175
212
  const hash = (0, zss_engine_1.genBase36Hash)(obj, 1, 8);
176
213
  utils_1.tables.createThemeObjectTable[hash] = obj;
177
214
  }
@@ -266,7 +303,7 @@ async function loader(source) {
266
303
  const merged = args.reduce((acc, arg) => {
267
304
  const expr = arg.expression;
268
305
  if (utils_1.t.isObjectExpression(expr)) {
269
- const obj = (0, utils_1.objectExpressionToObject)(expr, utils_1.tables.staticTable, utils_1.tables.keyframesHashTable, utils_1.tables.viewTransitionHashTable, utils_1.tables.themeTable);
306
+ const obj = (0, utils_1.objectExpressionToObject)(expr, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable);
270
307
  return obj ? (0, utils_1.deepMerge)(acc, obj) : acc;
271
308
  }
272
309
  else if (utils_1.t.isMemberExpression(expr) &&
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plumeria/turbopack-loader",
3
- "version": "4.2.0",
3
+ "version": "4.2.1",
4
4
  "description": "Plumeria Turbopack-loader",
5
5
  "author": "Refirst 11",
6
6
  "license": "MIT",
@@ -22,7 +22,7 @@
22
22
  "zero-virtual.css"
23
23
  ],
24
24
  "dependencies": {
25
- "@plumeria/utils": "^4.2.0"
25
+ "@plumeria/utils": "^4.2.1"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@swc/core": "1.15.8",