pagepilot-visual-editor 1.0.6 → 1.0.7

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.
@@ -57,6 +57,8 @@ export declare const ImagePropsSchema: z.ZodObject<{
57
57
  rotation: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
58
58
  rotationTablet: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
59
59
  rotationMobile: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
60
+ iconName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
61
+ iconFillColor: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodString, z.ZodLiteral<"transparent">]>>>>;
60
62
  }, z.core.$strip>>>;
61
63
  }, z.core.$strip>;
62
64
  export type ImageProps = z.infer<typeof ImagePropsSchema>;
@@ -83,6 +83,13 @@ export interface TopbarToggles {
83
83
  */
84
84
  unselect?: boolean;
85
85
  save?: boolean;
86
+ /**
87
+ * Desktop / Tablet / Mobile icon toggle that constrains the canvas
88
+ * preview width and keeps the sidebar's per-device tabs in sync. Same
89
+ * three-way icon strip you see in most modern page editors. Defaults
90
+ * to `true`.
91
+ */
92
+ screenSize?: boolean;
86
93
  /** Sun/moon button that flips between the built-in light + dark themes
87
94
  * at runtime. Defaults to `true`. Hidden automatically when the host
88
95
  * passes a custom `theme` prop, since flipping `mode` won't affect it. */
@@ -0,0 +1,8 @@
1
+ type Props = {
2
+ /** Whether the active (non-desktop) device carries any overrides. */
3
+ hasOverride?: boolean;
4
+ /** Clears every override on the active device. */
5
+ onResetDevice?: () => void;
6
+ };
7
+ export default function ResponsiveDeviceTabs({ hasOverride, onResetDevice }: Props): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,13 @@
1
+ import { TResponsiveDevice } from '../../../documents/blocks/helpers/responsiveStyle';
2
+ type Props = {
3
+ device: TResponsiveDevice;
4
+ };
5
+ /**
6
+ * The "Editing Tablet / Mobile" context banner shown above a block's panel when
7
+ * a non-desktop device tab is active. Makes it unmistakable that the controls
8
+ * below now edit THIS breakpoint only and inherit Desktop otherwise. Shows the
9
+ * actual `@media (max-width: …)` breakpoint (see DEVICE_VIEWPORT_WIDTH) so the
10
+ * user knows exactly which screen widths this applies to.
11
+ */
12
+ export default function ResponsiveEditingBanner({ device }: Props): import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,6 @@
1
+ import { TResponsiveBlockData } from './responsiveStyle';
2
+ /**
3
+ * The <style>-tag body scoped to one block instance's wrapper id, or ''
4
+ * when the block has no responsive style overrides to emit.
5
+ */
6
+ export declare function buildResponsiveInstanceCss(wrapperId: string, data: TResponsiveBlockData | null | undefined): string;
@@ -1249,6 +1249,8 @@ export declare const EditorBlock: ({ type, data }: import('@usewaypoint/document
1249
1249
  rotation: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1250
1250
  rotationTablet: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1251
1251
  rotationMobile: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1252
+ iconName: z.ZodNullable<z.ZodOptional<z.ZodString>>;
1253
+ iconFillColor: z.ZodDefault<z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodString, z.ZodString, z.ZodLiteral<"transparent">]>>>>;
1252
1254
  }, z.core.$strip>>>;
1253
1255
  }, z.core.$strip>;
1254
1256
  Logo: z.ZodObject<{
@@ -0,0 +1,10 @@
1
+ type MediaType = 'image' | 'video' | 'audio' | 'document';
2
+ export interface ChooseImageDialogProps {
3
+ isOpen: boolean;
4
+ onClose: () => void;
5
+ onFilesSelected: (files: any[]) => void;
6
+ onIconSelected: (dataUri: string, iconName: string) => void;
7
+ mediaType?: MediaType;
8
+ }
9
+ export default function ChooseImageDialog({ isOpen, onClose, onFilesSelected, onIconSelected, mediaType, }: ChooseImageDialogProps): import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,8 @@
1
+ interface IconGridProps {
2
+ names: string[];
3
+ onSelect: (name: string) => void;
4
+ selected?: string | null;
5
+ pendingName?: string | null;
6
+ }
7
+ export default function IconGrid({ names, onSelect, selected, pendingName }: IconGridProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,8 @@
1
+ interface IconGridCellProps {
2
+ name: string;
3
+ selected?: boolean;
4
+ loading?: boolean;
5
+ onClick: (name: string) => void;
6
+ }
7
+ export default function IconGridCell({ name, selected, loading, onClick }: IconGridCellProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,6 @@
1
+ export interface IconLibraryModalProps {
2
+ isOpen: boolean;
3
+ onClose: () => void;
4
+ onIconSelected: (dataUri: string, iconName: string) => void;
5
+ }
6
+ export default function IconLibraryModal({ isOpen, onClose, onIconSelected }: IconLibraryModalProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ import { default as React } from 'react';
2
+ declare function loadIconComponent(name: string): Promise<React.ComponentType<any>>;
3
+ export declare function resolveIconToDataUri(name: string, fillColor?: string | null): Promise<string>;
4
+ export { loadIconComponent };
@@ -0,0 +1,6 @@
1
+ interface IconSearchProps {
2
+ value: string;
3
+ onChange: (value: string) => void;
4
+ }
5
+ export default function IconSearch({ value, onChange }: IconSearchProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,6 @@
1
+ import { default as React } from 'react';
2
+ type TIconLoader = () => Promise<{
3
+ default: React.ComponentType<any>;
4
+ }>;
5
+ export declare const ICON_LOADERS: Record<string, TIconLoader>;
6
+ export {};
@@ -0,0 +1 @@
1
+ export declare const ICON_NAMES: string[];
@@ -0,0 +1,6 @@
1
+ export { default as ChooseImageDialog } from './ChooseImageDialog';
2
+ export { default as IconLibraryModal } from './IconLibraryModal';
3
+ export { default as IconGrid } from './IconGrid';
4
+ export { default as IconSearch } from './IconSearch';
5
+ export { resolveIconToDataUri } from './IconProvider';
6
+ export { ICON_NAMES } from './iconNames';