@maizzle/framework 6.0.0-rc.1 → 6.0.0-rc.11

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 (347) hide show
  1. package/bin/maizzle.mjs +1 -1
  2. package/dist/_virtual/_rolldown/runtime.mjs +32 -0
  3. package/dist/build.mjs +6 -3
  4. package/dist/build.mjs.map +1 -1
  5. package/dist/components/Body.vue +111 -0
  6. package/dist/components/Button.vue +68 -14
  7. package/dist/components/CodeBlock.vue +68 -0
  8. package/dist/components/CodeInline.vue +49 -0
  9. package/dist/components/Column.vue +78 -0
  10. package/dist/components/Container.vue +53 -0
  11. package/dist/components/Divider.vue +28 -0
  12. package/dist/components/Head.vue +30 -0
  13. package/dist/components/Heading.vue +28 -0
  14. package/dist/components/Html.vue +104 -0
  15. package/dist/components/Img.vue +70 -0
  16. package/dist/components/Layout.vue +93 -0
  17. package/dist/components/Link.vue +26 -0
  18. package/dist/components/Markdown.vue +89 -0
  19. package/dist/components/Outlook.vue +36 -0
  20. package/dist/components/Overlap.vue +84 -0
  21. package/dist/components/Preheader.vue +20 -0
  22. package/dist/components/Row.vue +91 -0
  23. package/dist/components/Section.vue +83 -0
  24. package/dist/components/Spacer.vue +50 -7
  25. package/dist/components/Text.vue +29 -0
  26. package/dist/components/Vml.vue +165 -13
  27. package/dist/composables/renderContext.d.mts +5 -0
  28. package/dist/composables/renderContext.d.mts.map +1 -1
  29. package/dist/composables/renderContext.mjs.map +1 -1
  30. package/dist/composables/usePreheader.d.mts +24 -0
  31. package/dist/composables/usePreheader.d.mts.map +1 -0
  32. package/dist/composables/usePreheader.mjs +29 -0
  33. package/dist/composables/usePreheader.mjs.map +1 -0
  34. package/dist/config/defaults.mjs +1 -3
  35. package/dist/config/defaults.mjs.map +1 -1
  36. package/dist/config/index.mjs +7 -0
  37. package/dist/config/index.mjs.map +1 -1
  38. package/dist/index.d.mts +4 -2
  39. package/dist/index.mjs +3 -1
  40. package/dist/node_modules/picomatch/index.mjs +13 -0
  41. package/dist/node_modules/picomatch/index.mjs.map +1 -0
  42. package/dist/node_modules/picomatch/lib/constants.mjs +174 -0
  43. package/dist/node_modules/picomatch/lib/constants.mjs.map +1 -0
  44. package/dist/node_modules/picomatch/lib/parse.mjs +1067 -0
  45. package/dist/node_modules/picomatch/lib/parse.mjs.map +1 -0
  46. package/dist/node_modules/picomatch/lib/picomatch.mjs +304 -0
  47. package/dist/node_modules/picomatch/lib/picomatch.mjs.map +1 -0
  48. package/dist/node_modules/picomatch/lib/scan.mjs +296 -0
  49. package/dist/node_modules/picomatch/lib/scan.mjs.map +1 -0
  50. package/dist/node_modules/picomatch/lib/utils.mjs +53 -0
  51. package/dist/node_modules/picomatch/lib/utils.mjs.map +1 -0
  52. package/dist/plugin.d.mts.map +1 -1
  53. package/dist/plugin.mjs +24 -7
  54. package/dist/plugin.mjs.map +1 -1
  55. package/dist/plugins/postcss/resolveProps.d.mts +8 -0
  56. package/dist/plugins/postcss/resolveProps.d.mts.map +1 -0
  57. package/dist/plugins/postcss/resolveProps.mjs +144 -0
  58. package/dist/plugins/postcss/resolveProps.mjs.map +1 -0
  59. package/dist/plugins/postcss/tailwindCleanup.d.mts.map +1 -1
  60. package/dist/plugins/postcss/tailwindCleanup.mjs +46 -13
  61. package/dist/plugins/postcss/tailwindCleanup.mjs.map +1 -1
  62. package/dist/render/createRenderer.d.mts +8 -3
  63. package/dist/render/createRenderer.d.mts.map +1 -1
  64. package/dist/render/createRenderer.mjs +146 -10
  65. package/dist/render/createRenderer.mjs.map +1 -1
  66. package/dist/render/index.mjs +6 -3
  67. package/dist/render/index.mjs.map +1 -1
  68. package/dist/serve.d.mts.map +1 -1
  69. package/dist/serve.mjs +157 -63
  70. package/dist/serve.mjs.map +1 -1
  71. package/dist/server/compatibility.d.mts +1 -2
  72. package/dist/server/compatibility.d.mts.map +1 -1
  73. package/dist/server/compatibility.mjs +30 -16
  74. package/dist/server/compatibility.mjs.map +1 -1
  75. package/dist/server/email.d.mts +17 -0
  76. package/dist/server/email.d.mts.map +1 -0
  77. package/dist/server/email.mjs +41 -0
  78. package/dist/server/email.mjs.map +1 -0
  79. package/dist/server/linter.d.mts +1 -2
  80. package/dist/server/linter.d.mts.map +1 -1
  81. package/dist/server/linter.mjs +60 -71
  82. package/dist/server/linter.mjs.map +1 -1
  83. package/dist/server/ui/App.vue +206 -70
  84. package/dist/server/ui/components/ui/checkbox/Checkbox.vue +35 -0
  85. package/dist/server/ui/components/ui/checkbox/index.ts +1 -0
  86. package/dist/server/ui/components/ui/command/CommandDialog.vue +1 -1
  87. package/dist/server/ui/components/ui/command/CommandInput.vue +19 -1
  88. package/dist/server/ui/components/ui/command/CommandItem.vue +1 -1
  89. package/dist/server/ui/components/ui/command/CommandList.vue +1 -1
  90. package/dist/server/ui/components/ui/command/CommandShortcut.vue +1 -1
  91. package/dist/server/ui/components/ui/dialog/DialogOverlay.vue +9 -1
  92. package/dist/server/ui/components/ui/dropdown-menu/DropdownMenuItem.vue +1 -1
  93. package/dist/server/ui/components/ui/scroll-area/ScrollBar.vue +1 -1
  94. package/dist/server/ui/components/ui/sheet/SheetContent.vue +1 -1
  95. package/dist/server/ui/components/ui/sheet/SheetOverlay.vue +9 -1
  96. package/dist/server/ui/components/ui/sidebar/Sidebar.vue +8 -1
  97. package/dist/server/ui/components/ui/sidebar/SidebarProvider.vue +1 -1
  98. package/dist/server/ui/components/ui/sidebar/SidebarTrigger.vue +5 -4
  99. package/dist/server/ui/components/ui/tags-input/TagsInput.vue +26 -0
  100. package/dist/server/ui/components/ui/tags-input/TagsInputInput.vue +17 -0
  101. package/dist/server/ui/components/ui/tags-input/TagsInputItem.vue +19 -0
  102. package/dist/server/ui/components/ui/tags-input/TagsInputItemDelete.vue +22 -0
  103. package/dist/server/ui/components/ui/tags-input/TagsInputItemText.vue +17 -0
  104. package/dist/server/ui/components/ui/tags-input/index.ts +5 -0
  105. package/dist/server/ui/components/ui/toggle/index.ts +3 -3
  106. package/dist/server/ui/components/ui/toggle-group/ToggleGroup.vue +1 -1
  107. package/dist/server/ui/components/ui/toggle-group/ToggleGroupItem.vue +2 -2
  108. package/dist/server/ui/main.css +20 -20
  109. package/dist/server/ui/pages/Home.vue +12 -5
  110. package/dist/server/ui/pages/Preview.vue +506 -216
  111. package/dist/transformers/entities.d.mts.map +1 -1
  112. package/dist/transformers/entities.mjs +3 -0
  113. package/dist/transformers/entities.mjs.map +1 -1
  114. package/dist/transformers/filters/defaults.d.mts +6 -0
  115. package/dist/transformers/filters/defaults.d.mts.map +1 -0
  116. package/dist/transformers/filters/defaults.mjs +78 -0
  117. package/dist/transformers/filters/defaults.mjs.map +1 -0
  118. package/dist/transformers/filters/index.d.mts +22 -0
  119. package/dist/transformers/filters/index.d.mts.map +1 -0
  120. package/dist/transformers/filters/index.mjs +67 -0
  121. package/dist/transformers/filters/index.mjs.map +1 -0
  122. package/dist/transformers/index.d.mts +11 -9
  123. package/dist/transformers/index.d.mts.map +1 -1
  124. package/dist/transformers/index.mjs +19 -11
  125. package/dist/transformers/index.mjs.map +1 -1
  126. package/dist/transformers/inlineCSS.d.mts +1 -14
  127. package/dist/transformers/inlineCSS.d.mts.map +1 -1
  128. package/dist/transformers/inlineCSS.mjs +32 -36
  129. package/dist/transformers/inlineCSS.mjs.map +1 -1
  130. package/dist/transformers/purgeCSS.d.mts.map +1 -1
  131. package/dist/transformers/purgeCSS.mjs +67 -1
  132. package/dist/transformers/purgeCSS.mjs.map +1 -1
  133. package/dist/transformers/sixHex.d.mts +16 -0
  134. package/dist/transformers/sixHex.d.mts.map +1 -0
  135. package/dist/transformers/sixHex.mjs +30 -0
  136. package/dist/transformers/sixHex.mjs.map +1 -0
  137. package/dist/transformers/tailwindcss.d.mts +6 -2
  138. package/dist/transformers/tailwindcss.d.mts.map +1 -1
  139. package/dist/transformers/tailwindcss.mjs +54 -30
  140. package/dist/transformers/tailwindcss.mjs.map +1 -1
  141. package/dist/types/config.d.mts +436 -23
  142. package/dist/types/config.d.mts.map +1 -1
  143. package/dist/types/index.d.mts +2 -2
  144. package/dist/utils/ast/serializer.d.mts +3 -2
  145. package/dist/utils/ast/serializer.d.mts.map +1 -1
  146. package/dist/utils/ast/serializer.mjs +24 -0
  147. package/dist/utils/ast/serializer.mjs.map +1 -1
  148. package/dist/utils/detect.d.mts +5 -0
  149. package/dist/utils/detect.d.mts.map +1 -0
  150. package/dist/utils/detect.mjs +11 -0
  151. package/dist/utils/detect.mjs.map +1 -0
  152. package/node_modules/@clack/core/CHANGELOG.md +87 -4
  153. package/node_modules/@clack/core/README.md +1 -1
  154. package/node_modules/@clack/core/dist/index.d.mts +186 -48
  155. package/node_modules/@clack/core/dist/index.mjs +10 -14
  156. package/node_modules/@clack/core/dist/index.mjs.map +1 -1
  157. package/node_modules/@clack/core/package.json +7 -9
  158. package/node_modules/@clack/prompts/CHANGELOG.md +171 -7
  159. package/node_modules/@clack/prompts/README.md +66 -3
  160. package/node_modules/@clack/prompts/dist/index.d.mts +302 -76
  161. package/node_modules/@clack/prompts/dist/index.mjs +134 -84
  162. package/node_modules/@clack/prompts/dist/index.mjs.map +1 -1
  163. package/node_modules/@clack/prompts/package.json +14 -10
  164. package/node_modules/citty/LICENSE +0 -15
  165. package/node_modules/citty/README.md +166 -69
  166. package/node_modules/citty/dist/index.d.mts +88 -56
  167. package/node_modules/citty/dist/index.mjs +399 -437
  168. package/node_modules/citty/package.json +28 -35
  169. package/node_modules/giget/README.md +59 -11
  170. package/node_modules/giget/dist/THIRD-PARTY-LICENSES.md +205 -0
  171. package/node_modules/giget/dist/_chunks/giget.mjs +508 -0
  172. package/node_modules/giget/dist/_chunks/libs/citty.mjs +269 -0
  173. package/node_modules/giget/dist/_chunks/libs/nypm.d.mts +1 -0
  174. package/node_modules/giget/dist/_chunks/libs/nypm.mjs +669 -0
  175. package/node_modules/giget/dist/_chunks/libs/tar.mjs +2931 -0
  176. package/node_modules/giget/dist/_chunks/rolldown-runtime.mjs +14 -0
  177. package/node_modules/giget/dist/cli.d.mts +1 -0
  178. package/node_modules/giget/dist/cli.mjs +89 -111
  179. package/node_modules/giget/dist/index.d.mts +46 -35
  180. package/node_modules/giget/dist/index.mjs +2 -22
  181. package/node_modules/giget/package.json +32 -45
  182. package/node_modules/maizzle/README.md +140 -0
  183. package/node_modules/maizzle/bin/maizzle.mjs +5 -0
  184. package/node_modules/maizzle/dist/commands/new.d.mts +7 -0
  185. package/node_modules/maizzle/dist/commands/new.mjs +253 -0
  186. package/node_modules/{@maizzle/cli → maizzle}/dist/index.d.mts +1 -1
  187. package/node_modules/maizzle/dist/index.mjs +44 -0
  188. package/node_modules/{commander → maizzle/node_modules/commander}/Readme.md +94 -67
  189. package/node_modules/{commander → maizzle/node_modules/commander}/lib/argument.js +5 -4
  190. package/node_modules/{commander → maizzle/node_modules/commander}/lib/command.js +154 -39
  191. package/node_modules/{commander → maizzle/node_modules/commander}/lib/help.js +77 -39
  192. package/node_modules/{commander → maizzle/node_modules/commander}/lib/option.js +16 -3
  193. package/node_modules/{commander → maizzle/node_modules/commander}/package-support.json +4 -1
  194. package/node_modules/{commander → maizzle/node_modules/commander}/package.json +8 -8
  195. package/node_modules/{commander → maizzle/node_modules/commander}/typings/index.d.ts +71 -3
  196. package/node_modules/{@maizzle/cli → maizzle}/package.json +14 -12
  197. package/node_modules/tinyexec/README.md +49 -3
  198. package/node_modules/tinyexec/dist/main.d.mts +25 -14
  199. package/node_modules/tinyexec/dist/main.mjs +148 -100
  200. package/node_modules/tinyexec/package.json +9 -8
  201. package/package.json +17 -13
  202. package/dist/server/ui/components/ui/resizable/ResizableHandle.vue +0 -30
  203. package/dist/server/ui/components/ui/resizable/ResizablePanel.vue +0 -21
  204. package/dist/server/ui/components/ui/resizable/ResizablePanelGroup.vue +0 -25
  205. package/dist/server/ui/components/ui/resizable/index.ts +0 -3
  206. package/node_modules/@clack/core/dist/index.cjs +0 -15
  207. package/node_modules/@clack/core/dist/index.cjs.map +0 -1
  208. package/node_modules/@clack/core/dist/index.d.cts +0 -211
  209. package/node_modules/@clack/core/dist/index.d.ts +0 -211
  210. package/node_modules/@clack/prompts/dist/index.cjs +0 -87
  211. package/node_modules/@clack/prompts/dist/index.cjs.map +0 -1
  212. package/node_modules/@clack/prompts/dist/index.d.cts +0 -165
  213. package/node_modules/@clack/prompts/dist/index.d.ts +0 -165
  214. package/node_modules/@maizzle/cli/README.md +0 -58
  215. package/node_modules/@maizzle/cli/dist/index.mjs +0 -42
  216. package/node_modules/citty/dist/index.cjs +0 -475
  217. package/node_modules/citty/dist/index.d.cts +0 -80
  218. package/node_modules/citty/dist/index.d.ts +0 -80
  219. package/node_modules/consola/LICENSE +0 -47
  220. package/node_modules/consola/README.md +0 -352
  221. package/node_modules/consola/basic.d.ts +0 -1
  222. package/node_modules/consola/browser.d.ts +0 -1
  223. package/node_modules/consola/core.d.ts +0 -1
  224. package/node_modules/consola/dist/basic.cjs +0 -32
  225. package/node_modules/consola/dist/basic.d.cts +0 -23
  226. package/node_modules/consola/dist/basic.d.mts +0 -21
  227. package/node_modules/consola/dist/basic.d.ts +0 -23
  228. package/node_modules/consola/dist/basic.mjs +0 -24
  229. package/node_modules/consola/dist/browser.cjs +0 -84
  230. package/node_modules/consola/dist/browser.d.cts +0 -23
  231. package/node_modules/consola/dist/browser.d.mts +0 -21
  232. package/node_modules/consola/dist/browser.d.ts +0 -23
  233. package/node_modules/consola/dist/browser.mjs +0 -76
  234. package/node_modules/consola/dist/chunks/prompt.cjs +0 -288
  235. package/node_modules/consola/dist/chunks/prompt.mjs +0 -280
  236. package/node_modules/consola/dist/core.cjs +0 -517
  237. package/node_modules/consola/dist/core.d.cts +0 -459
  238. package/node_modules/consola/dist/core.d.mts +0 -459
  239. package/node_modules/consola/dist/core.d.ts +0 -459
  240. package/node_modules/consola/dist/core.mjs +0 -512
  241. package/node_modules/consola/dist/index.cjs +0 -663
  242. package/node_modules/consola/dist/index.d.cts +0 -24
  243. package/node_modules/consola/dist/index.d.mts +0 -22
  244. package/node_modules/consola/dist/index.d.ts +0 -24
  245. package/node_modules/consola/dist/index.mjs +0 -651
  246. package/node_modules/consola/dist/shared/consola.DCGIlDNP.cjs +0 -75
  247. package/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs +0 -72
  248. package/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs +0 -288
  249. package/node_modules/consola/dist/shared/consola.DwRq1yyg.cjs +0 -312
  250. package/node_modules/consola/dist/utils.cjs +0 -64
  251. package/node_modules/consola/dist/utils.d.cts +0 -286
  252. package/node_modules/consola/dist/utils.d.mts +0 -286
  253. package/node_modules/consola/dist/utils.d.ts +0 -286
  254. package/node_modules/consola/dist/utils.mjs +0 -54
  255. package/node_modules/consola/lib/index.cjs +0 -10
  256. package/node_modules/consola/package.json +0 -136
  257. package/node_modules/consola/utils.d.ts +0 -1
  258. package/node_modules/create-maizzle/README.md +0 -86
  259. package/node_modules/create-maizzle/bin/create-maizzle.mjs +0 -4
  260. package/node_modules/create-maizzle/node_modules/@clack/core/CHANGELOG.md +0 -340
  261. package/node_modules/create-maizzle/node_modules/@clack/core/LICENSE +0 -9
  262. package/node_modules/create-maizzle/node_modules/@clack/core/README.md +0 -22
  263. package/node_modules/create-maizzle/node_modules/@clack/core/dist/index.d.mts +0 -349
  264. package/node_modules/create-maizzle/node_modules/@clack/core/dist/index.mjs +0 -11
  265. package/node_modules/create-maizzle/node_modules/@clack/core/dist/index.mjs.map +0 -1
  266. package/node_modules/create-maizzle/node_modules/@clack/core/package.json +0 -60
  267. package/node_modules/create-maizzle/node_modules/@clack/prompts/CHANGELOG.md +0 -576
  268. package/node_modules/create-maizzle/node_modules/@clack/prompts/LICENSE +0 -9
  269. package/node_modules/create-maizzle/node_modules/@clack/prompts/README.md +0 -270
  270. package/node_modules/create-maizzle/node_modules/@clack/prompts/dist/index.d.mts +0 -391
  271. package/node_modules/create-maizzle/node_modules/@clack/prompts/dist/index.mjs +0 -137
  272. package/node_modules/create-maizzle/node_modules/@clack/prompts/dist/index.mjs.map +0 -1
  273. package/node_modules/create-maizzle/node_modules/@clack/prompts/package.json +0 -65
  274. package/node_modules/create-maizzle/package.json +0 -47
  275. package/node_modules/create-maizzle/src/index.js +0 -242
  276. package/node_modules/defu/LICENSE +0 -21
  277. package/node_modules/defu/README.md +0 -171
  278. package/node_modules/defu/dist/defu.cjs +0 -77
  279. package/node_modules/defu/dist/defu.d.cts +0 -31
  280. package/node_modules/defu/dist/defu.d.mts +0 -29
  281. package/node_modules/defu/dist/defu.d.ts +0 -31
  282. package/node_modules/defu/dist/defu.mjs +0 -69
  283. package/node_modules/defu/lib/defu.cjs +0 -10
  284. package/node_modules/defu/lib/defu.d.cts +0 -12
  285. package/node_modules/defu/package.json +0 -48
  286. package/node_modules/giget/dist/shared/giget.OCaTp9b-.mjs +0 -468
  287. package/node_modules/node-fetch-native/LICENSE +0 -114
  288. package/node_modules/node-fetch-native/README.md +0 -225
  289. package/node_modules/node-fetch-native/dist/chunks/multipart-parser.cjs +0 -2
  290. package/node_modules/node-fetch-native/dist/chunks/multipart-parser.mjs +0 -2
  291. package/node_modules/node-fetch-native/dist/index.cjs +0 -1
  292. package/node_modules/node-fetch-native/dist/index.mjs +0 -1
  293. package/node_modules/node-fetch-native/dist/native.cjs +0 -1
  294. package/node_modules/node-fetch-native/dist/native.mjs +0 -1
  295. package/node_modules/node-fetch-native/dist/node.cjs +0 -19
  296. package/node_modules/node-fetch-native/dist/node.mjs +0 -19
  297. package/node_modules/node-fetch-native/dist/polyfill.cjs +0 -1
  298. package/node_modules/node-fetch-native/dist/polyfill.mjs +0 -1
  299. package/node_modules/node-fetch-native/dist/proxy-stub.cjs +0 -1
  300. package/node_modules/node-fetch-native/dist/proxy-stub.mjs +0 -1
  301. package/node_modules/node-fetch-native/dist/proxy.cjs +0 -58
  302. package/node_modules/node-fetch-native/dist/shared/node-fetch-native.DfbY2q-x.mjs +0 -1
  303. package/node_modules/node-fetch-native/dist/shared/node-fetch-native.DhEqb06g.cjs +0 -1
  304. package/node_modules/node-fetch-native/index.d.ts +0 -1
  305. package/node_modules/node-fetch-native/lib/empty.cjs +0 -0
  306. package/node_modules/node-fetch-native/lib/empty.mjs +0 -0
  307. package/node_modules/node-fetch-native/lib/index.cjs +0 -11
  308. package/node_modules/node-fetch-native/lib/index.d.cts +0 -10
  309. package/node_modules/node-fetch-native/lib/index.d.mts +0 -10
  310. package/node_modules/node-fetch-native/lib/index.d.ts +0 -10
  311. package/node_modules/node-fetch-native/lib/native.cjs +0 -11
  312. package/node_modules/node-fetch-native/lib/polyfill.d.cts +0 -1
  313. package/node_modules/node-fetch-native/lib/polyfill.d.mts +0 -1
  314. package/node_modules/node-fetch-native/lib/polyfill.d.ts +0 -1
  315. package/node_modules/node-fetch-native/lib/proxy.d.ts +0 -32
  316. package/node_modules/node-fetch-native/node.d.ts +0 -1
  317. package/node_modules/node-fetch-native/package.json +0 -138
  318. package/node_modules/node-fetch-native/polyfill.d.ts +0 -1
  319. package/node_modules/node-fetch-native/proxy.d.ts +0 -1
  320. package/node_modules/nypm/node_modules/citty/LICENSE +0 -21
  321. package/node_modules/nypm/node_modules/citty/README.md +0 -231
  322. package/node_modules/nypm/node_modules/citty/dist/index.d.mts +0 -112
  323. package/node_modules/nypm/node_modules/citty/dist/index.mjs +0 -425
  324. package/node_modules/nypm/node_modules/citty/package.json +0 -42
  325. /package/node_modules/{nypm/node_modules/citty → citty}/dist/THIRD-PARTY-LICENSES.md +0 -0
  326. /package/node_modules/{nypm/node_modules/citty → citty}/dist/_chunks/libs/scule.mjs +0 -0
  327. /package/node_modules/{@maizzle/cli → maizzle}/LICENSE +0 -0
  328. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/component.d.mts +0 -0
  329. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/component.mjs +0 -0
  330. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/config.d.mts +0 -0
  331. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/config.mjs +0 -0
  332. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/layout.d.mts +0 -0
  333. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/layout.mjs +0 -0
  334. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/scaffold.d.mts +0 -0
  335. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/scaffold.mjs +0 -0
  336. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/component.vue +0 -0
  337. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/config.ts +0 -0
  338. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/layout.vue +0 -0
  339. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/template.vue +0 -0
  340. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/template.d.mts +0 -0
  341. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/template.mjs +0 -0
  342. /package/node_modules/{commander → maizzle/node_modules/commander}/LICENSE +0 -0
  343. /package/node_modules/{commander → maizzle/node_modules/commander}/esm.mjs +0 -0
  344. /package/node_modules/{commander → maizzle/node_modules/commander}/index.js +0 -0
  345. /package/node_modules/{commander → maizzle/node_modules/commander}/lib/error.js +0 -0
  346. /package/node_modules/{commander → maizzle/node_modules/commander}/lib/suggestSimilar.js +0 -0
  347. /package/node_modules/{commander → maizzle/node_modules/commander}/typings/esm.d.mts +0 -0
@@ -0,0 +1,296 @@
1
+ import { __commonJSMin } from "../../../_virtual/_rolldown/runtime.mjs";
2
+ import { require_constants } from "./constants.mjs";
3
+ import { require_utils } from "./utils.mjs";
4
+
5
+ //#region node_modules/picomatch/lib/scan.js
6
+ var require_scan = /* @__PURE__ */ __commonJSMin(((exports, module) => {
7
+ const utils = require_utils();
8
+ const { CHAR_ASTERISK, CHAR_AT, CHAR_BACKWARD_SLASH, CHAR_COMMA, CHAR_DOT, CHAR_EXCLAMATION_MARK, CHAR_FORWARD_SLASH, CHAR_LEFT_CURLY_BRACE, CHAR_LEFT_PARENTHESES, CHAR_LEFT_SQUARE_BRACKET, CHAR_PLUS, CHAR_QUESTION_MARK, CHAR_RIGHT_CURLY_BRACE, CHAR_RIGHT_PARENTHESES, CHAR_RIGHT_SQUARE_BRACKET } = require_constants();
9
+ const isPathSeparator = (code) => {
10
+ return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
11
+ };
12
+ const depth = (token) => {
13
+ if (token.isPrefix !== true) token.depth = token.isGlobstar ? Infinity : 1;
14
+ };
15
+ /**
16
+ * Quickly scans a glob pattern and returns an object with a handful of
17
+ * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists),
18
+ * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not
19
+ * with `!(`) and `negatedExtglob` (true if the path starts with `!(`).
20
+ *
21
+ * ```js
22
+ * const pm = require('picomatch');
23
+ * console.log(pm.scan('foo/bar/*.js'));
24
+ * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' }
25
+ * ```
26
+ * @param {String} `str`
27
+ * @param {Object} `options`
28
+ * @return {Object} Returns an object with tokens and regex source string.
29
+ * @api public
30
+ */
31
+ const scan = (input, options) => {
32
+ const opts = options || {};
33
+ const length = input.length - 1;
34
+ const scanToEnd = opts.parts === true || opts.scanToEnd === true;
35
+ const slashes = [];
36
+ const tokens = [];
37
+ const parts = [];
38
+ let str = input;
39
+ let index = -1;
40
+ let start = 0;
41
+ let lastIndex = 0;
42
+ let isBrace = false;
43
+ let isBracket = false;
44
+ let isGlob = false;
45
+ let isExtglob = false;
46
+ let isGlobstar = false;
47
+ let braceEscaped = false;
48
+ let backslashes = false;
49
+ let negated = false;
50
+ let negatedExtglob = false;
51
+ let finished = false;
52
+ let braces = 0;
53
+ let prev;
54
+ let code;
55
+ let token = {
56
+ value: "",
57
+ depth: 0,
58
+ isGlob: false
59
+ };
60
+ const eos = () => index >= length;
61
+ const peek = () => str.charCodeAt(index + 1);
62
+ const advance = () => {
63
+ prev = code;
64
+ return str.charCodeAt(++index);
65
+ };
66
+ while (index < length) {
67
+ code = advance();
68
+ let next;
69
+ if (code === CHAR_BACKWARD_SLASH) {
70
+ backslashes = token.backslashes = true;
71
+ code = advance();
72
+ if (code === CHAR_LEFT_CURLY_BRACE) braceEscaped = true;
73
+ continue;
74
+ }
75
+ if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {
76
+ braces++;
77
+ while (eos() !== true && (code = advance())) {
78
+ if (code === CHAR_BACKWARD_SLASH) {
79
+ backslashes = token.backslashes = true;
80
+ advance();
81
+ continue;
82
+ }
83
+ if (code === CHAR_LEFT_CURLY_BRACE) {
84
+ braces++;
85
+ continue;
86
+ }
87
+ if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {
88
+ isBrace = token.isBrace = true;
89
+ isGlob = token.isGlob = true;
90
+ finished = true;
91
+ if (scanToEnd === true) continue;
92
+ break;
93
+ }
94
+ if (braceEscaped !== true && code === CHAR_COMMA) {
95
+ isBrace = token.isBrace = true;
96
+ isGlob = token.isGlob = true;
97
+ finished = true;
98
+ if (scanToEnd === true) continue;
99
+ break;
100
+ }
101
+ if (code === CHAR_RIGHT_CURLY_BRACE) {
102
+ braces--;
103
+ if (braces === 0) {
104
+ braceEscaped = false;
105
+ isBrace = token.isBrace = true;
106
+ finished = true;
107
+ break;
108
+ }
109
+ }
110
+ }
111
+ if (scanToEnd === true) continue;
112
+ break;
113
+ }
114
+ if (code === CHAR_FORWARD_SLASH) {
115
+ slashes.push(index);
116
+ tokens.push(token);
117
+ token = {
118
+ value: "",
119
+ depth: 0,
120
+ isGlob: false
121
+ };
122
+ if (finished === true) continue;
123
+ if (prev === CHAR_DOT && index === start + 1) {
124
+ start += 2;
125
+ continue;
126
+ }
127
+ lastIndex = index + 1;
128
+ continue;
129
+ }
130
+ if (opts.noext !== true) {
131
+ if ((code === CHAR_PLUS || code === CHAR_AT || code === CHAR_ASTERISK || code === CHAR_QUESTION_MARK || code === CHAR_EXCLAMATION_MARK) === true && peek() === CHAR_LEFT_PARENTHESES) {
132
+ isGlob = token.isGlob = true;
133
+ isExtglob = token.isExtglob = true;
134
+ finished = true;
135
+ if (code === CHAR_EXCLAMATION_MARK && index === start) negatedExtglob = true;
136
+ if (scanToEnd === true) {
137
+ while (eos() !== true && (code = advance())) {
138
+ if (code === CHAR_BACKWARD_SLASH) {
139
+ backslashes = token.backslashes = true;
140
+ code = advance();
141
+ continue;
142
+ }
143
+ if (code === CHAR_RIGHT_PARENTHESES) {
144
+ isGlob = token.isGlob = true;
145
+ finished = true;
146
+ break;
147
+ }
148
+ }
149
+ continue;
150
+ }
151
+ break;
152
+ }
153
+ }
154
+ if (code === CHAR_ASTERISK) {
155
+ if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true;
156
+ isGlob = token.isGlob = true;
157
+ finished = true;
158
+ if (scanToEnd === true) continue;
159
+ break;
160
+ }
161
+ if (code === CHAR_QUESTION_MARK) {
162
+ isGlob = token.isGlob = true;
163
+ finished = true;
164
+ if (scanToEnd === true) continue;
165
+ break;
166
+ }
167
+ if (code === CHAR_LEFT_SQUARE_BRACKET) {
168
+ while (eos() !== true && (next = advance())) {
169
+ if (next === CHAR_BACKWARD_SLASH) {
170
+ backslashes = token.backslashes = true;
171
+ advance();
172
+ continue;
173
+ }
174
+ if (next === CHAR_RIGHT_SQUARE_BRACKET) {
175
+ isBracket = token.isBracket = true;
176
+ isGlob = token.isGlob = true;
177
+ finished = true;
178
+ break;
179
+ }
180
+ }
181
+ if (scanToEnd === true) continue;
182
+ break;
183
+ }
184
+ if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {
185
+ negated = token.negated = true;
186
+ start++;
187
+ continue;
188
+ }
189
+ if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) {
190
+ isGlob = token.isGlob = true;
191
+ if (scanToEnd === true) {
192
+ while (eos() !== true && (code = advance())) {
193
+ if (code === CHAR_LEFT_PARENTHESES) {
194
+ backslashes = token.backslashes = true;
195
+ code = advance();
196
+ continue;
197
+ }
198
+ if (code === CHAR_RIGHT_PARENTHESES) {
199
+ finished = true;
200
+ break;
201
+ }
202
+ }
203
+ continue;
204
+ }
205
+ break;
206
+ }
207
+ if (isGlob === true) {
208
+ finished = true;
209
+ if (scanToEnd === true) continue;
210
+ break;
211
+ }
212
+ }
213
+ if (opts.noext === true) {
214
+ isExtglob = false;
215
+ isGlob = false;
216
+ }
217
+ let base = str;
218
+ let prefix = "";
219
+ let glob = "";
220
+ if (start > 0) {
221
+ prefix = str.slice(0, start);
222
+ str = str.slice(start);
223
+ lastIndex -= start;
224
+ }
225
+ if (base && isGlob === true && lastIndex > 0) {
226
+ base = str.slice(0, lastIndex);
227
+ glob = str.slice(lastIndex);
228
+ } else if (isGlob === true) {
229
+ base = "";
230
+ glob = str;
231
+ } else base = str;
232
+ if (base && base !== "" && base !== "/" && base !== str) {
233
+ if (isPathSeparator(base.charCodeAt(base.length - 1))) base = base.slice(0, -1);
234
+ }
235
+ if (opts.unescape === true) {
236
+ if (glob) glob = utils.removeBackslashes(glob);
237
+ if (base && backslashes === true) base = utils.removeBackslashes(base);
238
+ }
239
+ const state = {
240
+ prefix,
241
+ input,
242
+ start,
243
+ base,
244
+ glob,
245
+ isBrace,
246
+ isBracket,
247
+ isGlob,
248
+ isExtglob,
249
+ isGlobstar,
250
+ negated,
251
+ negatedExtglob
252
+ };
253
+ if (opts.tokens === true) {
254
+ state.maxDepth = 0;
255
+ if (!isPathSeparator(code)) tokens.push(token);
256
+ state.tokens = tokens;
257
+ }
258
+ if (opts.parts === true || opts.tokens === true) {
259
+ let prevIndex;
260
+ for (let idx = 0; idx < slashes.length; idx++) {
261
+ const n = prevIndex ? prevIndex + 1 : start;
262
+ const i = slashes[idx];
263
+ const value = input.slice(n, i);
264
+ if (opts.tokens) {
265
+ if (idx === 0 && start !== 0) {
266
+ tokens[idx].isPrefix = true;
267
+ tokens[idx].value = prefix;
268
+ } else tokens[idx].value = value;
269
+ depth(tokens[idx]);
270
+ state.maxDepth += tokens[idx].depth;
271
+ }
272
+ if (idx !== 0 || value !== "") parts.push(value);
273
+ prevIndex = i;
274
+ }
275
+ if (prevIndex && prevIndex + 1 < input.length) {
276
+ const value = input.slice(prevIndex + 1);
277
+ parts.push(value);
278
+ if (opts.tokens) {
279
+ tokens[tokens.length - 1].value = value;
280
+ depth(tokens[tokens.length - 1]);
281
+ state.maxDepth += tokens[tokens.length - 1].depth;
282
+ }
283
+ }
284
+ state.slashes = slashes;
285
+ state.parts = parts;
286
+ }
287
+ return state;
288
+ };
289
+ module.exports = scan;
290
+ }));
291
+
292
+ //#endregion
293
+ export default require_scan();
294
+
295
+ export { require_scan };
296
+ //# sourceMappingURL=scan.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.mjs","names":[],"sources":["../../../../node_modules/picomatch/lib/scan.js"],"sourcesContent":["'use strict';\n\nconst utils = require('./utils');\nconst {\n CHAR_ASTERISK, /* * */\n CHAR_AT, /* @ */\n CHAR_BACKWARD_SLASH, /* \\ */\n CHAR_COMMA, /* , */\n CHAR_DOT, /* . */\n CHAR_EXCLAMATION_MARK, /* ! */\n CHAR_FORWARD_SLASH, /* / */\n CHAR_LEFT_CURLY_BRACE, /* { */\n CHAR_LEFT_PARENTHESES, /* ( */\n CHAR_LEFT_SQUARE_BRACKET, /* [ */\n CHAR_PLUS, /* + */\n CHAR_QUESTION_MARK, /* ? */\n CHAR_RIGHT_CURLY_BRACE, /* } */\n CHAR_RIGHT_PARENTHESES, /* ) */\n CHAR_RIGHT_SQUARE_BRACKET /* ] */\n} = require('./constants');\n\nconst isPathSeparator = code => {\n return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;\n};\n\nconst depth = token => {\n if (token.isPrefix !== true) {\n token.depth = token.isGlobstar ? Infinity : 1;\n }\n};\n\n/**\n * Quickly scans a glob pattern and returns an object with a handful of\n * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists),\n * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not\n * with `!(`) and `negatedExtglob` (true if the path starts with `!(`).\n *\n * ```js\n * const pm = require('picomatch');\n * console.log(pm.scan('foo/bar/*.js'));\n * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' }\n * ```\n * @param {String} `str`\n * @param {Object} `options`\n * @return {Object} Returns an object with tokens and regex source string.\n * @api public\n */\n\nconst scan = (input, options) => {\n const opts = options || {};\n\n const length = input.length - 1;\n const scanToEnd = opts.parts === true || opts.scanToEnd === true;\n const slashes = [];\n const tokens = [];\n const parts = [];\n\n let str = input;\n let index = -1;\n let start = 0;\n let lastIndex = 0;\n let isBrace = false;\n let isBracket = false;\n let isGlob = false;\n let isExtglob = false;\n let isGlobstar = false;\n let braceEscaped = false;\n let backslashes = false;\n let negated = false;\n let negatedExtglob = false;\n let finished = false;\n let braces = 0;\n let prev;\n let code;\n let token = { value: '', depth: 0, isGlob: false };\n\n const eos = () => index >= length;\n const peek = () => str.charCodeAt(index + 1);\n const advance = () => {\n prev = code;\n return str.charCodeAt(++index);\n };\n\n while (index < length) {\n code = advance();\n let next;\n\n if (code === CHAR_BACKWARD_SLASH) {\n backslashes = token.backslashes = true;\n code = advance();\n\n if (code === CHAR_LEFT_CURLY_BRACE) {\n braceEscaped = true;\n }\n continue;\n }\n\n if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {\n braces++;\n\n while (eos() !== true && (code = advance())) {\n if (code === CHAR_BACKWARD_SLASH) {\n backslashes = token.backslashes = true;\n advance();\n continue;\n }\n\n if (code === CHAR_LEFT_CURLY_BRACE) {\n braces++;\n continue;\n }\n\n if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {\n isBrace = token.isBrace = true;\n isGlob = token.isGlob = true;\n finished = true;\n\n if (scanToEnd === true) {\n continue;\n }\n\n break;\n }\n\n if (braceEscaped !== true && code === CHAR_COMMA) {\n isBrace = token.isBrace = true;\n isGlob = token.isGlob = true;\n finished = true;\n\n if (scanToEnd === true) {\n continue;\n }\n\n break;\n }\n\n if (code === CHAR_RIGHT_CURLY_BRACE) {\n braces--;\n\n if (braces === 0) {\n braceEscaped = false;\n isBrace = token.isBrace = true;\n finished = true;\n break;\n }\n }\n }\n\n if (scanToEnd === true) {\n continue;\n }\n\n break;\n }\n\n if (code === CHAR_FORWARD_SLASH) {\n slashes.push(index);\n tokens.push(token);\n token = { value: '', depth: 0, isGlob: false };\n\n if (finished === true) continue;\n if (prev === CHAR_DOT && index === (start + 1)) {\n start += 2;\n continue;\n }\n\n lastIndex = index + 1;\n continue;\n }\n\n if (opts.noext !== true) {\n const isExtglobChar = code === CHAR_PLUS\n || code === CHAR_AT\n || code === CHAR_ASTERISK\n || code === CHAR_QUESTION_MARK\n || code === CHAR_EXCLAMATION_MARK;\n\n if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) {\n isGlob = token.isGlob = true;\n isExtglob = token.isExtglob = true;\n finished = true;\n if (code === CHAR_EXCLAMATION_MARK && index === start) {\n negatedExtglob = true;\n }\n\n if (scanToEnd === true) {\n while (eos() !== true && (code = advance())) {\n if (code === CHAR_BACKWARD_SLASH) {\n backslashes = token.backslashes = true;\n code = advance();\n continue;\n }\n\n if (code === CHAR_RIGHT_PARENTHESES) {\n isGlob = token.isGlob = true;\n finished = true;\n break;\n }\n }\n continue;\n }\n break;\n }\n }\n\n if (code === CHAR_ASTERISK) {\n if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true;\n isGlob = token.isGlob = true;\n finished = true;\n\n if (scanToEnd === true) {\n continue;\n }\n break;\n }\n\n if (code === CHAR_QUESTION_MARK) {\n isGlob = token.isGlob = true;\n finished = true;\n\n if (scanToEnd === true) {\n continue;\n }\n break;\n }\n\n if (code === CHAR_LEFT_SQUARE_BRACKET) {\n while (eos() !== true && (next = advance())) {\n if (next === CHAR_BACKWARD_SLASH) {\n backslashes = token.backslashes = true;\n advance();\n continue;\n }\n\n if (next === CHAR_RIGHT_SQUARE_BRACKET) {\n isBracket = token.isBracket = true;\n isGlob = token.isGlob = true;\n finished = true;\n break;\n }\n }\n\n if (scanToEnd === true) {\n continue;\n }\n\n break;\n }\n\n if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {\n negated = token.negated = true;\n start++;\n continue;\n }\n\n if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) {\n isGlob = token.isGlob = true;\n\n if (scanToEnd === true) {\n while (eos() !== true && (code = advance())) {\n if (code === CHAR_LEFT_PARENTHESES) {\n backslashes = token.backslashes = true;\n code = advance();\n continue;\n }\n\n if (code === CHAR_RIGHT_PARENTHESES) {\n finished = true;\n break;\n }\n }\n continue;\n }\n break;\n }\n\n if (isGlob === true) {\n finished = true;\n\n if (scanToEnd === true) {\n continue;\n }\n\n break;\n }\n }\n\n if (opts.noext === true) {\n isExtglob = false;\n isGlob = false;\n }\n\n let base = str;\n let prefix = '';\n let glob = '';\n\n if (start > 0) {\n prefix = str.slice(0, start);\n str = str.slice(start);\n lastIndex -= start;\n }\n\n if (base && isGlob === true && lastIndex > 0) {\n base = str.slice(0, lastIndex);\n glob = str.slice(lastIndex);\n } else if (isGlob === true) {\n base = '';\n glob = str;\n } else {\n base = str;\n }\n\n if (base && base !== '' && base !== '/' && base !== str) {\n if (isPathSeparator(base.charCodeAt(base.length - 1))) {\n base = base.slice(0, -1);\n }\n }\n\n if (opts.unescape === true) {\n if (glob) glob = utils.removeBackslashes(glob);\n\n if (base && backslashes === true) {\n base = utils.removeBackslashes(base);\n }\n }\n\n const state = {\n prefix,\n input,\n start,\n base,\n glob,\n isBrace,\n isBracket,\n isGlob,\n isExtglob,\n isGlobstar,\n negated,\n negatedExtglob\n };\n\n if (opts.tokens === true) {\n state.maxDepth = 0;\n if (!isPathSeparator(code)) {\n tokens.push(token);\n }\n state.tokens = tokens;\n }\n\n if (opts.parts === true || opts.tokens === true) {\n let prevIndex;\n\n for (let idx = 0; idx < slashes.length; idx++) {\n const n = prevIndex ? prevIndex + 1 : start;\n const i = slashes[idx];\n const value = input.slice(n, i);\n if (opts.tokens) {\n if (idx === 0 && start !== 0) {\n tokens[idx].isPrefix = true;\n tokens[idx].value = prefix;\n } else {\n tokens[idx].value = value;\n }\n depth(tokens[idx]);\n state.maxDepth += tokens[idx].depth;\n }\n if (idx !== 0 || value !== '') {\n parts.push(value);\n }\n prevIndex = i;\n }\n\n if (prevIndex && prevIndex + 1 < input.length) {\n const value = input.slice(prevIndex + 1);\n parts.push(value);\n\n if (opts.tokens) {\n tokens[tokens.length - 1].value = value;\n depth(tokens[tokens.length - 1]);\n state.maxDepth += tokens[tokens.length - 1].depth;\n }\n }\n\n state.slashes = slashes;\n state.parts = parts;\n }\n\n return state;\n};\n\nmodule.exports = scan;\n"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { __commonJSMin, __require } from "../../../_virtual/_rolldown/runtime.mjs";
2
+ import { require_constants } from "./constants.mjs";
3
+
4
+ //#region node_modules/picomatch/lib/utils.js
5
+ var require_utils = /* @__PURE__ */ __commonJSMin(((exports) => {
6
+ const path = __require("path");
7
+ const win32 = process.platform === "win32";
8
+ const { REGEX_BACKSLASH, REGEX_REMOVE_BACKSLASH, REGEX_SPECIAL_CHARS, REGEX_SPECIAL_CHARS_GLOBAL } = require_constants();
9
+ exports.isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val);
10
+ exports.hasRegexChars = (str) => REGEX_SPECIAL_CHARS.test(str);
11
+ exports.isRegexChar = (str) => str.length === 1 && exports.hasRegexChars(str);
12
+ exports.escapeRegex = (str) => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, "\\$1");
13
+ exports.toPosixSlashes = (str) => str.replace(REGEX_BACKSLASH, "/");
14
+ exports.removeBackslashes = (str) => {
15
+ return str.replace(REGEX_REMOVE_BACKSLASH, (match) => {
16
+ return match === "\\" ? "" : match;
17
+ });
18
+ };
19
+ exports.supportsLookbehinds = () => {
20
+ const segs = process.version.slice(1).split(".").map(Number);
21
+ if (segs.length === 3 && segs[0] >= 9 || segs[0] === 8 && segs[1] >= 10) return true;
22
+ return false;
23
+ };
24
+ exports.isWindows = (options) => {
25
+ if (options && typeof options.windows === "boolean") return options.windows;
26
+ return win32 === true || path.sep === "\\";
27
+ };
28
+ exports.escapeLast = (input, char, lastIdx) => {
29
+ const idx = input.lastIndexOf(char, lastIdx);
30
+ if (idx === -1) return input;
31
+ if (input[idx - 1] === "\\") return exports.escapeLast(input, char, idx - 1);
32
+ return `${input.slice(0, idx)}\\${input.slice(idx)}`;
33
+ };
34
+ exports.removePrefix = (input, state = {}) => {
35
+ let output = input;
36
+ if (output.startsWith("./")) {
37
+ output = output.slice(2);
38
+ state.prefix = "./";
39
+ }
40
+ return output;
41
+ };
42
+ exports.wrapOutput = (input, state = {}, options = {}) => {
43
+ let output = `${options.contains ? "" : "^"}(?:${input})${options.contains ? "" : "$"}`;
44
+ if (state.negated === true) output = `(?:^(?!${output}).*$)`;
45
+ return output;
46
+ };
47
+ }));
48
+
49
+ //#endregion
50
+ export default require_utils();
51
+
52
+ export { require_utils };
53
+ //# sourceMappingURL=utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.mjs","names":[],"sources":["../../../../node_modules/picomatch/lib/utils.js"],"sourcesContent":["'use strict';\n\nconst path = require('path');\nconst win32 = process.platform === 'win32';\nconst {\n REGEX_BACKSLASH,\n REGEX_REMOVE_BACKSLASH,\n REGEX_SPECIAL_CHARS,\n REGEX_SPECIAL_CHARS_GLOBAL\n} = require('./constants');\n\nexports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);\nexports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);\nexports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);\nexports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\\\$1');\nexports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/');\n\nexports.removeBackslashes = str => {\n return str.replace(REGEX_REMOVE_BACKSLASH, match => {\n return match === '\\\\' ? '' : match;\n });\n};\n\nexports.supportsLookbehinds = () => {\n const segs = process.version.slice(1).split('.').map(Number);\n if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) {\n return true;\n }\n return false;\n};\n\nexports.isWindows = options => {\n if (options && typeof options.windows === 'boolean') {\n return options.windows;\n }\n return win32 === true || path.sep === '\\\\';\n};\n\nexports.escapeLast = (input, char, lastIdx) => {\n const idx = input.lastIndexOf(char, lastIdx);\n if (idx === -1) return input;\n if (input[idx - 1] === '\\\\') return exports.escapeLast(input, char, idx - 1);\n return `${input.slice(0, idx)}\\\\${input.slice(idx)}`;\n};\n\nexports.removePrefix = (input, state = {}) => {\n let output = input;\n if (output.startsWith('./')) {\n output = output.slice(2);\n state.prefix = './';\n }\n return output;\n};\n\nexports.wrapOutput = (input, state = {}, options = {}) => {\n const prepend = options.contains ? '' : '^';\n const append = options.contains ? '' : '$';\n\n let output = `${prepend}(?:${input})${append}`;\n if (state.negated === true) {\n output = `(?:^(?!${output}).*$)`;\n }\n return output;\n};\n"],"x_google_ignoreList":[0],"mappings":";;;;;CAEA,MAAM,iBAAe,OAAO;CAC5B,MAAM,QAAQ,QAAQ,aAAa;CACnC,MAAM,EACJ,iBACA,wBACA,qBACA;AAGF,SAAQ,YAAW,QAAO,QAAQ,QAAQ,OAAO,QAAQ,YAAY,CAAC,MAAM,QAAQ,IAAI;AACxF,SAAQ,iBAAgB,QAAO,oBAAoB,KAAK,IAAI;AAC5D,SAAQ,eAAc,QAAO,IAAI,WAAW,KAAK,QAAQ,cAAc,IAAI;AAC3E,SAAQ,eAAc,QAAO,IAAI,QAAQ,4BAA4B,OAAO;AAC5E,SAAQ,kBAAiB,QAAO,IAAI,QAAQ,iBAAiB,IAAI;AAEjE,SAAQ,qBAAoB,QAAO;AACjC,SAAO,IAAI,QAAQ,yBAAwB,UAAS;AAClD,UAAO,UAAU,OAAO,KAAK;IAC7B;;AAGJ,SAAQ,4BAA4B;EAClC,MAAM,OAAO,QAAQ,QAAQ,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,IAAI,OAAO;AAC5D,MAAI,KAAK,WAAW,KAAK,KAAK,MAAM,KAAM,KAAK,OAAO,KAAK,KAAK,MAAM,GACpE,QAAO;AAET,SAAO;;AAGT,SAAQ,aAAY,YAAW;AAC7B,MAAI,WAAW,OAAO,QAAQ,YAAY,UACxC,QAAO,QAAQ;AAEjB,SAAO,UAAU,QAAQ,KAAK,QAAQ;;AAGxC,SAAQ,cAAc,OAAO,MAAM,YAAY;EAC7C,MAAM,MAAM,MAAM,YAAY,MAAM,QAAQ;AAC5C,MAAI,QAAQ,GAAI,QAAO;AACvB,MAAI,MAAM,MAAM,OAAO,KAAM,QAAO,QAAQ,WAAW,OAAO,MAAM,MAAM,EAAE;AAC5E,SAAO,GAAG,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,MAAM,MAAM,IAAI;;AAGpD,SAAQ,gBAAgB,OAAO,QAAQ,EAAE,KAAK;EAC5C,IAAI,SAAS;AACb,MAAI,OAAO,WAAW,KAAK,EAAE;AAC3B,YAAS,OAAO,MAAM,EAAE;AACxB,SAAM,SAAS;;AAEjB,SAAO;;AAGT,SAAQ,cAAc,OAAO,QAAQ,EAAE,EAAE,UAAU,EAAE,KAAK;EAIxD,IAAI,SAAS,GAHG,QAAQ,WAAW,KAAK,IAGhB,KAAK,MAAM,GAFpB,QAAQ,WAAW,KAAK;AAGvC,MAAI,MAAM,YAAY,KACpB,UAAS,UAAU,OAAO;AAE5B,SAAO"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.mts","names":[],"sources":["../src/plugin.ts"],"mappings":";;;;;;;AAYA;;;;;;iBAAgB,OAAA,CAAQ,WAAA,GAAc,OAAA,CAAQ,aAAA,IAAiB,MAAA"}
1
+ {"version":3,"file":"plugin.d.mts","names":[],"sources":["../src/plugin.ts"],"mappings":";;;;;;;AAaA;;;;;;iBAAgB,OAAA,CAAQ,WAAA,GAAc,OAAA,CAAQ,aAAA,IAAiB,MAAA"}
package/dist/plugin.mjs CHANGED
@@ -1,3 +1,5 @@
1
+ import { isLaravel } from "./utils/detect.mjs";
2
+
1
3
  //#region src/plugin.ts
2
4
  /**
3
5
  * Maizzle Vite plugin for use inside an existing Vite project.
@@ -10,16 +12,31 @@
10
12
  */
11
13
  function maizzle(configInput) {
12
14
  let maizzleServer = null;
15
+ if (isLaravel()) {
16
+ const existing = configInput?.components?.source;
17
+ const laravelComponentDir = "resources/js/components/email";
18
+ if (!existing) configInput = {
19
+ ...configInput,
20
+ components: {
21
+ ...configInput?.components,
22
+ source: [laravelComponentDir]
23
+ }
24
+ };
25
+ }
13
26
  return [{
14
27
  name: "maizzle",
15
28
  async configureServer(hostServer) {
16
- const { serve, printBanner } = await import("./serve.mjs");
17
- maizzleServer = await serve({
18
- config: configInput,
19
- silent: true
20
- });
21
- hostServer.httpServer?.on("listening", () => {
22
- printBanner(maizzleServer);
29
+ if (maizzleServer) {
30
+ await maizzleServer.close();
31
+ maizzleServer = null;
32
+ }
33
+ const { serve } = await import("./serve.mjs");
34
+ maizzleServer = await serve({ config: configInput });
35
+ hostServer.httpServer?.on("close", () => {
36
+ if (maizzleServer) {
37
+ maizzleServer.close();
38
+ maizzleServer = null;
39
+ }
23
40
  });
24
41
  },
25
42
  async closeBundle() {
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.mjs","names":[],"sources":["../src/plugin.ts"],"sourcesContent":["import type { Plugin, ViteDevServer } from 'vite'\nimport type { MaizzleConfig } from './types/index.ts'\n\n/**\n * Maizzle Vite plugin for use inside an existing Vite project.\n *\n * - During `vite dev`: starts a separate Maizzle dev server on its own port\n * - During `vite build`: builds email templates alongside the host app\n *\n * Does NOT inject Vue, Tailwind, or any other plugins into the host's pipeline.\n * The host app manages its own stack. Maizzle runs in its own process.\n */\nexport function maizzle(configInput?: Partial<MaizzleConfig>): Plugin[] {\n let maizzleServer: ViteDevServer | null = null\n\n return [{\n name: 'maizzle',\n\n async configureServer(hostServer) {\n const { serve, printBanner } = await import('./serve.ts')\n maizzleServer = await serve({ config: configInput, silent: true })\n\n // Print Maizzle banner after the host server prints its URLs\n hostServer.httpServer?.on('listening', () => {\n printBanner(maizzleServer!)\n })\n },\n\n async closeBundle() {\n if (this.meta.watchMode) return\n\n const { build } = await import('./build.ts')\n await build({ config: configInput })\n },\n\n async buildEnd() {\n if (maizzleServer) {\n await maizzleServer.close()\n maizzleServer = null\n }\n },\n }]\n}\n"],"mappings":";;;;;;;;;;AAYA,SAAgB,QAAQ,aAAgD;CACtE,IAAI,gBAAsC;AAE1C,QAAO,CAAC;EACN,MAAM;EAEN,MAAM,gBAAgB,YAAY;GAChC,MAAM,EAAE,OAAO,gBAAgB,MAAM,OAAO;AAC5C,mBAAgB,MAAM,MAAM;IAAE,QAAQ;IAAa,QAAQ;IAAM,CAAC;AAGlE,cAAW,YAAY,GAAG,mBAAmB;AAC3C,gBAAY,cAAe;KAC3B;;EAGJ,MAAM,cAAc;AAClB,OAAI,KAAK,KAAK,UAAW;GAEzB,MAAM,EAAE,UAAU,MAAM,OAAO;AAC/B,SAAM,MAAM,EAAE,QAAQ,aAAa,CAAC;;EAGtC,MAAM,WAAW;AACf,OAAI,eAAe;AACjB,UAAM,cAAc,OAAO;AAC3B,oBAAgB;;;EAGrB,CAAC"}
1
+ {"version":3,"file":"plugin.mjs","names":[],"sources":["../src/plugin.ts"],"sourcesContent":["import type { Plugin, ViteDevServer } from 'vite'\nimport type { MaizzleConfig } from './types/index.ts'\nimport { isLaravel } from './utils/detect.ts'\n\n/**\n * Maizzle Vite plugin for use inside an existing Vite project.\n *\n * - During `vite dev`: starts a separate Maizzle dev server on its own port\n * - During `vite build`: builds email templates alongside the host app\n *\n * Does NOT inject Vue, Tailwind, or any other plugins into the host's pipeline.\n * The host app manages its own stack. Maizzle runs in its own process.\n */\nexport function maizzle(configInput?: Partial<MaizzleConfig>): Plugin[] {\n let maizzleServer: ViteDevServer | null = null\n\n // Auto-configure defaults for Laravel projects\n if (isLaravel()) {\n const existing = configInput?.components?.source\n const laravelComponentDir = 'resources/js/components/email'\n\n if (!existing) {\n configInput = {\n ...configInput,\n components: {\n ...configInput?.components,\n source: [laravelComponentDir],\n },\n }\n }\n }\n\n return [{\n name: 'maizzle',\n\n async configureServer(hostServer) {\n // Close previous Maizzle server if the host restarts\n if (maizzleServer) {\n await maizzleServer.close()\n maizzleServer = null\n }\n\n const { serve } = await import('./serve.ts')\n maizzleServer = await serve({ config: configInput })\n\n // Clean up when the host server closes\n hostServer.httpServer?.on('close', () => {\n if (maizzleServer) {\n maizzleServer.close()\n maizzleServer = null\n }\n })\n },\n\n async closeBundle() {\n if (this.meta.watchMode) return\n\n const { build } = await import('./build.ts')\n await build({ config: configInput })\n },\n\n async buildEnd() {\n if (maizzleServer) {\n await maizzleServer.close()\n maizzleServer = null\n }\n },\n }]\n}\n"],"mappings":";;;;;;;;;;;;AAaA,SAAgB,QAAQ,aAAgD;CACtE,IAAI,gBAAsC;AAG1C,KAAI,WAAW,EAAE;EACf,MAAM,WAAW,aAAa,YAAY;EAC1C,MAAM,sBAAsB;AAE5B,MAAI,CAAC,SACH,eAAc;GACZ,GAAG;GACH,YAAY;IACV,GAAG,aAAa;IAChB,QAAQ,CAAC,oBAAoB;IAC9B;GACF;;AAIL,QAAO,CAAC;EACN,MAAM;EAEN,MAAM,gBAAgB,YAAY;AAEhC,OAAI,eAAe;AACjB,UAAM,cAAc,OAAO;AAC3B,oBAAgB;;GAGlB,MAAM,EAAE,UAAU,MAAM,OAAO;AAC/B,mBAAgB,MAAM,MAAM,EAAE,QAAQ,aAAa,CAAC;AAGpD,cAAW,YAAY,GAAG,eAAe;AACvC,QAAI,eAAe;AACjB,mBAAc,OAAO;AACrB,qBAAgB;;KAElB;;EAGJ,MAAM,cAAc;AAClB,OAAI,KAAK,KAAK,UAAW;GAEzB,MAAM,EAAE,UAAU,MAAM,OAAO;AAC/B,SAAM,MAAM,EAAE,QAAQ,aAAa,CAAC;;EAGtC,MAAM,WAAW;AACf,OAAI,eAAe;AACjB,UAAM,cAAc,OAAO;AAC3B,oBAAgB;;;EAGrB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Plugin } from "postcss";
2
+
3
+ //#region src/plugins/postcss/resolveProps.d.ts
4
+ declare const _default: () => Plugin;
5
+ declare const postcss = true;
6
+ //#endregion
7
+ export { _default as default, postcss };
8
+ //# sourceMappingURL=resolveProps.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveProps.d.mts","names":[],"sources":["../../../src/plugins/postcss/resolveProps.ts"],"mappings":";;;cAiByD,QAAA,QA6FtC,MAAA;AAAA,cA8IN,OAAA"}
@@ -0,0 +1,144 @@
1
+ //#region src/plugins/postcss/resolveProps.ts
2
+ /** Check if a rule's selector includes :root */
3
+ function isRootRule(rule) {
4
+ const sel = rule.selector;
5
+ return sel === ":root" || sel.includes(":root");
6
+ }
7
+ /** Check if a rule is inside @layer (not @media or other at-rules) */
8
+ function isInLayer(rule) {
9
+ return rule.parent?.type === "atrule" && rule.parent.name === "layer";
10
+ }
11
+ /**
12
+ * Parse the first var() call in a string by counting parens.
13
+ * Returns null if no var() found.
14
+ */
15
+ function findVar(value, startFrom = 0) {
16
+ const idx = value.indexOf("var(", startFrom);
17
+ if (idx === -1) return null;
18
+ let depth = 1;
19
+ let i = idx + 4;
20
+ let commaIdx = -1;
21
+ while (i < value.length && depth > 0) {
22
+ const ch = value.charCodeAt(i);
23
+ if (ch === 40) depth++;
24
+ else if (ch === 41) {
25
+ if (--depth === 0) break;
26
+ } else if (ch === 44 && depth === 1 && commaIdx === -1) commaIdx = i;
27
+ i++;
28
+ }
29
+ if (depth !== 0) return null;
30
+ const name = commaIdx === -1 ? value.slice(idx + 4, i).trim() : value.slice(idx + 4, commaIdx).trim();
31
+ const fallback = commaIdx === -1 ? void 0 : value.slice(commaIdx + 1, i);
32
+ return {
33
+ start: idx,
34
+ end: i + 1,
35
+ name,
36
+ fallback
37
+ };
38
+ }
39
+ /**
40
+ * Resolve all var() references in a value string.
41
+ * Iterates until no resolvable var() remain.
42
+ */
43
+ function resolveValue(value, localVars, rootVars, propertyDefaults) {
44
+ let result = value;
45
+ let safety = 10;
46
+ while (safety-- > 0) {
47
+ const v = findVar(result);
48
+ if (!v) break;
49
+ const resolved = localVars.get(v.name) ?? rootVars.get(v.name) ?? propertyDefaults?.get(v.name);
50
+ if (resolved !== void 0) result = result.slice(0, v.start) + resolved + result.slice(v.end);
51
+ else if (v.fallback !== void 0) result = result.slice(0, v.start) + v.fallback.trim() + result.slice(v.end);
52
+ else {
53
+ if (!findVar(result, v.end)) break;
54
+ const tail = resolveValue(result.slice(v.end), localVars, rootVars, propertyDefaults);
55
+ result = result.slice(0, v.end) + tail;
56
+ break;
57
+ }
58
+ }
59
+ return result;
60
+ }
61
+ var resolveProps_default = () => {
62
+ return {
63
+ postcssPlugin: "postcss-resolve-props",
64
+ Once(root) {
65
+ const propertyDefaults = /* @__PURE__ */ new Map();
66
+ root.walkAtRules("property", (rule) => {
67
+ const name = rule.params.trim();
68
+ if (!name.startsWith("--")) return;
69
+ rule.walkDecls("initial-value", (decl) => {
70
+ propertyDefaults.set(name, decl.value);
71
+ });
72
+ });
73
+ const rootVars = /* @__PURE__ */ new Map();
74
+ root.walkRules((rule) => {
75
+ if (!isRootRule(rule)) return;
76
+ if (rule.parent?.type !== "root" && !isInLayer(rule)) return;
77
+ rule.each((node) => {
78
+ if (node.type === "decl" && node.prop.startsWith("--")) rootVars.set(node.prop, node.value);
79
+ });
80
+ });
81
+ if (rootVars.size > 0) {
82
+ let changed = true;
83
+ let iterations = 5;
84
+ while (changed && iterations-- > 0) {
85
+ changed = false;
86
+ for (const [name, value] of rootVars) {
87
+ if (!value.includes("var(")) continue;
88
+ const resolved = resolveValue(value, rootVars, rootVars, propertyDefaults);
89
+ if (resolved !== value) {
90
+ rootVars.set(name, resolved);
91
+ changed = true;
92
+ }
93
+ }
94
+ }
95
+ }
96
+ root.walkRules((rule) => {
97
+ if (isRootRule(rule)) {
98
+ if (rule.parent?.type !== "root" && !isInLayer(rule)) return;
99
+ }
100
+ const localVars = /* @__PURE__ */ new Map();
101
+ const localDecls = [];
102
+ let hasVarRefs = false;
103
+ rule.walk((node) => {
104
+ if (node.type !== "decl") return;
105
+ if (node.prop.startsWith("--")) localDecls.push(node);
106
+ else if (node.value.includes("var(")) hasVarRefs = true;
107
+ });
108
+ if (!hasVarRefs && localDecls.length === 0) return;
109
+ for (const decl of localDecls) {
110
+ const value = decl.value.includes("var(") ? resolveValue(decl.value, localVars, rootVars, propertyDefaults) : decl.value;
111
+ localVars.set(decl.prop, value);
112
+ }
113
+ if (hasVarRefs) rule.walk((node) => {
114
+ if (node.type !== "decl") return;
115
+ if (node.prop.startsWith("--")) return;
116
+ if (!node.value.includes("var(")) return;
117
+ const resolved = resolveValue(node.value, localVars, rootVars, propertyDefaults);
118
+ if (resolved !== node.value) {
119
+ const cleaned = resolved.replace(/ +/g, " ").trim();
120
+ if (cleaned) node.value = cleaned;
121
+ else node.remove();
122
+ }
123
+ });
124
+ for (const decl of localDecls) decl.remove();
125
+ });
126
+ root.walkAtRules("property", (rule) => {
127
+ rule.remove();
128
+ });
129
+ root.walkRules((rule) => {
130
+ if (!isRootRule(rule)) return;
131
+ if (rule.parent?.type !== "root" && !isInLayer(rule)) return;
132
+ rule.each((node) => {
133
+ if (node.type === "decl" && node.prop.startsWith("--")) node.remove();
134
+ });
135
+ if (rule.nodes?.length === 0) rule.remove();
136
+ });
137
+ }
138
+ };
139
+ };
140
+ const postcss = true;
141
+
142
+ //#endregion
143
+ export { resolveProps_default as default, postcss };
144
+ //# sourceMappingURL=resolveProps.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveProps.mjs","names":[],"sources":["../../../src/plugins/postcss/resolveProps.ts"],"sourcesContent":["/**\n * postcss-resolve-props\n *\n * Resolves CSS custom properties (var() references) and removes\n * the consumed declarations, producing flat CSS for email inlining.\n *\n * Resolution order per var():\n * 1. Local declaration in the same rule\n * 2. :root declaration (top-level only, not inside @media)\n * 3. @property initial-value (Tailwind v4 composable defaults)\n * 4. Fallback value from the var() itself\n *\n * Handles nested var() in both values and fallbacks.\n * Replaces postcss-custom-properties with correct support for\n * local var declarations (Tailwind composable pattern, user CSS).\n */\n\nimport type { AtRule, Plugin, Root, Rule } from 'postcss'\n\n/** Check if a rule's selector includes :root */\nfunction isRootRule(rule: Rule): boolean {\n const sel = rule.selector\n return sel === ':root' || sel.includes(':root')\n}\n\n/** Check if a rule is inside @layer (not @media or other at-rules) */\nfunction isInLayer(rule: Rule): boolean {\n return rule.parent?.type === 'atrule' && (rule.parent as any).name === 'layer'\n}\n\n/**\n * Parse the first var() call in a string by counting parens.\n * Returns null if no var() found.\n */\nfunction findVar(value: string, startFrom = 0): {\n start: number\n end: number\n name: string\n fallback: string | undefined\n} | null {\n const idx = value.indexOf('var(', startFrom)\n if (idx === -1) return null\n\n let depth = 1\n let i = idx + 4\n let commaIdx = -1\n\n while (i < value.length && depth > 0) {\n const ch = value.charCodeAt(i)\n if (ch === 40 /* ( */) depth++\n else if (ch === 41 /* ) */) {\n if (--depth === 0) break\n } else if (ch === 44 /* , */ && depth === 1 && commaIdx === -1) {\n commaIdx = i\n }\n i++\n }\n\n if (depth !== 0) return null\n\n const name = commaIdx === -1\n ? value.slice(idx + 4, i).trim()\n : value.slice(idx + 4, commaIdx).trim()\n\n const fallback = commaIdx === -1\n ? undefined\n : value.slice(commaIdx + 1, i)\n\n return { start: idx, end: i + 1, name, fallback }\n}\n\n/**\n * Resolve all var() references in a value string.\n * Iterates until no resolvable var() remain.\n */\nfunction resolveValue(\n value: string,\n localVars: Map<string, string>,\n rootVars: Map<string, string>,\n propertyDefaults?: Map<string, string>,\n): string {\n let result = value\n let safety = 10\n\n while (safety-- > 0) {\n const v = findVar(result)\n if (!v) break\n\n const resolved = localVars.get(v.name) ?? rootVars.get(v.name) ?? propertyDefaults?.get(v.name)\n\n if (resolved !== undefined) {\n result = result.slice(0, v.start) + resolved + result.slice(v.end)\n } else if (v.fallback !== undefined) {\n result = result.slice(0, v.start) + v.fallback.trim() + result.slice(v.end)\n } else {\n // Unresolvable with no fallback — skip past it to avoid infinite loop\n // Try to find another var() after this one\n const next = findVar(result, v.end)\n if (!next) break\n\n // Process the rest of the string from after this var()\n const tail = resolveValue(result.slice(v.end), localVars, rootVars, propertyDefaults)\n result = result.slice(0, v.end) + tail\n break\n }\n }\n\n return result\n}\n\nexport default (): Plugin => {\n return {\n postcssPlugin: 'postcss-resolve-props',\n\n Once(root: Root) {\n // Pass 0: collect @property initial-value defaults (Tailwind v4 composable pattern)\n const propertyDefaults = new Map<string, string>()\n\n root.walkAtRules('property', (rule: AtRule) => {\n const name = rule.params.trim()\n if (!name.startsWith('--')) return\n\n rule.walkDecls('initial-value', (decl) => {\n propertyDefaults.set(name, decl.value)\n })\n })\n\n // Pass 1: collect :root vars (top-level and inside @layer)\n // Skip :root inside @media — those are for dark mode and should stay.\n const rootVars = new Map<string, string>()\n\n root.walkRules((rule) => {\n if (!isRootRule(rule)) return\n\n // Allow :root at top level or inside @layer (Tailwind theme vars)\n // Skip :root inside @media or other non-layer at-rules\n if (rule.parent?.type !== 'root' && !isInLayer(rule)) return\n\n rule.each((node) => {\n if (node.type === 'decl' && node.prop.startsWith('--')) {\n rootVars.set(node.prop, node.value)\n }\n })\n })\n\n // Resolve :root vars referencing other :root vars\n if (rootVars.size > 0) {\n let changed = true\n let iterations = 5\n\n while (changed && iterations-- > 0) {\n changed = false\n for (const [name, value] of rootVars) {\n if (!value.includes('var(')) continue\n const resolved = resolveValue(value, rootVars, rootVars, propertyDefaults)\n if (resolved !== value) {\n rootVars.set(name, resolved)\n changed = true\n }\n }\n }\n }\n\n // Pass 2: resolve var() in all rules\n root.walkRules((rule) => {\n // Skip :root inside @media — those vars are for dark mode etc.\n // and must stay in the <style> tag as-is.\n // Allow :root at top level and inside @layer (processed in pass 3).\n if (isRootRule(rule)) {\n if (rule.parent?.type !== 'root' && !isInLayer(rule)) return\n }\n\n // Collect local --* declarations (walk into nested @media etc.)\n const localVars = new Map<string, string>()\n const localDecls: Declaration[] = []\n let hasVarRefs = false\n\n rule.walk((node) => {\n if (node.type !== 'decl') return\n\n if (node.prop.startsWith('--')) {\n localDecls.push(node)\n } else if (node.value.includes('var(')) {\n hasVarRefs = true\n }\n })\n\n // Skip rules with no var() references and no local vars to clean up\n if (!hasVarRefs && localDecls.length === 0) return\n\n // Build local vars map — resolve values that reference other locals or :root\n for (const decl of localDecls) {\n const value = decl.value.includes('var(')\n ? resolveValue(decl.value, localVars, rootVars, propertyDefaults)\n : decl.value\n\n localVars.set(decl.prop, value)\n }\n\n // Resolve var() in non-custom-property declarations (walk into nested @media etc.)\n if (hasVarRefs) {\n rule.walk((node) => {\n if (node.type !== 'decl') return\n if (node.prop.startsWith('--')) return\n if (!node.value.includes('var(')) return\n\n const resolved = resolveValue(node.value, localVars, rootVars, propertyDefaults)\n\n if (resolved !== node.value) {\n // Clean up: collapse whitespace, trim\n const cleaned = resolved.replace(/ +/g, ' ').trim()\n\n if (cleaned) {\n node.value = cleaned\n } else {\n // Value resolved to empty — remove the declaration\n node.remove()\n }\n }\n })\n }\n\n // Remove local --* declarations (consumed or no longer needed)\n for (const decl of localDecls) {\n decl.remove()\n }\n })\n\n // Remove @property rules (not supported in email clients)\n root.walkAtRules('property', (rule) => {\n rule.remove()\n })\n\n // Pass 3: clean up :root (same scope as pass 1)\n root.walkRules((rule) => {\n if (!isRootRule(rule)) return\n if (rule.parent?.type !== 'root' && !isInLayer(rule)) return\n\n rule.each((node) => {\n if (node.type === 'decl' && node.prop.startsWith('--')) {\n node.remove()\n }\n })\n\n if (rule.nodes?.length === 0) {\n rule.remove()\n }\n })\n },\n }\n}\n\nexport const postcss = true\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tailwindCleanup.d.mts","names":[],"sources":["../../../src/plugins/postcss/tailwindCleanup.ts"],"mappings":";;;;;;AAgBA;;;;;;;;iBAAgB,eAAA,CAAgB,MAAA,EAAQ,aAAA,GAAgB,OAAA,CAAQ,MAAA"}
1
+ {"version":3,"file":"tailwindCleanup.d.mts","names":[],"sources":["../../../src/plugins/postcss/tailwindCleanup.ts"],"mappings":";;;;;;AA0CA;;;;;;;;iBAAgB,eAAA,CAAgB,MAAA,EAAQ,aAAA,GAAgB,OAAA,CAAQ,MAAA"}