@plumeria/webpack-plugin 6.2.0 → 6.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 +115 -19
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -81,15 +81,20 @@ function loader(source) {
81
81
  importMap[localName] =
82
82
  scannedTables.viewTransitionHashTable[uniqueKey];
83
83
  }
84
- if (scannedTables.themeTable[uniqueKey]) {
85
- importMap[localName] = scannedTables.themeTable[uniqueKey];
86
- }
87
84
  if (scannedTables.createHashTable[uniqueKey]) {
88
85
  importMap[localName] = scannedTables.createHashTable[uniqueKey];
89
86
  }
90
87
  if (scannedTables.variantsHashTable[uniqueKey]) {
91
88
  importMap[localName] = scannedTables.variantsHashTable[uniqueKey];
92
89
  }
90
+ if (scannedTables.createThemeHashTable[uniqueKey]) {
91
+ importMap[localName] =
92
+ scannedTables.createThemeHashTable[uniqueKey];
93
+ }
94
+ if (scannedTables.createStaticHashTable[uniqueKey]) {
95
+ importMap[localName] =
96
+ scannedTables.createStaticHashTable[uniqueKey];
97
+ }
93
98
  }
94
99
  });
95
100
  }
@@ -119,12 +124,19 @@ function loader(source) {
119
124
  for (const key of Object.keys(importMap)) {
120
125
  mergedViewTransitionTable[key] = importMap[key];
121
126
  }
122
- const mergedThemeTable = {};
123
- for (const key of Object.keys(scannedTables.themeTable)) {
124
- mergedThemeTable[key] = scannedTables.themeTable[key];
127
+ const mergedCreateThemeHashTable = {};
128
+ for (const key of Object.keys(scannedTables.createThemeHashTable)) {
129
+ mergedCreateThemeHashTable[key] = scannedTables.createThemeHashTable[key];
125
130
  }
126
131
  for (const key of Object.keys(importMap)) {
127
- mergedThemeTable[key] = importMap[key];
132
+ mergedCreateThemeHashTable[key] = importMap[key];
133
+ }
134
+ const mergedCreateStaticHashTable = {};
135
+ for (const key of Object.keys(scannedTables.createStaticHashTable)) {
136
+ mergedCreateStaticHashTable[key] = scannedTables.createStaticHashTable[key];
137
+ }
138
+ for (const key of Object.keys(importMap)) {
139
+ mergedCreateStaticHashTable[key] = importMap[key];
128
140
  }
129
141
  const mergedCreateTable = {};
130
142
  for (const key of Object.keys(scannedTables.createHashTable)) {
@@ -194,7 +206,7 @@ function loader(source) {
194
206
  if (propName) {
195
207
  if (propName === 'create' &&
196
208
  utils_1.t.isObjectExpression(node.init.arguments[0].expression)) {
197
- const obj = (0, utils_1.objectExpressionToObject)(node.init.arguments[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable, mergedCreateTable, mergedVariantsTable);
209
+ const obj = (0, utils_1.objectExpressionToObject)(node.init.arguments[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedCreateThemeHashTable, scannedTables.createThemeObjectTable, mergedCreateTable, mergedCreateStaticHashTable, scannedTables.createStaticObjectTable, mergedVariantsTable);
198
210
  if (obj) {
199
211
  const hashMap = {};
200
212
  Object.entries(obj).forEach(([key, style]) => {
@@ -250,7 +262,7 @@ function loader(source) {
250
262
  }
251
263
  else if (propName === 'variants' &&
252
264
  utils_1.t.isObjectExpression(node.init.arguments[0].expression)) {
253
- const obj = (0, utils_1.objectExpressionToObject)(node.init.arguments[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable, mergedCreateTable, mergedVariantsTable, (name) => {
265
+ const obj = (0, utils_1.objectExpressionToObject)(node.init.arguments[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedCreateThemeHashTable, scannedTables.createThemeObjectTable, mergedCreateTable, mergedCreateStaticHashTable, scannedTables.createStaticObjectTable, mergedVariantsTable, (name) => {
254
266
  if (localCreateStyles[name]) {
255
267
  return localCreateStyles[name].obj;
256
268
  }
@@ -335,7 +347,7 @@ function loader(source) {
335
347
  if (propName === 'keyframes' &&
336
348
  args.length > 0 &&
337
349
  utils_1.t.isObjectExpression(args[0].expression)) {
338
- const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable, mergedCreateTable, mergedVariantsTable);
350
+ const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedCreateThemeHashTable, scannedTables.createThemeObjectTable, mergedCreateTable, mergedCreateStaticHashTable, scannedTables.createStaticObjectTable, mergedVariantsTable);
339
351
  const hash = (0, zss_engine_1.genBase36Hash)(obj, 1, 8);
340
352
  scannedTables.keyframesObjectTable[hash] = obj;
341
353
  replacements.push({
@@ -347,7 +359,7 @@ function loader(source) {
347
359
  else if (propName === 'viewTransition' &&
348
360
  args.length > 0 &&
349
361
  utils_1.t.isObjectExpression(args[0].expression)) {
350
- const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable, mergedCreateTable, mergedVariantsTable);
362
+ const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedCreateThemeHashTable, scannedTables.createThemeObjectTable, mergedCreateTable, mergedCreateStaticHashTable, scannedTables.createStaticObjectTable, mergedVariantsTable);
351
363
  const hash = (0, zss_engine_1.genBase36Hash)(obj, 1, 8);
352
364
  scannedTables.viewTransitionObjectTable[hash] = obj;
353
365
  if (!isProduction) {
@@ -363,14 +375,14 @@ function loader(source) {
363
375
  else if (propName === 'createTheme' &&
364
376
  args.length > 0 &&
365
377
  utils_1.t.isObjectExpression(args[0].expression)) {
366
- const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable, mergedCreateTable, mergedVariantsTable);
378
+ const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedCreateThemeHashTable, scannedTables.createThemeObjectTable, mergedCreateTable, mergedCreateStaticHashTable, scannedTables.createStaticObjectTable, mergedVariantsTable);
367
379
  const hash = (0, zss_engine_1.genBase36Hash)(obj, 1, 8);
368
380
  scannedTables.createThemeObjectTable[hash] = obj;
369
381
  }
370
382
  else if (propName === 'create' &&
371
383
  args.length > 0 &&
372
384
  utils_1.t.isObjectExpression(args[0].expression)) {
373
- const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable, mergedCreateTable, mergedVariantsTable);
385
+ const obj = (0, utils_1.objectExpressionToObject)(args[0].expression, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedCreateThemeHashTable, scannedTables.createThemeObjectTable, mergedCreateTable, mergedCreateStaticHashTable, scannedTables.createStaticObjectTable, mergedVariantsTable);
374
386
  const hash = (0, zss_engine_1.genBase36Hash)(obj, 1, 8);
375
387
  scannedTables.createObjectTable[hash] = obj;
376
388
  Object.entries(obj).forEach(([key, style]) => {
@@ -409,6 +421,35 @@ function loader(source) {
409
421
  });
410
422
  }
411
423
  }
424
+ let themeHash = scannedTables.createThemeHashTable[uniqueKey];
425
+ if (!themeHash) {
426
+ themeHash = mergedCreateThemeHashTable[varName];
427
+ }
428
+ if (themeHash) {
429
+ const themeObj = scannedTables.createThemeObjectTable[themeHash];
430
+ if (themeObj && themeObj[propName] !== undefined) {
431
+ const cssVarName = (0, zss_engine_1.camelToKebabCase)(propName);
432
+ replacements.push({
433
+ start: node.span.start - ast.span.start,
434
+ end: node.span.end - ast.span.start,
435
+ content: JSON.stringify(`var(--${cssVarName})`),
436
+ });
437
+ }
438
+ }
439
+ let staticHash = scannedTables.createStaticHashTable[uniqueKey];
440
+ if (!staticHash) {
441
+ staticHash = mergedCreateStaticHashTable[varName];
442
+ }
443
+ if (staticHash) {
444
+ const staticObj = scannedTables.createStaticObjectTable[staticHash];
445
+ if (staticObj && staticObj[propName] !== undefined) {
446
+ replacements.push({
447
+ start: node.span.start - ast.span.start,
448
+ end: node.span.end - ast.span.start,
449
+ content: JSON.stringify(staticObj[propName]),
450
+ });
451
+ }
452
+ }
412
453
  }
413
454
  },
414
455
  Identifier({ node }) {
@@ -448,6 +489,62 @@ function loader(source) {
448
489
  });
449
490
  }
450
491
  }
492
+ let kfHash = scannedTables.keyframesHashTable[uniqueKey];
493
+ if (!kfHash) {
494
+ kfHash = mergedKeyframesTable[varName];
495
+ }
496
+ if (kfHash) {
497
+ replacements.push({
498
+ start: node.span.start - ast.span.start,
499
+ end: node.span.end - ast.span.start,
500
+ content: JSON.stringify(`kf-${kfHash}`),
501
+ });
502
+ return;
503
+ }
504
+ let vtHash = scannedTables.viewTransitionHashTable[uniqueKey];
505
+ if (!vtHash) {
506
+ vtHash = mergedViewTransitionTable[varName];
507
+ }
508
+ if (vtHash) {
509
+ replacements.push({
510
+ start: node.span.start - ast.span.start,
511
+ end: node.span.end - ast.span.start,
512
+ content: JSON.stringify(`vt-${vtHash}`),
513
+ });
514
+ return;
515
+ }
516
+ let themeHash = scannedTables.createThemeHashTable[uniqueKey];
517
+ if (!themeHash) {
518
+ themeHash = mergedCreateThemeHashTable[varName];
519
+ }
520
+ if (themeHash) {
521
+ const themeObj = scannedTables.createThemeObjectTable[themeHash];
522
+ if (themeObj) {
523
+ const themeVars = {};
524
+ Object.keys(themeObj).forEach((key) => {
525
+ themeVars[key] = `var(--${(0, zss_engine_1.camelToKebabCase)(key)})`;
526
+ });
527
+ replacements.push({
528
+ start: node.span.start - ast.span.start,
529
+ end: node.span.end - ast.span.start,
530
+ content: JSON.stringify(themeVars),
531
+ });
532
+ }
533
+ }
534
+ let staticHash = scannedTables.createStaticHashTable[uniqueKey];
535
+ if (!staticHash) {
536
+ staticHash = mergedCreateStaticHashTable[varName];
537
+ }
538
+ if (staticHash) {
539
+ const staticObj = scannedTables.createStaticObjectTable[staticHash];
540
+ if (staticObj) {
541
+ replacements.push({
542
+ start: node.span.start - ast.span.start,
543
+ end: node.span.end - ast.span.start,
544
+ content: JSON.stringify(staticObj),
545
+ });
546
+ }
547
+ }
451
548
  },
452
549
  CallExpression({ node }) {
453
550
  const callee = node.callee;
@@ -474,18 +571,17 @@ function loader(source) {
474
571
  const args = node.arguments;
475
572
  const resolveStyleObject = (expr) => {
476
573
  if (utils_1.t.isObjectExpression(expr)) {
477
- return (0, utils_1.objectExpressionToObject)(expr, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedThemeTable, mergedCreateTable, mergedVariantsTable);
574
+ return (0, utils_1.objectExpressionToObject)(expr, mergedStaticTable, mergedKeyframesTable, mergedViewTransitionTable, mergedCreateThemeHashTable, scannedTables.createThemeObjectTable, mergedCreateTable, mergedCreateStaticHashTable, scannedTables.createStaticObjectTable, mergedVariantsTable);
478
575
  }
479
576
  else if (utils_1.t.isMemberExpression(expr) &&
480
577
  utils_1.t.isIdentifier(expr.object) &&
481
- (utils_1.t.isIdentifier(expr.property) || expr.property.type === 'Computed')) {
578
+ (utils_1.t.isIdentifier(expr.property) ||
579
+ expr.property.type === 'Computed')) {
482
580
  if (expr.property.type === 'Computed') {
483
581
  return {};
484
582
  }
485
- const varName = expr.object
486
- .value;
487
- const propName = expr.property
488
- .value;
583
+ const varName = expr.object.value;
584
+ const propName = expr.property.value;
489
585
  const styleInfo = localCreateStyles[varName];
490
586
  if (styleInfo && styleInfo.obj[propName]) {
491
587
  const style = styleInfo.obj[propName];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plumeria/webpack-plugin",
3
- "version": "6.2.0",
3
+ "version": "6.2.1",
4
4
  "description": "Plumeria Webpack plugin",
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": "^6.2.0"
25
+ "@plumeria/utils": "^6.2.1"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@swc/core": "1.15.8",