@plumeria/unplugin 18.5.1 → 18.5.2

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 (3) hide show
  1. package/dist/core.js +27 -30
  2. package/dist/core.mjs +27 -30
  3. package/package.json +2 -2
package/dist/core.js CHANGED
@@ -87,6 +87,8 @@ const destructuredPropAliases = (fn) => {
87
87
  }
88
88
  return aliases;
89
89
  };
90
+ const propDefaultMessage = (source) => `Plumeria: A style prop default must be a defined style: "${source}". ` +
91
+ `Apply a conditional or dynamic style where the element is styled.`;
90
92
  const spreadStyleMessage = (source) => `Plumeria: Spread elements in a style array are not supported: "...${source}". ` +
91
93
  `List each style explicitly.`;
92
94
  const resolveLocalStyleAlias = (aliases, expression) => {
@@ -1404,37 +1406,32 @@ const unpluginFactory = (options = {}, unpluginMeta) => {
1404
1406
  possibilities = candidates;
1405
1407
  }
1406
1408
  const fallback = owner && propDefaults.get(owner)?.get(propName);
1407
- if (fallback) {
1409
+ if (fallback && !isNoOpStyle((0, utils_1.unwrapExpression)(fallback))) {
1408
1410
  const style = resolveStyleObject(fallback);
1409
- if (style) {
1410
- const atoms = {};
1411
- (0, utils_1.getStyleRecords)(style).forEach((record) => {
1412
- atoms[record.key] = record.hash;
1413
- });
1414
- const key = (0, zss_engine_1.genBase36Hash)(Object.values(atoms).join(' '), 1, 8);
1415
- possibilities = [
1416
- ...(possibilities ?? []),
1417
- { key, styleObj: style },
1418
- ];
1419
- const span = fallback.span;
1420
- {
1421
- for (let i = replacements.length - 1; i >= 0; i--) {
1422
- const replacement = replacements[i];
1423
- if (replacement.start >= span.start - baseByteOffset &&
1424
- replacement.end <= span.end - baseByteOffset)
1425
- replacements.splice(i, 1);
1426
- }
1427
- excludeSubtreeSpans(fallback);
1428
- replacements.push({
1429
- start: span.start - baseByteOffset,
1430
- end: span.end - baseByteOffset,
1431
- content: JSON.stringify(key),
1432
- });
1433
- }
1434
- }
1435
- else {
1436
- assertResolvable(fallback);
1437
- }
1411
+ if (!style)
1412
+ throwCompilationError(propDefaultMessage(getSource(fallback)), fallback);
1413
+ const atoms = {};
1414
+ (0, utils_1.getStyleRecords)(style).forEach((record) => {
1415
+ atoms[record.key] = record.hash;
1416
+ });
1417
+ const key = (0, zss_engine_1.genBase36Hash)(Object.values(atoms).join(' '), 1, 8);
1418
+ possibilities = [
1419
+ ...(possibilities ?? []),
1420
+ { key, styleObj: style },
1421
+ ];
1422
+ const span = fallback.span;
1423
+ for (let index = replacements.length - 1; index >= 0; index--) {
1424
+ const replacement = replacements[index];
1425
+ if (replacement.start >= span.start - baseByteOffset &&
1426
+ replacement.end <= span.end - baseByteOffset)
1427
+ replacements.splice(index, 1);
1428
+ }
1429
+ excludeSubtreeSpans(fallback);
1430
+ replacements.push({
1431
+ start: span.start - baseByteOffset,
1432
+ end: span.end - baseByteOffset,
1433
+ content: JSON.stringify(key),
1434
+ });
1438
1435
  }
1439
1436
  if (!possibilities || possibilities.length === 0) {
1440
1437
  return Boolean(isPropsMember ||
package/dist/core.mjs CHANGED
@@ -51,6 +51,8 @@ const destructuredPropAliases = (fn) => {
51
51
  }
52
52
  return aliases;
53
53
  };
54
+ const propDefaultMessage = (source) => `Plumeria: A style prop default must be a defined style: "${source}". ` +
55
+ `Apply a conditional or dynamic style where the element is styled.`;
54
56
  const spreadStyleMessage = (source) => `Plumeria: Spread elements in a style array are not supported: "...${source}". ` +
55
57
  `List each style explicitly.`;
56
58
  const resolveLocalStyleAlias = (aliases, expression) => {
@@ -1368,37 +1370,32 @@ export const unpluginFactory = (options = {}, unpluginMeta) => {
1368
1370
  possibilities = candidates;
1369
1371
  }
1370
1372
  const fallback = owner && propDefaults.get(owner)?.get(propName);
1371
- if (fallback) {
1373
+ if (fallback && !isNoOpStyle(unwrapExpression(fallback))) {
1372
1374
  const style = resolveStyleObject(fallback);
1373
- if (style) {
1374
- const atoms = {};
1375
- getStyleRecords(style).forEach((record) => {
1376
- atoms[record.key] = record.hash;
1377
- });
1378
- const key = genBase36Hash(Object.values(atoms).join(' '), 1, 8);
1379
- possibilities = [
1380
- ...(possibilities ?? []),
1381
- { key, styleObj: style },
1382
- ];
1383
- const span = fallback.span;
1384
- {
1385
- for (let i = replacements.length - 1; i >= 0; i--) {
1386
- const replacement = replacements[i];
1387
- if (replacement.start >= span.start - baseByteOffset &&
1388
- replacement.end <= span.end - baseByteOffset)
1389
- replacements.splice(i, 1);
1390
- }
1391
- excludeSubtreeSpans(fallback);
1392
- replacements.push({
1393
- start: span.start - baseByteOffset,
1394
- end: span.end - baseByteOffset,
1395
- content: JSON.stringify(key),
1396
- });
1397
- }
1398
- }
1399
- else {
1400
- assertResolvable(fallback);
1401
- }
1375
+ if (!style)
1376
+ throwCompilationError(propDefaultMessage(getSource(fallback)), fallback);
1377
+ const atoms = {};
1378
+ getStyleRecords(style).forEach((record) => {
1379
+ atoms[record.key] = record.hash;
1380
+ });
1381
+ const key = genBase36Hash(Object.values(atoms).join(' '), 1, 8);
1382
+ possibilities = [
1383
+ ...(possibilities ?? []),
1384
+ { key, styleObj: style },
1385
+ ];
1386
+ const span = fallback.span;
1387
+ for (let index = replacements.length - 1; index >= 0; index--) {
1388
+ const replacement = replacements[index];
1389
+ if (replacement.start >= span.start - baseByteOffset &&
1390
+ replacement.end <= span.end - baseByteOffset)
1391
+ replacements.splice(index, 1);
1392
+ }
1393
+ excludeSubtreeSpans(fallback);
1394
+ replacements.push({
1395
+ start: span.start - baseByteOffset,
1396
+ end: span.end - baseByteOffset,
1397
+ content: JSON.stringify(key),
1398
+ });
1402
1399
  }
1403
1400
  if (!possibilities || possibilities.length === 0) {
1404
1401
  return Boolean(isPropsMember ||
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plumeria/unplugin",
3
- "version": "18.5.1",
3
+ "version": "18.5.2",
4
4
  "description": "Universal Plumeria plugin for various build tools",
5
5
  "author": "Refirst 11",
6
6
  "license": "MIT",
@@ -94,7 +94,7 @@
94
94
  "dependencies": {
95
95
  "@rollup/pluginutils": "^5.4.0",
96
96
  "unplugin": "^3.0.0",
97
- "@plumeria/utils": "^18.5.1"
97
+ "@plumeria/utils": "^18.5.2"
98
98
  },
99
99
  "devDependencies": {
100
100
  "@swc/core": "1.15.47",