tailwind-styled-v4 5.0.24 → 5.0.27

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/engine.mjs CHANGED
@@ -1789,21 +1789,6 @@ var init_compiler = __esm({
1789
1789
  });
1790
1790
 
1791
1791
  // packages/domain/compiler/src/parser/index.ts
1792
- var parser_exports = {};
1793
- __export(parser_exports, {
1794
- astExtractClasses: () => astExtractClasses,
1795
- batchExtractClasses: () => batchExtractClasses,
1796
- checkAgainstSafelist: () => checkAgainstSafelist,
1797
- diffClassLists: () => diffClassLists,
1798
- extractAllClasses: () => extractAllClasses,
1799
- extractClassesFromSource: () => extractClassesFromSource,
1800
- extractComponentUsage: () => extractComponentUsage,
1801
- mergeClassesStatic: () => mergeClassesStatic,
1802
- normalizeAndDedupClasses: () => normalizeAndDedupClasses,
1803
- normalizeClasses: () => normalizeClasses,
1804
- parseClass: () => parseClass,
1805
- parseClasses: () => parseClasses
1806
- });
1807
1792
  var parseClasses, parseClass, extractAllClasses, extractClassesFromSource, astExtractClasses, normalizeClasses, mergeClassesStatic, normalizeAndDedupClasses, extractComponentUsage, batchExtractClasses, checkAgainstSafelist, diffClassLists;
1808
1793
  var init_parser = __esm({
1809
1794
  "packages/domain/compiler/src/parser/index.ts"() {
@@ -2764,7 +2749,7 @@ function extractContainerCssFromSource(source) {
2764
2749
  }
2765
2750
  return rules.join("\n");
2766
2751
  }
2767
- var transformSource, hasTwUsage, isAlreadyTransformed, shouldProcess, compileCssFromClasses, buildStyleTag, generateCssForClasses, eliminateDeadCss, findDeadVariants, runElimination, scanProjectUsage, generateSafelist, loadSafelist, loadTailwindConfig, getContentPaths, _CONTAINER_BREAKPOINTS, runLoaderTransform, shouldSkipFile, fileToRoute, getAllRoutes, getRouteClasses, registerFileClasses, registerGlobalClasses, _incrementalEngineInstance, getIncrementalEngine, resetIncrementalEngine, IncrementalEngine, getBucketEngine, resetBucketEngine, classifyNode, detectConflicts, bucketSort, analyzeFile, analyzeVariantUsage, injectClientDirective, injectServerOnlyComment, analyzeClasses, extractTwStateConfigs, generateStaticStateCss, extractAndGenerateStateCss;
2752
+ var _require2, transformSource, hasTwUsage, isAlreadyTransformed, shouldProcess, compileCssFromClasses, buildStyleTag, generateCssForClasses, eliminateDeadCss, findDeadVariants, runElimination, scanProjectUsage, generateSafelist, loadSafelist, loadTailwindConfig, getContentPaths, _CONTAINER_BREAKPOINTS, runLoaderTransform, shouldSkipFile, fileToRoute, getAllRoutes, getRouteClasses, registerFileClasses, registerGlobalClasses, _incrementalEngineInstance, getIncrementalEngine, resetIncrementalEngine, IncrementalEngine, getBucketEngine, resetBucketEngine, classifyNode, detectConflicts, bucketSort, analyzeFile, analyzeVariantUsage, injectClientDirective, injectServerOnlyComment, analyzeClasses, extractTwStateConfigs, generateStaticStateCss, extractAndGenerateStateCss;
2768
2753
  var init_src = __esm({
2769
2754
  "packages/domain/compiler/src/index.ts"() {
2770
2755
  init_nativeBridge();
@@ -2774,6 +2759,7 @@ var init_src = __esm({
2774
2759
  init_cache();
2775
2760
  init_redis();
2776
2761
  init_watch();
2762
+ _require2 = createRequire(import.meta.url);
2777
2763
  transformSource = (source, opts) => {
2778
2764
  const native = getNativeBridge();
2779
2765
  if (!native?.transformSource) {
@@ -2863,7 +2849,7 @@ var init_src = __esm({
2863
2849
  return eliminateDeadCss(css, new Set(dead.deadInCss ?? []));
2864
2850
  };
2865
2851
  scanProjectUsage = (dirs, cwd) => {
2866
- const { batchExtractClasses: batchExtractClasses2 } = (init_parser(), __toCommonJS(parser_exports));
2852
+ const { batchExtractClasses: batchExtractClasses2 } = _require2("./parser");
2867
2853
  const files = dirs.map((dir) => path9__default.resolve(cwd, dir));
2868
2854
  const results = batchExtractClasses2(files) || [];
2869
2855
  const combined = {};
@@ -3497,14 +3483,23 @@ function extractStaticStateCss(srcDir, options = {}) {
3497
3483
  }
3498
3484
  }
3499
3485
  const allRules = native.generateStaticStateCss(uniqueConfigs, options.resolvedCss ?? null);
3500
- const rulesSkipped = uniqueConfigs.reduce((total, cfg) => {
3501
- try {
3502
- const stateMap = JSON.parse(cfg.statesJson);
3503
- return total + Object.keys(stateMap).length;
3504
- } catch {
3505
- return total;
3506
- }
3507
- }, 0) - allRules.length;
3486
+ const rulesSkipped = allRules.filter((r) => {
3487
+ const decl = r.declarations.trim();
3488
+ return decl.length === 0 || !decl.includes(":");
3489
+ }).length;
3490
+ function sanitizeCssRule(cssRule, declarations) {
3491
+ const segments = declarations.split(/[;\n]/).map((s) => s.trim()).filter(Boolean);
3492
+ const validSegs = segments.filter((s) => s.includes(":"));
3493
+ const invalidSegs = segments.filter((s) => !s.includes(":"));
3494
+ if (invalidSegs.length === 0) return cssRule;
3495
+ if (validSegs.length === 0) return null;
3496
+ const braceIdx = cssRule.indexOf("{");
3497
+ if (braceIdx === -1) return null;
3498
+ const selector = cssRule.slice(0, braceIdx).trim();
3499
+ return `${selector} {
3500
+ ${validSegs.join(";\n ")};
3501
+ }`;
3502
+ }
3508
3503
  const byComponent = /* @__PURE__ */ new Map();
3509
3504
  for (const rule of allRules) {
3510
3505
  const existing = byComponent.get(rule.componentName) ?? [];
@@ -3516,11 +3511,18 @@ function extractStaticStateCss(srcDir, options = {}) {
3516
3511
  cssBlocks.push(`/* ${componentName} */`);
3517
3512
  for (const rule of rules) {
3518
3513
  cssBlocks.push(`/* state: ${rule.stateName} */`);
3519
- const isUnresolved = rule.declarations.trim().length > 0 && !rule.declarations.includes(":");
3520
- if (isUnresolved) {
3521
- cssBlocks.push(`/* SKIPPED (unresolved): ${rule.declarations} \u2014 akan di-inject runtime */`);
3514
+ const isFullyUnresolved = rule.declarations.trim().length > 0 && !rule.declarations.includes(":");
3515
+ if (isFullyUnresolved) {
3516
+ const encoded = rule.declarations.replace(/([\w-]+)/g, "[$1]");
3517
+ cssBlocks.push(`/* SKIP [unresolved]: ${encoded} */`);
3522
3518
  } else {
3523
- cssBlocks.push(rule.cssRule);
3519
+ const sanitized = sanitizeCssRule(rule.cssRule, rule.declarations);
3520
+ if (sanitized !== null) {
3521
+ cssBlocks.push(sanitized);
3522
+ } else {
3523
+ const encoded = rule.declarations.replace(/([\w-]+)/g, "[$1]");
3524
+ cssBlocks.push(`/* SKIP [sanitized-empty]: ${encoded} */`);
3525
+ }
3524
3526
  }
3525
3527
  }
3526
3528
  cssBlocks.push("");
@@ -3530,7 +3532,7 @@ function extractStaticStateCss(srcDir, options = {}) {
3530
3532
  filesWithStates,
3531
3533
  componentsFound: allConfigs.length,
3532
3534
  rulesGenerated: allRules.length,
3533
- rulesSkipped: Math.max(0, rulesSkipped),
3535
+ rulesSkipped,
3534
3536
  generatedCss: cssBlocks.join("\n"),
3535
3537
  rules: allRules
3536
3538
  };
@@ -3773,7 +3775,7 @@ function loadNativeBinding(options) {
3773
3775
  return { binding: null, loadErrors };
3774
3776
  }
3775
3777
  function requireNativeModule(p) {
3776
- return _require2(p);
3778
+ return _require3(p);
3777
3779
  }
3778
3780
  function resolveNativeBindingCandidates(options) {
3779
3781
  const {
@@ -3830,7 +3832,7 @@ function formatErrorMessage(error) {
3830
3832
  if (error instanceof Error) return error.message;
3831
3833
  return String(error);
3832
3834
  }
3833
- var TwError, _require2, LRUCache;
3835
+ var TwError, _require3, LRUCache;
3834
3836
  var init_src2 = __esm({
3835
3837
  "packages/domain/shared/src/index.ts"() {
3836
3838
  init_trace();
@@ -3898,7 +3900,7 @@ var init_src2 = __esm({
3898
3900
  return `[${this.source.toUpperCase()}:${this.code}] ${this.message}`;
3899
3901
  }
3900
3902
  };
3901
- _require2 = createRequire(import.meta.url);
3903
+ _require3 = createRequire(import.meta.url);
3902
3904
  LRUCache = class {
3903
3905
  capacity;
3904
3906
  cache;