pagepilot-visual-editor 1.0.28 → 1.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/CHANGELOG.md +96 -0
  2. package/README.md +42 -28
  3. package/dist/PagePilotEditor.d.ts +12 -9
  4. package/dist/api/ApiClientContext.d.ts +1 -0
  5. package/dist/api/PagepilotApiClient.d.ts +7 -0
  6. package/dist/assets/aiChatbotIcon.d.ts +1 -0
  7. package/dist/blocks-internal/block-container/src/index.d.ts +1 -1
  8. package/dist/blocks-internal/block-heading/src/index.d.ts +1 -1
  9. package/dist/blocks-internal/block-list/src/index.d.ts +11 -1
  10. package/dist/blocks-internal/block-mdx/src/index.d.ts +47 -0
  11. package/dist/blocks-internal/block-quill/src/index.d.ts +48 -0
  12. package/dist/editor/PagePreviewDialog.d.ts +14 -0
  13. package/dist/editor/Topbar.d.ts +3 -1
  14. package/dist/editor/pageUrls.d.ts +25 -0
  15. package/dist/editor/publish/PageLiveSuccessDialog.d.ts +9 -0
  16. package/dist/editor/publish/PagePublishDialog.d.ts +1 -0
  17. package/dist/editor/publish/PublishAccessibilityPanel.d.ts +8 -0
  18. package/dist/editor/publish/a11yLinter.d.ts +8 -0
  19. package/dist/editor/recordDirty.d.ts +16 -0
  20. package/dist/editor/renderSections.d.ts +2 -2
  21. package/dist/editor/savePipeline.d.ts +40 -0
  22. package/dist/editor/types.d.ts +35 -0
  23. package/dist/editor-sample/App/InspectorDrawer/BehaviourPanel.d.ts +22 -0
  24. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/BrandColorPalette.d.ts +9 -0
  25. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/BrandEmptyLink.d.ts +8 -0
  26. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/BrandPanel.styled.d.ts +22 -0
  27. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/BrandSection.d.ts +8 -0
  28. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/EmptyText.d.ts +6 -0
  29. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/FontDetailsList.d.ts +6 -0
  30. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/index.d.ts +5 -0
  31. package/dist/editor-sample/App/InspectorDrawer/BrandPanel/useBrandApply.d.ts +9 -0
  32. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/ResponsiveDeviceTabs.d.ts +0 -2
  33. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/blockStyleClipboard.d.ts +2 -8
  34. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/index.d.ts +1 -4
  35. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/EmailLayoutSidebarPanel.d.ts +2 -1
  36. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/FlexColumns/ColumnSection.d.ts +2 -0
  37. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/FormsPickerSidebarPanel.d.ts +2 -1
  38. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/MdxSidebarPanel.d.ts +7 -0
  39. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/MenuPickerSidebarPanel.d.ts +22 -0
  40. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/QuillSidebarPanel.d.ts +8 -0
  41. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/TextSidebarPanel.d.ts +2 -2
  42. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/helpers/AnimationSection.d.ts +7 -5
  43. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/helpers/HoverEffectSection.d.ts +1 -1
  44. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/helpers/imageSizeUnit.d.ts +19 -0
  45. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/helpers/inputs/ColorInput/Picker.d.ts +0 -2
  46. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/helpers/inputs/VariableLinkHint.d.ts +8 -0
  47. package/dist/editor-sample/App/InspectorDrawer/EditorBehavior.d.ts +8 -2
  48. package/dist/editor-sample/App/InspectorDrawer/LayersPanelStyles.d.ts +1 -1
  49. package/dist/editor-sample/App/InspectorDrawer/LayoutPanel/AiSupportedBadge.d.ts +7 -0
  50. package/dist/editor-sample/App/InspectorDrawer/LayoutPanel/SectionsModal.d.ts +2 -10
  51. package/dist/editor-sample/App/InspectorDrawer/LayoutPanel/icons/index.d.ts +3 -5
  52. package/dist/editor-sample/App/InspectorDrawer/LayoutPanel/templateHelpers.d.ts +226 -0
  53. package/dist/editor-sample/App/InspectorDrawer/LayoutPanel/useDebouncedValue.d.ts +8 -0
  54. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/AiFillAllDialog.d.ts +21 -0
  55. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/AiGenerateButton.d.ts +14 -0
  56. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/ScalarFieldRow.d.ts +4 -1
  57. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/VariableGroupDialog.d.ts +19 -0
  58. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/VariableGroupList.d.ts +5 -0
  59. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/aiFill.d.ts +36 -0
  60. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/styles.d.ts +14 -11
  61. package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/upgradeDialog.d.ts +8 -8
  62. package/dist/editor-sample/App/InspectorDrawer/behaviourFields.d.ts +30 -0
  63. package/dist/editor-sample/App/InspectorDrawer/index.d.ts +8 -1
  64. package/dist/editor-sample/App/InspectorDrawer/publish/BackgroundPanel.d.ts +6 -0
  65. package/dist/editor-sample/App/InspectorDrawer/renderBehaviourField.d.ts +7 -0
  66. package/dist/editor-sample/App/TemplatePanel/hooks/useMainBoxStyles.d.ts +2 -1
  67. package/dist/editor-sample/App/TemplatePanel/index.d.ts +2 -1
  68. package/dist/editor-sample/App/TemplatePanel/minimap/useMiniMapSync.d.ts +2 -2
  69. package/dist/editor-sample/App/hooks/page/saveMenuHrefEdits.d.ts +1 -1
  70. package/dist/editor-sample/App/hooks/page/useSaveHandler.d.ts +1 -0
  71. package/dist/editor-sample/App/hooks/useAutosave.d.ts +8 -3
  72. package/dist/editor-sample/App/hooks/useIsTemplateEditorRoute.d.ts +1 -0
  73. package/dist/editor-sample/App/hooks/useStretch.d.ts +9 -0
  74. package/dist/editor-sample/App/shared/UploadImage.d.ts +4 -0
  75. package/dist/editor-sample/App/shared/editor.styles.d.ts +11 -1
  76. package/dist/editor-sample/documents/blocks/Container/ContainerPropsSchema.d.ts +6 -4
  77. package/dist/editor-sample/documents/blocks/FormsPicker/FormsPropsSchema.d.ts +33 -2
  78. package/dist/editor-sample/documents/blocks/List/ListEditor.d.ts +8 -0
  79. package/dist/editor-sample/documents/blocks/Marquee/MarqueePropsSchema.d.ts +4 -0
  80. package/dist/editor-sample/documents/blocks/MenuPicker/MenuPropsSchema.d.ts +6 -0
  81. package/dist/editor-sample/documents/blocks/Table/TableCellEditor.d.ts +2 -1
  82. package/dist/editor-sample/documents/blocks/Table/TableImportDialog.styles.d.ts +11 -1
  83. package/dist/editor-sample/documents/blocks/Table/parseClipboardTable.d.ts +7 -0
  84. package/dist/editor-sample/documents/blocks/TabsBlock/TabsBlockPropsSchema.d.ts +6 -0
  85. package/dist/editor-sample/documents/blocks/Timer/TimerPropsSchema.d.ts +2 -0
  86. package/dist/editor-sample/documents/blocks/Timer/variants/CircularProgressView.d.ts +2 -1
  87. package/dist/editor-sample/documents/blocks/helpers/EditorChildrenIds/AddBlockMenu/blockMenuStyles.d.ts +1 -1
  88. package/dist/editor-sample/documents/blocks/helpers/EditorChildrenIds/AddBlockMenu/brandButtonDefaults.d.ts +1 -4
  89. package/dist/editor-sample/documents/blocks/helpers/EditorChildrenIds/AddBlockMenu/buttons.d.ts +0 -6
  90. package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/dialogs/LinkDialog.d.ts +4 -1
  91. package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/hooks/useToolbarCommands.d.ts +16 -4
  92. package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/styles.d.ts +2 -2
  93. package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/types.d.ts +2 -4
  94. package/dist/editor-sample/documents/blocks/helpers/block-wrappers/EditorBlockWrapper.d.ts +2 -3
  95. package/dist/editor-sample/documents/blocks/helpers/block-wrappers/TuneMenu.styles.d.ts +17 -0
  96. package/dist/editor-sample/documents/blocks/helpers/block-wrappers/saveAsTemplateUtils.d.ts +29 -1
  97. package/dist/editor-sample/documents/blocks/helpers/documentUtils.d.ts +33 -26
  98. package/dist/editor-sample/documents/blocks/helpers/variableBinding.d.ts +9 -0
  99. package/dist/editor-sample/documents/editor/EditorBlock.d.ts +2 -6
  100. package/dist/editor-sample/documents/editor/EditorContext.d.ts +77 -20
  101. package/dist/editor-sample/documents/editor/LazyEditorBlock.d.ts +1 -0
  102. package/dist/editor-sample/documents/editor/core.d.ts +492 -390
  103. package/dist/editor-sample/documents/editor/templateVariables.d.ts +151 -14
  104. package/dist/editor-sample/documents/editor/useRootFontFamily.d.ts +10 -0
  105. package/dist/editor-sample/utils/editorStorageKey.d.ts +2 -0
  106. package/dist/editor-sample/utils/localStoragePref.d.ts +2 -0
  107. package/dist/email-builder-core/blocks/Container/ContainerPropsSchema.d.ts +1 -1
  108. package/dist/email-builder-core/blocks/EmailLayout/EmailLayoutReader.d.ts +1 -1
  109. package/dist/email-builder-core/blocks/TabsBlock/TabsBlockPropsSchema.d.ts +6 -0
  110. package/dist/email-builder-core/blocks/Timer/variants/CircularProgressView.d.ts +5 -1
  111. package/dist/email-builder-core/blocks/Timer/variants/DigitalFlipView.d.ts +4 -1
  112. package/dist/email-builder-core/blocks/Timer/variants/TextInlineView.d.ts +3 -1
  113. package/dist/email-builder-core/blocks/helpers/blockStyleHelpers.d.ts +22 -0
  114. package/dist/email-builder-core/renderers/pageScripts.d.ts +0 -1
  115. package/dist/email-builder-core/renderers/themeTokens.d.ts +5 -126
  116. package/dist/host-stubs/history.d.ts +5 -0
  117. package/dist/host-stubs/hooks/useTenantFeatureCutoff.d.ts +8 -0
  118. package/dist/host-stubs/hooks/useTenantPlan.d.ts +18 -0
  119. package/dist/host-stubs/i18nAhdDefaults.d.ts +1 -0
  120. package/dist/host-stubs/modules/auth/authCurrentTenant.d.ts +6 -0
  121. package/dist/host-stubs/modules/forms/formsService.d.ts +3 -1
  122. package/dist/host-stubs/modules/forms/useFormsList.d.ts +4 -1
  123. package/dist/host-stubs/modules/menu/menuService.d.ts +4 -0
  124. package/dist/host-stubs/modules/page/pageService.d.ts +11 -0
  125. package/dist/host-stubs/modules/settings/settingsActions.d.ts +2 -0
  126. package/dist/host-stubs/modules/settings/settingsSelectors.d.ts +4 -0
  127. package/dist/host-stubs/modules/shared/axios/authAxios.d.ts +16 -0
  128. package/dist/host-stubs/modules/shared/constants.d.ts +14 -0
  129. package/dist/host-stubs/modules/store.d.ts +4 -0
  130. package/dist/host-stubs/modules/template/templateEnumerators.d.ts +19 -0
  131. package/dist/host-stubs/modules/tour/injectTourIntoPage.d.ts +20 -0
  132. package/dist/host-stubs/style/icons.d.ts +57 -0
  133. package/dist/host-stubs/utils/dateFormats.d.ts +1 -0
  134. package/dist/host-stubs/view/branding/brandDefaultFont.d.ts +3 -1
  135. package/dist/host-stubs/view/branding/styles/BrandIcons.d.ts +9 -0
  136. package/dist/host-stubs/view/branding/styles/types.d.ts +76 -0
  137. package/dist/host-stubs/view/configurations/ConfigurationIcons.d.ts +9 -0
  138. package/dist/host-stubs/view/demo/DemoIcons.d.ts +9 -0
  139. package/dist/host-stubs/view/images/Icons.d.ts +6 -0
  140. package/dist/host-stubs/view/media/MediaGalleryDialog/types.d.ts +47 -0
  141. package/dist/host-stubs/view/media/MediaGalleryDialog/utils/fileUtils.d.ts +3 -0
  142. package/dist/host-stubs/view/media/MediaGalleryDialog/utils/mediaTypes.d.ts +9 -0
  143. package/dist/host-stubs/view/media/MediaGalleryDialog.d.ts +12 -2
  144. package/dist/host-stubs/view/media/styles/MediaIcons.d.ts +13 -0
  145. package/dist/host-stubs/view/shared/Confetti.d.ts +5 -0
  146. package/dist/host-stubs/view/shared/PagePilotLoader.d.ts +2 -0
  147. package/dist/host-stubs/view/shared/UpgradeDialog/UpgradeDialogContext.d.ts +1 -0
  148. package/dist/host-stubs/view/shared/common/CopyToClipboard.d.ts +7 -0
  149. package/dist/host-stubs/view/shared/editors/MdxEditor.d.ts +8 -0
  150. package/dist/host-stubs/view/shared/editors/QuillEditor.d.ts +3 -0
  151. package/dist/host-stubs/view/shared/editors/sanitize.d.ts +4 -0
  152. package/dist/host-stubs/view/shared/editors/types.d.ts +7 -0
  153. package/dist/host-stubs/view/shared/media/TemplatePreviewMedia.d.ts +29 -0
  154. package/dist/host-stubs/view/shared/modals/ConfigureDialog.d.ts +7 -0
  155. package/dist/host-stubs/view/shared/modals/ManageTemplateModal.d.ts +5 -0
  156. package/dist/host-stubs/view/shared/speech/index.d.ts +17 -0
  157. package/dist/host-stubs/view/shared/styles/Table.styles.d.ts +3 -0
  158. package/dist/host-stubs/view/template/form/TemplateFormModal.d.ts +10 -0
  159. package/dist/host-stubs/view/template/form/fields/types.d.ts +7 -0
  160. package/dist/{index-DcN8zC8_.js → index-B8pdGALF.js} +86258 -73803
  161. package/dist/{index-SYmY8c1I.cjs → index-C-KL2oQP.cjs} +1 -1
  162. package/dist/{index-Cp5AeqH5.js → index-CStZQ7E0.js} +1 -1
  163. package/dist/index-DVx38kGU.cjs +1553 -0
  164. package/dist/index.cjs +1 -1
  165. package/dist/index.js +1 -1
  166. package/dist/render-core/combineSections.d.ts +33 -3
  167. package/dist/render-core/dateFormats.d.ts +14 -3
  168. package/dist/render-core/stubs/pickerEmptyState.d.ts +2 -0
  169. package/dist/render-core/stubs/styleIcons.d.ts +1 -0
  170. package/dist/render.cjs +281 -219
  171. package/dist/render.js +9858 -8266
  172. package/dist/style.css +1 -1
  173. package/dist/{xlsx-vznvhtjT.cjs → xlsx-DUs4Mvqq.cjs} +1 -1
  174. package/dist/{xlsx-Bk2GErZO.js → xlsx-bYU68TCR.js} +1 -1
  175. package/package.json +1 -1
  176. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/ResponsiveEditingBanner.d.ts +0 -13
  177. package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/helpers/BoxShadowControls.d.ts +0 -19
  178. package/dist/editor-sample/documents/blocks/AppBannerPicker/appBanner.styled.d.ts +0 -2
  179. package/dist/email-builder-core/blocks/boxShadowSchema.d.ts +0 -23
  180. package/dist/index-Br_dDd3Z.cjs +0 -1493
@@ -0,0 +1,16 @@
1
+ import { PageRecord } from './types';
2
+ export interface RecordBaseline {
3
+ fields: string;
4
+ sections: Array<{
5
+ meta: string;
6
+ snapshot: string;
7
+ }>;
8
+ }
9
+ /** Capture the saved state the dirty check compares against. */
10
+ export declare function captureRecordBaseline(record: PageRecord | null | undefined, sections: any[]): RecordBaseline;
11
+ /**
12
+ * True when the record differs from `baseline` outside of the live canvas:
13
+ * sections added / removed / renamed / reordered / retyped, a section's
14
+ * stored document changed, or a sidebar-edited page field changed.
15
+ */
16
+ export declare function isRecordDirty(baseline: RecordBaseline | null, record: PageRecord | null | undefined, sections: any[]): boolean;
@@ -1,2 +1,2 @@
1
- export { isExternalSection, renderDocumentForSave, combineSectionsToHtml, } from '../render-core/combineSections';
2
- export type { SectionForRender, RenderDocumentForSaveOptions, CombineSectionsOptions, } from '../render-core/combineSections';
1
+ export { isExternalSection, externalSectionIdentifier, externalSectionAnchorHtml, renderDocumentForSave, combineSectionsToHtml, wrapSectionsInDocumentShell, } from '../render-core/combineSections';
2
+ export type { SectionForRender, RenderDocumentForSaveOptions, CombineSectionsOptions, DocumentShellOptions, } from '../render-core/combineSections';
@@ -0,0 +1,40 @@
1
+ import { PageSection } from '../editor-sample/App/shared/pageSections';
2
+ import { PageRecord } from './types';
3
+ export interface PageScriptOptions {
4
+ injectTabsScrollSyncScript?: boolean;
5
+ injectCarouselScript?: boolean;
6
+ injectPaginationScript?: boolean;
7
+ injectAnimationScript?: boolean;
8
+ }
9
+ export interface BuildPageSaveInput extends PageScriptOptions {
10
+ record: PageRecord;
11
+ /** The record's sections. Empty for single-document records. */
12
+ sections: PageSection[];
13
+ /** Index of the section currently loaded into the canvas. */
14
+ activeSectionIndex: number;
15
+ /** The live canvas document (`editorStateStore.getState().document`). */
16
+ liveDocument: any;
17
+ }
18
+ export interface BuildPageSaveResult {
19
+ /** Active document as persisted — orphans pruned, `formFields` kept. */
20
+ document: any;
21
+ /** Active document with every template variable baked in. */
22
+ renderSource: any;
23
+ /** Full rendered HTML of the active (baked) document. */
24
+ activeHtml: string;
25
+ /**
26
+ * Sections exactly as ahd-fe sends them to `upsert-page-item`: every
27
+ * section carries `sectionType` + `identifier`, its rendered `content`, and
28
+ * `contentMetadata.document`. For a page record with no sections, ahd-fe
29
+ * synthesizes one section from the live document — so does this.
30
+ */
31
+ sections: PageSection[];
32
+ /** HTML for `SaveChangesPayload.html` (all sections inside a document shell). */
33
+ html: string;
34
+ }
35
+ /** `<body>` inner HTML of a rendered document — ahd-fe's `extractBodyInnerHtml`. */
36
+ export declare function extractBodyInnerHtml(html: string): string;
37
+ export declare function isPageRecord(record: PageRecord | null | undefined): boolean;
38
+ /** Fill `sectionType` / `identifier` the way ahd-fe does before saving. */
39
+ export declare function normalizeSections(sections: PageSection[]): PageSection[];
40
+ export declare function buildPageSave({ record, sections: existingSections, activeSectionIndex, liveDocument, ...scripts }: BuildPageSaveInput): BuildPageSaveResult;
@@ -14,6 +14,10 @@ export interface PageRecord {
14
14
  name?: string;
15
15
  /** Status badge displayed after the title ("draft" / "live" / …). */
16
16
  status?: string;
17
+ /** Public slug — used for the live / domain-preview URLs once published. */
18
+ slug?: string;
19
+ /** Initial canvas device (`"desktop"` / `"tablet"` / `"mobile"`). */
20
+ device?: "desktop" | "tablet" | "mobile" | string;
17
21
  contentMetadata?: {
18
22
  /** Editor document tree (the source of truth the canvas edits). */
19
23
  document?: any;
@@ -66,6 +70,32 @@ export interface SaveChangesPayload {
66
70
  * `<!doctype html>` shell.
67
71
  */
68
72
  html: string;
73
+ /**
74
+ * Status the record was saved with: `"live"` for Publish, `"draft"` for
75
+ * Save Draft / Save as Draft, and the record's current status for Save
76
+ * Changes and autosave (matches ahd-fe — saving a live page keeps it live).
77
+ */
78
+ status?: string | null;
79
+ /**
80
+ * Sections exactly as sent to `upsert-page-item`: each one has
81
+ * `sectionType`, `identifier`, the rendered `content` (page `<body>` inner
82
+ * HTML, template variables baked in; external sections are an empty
83
+ * `<div id=identifier>` anchor) and `contentMetadata.document` (variables
84
+ * kept editable). For a single-document record this is one synthesized
85
+ * section, as ahd-fe sends.
86
+ */
87
+ sections?: any[];
88
+ /** Publish schedule chosen in the publish dialog, when one was submitted. */
89
+ schedule?: {
90
+ startDate?: Date | null;
91
+ endDate?: Date | null;
92
+ };
93
+ /**
94
+ * The pagepilot API's response to `upsert-page-item` when `apiConfig` is
95
+ * set. The editor merges it back into the record (and reports the result
96
+ * through `onUpdateRecord`) after the host callback resolves.
97
+ */
98
+ response?: any;
69
99
  }
70
100
  /** Per-control visibility for the topbar. Every key defaults to `true`
71
101
  * EXCEPT `moreMenu` and `publish`, which default to `false`. */
@@ -191,6 +221,11 @@ export interface PagePilotEditorProps {
191
221
  onChange?: (document: any) => void;
192
222
  onSaveChanges?: (payload: SaveChangesPayload) => Promise<boolean | void> | boolean | void;
193
223
  onPublish?: (payload: SaveChangesPayload) => void | Promise<void>;
224
+ /**
225
+ * Replaces the built-in menu behind the Publish split-button arrow. When
226
+ * omitted, the editor shows its own menu: Publish, Live URL (when the page
227
+ * is live and the tenant is known) and Save as Draft.
228
+ */
194
229
  onPublishMenu?: (anchorEl: HTMLElement, payload: SaveChangesPayload) => void;
195
230
  renderPublish?: (args: {
196
231
  payload: SaveChangesPayload;
@@ -1 +1,23 @@
1
+ export declare const dividerSx: {
2
+ mt: string;
3
+ };
4
+ export declare const gridContainerSx: {
5
+ py: string;
6
+ };
7
+ export declare const StyledElementIdContainer: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<import('@mui/material').Theme>> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
8
+ export declare const StyledDivider: import('@emotion/styled').StyledComponent<import('@mui/material').DividerOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLHRElement>, HTMLHRElement>, "style" | "children" | "className" | "textAlign" | "orientation" | "light" | "absolute" | "variant" | "classes" | "sx" | "flexItem"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
9
+ export declare const StyledPositionGrid: any;
10
+ export declare const StyledTriggerGrid: any;
11
+ export declare const StyledAnimationGrid: any;
12
+ export declare const StyledTooltipDelay: any;
1
13
  export declare const StyledSwitch: import('@emotion/styled').StyledComponent<import('@mui/material').SwitchProps & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
14
+ export declare const StyledSelect: import('@emotion/styled').StyledComponent<import('@mui/material').SelectProps<unknown> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
15
+ export declare const StyledDismissSelect: import('@emotion/styled').StyledComponent<import('@mui/material').SelectProps<unknown> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
16
+ export declare const StyledToggleButton: import('@emotion/styled').StyledComponent<import('@mui/material').ToggleButtonOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "value" | "style" | "children" | "className" | "size" | "color" | "disabled" | "action" | "selected" | "onClick" | "tabIndex" | "fullWidth" | "classes" | "sx" | "onChange" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
17
+ export declare const StyledTriggerButtonGroup: import('@emotion/styled').StyledComponent<import('@mui/material').ToggleButtonGroupProps & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
18
+ declare const BehaviourPanel: ({ record, activeStepIndex, isTypeDemo }: {
19
+ record: any;
20
+ activeStepIndex: any;
21
+ isTypeDemo: any;
22
+ }) => import("react/jsx-runtime").JSX.Element;
23
+ export default BehaviourPanel;
@@ -0,0 +1,9 @@
1
+ import { BrandColor } from '../../../../host-stubs/view/branding/styles/types';
2
+ type BrandColorPaletteProps = {
3
+ colors: BrandColor[];
4
+ onPick: (color: string) => void;
5
+ emptyHint: string;
6
+ onNavigateBranding?: () => void;
7
+ };
8
+ declare const BrandColorPalette: ({ colors, onPick, emptyHint, onNavigateBranding, }: BrandColorPaletteProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default BrandColorPalette;
@@ -0,0 +1,8 @@
1
+ type Props = {
2
+ message: string;
3
+ /** Label for the clickable link. Defaults to "Go to Branding" */
4
+ linkLabel?: string;
5
+ onNavigate?: () => void;
6
+ };
7
+ declare const BrandEmptyLink: ({ message, linkLabel, onNavigate, }: Props) => import("react/jsx-runtime").JSX.Element;
8
+ export default BrandEmptyLink;
@@ -0,0 +1,22 @@
1
+ import { SxProps, Theme } from '@mui/material';
2
+ export declare const sectionRootSx: SxProps<Theme>;
3
+ export declare const sectionTitleSx: SxProps<Theme>;
4
+ export declare const colorSwatchTileSx: SxProps<Theme>;
5
+ export declare const colorSwatchSx: (color: string) => SxProps<Theme>;
6
+ export declare const colorSwatchLabelSx: SxProps<Theme>;
7
+ export declare const fontListSx: SxProps<Theme>;
8
+ export declare const fontRowSx: SxProps<Theme>;
9
+ export declare const fontPreviewSx: (fontFamily: string, weight: string | number, fontSize: number) => SxProps<Theme>;
10
+ export declare const logoFrameSx: SxProps<Theme>;
11
+ export declare const logoImageStyle: React.CSSProperties;
12
+ export declare const linkRowSx: SxProps<Theme>;
13
+ export declare const linkAvatarSx: (isFirst: boolean) => SxProps<Theme>;
14
+ export declare const linkAvatarIconSx: SxProps<Theme>;
15
+ export declare const linkUrlSx: SxProps<Theme>;
16
+ export declare const fontDetailsListSx: SxProps<Theme>;
17
+ export declare const typographyListSx: SxProps<Theme>;
18
+ export declare const typographyRowSx: SxProps<Theme>;
19
+ export declare const typographyPreviewSx: (fontSize: number, color?: string | null) => SxProps<Theme>;
20
+ export declare const typographyLabelSx: SxProps<Theme>;
21
+ export declare const fontDetailLabelSx: SxProps<Theme>;
22
+ export declare const fontDetailValueSx: SxProps<Theme>;
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ type BrandSectionProps = {
3
+ title: React.ReactNode;
4
+ children: React.ReactNode;
5
+ hideDivider?: boolean;
6
+ };
7
+ declare const BrandSection: ({ title, children, hideDivider }: BrandSectionProps) => import("react/jsx-runtime").JSX.Element;
8
+ export default BrandSection;
@@ -0,0 +1,6 @@
1
+ import { default as React } from 'react';
2
+ type EmptyTextProps = {
3
+ children: React.ReactNode;
4
+ };
5
+ declare const EmptyText: ({ children }: EmptyTextProps) => import("react/jsx-runtime").JSX.Element;
6
+ export default EmptyText;
@@ -0,0 +1,6 @@
1
+ import { BrandFont } from '../../../../host-stubs/view/branding/styles/types';
2
+ type FontDetailsListProps = {
3
+ font: BrandFont;
4
+ };
5
+ declare const FontDetailsList: ({ font }: FontDetailsListProps) => import("react/jsx-runtime").JSX.Element;
6
+ export default FontDetailsList;
@@ -0,0 +1,5 @@
1
+ interface BrandPanelProps {
2
+ onNavigateBranding?: () => void;
3
+ }
4
+ declare const BrandPanel: React.FC<BrandPanelProps>;
5
+ export default BrandPanel;
@@ -0,0 +1,9 @@
1
+ import { BrandFont, BrandTypography, BrandTypographyLevel } from '../../../../host-stubs/view/branding/styles/types';
2
+ export declare const useBrandApply: () => {
3
+ applyColor: (color: string) => void;
4
+ applyBackgroundColor: (color: string) => void;
5
+ applyFont: (font: BrandFont) => void;
6
+ applyTypography: (tag: keyof BrandTypography, level: BrandTypographyLevel) => void;
7
+ applyLogo: (url: string) => void;
8
+ applyLink: (url: string) => void;
9
+ };
@@ -1,7 +1,5 @@
1
1
  type Props = {
2
- /** Whether the active (non-desktop) device carries any overrides. */
3
2
  hasOverride?: boolean;
4
- /** Clears every override on the active device. */
5
3
  onResetDevice?: () => void;
6
4
  };
7
5
  export default function ResponsiveDeviceTabs({ hasOverride, onResetDevice }: Props): import("react/jsx-runtime").JSX.Element;
@@ -43,6 +43,7 @@ export type StyleClipboard = {
43
43
  * `data.style` (Text, Heading, …).
44
44
  */
45
45
  propsStyle?: Record<string, any>;
46
+ responsive?: Record<string, any>;
46
47
  /**
47
48
  * For rich-text blocks (currently just Text), the source's `data.props.text`
48
49
  * HTML markup. Block-level style fields (data.style) only carry block-wide
@@ -56,17 +57,10 @@ export type StyleClipboard = {
56
57
  };
57
58
  /** Section root: a curated whitelist of "visual" fields. We deliberately skip
58
59
  * content-ish fields (backgroundImage, CTA text/link, language, demo positioning). */
59
- export declare const PAGE_PILOT_LAYOUT_STYLE_FIELDS: readonly ["canvasColor", "fontFamily", "textColor", "borderRadius", "borderColor", "borderWidth", "maxWidth", "maxHeight", "padding", "margin", "backdropColor", "ctaButtonBgColor", "ctaButtonTextColor", "ctaButtonPosition"];
60
+ export declare const EMAIL_LAYOUT_STYLE_FIELDS: readonly ["canvasColor", "fontFamily", "textColor", "borderRadius", "borderColor", "borderWidth", "maxWidth", "maxHeight", "padding", "margin", "backdropColor", "ctaButtonBgColor", "ctaButtonTextColor", "ctaButtonPosition"];
60
61
  export declare function pickEmailLayoutStyle(data: Record<string, any>): Record<string, any>;
61
62
  export declare function readClipboard(): StyleClipboard | null;
62
63
  export declare function writeClipboard(c: StyleClipboard): void;
63
- /**
64
- * Consume the clipboard after a paste. We treat the format painter as
65
- * single-shot — once applied, the clipboard clears so an accidental second
66
- * paste can't smear the same style onto an unrelated block. Users can always
67
- * re-copy if they want another transfer.
68
- */
69
- export declare function clearClipboard(): void;
70
64
  /**
71
65
  * Decide what to copy off a given block.
72
66
  * - EmailLayout → curated flat fields
@@ -1,4 +1 @@
1
- export default function ConfigurationPanel({ record, activeStepIndex, }: {
2
- record: any;
3
- activeStepIndex: number;
4
- }): import("react/jsx-runtime").JSX.Element;
1
+ export default function ConfigurationPanel(record: any, activeStepIndex?: number): import("react/jsx-runtime").JSX.Element;
@@ -22,7 +22,8 @@ type SettingRowProps = {
22
22
  hideOnResponsive?: boolean;
23
23
  /** Hide this row on Desktop — show it only on the Tablet/Mobile device tabs. */
24
24
  hideOnDesktop?: boolean;
25
+ fitContent?: boolean;
25
26
  };
26
- export declare const SettingRow: ({ label, children, divider, background, mt, maxHeight, tooltip, hideOnResponsive, hideOnDesktop, }: SettingRowProps) => import("react/jsx-runtime").JSX.Element;
27
+ export declare const SettingRow: ({ label, children, divider, background, mt, maxHeight, tooltip, hideOnResponsive, hideOnDesktop, fitContent, }: SettingRowProps) => import("react/jsx-runtime").JSX.Element;
27
28
  declare function EmailLayoutSidebarFields({ data, setData, isTypeDemo, record, onBackgroundChange, }: EmailLayoutSidebarFieldsProps): import("react/jsx-runtime").JSX.Element;
28
29
  export default EmailLayoutSidebarFields;
@@ -5,6 +5,8 @@ type ColumnSectionProps = {
5
5
  columnsCount: number;
6
6
  data: FlexColumnsProps;
7
7
  updateData: (d: unknown) => void;
8
+ /** The FlexColumns block's own id, used to find its container-repeat field. */
9
+ containerId?: string | null;
8
10
  };
9
11
  declare const ColumnSection: React.FC<ColumnSectionProps>;
10
12
  export default ColumnSection;
@@ -1,6 +1,7 @@
1
+ import { FormsPickerStyle } from '../../../../documents/blocks/FormsPicker/FormsPropsSchema';
1
2
  type Props = {
2
3
  data: {
3
- style?: any;
4
+ style?: FormsPickerStyle | null;
4
5
  props: {
5
6
  formId: string;
6
7
  formName?: string;
@@ -0,0 +1,7 @@
1
+ import { MdxProps } from '../../../../../blocks-internal/block-mdx/src/index.tsx';
2
+ type MdxSidebarPanelProps = {
3
+ data: MdxProps;
4
+ setData: (v: MdxProps) => void;
5
+ };
6
+ export default function MdxSidebarPanel({ data, setData }: MdxSidebarPanelProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -16,6 +16,22 @@ type Props = {
16
16
  backgroundColor?: string;
17
17
  textColor?: string;
18
18
  burgerDropdownBackgroundColor?: string | null;
19
+ submenuBackgroundColor?: string | null;
20
+ submenuRadius?: number | null;
21
+ submenuIconSize?: number | null;
22
+ submenuPadding?: {
23
+ top: number;
24
+ right: number;
25
+ bottom: number;
26
+ left: number;
27
+ } | null;
28
+ submenuItemPadding?: {
29
+ top: number;
30
+ right: number;
31
+ bottom: number;
32
+ left: number;
33
+ } | null;
34
+ submenuMinWidth?: number | null;
19
35
  fontSize?: string;
20
36
  fontFamily?: string | null;
21
37
  fontWeight?: string;
@@ -26,6 +42,12 @@ type Props = {
26
42
  bottom: number;
27
43
  left: number;
28
44
  } | null;
45
+ blockMargin?: {
46
+ top: number;
47
+ right: number;
48
+ bottom: number;
49
+ left: number;
50
+ } | null;
29
51
  gap?: string;
30
52
  showIcons?: boolean;
31
53
  iconSize?: string;
@@ -0,0 +1,8 @@
1
+ import { QuillProps } from '../../../../../blocks-internal/block-quill/src/index.tsx';
2
+ type QuillSidebarPanelProps = {
3
+ data: QuillProps;
4
+ setData: (v: QuillProps) => void;
5
+ record: any;
6
+ };
7
+ export default function QuillSidebarPanel({ record, data, setData }: QuillSidebarPanelProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -2,7 +2,7 @@ import { TextProps } from '../../../../../blocks-internal/block-text/src/index.t
2
2
  type TextSidebarPanelProps = {
3
3
  data: TextProps;
4
4
  setData: (v: TextProps) => void;
5
- record?: any;
5
+ record: any;
6
6
  };
7
- export default function TextSidebarPanel({ data, setData }: TextSidebarPanelProps): import("react/jsx-runtime").JSX.Element;
7
+ export default function TextSidebarPanel({ record: recordData, data, setData }: TextSidebarPanelProps): import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -7,12 +7,14 @@ export type TAnimationProps = {
7
7
  };
8
8
  /**
9
9
  * Reusable "Animation" CollapsibleSection for any block whose props schema
10
- * has an `animation` field of this shape (Image, Container, Button, Logo,
11
- * Avatar). The parent panel owns `data`/`updateData` — this component only
12
- * reads/writes `props.animation` off of whatever object `updateProps` merges
13
- * into.
10
+ * has an `animation` field of this shape (see block-image's
11
+ * ImagePropsSchema.props.animation, the reference implementation this was
12
+ * factored out of). The parent panel owns `data`/`updateData` — this
13
+ * component only reads/writes `props.animation` off of whatever object
14
+ * `updateProps` merges into.
14
15
  */
15
- export default function AnimationSection({ rawAnimation, updateProps, }: {
16
+ export default function AnimationSection({ rawAnimation, updateProps, cancelParentPadding, }: {
16
17
  rawAnimation: Partial<TAnimationProps> | null | undefined;
17
18
  updateProps: (patch: Record<string, any>) => void;
19
+ cancelParentPadding?: boolean;
18
20
  }): import("react/jsx-runtime").JSX.Element;
@@ -7,7 +7,7 @@ export type THoverEffectProps = {
7
7
  /**
8
8
  * Reusable "Hover Effect" CollapsibleSection for Image and Container: a plain
9
9
  * CSS `:hover` scale/transition, distinct from AnimationSection's trigger-based
10
- * keyframe animations.
10
+ * keyframe animations (see block-image's ImagePropsSchema.props.hoverEffect).
11
11
  */
12
12
  export default function HoverEffectSection({ rawHoverEffect, updateProps, cancelParentPadding, }: {
13
13
  rawHoverEffect: Partial<THoverEffectProps> | null | undefined;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * px ⇄ % conversion for the Image block's Width control.
3
+ *
4
+ * A `%` width on the Image block's <img> is a normal CSS containing-block
5
+ * percentage — it resolves against `.image-block`'s own content-box width at
6
+ * paint time (see block-image/src/index.tsx's sectionStyle/getImageWidth).
7
+ * Nothing in this codebase tracks that width as data, so converting an
8
+ * existing px value to its equivalent % (or back) requires reading the real
9
+ * rendered width from the canvas DOM.
10
+ */
11
+ /**
12
+ * Content-box width (in px) of the selected Image block's `.image-block`
13
+ * wrapper in the live canvas, or null if it can't be found (block not
14
+ * mounted, mid-drag, etc). Same DOM lookup AnimationSection uses to find a
15
+ * block's own canvas node from its id.
16
+ */
17
+ export declare function getImageContentBoxWidth(blockId: string | null | undefined): number | null;
18
+ /** Converts a size value between px and % using `referencePx` as the 100% basis. */
19
+ export declare function convertSizeValue(value: number, fromUnit: 'px' | '%', toUnit: 'px' | '%', referencePx: number | null | undefined): number;
@@ -31,8 +31,6 @@ type Props = {
31
31
  solidOnly?: boolean;
32
32
  /** Heading rendered in the reserved top strip, aligned with the close button. */
33
33
  title?: string;
34
- /** When true, hides the "Transparent" / none button (e.g. callers where a
35
- * transparent value doesn't make sense, like a required background). */
36
34
  hideTransparent?: boolean;
37
35
  };
38
36
  export default function Picker({ value, onChange, onApply, onTransparent, onClose, noneLabel, hideBrandColors, defaultValue, stickyActions, bodyMaxHeight, solidOnly, title, hideTransparent }: Props): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,8 @@
1
+ /** Compact icon (fits inside an input) linking a locked, variable-bound value to its variable. */
2
+ export declare function VariableLinkIcon({ value }: {
3
+ value: string;
4
+ }): import("react/jsx-runtime").JSX.Element;
5
+ /** Text hint shown under a locked, variable-bound input — jumps to the variable. */
6
+ export default function VariableLinkHint({ value }: {
7
+ value: string;
8
+ }): import("react/jsx-runtime").JSX.Element;
@@ -5,6 +5,8 @@ export interface EditorPanelToggles {
5
5
  layout?: boolean;
6
6
  inspect?: boolean;
7
7
  layers?: boolean;
8
+ /** Brand panel (brand colours / fonts). */
9
+ brand?: boolean;
8
10
  /** SEO settings panel (meta title / description / social preview / tags / …). */
9
11
  seo?: boolean;
10
12
  /**
@@ -26,12 +28,16 @@ interface EditorBehaviorProps {
26
28
  record: any;
27
29
  onTogglePreview: () => void;
28
30
  activeStepIndex: number;
31
+ needsAiSync?: boolean;
32
+ onAiSynced?: () => void;
29
33
  onBackgroundChange: any;
30
34
  onUpdateRecord?: (record: any) => void;
31
35
  onSaveChanges?: () => Promise<boolean>;
32
36
  onNavigateBranding?: () => void;
33
- /** Toggle visibility of the four side panels. Defaults to all enabled. */
37
+ isPanelCollapsed?: boolean;
38
+ handleOpenPanel?: () => void;
39
+ /** Toggle visibility of the side panels. Defaults to all enabled. */
34
40
  panels?: EditorPanelToggles;
35
41
  }
36
- declare const EditorBehavior: ({ record, activeStepIndex, onBackgroundChange, onUpdateRecord, panels, }: EditorBehaviorProps) => import("react/jsx-runtime").JSX.Element;
42
+ declare const EditorBehavior: ({ record, needsAiSync, onAiSynced, onTogglePreview, activeStepIndex, onBackgroundChange, onUpdateRecord, onSaveChanges, onNavigateBranding, isPanelCollapsed, handleOpenPanel, panels, }: EditorBehaviorProps) => import("react/jsx-runtime").JSX.Element;
37
43
  export default EditorBehavior;
@@ -7,7 +7,7 @@ export declare const HeaderBox: import('@emotion/styled').StyledComponent<import
7
7
  export declare const HeaderTitle: import('@emotion/styled').StyledComponent<import('@mui/material').TypographyOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "top" | "bottom" | "right" | "left" | "padding" | "margin" | "style" | "lineHeight" | "children" | "className" | "fontSize" | "fontFamily" | "fontWeight" | "fontStyle" | "textAlign" | "marginBottom" | "width" | "height" | "borderRadius" | "borderColor" | "gap" | "p" | "color" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "px" | "boxShadow" | "overflow" | "variant" | "paddingX" | "paddingY" | "marginX" | "marginY" | "maxWidth" | "maxHeight" | "classes" | "sx" | "letterSpacing" | "order" | "visibility" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "boxSizing" | "columnGap" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "justifyContent" | "justifyItems" | "justifySelf" | "marginBlockEnd" | "marginBlockStart" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "minHeight" | "minWidth" | "paddingBlockEnd" | "paddingBlockStart" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "rowGap" | "textOverflow" | "textTransform" | "whiteSpace" | "borderBottom" | "borderLeft" | "borderRight" | "gridArea" | "gridColumn" | "gridRow" | "marginBlock" | "marginInline" | "paddingBlock" | "paddingInline" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "my" | "pt" | "pr" | "pb" | "pl" | "py" | "typography" | "displayPrint" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import('@mui/system').MUIStyledCommonProps<Theme>, {}, {}>;
8
8
  export declare const ClipboardBar: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<Theme>> & import('@mui/system').MUIStyledCommonProps<Theme>, {}, {}>;
9
9
  export declare const ActionSpan: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<Theme>, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
10
- export declare const ActionButton: import('@emotion/styled').StyledComponent<import('@mui/material').ButtonOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "style" | "children" | "className" | "size" | "color" | "disabled" | "action" | "href" | "tabIndex" | "fullWidth" | "variant" | "loading" | "classes" | "sx" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "loadingIndicator" | "disableElevation" | "endIcon" | "loadingPosition" | "startIcon"> & import('@mui/system').MUIStyledCommonProps<Theme>, {}, {}>;
10
+ export declare const ActionButton: import('@emotion/styled').StyledComponent<import('@mui/material').ButtonOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "style" | "children" | "className" | "size" | "color" | "disabled" | "action" | "href" | "tabIndex" | "fullWidth" | "variant" | "classes" | "sx" | "loading" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "loadingIndicator" | "disableElevation" | "endIcon" | "loadingPosition" | "startIcon"> & import('@mui/system').MUIStyledCommonProps<Theme>, {}, {}>;
11
11
  export declare const connectorVLineSx: (depth: number, isLast: boolean, INDENT: number) => SxProps<Theme>;
12
12
  export declare const connectorHLineSx: (depth: number, INDENT: number) => SxProps<Theme>;
13
13
  export declare const rowSx: (depth: number, INDENT: number, isSelected: boolean, dropPos: "before" | "after" | "inside" | null) => SxProps<Theme>;
@@ -0,0 +1,7 @@
1
+ import { SxProps, Theme } from '@mui/material';
2
+ interface AiSupportedBadgeProps {
3
+ size?: number;
4
+ sx?: SxProps<Theme>;
5
+ }
6
+ declare const AiSupportedBadge: ({ size, sx }: AiSupportedBadgeProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default AiSupportedBadge;
@@ -1,15 +1,7 @@
1
1
  interface SectionsModalProps {
2
2
  open: boolean;
3
3
  onClose: () => void;
4
- /**
5
- * Kept for API parity with ahd-fe. Ignored in the standalone build —
6
- * every click goes through `applyIndividualBlockTemplate` /
7
- * `applyFullDocumentTemplate` regardless of caller. The `onInsert`
8
- * splice path in ahd-fe requires a `remapBlocks` step we don't want
9
- * to duplicate here; the helper-based path already handles both
10
- * individual-block and full-doc templates correctly.
11
- */
12
4
  onInsert?: (block: any, preassignedId?: string) => void;
13
5
  }
14
- export default function SectionsModal({ open, onClose }: SectionsModalProps): import("react/jsx-runtime").JSX.Element;
15
- export {};
6
+ declare const SectionsModal: React.FC<SectionsModalProps>;
7
+ export default SectionsModal;
@@ -27,8 +27,10 @@ declare const TabsIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JS
27
27
  declare const AccordionIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
28
28
  declare const YoutubeUrlIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
29
29
  declare const MenuPickerIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
30
+ declare const BreadcrumbIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
30
31
  declare const IframeIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
31
32
  declare const FormIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
33
+ declare const ListBlockIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
32
34
  declare const SkipToMainIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
33
35
  /**
34
36
  * Generic layout-preset glyph: draws one outlined rect per cell, positioned
@@ -48,8 +50,4 @@ export declare const GridPresetIcon: (props: SvgIconProps & {
48
50
  cells: PresetIconCell[];
49
51
  }) => import("react/jsx-runtime").JSX.Element;
50
52
  declare const TableIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
51
- declare const ProgressBarIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
52
- declare const TimerBlockIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
53
- declare const ListBlockIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
54
- declare const BreadcrumbIcon: (props?: SvgIconProps) => import("react/jsx-runtime").JSX.Element;
55
- export { ContainerIcon, GridIcon, ImageIcon, TextIcon, ButtonIcon, HtmlIcon, VideoIcon, DividerIcon, DragIcon, HeadingIcon, StepperIcon, AvatarIcon, SpacerIcon, QuillEditorIcon, MarkDownIcon, VideoBlockIcon, LogoBlockIcon, FlexColumnsIcon, ColumnsIcon, GridBlockIcon, ContainerBlockIcon, SpacerBlockIcon, ButtonBlockIcon, ButtonGroupIcon, TabsIcon, AccordionIcon, YoutubeUrlIcon, MenuPickerIcon, IframeIcon, FormIcon, SkipToMainIcon, TableIcon, ProgressBarIcon, TimerBlockIcon, ListBlockIcon, BreadcrumbIcon, };
53
+ export { ContainerIcon, GridIcon, ImageIcon, TextIcon, ButtonIcon, HtmlIcon, VideoIcon, DividerIcon, DragIcon, HeadingIcon, StepperIcon, AvatarIcon, SpacerIcon, QuillEditorIcon, MarkDownIcon, VideoBlockIcon, LogoBlockIcon, FlexColumnsIcon, ColumnsIcon, GridBlockIcon, ContainerBlockIcon, SpacerBlockIcon, ButtonBlockIcon, ButtonGroupIcon, TabsIcon, AccordionIcon, YoutubeUrlIcon, MenuPickerIcon, BreadcrumbIcon, IframeIcon, FormIcon, SkipToMainIcon, ListBlockIcon, TableIcon, };