@maildeno/editor 0.1.4 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +258 -0
- package/README.md +397 -381
- package/dist/RowPreviewChildren-DT0y0lKC.js +4 -0
- package/dist/RowPreviewChildren-OsbF7_vu.js +4 -0
- package/dist/RowPreviewLegacyComponent-BV4b5bHQ.js +487 -0
- package/dist/RowPreviewLegacyComponent-C08MGJVT.js +487 -0
- package/dist/RowPreviewRow-ByxeBYV8.js +112 -0
- package/dist/RowPreviewRow-N-hh5l_H.js +112 -0
- package/dist/adapters/errors.d.ts +59 -0
- package/dist/adapters/index.d.ts +31 -0
- package/dist/adapters/types.d.ts +68 -0
- package/dist/brand.d.ts +15 -0
- package/dist/components/DesktopOnlyNotice.vue.d.ts +20 -0
- package/dist/components/features/emailBuilder/EmailEditor.vue.d.ts +182 -0
- package/dist/components/features/emailBuilder/assistant/AssistantPanel.vue.d.ts +37 -0
- package/dist/components/features/emailBuilder/blocks/AnchorBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/ButtonBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/DividerBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/HeadingBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/ImageBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/ListBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/MenuBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/ParagraphBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/SocialsBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/SpacerBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/blocks/VideoBlock.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/canvas/Canvas.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/canvas/CanvasColumn.vue.d.ts +49 -0
- package/dist/components/features/emailBuilder/canvas/CanvasComponent.vue.d.ts +56 -0
- package/dist/components/features/emailBuilder/canvas/CanvasElement.vue.d.ts +21 -0
- package/dist/components/features/emailBuilder/canvas/CanvasRow.vue.d.ts +49 -0
- package/dist/components/features/emailBuilder/canvas/CanvasRowSpacer.vue.d.ts +40 -0
- package/dist/components/features/emailBuilder/health/HealthIndicator.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/layout/Header.vue.d.ts +54 -0
- package/dist/components/features/emailBuilder/layout/SendEmail.vue.d.ts +21 -0
- package/dist/components/features/emailBuilder/layout/SidebarLeft.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/layout/SidebarRight.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/AnchorPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/ButtonPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/DividerPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/HeadingPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/ImagePanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/ListPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/MenuPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/ParagraphPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/RowColumnPanel.vue.d.ts +13 -0
- package/dist/components/features/emailBuilder/panels/RowPanel.vue.d.ts +13 -0
- package/dist/components/features/emailBuilder/panels/RowSpacerPanel.vue.d.ts +13 -0
- package/dist/components/features/emailBuilder/panels/SocialsPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/SpacerPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/VideoPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/panels/shared/DeviceTabs.vue.d.ts +19 -0
- package/dist/components/features/emailBuilder/panels/shared/LinkFieldMergeTags.vue.d.ts +31 -0
- package/dist/components/features/emailBuilder/panels/shared/OverrideBadge.vue.d.ts +9 -0
- package/dist/components/features/emailBuilder/panels/shared/PreviewBadge.vue.d.ts +11 -0
- package/dist/components/features/emailBuilder/panels/shared/TextFieldMergeTags.vue.d.ts +25 -0
- package/dist/components/features/emailBuilder/panels/ui/BoxStylingSection.vue.d.ts +7 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyAlignment.vue.d.ts +30 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyColor.vue.d.ts +75 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyGradientColor.vue.d.ts +27 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyNumberSlider.vue.d.ts +74 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertySection.vue.d.ts +17 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertySelect.vue.d.ts +74 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyTextStyle.vue.d.ts +52 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyTextStylePanel.vue.d.ts +72 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyToggle.vue.d.ts +45 -0
- package/dist/components/features/emailBuilder/panels/ui/PropertyVisibility.vue.d.ts +32 -0
- package/dist/components/features/emailBuilder/panels/ui/SpacingControl.vue.d.ts +19 -0
- package/dist/components/features/emailBuilder/panels/ui/color-picker/AlphaSlider.vue.d.ts +28 -0
- package/dist/components/features/emailBuilder/panels/ui/color-picker/ColorPickerPanel.vue.d.ts +31 -0
- package/dist/components/features/emailBuilder/panels/ui/color-picker/HueSlider.vue.d.ts +19 -0
- package/dist/components/features/emailBuilder/panels/ui/color-picker/RecentColors.vue.d.ts +20 -0
- package/dist/components/features/emailBuilder/panels/ui/color-picker/SVPanel.vue.d.ts +39 -0
- package/dist/components/features/emailBuilder/panels/ui/visibility-rule/Rule.vue.d.ts +28 -0
- package/dist/components/features/emailBuilder/preview/PreviewScreen.vue.d.ts +7 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewCanvas.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewCapabilityBadges.vue.d.ts +12 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewClientCard.vue.d.ts +20 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewClientList.vue.d.ts +21 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewClientPicker.vue.d.ts +16 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewComponent.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewDetailView.vue.d.ts +41 -0
- package/dist/components/features/emailBuilder/preview/ui/PreviewRendered.vue.d.ts +8 -0
- package/dist/components/features/emailBuilder/product/RowPreview.vue.d.ts +8 -0
- package/dist/components/features/emailBuilder/product/RowPreviewChildren.vue.d.ts +14 -0
- package/dist/components/features/emailBuilder/product/RowPreviewLegacyComponent.vue.d.ts +14 -0
- package/dist/components/features/emailBuilder/product/RowPreviewRow.vue.d.ts +9 -0
- package/dist/components/features/emailBuilder/product/SavedRowsPanel.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/product/SavedTemplatesPanel.vue.d.ts +13 -0
- package/dist/components/features/emailBuilder/product/VersionHistoryPanel.vue.d.ts +14 -0
- package/dist/components/features/emailBuilder/sidebar/SidebarBlockButton.vue.d.ts +35 -0
- package/dist/components/features/emailBuilder/tabs/GeneralTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/LayoutTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/content/ContentTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/content/LayersPanel.vue.d.ts +7 -0
- package/dist/components/features/emailBuilder/tabs/general/MergeTagsTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/general/StylesTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/general/VisibilityTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/general/VisibilityWrapESPTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/general/merge-tags/LinkTagTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/tabs/general/merge-tags/MergeTagTab.vue.d.ts +3 -0
- package/dist/components/features/emailBuilder/ui/LinkInputDialog.vue.d.ts +17 -0
- package/dist/components/features/emailBuilder/ui/canvas/CanvasRowDropZone.vue.d.ts +12 -0
- package/dist/components/features/emailBuilder/ui/canvas/DropZone.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/canvas/Loader.vue.d.ts +19 -0
- package/dist/components/features/emailBuilder/ui/layers-panel/ComponentIcon.vue.d.ts +7 -0
- package/dist/components/features/emailBuilder/ui/layers-panel/LayerColumnChildren.vue.d.ts +42 -0
- package/dist/components/features/emailBuilder/ui/layers-panel/LayerDropLine.vue.d.ts +8 -0
- package/dist/components/features/emailBuilder/ui/renderers/AnchorRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/DividerRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/HeadingRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/ImageRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/ListRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/MenuRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/ParagraphRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/SocialsRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/SpacerRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/renderers/VideoRenderer.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/rich-text-editor/RichTextEditor.vue.d.ts +12 -0
- package/dist/components/features/emailBuilder/ui/rich-text-editor/pickers/MergeTagPicker.vue.d.ts +18 -0
- package/dist/components/features/emailBuilder/ui/rich-text-editor/pickers/RichTextColorPicker.vue.d.ts +15 -0
- package/dist/components/features/emailBuilder/ui/visibility/SupportBadge.vue.d.ts +10 -0
- package/dist/components/features/emailBuilder/ui/visibility/VisibilityPopover.vue.d.ts +45 -0
- package/dist/components/ui/ConfirmDialog.vue.d.ts +3 -0
- package/dist/components/ui/Icon.vue.d.ts +33 -0
- package/dist/components/ui/InfoDialog.vue.d.ts +12 -0
- package/dist/components/ui/Loading.vue.d.ts +6 -0
- package/dist/components/ui/ShadowSafeToast.vue.d.ts +3 -0
- package/dist/components/ui/primitives/Button.vue.d.ts +23 -0
- package/dist/components/ui/primitives/DatePicker.vue.d.ts +16 -0
- package/dist/components/ui/primitives/Dialog.vue.d.ts +34 -0
- package/dist/components/ui/primitives/InputText.vue.d.ts +29 -0
- package/dist/components/ui/primitives/Message.vue.d.ts +20 -0
- package/dist/components/ui/primitives/Select.vue.d.ts +22 -0
- package/dist/composables/emailBuilder/components/useSystemRows.d.ts +22 -0
- package/dist/composables/emailBuilder/core/ui/useLayerHoverScroll.d.ts +10 -10
- package/dist/composables/emailBuilder/core/useEmailBuilder.d.ts +18 -0
- package/dist/composables/emailBuilder/export/logic/espLogicWrapper.d.ts +4 -4
- package/dist/composables/emailBuilder/export/targets/templateSnapshot.d.ts +24 -0
- package/dist/composables/emailBuilder/persistence/useEmailBuilderPersistence.d.ts +1 -1
- package/dist/composables/system/useColorScheme.d.ts +16 -0
- package/dist/editor.css +1061 -676
- package/dist/element-C2ZH0Z_i.js +86561 -0
- package/dist/element-scoped-styles.css +1061 -676
- package/dist/element.d.ts +1 -1
- package/dist/element.js +5 -2
- package/dist/estree-DBJlF9un.js +4876 -0
- package/dist/html-3PMDtB0V.js +3123 -0
- package/dist/index-DhFg3uKs.js +75864 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.js +16 -67053
- package/dist/init.d.ts +95 -2
- package/dist/init.js +166 -122
- package/dist/standalone-DKWMQftY.js +2391 -0
- package/dist/theme.d.ts +68 -17
- package/dist/types/assistant.d.ts +56 -0
- package/dist/typescript-l6-4tT8s.js +13240 -0
- package/package.json +6 -3
- package/dist/RowPreviewLegacyComponent-CXsY4P-R.js +0 -439
- package/dist/RowPreviewLegacyComponent-yjHSkZLz.js +0 -439
- package/dist/RowPreviewRow-CeowK6Q_.js +0 -107
- package/dist/RowPreviewRow-D-wmhbhZ.js +0 -107
- package/dist/composables/emailBuilder/transform/pipeline/optimizeAI.d.ts +0 -125
- package/dist/element-CWjNN0lY.js +0 -67099
- package/dist/estree-B67dfAo1.js +0 -7989
- package/dist/html-DGrfikay.js +0 -7353
- package/dist/standalone-Bd2oQFm3.js +0 -3639
- package/dist/typescript-C_Ru9PRN.js +0 -23184
- package/dist/vue.runtime.esm-bundler-CfYyFhW6.js +0 -9097
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Every icon in the editor, as hardcoded inline SVG. Zero dependencies —
|
|
3
|
+
* no icon font, no `@font-face`, and no package to keep in sync.
|
|
4
|
+
*
|
|
5
|
+
* Two deliberate design choices:
|
|
6
|
+
*
|
|
7
|
+
* 1. **Sized at 1em, not fixed px.** Callers size icons with `font-size`
|
|
8
|
+
* (~15 places use `style="font-size: 9px"` and similar). Rendering at
|
|
9
|
+
* 1em means those work unchanged, and `currentColor` inherits text
|
|
10
|
+
* colour the same way.
|
|
11
|
+
*
|
|
12
|
+
* 2. **Short, stable names** (`plus`, `times`, `exclamation-triangle`),
|
|
13
|
+
* used as the `name` prop.
|
|
14
|
+
*
|
|
15
|
+
* Inline SVG also avoids a real bug class: `@font-face` is a
|
|
16
|
+
* document-scoped at-rule that browsers ignore inside a shadow root, so
|
|
17
|
+
* icon fonts render blank in the custom-element build unless separately
|
|
18
|
+
* hoisted into the document. SVG works identically in both.
|
|
19
|
+
*
|
|
20
|
+
* Paths follow the Lucide geometry (24x24 viewBox, 2px round-capped
|
|
21
|
+
* strokes, ISC licensed).
|
|
22
|
+
*/
|
|
23
|
+
type __VLS_Props = {
|
|
24
|
+
/** Icon name — see the ICONS map below for the full set. */
|
|
25
|
+
name: string;
|
|
26
|
+
/** Overrides the default 2px stroke — useful for very small sizes. */
|
|
27
|
+
strokeWidth?: number | string;
|
|
28
|
+
};
|
|
29
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
30
|
+
strokeWidth: number | string;
|
|
31
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
32
|
+
declare const _default: typeof __VLS_export;
|
|
33
|
+
export default _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
visible: boolean;
|
|
3
|
+
header?: string;
|
|
4
|
+
message: string;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
7
|
+
"update:visible": (...args: any[]) => void;
|
|
8
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
9
|
+
"onUpdate:visible"?: ((...args: any[]) => any) | undefined;
|
|
10
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
11
|
+
declare const _default: typeof __VLS_export;
|
|
12
|
+
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
message?: string;
|
|
3
|
+
}
|
|
4
|
+
declare const __VLS_export: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
5
|
+
declare const _default: typeof __VLS_export;
|
|
6
|
+
export default _default;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const __VLS_export: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
label?: string;
|
|
3
|
+
severity?: "primary" | "secondary" | "danger" | "success";
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
loading?: boolean;
|
|
6
|
+
};
|
|
7
|
+
declare var __VLS_6: {};
|
|
8
|
+
type __VLS_Slots = {} & {
|
|
9
|
+
default?: (props: typeof __VLS_6) => any;
|
|
10
|
+
};
|
|
11
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
12
|
+
disabled: boolean;
|
|
13
|
+
severity: "primary" | "secondary" | "danger" | "success";
|
|
14
|
+
loading: boolean;
|
|
15
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
16
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
17
|
+
declare const _default: typeof __VLS_export;
|
|
18
|
+
export default _default;
|
|
19
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
20
|
+
new (): {
|
|
21
|
+
$slots: S;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
modelValue?: Date | string | null;
|
|
3
|
+
placeholder?: string;
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
7
|
+
"update:modelValue": (value: Date | null) => any;
|
|
8
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
9
|
+
"onUpdate:modelValue"?: ((value: Date | null) => any) | undefined;
|
|
10
|
+
}>, {
|
|
11
|
+
modelValue: Date | string | null;
|
|
12
|
+
disabled: boolean;
|
|
13
|
+
placeholder: string;
|
|
14
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
visible?: boolean;
|
|
3
|
+
header?: string;
|
|
4
|
+
closable?: boolean;
|
|
5
|
+
/** Accepted for API compatibility; not implemented. */
|
|
6
|
+
draggable?: boolean;
|
|
7
|
+
/** Announced by screen readers when there is no visible header. */
|
|
8
|
+
ariaLabel?: string;
|
|
9
|
+
/** Accepted for API compatibility; this dialog is always modal. */
|
|
10
|
+
modal?: boolean;
|
|
11
|
+
};
|
|
12
|
+
declare var __VLS_12: {}, __VLS_14: {};
|
|
13
|
+
type __VLS_Slots = {} & {
|
|
14
|
+
default?: (props: typeof __VLS_12) => any;
|
|
15
|
+
} & {
|
|
16
|
+
footer?: (props: typeof __VLS_14) => any;
|
|
17
|
+
};
|
|
18
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
19
|
+
"update:visible": (value: boolean) => any;
|
|
20
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
21
|
+
"onUpdate:visible"?: ((value: boolean) => any) | undefined;
|
|
22
|
+
}>, {
|
|
23
|
+
visible: boolean;
|
|
24
|
+
draggable: boolean;
|
|
25
|
+
closable: boolean;
|
|
26
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
27
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
28
|
+
declare const _default: typeof __VLS_export;
|
|
29
|
+
export default _default;
|
|
30
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
31
|
+
new (): {
|
|
32
|
+
$slots: S;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Text input.
|
|
3
|
+
*
|
|
4
|
+
* defineExpose is deliberate: several call sites do
|
|
5
|
+
* `inputRef.value?.focus()` / `.select()` directly on the component ref,
|
|
6
|
+
* so those methods are exposed explicitly as a real, typed contract
|
|
7
|
+
* rather than relying on internals.
|
|
8
|
+
*/
|
|
9
|
+
type __VLS_Props = {
|
|
10
|
+
modelValue?: string | number | null;
|
|
11
|
+
invalid?: boolean;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
};
|
|
14
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {
|
|
15
|
+
focus: () => void | undefined;
|
|
16
|
+
select: () => void | undefined;
|
|
17
|
+
blur: () => void | undefined;
|
|
18
|
+
readonly input: HTMLInputElement | null;
|
|
19
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
20
|
+
"update:modelValue": (value: string) => any;
|
|
21
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
22
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
23
|
+
}>, {
|
|
24
|
+
invalid: boolean;
|
|
25
|
+
modelValue: string | number | null;
|
|
26
|
+
disabled: boolean;
|
|
27
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
28
|
+
declare const _default: typeof __VLS_export;
|
|
29
|
+
export default _default;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
severity?: "info" | "success" | "warn" | "error";
|
|
3
|
+
closable?: boolean;
|
|
4
|
+
};
|
|
5
|
+
declare var __VLS_6: {};
|
|
6
|
+
type __VLS_Slots = {} & {
|
|
7
|
+
default?: (props: typeof __VLS_6) => any;
|
|
8
|
+
};
|
|
9
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
|
+
severity: "info" | "success" | "warn" | "error";
|
|
11
|
+
closable: boolean;
|
|
12
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
export default _default;
|
|
16
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
17
|
+
new (): {
|
|
18
|
+
$slots: S;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
modelValue?: unknown;
|
|
3
|
+
options?: any[];
|
|
4
|
+
optionLabel?: string | null;
|
|
5
|
+
optionValue?: string | null;
|
|
6
|
+
placeholder?: string;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
filter?: boolean;
|
|
9
|
+
filterPlaceholder?: string;
|
|
10
|
+
};
|
|
11
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
12
|
+
"update:modelValue": (value: unknown) => any;
|
|
13
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
14
|
+
"onUpdate:modelValue"?: ((value: unknown) => any) | undefined;
|
|
15
|
+
}>, {
|
|
16
|
+
filter: boolean;
|
|
17
|
+
disabled: boolean;
|
|
18
|
+
options: any[];
|
|
19
|
+
placeholder: string;
|
|
20
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
21
|
+
declare const _default: typeof __VLS_export;
|
|
22
|
+
export default _default;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { SavedRow, EditorStorageAdapter } from '../../../adapters/types';
|
|
2
|
+
declare function createSystemRowsInstance(storageAdapterInstance?: EditorStorageAdapter): {
|
|
3
|
+
systemRows: import('vue').Ref<{
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
createdAt: string;
|
|
7
|
+
row: Record<string, any>;
|
|
8
|
+
}[], SavedRow[] | {
|
|
9
|
+
id: string;
|
|
10
|
+
name: string;
|
|
11
|
+
createdAt: string;
|
|
12
|
+
row: Record<string, any>;
|
|
13
|
+
}[]>;
|
|
14
|
+
isFetching: import('vue').Ref<boolean, boolean>;
|
|
15
|
+
isSupported: import('vue').Ref<boolean, boolean>;
|
|
16
|
+
fetchRows: () => Promise<void>;
|
|
17
|
+
cloneRowForCanvas: (entryId: string) => Record<string, any> | null;
|
|
18
|
+
};
|
|
19
|
+
export type SystemRowsInstance = ReturnType<typeof createSystemRowsInstance>;
|
|
20
|
+
export declare function provideSystemRows(storageAdapterInstance?: EditorStorageAdapter): SystemRowsInstance;
|
|
21
|
+
export declare function useSystemRows(): SystemRowsInstance;
|
|
22
|
+
export {};
|
|
@@ -4,17 +4,17 @@ export declare function useLayerHoverScroll(layerHoveredId: Ref<string | null>,
|
|
|
4
4
|
behavior?: ScrollBehavior;
|
|
5
5
|
delay?: number;
|
|
6
6
|
/**
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
* Margin (in px) from the viewport edges within which the target is
|
|
8
|
+
* considered "comfortably visible" and no scroll is needed. Default 80 px
|
|
9
|
+
* gives breathing room on both sides without being so generous that
|
|
10
|
+
* elements land right against an edge.
|
|
11
|
+
*/
|
|
12
12
|
inViewMargin?: number;
|
|
13
13
|
/**
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
* If the target is more than this many pixels from the current scroll
|
|
15
|
+
* position, use instant jump instead of smooth scroll. Default 600 px
|
|
16
|
+
* covers roughly half a typical viewport — anything farther than that
|
|
17
|
+
* should teleport, not animate.
|
|
18
|
+
*/
|
|
19
19
|
instantThreshold?: number;
|
|
20
20
|
}): void;
|
|
@@ -132,7 +132,16 @@ export declare function provideEmailBuilder(storageAdapterInstance?: EditorStora
|
|
|
132
132
|
content: {
|
|
133
133
|
rows: any[];
|
|
134
134
|
};
|
|
135
|
+
}, historyAction?: string) => void;
|
|
136
|
+
setJson: (data: any, opts?: {
|
|
137
|
+
history?: "undoable" | "reset";
|
|
135
138
|
}) => void;
|
|
139
|
+
getSelection: () => {
|
|
140
|
+
id: string;
|
|
141
|
+
type: string | null;
|
|
142
|
+
} | null;
|
|
143
|
+
setSelection: (id: string | null) => boolean;
|
|
144
|
+
onChange: (cb: () => void) => (() => void);
|
|
136
145
|
};
|
|
137
146
|
/**
|
|
138
147
|
* Every file that isn't the root calls this exactly as before —
|
|
@@ -269,6 +278,15 @@ declare function createEmailBuilderInstance(storageAdapterInstance?: EditorStora
|
|
|
269
278
|
content: {
|
|
270
279
|
rows: any[];
|
|
271
280
|
};
|
|
281
|
+
}, historyAction?: string) => void;
|
|
282
|
+
setJson: (data: any, opts?: {
|
|
283
|
+
history?: "undoable" | "reset";
|
|
272
284
|
}) => void;
|
|
285
|
+
getSelection: () => {
|
|
286
|
+
id: string;
|
|
287
|
+
type: string | null;
|
|
288
|
+
} | null;
|
|
289
|
+
setSelection: (id: string | null) => boolean;
|
|
290
|
+
onChange: (cb: () => void) => (() => void);
|
|
273
291
|
};
|
|
274
292
|
export {};
|
|
@@ -6,10 +6,10 @@ export interface ESPSyntaxMeta {
|
|
|
6
6
|
description: string;
|
|
7
7
|
docsUrl?: string;
|
|
8
8
|
/**
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
* Whether this ESP supports boolean nesting / parenthesised sub-expressions.
|
|
10
|
+
* When false, buildFullExpression flattens all rules to a single level and
|
|
11
|
+
* the UI should warn the user that nested groups are not supported.
|
|
12
|
+
*/
|
|
13
13
|
supportsNesting: boolean;
|
|
14
14
|
}
|
|
15
15
|
export declare const ESP_SYNTAX_META: Record<KnownESPSyntax, ESPSyntaxMeta>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare const CURRENT_SCHEMA_VERSION = "1.0";
|
|
2
|
+
/**
|
|
3
|
+
* The canonical snapshot shape — exactly what `getJson()` returns, which is
|
|
4
|
+
* what makes `setJson(getJson())` a lossless round-trip.
|
|
5
|
+
*/
|
|
6
|
+
export interface TemplateSnapshotJson {
|
|
7
|
+
template_id: string;
|
|
8
|
+
template_name: string;
|
|
9
|
+
canvas: any;
|
|
10
|
+
rows: any[];
|
|
11
|
+
schema_version: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const toTemplateId: (name: string) => string;
|
|
14
|
+
/**
|
|
15
|
+
* Normalizes any recognized template shape onto the current one.
|
|
16
|
+
*
|
|
17
|
+
* Throws with a specific message rather than returning null: callers surface
|
|
18
|
+
* `error.message` directly to the user, and "Unrecognized template file
|
|
19
|
+
* format" is more use than a silent failure. The major-version guard is the
|
|
20
|
+
* one case worth failing loudly on — a newer schema may contain block types
|
|
21
|
+
* this build cannot render, and silently dropping them would corrupt the
|
|
22
|
+
* user's design on the next save.
|
|
23
|
+
*/
|
|
24
|
+
export declare function normalizeTemplateSnapshot(data: any): TemplateSnapshotJson;
|
|
@@ -20,7 +20,7 @@ export interface RestoredDraft {
|
|
|
20
20
|
canvas: Record<string, any>;
|
|
21
21
|
updatedAt: string;
|
|
22
22
|
/** Reflects the templateId stored in the payload — use this to verify the
|
|
23
|
-
|
|
23
|
+
* draft belongs to the currently open template before restoring it. */
|
|
24
24
|
templateId: string | null;
|
|
25
25
|
/** Cached template display name — set when the template was first loaded from DB. */
|
|
26
26
|
name?: string;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* `auto` follows the host page. `light` and `dark` pin the editor regardless
|
|
4
|
+
* of what the page is doing — useful when the editor is embedded in a shell
|
|
5
|
+
* whose theme it should not inherit.
|
|
6
|
+
*/
|
|
7
|
+
export type ColorMode = "light" | "dark" | "auto";
|
|
8
|
+
/**
|
|
9
|
+
* @param mode The `colorMode` prop, as a ref.
|
|
10
|
+
* @param host The custom-element host when running under element.ts, else
|
|
11
|
+
* null. Reflected onto as well, so `:host(.dark)` matches in an
|
|
12
|
+
* unscoped shadow build.
|
|
13
|
+
*/
|
|
14
|
+
export declare function useColorScheme(mode: Ref<ColorMode | undefined>, host?: HTMLElement | null): {
|
|
15
|
+
isDark: import('vue').ComputedRef<boolean>;
|
|
16
|
+
};
|