pagepilot-visual-editor 1.0.24 → 1.0.26
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/dist/blocks-internal/block-iframe/src/index.d.ts +6 -0
- package/dist/blocks-internal/block-list/src/index.d.ts +1 -1
- package/dist/blocks-internal/block-stepper/src/index.d.ts +1 -1
- package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/FormsPickerSidebarPanel.d.ts +1 -0
- package/dist/editor-sample/App/InspectorDrawer/ConfigurationPanel/input-panels/helpers/inputs/ColorInput/Picker.d.ts +4 -1
- package/dist/editor-sample/App/InspectorDrawer/LayersPanelStyles.d.ts +1 -1
- package/dist/editor-sample/App/InspectorDrawer/LayoutPanel/templateApplyHelpers.d.ts +22 -4
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/GroupBlockPreview.d.ts +7 -0
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/ItemsArrayRepeatSection.d.ts +14 -0
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/ScalarDataReferencePanel.d.ts +24 -0
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/ScalarFieldRow.d.ts +12 -0
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/VariableGroupList.d.ts +8 -0
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/VariablesPanelContext.d.ts +10 -0
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/dataReferenceUtils.d.ts +24 -6
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/index.d.ts +8 -1
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/repeatRowActions.d.ts +27 -0
- package/dist/editor-sample/App/InspectorDrawer/VariablesPanel/styles.d.ts +20 -0
- package/dist/editor-sample/App/InspectorDrawer/components/DateFieldControls.d.ts +12 -0
- package/dist/editor-sample/App/InspectorDrawer/components/DateTimeFieldControls.d.ts +14 -0
- package/dist/editor-sample/App/InspectorDrawer/components/TimeFieldControls.d.ts +12 -0
- package/dist/editor-sample/App/shared/editor.styles.d.ts +2 -2
- package/dist/editor-sample/documents/blocks/FormsPicker/FormsPropsSchema.d.ts +2 -0
- package/dist/editor-sample/documents/blocks/Table/TableImportDialog.styles.d.ts +4 -4
- package/dist/editor-sample/documents/blocks/TabsBlock/TabsBlockPropsSchema.d.ts +14 -0
- package/dist/editor-sample/documents/blocks/helpers/EditorChildrenIds/AddBlockMenu/blockMenuStyles.d.ts +2 -0
- package/dist/editor-sample/documents/blocks/helpers/EditorChildrenIds/AddBlockMenu/buttons.d.ts +3 -4
- package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/hooks/useToolbarCommands.d.ts +17 -1
- package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/popovers/ResponsiveFontSizePopover.d.ts +43 -0
- package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/types.d.ts +7 -0
- package/dist/editor-sample/documents/blocks/helpers/documentUtils.d.ts +93 -2
- package/dist/editor-sample/documents/blocks/helpers/responsiveFontSizeCss.d.ts +72 -0
- package/dist/editor-sample/documents/blocks/helpers/variableBinding.d.ts +5 -0
- package/dist/editor-sample/documents/editor/core.d.ts +23 -2
- package/dist/editor-sample/documents/editor/templateVariables.d.ts +3 -3
- package/dist/email-builder-core/blocks/FormsPicker/FormsPropsSchema.d.ts +1 -0
- package/dist/email-builder-core/blocks/TabsBlock/TabsBlockPropsSchema.d.ts +14 -0
- package/dist/email-builder-core/renderers/pageScripts.d.ts +1 -0
- package/dist/email-builder-core/utils/substituteTemplateVars.d.ts +32 -0
- package/dist/host-stubs/modules/_hostListShim.d.ts +1 -1
- package/dist/host-stubs/modules/forms/formsService.d.ts +2 -1
- package/dist/host-stubs/modules/forms/useFormsList.d.ts +12 -0
- package/dist/host-stubs/view/shared/common/InfoTooltip.d.ts +19 -0
- package/dist/host-stubs/view/shared/timeZones.d.ts +4 -0
- package/dist/{index-DC6qaxfh.cjs → index-BNqa-SV3.cjs} +317 -288
- package/dist/{index-QDgGEZCN.js → index-C4zNSWXe.js} +1 -1
- package/dist/{index-DUfdBPwm.cjs → index-Cu-dtp0Q.cjs} +1 -1
- package/dist/{index-n8k3yknQ.js → index-Dk7bp7l0.js} +30882 -27652
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +15 -12
- package/dist/render-core/apiDataSource.d.ts +50 -0
- package/dist/render-core/dateFormats.d.ts +67 -0
- package/dist/render-core/templateBaking.d.ts +105 -2
- package/dist/render.cjs +178 -155
- package/dist/render.d.ts +2 -2
- package/dist/render.js +6364 -5686
- package/dist/renderToStaticHtml.d.ts +58 -3
- package/dist/{xlsx-pI-7Dj2H.cjs → xlsx-C6JQXDb3.cjs} +1 -1
- package/dist/{xlsx-rO__5tF8.js → xlsx-Cd1etxFW.js} +1 -1
- package/package.json +1 -1
|
@@ -11,6 +11,12 @@ export declare const IframePropsSchema: z.ZodObject<{
|
|
|
11
11
|
right: z.ZodNumber;
|
|
12
12
|
left: z.ZodNumber;
|
|
13
13
|
}, z.core.$strip>>>;
|
|
14
|
+
margin: z.ZodNullable<z.ZodOptional<z.ZodObject<{
|
|
15
|
+
top: z.ZodNumber;
|
|
16
|
+
bottom: z.ZodNumber;
|
|
17
|
+
right: z.ZodNumber;
|
|
18
|
+
left: z.ZodNumber;
|
|
19
|
+
}, z.core.$strip>>>;
|
|
14
20
|
textAlign: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
15
21
|
right: "right";
|
|
16
22
|
left: "left";
|
|
@@ -38,8 +38,8 @@ export declare const ListPropsSchema: z.ZodObject<{
|
|
|
38
38
|
marker: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
39
39
|
none: "none";
|
|
40
40
|
check: "check";
|
|
41
|
-
square: "square";
|
|
42
41
|
circle: "circle";
|
|
42
|
+
square: "square";
|
|
43
43
|
decimal: "decimal";
|
|
44
44
|
disc: "disc";
|
|
45
45
|
dash: "dash";
|
|
@@ -22,8 +22,8 @@ export declare const StepperPropsSchema: z.ZodObject<{
|
|
|
22
22
|
}, z.core.$strip>>>;
|
|
23
23
|
props: z.ZodNullable<z.ZodOptional<z.ZodObject<{
|
|
24
24
|
stepperType: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
25
|
-
both: "both";
|
|
26
25
|
numeric: "numeric";
|
|
26
|
+
both: "both";
|
|
27
27
|
dots: "dots";
|
|
28
28
|
}>>>;
|
|
29
29
|
totalDots: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
@@ -31,6 +31,9 @@ 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
|
+
hideTransparent?: boolean;
|
|
34
37
|
};
|
|
35
|
-
export default function Picker({ value, onChange, onApply, onTransparent, onClose, noneLabel, hideBrandColors, defaultValue, stickyActions, bodyMaxHeight, solidOnly, title }: Props): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
export default function Picker({ value, onChange, onApply, onTransparent, onClose, noneLabel, hideBrandColors, defaultValue, stickyActions, bodyMaxHeight, solidOnly, title, hideTransparent }: Props): import("react/jsx-runtime").JSX.Element;
|
|
36
39
|
export {};
|
|
@@ -4,7 +4,7 @@ export declare const PanelRoot: import('@emotion/styled').StyledComponent<import
|
|
|
4
4
|
export declare const PanelHeader: 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>, {}, {}>;
|
|
5
5
|
export declare const PanelContent: 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>, {}, {}>;
|
|
6
6
|
export declare const HeaderBox: 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>, {}, {}>;
|
|
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" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "
|
|
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" | "p" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "width" | "px" | "height" | "borderRadius" | "borderColor" | "boxShadow" | "overflow" | "marginBottom" | "variant" | "gap" | "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
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" | "color" | "size" | "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>, {}, {}>;
|
|
@@ -68,13 +68,31 @@ export declare function applyFullDocumentTemplate(configuration: any, document:
|
|
|
68
68
|
export declare function applyIndividualBlockTemplate(configuration: any, document: any, resetDocument: (doc: any) => void): {
|
|
69
69
|
idMapping: Record<string, string>;
|
|
70
70
|
} | null;
|
|
71
|
+
/**
|
|
72
|
+
* "Use this Styles" — applies the template's styling — the root canvas AND
|
|
73
|
+
* every individual block (header, buttons, images, …) — while leaving the
|
|
74
|
+
* user's content and structure exactly as they were: text, links, image URLs,
|
|
75
|
+
* layout, block count and order are all untouched. Only visual props move
|
|
76
|
+
* (colours, typography, borders, spacing, alignment).
|
|
77
|
+
*
|
|
78
|
+
* Root: overlays the stricter `STYLE_ONLY_ROOT_KEYS` (typography / colours /
|
|
79
|
+
* border), then re-pins every user-owned root key via `preserveUserRootKeys`
|
|
80
|
+
* so the canvas geometry, background, CTA-existence and block list stay the
|
|
81
|
+
* user's — the page never resizes and no root CTA button appears/moves.
|
|
82
|
+
*
|
|
83
|
+
* Per-block: `overlayBlockStylesFromTemplate` — same donor-matching + prop
|
|
84
|
+
* overlay "Change template" uses; nothing is added, removed or re-keyed.
|
|
85
|
+
*/
|
|
71
86
|
export declare function applyTemplateStylesOnly(configuration: any, document: any, resetDocument: (doc: any) => void): void;
|
|
72
87
|
/**
|
|
73
88
|
* "Change template": apply the incoming template's styling — both the root
|
|
74
|
-
* canvas AND every individual block
|
|
75
|
-
* structure exactly as they were.
|
|
76
|
-
*
|
|
77
|
-
*
|
|
89
|
+
* canvas AND every individual block (menu, header, buttons, images, etc.) —
|
|
90
|
+
* while leaving user content and structure exactly as they were.
|
|
91
|
+
*
|
|
92
|
+
* Root overlay: identical to `applyTemplateStylesOnly` (root-level style keys
|
|
93
|
+
* copied via `PURE_STYLE_KEYS` — the wide list, since "Change template" is the
|
|
94
|
+
* confirm-gated aggressive restyle).
|
|
95
|
+
* Per-block overlay: `overlayBlockStylesFromTemplate`.
|
|
78
96
|
*/
|
|
79
97
|
export declare function applyChangeTemplate(configuration: any, document: any, resetDocument: (doc: any) => void): void;
|
|
80
98
|
/**
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Variables-tab counterpart to ContainerRepeatSection, but for blocks
|
|
3
|
+
* whose repeatable content is a flat `props.items` array with no child block
|
|
4
|
+
* subtree. No template picker is needed — toggling on just registers a
|
|
5
|
+
* `TemplateFormField` bound to this block's own items via `itemsBlockId`,
|
|
6
|
+
* seeded from whatever items already exist.
|
|
7
|
+
*
|
|
8
|
+
* No block type currently opts in (see `ITEMS_ARRAY_BLOCK_TYPES` in
|
|
9
|
+
* documentUtils), so this renders for nothing today — kept alongside the
|
|
10
|
+
* block-agnostic helpers for the next items-array block.
|
|
11
|
+
*/
|
|
12
|
+
export default function ItemsArrayRepeatSection({ blockId }: {
|
|
13
|
+
blockId: string;
|
|
14
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { TemplateFormField } from '../../../documents/editor/templateVariables';
|
|
2
|
+
type ScalarField = {
|
|
3
|
+
field: TemplateFormField;
|
|
4
|
+
index: number;
|
|
5
|
+
};
|
|
6
|
+
type Props = {
|
|
7
|
+
/** The active group's scalar (non-array) fields, with their index in `forms`. */
|
|
8
|
+
scalarFields: ScalarField[];
|
|
9
|
+
/** Apply many field patches in one write — see index.tsx. Looping a
|
|
10
|
+
* single-field updater clobbers earlier patches (each call maps the same
|
|
11
|
+
* stale `forms` snapshot, so the last write wins). */
|
|
12
|
+
updateFields: (patches: {
|
|
13
|
+
index: number;
|
|
14
|
+
patch: Partial<TemplateFormField>;
|
|
15
|
+
}[]) => void;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* "Data Reference" for the scalar (non-repeatable) variables of a group: fetch a
|
|
19
|
+
* SINGLE JSON object from a GET endpoint and seed each `{{name}}` field from the
|
|
20
|
+
* matching key. Editor-time only — the value is written into the field and baked
|
|
21
|
+
* into the page on publish, exactly like a hand-typed value.
|
|
22
|
+
*/
|
|
23
|
+
export default function ScalarDataReferencePanel({ scalarFields, updateFields }: Props): import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TemplateFormField } from '../../../documents/editor/templateVariables';
|
|
2
|
+
type Props = {
|
|
3
|
+
field: TemplateFormField;
|
|
4
|
+
onPatch: (patch: Partial<TemplateFormField>) => void;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* One scalar variable row: name, a type selector (Text / Number / Date / Time /
|
|
8
|
+
* Image), the value input, and — for `date` / `time` — the format + timezone
|
|
9
|
+
* controls.
|
|
10
|
+
*/
|
|
11
|
+
export default function ScalarFieldRow({ field, onPatch }: Props): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { VariableGroup } from '../../../documents/blocks/helpers/documentUtils';
|
|
2
|
+
type Props = {
|
|
3
|
+
groups: VariableGroup[];
|
|
4
|
+
onOpen: (group: VariableGroup) => void;
|
|
5
|
+
hideCandidates?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export default function VariableGroupList({ groups, onOpen, hideCandidates }: Props): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type VariablesPanelMode = {
|
|
2
|
+
/**
|
|
3
|
+
* Hide actions that only make sense inside the editor. The create-page flow
|
|
4
|
+
* embeds this panel to fill in a new page's variables — saving a block as a
|
|
5
|
+
* reusable template there would act on a page that doesn't exist yet.
|
|
6
|
+
*/
|
|
7
|
+
hideEditorActions: boolean;
|
|
8
|
+
};
|
|
9
|
+
export declare const VariablesPanelProvider: import('react').Provider<VariablesPanelMode>;
|
|
10
|
+
export declare const useVariablesPanelMode: () => VariablesPanelMode;
|
|
@@ -3,25 +3,43 @@ import { TemplateFormField } from '../../../documents/editor/templateVariables';
|
|
|
3
3
|
export declare function reportSeedResult(count: number, total: number): void;
|
|
4
4
|
/** Resolve a dot-path (e.g. "data.items") into a nested value. */
|
|
5
5
|
export declare function resolvePath(obj: any, path: string): any;
|
|
6
|
+
/**
|
|
7
|
+
* Apply a per-row dot-path to every element of `rows`, for APIs that wrap the
|
|
8
|
+
* useful fields inside each array item (e.g. `[{ event: { … } }]` with
|
|
9
|
+
* `itemPath: "event"`). Elements that don't resolve to an object are dropped.
|
|
10
|
+
* A blank/undefined path returns `rows` unchanged.
|
|
11
|
+
*/
|
|
12
|
+
export declare function unwrapRows(rows: Record<string, any>[], itemPath?: string): Record<string, any>[];
|
|
6
13
|
/**
|
|
7
14
|
* Build a two-row example JSON array keyed by a field's sub-field ids — the
|
|
8
15
|
* shape any data source (JSON / API / Menu) must provide to map correctly.
|
|
9
16
|
*/
|
|
10
17
|
export declare function buildReferenceJson(itemFields: TemplateFormField['itemFields']): string;
|
|
11
18
|
/**
|
|
12
|
-
* Pull the array of objects out of an arbitrary API response.
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
19
|
+
* Pull the array of objects out of an arbitrary API response. When `path` is
|
|
20
|
+
* given (e.g. "data.ALL.games"), resolve it directly via `resolvePath` — this
|
|
21
|
+
* lets the author point at any nested array, not just the common wrapper
|
|
22
|
+
* keys. Otherwise fall back to auto-detection: a top-level array, or an
|
|
23
|
+
* object wrapping the array under a common key (data / rows / results /
|
|
24
|
+
* items / records). Returns null when no array is found so the caller can
|
|
25
|
+
* surface a clear error.
|
|
16
26
|
*/
|
|
17
|
-
export declare function extractArrayFromResponse(body: any): Record<string, any>[] | null;
|
|
27
|
+
export declare function extractArrayFromResponse(body: any, path?: string): Record<string, any>[] | null;
|
|
18
28
|
/**
|
|
19
29
|
* GET a URL and return the array of objects from its JSON response. Throws with
|
|
20
30
|
* a user-facing message on a bad URL, network error, non-OK status, non-JSON
|
|
21
31
|
* body, or a response that carries no array. Only GET is supported today
|
|
22
32
|
* (POST is planned — the panel disables it).
|
|
23
33
|
*/
|
|
24
|
-
export declare function fetchApiRows(url: string): Promise<Record<string, any>[]>;
|
|
34
|
+
export declare function fetchApiRows(url: string, responsePath?: string): Promise<Record<string, any>[]>;
|
|
35
|
+
/**
|
|
36
|
+
* GET a URL and return a SINGLE object from its JSON response, for scalar
|
|
37
|
+
* (non-repeatable) variables. When `responsePath` is given, resolve it via
|
|
38
|
+
* `resolvePath`; otherwise use the body directly. If the resolved value is an
|
|
39
|
+
* array, take its first element. Throws a user-facing message on a bad URL,
|
|
40
|
+
* network error, non-OK status, non-JSON body, or a result that isn't an object.
|
|
41
|
+
*/
|
|
42
|
+
export declare function fetchApiObject(url: string, responsePath?: string): Promise<Record<string, any>>;
|
|
25
43
|
/**
|
|
26
44
|
* GET a URL and return its raw response as pretty-printed text, for the
|
|
27
45
|
* "Preview response" dialog. Unlike fetchApiRows this does NOT require an array
|
|
@@ -1 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
type VariablesPanelProps = {
|
|
2
|
+
/** See `VariableGroupList`'s prop of the same name. */
|
|
3
|
+
hideCandidates?: boolean;
|
|
4
|
+
/** See `VariablesPanelContext`. */
|
|
5
|
+
hideEditorActions?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export default function VariablesPanel({ hideCandidates, hideEditorActions, }?: VariablesPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TemplateArrayRow } from '../../../documents/editor/templateVariables';
|
|
1
2
|
/** Append one repeat row: clone the source subtree into the next empty slot. */
|
|
2
3
|
export declare function addContainerRepeatRow(fieldId: string): void;
|
|
3
4
|
/**
|
|
@@ -36,5 +37,31 @@ export declare function trimFieldRowsTo(fieldId: string, keepRows: number): void
|
|
|
36
37
|
* Returns the number of rows seeded (clamped to slot capacity), or -1 on error.
|
|
37
38
|
*/
|
|
38
39
|
export declare function seedFieldFromData(fieldId: string, data: Record<string, any>[]): number;
|
|
40
|
+
/** Append one empty row to both the field's value and the live `props.items`. */
|
|
41
|
+
export declare function addItemsArrayRow(fieldId: string): void;
|
|
42
|
+
/** Remove one row (by index) from both the field's value and `props.items`. */
|
|
43
|
+
export declare function removeItemsArrayRow(fieldId: string, rowIndex: number): void;
|
|
44
|
+
/**
|
|
45
|
+
* Push a field's row values straight onto its block's `props.items` — the
|
|
46
|
+
* write-through half of the items-array model. Unlike Grid (where a row is a
|
|
47
|
+
* separate cloned block that renders itself), Breadcrumb's canvas renders
|
|
48
|
+
* directly from `props.items`, so every row edit (typed in a RowCard, or
|
|
49
|
+
* seeded via seedItemsArrayFromData) has to be mirrored onto the block itself
|
|
50
|
+
* or the canvas never reflects it. Rows map 1:1 to items by index; existing
|
|
51
|
+
* item keys not present in `itemFields` (e.g. `id`) are preserved.
|
|
52
|
+
*/
|
|
53
|
+
export declare function syncItemsArrayRows(fieldId: string, rows: TemplateArrayRow[]): void;
|
|
54
|
+
/**
|
|
55
|
+
* Seed an items-array field from an array of data objects (the Data Reference
|
|
56
|
+
* flow). One object → one item: `props.items` is replaced with exactly
|
|
57
|
+
* `data.length` entries, each built by matching the object's keys to the
|
|
58
|
+
* field's sub-field ids (exact match first, then a case/whitespace-insensitive
|
|
59
|
+
* fallback — same normalizer as `seedFieldFromData`). Unlike the container-repeat
|
|
60
|
+
* version there's no capacity ceiling or block cloning — the array is simply
|
|
61
|
+
* resized and rewritten in one commit.
|
|
62
|
+
*
|
|
63
|
+
* Returns the number of rows seeded, or -1 on error.
|
|
64
|
+
*/
|
|
65
|
+
export declare function seedItemsArrayFromData(fieldId: string, data: Record<string, any>[]): number;
|
|
39
66
|
/** Remove one repeat row (rowIndex ≥ 1): delete its clone subtree + its row. */
|
|
40
67
|
export declare function removeContainerRepeatRow(fieldId: string, rowIndex: number): void;
|
|
@@ -6,6 +6,26 @@ export declare const panelDescription: SxProps<Theme>;
|
|
|
6
6
|
export declare const panelContent: SxProps<Theme>;
|
|
7
7
|
export declare const panelLearnMore: SxProps<Theme>;
|
|
8
8
|
export declare const emptyState: SxProps<Theme>;
|
|
9
|
+
export declare const groupListWrap: SxProps<Theme>;
|
|
10
|
+
export declare const groupListCaption: SxProps<Theme>;
|
|
11
|
+
export declare const groupCard: SxProps<Theme>;
|
|
12
|
+
export declare const groupCardHead: SxProps<Theme>;
|
|
13
|
+
export declare const groupIconBox: SxProps<Theme>;
|
|
14
|
+
export declare const previewViewport: (height: number) => SxProps<Theme>;
|
|
15
|
+
export declare const previewStage: (renderWidth: number, scale: number) => SxProps<Theme>;
|
|
16
|
+
export declare const previewSkeleton: SxProps<Theme>;
|
|
17
|
+
export declare const groupSectionHint: SxProps<Theme>;
|
|
18
|
+
export declare const groupChipRow: SxProps<Theme>;
|
|
19
|
+
export declare const groupChip: SxProps<Theme>;
|
|
20
|
+
export declare const groupChipMore: SxProps<Theme>;
|
|
21
|
+
export declare const groupIcon: SxProps<Theme>;
|
|
22
|
+
export declare const groupRowText: SxProps<Theme>;
|
|
23
|
+
export declare const groupRowTitle: SxProps<Theme>;
|
|
24
|
+
export declare const groupRowSubtitle: SxProps<Theme>;
|
|
25
|
+
export declare const groupRowChevron: SxProps<Theme>;
|
|
26
|
+
export declare const backRow: SxProps<Theme>;
|
|
27
|
+
export declare const backIcon: SxProps<Theme>;
|
|
28
|
+
export declare const backLabel: SxProps<Theme>;
|
|
9
29
|
export declare const paywallOverlay: SxProps<Theme>;
|
|
10
30
|
export declare const paywallGhostContent: SxProps<Theme>;
|
|
11
31
|
export declare const paywallGhostHeader: SxProps<Theme>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TemplateFormField } from '../../../documents/editor/templateVariables';
|
|
2
|
+
type Props = {
|
|
3
|
+
field: TemplateFormField;
|
|
4
|
+
onPatch: (patch: Partial<TemplateFormField>) => void;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Format + timezone controls for a `date` scalar variable, shown under the
|
|
8
|
+
* datetime input. `relative` recomputes in the reader's browser at view time;
|
|
9
|
+
* every other preset is a fixed string baked in `dateTz` on publish.
|
|
10
|
+
*/
|
|
11
|
+
export default function DateFieldControls({ field, onPatch }: Props): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TemplateFormField } from '../../../documents/editor/templateVariables';
|
|
2
|
+
type Props = {
|
|
3
|
+
field: TemplateFormField;
|
|
4
|
+
onPatch: (patch: Partial<TemplateFormField>) => void;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Controls for a `datetime` scalar variable: one ISO value, exposed as two
|
|
8
|
+
* tokens — `{{id.date}}` (formatted with `dateFormat`) and `{{id.time}}`
|
|
9
|
+
* (formatted with `timeFormat`). Both share the `dateTz` timezone. The date part
|
|
10
|
+
* may be `relative` (recomputed in the reader's browser); the time part is
|
|
11
|
+
* always a fixed string.
|
|
12
|
+
*/
|
|
13
|
+
export default function DateTimeFieldControls({ field, onPatch }: Props): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TemplateFormField } from '../../../documents/editor/templateVariables';
|
|
2
|
+
type Props = {
|
|
3
|
+
field: TemplateFormField;
|
|
4
|
+
onPatch: (patch: Partial<TemplateFormField>) => void;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Format + timezone controls for a `time` scalar variable, shown under the
|
|
8
|
+
* datetime input. `time` always bakes to a fixed string (24h or AM/PM) rendered
|
|
9
|
+
* in the chosen timezone — there's no view-time / relative mode.
|
|
10
|
+
*/
|
|
11
|
+
export default function TimeFieldControls({ field, onPatch }: Props): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export declare const TruncatedEditorTitle: 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" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "
|
|
2
|
-
export declare const SettingLabelTypography: 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" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "
|
|
1
|
+
export declare const TruncatedEditorTitle: 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" | "p" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "width" | "px" | "height" | "borderRadius" | "borderColor" | "boxShadow" | "overflow" | "marginBottom" | "variant" | "gap" | "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<import('@mui/material').Theme>, {}, {}>;
|
|
2
|
+
export declare const SettingLabelTypography: 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" | "p" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "width" | "px" | "height" | "borderRadius" | "borderColor" | "boxShadow" | "overflow" | "marginBottom" | "variant" | "gap" | "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<import('@mui/material').Theme>, {}, {}>;
|
|
3
3
|
export declare const widthUnitSelectSx: {
|
|
4
4
|
'& .MuiOutlinedInput-notchedOutline': {
|
|
5
5
|
border: string;
|
|
@@ -9,6 +9,7 @@ declare const FormsPropsSchema: z.ZodObject<{
|
|
|
9
9
|
height: z.ZodDefault<z.ZodString>;
|
|
10
10
|
heightTablet: z.ZodOptional<z.ZodString>;
|
|
11
11
|
heightMobile: z.ZodOptional<z.ZodString>;
|
|
12
|
+
autoHeight: z.ZodDefault<z.ZodBoolean>;
|
|
12
13
|
alignment: z.ZodDefault<z.ZodEnum<{
|
|
13
14
|
right: "right";
|
|
14
15
|
left: "left";
|
|
@@ -28,6 +29,7 @@ export type FormsPickerProps = {
|
|
|
28
29
|
height: string;
|
|
29
30
|
heightTablet?: string;
|
|
30
31
|
heightMobile?: string;
|
|
32
|
+
autoHeight?: boolean;
|
|
31
33
|
alignment?: 'left' | 'center' | 'right';
|
|
32
34
|
};
|
|
33
35
|
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export declare const StyledDialog: import('@emotion/styled').StyledComponent<import('@mui/material').DialogProps & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
2
|
-
export declare const StyledDialogTitle: import('@emotion/styled').StyledComponent<import('@mui/material').DialogTitleOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "top" | "bottom" | "right" | "left" | "padding" | "margin" | "style" | "lineHeight" | "children" | "className" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "
|
|
2
|
+
export declare const StyledDialogTitle: import('@emotion/styled').StyledComponent<import('@mui/material').DialogTitleOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "top" | "bottom" | "right" | "left" | "padding" | "margin" | "style" | "lineHeight" | "children" | "className" | "p" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "width" | "px" | "height" | "borderRadius" | "borderColor" | "boxShadow" | "overflow" | "marginBottom" | "variant" | "gap" | "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<import('@mui/material').Theme>, {}, {}>;
|
|
3
3
|
export declare const CloseButton: import('@emotion/styled').StyledComponent<import('@mui/material').SvgIconOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').SVGProps<SVGSVGElement>, "style" | "children" | "className" | "color" | "fontSize" | "classes" | "htmlColor" | "inheritViewBox" | "shapeRendering" | "sx" | "titleAccess" | "viewBox"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
4
4
|
export declare const TabsBar: 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>, {}, {}>;
|
|
5
5
|
export declare const StyledTabs: import('@emotion/styled').StyledComponent<import('@mui/material').TabsOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "value" | "style" | "children" | "className" | "textColor" | "action" | "orientation" | "variant" | "slots" | "classes" | "sx" | "aria-label" | "aria-labelledby" | "onChange" | "slotProps" | "allowScrollButtonsMobile" | "centered" | "indicatorColor" | "ScrollButtonComponent" | "scrollButtons" | "selectionFollowsFocus" | "TabIndicatorProps" | "TabScrollButtonProps" | "visibleScrollbar"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
6
6
|
export declare const StyledDialogContent: import('@emotion/styled').StyledComponent<import('@mui/material').DialogContentProps & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
7
|
-
export declare const HelperText: 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" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "
|
|
8
|
-
export declare const FileSummaryText: 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" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "
|
|
7
|
+
export declare const HelperText: 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" | "p" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "width" | "px" | "height" | "borderRadius" | "borderColor" | "boxShadow" | "overflow" | "marginBottom" | "variant" | "gap" | "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<import('@mui/material').Theme>, {}, {}>;
|
|
8
|
+
export declare const FileSummaryText: 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" | "p" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "width" | "px" | "height" | "borderRadius" | "borderColor" | "boxShadow" | "overflow" | "marginBottom" | "variant" | "gap" | "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<import('@mui/material').Theme>, {}, {}>;
|
|
9
9
|
export declare const ErrorAlert: import('@emotion/styled').StyledComponent<import('@mui/material').AlertProps & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
10
10
|
export declare const PasteTextFieldSx: {
|
|
11
11
|
readonly '& textarea': {
|
|
@@ -15,5 +15,5 @@ export declare const PasteTextFieldSx: {
|
|
|
15
15
|
};
|
|
16
16
|
export declare const UploadDropzone: 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>, {}, {}>;
|
|
17
17
|
export declare const UploadIcon: import('@emotion/styled').StyledComponent<import('@mui/material').SvgIconOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').SVGProps<SVGSVGElement>, "style" | "children" | "className" | "color" | "fontSize" | "classes" | "htmlColor" | "inheritViewBox" | "shapeRendering" | "sx" | "titleAccess" | "viewBox"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
18
|
-
export declare const ChooseFileLabel: 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" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "
|
|
18
|
+
export declare const ChooseFileLabel: 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" | "p" | "color" | "fontFamily" | "fontSize" | "fontWeight" | "fontStyle" | "textAlign" | "flex" | "display" | "position" | "border" | "paddingBottom" | "align" | "bgcolor" | "borderTop" | "width" | "px" | "height" | "borderRadius" | "borderColor" | "boxShadow" | "overflow" | "marginBottom" | "variant" | "gap" | "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<import('@mui/material').Theme>, {}, {}>;
|
|
19
19
|
export declare const StyledDialogActions: import('@emotion/styled').StyledComponent<import('@mui/material').DialogActionsProps & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
|
|
@@ -31,8 +31,14 @@ declare const TabsBlockPropsSchema: z.ZodObject<{
|
|
|
31
31
|
left: z.ZodNumber;
|
|
32
32
|
}, z.core.$strip>>>;
|
|
33
33
|
tabActiveColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
34
|
+
tabActiveBgColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
35
|
+
tabInactiveTextColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
36
|
+
tabInactiveBgColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
37
|
+
tabInactiveBorderColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
38
|
+
tabInactiveBorderWidth: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
34
39
|
tabTextColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
35
40
|
tabBgColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
41
|
+
tabBorderRadius: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
36
42
|
tabGap: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
37
43
|
contentGap: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
38
44
|
navBorderColor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -61,6 +67,14 @@ declare const TabsBlockPropsSchema: z.ZodObject<{
|
|
|
61
67
|
showSelectedSection: "showSelectedSection";
|
|
62
68
|
scrollToSelectedSection: "scrollToSelectedSection";
|
|
63
69
|
}>>>;
|
|
70
|
+
tabsAlign: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
71
|
+
right: "right";
|
|
72
|
+
left: "left";
|
|
73
|
+
center: "center";
|
|
74
|
+
}>>>;
|
|
75
|
+
dropdown: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
|
|
76
|
+
dropdownTablet: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
|
|
77
|
+
dropdownMobile: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
|
|
64
78
|
activeTabIndex: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
65
79
|
stickyNav: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
|
|
66
80
|
items: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
@@ -4,6 +4,8 @@ export declare const menuRootSx: (theme: Theme) => SxProps<Theme>;
|
|
|
4
4
|
export declare const searchHeaderSx: (theme: Theme) => SxProps<Theme>;
|
|
5
5
|
export declare const scrollAreaSx: (theme: Theme) => SxProps<Theme>;
|
|
6
6
|
export declare const gridSx: SxProps<Theme>;
|
|
7
|
+
export declare const categoryTabsSx: (theme: Theme) => SxProps<Theme>;
|
|
8
|
+
export declare const categoryTabSx: (theme: Theme, active: boolean) => SxProps<Theme>;
|
|
7
9
|
export declare const emptyStateSx: SxProps<Theme>;
|
|
8
10
|
export declare const emptyIconBadgeSx: (theme: Theme) => SxProps<Theme>;
|
|
9
11
|
export declare const blockButtonSx: (theme: Theme, highlighted: boolean) => SxProps<Theme>;
|
package/dist/editor-sample/documents/blocks/helpers/EditorChildrenIds/AddBlockMenu/buttons.d.ts
CHANGED
|
@@ -4,10 +4,9 @@ type TButtonProps = {
|
|
|
4
4
|
label: string;
|
|
5
5
|
/**
|
|
6
6
|
* Palette section this tile belongs to. Used by BlocksPanel to group
|
|
7
|
-
* tiles under section headers ("
|
|
8
|
-
* "
|
|
9
|
-
*
|
|
10
|
-
* `BlockCategories.ts`.
|
|
7
|
+
* tiles under section headers ("Layout", "Content", "Media",
|
|
8
|
+
* "Interaction", "Integration") and by BlocksMenu's category tabs. Order
|
|
9
|
+
* and header labels come from `BlockCategories.ts`.
|
|
11
10
|
*/
|
|
12
11
|
category: string;
|
|
13
12
|
icon: React.JSX.Element;
|
package/dist/editor-sample/documents/blocks/helpers/InlineTextToolbar/hooks/useToolbarCommands.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { LinkInsertParams } from '../types';
|
|
2
|
+
export type FontSizeDevice = 'desktop' | 'tablet' | 'mobile';
|
|
2
3
|
/** Snapshot of an existing anchor under the saved/live selection — populated
|
|
3
4
|
* by `getSavedSelectionLink` and used by the Link dialog to prefill its
|
|
4
5
|
* fields when the user opens the dialog while standing on a link. */
|
|
@@ -23,7 +24,22 @@ export type ToolbarCommandsApi = {
|
|
|
23
24
|
* onChange tick.
|
|
24
25
|
*/
|
|
25
26
|
applyColor: (cmd: string, value: string) => void;
|
|
26
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Set the font size for the current selection at the given device slot.
|
|
29
|
+
* Writes `data-fs-<device>="<px>"` on a wrapping <span> so responsive CSS
|
|
30
|
+
* rules (see the Text block renderer + responsiveFontSizeCss.ts) can pick
|
|
31
|
+
* the correct size per preview device / breakpoint. Preserves any
|
|
32
|
+
* pre-existing device markers on the same range so setting Mobile doesn't
|
|
33
|
+
* clobber Desktop.
|
|
34
|
+
*/
|
|
35
|
+
applyFontSize: (px: number, device: FontSizeDevice) => void;
|
|
36
|
+
/**
|
|
37
|
+
* Remove the size override for one device on the current selection. If the
|
|
38
|
+
* span was carrying no other device markers, the wrapper is unwrapped so
|
|
39
|
+
* the block-level font size shows through. Leaves other devices' markers
|
|
40
|
+
* intact.
|
|
41
|
+
*/
|
|
42
|
+
clearFontSize: (device: FontSizeDevice) => void;
|
|
27
43
|
/** Set CSS line-height on every block-level ancestor the current selection
|
|
28
44
|
* touches. Pass an empty string to clear back to the inherited default. */
|
|
29
45
|
applyLineHeight: (value: string) => void;
|