tailwind-styled-v4 5.0.0 → 5.0.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 (180) hide show
  1. package/CHANGELOG.md +398 -0
  2. package/LICENSE +21 -0
  3. package/README.md +532 -0
  4. package/dist/analyzer.d.mts +114 -0
  5. package/dist/analyzer.d.ts +114 -0
  6. package/dist/analyzer.js +6808 -0
  7. package/dist/analyzer.js.map +1 -0
  8. package/dist/analyzer.mjs +6798 -0
  9. package/dist/analyzer.mjs.map +1 -0
  10. package/dist/{animate.d.cts → animate.d.mts} +3 -30
  11. package/dist/animate.d.ts +3 -30
  12. package/dist/animate.js +7096 -352
  13. package/dist/animate.js.map +1 -1
  14. package/dist/animate.mjs +7482 -0
  15. package/dist/animate.mjs.map +1 -0
  16. package/dist/atomic.d.mts +18 -0
  17. package/dist/atomic.d.ts +18 -0
  18. package/dist/atomic.js +191 -0
  19. package/dist/atomic.js.map +1 -0
  20. package/dist/atomic.mjs +185 -0
  21. package/dist/atomic.mjs.map +1 -0
  22. package/dist/cli.d.mts +1 -0
  23. package/dist/cli.d.ts +1 -0
  24. package/dist/cli.js +45008 -0
  25. package/dist/cli.js.map +1 -0
  26. package/dist/cli.mjs +44980 -0
  27. package/dist/cli.mjs.map +1 -0
  28. package/dist/compiler.d.mts +1009 -0
  29. package/dist/compiler.d.ts +1009 -0
  30. package/dist/compiler.js +4937 -0
  31. package/dist/compiler.js.map +1 -0
  32. package/dist/compiler.mjs +4862 -0
  33. package/dist/compiler.mjs.map +1 -0
  34. package/dist/dashboard.d.mts +272 -0
  35. package/dist/dashboard.d.ts +272 -0
  36. package/dist/dashboard.js +249 -0
  37. package/dist/dashboard.js.map +1 -0
  38. package/dist/dashboard.mjs +239 -0
  39. package/dist/dashboard.mjs.map +1 -0
  40. package/dist/devtools.js +171 -158
  41. package/dist/devtools.js.map +1 -1
  42. package/dist/{devtools.cjs → devtools.mjs} +166 -167
  43. package/dist/devtools.mjs.map +1 -0
  44. package/dist/engine.d.mts +398 -0
  45. package/dist/engine.d.ts +398 -0
  46. package/dist/engine.js +19264 -0
  47. package/dist/engine.js.map +1 -0
  48. package/dist/engine.mjs +19227 -0
  49. package/dist/engine.mjs.map +1 -0
  50. package/dist/{index.d.cts → index.d.mts} +12 -5
  51. package/dist/index.d.ts +12 -5
  52. package/dist/index.js +7178 -27
  53. package/dist/index.js.map +1 -1
  54. package/dist/index.mjs +8408 -0
  55. package/dist/index.mjs.map +1 -0
  56. package/dist/liveTokenEngine-DYN3Zale.d.mts +34 -0
  57. package/dist/liveTokenEngine-DYN3Zale.d.ts +34 -0
  58. package/dist/{next.d.cts → next.d.mts} +2 -1
  59. package/dist/next.d.ts +2 -1
  60. package/dist/next.js +24027 -28
  61. package/dist/next.js.map +1 -1
  62. package/dist/next.mjs +24232 -0
  63. package/dist/next.mjs.map +1 -0
  64. package/dist/plugin.d.mts +90 -0
  65. package/dist/plugin.d.ts +90 -0
  66. package/dist/plugin.js +185 -0
  67. package/dist/plugin.js.map +1 -0
  68. package/dist/plugin.mjs +174 -0
  69. package/dist/plugin.mjs.map +1 -0
  70. package/dist/pluginRegistry.d.mts +83 -0
  71. package/dist/pluginRegistry.d.ts +83 -0
  72. package/dist/pluginRegistry.js +303 -0
  73. package/dist/pluginRegistry.js.map +1 -0
  74. package/dist/pluginRegistry.mjs +298 -0
  75. package/dist/pluginRegistry.mjs.map +1 -0
  76. package/dist/preset.js +9 -4
  77. package/dist/preset.js.map +1 -1
  78. package/dist/{preset.cjs → preset.mjs} +5 -14
  79. package/dist/preset.mjs.map +1 -0
  80. package/dist/rspack.d.mts +33 -0
  81. package/dist/rspack.d.ts +33 -0
  82. package/dist/rspack.js +66 -0
  83. package/dist/rspack.js.map +1 -0
  84. package/dist/rspack.mjs +55 -0
  85. package/dist/rspack.mjs.map +1 -0
  86. package/dist/runtime.d.mts +62 -0
  87. package/dist/runtime.d.ts +62 -0
  88. package/dist/runtime.js +455 -0
  89. package/dist/runtime.js.map +1 -0
  90. package/dist/runtime.mjs +436 -0
  91. package/dist/runtime.mjs.map +1 -0
  92. package/dist/runtimeCss.d.mts +65 -0
  93. package/dist/runtimeCss.d.ts +65 -0
  94. package/dist/{css.cjs → runtimeCss.js} +71 -4
  95. package/dist/runtimeCss.js.map +1 -0
  96. package/dist/{css.js → runtimeCss.mjs} +66 -5
  97. package/dist/runtimeCss.mjs.map +1 -0
  98. package/dist/scanner.d.mts +25 -0
  99. package/dist/scanner.d.ts +25 -0
  100. package/dist/scanner.js +5774 -0
  101. package/dist/scanner.js.map +1 -0
  102. package/dist/scanner.mjs +5760 -0
  103. package/dist/scanner.mjs.map +1 -0
  104. package/dist/shared.d.mts +85 -0
  105. package/dist/shared.d.ts +85 -0
  106. package/dist/shared.js +255 -0
  107. package/dist/shared.js.map +1 -0
  108. package/dist/shared.mjs +233 -0
  109. package/dist/shared.mjs.map +1 -0
  110. package/dist/storybookAddon.d.mts +108 -0
  111. package/dist/storybookAddon.d.ts +108 -0
  112. package/dist/storybookAddon.js +95 -0
  113. package/dist/storybookAddon.js.map +1 -0
  114. package/dist/storybookAddon.mjs +88 -0
  115. package/dist/storybookAddon.mjs.map +1 -0
  116. package/dist/svelte.d.mts +114 -0
  117. package/dist/svelte.d.ts +114 -0
  118. package/dist/svelte.js +67 -0
  119. package/dist/svelte.js.map +1 -0
  120. package/dist/svelte.mjs +59 -0
  121. package/dist/svelte.mjs.map +1 -0
  122. package/dist/testing.d.mts +185 -0
  123. package/dist/testing.d.ts +185 -0
  124. package/dist/testing.js +173 -0
  125. package/dist/testing.js.map +1 -0
  126. package/dist/testing.mjs +158 -0
  127. package/dist/testing.mjs.map +1 -0
  128. package/dist/theme.d.mts +188 -0
  129. package/dist/theme.d.ts +188 -0
  130. package/dist/theme.js +334 -0
  131. package/dist/theme.js.map +1 -0
  132. package/dist/theme.mjs +311 -0
  133. package/dist/theme.mjs.map +1 -0
  134. package/dist/tsconfig.tsbuildinfo +1 -0
  135. package/dist/types-DXr2PmGP.d.mts +31 -0
  136. package/dist/types-DXr2PmGP.d.ts +31 -0
  137. package/dist/vite.js +29611 -17
  138. package/dist/vite.js.map +1 -1
  139. package/dist/vite.mjs +29712 -0
  140. package/dist/vite.mjs.map +1 -0
  141. package/dist/vue.d.mts +89 -0
  142. package/dist/vue.d.ts +89 -0
  143. package/dist/vue.js +104 -0
  144. package/dist/vue.js.map +1 -0
  145. package/dist/vue.mjs +96 -0
  146. package/dist/vue.mjs.map +1 -0
  147. package/package.json +170 -64
  148. package/dist/animate.cjs +0 -771
  149. package/dist/animate.cjs.map +0 -1
  150. package/dist/chunk-VZEJV27B.js +0 -11
  151. package/dist/chunk-VZEJV27B.js.map +0 -1
  152. package/dist/chunk-Y5D3E72P.cjs +0 -13
  153. package/dist/chunk-Y5D3E72P.cjs.map +0 -1
  154. package/dist/css.cjs.map +0 -1
  155. package/dist/css.d.cts +0 -30
  156. package/dist/css.d.ts +0 -30
  157. package/dist/css.js.map +0 -1
  158. package/dist/devtools.cjs.map +0 -1
  159. package/dist/index.cjs +0 -1353
  160. package/dist/index.cjs.map +0 -1
  161. package/dist/next.cjs +0 -248
  162. package/dist/next.cjs.map +0 -1
  163. package/dist/preset.cjs.map +0 -1
  164. package/dist/turbopackLoader.cjs +0 -37
  165. package/dist/turbopackLoader.cjs.map +0 -1
  166. package/dist/turbopackLoader.d.cts +0 -12
  167. package/dist/turbopackLoader.d.ts +0 -12
  168. package/dist/turbopackLoader.js +0 -35
  169. package/dist/turbopackLoader.js.map +0 -1
  170. package/dist/vite.cjs +0 -138
  171. package/dist/vite.cjs.map +0 -1
  172. package/dist/webpackLoader.cjs +0 -51
  173. package/dist/webpackLoader.cjs.map +0 -1
  174. package/dist/webpackLoader.d.cts +0 -17
  175. package/dist/webpackLoader.d.ts +0 -17
  176. package/dist/webpackLoader.js +0 -49
  177. package/dist/webpackLoader.js.map +0 -1
  178. /package/dist/{devtools.d.cts → devtools.d.mts} +0 -0
  179. /package/dist/{preset.d.cts → preset.d.mts} +0 -0
  180. /package/dist/{vite.d.cts → vite.d.mts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../preset/src/defaultPreset.ts"],"names":[],"mappings":"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","file":"preset.cjs","sourcesContent":["/**\n * tailwind-styled-v4 — Default Preset\n *\n * Tailwind config built-in yang dipakai ketika developer tidak punya\n * tailwind.config.ts / tailwind.config.js di project mereka.\n *\n * Developer tidak perlu setup apapun:\n * npm install tailwind-styled-v4\n * → langsung bisa tw.div`p-4 bg-blue-500`\n *\n * Preset ini juga menyediakan design tokens yang consistent\n * untuk semua project yang pakai tailwind-styled-v4.\n *\n * Override per-project:\n * // tailwind.config.ts\n * import { defaultPreset } from \"tailwind-styled-v4/preset\"\n * export default { presets: [defaultPreset], theme: { extend: {...} } }\n */\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Content paths — auto-detect berdasarkan project structure\n// ─────────────────────────────────────────────────────────────────────────────\n\nconst STANDARD_CONTENT_PATHS = [\n // Next.js App Router\n \"./src/**/*.{tsx,ts,jsx,js,mdx}\",\n \"./app/**/*.{tsx,ts,jsx,js,mdx}\",\n \"./pages/**/*.{tsx,ts,jsx,js,mdx}\",\n \"./components/**/*.{tsx,ts,jsx,js,mdx}\",\n // Vite / React\n \"./src/**/*.{tsx,ts,jsx,js}\",\n \"./index.html\",\n // Monorepo\n \"../../packages/**/src/**/*.{tsx,ts,jsx,js}\",\n]\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Design tokens — consistent across all tailwind-styled-v4 projects\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport const designTokens = {\n colors: {\n primary: { DEFAULT: \"#3b82f6\", hover: \"#2563eb\", active: \"#1d4ed8\", foreground: \"#ffffff\" },\n secondary: { DEFAULT: \"#6366f1\", hover: \"#4f46e5\", active: \"#4338ca\", foreground: \"#ffffff\" },\n accent: { DEFAULT: \"#f59e0b\", hover: \"#d97706\", active: \"#b45309\", foreground: \"#000000\" },\n success: { DEFAULT: \"#10b981\", foreground: \"#ffffff\" },\n warning: { DEFAULT: \"#f59e0b\", foreground: \"#000000\" },\n danger: { DEFAULT: \"#ef4444\", foreground: \"#ffffff\" },\n info: { DEFAULT: \"#3b82f6\", foreground: \"#ffffff\" },\n surface: \"#18181b\",\n border: \"#27272a\",\n muted: \"#71717a\",\n subtle: \"#3f3f46\",\n },\n\n spacing: {\n 1: \"0.25rem\",\n 2: \"0.5rem\",\n 3: \"0.75rem\",\n 4: \"1rem\",\n 5: \"1.25rem\",\n 6: \"1.5rem\",\n 8: \"2rem\",\n 10: \"2.5rem\",\n 12: \"3rem\",\n 16: \"4rem\",\n },\n\n breakpoints: {\n sm: \"40rem\",\n md: \"48rem\",\n lg: \"64rem\",\n xl: \"80rem\",\n \"2xl\": \"96rem\",\n },\n\n fontWeight: {\n normal: \"400\",\n medium: \"500\",\n semibold: \"600\",\n bold: \"700\",\n },\n\n fontFamily: {\n sans: [\"InterVariable\", \"Inter\", \"system-ui\", \"sans-serif\"],\n mono: [\"JetBrains Mono\", \"Fira Code\", \"Consolas\", \"monospace\"],\n },\n\n borderRadius: {\n sm: \"0.25rem\",\n DEFAULT: \"0.5rem\",\n md: \"0.5rem\",\n lg: \"0.75rem\",\n xl: \"1rem\",\n \"2xl\": \"1.5rem\",\n full: \"9999px\",\n },\n\n animation: {\n \"fade-in\": \"fadeIn 0.2s ease-out\",\n \"fade-out\": \"fadeOut 0.2s ease-in\",\n \"slide-up\": \"slideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1)\",\n \"slide-down\": \"slideDown 0.3s cubic-bezier(0.16, 1, 0.3, 1)\",\n \"scale-in\": \"scaleIn 0.2s ease-out\",\n },\n\n keyframes: {\n fadeIn: { from: { opacity: \"0\" }, to: { opacity: \"1\" } },\n fadeOut: { from: { opacity: \"1\" }, to: { opacity: \"0\" } },\n slideUp: {\n from: { transform: \"translateY(8px)\", opacity: \"0\" },\n to: { transform: \"translateY(0)\", opacity: \"1\" },\n },\n slideDown: {\n from: { transform: \"translateY(-8px)\", opacity: \"0\" },\n to: { transform: \"translateY(0)\", opacity: \"1\" },\n },\n scaleIn: {\n from: { transform: \"scale(0.95)\", opacity: \"0\" },\n to: { transform: \"scale(1)\", opacity: \"1\" },\n },\n },\n} as const\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Default Tailwind Config — dipakai sebagai fallback + preset\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport const defaultPreset = {\n content: STANDARD_CONTENT_PATHS,\n\n darkMode: \"class\" as const,\n\n theme: {\n extend: {\n colors: designTokens.colors,\n fontFamily: designTokens.fontFamily,\n borderRadius: designTokens.borderRadius,\n animation: designTokens.animation,\n keyframes: designTokens.keyframes,\n },\n },\n\n plugins: [],\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Default Theme CSS — Tailwind v4 @theme block\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport const defaultThemeCss = `@import \"tailwindcss\";\n\n@theme {\n /* colors */\n --color-primary: #3b82f6;\n --color-primary-hover: #2563eb;\n --color-primary-active: #1d4ed8;\n --color-primary-foreground: #ffffff;\n --color-secondary: #6366f1;\n --color-secondary-hover: #4f46e5;\n --color-secondary-active: #4338ca;\n --color-secondary-foreground: #ffffff;\n --color-accent: #f59e0b;\n --color-accent-hover: #d97706;\n --color-accent-active: #b45309;\n --color-accent-foreground: #000000;\n --color-success: #10b981;\n --color-success-foreground: #ffffff;\n --color-warning: #f59e0b;\n --color-warning-foreground: #000000;\n --color-danger: #ef4444;\n --color-danger-foreground: #ffffff;\n --color-info: #3b82f6;\n --color-info-foreground: #ffffff;\n --color-surface: #18181b;\n --color-border: #27272a;\n --color-muted: #71717a;\n --color-subtle: #3f3f46;\n\n /* fonts */\n --font-sans: InterVariable, Inter, system-ui, sans-serif;\n --font-mono: JetBrains Mono, Fira Code, Consolas, monospace;\n\n /* spacing */\n --spacing-1: 0.25rem;\n --spacing-2: 0.5rem;\n --spacing-3: 0.75rem;\n --spacing-4: 1rem;\n --spacing-5: 1.25rem;\n --spacing-6: 1.5rem;\n --spacing-8: 2rem;\n --spacing-10: 2.5rem;\n --spacing-12: 3rem;\n --spacing-16: 4rem;\n\n /* breakpoints */\n --breakpoint-sm: 40rem;\n --breakpoint-md: 48rem;\n --breakpoint-lg: 64rem;\n --breakpoint-xl: 80rem;\n --breakpoint-2xl: 96rem;\n\n /* border radius */\n --radius-sm: 0.25rem;\n --radius-md: 0.5rem;\n --radius-lg: 0.75rem;\n --radius-xl: 1rem;\n --radius-2xl: 1.5rem;\n --radius-full: 9999px;\n\n /* animations */\n --animate-fade-in: fadeIn 0.2s ease-out;\n --animate-fade-out: fadeOut 0.2s ease-in;\n --animate-slide-up: slideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n --animate-slide-down: slideDown 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n --animate-scale-in: scaleIn 0.2s ease-out;\n}\n\n@keyframes fadeIn {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n@keyframes fadeOut {\n from { opacity: 1; }\n to { opacity: 0; }\n}\n@keyframes slideUp {\n from { transform: translateY(8px); opacity: 0; }\n to { transform: translateY(0); opacity: 1; }\n}\n@keyframes slideDown {\n from { transform: translateY(-8px); opacity: 0; }\n to { transform: translateY(0); opacity: 1; }\n}\n@keyframes scaleIn {\n from { transform: scale(0.95); opacity: 0; }\n to { transform: scale(1); opacity: 1; }\n}`\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Zero-config globals.css — tidak perlu @tailwind base dll\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport const defaultGlobalCss = `@import \"tailwindcss\";\n\n@theme {\n /* colors */\n --color-primary: #3b82f6;\n --color-primary-hover: #2563eb;\n --color-primary-active: #1d4ed8;\n --color-primary-foreground: #ffffff;\n --color-secondary: #6366f1;\n --color-secondary-hover: #4f46e5;\n --color-secondary-active: #4338ca;\n --color-secondary-foreground: #ffffff;\n --color-accent: #f59e0b;\n --color-accent-hover: #d97706;\n --color-accent-active: #b45309;\n --color-accent-foreground: #000000;\n --color-success: #10b981;\n --color-success-foreground: #ffffff;\n --color-warning: #f59e0b;\n --color-warning-foreground: #000000;\n --color-danger: #ef4444;\n --color-danger-foreground: #ffffff;\n --color-info: #3b82f6;\n --color-info-foreground: #ffffff;\n --color-surface: #18181b;\n --color-border: #27272a;\n --color-muted: #71717a;\n --color-subtle: #3f3f46;\n\n /* fonts */\n --font-sans: InterVariable, Inter, system-ui, sans-serif;\n --font-mono: JetBrains Mono, Fira Code, Consolas, monospace;\n\n /* spacing */\n --spacing-1: 0.25rem;\n --spacing-2: 0.5rem;\n --spacing-3: 0.75rem;\n --spacing-4: 1rem;\n --spacing-5: 1.25rem;\n --spacing-6: 1.5rem;\n --spacing-8: 2rem;\n --spacing-10: 2.5rem;\n --spacing-12: 3rem;\n --spacing-16: 4rem;\n\n /* breakpoints */\n --breakpoint-sm: 40rem;\n --breakpoint-md: 48rem;\n --breakpoint-lg: 64rem;\n --breakpoint-xl: 80rem;\n --breakpoint-2xl: 96rem;\n\n /* border radius */\n --radius-sm: 0.25rem;\n --radius-md: 0.5rem;\n --radius-lg: 0.75rem;\n --radius-xl: 1rem;\n --radius-2xl: 1.5rem;\n --radius-full: 9999px;\n\n /* animations */\n --animate-fade-in: fadeIn 0.2s ease-out;\n --animate-fade-out: fadeOut 0.2s ease-in;\n --animate-slide-up: slideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n --animate-slide-down: slideDown 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n --animate-scale-in: scaleIn 0.2s ease-out;\n}\n\n@keyframes fadeIn {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n@keyframes fadeOut {\n from { opacity: 1; }\n to { opacity: 0; }\n}\n@keyframes slideUp {\n from { transform: translateY(8px); opacity: 0; }\n to { transform: translateY(0); opacity: 1; }\n}\n@keyframes slideDown {\n from { transform: translateY(-8px); opacity: 0; }\n to { transform: translateY(0); opacity: 1; }\n}\n@keyframes scaleIn {\n from { transform: scale(0.95); opacity: 0; }\n to { transform: scale(1); opacity: 1; }\n}\n\n/* tailwind-styled-v4 — zero-config base styles */\n*, *::before, *::after {\n box-sizing: border-box;\n}\n\nhtml {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n}\n\nbody {\n margin: 0;\n font-family: var(--font-sans, system-ui, sans-serif);\n background: var(--color-surface, #18181b);\n color: var(--color-foreground, #fafafa);\n}\n`\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Zero-config Tailwind v4 CSS generator\n// Dipakai oleh CLI dan withTailwindStyled saat tidak ada user config\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport function generateTailwindCss(contentPaths = STANDARD_CONTENT_PATHS): string {\n return `@import \"tailwindcss\";\n\n@theme {\n /* colors */\n --color-primary: #3b82f6;\n --color-primary-hover: #2563eb;\n --color-primary-active: #1d4ed8;\n --color-primary-foreground: #ffffff;\n --color-secondary: #6366f1;\n --color-secondary-hover: #4f46e5;\n --color-secondary-active: #4338ca;\n --color-secondary-foreground: #ffffff;\n --color-accent: #f59e0b;\n --color-accent-hover: #d97706;\n --color-accent-active: #b45309;\n --color-accent-foreground: #000000;\n --color-success: #10b981;\n --color-success-foreground: #ffffff;\n --color-warning: #f59e0b;\n --color-warning-foreground: #000000;\n --color-danger: #ef4444;\n --color-danger-foreground: #ffffff;\n --color-info: #3b82f6;\n --color-info-foreground: #ffffff;\n --color-surface: #18181b;\n --color-border: #27272a;\n --color-muted: #71717a;\n --color-subtle: #3f3f46;\n\n /* fonts */\n --font-sans: InterVariable, Inter, system-ui, sans-serif;\n --font-mono: JetBrains Mono, Fira Code, Consolas, monospace;\n\n /* spacing */\n --spacing-1: 0.25rem;\n --spacing-2: 0.5rem;\n --spacing-3: 0.75rem;\n --spacing-4: 1rem;\n --spacing-5: 1.25rem;\n --spacing-6: 1.5rem;\n --spacing-8: 2rem;\n --spacing-10: 2.5rem;\n --spacing-12: 3rem;\n --spacing-16: 4rem;\n\n /* breakpoints */\n --breakpoint-sm: 40rem;\n --breakpoint-md: 48rem;\n --breakpoint-lg: 64rem;\n --breakpoint-xl: 80rem;\n --breakpoint-2xl: 96rem;\n\n /* border radius */\n --radius-sm: 0.25rem;\n --radius-md: 0.5rem;\n --radius-lg: 0.75rem;\n --radius-xl: 1rem;\n --radius-2xl: 1.5rem;\n --radius-full: 9999px;\n\n /* animations */\n --animate-fade-in: fadeIn 0.2s ease-out;\n --animate-fade-out: fadeOut 0.2s ease-in;\n --animate-slide-up: slideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n --animate-slide-down: slideDown 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n --animate-scale-in: scaleIn 0.2s ease-out;\n}\n\n@keyframes fadeIn {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n@keyframes fadeOut {\n from { opacity: 1; }\n to { opacity: 0; }\n}\n@keyframes slideUp {\n from { transform: translateY(8px); opacity: 0; }\n to { transform: translateY(0); opacity: 1; }\n}\n@keyframes slideDown {\n from { transform: translateY(-8px); opacity: 0; }\n to { transform: translateY(0); opacity: 1; }\n}\n@keyframes scaleIn {\n from { transform: scale(0.95); opacity: 0; }\n to { transform: scale(1); opacity: 1; }\n}\n\n@source ${contentPaths.join(\"\\n@source \")}\n`\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Zero-config tailwind.config.ts generator\n// DEPRECATED: Use generateTailwindCss for Tailwind v4 instead\n// Dipakai oleh CLI dan withTailwindStyled saat tidak ada user config\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport function generateTailwindConfig(\n safelistPath = \".tailwind-styled-safelist.json\",\n contentPaths = STANDARD_CONTENT_PATHS\n): string {\n return `import type { Config } from \"tailwindcss\"\nimport { defaultPreset } from \"tailwind-styled-v4/preset\"\n\n// Auto-generated safelist dari tailwind-styled-v4 compiler\nconst safelist = (() => {\n try { return require(${JSON.stringify(safelistPath)}) as string[] }\n catch { return [] }\n})()\n\nexport default {\n presets: [defaultPreset],\n content: ${JSON.stringify(contentPaths, null, 2)},\n safelist,\n} satisfies Config\n`\n}\n"]}
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- require('./chunk-Y5D3E72P.cjs');
4
- var compiler = require('@tailwind-styled/compiler');
5
-
6
- /* tailwind-styled-v4 v4 | MIT | https://github.com/dictionar32/tailwind-styled-v4 */
7
- function turbopackLoader(source, options = {}) {
8
- const parseBool = (val) => {
9
- if (typeof val === "boolean") return val;
10
- if (typeof val === "string") return val === "true";
11
- return false;
12
- };
13
- const addDataAttr = parseBool(options.addDataAttr);
14
- const autoClientBoundary = parseBool(options.autoClientBoundary);
15
- const hoist = parseBool(options.hoist);
16
- const directiveMatch = source.match(/^\s*"use (client|server)"\s*;?\s*\n/);
17
- const directive = directiveMatch ? `"use ${directiveMatch[1]}";
18
- ` : "";
19
- const output = compiler.runLoaderTransform({
20
- filepath: this.resourcePath,
21
- source,
22
- options: {
23
- addDataAttr,
24
- autoClientBoundary,
25
- hoist,
26
- // Preserve cv, cx, cn, etc — only tw.* is transformed
27
- preserveImports: true
28
- }
29
- });
30
- if (!directive) return output.code;
31
- const stripped = output.code.replace(/"use (client|server)"\s*;?\s*\n?/g, "");
32
- return directive + stripped;
33
- }
34
-
35
- module.exports = turbopackLoader;
36
- //# sourceMappingURL=turbopackLoader.cjs.map
37
- //# sourceMappingURL=turbopackLoader.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../next/src/turbopackLoader.ts"],"names":["runLoaderTransform"],"mappings":";;;;;;AAWe,SAAR,eAAA,CAEL,MAAA,EACA,OAAA,GAAyB,EAAC,EAClB;AACR,EAAA,MAAM,SAAA,GAAY,CAAC,GAAA,KAA+C;AAChE,IAAA,IAAI,OAAO,GAAA,KAAQ,SAAA,EAAW,OAAO,GAAA;AACrC,IAAA,IAAI,OAAO,GAAA,KAAQ,QAAA,EAAU,OAAO,GAAA,KAAQ,MAAA;AAC5C,IAAA,OAAO,KAAA;AAAA,EACT,CAAA;AAEA,EAAA,MAAM,WAAA,GAAc,SAAA,CAAU,OAAA,CAAQ,WAAW,CAAA;AACjD,EAAA,MAAM,kBAAA,GAAqB,SAAA,CAAU,OAAA,CAAQ,kBAAkB,CAAA;AAC/D,EAAA,MAAM,KAAA,GAAQ,SAAA,CAAU,OAAA,CAAQ,KAAK,CAAA;AAErC,EAAA,MAAM,cAAA,GAAiB,MAAA,CAAO,KAAA,CAAM,qCAAqC,CAAA;AACzE,EAAA,MAAM,SAAA,GAAY,cAAA,GAAiB,CAAA,KAAA,EAAQ,cAAA,CAAe,CAAC,CAAC,CAAA;AAAA,CAAA,GAAS,EAAA;AAErE,EAAA,MAAM,SAASA,2BAAA,CAAmB;AAAA,IAChC,UAAU,IAAA,CAAK,YAAA;AAAA,IACf,MAAA;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAA;AAAA,MACA,kBAAA;AAAA,MACA,KAAA;AAAA;AAAA,MAEA,eAAA,EAAiB;AAAA;AACnB,GACD,CAAA;AAED,EAAA,IAAI,CAAC,SAAA,EAAW,OAAO,MAAA,CAAO,IAAA;AAE9B,EAAA,MAAM,QAAA,GAAW,MAAA,CAAO,IAAA,CAAK,OAAA,CAAQ,qCAAqC,EAAE,CAAA;AAC5E,EAAA,OAAO,SAAA,GAAY,QAAA;AACrB","file":"turbopackLoader.cjs","sourcesContent":["/**\n * tailwind-styled-v4 - Turbopack Loader\n */\n\nimport type { LoaderOptions } from \"@tailwind-styled/compiler\"\nimport { runLoaderTransform } from \"@tailwind-styled/compiler\"\n\ninterface TurbopackContext {\n resourcePath: string\n}\n\nexport default function turbopackLoader(\n this: TurbopackContext,\n source: string,\n options: LoaderOptions = {}\n): string {\n const parseBool = (val: boolean | string | undefined): boolean => {\n if (typeof val === \"boolean\") return val\n if (typeof val === \"string\") return val === \"true\"\n return false\n }\n\n const addDataAttr = parseBool(options.addDataAttr)\n const autoClientBoundary = parseBool(options.autoClientBoundary)\n const hoist = parseBool(options.hoist)\n\n const directiveMatch = source.match(/^\\s*\"use (client|server)\"\\s*;?\\s*\\n/)\n const directive = directiveMatch ? `\"use ${directiveMatch[1]}\";\\n` : \"\"\n\n const output = runLoaderTransform({\n filepath: this.resourcePath,\n source,\n options: {\n addDataAttr,\n autoClientBoundary,\n hoist,\n // Preserve cv, cx, cn, etc — only tw.* is transformed\n preserveImports: true,\n },\n })\n\n if (!directive) return output.code\n\n const stripped = output.code.replace(/\"use (client|server)\"\\s*;?\\s*\\n?/g, \"\")\n return directive + stripped\n}\n"]}
@@ -1,12 +0,0 @@
1
- import { LoaderOptions } from '@tailwind-styled/compiler';
2
-
3
- /**
4
- * tailwind-styled-v4 - Turbopack Loader
5
- */
6
-
7
- interface TurbopackContext {
8
- resourcePath: string;
9
- }
10
- declare function turbopackLoader(this: TurbopackContext, source: string, options?: LoaderOptions): string;
11
-
12
- export { turbopackLoader as default };
@@ -1,12 +0,0 @@
1
- import { LoaderOptions } from '@tailwind-styled/compiler';
2
-
3
- /**
4
- * tailwind-styled-v4 - Turbopack Loader
5
- */
6
-
7
- interface TurbopackContext {
8
- resourcePath: string;
9
- }
10
- declare function turbopackLoader(this: TurbopackContext, source: string, options?: LoaderOptions): string;
11
-
12
- export { turbopackLoader as default };
@@ -1,35 +0,0 @@
1
- import './chunk-VZEJV27B.js';
2
- import { runLoaderTransform } from '@tailwind-styled/compiler';
3
-
4
- /* tailwind-styled-v4 v4 | MIT | https://github.com/dictionar32/tailwind-styled-v4 */
5
- function turbopackLoader(source, options = {}) {
6
- const parseBool = (val) => {
7
- if (typeof val === "boolean") return val;
8
- if (typeof val === "string") return val === "true";
9
- return false;
10
- };
11
- const addDataAttr = parseBool(options.addDataAttr);
12
- const autoClientBoundary = parseBool(options.autoClientBoundary);
13
- const hoist = parseBool(options.hoist);
14
- const directiveMatch = source.match(/^\s*"use (client|server)"\s*;?\s*\n/);
15
- const directive = directiveMatch ? `"use ${directiveMatch[1]}";
16
- ` : "";
17
- const output = runLoaderTransform({
18
- filepath: this.resourcePath,
19
- source,
20
- options: {
21
- addDataAttr,
22
- autoClientBoundary,
23
- hoist,
24
- // Preserve cv, cx, cn, etc — only tw.* is transformed
25
- preserveImports: true
26
- }
27
- });
28
- if (!directive) return output.code;
29
- const stripped = output.code.replace(/"use (client|server)"\s*;?\s*\n?/g, "");
30
- return directive + stripped;
31
- }
32
-
33
- export { turbopackLoader as default };
34
- //# sourceMappingURL=turbopackLoader.js.map
35
- //# sourceMappingURL=turbopackLoader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../next/src/turbopackLoader.ts"],"names":[],"mappings":";;;;AAWe,SAAR,eAAA,CAEL,MAAA,EACA,OAAA,GAAyB,EAAC,EAClB;AACR,EAAA,MAAM,SAAA,GAAY,CAAC,GAAA,KAA+C;AAChE,IAAA,IAAI,OAAO,GAAA,KAAQ,SAAA,EAAW,OAAO,GAAA;AACrC,IAAA,IAAI,OAAO,GAAA,KAAQ,QAAA,EAAU,OAAO,GAAA,KAAQ,MAAA;AAC5C,IAAA,OAAO,KAAA;AAAA,EACT,CAAA;AAEA,EAAA,MAAM,WAAA,GAAc,SAAA,CAAU,OAAA,CAAQ,WAAW,CAAA;AACjD,EAAA,MAAM,kBAAA,GAAqB,SAAA,CAAU,OAAA,CAAQ,kBAAkB,CAAA;AAC/D,EAAA,MAAM,KAAA,GAAQ,SAAA,CAAU,OAAA,CAAQ,KAAK,CAAA;AAErC,EAAA,MAAM,cAAA,GAAiB,MAAA,CAAO,KAAA,CAAM,qCAAqC,CAAA;AACzE,EAAA,MAAM,SAAA,GAAY,cAAA,GAAiB,CAAA,KAAA,EAAQ,cAAA,CAAe,CAAC,CAAC,CAAA;AAAA,CAAA,GAAS,EAAA;AAErE,EAAA,MAAM,SAAS,kBAAA,CAAmB;AAAA,IAChC,UAAU,IAAA,CAAK,YAAA;AAAA,IACf,MAAA;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAA;AAAA,MACA,kBAAA;AAAA,MACA,KAAA;AAAA;AAAA,MAEA,eAAA,EAAiB;AAAA;AACnB,GACD,CAAA;AAED,EAAA,IAAI,CAAC,SAAA,EAAW,OAAO,MAAA,CAAO,IAAA;AAE9B,EAAA,MAAM,QAAA,GAAW,MAAA,CAAO,IAAA,CAAK,OAAA,CAAQ,qCAAqC,EAAE,CAAA;AAC5E,EAAA,OAAO,SAAA,GAAY,QAAA;AACrB","file":"turbopackLoader.js","sourcesContent":["/**\n * tailwind-styled-v4 - Turbopack Loader\n */\n\nimport type { LoaderOptions } from \"@tailwind-styled/compiler\"\nimport { runLoaderTransform } from \"@tailwind-styled/compiler\"\n\ninterface TurbopackContext {\n resourcePath: string\n}\n\nexport default function turbopackLoader(\n this: TurbopackContext,\n source: string,\n options: LoaderOptions = {}\n): string {\n const parseBool = (val: boolean | string | undefined): boolean => {\n if (typeof val === \"boolean\") return val\n if (typeof val === \"string\") return val === \"true\"\n return false\n }\n\n const addDataAttr = parseBool(options.addDataAttr)\n const autoClientBoundary = parseBool(options.autoClientBoundary)\n const hoist = parseBool(options.hoist)\n\n const directiveMatch = source.match(/^\\s*\"use (client|server)\"\\s*;?\\s*\\n/)\n const directive = directiveMatch ? `\"use ${directiveMatch[1]}\";\\n` : \"\"\n\n const output = runLoaderTransform({\n filepath: this.resourcePath,\n source,\n options: {\n addDataAttr,\n autoClientBoundary,\n hoist,\n // Preserve cv, cx, cn, etc — only tw.* is transformed\n preserveImports: true,\n },\n })\n\n if (!directive) return output.code\n\n const stripped = output.code.replace(/\"use (client|server)\"\\s*;?\\s*\\n?/g, \"\")\n return directive + stripped\n}\n"]}
package/dist/vite.cjs DELETED
@@ -1,138 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('./chunk-Y5D3E72P.cjs');
6
- var fs = require('fs');
7
- var path = require('path');
8
- var compiler = require('@tailwind-styled/compiler');
9
- var engine = require('@tailwind-styled/engine');
10
- var scanner = require('@tailwind-styled/scanner');
11
-
12
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
13
-
14
- var fs__default = /*#__PURE__*/_interopDefault(fs);
15
- var path__default = /*#__PURE__*/_interopDefault(path);
16
-
17
- /* tailwind-styled-v4 v4 | MIT | https://github.com/dictionar32/tailwind-styled-v4 */
18
- function warnDeprecated(options, key, message) {
19
- if (options[key] !== void 0) {
20
- console.warn(`[tailwind-styled-v4] Warning: '${key}' is deprecated in v5. ${message}`);
21
- }
22
- }
23
- function tailwindStyledPlugin(opts = {}) {
24
- warnDeprecated(opts, "mode", "Only zero-runtime is supported.");
25
- warnDeprecated(opts, "routeCss", "Use engine's analyzing capabilities.");
26
- warnDeprecated(opts, "deadStyleElimination", "Use 'analyze: true' option instead.");
27
- warnDeprecated(opts, "addDataAttr", "Handled by engine internally.");
28
- warnDeprecated(opts, "autoClientBoundary", "Handled by engine internally.");
29
- warnDeprecated(opts, "hoist", "Handled by engine internally.");
30
- warnDeprecated(opts, "incremental", "Handled by engine internally.");
31
- const {
32
- include = /\.(tsx|ts|jsx|js)$/,
33
- exclude = /node_modules/,
34
- scanDirs = ["src"],
35
- safelistOutput = ".tailwind-styled-safelist.json",
36
- scanReportOutput = ".tailwind-styled-scan-report.json",
37
- generateSafelist: doSafelist = true,
38
- useEngineBuild = true,
39
- analyze = false,
40
- strict = false
41
- } = opts;
42
- let root = process.cwd();
43
- let isDev = true;
44
- return {
45
- name: "tailwind-styled-v4",
46
- enforce: "pre",
47
- configResolved(config) {
48
- root = config.root;
49
- isDev = config.command === "serve";
50
- },
51
- transform(source, id) {
52
- const filepath = id.split("?")[0];
53
- if (!include.test(filepath)) return null;
54
- if (exclude.test(filepath)) return null;
55
- const loaderOptions = {
56
- // v5: Always zero-runtime (mode is deprecated)
57
- mode: "zero-runtime",
58
- addDataAttr: isDev,
59
- filename: filepath,
60
- // Preserve cv, cx, cn, etc — only tw.* is transformed
61
- preserveImports: true
62
- };
63
- const output = compiler.runLoaderTransform({
64
- filepath,
65
- source,
66
- options: loaderOptions,
67
- isDev
68
- });
69
- if (!output.changed) return null;
70
- return { code: output.code, map: null };
71
- },
72
- async buildEnd() {
73
- if (isDev) return;
74
- if (doSafelist) {
75
- try {
76
- compiler.generateSafelist(
77
- scanDirs.map((d) => path__default.default.resolve(root, d)),
78
- path__default.default.resolve(root, safelistOutput),
79
- root
80
- );
81
- } catch (e) {
82
- console.warn("[tailwind-styled-v4] Safelist generation failed:", e);
83
- }
84
- }
85
- try {
86
- const report = await scanner.scanWorkspaceAsync(root);
87
- const reportPath = path__default.default.resolve(root, scanReportOutput);
88
- fs__default.default.writeFileSync(
89
- reportPath,
90
- JSON.stringify(
91
- {
92
- root,
93
- totalFiles: report.totalFiles,
94
- uniqueClassCount: report.uniqueClasses.length
95
- },
96
- null,
97
- 2
98
- ) + "\n"
99
- );
100
- } catch (e) {
101
- console.warn("[tailwind-styled-v4] Scan report generation failed:", e);
102
- }
103
- if (useEngineBuild) {
104
- try {
105
- const engine$1 = await engine.createEngine({
106
- root,
107
- compileCss: true,
108
- analyze,
109
- scanner: {
110
- includeExtensions: [".tsx", ".ts", ".jsx", ".js"],
111
- ignoreDirectories: scanDirs
112
- }
113
- });
114
- await engine$1.build();
115
- console.log("[tailwind-styled-v4] \u2713 Engine build complete");
116
- } catch (e) {
117
- const msg = `[tailwind-styled-v4] Engine build step failed: ${e}`;
118
- if (strict) {
119
- throw new Error(msg);
120
- } else {
121
- console.warn(msg);
122
- }
123
- }
124
- }
125
- },
126
- handleHotUpdate({ file, server }) {
127
- if (include.test(file) && !exclude.test(file)) {
128
- server.ws.send({ type: "full-reload" });
129
- }
130
- }
131
- };
132
- }
133
- var plugin_default = tailwindStyledPlugin;
134
-
135
- exports.default = plugin_default;
136
- exports.tailwindStyledPlugin = tailwindStyledPlugin;
137
- //# sourceMappingURL=vite.cjs.map
138
- //# sourceMappingURL=vite.cjs.map
package/dist/vite.cjs.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../vite/src/plugin.ts"],"names":["runLoaderTransform","generateSafelist","path","scanWorkspaceAsync","fs","engine","createEngine"],"mappings":"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","file":"vite.cjs","sourcesContent":["/**\n * tailwind-styled-v4 — Vite Plugin v5\n *\n * Usage in vite.config.ts:\n * import { tailwindStyledPlugin } from \"@tailwind-styled/vite\"\n * export default defineConfig({\n * plugins: [react(), tailwindStyledPlugin()]\n * })\n *\n * v5 Changes:\n * - Simplified API (removed deprecated options)\n * - Uses @tailwind-styled/engine for build\n * - Mode always zero-runtime\n */\n\nimport fs from \"node:fs\"\nimport path from \"node:path\"\n\nimport type { LoaderOptions, TransformOptions } from \"@tailwind-styled/compiler\"\nimport { generateSafelist, runLoaderTransform } from \"@tailwind-styled/compiler\"\nimport { createEngine } from \"@tailwind-styled/engine\"\nimport { scanWorkspaceAsync } from \"@tailwind-styled/scanner\"\n\nexport interface VitePluginOptions {\n /** File patterns to include. Default: /\\.(tsx|ts|jsx|js)$/ */\n include?: RegExp\n /** File patterns to exclude. Default: /node_modules/ */\n exclude?: RegExp\n /** Directories to scan. Default: [\"src\"] */\n scanDirs?: string[]\n /** Safelist output path. Default: \".tailwind-styled-safelist.json\" */\n safelistOutput?: string\n /** Generate safelist at build end. Default: true */\n generateSafelist?: boolean\n /** Scan report output path. Default: \".tailwind-styled-scan-report.json\" */\n scanReportOutput?: string\n /** Run engine build at build end. Default: true */\n useEngineBuild?: boolean\n /** Enable analyzer for semantic reports. Default: false */\n analyze?: boolean\n /** Throw error on engine build failure. If true, error will abort Vite build (useful for CI/CD). If false (default), error only shows console.warn. Default: false */\n strict?: boolean\n\n /** @deprecated in v5 - mode is always \"zero-runtime\" */\n mode?: \"zero-runtime\" | \"runtime\"\n /** @deprecated in v5 - handled by engine */\n routeCss?: boolean\n /** @deprecated in v5 - handled by engine with analyze: true */\n deadStyleElimination?: boolean\n /** @deprecated in v5 - no longer used */\n addDataAttr?: boolean\n /** @deprecated in v5 - no longer used */\n autoClientBoundary?: boolean\n /** @deprecated in v5 - no longer used */\n hoist?: boolean\n /** @deprecated in v5 - no longer used */\n incremental?: boolean\n}\n\nfunction warnDeprecated(options: VitePluginOptions, key: keyof VitePluginOptions, message: string) {\n if (options[key] !== undefined) {\n console.warn(`[tailwind-styled-v4] Warning: '${key}' is deprecated in v5. ${message}`)\n }\n}\n\nexport function tailwindStyledPlugin(opts: VitePluginOptions = {}): any {\n warnDeprecated(opts, \"mode\", \"Only zero-runtime is supported.\")\n warnDeprecated(opts, \"routeCss\", \"Use engine's analyzing capabilities.\")\n warnDeprecated(opts, \"deadStyleElimination\", \"Use 'analyze: true' option instead.\")\n warnDeprecated(opts, \"addDataAttr\", \"Handled by engine internally.\")\n warnDeprecated(opts, \"autoClientBoundary\", \"Handled by engine internally.\")\n warnDeprecated(opts, \"hoist\", \"Handled by engine internally.\")\n warnDeprecated(opts, \"incremental\", \"Handled by engine internally.\")\n\n const {\n include = /\\.(tsx|ts|jsx|js)$/,\n exclude = /node_modules/,\n scanDirs = [\"src\"],\n safelistOutput = \".tailwind-styled-safelist.json\",\n scanReportOutput = \".tailwind-styled-scan-report.json\",\n generateSafelist: doSafelist = true,\n useEngineBuild = true,\n analyze = false,\n strict = false,\n } = opts\n\n let root = process.cwd()\n let isDev = true\n\n return {\n name: \"tailwind-styled-v4\",\n enforce: \"pre\" as const,\n\n configResolved(config: any) {\n root = config.root\n isDev = config.command === \"serve\"\n },\n\n transform(source: string, id: string) {\n const filepath = id.split(\"?\")[0]\n if (!include.test(filepath)) return null\n if (exclude.test(filepath)) return null\n\n const loaderOptions: LoaderOptions = {\n // v5: Always zero-runtime (mode is deprecated)\n mode: \"zero-runtime\",\n addDataAttr: isDev,\n filename: filepath,\n // Preserve cv, cx, cn, etc — only tw.* is transformed\n preserveImports: true,\n }\n\n const output = runLoaderTransform({\n filepath,\n source,\n options: loaderOptions,\n isDev,\n })\n\n if (!output.changed) return null\n return { code: output.code, map: null }\n },\n\n async buildEnd() {\n if (isDev) return\n\n if (doSafelist) {\n try {\n generateSafelist(\n scanDirs.map((d) => path.resolve(root, d)),\n path.resolve(root, safelistOutput),\n root\n )\n } catch (e) {\n console.warn(\"[tailwind-styled-v4] Safelist generation failed:\", e)\n }\n }\n\n try {\n const report = await scanWorkspaceAsync(root)\n const reportPath = path.resolve(root, scanReportOutput)\n fs.writeFileSync(\n reportPath,\n JSON.stringify(\n {\n root,\n totalFiles: report.totalFiles,\n uniqueClassCount: report.uniqueClasses.length,\n },\n null,\n 2\n ) + \"\\n\"\n )\n } catch (e) {\n console.warn(\"[tailwind-styled-v4] Scan report generation failed:\", e)\n }\n\n if (useEngineBuild) {\n try {\n const engine = await createEngine({\n root,\n compileCss: true,\n analyze,\n scanner: {\n includeExtensions: [\".tsx\", \".ts\", \".jsx\", \".js\"],\n ignoreDirectories: scanDirs,\n },\n })\n await engine.build()\n console.log(\"[tailwind-styled-v4] ✓ Engine build complete\")\n } catch (e) {\n const msg = `[tailwind-styled-v4] Engine build step failed: ${e}`\n if (strict) {\n throw new Error(msg)\n } else {\n console.warn(msg)\n }\n }\n }\n },\n\n handleHotUpdate({ file, server }: any) {\n if (include.test(file) && !exclude.test(file)) {\n server.ws.send({ type: \"full-reload\" })\n }\n },\n }\n}\n\nexport default tailwindStyledPlugin\n"]}
@@ -1,51 +0,0 @@
1
- 'use strict';
2
-
3
- require('./chunk-Y5D3E72P.cjs');
4
- var compiler = require('@tailwind-styled/compiler');
5
-
6
- /* tailwind-styled-v4 v4 | MIT | https://github.com/dictionar32/tailwind-styled-v4 */
7
- function webpackLoader(source) {
8
- const callback = this.async();
9
- const filepath = this.resourcePath;
10
- if (compiler.shouldSkipFile(filepath) || filepath.includes(".next")) {
11
- callback(null, source);
12
- return;
13
- }
14
- try {
15
- const options = this.getOptions();
16
- const output = compiler.runLoaderTransform({
17
- filepath,
18
- source,
19
- options: {
20
- mode: options.mode,
21
- autoClientBoundary: options.autoClientBoundary ?? true,
22
- addDataAttr: options.addDataAttr,
23
- hoist: options.hoist,
24
- filename: filepath,
25
- routeCss: options.routeCss,
26
- incremental: options.incremental,
27
- verbose: options.verbose,
28
- // Preserve cv, cx, cn, etc — only tw.* is transformed
29
- preserveImports: true
30
- }
31
- });
32
- if (options.verbose && output.changed) {
33
- const env = output.rsc?.isServer ? "server" : "client";
34
- const engine = output.engine ?? "js";
35
- const name = filepath.split(/[/\\]/).pop();
36
- console.log(
37
- `[tailwind-styled/webpack] ${name} \u2192 ${output.classes.length} classes (${env}) [${engine}]`
38
- );
39
- }
40
- callback(null, output.code);
41
- } catch (err) {
42
- if (process.env.NODE_ENV !== "production") {
43
- console.warn(`[tailwind-styled-v4] Webpack transform failed for ${filepath}:`, err);
44
- }
45
- callback(null, source);
46
- }
47
- }
48
-
49
- module.exports = webpackLoader;
50
- //# sourceMappingURL=webpackLoader.cjs.map
51
- //# sourceMappingURL=webpackLoader.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../next/src/webpackLoader.ts"],"names":["shouldSkipFile","runLoaderTransform"],"mappings":";;;;;;AAiBe,SAAR,cAAqD,MAAA,EAAsB;AAChF,EAAA,MAAM,QAAA,GAAW,KAAK,KAAA,EAAM;AAC5B,EAAA,MAAM,WAAW,IAAA,CAAK,YAAA;AAEtB,EAAA,IAAIA,wBAAe,QAAQ,CAAA,IAAK,QAAA,CAAS,QAAA,CAAS,OAAO,CAAA,EAAG;AAC1D,IAAA,QAAA,CAAS,MAAM,MAAM,CAAA;AACrB,IAAA;AAAA,EACF;AAEA,EAAA,IAAI;AACF,IAAA,MAAM,OAAA,GAAU,KAAK,UAAA,EAAW;AAEhC,IAAA,MAAM,SAASC,2BAAA,CAAmB;AAAA,MAChC,QAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA,EAAS;AAAA,QACP,MAAM,OAAA,CAAQ,IAAA;AAAA,QACd,kBAAA,EAAoB,QAAQ,kBAAA,IAAsB,IAAA;AAAA,QAClD,aAAa,OAAA,CAAQ,WAAA;AAAA,QACrB,OAAO,OAAA,CAAQ,KAAA;AAAA,QACf,QAAA,EAAU,QAAA;AAAA,QACV,UAAU,OAAA,CAAQ,QAAA;AAAA,QAClB,aAAa,OAAA,CAAQ,WAAA;AAAA,QACrB,SAAS,OAAA,CAAQ,OAAA;AAAA;AAAA,QAEjB,eAAA,EAAiB;AAAA;AACnB,KACD,CAAA;AAED,IAAA,IAAI,OAAA,CAAQ,OAAA,IAAW,MAAA,CAAO,OAAA,EAAS;AACrC,MAAA,MAAM,GAAA,GAAM,MAAA,CAAO,GAAA,EAAK,QAAA,GAAW,QAAA,GAAW,QAAA;AAC9C,MAAA,MAAM,MAAA,GAAS,OAAO,MAAA,IAAU,IAAA;AAChC,MAAA,MAAM,IAAA,GAAO,QAAA,CAAS,KAAA,CAAM,OAAO,EAAE,GAAA,EAAI;AACzC,MAAA,OAAA,CAAQ,GAAA;AAAA,QACN,CAAA,0BAAA,EAA6B,IAAI,CAAA,QAAA,EAAM,MAAA,CAAO,QAAQ,MAAM,CAAA,UAAA,EAAa,GAAG,CAAA,GAAA,EAAM,MAAM,CAAA,CAAA;AAAA,OAC1F;AAAA,IACF;AAEA,IAAA,QAAA,CAAS,IAAA,EAAM,OAAO,IAAI,CAAA;AAAA,EAC5B,SAAS,GAAA,EAAK;AACZ,IAAA,IAAI,OAAA,CAAQ,GAAA,CAAI,QAAA,KAAa,YAAA,EAAc;AACzC,MAAA,OAAA,CAAQ,IAAA,CAAK,CAAA,kDAAA,EAAqD,QAAQ,CAAA,CAAA,CAAA,EAAK,GAAG,CAAA;AAAA,IACpF;AACA,IAAA,QAAA,CAAS,MAAM,MAAM,CAAA;AAAA,EACvB;AACF","file":"webpackLoader.cjs","sourcesContent":["/**\n * tailwind-styled-v4 — Webpack Loader\n */\n\nimport type { LoaderOptions } from \"@tailwind-styled/compiler\"\nimport { runLoaderTransform, shouldSkipFile } from \"@tailwind-styled/compiler\"\n\ninterface WebpackLoaderOptions extends LoaderOptions {\n autoClientBoundary?: boolean\n}\n\ninterface WebpackContext {\n resourcePath: string\n getOptions(): WebpackLoaderOptions\n async(): (err: Error | null, result?: string) => void\n}\n\nexport default function webpackLoader(this: WebpackContext, source: string): void {\n const callback = this.async()\n const filepath = this.resourcePath\n\n if (shouldSkipFile(filepath) || filepath.includes(\".next\")) {\n callback(null, source)\n return\n }\n\n try {\n const options = this.getOptions()\n\n const output = runLoaderTransform({\n filepath,\n source,\n options: {\n mode: options.mode,\n autoClientBoundary: options.autoClientBoundary ?? true,\n addDataAttr: options.addDataAttr,\n hoist: options.hoist,\n filename: filepath,\n routeCss: options.routeCss,\n incremental: options.incremental,\n verbose: options.verbose,\n // Preserve cv, cx, cn, etc — only tw.* is transformed\n preserveImports: true,\n },\n })\n\n if (options.verbose && output.changed) {\n const env = output.rsc?.isServer ? \"server\" : \"client\"\n const engine = output.engine ?? \"js\"\n const name = filepath.split(/[/\\\\]/).pop()\n console.log(\n `[tailwind-styled/webpack] ${name} → ${output.classes.length} classes (${env}) [${engine}]`\n )\n }\n\n callback(null, output.code)\n } catch (err) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(`[tailwind-styled-v4] Webpack transform failed for ${filepath}:`, err)\n }\n callback(null, source)\n }\n}\n"]}
@@ -1,17 +0,0 @@
1
- import { LoaderOptions } from '@tailwind-styled/compiler';
2
-
3
- /**
4
- * tailwind-styled-v4 — Webpack Loader
5
- */
6
-
7
- interface WebpackLoaderOptions extends LoaderOptions {
8
- autoClientBoundary?: boolean;
9
- }
10
- interface WebpackContext {
11
- resourcePath: string;
12
- getOptions(): WebpackLoaderOptions;
13
- async(): (err: Error | null, result?: string) => void;
14
- }
15
- declare function webpackLoader(this: WebpackContext, source: string): void;
16
-
17
- export { webpackLoader as default };
@@ -1,17 +0,0 @@
1
- import { LoaderOptions } from '@tailwind-styled/compiler';
2
-
3
- /**
4
- * tailwind-styled-v4 — Webpack Loader
5
- */
6
-
7
- interface WebpackLoaderOptions extends LoaderOptions {
8
- autoClientBoundary?: boolean;
9
- }
10
- interface WebpackContext {
11
- resourcePath: string;
12
- getOptions(): WebpackLoaderOptions;
13
- async(): (err: Error | null, result?: string) => void;
14
- }
15
- declare function webpackLoader(this: WebpackContext, source: string): void;
16
-
17
- export { webpackLoader as default };
@@ -1,49 +0,0 @@
1
- import './chunk-VZEJV27B.js';
2
- import { shouldSkipFile, runLoaderTransform } from '@tailwind-styled/compiler';
3
-
4
- /* tailwind-styled-v4 v4 | MIT | https://github.com/dictionar32/tailwind-styled-v4 */
5
- function webpackLoader(source) {
6
- const callback = this.async();
7
- const filepath = this.resourcePath;
8
- if (shouldSkipFile(filepath) || filepath.includes(".next")) {
9
- callback(null, source);
10
- return;
11
- }
12
- try {
13
- const options = this.getOptions();
14
- const output = runLoaderTransform({
15
- filepath,
16
- source,
17
- options: {
18
- mode: options.mode,
19
- autoClientBoundary: options.autoClientBoundary ?? true,
20
- addDataAttr: options.addDataAttr,
21
- hoist: options.hoist,
22
- filename: filepath,
23
- routeCss: options.routeCss,
24
- incremental: options.incremental,
25
- verbose: options.verbose,
26
- // Preserve cv, cx, cn, etc — only tw.* is transformed
27
- preserveImports: true
28
- }
29
- });
30
- if (options.verbose && output.changed) {
31
- const env = output.rsc?.isServer ? "server" : "client";
32
- const engine = output.engine ?? "js";
33
- const name = filepath.split(/[/\\]/).pop();
34
- console.log(
35
- `[tailwind-styled/webpack] ${name} \u2192 ${output.classes.length} classes (${env}) [${engine}]`
36
- );
37
- }
38
- callback(null, output.code);
39
- } catch (err) {
40
- if (process.env.NODE_ENV !== "production") {
41
- console.warn(`[tailwind-styled-v4] Webpack transform failed for ${filepath}:`, err);
42
- }
43
- callback(null, source);
44
- }
45
- }
46
-
47
- export { webpackLoader as default };
48
- //# sourceMappingURL=webpackLoader.js.map
49
- //# sourceMappingURL=webpackLoader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../next/src/webpackLoader.ts"],"names":[],"mappings":";;;;AAiBe,SAAR,cAAqD,MAAA,EAAsB;AAChF,EAAA,MAAM,QAAA,GAAW,KAAK,KAAA,EAAM;AAC5B,EAAA,MAAM,WAAW,IAAA,CAAK,YAAA;AAEtB,EAAA,IAAI,eAAe,QAAQ,CAAA,IAAK,QAAA,CAAS,QAAA,CAAS,OAAO,CAAA,EAAG;AAC1D,IAAA,QAAA,CAAS,MAAM,MAAM,CAAA;AACrB,IAAA;AAAA,EACF;AAEA,EAAA,IAAI;AACF,IAAA,MAAM,OAAA,GAAU,KAAK,UAAA,EAAW;AAEhC,IAAA,MAAM,SAAS,kBAAA,CAAmB;AAAA,MAChC,QAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA,EAAS;AAAA,QACP,MAAM,OAAA,CAAQ,IAAA;AAAA,QACd,kBAAA,EAAoB,QAAQ,kBAAA,IAAsB,IAAA;AAAA,QAClD,aAAa,OAAA,CAAQ,WAAA;AAAA,QACrB,OAAO,OAAA,CAAQ,KAAA;AAAA,QACf,QAAA,EAAU,QAAA;AAAA,QACV,UAAU,OAAA,CAAQ,QAAA;AAAA,QAClB,aAAa,OAAA,CAAQ,WAAA;AAAA,QACrB,SAAS,OAAA,CAAQ,OAAA;AAAA;AAAA,QAEjB,eAAA,EAAiB;AAAA;AACnB,KACD,CAAA;AAED,IAAA,IAAI,OAAA,CAAQ,OAAA,IAAW,MAAA,CAAO,OAAA,EAAS;AACrC,MAAA,MAAM,GAAA,GAAM,MAAA,CAAO,GAAA,EAAK,QAAA,GAAW,QAAA,GAAW,QAAA;AAC9C,MAAA,MAAM,MAAA,GAAS,OAAO,MAAA,IAAU,IAAA;AAChC,MAAA,MAAM,IAAA,GAAO,QAAA,CAAS,KAAA,CAAM,OAAO,EAAE,GAAA,EAAI;AACzC,MAAA,OAAA,CAAQ,GAAA;AAAA,QACN,CAAA,0BAAA,EAA6B,IAAI,CAAA,QAAA,EAAM,MAAA,CAAO,QAAQ,MAAM,CAAA,UAAA,EAAa,GAAG,CAAA,GAAA,EAAM,MAAM,CAAA,CAAA;AAAA,OAC1F;AAAA,IACF;AAEA,IAAA,QAAA,CAAS,IAAA,EAAM,OAAO,IAAI,CAAA;AAAA,EAC5B,SAAS,GAAA,EAAK;AACZ,IAAA,IAAI,OAAA,CAAQ,GAAA,CAAI,QAAA,KAAa,YAAA,EAAc;AACzC,MAAA,OAAA,CAAQ,IAAA,CAAK,CAAA,kDAAA,EAAqD,QAAQ,CAAA,CAAA,CAAA,EAAK,GAAG,CAAA;AAAA,IACpF;AACA,IAAA,QAAA,CAAS,MAAM,MAAM,CAAA;AAAA,EACvB;AACF","file":"webpackLoader.js","sourcesContent":["/**\n * tailwind-styled-v4 — Webpack Loader\n */\n\nimport type { LoaderOptions } from \"@tailwind-styled/compiler\"\nimport { runLoaderTransform, shouldSkipFile } from \"@tailwind-styled/compiler\"\n\ninterface WebpackLoaderOptions extends LoaderOptions {\n autoClientBoundary?: boolean\n}\n\ninterface WebpackContext {\n resourcePath: string\n getOptions(): WebpackLoaderOptions\n async(): (err: Error | null, result?: string) => void\n}\n\nexport default function webpackLoader(this: WebpackContext, source: string): void {\n const callback = this.async()\n const filepath = this.resourcePath\n\n if (shouldSkipFile(filepath) || filepath.includes(\".next\")) {\n callback(null, source)\n return\n }\n\n try {\n const options = this.getOptions()\n\n const output = runLoaderTransform({\n filepath,\n source,\n options: {\n mode: options.mode,\n autoClientBoundary: options.autoClientBoundary ?? true,\n addDataAttr: options.addDataAttr,\n hoist: options.hoist,\n filename: filepath,\n routeCss: options.routeCss,\n incremental: options.incremental,\n verbose: options.verbose,\n // Preserve cv, cx, cn, etc — only tw.* is transformed\n preserveImports: true,\n },\n })\n\n if (options.verbose && output.changed) {\n const env = output.rsc?.isServer ? \"server\" : \"client\"\n const engine = output.engine ?? \"js\"\n const name = filepath.split(/[/\\\\]/).pop()\n console.log(\n `[tailwind-styled/webpack] ${name} → ${output.classes.length} classes (${env}) [${engine}]`\n )\n }\n\n callback(null, output.code)\n } catch (err) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(`[tailwind-styled-v4] Webpack transform failed for ${filepath}:`, err)\n }\n callback(null, source)\n }\n}\n"]}
File without changes
File without changes
File without changes