@maizzle/framework 6.0.0-rc.2 → 6.0.0-rc.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/bin/maizzle.mjs +1 -1
- package/dist/build.d.ts +20 -0
- package/dist/build.d.ts.map +1 -0
- package/dist/build.js +163 -0
- package/dist/build.js.map +1 -0
- package/dist/components/Body.vue +128 -0
- package/dist/components/Button.vue +148 -52
- package/dist/components/CodeBlock.vue +69 -0
- package/dist/components/CodeInline.vue +49 -0
- package/dist/components/Column.vue +108 -0
- package/dist/components/Container.vue +123 -0
- package/dist/components/Font.vue +96 -0
- package/dist/components/Head.vue +30 -0
- package/dist/components/Heading.vue +28 -0
- package/dist/components/Hr.vue +33 -0
- package/dist/components/Html.vue +137 -0
- package/dist/components/Img.vue +70 -0
- package/dist/components/Layout.vue +143 -0
- package/dist/components/Link.vue +26 -0
- package/dist/components/Markdown.vue +89 -0
- package/dist/components/MarkdownLayout.vue +39 -0
- package/dist/components/NotPlaintext.vue +14 -0
- package/dist/components/Outlook.vue +74 -11
- package/dist/components/OutlookBg.vue +241 -0
- package/dist/components/Overlap.vue +156 -0
- package/dist/components/Plaintext.vue +14 -0
- package/dist/components/Preheader.vue +15 -0
- package/dist/components/QrCode.vue +157 -0
- package/dist/components/Raw.vue +28 -0
- package/dist/components/Row.vue +184 -0
- package/dist/components/Section.vue +124 -0
- package/dist/components/Spacer.vue +70 -21
- package/dist/components/Tailwind.vue +43 -0
- package/dist/components/Text.vue +29 -0
- package/dist/components/utils.d.ts +28 -0
- package/dist/components/utils.d.ts.map +1 -0
- package/dist/components/utils.js +50 -0
- package/dist/components/utils.js.map +1 -0
- package/dist/components/utils.ts +51 -0
- package/dist/composables/{defineConfig.d.mts → defineConfig.d.ts} +2 -2
- package/dist/composables/defineConfig.d.ts.map +1 -0
- package/dist/composables/{defineConfig.mjs → defineConfig.js} +4 -5
- package/dist/composables/defineConfig.js.map +1 -0
- package/dist/composables/renderContext.d.ts +37 -0
- package/dist/composables/renderContext.d.ts.map +1 -0
- package/dist/composables/{renderContext.mjs → renderContext.js} +2 -2
- package/dist/composables/renderContext.js.map +1 -0
- package/dist/composables/useBaseUrl.d.ts +19 -0
- package/dist/composables/useBaseUrl.d.ts.map +1 -0
- package/dist/composables/useBaseUrl.js +26 -0
- package/dist/composables/useBaseUrl.js.map +1 -0
- package/dist/composables/{useConfig.d.mts → useConfig.d.ts} +2 -2
- package/dist/composables/useConfig.d.ts.map +1 -0
- package/dist/composables/{useConfig.mjs → useConfig.js} +2 -3
- package/dist/composables/useConfig.js.map +1 -0
- package/dist/composables/useCurrentTemplate.d.ts +31 -0
- package/dist/composables/useCurrentTemplate.d.ts.map +1 -0
- package/dist/composables/useCurrentTemplate.js +35 -0
- package/dist/composables/useCurrentTemplate.js.map +1 -0
- package/dist/composables/{useDoctype.d.mts → useDoctype.d.ts} +1 -1
- package/dist/composables/useDoctype.d.ts.map +1 -0
- package/dist/composables/{useDoctype.mjs → useDoctype.js} +3 -4
- package/dist/composables/useDoctype.js.map +1 -0
- package/dist/composables/{useEvent.d.mts → useEvent.d.ts} +3 -3
- package/dist/composables/useEvent.d.ts.map +1 -0
- package/dist/composables/{useEvent.mjs → useEvent.js} +4 -5
- package/dist/composables/useEvent.js.map +1 -0
- package/dist/composables/useFont.d.ts +50 -0
- package/dist/composables/useFont.d.ts.map +1 -0
- package/dist/composables/useFont.js +92 -0
- package/dist/composables/useFont.js.map +1 -0
- package/dist/composables/useOutlookFallback.d.ts +21 -0
- package/dist/composables/useOutlookFallback.d.ts.map +1 -0
- package/dist/composables/useOutlookFallback.js +29 -0
- package/dist/composables/useOutlookFallback.js.map +1 -0
- package/dist/composables/{usePlaintext.d.mts → usePlaintext.d.ts} +3 -1
- package/dist/composables/usePlaintext.d.ts.map +1 -0
- package/dist/composables/{usePlaintext.mjs → usePlaintext.js} +4 -4
- package/dist/composables/usePlaintext.js.map +1 -0
- package/dist/composables/usePreheader.d.ts +24 -0
- package/dist/composables/usePreheader.d.ts.map +1 -0
- package/dist/composables/usePreheader.js +28 -0
- package/dist/composables/usePreheader.js.map +1 -0
- package/dist/composables/useTransformers.d.ts +34 -0
- package/dist/composables/useTransformers.d.ts.map +1 -0
- package/dist/composables/useTransformers.js +48 -0
- package/dist/composables/useTransformers.js.map +1 -0
- package/dist/composables/useUrlQuery.d.ts +19 -0
- package/dist/composables/useUrlQuery.d.ts.map +1 -0
- package/dist/composables/useUrlQuery.js +26 -0
- package/dist/composables/useUrlQuery.js.map +1 -0
- package/dist/config/{defaults.d.mts → defaults.d.ts} +2 -2
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/{defaults.mjs → defaults.js} +10 -6
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/{index.d.mts → index.d.ts} +4 -4
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/{index.mjs → index.js} +12 -10
- package/dist/config/index.js.map +1 -0
- package/dist/events/{index.d.mts → index.d.ts} +30 -12
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/{index.mjs → index.js} +26 -13
- package/dist/events/index.js.map +1 -0
- package/dist/index.d.ts +39 -0
- package/dist/index.js +38 -0
- package/dist/{plaintext.d.mts → plaintext.d.ts} +1 -1
- package/dist/plaintext.d.ts.map +1 -0
- package/dist/{plaintext.mjs → plaintext.js} +4 -5
- package/dist/plaintext.js.map +1 -0
- package/dist/{plugin.d.mts → plugin.d.ts} +2 -2
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +57 -0
- package/dist/plugin.js.map +1 -0
- package/dist/plugins/postcss/{mergeMediaQueries.d.mts → mergeMediaQueries.d.ts} +2 -2
- package/dist/plugins/postcss/mergeMediaQueries.d.ts.map +1 -0
- package/dist/plugins/postcss/{mergeMediaQueries.mjs → mergeMediaQueries.js} +2 -3
- package/dist/plugins/postcss/mergeMediaQueries.js.map +1 -0
- package/dist/plugins/postcss/{pruneVars.d.mts → pruneVars.d.ts} +1 -1
- package/dist/plugins/postcss/pruneVars.d.ts.map +1 -0
- package/dist/plugins/postcss/{pruneVars.mjs → pruneVars.js} +2 -2
- package/dist/plugins/postcss/pruneVars.js.map +1 -0
- package/dist/plugins/postcss/quoteFontFamilies.d.ts +13 -0
- package/dist/plugins/postcss/quoteFontFamilies.d.ts.map +1 -0
- package/dist/plugins/postcss/quoteFontFamilies.js +84 -0
- package/dist/plugins/postcss/quoteFontFamilies.js.map +1 -0
- package/dist/plugins/postcss/{removeDeclarations.d.mts → removeDeclarations.d.ts} +1 -1
- package/dist/plugins/postcss/removeDeclarations.d.ts.map +1 -0
- package/dist/plugins/postcss/{removeDeclarations.mjs → removeDeclarations.js} +2 -2
- package/dist/plugins/postcss/removeDeclarations.js.map +1 -0
- package/dist/plugins/postcss/resolveMaizzleImports.d.ts +16 -0
- package/dist/plugins/postcss/resolveMaizzleImports.d.ts.map +1 -0
- package/dist/plugins/postcss/resolveMaizzleImports.js +39 -0
- package/dist/plugins/postcss/resolveMaizzleImports.js.map +1 -0
- package/dist/plugins/postcss/resolveProps.d.ts +8 -0
- package/dist/plugins/postcss/resolveProps.d.ts.map +1 -0
- package/dist/plugins/postcss/resolveProps.js +144 -0
- package/dist/plugins/postcss/resolveProps.js.map +1 -0
- package/dist/plugins/postcss/{tailwindCleanup.d.mts → tailwindCleanup.d.ts} +2 -2
- package/dist/plugins/postcss/tailwindCleanup.d.ts.map +1 -0
- package/dist/plugins/postcss/tailwindCleanup.js +68 -0
- package/dist/plugins/postcss/tailwindCleanup.js.map +1 -0
- package/dist/prepare.d.ts +17 -0
- package/dist/prepare.d.ts.map +1 -0
- package/dist/prepare.js +44 -0
- package/dist/prepare.js.map +1 -0
- package/dist/render/active.d.ts +8 -0
- package/dist/render/active.d.ts.map +1 -0
- package/dist/render/active.js +12 -0
- package/dist/render/active.js.map +1 -0
- package/dist/render/{createRenderer.d.mts → createRenderer.d.ts} +15 -7
- package/dist/render/createRenderer.d.ts.map +1 -0
- package/dist/render/createRenderer.js +320 -0
- package/dist/render/createRenderer.js.map +1 -0
- package/dist/render/index.d.ts +18 -0
- package/dist/render/index.d.ts.map +1 -0
- package/dist/render/index.js +53 -0
- package/dist/render/index.js.map +1 -0
- package/dist/render/injectFonts.d.ts +15 -0
- package/dist/render/injectFonts.d.ts.map +1 -0
- package/dist/render/injectFonts.js +45 -0
- package/dist/render/injectFonts.js.map +1 -0
- package/dist/render/plugins/codeBlockExtract.d.ts +14 -0
- package/dist/render/plugins/codeBlockExtract.d.ts.map +1 -0
- package/dist/render/plugins/codeBlockExtract.js +34 -0
- package/dist/render/plugins/codeBlockExtract.js.map +1 -0
- package/dist/render/plugins/markdownExtract.d.ts +12 -0
- package/dist/render/plugins/markdownExtract.d.ts.map +1 -0
- package/dist/render/plugins/markdownExtract.js +49 -0
- package/dist/render/plugins/markdownExtract.js.map +1 -0
- package/dist/render/plugins/rawExtract.d.ts +14 -0
- package/dist/render/plugins/rawExtract.d.ts.map +1 -0
- package/dist/render/plugins/rawExtract.js +34 -0
- package/dist/render/plugins/rawExtract.js.map +1 -0
- package/dist/render/plugins/rowSourceLocation.d.ts +18 -0
- package/dist/render/plugins/rowSourceLocation.d.ts.map +1 -0
- package/dist/render/plugins/rowSourceLocation.js +45 -0
- package/dist/render/plugins/rowSourceLocation.js.map +1 -0
- package/dist/{serve.d.mts → serve.d.ts} +4 -2
- package/dist/serve.d.ts.map +1 -0
- package/dist/{serve.mjs → serve.js} +203 -78
- package/dist/serve.js.map +1 -0
- package/dist/server/compatibility.d.ts +59 -0
- package/dist/server/compatibility.d.ts.map +1 -0
- package/dist/server/compatibility.js +911 -0
- package/dist/server/compatibility.js.map +1 -0
- package/dist/server/email.d.ts +17 -0
- package/dist/server/email.d.ts.map +1 -0
- package/dist/server/email.js +40 -0
- package/dist/server/email.js.map +1 -0
- package/dist/server/linter.d.ts +20 -0
- package/dist/server/linter.d.ts.map +1 -0
- package/dist/server/linter.js +339 -0
- package/dist/server/linter.js.map +1 -0
- package/dist/server/sfc-utils.d.ts +21 -0
- package/dist/server/sfc-utils.d.ts.map +1 -0
- package/dist/server/sfc-utils.js +198 -0
- package/dist/server/sfc-utils.js.map +1 -0
- package/dist/server/ui/App.vue +253 -77
- package/dist/server/ui/components/SidebarClose.vue +12 -0
- package/dist/server/ui/components/ui/checkbox/Checkbox.vue +35 -0
- package/dist/server/ui/components/ui/checkbox/index.ts +1 -0
- package/dist/server/ui/components/ui/command/Command.vue +5 -1
- package/dist/server/ui/components/ui/command/CommandDialog.vue +1 -1
- package/dist/server/ui/components/ui/command/CommandInput.vue +19 -1
- package/dist/server/ui/components/ui/command/CommandItem.vue +1 -1
- package/dist/server/ui/components/ui/command/CommandList.vue +1 -1
- package/dist/server/ui/components/ui/command/CommandShortcut.vue +1 -1
- package/dist/server/ui/components/ui/dialog/DialogOverlay.vue +9 -1
- package/dist/server/ui/components/ui/dropdown-menu/DropdownMenuItem.vue +1 -1
- package/dist/server/ui/components/ui/input/Input.vue +1 -1
- package/dist/server/ui/components/ui/scroll-area/ScrollBar.vue +1 -1
- package/dist/server/ui/components/ui/sheet/SheetContent.vue +1 -1
- package/dist/server/ui/components/ui/sheet/SheetOverlay.vue +9 -1
- package/dist/server/ui/components/ui/sidebar/Sidebar.vue +8 -1
- package/dist/server/ui/components/ui/sidebar/SidebarProvider.vue +1 -1
- package/dist/server/ui/components/ui/sidebar/SidebarTrigger.vue +5 -4
- package/dist/server/ui/components/ui/tags-input/TagsInput.vue +26 -0
- package/dist/server/ui/components/ui/tags-input/TagsInputInput.vue +17 -0
- package/dist/server/ui/components/ui/tags-input/TagsInputItem.vue +19 -0
- package/dist/server/ui/components/ui/tags-input/TagsInputItemDelete.vue +22 -0
- package/dist/server/ui/components/ui/tags-input/TagsInputItemText.vue +17 -0
- package/dist/server/ui/components/ui/tags-input/index.ts +5 -0
- package/dist/server/ui/components/ui/toggle/index.ts +3 -3
- package/dist/server/ui/components/ui/toggle-group/ToggleGroup.vue +1 -1
- package/dist/server/ui/components/ui/toggle-group/ToggleGroupItem.vue +2 -2
- package/dist/server/ui/lib/emulated-dark-mode.ts +131 -0
- package/dist/server/ui/main.css +20 -20
- package/dist/server/ui/pages/Home.vue +12 -5
- package/dist/server/ui/pages/Preview.vue +716 -276
- package/dist/tests/render/_helpers.d.ts +6 -0
- package/dist/tests/render/_helpers.d.ts.map +1 -0
- package/dist/tests/render/_helpers.js +16 -0
- package/dist/tests/render/_helpers.js.map +1 -0
- package/dist/transformers/{addAttributes.d.mts → addAttributes.d.ts} +2 -2
- package/dist/transformers/addAttributes.d.ts.map +1 -0
- package/dist/transformers/{addAttributes.mjs → addAttributes.js} +16 -13
- package/dist/transformers/addAttributes.js.map +1 -0
- package/dist/transformers/attributeToStyle.d.ts +38 -0
- package/dist/transformers/attributeToStyle.d.ts.map +1 -0
- package/dist/transformers/attributeToStyle.js +94 -0
- package/dist/transformers/attributeToStyle.js.map +1 -0
- package/dist/transformers/base.d.ts +71 -0
- package/dist/transformers/base.d.ts.map +1 -0
- package/dist/transformers/{base.mjs → base.js} +56 -30
- package/dist/transformers/base.js.map +1 -0
- package/dist/transformers/columnWidth.d.ts +31 -0
- package/dist/transformers/columnWidth.d.ts.map +1 -0
- package/dist/transformers/columnWidth.js +546 -0
- package/dist/transformers/columnWidth.js.map +1 -0
- package/dist/transformers/entities.d.ts +37 -0
- package/dist/transformers/entities.d.ts.map +1 -0
- package/dist/transformers/entities.js +73 -0
- package/dist/transformers/entities.js.map +1 -0
- package/dist/transformers/filters/defaults.d.ts +6 -0
- package/dist/transformers/filters/defaults.d.ts.map +1 -0
- package/dist/transformers/filters/defaults.js +78 -0
- package/dist/transformers/filters/defaults.js.map +1 -0
- package/dist/transformers/filters/index.d.ts +43 -0
- package/dist/transformers/filters/index.d.ts.map +1 -0
- package/dist/transformers/filters/index.js +89 -0
- package/dist/transformers/filters/index.js.map +1 -0
- package/dist/transformers/format.d.ts +22 -0
- package/dist/transformers/format.d.ts.map +1 -0
- package/dist/transformers/format.js +30 -0
- package/dist/transformers/format.js.map +1 -0
- package/dist/transformers/{index.d.mts → index.d.ts} +14 -11
- package/dist/transformers/index.d.ts.map +1 -0
- package/dist/transformers/index.js +133 -0
- package/dist/transformers/index.js.map +1 -0
- package/dist/transformers/inlineCss.d.ts +84 -0
- package/dist/transformers/inlineCss.d.ts.map +1 -0
- package/dist/transformers/inlineCss.js +91 -0
- package/dist/transformers/inlineCss.js.map +1 -0
- package/dist/transformers/inlineLink.d.ts +35 -0
- package/dist/transformers/inlineLink.d.ts.map +1 -0
- package/dist/transformers/{inlineLink.mjs → inlineLink.js} +34 -10
- package/dist/transformers/inlineLink.js.map +1 -0
- package/dist/transformers/minify.d.ts +21 -0
- package/dist/transformers/minify.d.ts.map +1 -0
- package/dist/transformers/minify.js +25 -0
- package/dist/transformers/minify.js.map +1 -0
- package/dist/transformers/msoPlaceholders.d.ts +28 -0
- package/dist/transformers/msoPlaceholders.d.ts.map +1 -0
- package/dist/transformers/msoPlaceholders.js +88 -0
- package/dist/transformers/msoPlaceholders.js.map +1 -0
- package/dist/transformers/purgeCss.d.ts +43 -0
- package/dist/transformers/purgeCss.d.ts.map +1 -0
- package/dist/transformers/purgeCss.js +181 -0
- package/dist/transformers/purgeCss.js.map +1 -0
- package/dist/transformers/removeAttributes.d.ts +54 -0
- package/dist/transformers/removeAttributes.d.ts.map +1 -0
- package/dist/transformers/removeAttributes.js +70 -0
- package/dist/transformers/removeAttributes.js.map +1 -0
- package/dist/transformers/{replaceStrings.d.mts → replaceStrings.d.ts} +2 -2
- package/dist/transformers/replaceStrings.d.ts.map +1 -0
- package/dist/transformers/{replaceStrings.mjs → replaceStrings.js} +2 -2
- package/dist/transformers/replaceStrings.js.map +1 -0
- package/dist/transformers/{safeClassNames.d.mts → safeClassNames.d.ts} +2 -2
- package/dist/transformers/safeClassNames.d.ts.map +1 -0
- package/dist/transformers/{safeClassNames.mjs → safeClassNames.js} +4 -5
- package/dist/transformers/safeClassNames.js.map +1 -0
- package/dist/transformers/shorthandCss.d.ts +47 -0
- package/dist/transformers/shorthandCss.d.ts.map +1 -0
- package/dist/transformers/shorthandCss.js +61 -0
- package/dist/transformers/shorthandCss.js.map +1 -0
- package/dist/transformers/sixHex.d.ts +25 -0
- package/dist/transformers/sixHex.d.ts.map +1 -0
- package/dist/transformers/sixHex.js +42 -0
- package/dist/transformers/sixHex.js.map +1 -0
- package/dist/transformers/tailwindComponent.d.ts +16 -0
- package/dist/transformers/tailwindComponent.d.ts.map +1 -0
- package/dist/transformers/tailwindComponent.js +92 -0
- package/dist/transformers/tailwindComponent.js.map +1 -0
- package/dist/transformers/{tailwindcss.d.mts → tailwindcss.d.ts} +8 -4
- package/dist/transformers/tailwindcss.d.ts.map +1 -0
- package/dist/transformers/tailwindcss.js +97 -0
- package/dist/transformers/tailwindcss.js.map +1 -0
- package/dist/transformers/urlQuery.d.ts +36 -0
- package/dist/transformers/urlQuery.d.ts.map +1 -0
- package/dist/transformers/urlQuery.js +77 -0
- package/dist/transformers/urlQuery.js.map +1 -0
- package/dist/types/config.d.ts +737 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +1 -0
- package/dist/utils/ast/index.d.ts +4 -0
- package/dist/utils/ast/index.js +4 -0
- package/dist/utils/ast/{parser.d.mts → parser.d.ts} +1 -1
- package/dist/utils/ast/parser.d.ts.map +1 -0
- package/dist/utils/ast/{parser.mjs → parser.js} +2 -3
- package/dist/utils/ast/parser.js.map +1 -0
- package/dist/utils/ast/serializer.d.ts +8 -0
- package/dist/utils/ast/serializer.d.ts.map +1 -0
- package/dist/utils/ast/serializer.js +36 -0
- package/dist/utils/ast/serializer.js.map +1 -0
- package/dist/utils/ast/{walker.d.mts → walker.d.ts} +1 -1
- package/dist/utils/ast/walker.d.ts.map +1 -0
- package/dist/utils/ast/{walker.mjs → walker.js} +2 -2
- package/dist/utils/ast/walker.js.map +1 -0
- package/dist/utils/compileTailwindCss.d.ts +16 -0
- package/dist/utils/compileTailwindCss.d.ts.map +1 -0
- package/dist/utils/compileTailwindCss.js +54 -0
- package/dist/utils/compileTailwindCss.js.map +1 -0
- package/dist/utils/componentSources.d.ts +50 -0
- package/dist/utils/componentSources.d.ts.map +1 -0
- package/dist/utils/componentSources.js +50 -0
- package/dist/utils/componentSources.js.map +1 -0
- package/dist/utils/decodeStyleEntities.d.ts +15 -0
- package/dist/utils/decodeStyleEntities.d.ts.map +1 -0
- package/dist/utils/decodeStyleEntities.js +18 -0
- package/dist/utils/decodeStyleEntities.js.map +1 -0
- package/dist/utils/detect.d.ts +5 -0
- package/dist/utils/detect.d.ts.map +1 -0
- package/dist/utils/detect.js +10 -0
- package/dist/utils/detect.js.map +1 -0
- package/dist/utils/output-markers.d.ts +29 -0
- package/dist/utils/output-markers.d.ts.map +1 -0
- package/dist/utils/output-markers.js +68 -0
- package/dist/utils/output-markers.js.map +1 -0
- package/dist/utils/{url.d.mts → url.d.ts} +1 -1
- package/dist/utils/url.d.ts.map +1 -0
- package/dist/utils/{url.mjs → url.js} +2 -3
- package/dist/utils/url.js.map +1 -0
- package/dist/utils/watchPaths.d.ts +11 -0
- package/dist/utils/watchPaths.d.ts.map +1 -0
- package/dist/utils/watchPaths.js +19 -0
- package/dist/utils/watchPaths.js.map +1 -0
- package/node_modules/@clack/core/CHANGELOG.md +8 -0
- package/node_modules/@clack/core/dist/index.d.mts +18 -4
- package/node_modules/@clack/core/dist/index.mjs +16 -10
- package/node_modules/@clack/core/dist/index.mjs.map +1 -1
- package/node_modules/@clack/core/package.json +5 -2
- package/node_modules/@clack/prompts/CHANGELOG.md +15 -0
- package/node_modules/@clack/prompts/README.md +107 -2
- package/node_modules/@clack/prompts/dist/index.d.mts +16 -11
- package/node_modules/@clack/prompts/dist/index.mjs +114 -107
- package/node_modules/@clack/prompts/dist/index.mjs.map +1 -1
- package/node_modules/@clack/prompts/package.json +7 -4
- package/node_modules/fast-string-truncated-width/dist/index.js +36 -96
- package/node_modules/fast-string-truncated-width/dist/types.d.ts +0 -3
- package/node_modules/fast-string-truncated-width/dist/utils.d.ts +3 -3
- package/node_modules/fast-string-truncated-width/dist/utils.js +14 -9
- package/node_modules/fast-string-truncated-width/package.json +1 -1
- package/node_modules/fast-string-truncated-width/readme.md +2 -3
- package/node_modules/fast-string-width/package.json +2 -2
- package/node_modules/fast-string-width/readme.md +0 -3
- package/node_modules/fast-wrap-ansi/lib/main.js +4 -1
- package/node_modules/fast-wrap-ansi/lib/main.js.map +1 -1
- package/node_modules/fast-wrap-ansi/package.json +2 -2
- package/node_modules/maizzle/README.md +24 -0
- package/node_modules/maizzle/dist/commands/make/component.mjs +1 -1
- package/node_modules/maizzle/dist/commands/make/config.mjs +1 -1
- package/node_modules/maizzle/dist/commands/make/layout.mjs +3 -3
- package/node_modules/maizzle/dist/commands/make/scaffold.mjs +1 -1
- package/node_modules/maizzle/dist/commands/make/stubs/Layout.vue +146 -0
- package/node_modules/maizzle/dist/commands/make/stubs/component.vue +2 -4
- package/node_modules/maizzle/dist/commands/make/stubs/config.ts +1 -5
- package/node_modules/maizzle/dist/commands/make/template.mjs +1 -1
- package/node_modules/maizzle/dist/commands/new.mjs +32 -52
- package/node_modules/maizzle/dist/index.d.mts +1 -0
- package/node_modules/maizzle/dist/index.mjs +30 -7
- package/node_modules/maizzle/package.json +4 -3
- package/node_modules/nypm/dist/cli.mjs +28 -5
- package/node_modules/nypm/dist/index.d.mts +0 -8
- package/node_modules/nypm/dist/index.mjs +27 -4
- package/node_modules/nypm/package.json +12 -12
- package/node_modules/tinyexec/README.md +1 -1
- package/node_modules/tinyexec/dist/main.d.mts +6 -6
- package/node_modules/tinyexec/dist/main.mjs +126 -134
- package/node_modules/tinyexec/package.json +9 -9
- package/package.json +31 -21
- package/dist/build.d.mts +0 -19
- package/dist/build.d.mts.map +0 -1
- package/dist/build.mjs +0 -139
- package/dist/build.mjs.map +0 -1
- package/dist/components/Divider.vue +0 -105
- package/dist/components/Vml.vue +0 -89
- package/dist/components/utils.d.mts +0 -5
- package/dist/components/utils.d.mts.map +0 -1
- package/dist/components/utils.mjs +0 -9
- package/dist/components/utils.mjs.map +0 -1
- package/dist/composables/defineConfig.d.mts.map +0 -1
- package/dist/composables/defineConfig.mjs.map +0 -1
- package/dist/composables/renderContext.d.mts +0 -19
- package/dist/composables/renderContext.d.mts.map +0 -1
- package/dist/composables/renderContext.mjs.map +0 -1
- package/dist/composables/useConfig.d.mts.map +0 -1
- package/dist/composables/useConfig.mjs.map +0 -1
- package/dist/composables/useDoctype.d.mts.map +0 -1
- package/dist/composables/useDoctype.mjs.map +0 -1
- package/dist/composables/useEvent.d.mts.map +0 -1
- package/dist/composables/useEvent.mjs.map +0 -1
- package/dist/composables/usePlaintext.d.mts.map +0 -1
- package/dist/composables/usePlaintext.mjs.map +0 -1
- package/dist/config/defaults.d.mts.map +0 -1
- package/dist/config/defaults.mjs.map +0 -1
- package/dist/config/index.d.mts.map +0 -1
- package/dist/config/index.mjs.map +0 -1
- package/dist/events/index.d.mts.map +0 -1
- package/dist/events/index.mjs.map +0 -1
- package/dist/index.d.mts +0 -29
- package/dist/index.mjs +0 -29
- package/dist/plaintext.d.mts.map +0 -1
- package/dist/plaintext.mjs.map +0 -1
- package/dist/plugin.d.mts.map +0 -1
- package/dist/plugin.mjs +0 -41
- package/dist/plugin.mjs.map +0 -1
- package/dist/plugins/postcss/mergeMediaQueries.d.mts.map +0 -1
- package/dist/plugins/postcss/mergeMediaQueries.mjs.map +0 -1
- package/dist/plugins/postcss/pruneVars.d.mts.map +0 -1
- package/dist/plugins/postcss/pruneVars.mjs.map +0 -1
- package/dist/plugins/postcss/removeDeclarations.d.mts.map +0 -1
- package/dist/plugins/postcss/removeDeclarations.mjs.map +0 -1
- package/dist/plugins/postcss/tailwindCleanup.d.mts.map +0 -1
- package/dist/plugins/postcss/tailwindCleanup.mjs +0 -35
- package/dist/plugins/postcss/tailwindCleanup.mjs.map +0 -1
- package/dist/render/createRenderer.d.mts.map +0 -1
- package/dist/render/createRenderer.mjs +0 -155
- package/dist/render/createRenderer.mjs.map +0 -1
- package/dist/render/index.d.mts +0 -26
- package/dist/render/index.d.mts.map +0 -1
- package/dist/render/index.mjs +0 -44
- package/dist/render/index.mjs.map +0 -1
- package/dist/serve.d.mts.map +0 -1
- package/dist/serve.mjs.map +0 -1
- package/dist/server/compatibility.d.mts +0 -6
- package/dist/server/compatibility.d.mts.map +0 -1
- package/dist/server/compatibility.mjs +0 -83
- package/dist/server/compatibility.mjs.map +0 -1
- package/dist/server/linter.d.mts +0 -6
- package/dist/server/linter.d.mts.map +0 -1
- package/dist/server/linter.mjs +0 -200
- package/dist/server/linter.mjs.map +0 -1
- package/dist/server/ui/components/ui/resizable/ResizableHandle.vue +0 -30
- package/dist/server/ui/components/ui/resizable/ResizablePanel.vue +0 -21
- package/dist/server/ui/components/ui/resizable/ResizablePanelGroup.vue +0 -25
- package/dist/server/ui/components/ui/resizable/index.ts +0 -3
- package/dist/transformers/addAttributes.d.mts.map +0 -1
- package/dist/transformers/addAttributes.mjs.map +0 -1
- package/dist/transformers/attributeToStyle.d.mts +0 -25
- package/dist/transformers/attributeToStyle.d.mts.map +0 -1
- package/dist/transformers/attributeToStyle.mjs +0 -80
- package/dist/transformers/attributeToStyle.mjs.map +0 -1
- package/dist/transformers/base.d.mts +0 -8
- package/dist/transformers/base.d.mts.map +0 -1
- package/dist/transformers/base.mjs.map +0 -1
- package/dist/transformers/entities.d.mts +0 -8
- package/dist/transformers/entities.d.mts.map +0 -1
- package/dist/transformers/entities.mjs +0 -38
- package/dist/transformers/entities.mjs.map +0 -1
- package/dist/transformers/format.d.mts +0 -15
- package/dist/transformers/format.d.mts.map +0 -1
- package/dist/transformers/format.mjs +0 -26
- package/dist/transformers/format.mjs.map +0 -1
- package/dist/transformers/index.d.mts.map +0 -1
- package/dist/transformers/index.mjs +0 -73
- package/dist/transformers/index.mjs.map +0 -1
- package/dist/transformers/inlineCSS.d.mts +0 -30
- package/dist/transformers/inlineCSS.d.mts.map +0 -1
- package/dist/transformers/inlineCSS.mjs +0 -79
- package/dist/transformers/inlineCSS.mjs.map +0 -1
- package/dist/transformers/inlineLink.d.mts +0 -14
- package/dist/transformers/inlineLink.d.mts.map +0 -1
- package/dist/transformers/inlineLink.mjs.map +0 -1
- package/dist/transformers/minify.d.mts +0 -17
- package/dist/transformers/minify.d.mts.map +0 -1
- package/dist/transformers/minify.mjs +0 -24
- package/dist/transformers/minify.mjs.map +0 -1
- package/dist/transformers/purgeCSS.d.mts +0 -23
- package/dist/transformers/purgeCSS.d.mts.map +0 -1
- package/dist/transformers/purgeCSS.mjs +0 -66
- package/dist/transformers/purgeCSS.mjs.map +0 -1
- package/dist/transformers/removeAttributes.d.mts +0 -31
- package/dist/transformers/removeAttributes.d.mts.map +0 -1
- package/dist/transformers/removeAttributes.mjs +0 -63
- package/dist/transformers/removeAttributes.mjs.map +0 -1
- package/dist/transformers/replaceStrings.d.mts.map +0 -1
- package/dist/transformers/replaceStrings.mjs.map +0 -1
- package/dist/transformers/safeClassNames.d.mts.map +0 -1
- package/dist/transformers/safeClassNames.mjs.map +0 -1
- package/dist/transformers/shorthandCSS.d.mts +0 -24
- package/dist/transformers/shorthandCSS.d.mts.map +0 -1
- package/dist/transformers/shorthandCSS.mjs +0 -48
- package/dist/transformers/shorthandCSS.mjs.map +0 -1
- package/dist/transformers/tailwindcss.d.mts.map +0 -1
- package/dist/transformers/tailwindcss.mjs +0 -136
- package/dist/transformers/tailwindcss.mjs.map +0 -1
- package/dist/transformers/urlQuery.d.mts +0 -24
- package/dist/transformers/urlQuery.d.mts.map +0 -1
- package/dist/transformers/urlQuery.mjs +0 -65
- package/dist/transformers/urlQuery.mjs.map +0 -1
- package/dist/types/config.d.mts +0 -149
- package/dist/types/config.d.mts.map +0 -1
- package/dist/types/config.mjs +0 -1
- package/dist/types/index.d.mts +0 -2
- package/dist/types/index.mjs +0 -1
- package/dist/utils/ast/index.d.mts +0 -4
- package/dist/utils/ast/index.mjs +0 -5
- package/dist/utils/ast/parser.d.mts.map +0 -1
- package/dist/utils/ast/parser.mjs.map +0 -1
- package/dist/utils/ast/serializer.d.mts +0 -7
- package/dist/utils/ast/serializer.d.mts.map +0 -1
- package/dist/utils/ast/serializer.mjs +0 -13
- package/dist/utils/ast/serializer.mjs.map +0 -1
- package/dist/utils/ast/walker.d.mts.map +0 -1
- package/dist/utils/ast/walker.mjs.map +0 -1
- package/dist/utils/url.d.mts.map +0 -1
- package/dist/utils/url.mjs.map +0 -1
- package/node_modules/maizzle/dist/commands/make/stubs/layout.vue +0 -39
|
@@ -0,0 +1,737 @@
|
|
|
1
|
+
import { RemoveValue } from "../plugins/postcss/removeDeclarations.js";
|
|
2
|
+
import { TemplateInfo } from "../events/index.js";
|
|
3
|
+
import { Directive, Plugin } from "vue";
|
|
4
|
+
import { Options } from "juice";
|
|
5
|
+
import * as _$oxfmt from "oxfmt";
|
|
6
|
+
import * as _$html_crush0 from "html-crush";
|
|
7
|
+
import { InlineConfig } from "vite";
|
|
8
|
+
import * as _$string_strip_html0 from "string-strip-html";
|
|
9
|
+
import * as _$shiki from "shiki";
|
|
10
|
+
import { Options as Options$1 } from "unplugin-vue-markdown/types";
|
|
11
|
+
|
|
12
|
+
//#region src/types/config.d.ts
|
|
13
|
+
interface UrlQueryOptions {
|
|
14
|
+
/**
|
|
15
|
+
* CSS selectors for elements to process.
|
|
16
|
+
*
|
|
17
|
+
* @default ['a']
|
|
18
|
+
*/
|
|
19
|
+
tags?: string[];
|
|
20
|
+
/**
|
|
21
|
+
* HTML attributes containing URLs to append query params to.
|
|
22
|
+
*
|
|
23
|
+
* @default ['src', 'href', 'poster', 'srcset', 'background']
|
|
24
|
+
*/
|
|
25
|
+
attributes?: string[];
|
|
26
|
+
/**
|
|
27
|
+
* When `true`, only appends query params to absolute URLs.
|
|
28
|
+
*
|
|
29
|
+
* @default true
|
|
30
|
+
*/
|
|
31
|
+
strict?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Options forwarded to the `query-string` library for controlling serialization.
|
|
34
|
+
*
|
|
35
|
+
* @default { encode: false }
|
|
36
|
+
*/
|
|
37
|
+
qs?: Record<string, unknown>;
|
|
38
|
+
}
|
|
39
|
+
type UrlQuery = Record<string, unknown> & {
|
|
40
|
+
_options?: UrlQueryOptions;
|
|
41
|
+
};
|
|
42
|
+
interface UrlConfig {
|
|
43
|
+
/**
|
|
44
|
+
* Append query parameters to URLs in your HTML.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* url: {
|
|
48
|
+
* query: {
|
|
49
|
+
* utm_source: 'maizzle',
|
|
50
|
+
* utm_medium: 'email',
|
|
51
|
+
* }
|
|
52
|
+
* }
|
|
53
|
+
*/
|
|
54
|
+
query?: UrlQuery;
|
|
55
|
+
/**
|
|
56
|
+
* Prepend a base URL to relative paths.
|
|
57
|
+
*
|
|
58
|
+
* Pass a string to prepend to all tags, or an object for fine-grained control.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* url: {
|
|
62
|
+
* base: 'https://cdn.example.com/emails/',
|
|
63
|
+
* }
|
|
64
|
+
*/
|
|
65
|
+
base?: string | {
|
|
66
|
+
/** The base URL to prepend. */url?: string; /** Tags or tag-attribute map to process. */
|
|
67
|
+
tags?: string[] | Record<string, Record<string, string | boolean>>; /** Attributes to process. */
|
|
68
|
+
attributes?: Record<string, string>; /** Also apply to URLs in `<style>` tags. */
|
|
69
|
+
styleTag?: boolean; /** Also apply to URLs in inline `style` attributes. */
|
|
70
|
+
inlineCss?: boolean;
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
interface CssConfig {
|
|
74
|
+
/**
|
|
75
|
+
* Base directory for Tailwind CSS `@source` resolution.
|
|
76
|
+
*
|
|
77
|
+
* Automatically set to `root` when `root` is configured.
|
|
78
|
+
*/
|
|
79
|
+
base?: string;
|
|
80
|
+
/**
|
|
81
|
+
* Remove unused CSS.
|
|
82
|
+
*
|
|
83
|
+
* Set to `true` to enable with defaults, or pass an options object.
|
|
84
|
+
*
|
|
85
|
+
* @default false
|
|
86
|
+
*/
|
|
87
|
+
purge?: boolean | Record<string, unknown>;
|
|
88
|
+
/**
|
|
89
|
+
* Inline CSS from `<style>` tags into matching HTML elements.
|
|
90
|
+
*
|
|
91
|
+
* Set to `true` to enable with defaults, or pass an options object for fine-grained control.
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* css: {
|
|
95
|
+
* inline: {
|
|
96
|
+
* removeStyleTags: true,
|
|
97
|
+
* applyWidthAttributes: true,
|
|
98
|
+
* }
|
|
99
|
+
* }
|
|
100
|
+
*/
|
|
101
|
+
inline?: boolean | Options & {
|
|
102
|
+
/**
|
|
103
|
+
* Convert HTML attributes like `width`, `height`, `bgcolor`, and `valign`
|
|
104
|
+
* to inline CSS styles. Set to `true` for all, or pass an array of attribute names.
|
|
105
|
+
*
|
|
106
|
+
* @default false
|
|
107
|
+
*/
|
|
108
|
+
attributeToStyle?: boolean | string[];
|
|
109
|
+
/**
|
|
110
|
+
* Convert `0px`, `0em` etc. to `0` in inline styles.
|
|
111
|
+
*
|
|
112
|
+
* @default true
|
|
113
|
+
*/
|
|
114
|
+
preferUnitlessValues?: boolean;
|
|
115
|
+
/**
|
|
116
|
+
* CSS selectors to preserve in `<style>` tags, even after inlining.
|
|
117
|
+
* Mapped to Juice's `preservedSelectors` option.
|
|
118
|
+
*
|
|
119
|
+
* @default []
|
|
120
|
+
*/
|
|
121
|
+
safelist?: string[];
|
|
122
|
+
/**
|
|
123
|
+
* Duplicate CSS properties to HTML attributes.
|
|
124
|
+
* Mapped to Juice's static `styleToAttribute` property.
|
|
125
|
+
*
|
|
126
|
+
* @default {}
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* styleToAttribute: {
|
|
130
|
+
* 'background-color': 'bgcolor',
|
|
131
|
+
* }
|
|
132
|
+
*/
|
|
133
|
+
styleToAttribute?: Record<string, string>;
|
|
134
|
+
/**
|
|
135
|
+
* Elements that can receive `width` HTML attributes.
|
|
136
|
+
* Mapped to Juice's static `widthElements` property.
|
|
137
|
+
*
|
|
138
|
+
* @default ['img', 'video']
|
|
139
|
+
*/
|
|
140
|
+
widthElements?: string[];
|
|
141
|
+
/**
|
|
142
|
+
* Elements that can receive `height` HTML attributes.
|
|
143
|
+
* Mapped to Juice's static `heightElements` property.
|
|
144
|
+
*
|
|
145
|
+
* @default ['img', 'video']
|
|
146
|
+
*/
|
|
147
|
+
heightElements?: string[];
|
|
148
|
+
/**
|
|
149
|
+
* CSS properties to exclude from inlining.
|
|
150
|
+
* Mapped to Juice's static `excludedProperties` property.
|
|
151
|
+
*
|
|
152
|
+
* @default []
|
|
153
|
+
*/
|
|
154
|
+
excludedProperties?: string[];
|
|
155
|
+
/**
|
|
156
|
+
* Template language code blocks to preserve during inlining.
|
|
157
|
+
* Mapped to Juice's static `codeBlocks` property.
|
|
158
|
+
*
|
|
159
|
+
* @default { EJS: { start: '<%', end: '%>' }, HBS: { start: '\{\{', end: '}}' } }
|
|
160
|
+
*/
|
|
161
|
+
codeBlocks?: Record<string, {
|
|
162
|
+
start: string;
|
|
163
|
+
end: string;
|
|
164
|
+
}>;
|
|
165
|
+
/**
|
|
166
|
+
* Additional CSS string to inline alongside `<style>` tag contents.
|
|
167
|
+
* Mapped to Juice's `extraCss` option.
|
|
168
|
+
*/
|
|
169
|
+
customCSS?: string;
|
|
170
|
+
};
|
|
171
|
+
/**
|
|
172
|
+
* Merge duplicate `@media` queries and sort them.
|
|
173
|
+
*
|
|
174
|
+
* Enabled by default. Set to `false` to disable, or pass an object to control sort order.
|
|
175
|
+
*
|
|
176
|
+
* @default true
|
|
177
|
+
*
|
|
178
|
+
* @example
|
|
179
|
+
* css: {
|
|
180
|
+
* media: { sort: 'desktop-first' },
|
|
181
|
+
* }
|
|
182
|
+
*/
|
|
183
|
+
media?: boolean | {
|
|
184
|
+
/**
|
|
185
|
+
* Sort order for media queries.
|
|
186
|
+
*
|
|
187
|
+
* @default 'mobile-first'
|
|
188
|
+
*/
|
|
189
|
+
sort?: 'mobile-first' | 'desktop-first' | ((a: string, b: string) => number);
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* Strip units from zero values in inlined styles.
|
|
193
|
+
*
|
|
194
|
+
* For example, `padding: 0px 16px` becomes `padding: 0 16px`.
|
|
195
|
+
*
|
|
196
|
+
* @default true
|
|
197
|
+
*/
|
|
198
|
+
preferUnitless?: boolean;
|
|
199
|
+
/**
|
|
200
|
+
* Replace unsafe CSS class names with email-safe equivalents.
|
|
201
|
+
*
|
|
202
|
+
* @default true
|
|
203
|
+
*/
|
|
204
|
+
safe?: boolean | Record<string, string>;
|
|
205
|
+
/**
|
|
206
|
+
* Rewrite longhand CSS to shorthand where possible.
|
|
207
|
+
*
|
|
208
|
+
* For example, `padding: 10px 20px 10px 20px` becomes `padding: 10px 20px`.
|
|
209
|
+
*
|
|
210
|
+
* @default false
|
|
211
|
+
*/
|
|
212
|
+
shorthand?: boolean | {
|
|
213
|
+
tags?: string[];
|
|
214
|
+
};
|
|
215
|
+
/**
|
|
216
|
+
* Convert 3-digit HEX colors to 6-digit in `bgcolor` and `color` attributes.
|
|
217
|
+
*
|
|
218
|
+
* Some email clients don't support shorthand HEX like `#fff`.
|
|
219
|
+
*
|
|
220
|
+
* @default true
|
|
221
|
+
*/
|
|
222
|
+
sixHex?: boolean;
|
|
223
|
+
/**
|
|
224
|
+
* Remove specific CSS declarations by selector.
|
|
225
|
+
*
|
|
226
|
+
* @example
|
|
227
|
+
* css: {
|
|
228
|
+
* removeDeclarations: {
|
|
229
|
+
* ':root': '*',
|
|
230
|
+
* }
|
|
231
|
+
* }
|
|
232
|
+
*/
|
|
233
|
+
removeDeclarations?: Record<string, RemoveValue>;
|
|
234
|
+
/**
|
|
235
|
+
* Glob patterns or paths excluded from Tailwind's `@source` scanner.
|
|
236
|
+
*
|
|
237
|
+
* Tailwind won't generate utilities for classes used in these files.
|
|
238
|
+
* Useful for ignoring AMP variants or any templates whose classes
|
|
239
|
+
* shouldn't end up in the output CSS.
|
|
240
|
+
*
|
|
241
|
+
* @example
|
|
242
|
+
* css: {
|
|
243
|
+
* exclude: ['emails/amp/**'],
|
|
244
|
+
* }
|
|
245
|
+
*/
|
|
246
|
+
exclude?: string[];
|
|
247
|
+
}
|
|
248
|
+
interface AttributesConfig {
|
|
249
|
+
/**
|
|
250
|
+
* Add attributes to HTML elements.
|
|
251
|
+
*
|
|
252
|
+
* Set the whole map to `false` to disable auto-add. Set a selector
|
|
253
|
+
* entry to `false` to skip that selector. Set an individual attribute
|
|
254
|
+
* to `false` to skip just that attribute while keeping the rest.
|
|
255
|
+
*
|
|
256
|
+
* @example
|
|
257
|
+
* html: {
|
|
258
|
+
* attributes: {
|
|
259
|
+
* add: {
|
|
260
|
+
* table: { cellpadding: 0, cellspacing: 0, role: 'none' },
|
|
261
|
+
* img: { alt: '' },
|
|
262
|
+
* }
|
|
263
|
+
* }
|
|
264
|
+
* }
|
|
265
|
+
*/
|
|
266
|
+
add?: false | Record<string, false | Record<string, false | string | boolean | number>>;
|
|
267
|
+
/**
|
|
268
|
+
* Remove attributes from HTML elements.
|
|
269
|
+
*
|
|
270
|
+
* Empty `style` and `class` attributes are always stripped, regardless
|
|
271
|
+
* of config. Entries added here are appended to those defaults.
|
|
272
|
+
*
|
|
273
|
+
* - String — remove when the attribute's value is empty.
|
|
274
|
+
* - `{ name, value: 'literal' }` — remove when the value matches exactly.
|
|
275
|
+
* - `{ name, value: /regex/ }` — remove when the value matches the regex.
|
|
276
|
+
*
|
|
277
|
+
* @example
|
|
278
|
+
* html: {
|
|
279
|
+
* attributes: {
|
|
280
|
+
* remove: [
|
|
281
|
+
* 'data-foo',
|
|
282
|
+
* { name: 'role', value: 'none' },
|
|
283
|
+
* { name: 'class', value: /^js-/ },
|
|
284
|
+
* ],
|
|
285
|
+
* }
|
|
286
|
+
* }
|
|
287
|
+
*/
|
|
288
|
+
remove?: Array<string | {
|
|
289
|
+
name: string;
|
|
290
|
+
value?: string | RegExp;
|
|
291
|
+
}>;
|
|
292
|
+
}
|
|
293
|
+
type EntitiesConfig = boolean | Record<string, string>;
|
|
294
|
+
/**
|
|
295
|
+
* caniemail.com client family slugs. Maintained manually from
|
|
296
|
+
* https://www.caniemail.com/api/data.json — update this list when caniemail
|
|
297
|
+
* adds new clients.
|
|
298
|
+
*/
|
|
299
|
+
type CaniemailClient = 'gmail' | 'outlook' | 'yahoo' | 'apple-mail' | 'aol' | 'thunderbird' | 'microsoft' | 'samsung-email' | 'sfr' | 'orange' | 'protonmail' | 'hey' | 'mail-ru' | 'fastmail' | 'laposte' | 't-online-de' | 'free-fr' | 'gmx' | 'web-de' | 'ionos-1and1' | 'rainloop' | 'wp-pl';
|
|
300
|
+
interface ChecksConfig {
|
|
301
|
+
/**
|
|
302
|
+
* Client families to check against. Defaults to the four majors:
|
|
303
|
+
* Gmail, Apple Mail, Outlook, Yahoo. Pass `'all'` to check every client
|
|
304
|
+
* in the caniemail dataset.
|
|
305
|
+
*/
|
|
306
|
+
clients?: CaniemailClient[] | 'all';
|
|
307
|
+
/**
|
|
308
|
+
* Filter which severities are reported. Omit to show everything.
|
|
309
|
+
*
|
|
310
|
+
* - `'error'` — only errors (unsupported features, hard lint errors)
|
|
311
|
+
* - `'warning'` — only warnings (partial / unknown support, lint warnings)
|
|
312
|
+
* - `'lint'` — only lint items (both severities, no compat items)
|
|
313
|
+
*/
|
|
314
|
+
level?: 'error' | 'warning' | 'lint';
|
|
315
|
+
}
|
|
316
|
+
interface PostcssConfig {
|
|
317
|
+
/**
|
|
318
|
+
* Selector prefixes to strip from compiled CSS.
|
|
319
|
+
*
|
|
320
|
+
* @default [':host', ':lang']
|
|
321
|
+
*
|
|
322
|
+
* @example
|
|
323
|
+
* postcss: {
|
|
324
|
+
* removeSelectors: [':host', ':lang', ':root'],
|
|
325
|
+
* }
|
|
326
|
+
*/
|
|
327
|
+
removeSelectors?: string[];
|
|
328
|
+
/**
|
|
329
|
+
* At-rule names to strip from compiled CSS.
|
|
330
|
+
*
|
|
331
|
+
* @default ['layer', 'property']
|
|
332
|
+
*
|
|
333
|
+
* @example
|
|
334
|
+
* postcss: {
|
|
335
|
+
* removeAtRules: ['layer', 'property', 'charset'],
|
|
336
|
+
* }
|
|
337
|
+
*/
|
|
338
|
+
removeAtRules?: string[];
|
|
339
|
+
}
|
|
340
|
+
interface HtmlConfig {
|
|
341
|
+
/** Configure HTML attribute transformations. */
|
|
342
|
+
attributes?: AttributesConfig;
|
|
343
|
+
/**
|
|
344
|
+
* Decode HTML entities.
|
|
345
|
+
*
|
|
346
|
+
* Set to `true` to decode all, or pass a map of entities to decode.
|
|
347
|
+
*
|
|
348
|
+
* @default true
|
|
349
|
+
*/
|
|
350
|
+
decodeEntities?: EntitiesConfig;
|
|
351
|
+
/**
|
|
352
|
+
* Pretty-print the HTML output.
|
|
353
|
+
*
|
|
354
|
+
* Set to `true` to enable with defaults, or pass options.
|
|
355
|
+
*/
|
|
356
|
+
format?: boolean | _$oxfmt.FormatOptions;
|
|
357
|
+
/**
|
|
358
|
+
* Minify the HTML output.
|
|
359
|
+
*
|
|
360
|
+
* Set to `true` to enable with defaults, or pass `html-crush`
|
|
361
|
+
* options to customize.
|
|
362
|
+
*
|
|
363
|
+
* @see https://codsen.com/os/html-crush
|
|
364
|
+
*/
|
|
365
|
+
minify?: boolean | Partial<_$html_crush0.Opts>;
|
|
366
|
+
}
|
|
367
|
+
type FilterFunction = (str: string, value: string) => string;
|
|
368
|
+
type FiltersConfig = false | Record<string, FilterFunction>;
|
|
369
|
+
interface MarkdownConfig extends Options$1 {
|
|
370
|
+
/**
|
|
371
|
+
* The shiki theme to use for syntax highlighting in Markdown fenced code blocks.
|
|
372
|
+
*
|
|
373
|
+
* @default 'github-light'
|
|
374
|
+
*/
|
|
375
|
+
shikiTheme?: _$shiki.BundledTheme;
|
|
376
|
+
}
|
|
377
|
+
interface VueConfig {
|
|
378
|
+
/**
|
|
379
|
+
* Vue plugins to register on the app instance before rendering.
|
|
380
|
+
*
|
|
381
|
+
* Pass a factory (`() => Plugin[]`) for stateful plugins like vue-i18n
|
|
382
|
+
* or Pinia to get a fresh instance per render — otherwise state leaks
|
|
383
|
+
* across templates (e.g. one template setting `locale.value = 'fr'`
|
|
384
|
+
* affects the next render).
|
|
385
|
+
*/
|
|
386
|
+
plugins?: Plugin[] | (() => Plugin[]);
|
|
387
|
+
/** Custom Vue directives to register globally. */
|
|
388
|
+
directives?: Record<string, Directive>;
|
|
389
|
+
/** Properties added to `app.config.globalProperties`, available in all templates. */
|
|
390
|
+
globalProperties?: Record<string, unknown>;
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* Per-transformer toggle map for `useTransformers`.
|
|
394
|
+
*
|
|
395
|
+
* - `false` skips the listed transformer.
|
|
396
|
+
* - `true` force-enables it for this run (only meaningful for boolean-driven
|
|
397
|
+
* transformers: inlineCss, purgeCss, prettify, minify, shorthandCss,
|
|
398
|
+
* sixHex, safeClassNames, entities). Layers on the matching
|
|
399
|
+
* `css.*` / `html.*` config slice.
|
|
400
|
+
* - missing keys keep their default behavior.
|
|
401
|
+
*
|
|
402
|
+
* Data-driven transformers (filters, baseURL, urlQuery, addAttributes,
|
|
403
|
+
* removeAttributes, replaceStrings, attributeToStyle) require actual
|
|
404
|
+
* config values — a bare `true` is a no-op for them.
|
|
405
|
+
*
|
|
406
|
+
* Transformers without a toggle (Tailwind, MSO placeholder resolution,
|
|
407
|
+
* column width math, link inlining) always run; they're driven by markup
|
|
408
|
+
* or framework state, not user opt-in.
|
|
409
|
+
*/
|
|
410
|
+
interface TransformerToggles {
|
|
411
|
+
safeClassNames?: boolean;
|
|
412
|
+
attributeToStyle?: boolean;
|
|
413
|
+
inlineCss?: boolean;
|
|
414
|
+
removeAttributes?: boolean;
|
|
415
|
+
shorthandCss?: boolean;
|
|
416
|
+
sixHex?: boolean;
|
|
417
|
+
addAttributes?: boolean;
|
|
418
|
+
filters?: boolean;
|
|
419
|
+
baseURL?: boolean;
|
|
420
|
+
urlQuery?: boolean;
|
|
421
|
+
purgeCss?: boolean;
|
|
422
|
+
entities?: boolean;
|
|
423
|
+
replaceStrings?: boolean;
|
|
424
|
+
prettify?: boolean;
|
|
425
|
+
minify?: boolean;
|
|
426
|
+
}
|
|
427
|
+
/**
|
|
428
|
+
* Plaintext generation options.
|
|
429
|
+
*
|
|
430
|
+
* Control where plaintext files are written, what extension they use,
|
|
431
|
+
* and the options forwarded to `string-strip-html`.
|
|
432
|
+
*/
|
|
433
|
+
interface PlaintextConfig {
|
|
434
|
+
/**
|
|
435
|
+
* Output directory for plaintext files. When omitted, files are written
|
|
436
|
+
* next to their HTML counterpart in `build.output.path`.
|
|
437
|
+
*/
|
|
438
|
+
destination?: string;
|
|
439
|
+
/**
|
|
440
|
+
* File extension for plaintext files (without the leading dot).
|
|
441
|
+
*
|
|
442
|
+
* @default 'txt'
|
|
443
|
+
*/
|
|
444
|
+
extension?: string;
|
|
445
|
+
/**
|
|
446
|
+
* Options forwarded to `string-strip-html`.
|
|
447
|
+
*
|
|
448
|
+
* @see https://codsen.com/os/string-strip-html
|
|
449
|
+
*/
|
|
450
|
+
options?: Partial<_$string_strip_html0.Opts>;
|
|
451
|
+
}
|
|
452
|
+
/**
|
|
453
|
+
* Source directory entry for component auto-import.
|
|
454
|
+
*
|
|
455
|
+
* String → folder name becomes a namespace prefix automatically
|
|
456
|
+
* (e.g. `widgets/Button.vue` → `<WidgetsButton />`).
|
|
457
|
+
*
|
|
458
|
+
* Object → custom prefix overrides the folder-derived name. With
|
|
459
|
+
* `pathPrefix: false`, intermediate subfolders are dropped from the
|
|
460
|
+
* resolved name (useful for icon sets organized by category).
|
|
461
|
+
*/
|
|
462
|
+
type ComponentSource = string | {
|
|
463
|
+
/** Directory to scan, resolved relative to `cwd`. */path: string;
|
|
464
|
+
/**
|
|
465
|
+
* Custom prefix prepended to every resolved component name.
|
|
466
|
+
* Empty string disables the auto folder-name prefix.
|
|
467
|
+
*/
|
|
468
|
+
prefix?: string;
|
|
469
|
+
/**
|
|
470
|
+
* Include intermediate subfolder names in the resolved component
|
|
471
|
+
* name. Defaults to `true`.
|
|
472
|
+
*
|
|
473
|
+
* @example
|
|
474
|
+
* // pathPrefix: true → icons/social/twitter.vue → <IconSocialTwitter />
|
|
475
|
+
* // pathPrefix: false → icons/social/twitter.vue → <IconTwitter />
|
|
476
|
+
*/
|
|
477
|
+
pathPrefix?: boolean;
|
|
478
|
+
};
|
|
479
|
+
interface MaizzleConfig {
|
|
480
|
+
/**
|
|
481
|
+
* Root directory for the Maizzle email project.
|
|
482
|
+
*
|
|
483
|
+
* When set, relative paths for `content`, `static.source`,
|
|
484
|
+
* and `css.base` are all resolved relative to this directory.
|
|
485
|
+
*
|
|
486
|
+
* Defaults to `process.cwd()`.
|
|
487
|
+
*
|
|
488
|
+
* @example
|
|
489
|
+
* maizzle({
|
|
490
|
+
* root: 'resources/js/emails',
|
|
491
|
+
* content: ['./**\/*.vue'],
|
|
492
|
+
* })
|
|
493
|
+
*/
|
|
494
|
+
root?: string;
|
|
495
|
+
/** Options for Markdown template support, extending `unplugin-vue-markdown`. */
|
|
496
|
+
markdown?: MarkdownConfig;
|
|
497
|
+
/**
|
|
498
|
+
* Glob patterns for email template files to process.
|
|
499
|
+
*
|
|
500
|
+
* Resolved relative to `root`.
|
|
501
|
+
*
|
|
502
|
+
* @default ['emails/**\/*.{vue,md}']
|
|
503
|
+
*/
|
|
504
|
+
content?: string[];
|
|
505
|
+
/** Output configuration for built email templates. */
|
|
506
|
+
output?: {
|
|
507
|
+
/**
|
|
508
|
+
* Directory to write compiled HTML files to.
|
|
509
|
+
*
|
|
510
|
+
* @default 'dist'
|
|
511
|
+
*/
|
|
512
|
+
path?: string;
|
|
513
|
+
/**
|
|
514
|
+
* File extension for compiled templates.
|
|
515
|
+
*
|
|
516
|
+
* @default 'html'
|
|
517
|
+
*
|
|
518
|
+
* @example
|
|
519
|
+
* output: {
|
|
520
|
+
* extension: 'blade.php',
|
|
521
|
+
* }
|
|
522
|
+
*/
|
|
523
|
+
extension?: string;
|
|
524
|
+
};
|
|
525
|
+
/** Static file copying configuration. */
|
|
526
|
+
static?: {
|
|
527
|
+
/**
|
|
528
|
+
* Glob patterns for static files to copy to the output directory.
|
|
529
|
+
*
|
|
530
|
+
* @default ['public/**\/*.*']
|
|
531
|
+
*/
|
|
532
|
+
source?: string[];
|
|
533
|
+
/**
|
|
534
|
+
* Subdirectory in the output folder where static files are placed.
|
|
535
|
+
*
|
|
536
|
+
* @default 'public'
|
|
537
|
+
*/
|
|
538
|
+
destination?: string;
|
|
539
|
+
};
|
|
540
|
+
/** Component auto-import configuration. */
|
|
541
|
+
components?: {
|
|
542
|
+
/**
|
|
543
|
+
* Additional directories to scan for auto-imported Vue components.
|
|
544
|
+
*
|
|
545
|
+
* Resolved relative to `cwd` (not `root`), so paths outside the
|
|
546
|
+
* email root directory work as expected.
|
|
547
|
+
*
|
|
548
|
+
* String entries use the folder name as a namespace prefix
|
|
549
|
+
* automatically (e.g. `widgets/Button.vue` → `<WidgetsButton />`).
|
|
550
|
+
* Object entries override that with a custom prefix.
|
|
551
|
+
*
|
|
552
|
+
* @example
|
|
553
|
+
* components: {
|
|
554
|
+
* source: [
|
|
555
|
+
* 'resources/js/components/email',
|
|
556
|
+
* { path: 'src/widgets', prefix: 'W' },
|
|
557
|
+
* { path: 'src/icons', prefix: 'Icon', pathPrefix: false },
|
|
558
|
+
* ],
|
|
559
|
+
* }
|
|
560
|
+
*/
|
|
561
|
+
source?: ComponentSource | ComponentSource[];
|
|
562
|
+
};
|
|
563
|
+
/** Dev server configuration. */
|
|
564
|
+
server?: {
|
|
565
|
+
/**
|
|
566
|
+
* Port for the dev server.
|
|
567
|
+
*
|
|
568
|
+
* @default 3000
|
|
569
|
+
*/
|
|
570
|
+
port?: number;
|
|
571
|
+
/**
|
|
572
|
+
* Additional file paths to watch for changes.
|
|
573
|
+
*
|
|
574
|
+
* @default []
|
|
575
|
+
*
|
|
576
|
+
* @example
|
|
577
|
+
* server: {
|
|
578
|
+
* watch: ['./tailwind.config.ts'],
|
|
579
|
+
* }
|
|
580
|
+
*/
|
|
581
|
+
watch?: string[];
|
|
582
|
+
/**
|
|
583
|
+
* Email sending configuration for the "Send test" feature in the dev UI.
|
|
584
|
+
*
|
|
585
|
+
* When not configured, falls back to Ethereal (free fake SMTP — emails
|
|
586
|
+
* are captured and viewable via a URL, never actually delivered).
|
|
587
|
+
*
|
|
588
|
+
* @example
|
|
589
|
+
* server: {
|
|
590
|
+
* email: {
|
|
591
|
+
* to: ['test@example.com'],
|
|
592
|
+
* from: 'dev@maizzle.test',
|
|
593
|
+
* transport: {
|
|
594
|
+
* host: 'smtp.mailtrap.io',
|
|
595
|
+
* port: 587,
|
|
596
|
+
* auth: { user: '...', pass: '...' },
|
|
597
|
+
* },
|
|
598
|
+
* },
|
|
599
|
+
* }
|
|
600
|
+
*/
|
|
601
|
+
email?: {
|
|
602
|
+
/** Default recipient(s). */to?: string | string[]; /** Sender address. @default 'Maizzle <maizzle@ethereal.email>' */
|
|
603
|
+
from?: string; /** Default subject line. */
|
|
604
|
+
subject?: string; /** Nodemailer transport options (SMTP, SES, etc.). Omit to use Ethereal. */
|
|
605
|
+
transport?: Record<string, unknown>;
|
|
606
|
+
};
|
|
607
|
+
/**
|
|
608
|
+
* Configure or disable the Checks tab in the dev UI.
|
|
609
|
+
*
|
|
610
|
+
* Set to `false` to disable checks entirely (the tab is hidden).
|
|
611
|
+
*
|
|
612
|
+
* @example
|
|
613
|
+
* server: {
|
|
614
|
+
* checks: {
|
|
615
|
+
* clients: ['gmail', 'outlook', 'apple-mail'],
|
|
616
|
+
* level: 'error',
|
|
617
|
+
* }
|
|
618
|
+
* }
|
|
619
|
+
*/
|
|
620
|
+
checks?: false | ChecksConfig;
|
|
621
|
+
};
|
|
622
|
+
/** Tailwind CSS and email CSS optimization settings. */
|
|
623
|
+
css?: CssConfig;
|
|
624
|
+
/**
|
|
625
|
+
* Generate a plaintext version of the email.
|
|
626
|
+
*
|
|
627
|
+
* Set to `true` to enable with defaults, or pass an object to configure
|
|
628
|
+
* destination directory, file extension, and `string-strip-html` options.
|
|
629
|
+
*
|
|
630
|
+
* @default false
|
|
631
|
+
* @example
|
|
632
|
+
* plaintext: {
|
|
633
|
+
* destination: 'build_production/plaintext',
|
|
634
|
+
* extension: 'txt',
|
|
635
|
+
* options: { ignoreTags: ['br'] },
|
|
636
|
+
* }
|
|
637
|
+
*/
|
|
638
|
+
plaintext?: boolean | PlaintextConfig;
|
|
639
|
+
/** PostCSS processing options. */
|
|
640
|
+
postcss?: PostcssConfig;
|
|
641
|
+
/**
|
|
642
|
+
* Enable the transformer pipeline (CSS inlining, purging, shorthand, etc).
|
|
643
|
+
*
|
|
644
|
+
* Pass `false` to skip the entire pipeline. Pass an object to opt out of
|
|
645
|
+
* specific transformers while keeping the rest active — only keys set
|
|
646
|
+
* to `false` are skipped.
|
|
647
|
+
*
|
|
648
|
+
* @default true
|
|
649
|
+
* @example
|
|
650
|
+
* useTransformers: { inlineCss: false, minify: false }
|
|
651
|
+
*/
|
|
652
|
+
useTransformers?: boolean | TransformerToggles;
|
|
653
|
+
/**
|
|
654
|
+
* Replace strings in the final HTML output.
|
|
655
|
+
*
|
|
656
|
+
* @example
|
|
657
|
+
* replaceStrings: {
|
|
658
|
+
* '{{ year }}': new Date().getFullYear().toString(),
|
|
659
|
+
* }
|
|
660
|
+
*/
|
|
661
|
+
replaceStrings?: Record<string, string>;
|
|
662
|
+
/**
|
|
663
|
+
* Content filters that transform text inside HTML elements using custom attributes.
|
|
664
|
+
*
|
|
665
|
+
* Set to `false` to disable all filters. Pass an object to add custom filters
|
|
666
|
+
* (merged with built-in defaults).
|
|
667
|
+
*
|
|
668
|
+
* @example
|
|
669
|
+
* filters: {
|
|
670
|
+
* uppercase: str => str.toUpperCase(),
|
|
671
|
+
* }
|
|
672
|
+
*/
|
|
673
|
+
filters?: FiltersConfig;
|
|
674
|
+
/** URL transformation settings (base URL, query string appending). */
|
|
675
|
+
url?: UrlConfig;
|
|
676
|
+
/** HTML post-processing settings (attributes, formatting, minification). */
|
|
677
|
+
html?: HtmlConfig;
|
|
678
|
+
/**
|
|
679
|
+
* Vite configuration options passed to the internal Vite SSR server.
|
|
680
|
+
*
|
|
681
|
+
* Use this to add custom Vite plugins or other Vite options.
|
|
682
|
+
* If a `vite.config.{ts,js}` file exists in the project root, it takes
|
|
683
|
+
* precedence and this option is used as a fallback.
|
|
684
|
+
*
|
|
685
|
+
* @example
|
|
686
|
+
* vite: {
|
|
687
|
+
* plugins: [myPlugin()],
|
|
688
|
+
* }
|
|
689
|
+
*/
|
|
690
|
+
vite?: InlineConfig;
|
|
691
|
+
/**
|
|
692
|
+
* Vue app customization options.
|
|
693
|
+
*
|
|
694
|
+
* Register plugins, directives, or global properties on the
|
|
695
|
+
* internal Vue app instance used for SSR rendering.
|
|
696
|
+
*
|
|
697
|
+
* @example
|
|
698
|
+
* vue: {
|
|
699
|
+
* // Use a factory for stateful plugins (vue-i18n, Pinia, vue-router)
|
|
700
|
+
* // so each render gets a fresh instance.
|
|
701
|
+
* plugins: () => [createI18n({ locale: 'en', messages })],
|
|
702
|
+
* directives: { focus: vFocus },
|
|
703
|
+
* globalProperties: { $format: dateFormat },
|
|
704
|
+
* }
|
|
705
|
+
*/
|
|
706
|
+
vue?: VueConfig;
|
|
707
|
+
/** Called before any templates are processed. */
|
|
708
|
+
beforeCreate?: (params: {
|
|
709
|
+
config: MaizzleConfig;
|
|
710
|
+
}) => void | Promise<void>;
|
|
711
|
+
/** Called before each template is rendered. Return a string to replace `template.source`. */
|
|
712
|
+
beforeRender?: (params: {
|
|
713
|
+
config: MaizzleConfig;
|
|
714
|
+
template: TemplateInfo;
|
|
715
|
+
}) => string | void | Promise<string | void>;
|
|
716
|
+
/** Called after each template is rendered but before transformers run. Return a string to replace the output HTML. */
|
|
717
|
+
afterRender?: (params: {
|
|
718
|
+
config: MaizzleConfig;
|
|
719
|
+
template: TemplateInfo;
|
|
720
|
+
html: string;
|
|
721
|
+
}) => string | void | Promise<string | void>;
|
|
722
|
+
/** Called after transformers have run on each template. Return a string to replace the output HTML. */
|
|
723
|
+
afterTransform?: (params: {
|
|
724
|
+
config: MaizzleConfig;
|
|
725
|
+
template: TemplateInfo;
|
|
726
|
+
html: string;
|
|
727
|
+
}) => string | void | Promise<string | void>;
|
|
728
|
+
/** Called after all templates have been built. */
|
|
729
|
+
afterBuild?: (params: {
|
|
730
|
+
files: string[];
|
|
731
|
+
config: MaizzleConfig;
|
|
732
|
+
}) => void | Promise<void>;
|
|
733
|
+
[key: string]: any;
|
|
734
|
+
}
|
|
735
|
+
//#endregion
|
|
736
|
+
export { AttributesConfig, CaniemailClient, ChecksConfig, ComponentSource, CssConfig, EntitiesConfig, FilterFunction, FiltersConfig, HtmlConfig, MaizzleConfig, MarkdownConfig, PlaintextConfig, PostcssConfig, TransformerToggles, UrlConfig, UrlQuery, UrlQueryOptions, VueConfig };
|
|
737
|
+
//# sourceMappingURL=config.d.ts.map
|