@orion-studios/payload-studio 0.5.0-beta.11 → 0.5.0-beta.110

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 (77) hide show
  1. package/README.md +54 -0
  2. package/dist/admin/client.d.mts +3 -0
  3. package/dist/admin/client.d.ts +3 -0
  4. package/dist/admin/client.js +1745 -200
  5. package/dist/admin/client.mjs +1756 -214
  6. package/dist/admin/index.d.mts +2 -1
  7. package/dist/admin/index.d.ts +2 -1
  8. package/dist/admin/index.js +424 -11
  9. package/dist/admin/index.mjs +19 -1
  10. package/dist/admin-app/client.d.mts +7 -0
  11. package/dist/admin-app/client.d.ts +7 -0
  12. package/dist/admin-app/client.js +1262 -3
  13. package/dist/admin-app/client.mjs +1164 -2
  14. package/dist/admin-app/index.d.mts +1 -1
  15. package/dist/admin-app/index.d.ts +1 -1
  16. package/dist/admin-app/index.js +167 -0
  17. package/dist/admin-app/index.mjs +13 -1
  18. package/dist/admin-app/styles.css +247 -0
  19. package/dist/admin.css +8 -0
  20. package/dist/blocks/index.js +1011 -191
  21. package/dist/blocks/index.mjs +2 -2
  22. package/dist/chunk-ADIIWIYL.mjs +322 -0
  23. package/dist/{chunk-ZLLNO5FM.mjs → chunk-BET2YLAS.mjs} +104 -15
  24. package/dist/chunk-DAIZDGHL.mjs +614 -0
  25. package/dist/chunk-GKMBYYXF.mjs +776 -0
  26. package/dist/chunk-JQAHXYAM.mjs +1829 -0
  27. package/dist/chunk-OQSEJXC4.mjs +166 -0
  28. package/dist/chunk-PF3EBZXF.mjs +326 -0
  29. package/dist/chunk-ROTPP5CU.mjs +99 -0
  30. package/dist/chunk-XVH5SCBD.mjs +234 -0
  31. package/dist/chunk-ZTXJG4K5.mjs +85 -0
  32. package/dist/index-B7QvY3yF.d.mts +245 -0
  33. package/dist/index-BK03FiEM.d.ts +245 -0
  34. package/dist/{index-CmR6NInu.d.ts → index-BzKOThsI.d.mts} +30 -3
  35. package/dist/{index-CmR6NInu.d.mts → index-BzKOThsI.d.ts} +30 -3
  36. package/dist/{index-DbH0Ljwp.d.mts → index-D8BNfUJb.d.mts} +17 -2
  37. package/dist/{index-DbH0Ljwp.d.ts → index-DD_E2UfJ.d.ts} +17 -2
  38. package/dist/index-DUi_XND6.d.ts +193 -0
  39. package/dist/index-ZbOx4OCF.d.mts +128 -0
  40. package/dist/index-ZbOx4OCF.d.ts +128 -0
  41. package/dist/index-gLl_358v.d.mts +193 -0
  42. package/dist/index.d.mts +6 -5
  43. package/dist/index.d.ts +6 -5
  44. package/dist/index.js +2876 -460
  45. package/dist/index.mjs +12 -10
  46. package/dist/nextjs/index.d.mts +2 -1
  47. package/dist/nextjs/index.d.ts +2 -1
  48. package/dist/nextjs/index.js +497 -16
  49. package/dist/nextjs/index.mjs +8 -3
  50. package/dist/socialMedia-C05Iy-SV.d.mts +21 -0
  51. package/dist/socialMedia-C05Iy-SV.d.ts +21 -0
  52. package/dist/studio/index.d.mts +2 -1
  53. package/dist/studio/index.d.ts +2 -1
  54. package/dist/studio/index.js +171 -5
  55. package/dist/studio/index.mjs +7 -3
  56. package/dist/studio-pages/builder.css +517 -32
  57. package/dist/studio-pages/client.d.mts +75 -1
  58. package/dist/studio-pages/client.d.ts +75 -1
  59. package/dist/studio-pages/client.js +5662 -2759
  60. package/dist/studio-pages/client.mjs +5578 -2767
  61. package/dist/studio-pages/index.d.mts +4 -2
  62. package/dist/studio-pages/index.d.ts +4 -2
  63. package/dist/studio-pages/index.js +859 -71
  64. package/dist/studio-pages/index.mjs +10 -4
  65. package/package.json +35 -13
  66. package/dist/chunk-AAOHJDNS.mjs +0 -67
  67. package/dist/chunk-ETRRXURT.mjs +0 -141
  68. package/dist/chunk-J7W5EE3B.mjs +0 -278
  69. package/dist/chunk-N67KVM2S.mjs +0 -156
  70. package/dist/chunk-NESLJZFE.mjs +0 -303
  71. package/dist/chunk-U5BSPWAD.mjs +0 -1034
  72. package/dist/index-B9N5MyjF.d.mts +0 -39
  73. package/dist/index-BallJs-K.d.mts +0 -43
  74. package/dist/index-BallJs-K.d.ts +0 -43
  75. package/dist/index-DJFhANvJ.d.mts +0 -128
  76. package/dist/index-DJFhANvJ.d.ts +0 -128
  77. package/dist/index-g8tBHLKD.d.ts +0 -39
@@ -0,0 +1,193 @@
1
+ import { S as StudioDocumentV1, a as StudioNodeTypeDefinition, b as StudioModuleManifest } from './index-BzKOThsI.js';
2
+ import { ComponentType, CSSProperties, ReactNode } from 'react';
3
+
4
+ type InspectorGroupKey = 'advanced' | 'basics' | 'media' | 'typography';
5
+ type InspectorFieldType = 'checkbox' | 'color' | 'number' | 'search' | 'select' | 'text' | 'textarea';
6
+
7
+ type BuilderSettingsPanelMode = 'advanced' | 'basic';
8
+ type BuilderTextAlign = 'center' | 'justify' | 'left' | 'right';
9
+ type BuilderTypographySpacingPreset = 'normal' | 'relaxed' | 'tight';
10
+ type BuilderLayoutSettingsV2 = {
11
+ contentWidth?: 'content' | 'full' | 'inherit' | 'narrow' | 'wide';
12
+ linkHorizontalPadding?: boolean;
13
+ linkVerticalPadding?: boolean;
14
+ paddingBottomPt?: number | null;
15
+ paddingLeftPt?: number | null;
16
+ paddingRightPt?: number | null;
17
+ paddingTopPt?: number | null;
18
+ sectionPaddingX?: 'inherit' | 'lg' | 'md' | 'none' | 'sm';
19
+ sectionPaddingY?: 'lg' | 'md' | 'none' | 'sm';
20
+ };
21
+ type BuilderTypographySettingsV2 = {
22
+ bodyAlign?: BuilderTextAlign;
23
+ headingAlign?: BuilderTextAlign;
24
+ letterSpacingPreset?: BuilderTypographySpacingPreset;
25
+ lineHeightPreset?: BuilderTypographySpacingPreset;
26
+ maxTextWidth?: 'auto' | 'full' | 'lg' | 'md' | 'sm';
27
+ };
28
+ type BuilderMediaSettingsV2 = {
29
+ cornerStyle?: 'rounded' | 'square';
30
+ fit?: 'contain' | 'cover';
31
+ height?: number | null;
32
+ position?: 'bottom' | 'center' | 'left' | 'right' | 'top';
33
+ positionX?: number | null;
34
+ positionY?: number | null;
35
+ };
36
+ type BuilderAppearanceSettingsV2 = {
37
+ contentBackgroundColor?: string;
38
+ contentBackgroundMode?: 'color' | 'gradient' | 'none';
39
+ contentGradientAngle?: string;
40
+ contentGradientFrom?: string;
41
+ contentGradientPreset?: string;
42
+ contentGradientTo?: string;
43
+ sectionBackgroundColor?: string;
44
+ sectionBackgroundMode?: 'color' | 'gradient' | 'none';
45
+ sectionGradientAngle?: string;
46
+ sectionGradientFrom?: string;
47
+ sectionGradientPreset?: string;
48
+ sectionGradientTo?: string;
49
+ };
50
+ type BuilderAdvancedSettingsV2 = {
51
+ customClassName?: string;
52
+ editCopyInPanel?: boolean;
53
+ hideOnMobile?: boolean;
54
+ };
55
+ type BuilderBlockSettingsV2 = {
56
+ advanced: BuilderAdvancedSettingsV2;
57
+ appearance: BuilderAppearanceSettingsV2;
58
+ layout: BuilderLayoutSettingsV2;
59
+ media: BuilderMediaSettingsV2;
60
+ typography: BuilderTypographySettingsV2;
61
+ version: 2;
62
+ };
63
+ type BuilderThemeScale = 'lg' | 'md' | 'sm' | 'xl';
64
+ type BuilderThemeTokens = {
65
+ colors: {
66
+ accent: string;
67
+ bodyText: string;
68
+ headingText: string;
69
+ surface: string;
70
+ };
71
+ radii: {
72
+ card: number;
73
+ panel: number;
74
+ };
75
+ spacing: {
76
+ sectionGap: BuilderThemeScale;
77
+ sectionPadding: BuilderThemeScale;
78
+ };
79
+ typography: {
80
+ bodySize: BuilderThemeScale;
81
+ headingSize: BuilderThemeScale;
82
+ };
83
+ };
84
+ type BuilderThemeTokenOverrides = {
85
+ [K in keyof BuilderThemeTokens]?: BuilderThemeTokens[K] extends Record<string, unknown> ? Partial<BuilderThemeTokens[K]> : BuilderThemeTokens[K];
86
+ };
87
+ type BuilderThemeTokenLayers = {
88
+ block?: BuilderThemeTokenOverrides;
89
+ page?: BuilderThemeTokenOverrides;
90
+ site?: BuilderThemeTokenOverrides;
91
+ };
92
+ declare const defaultBuilderThemeTokens: BuilderThemeTokens;
93
+
94
+ declare const resolveBuilderThemeTokens: (layers: BuilderThemeTokenLayers) => BuilderThemeTokens;
95
+
96
+ declare const layoutToStudioDocument: (layout: Array<Record<string, unknown>>, title?: string, metadata?: Record<string, unknown>) => StudioDocumentV1;
97
+ declare const studioDocumentToLayout: (document: StudioDocumentV1) => Array<Record<string, unknown>>;
98
+ declare const createDefaultStudioDocument: (title?: string) => StudioDocumentV1;
99
+
100
+ type BuilderBlock$1 = {
101
+ blockType: string;
102
+ [key: string]: unknown;
103
+ };
104
+ type SectionPreset = {
105
+ id: string;
106
+ title: string;
107
+ description: string;
108
+ blocks: BuilderBlock$1[];
109
+ };
110
+
111
+ type BuilderBlock = {
112
+ blockType?: string;
113
+ [key: string]: unknown;
114
+ };
115
+ type BuilderRenderWithSectionShell = (block: BuilderBlock, className: string, content: ReactNode, options?: {
116
+ inheritProjectStyles?: boolean;
117
+ }) => ReactNode;
118
+ type BuilderInlineTextComponentProps = {
119
+ as?: 'h1' | 'h2' | 'h3' | 'p' | 'span';
120
+ className?: string;
121
+ multiline?: boolean;
122
+ onCommit: (value: string) => void;
123
+ placeholder?: string;
124
+ style?: CSSProperties;
125
+ value?: string;
126
+ };
127
+ type BuilderPreviewTextFieldOptions = Omit<BuilderInlineTextComponentProps, 'onCommit' | 'value'>;
128
+ type BuilderPreviewEditingHelpers = {
129
+ InlineText: ComponentType<BuilderInlineTextComponentProps>;
130
+ readText: (value: unknown, fallback?: string) => string;
131
+ updateArrayItemText: (arrayField: string, itemIndex: number, fieldName: string, value: string) => void;
132
+ updateBlockText: (fieldName: string, value: string) => void;
133
+ };
134
+ type BuilderBlockPreviewRenderArgs = {
135
+ block: BuilderBlock;
136
+ editing: BuilderPreviewEditingHelpers;
137
+ index: number;
138
+ renderWithSectionShell: BuilderRenderWithSectionShell;
139
+ resolvedThemeTokens: BuilderThemeTokens;
140
+ };
141
+
142
+ type BuilderBlockPreviewRenderer = (args: BuilderBlockPreviewRenderArgs) => ReactNode | null;
143
+
144
+ declare const pageNodeTypes: StudioNodeTypeDefinition[];
145
+ declare const pagePaletteGroups: {
146
+ id: string;
147
+ label: string;
148
+ items: {
149
+ nodeType: string;
150
+ title: string;
151
+ description: string;
152
+ }[];
153
+ }[];
154
+ declare const pageInspectorPanels: {
155
+ fields: {
156
+ advanced: boolean | undefined;
157
+ group: InspectorGroupKey;
158
+ inlineEditable: boolean | undefined;
159
+ key: string;
160
+ label: string;
161
+ type: InspectorFieldType;
162
+ }[];
163
+ id: string;
164
+ label: string;
165
+ nodeType: string;
166
+ }[];
167
+ declare const pageStudioModuleManifest: StudioModuleManifest;
168
+
169
+ type index_BuilderBlockPreviewRenderArgs = BuilderBlockPreviewRenderArgs;
170
+ type index_BuilderBlockPreviewRenderer = BuilderBlockPreviewRenderer;
171
+ type index_BuilderBlockSettingsV2 = BuilderBlockSettingsV2;
172
+ type index_BuilderInlineTextComponentProps = BuilderInlineTextComponentProps;
173
+ type index_BuilderPreviewEditingHelpers = BuilderPreviewEditingHelpers;
174
+ type index_BuilderPreviewTextFieldOptions = BuilderPreviewTextFieldOptions;
175
+ type index_BuilderRenderWithSectionShell = BuilderRenderWithSectionShell;
176
+ type index_BuilderSettingsPanelMode = BuilderSettingsPanelMode;
177
+ type index_BuilderThemeTokenOverrides = BuilderThemeTokenOverrides;
178
+ type index_BuilderThemeTokens = BuilderThemeTokens;
179
+ type index_SectionPreset = SectionPreset;
180
+ declare const index_createDefaultStudioDocument: typeof createDefaultStudioDocument;
181
+ declare const index_defaultBuilderThemeTokens: typeof defaultBuilderThemeTokens;
182
+ declare const index_layoutToStudioDocument: typeof layoutToStudioDocument;
183
+ declare const index_pageInspectorPanels: typeof pageInspectorPanels;
184
+ declare const index_pageNodeTypes: typeof pageNodeTypes;
185
+ declare const index_pagePaletteGroups: typeof pagePaletteGroups;
186
+ declare const index_pageStudioModuleManifest: typeof pageStudioModuleManifest;
187
+ declare const index_resolveBuilderThemeTokens: typeof resolveBuilderThemeTokens;
188
+ declare const index_studioDocumentToLayout: typeof studioDocumentToLayout;
189
+ declare namespace index {
190
+ export { type BuilderBlock$1 as BuilderBlock, type index_BuilderBlockPreviewRenderArgs as BuilderBlockPreviewRenderArgs, type index_BuilderBlockPreviewRenderer as BuilderBlockPreviewRenderer, type index_BuilderBlockSettingsV2 as BuilderBlockSettingsV2, type index_BuilderInlineTextComponentProps as BuilderInlineTextComponentProps, type index_BuilderPreviewEditingHelpers as BuilderPreviewEditingHelpers, type index_BuilderPreviewTextFieldOptions as BuilderPreviewTextFieldOptions, type index_BuilderRenderWithSectionShell as BuilderRenderWithSectionShell, type index_BuilderSettingsPanelMode as BuilderSettingsPanelMode, type index_BuilderThemeTokenOverrides as BuilderThemeTokenOverrides, type index_BuilderThemeTokens as BuilderThemeTokens, type index_SectionPreset as SectionPreset, index_createDefaultStudioDocument as createDefaultStudioDocument, index_defaultBuilderThemeTokens as defaultBuilderThemeTokens, index_layoutToStudioDocument as layoutToStudioDocument, index_pageInspectorPanels as pageInspectorPanels, index_pageNodeTypes as pageNodeTypes, index_pagePaletteGroups as pagePaletteGroups, index_pageStudioModuleManifest as pageStudioModuleManifest, index_resolveBuilderThemeTokens as resolveBuilderThemeTokens, index_studioDocumentToLayout as studioDocumentToLayout };
191
+ }
192
+
193
+ export { type BuilderBlock$1 as B, type SectionPreset as S, type BuilderBlockPreviewRenderArgs as a, type BuilderBlockPreviewRenderer as b, type BuilderBlockSettingsV2 as c, type BuilderInlineTextComponentProps as d, type BuilderPreviewEditingHelpers as e, type BuilderPreviewTextFieldOptions as f, type BuilderRenderWithSectionShell as g, type BuilderSettingsPanelMode as h, index as i, type BuilderThemeTokenOverrides as j, type BuilderThemeTokens as k, createDefaultStudioDocument as l, defaultBuilderThemeTokens as m, layoutToStudioDocument as n, pageNodeTypes as o, pageInspectorPanels as p, pagePaletteGroups as q, pageStudioModuleManifest as r, resolveBuilderThemeTokens as s, studioDocumentToLayout as t };
@@ -0,0 +1,128 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ReactNode } from 'react';
3
+
4
+ type AdminRole = 'admin' | 'editor' | 'client';
5
+ type AdminNavIcon = 'dashboard' | 'pages' | 'globals' | 'media' | 'tools' | 'account';
6
+ type AdminNavItem = {
7
+ href: string;
8
+ icon?: AdminNavIcon;
9
+ label: string;
10
+ matchPrefixes: string[];
11
+ roles?: AdminRole[];
12
+ };
13
+ type AdminBreadcrumbItem = {
14
+ label: string;
15
+ href?: string;
16
+ };
17
+ declare const roleCanAccessNav: (role: string | undefined, item: AdminNavItem) => boolean;
18
+ declare const navItemIsActive: (pathname: string, item: AdminNavItem) => boolean;
19
+
20
+ type AdminBreadcrumbsProps = {
21
+ items: AdminBreadcrumbItem[];
22
+ };
23
+ declare function AdminBreadcrumbs({ items }: AdminBreadcrumbsProps): react_jsx_runtime.JSX.Element;
24
+
25
+ type AdminPageProps = {
26
+ title: string;
27
+ description?: string;
28
+ breadcrumbs: AdminBreadcrumbItem[];
29
+ actions?: ReactNode;
30
+ children: ReactNode;
31
+ };
32
+ declare function AdminPage({ title, description, breadcrumbs, actions, children }: AdminPageProps): react_jsx_runtime.JSX.Element;
33
+
34
+ type MediaDetailPanelProps = {
35
+ id: string;
36
+ filename?: string;
37
+ alt?: string;
38
+ url?: string;
39
+ filesize?: number;
40
+ width?: number;
41
+ height?: number;
42
+ mimeType?: string;
43
+ createdAt?: string;
44
+ updateAction: (formData: FormData) => void;
45
+ deleteAction: (formData: FormData) => void;
46
+ };
47
+
48
+ type MediaListItemProps = {
49
+ id: string;
50
+ filename?: string;
51
+ alt?: string;
52
+ url?: string;
53
+ filesize?: number;
54
+ width?: number;
55
+ height?: number;
56
+ mimeType?: string;
57
+ href: string;
58
+ };
59
+
60
+ type NestedNavItemInput = {
61
+ href?: string;
62
+ label?: string;
63
+ parentHref?: string;
64
+ };
65
+ type NestedNavItem = {
66
+ href: string;
67
+ label: string;
68
+ parentHref?: string;
69
+ };
70
+ type NestedNavTree = {
71
+ topLevel: NestedNavItem[];
72
+ childrenByParent: Map<string, NestedNavItem[]>;
73
+ };
74
+ declare const normalizeNestedNavItems: <T extends NestedNavItemInput>(items: T[]) => NestedNavItem[];
75
+ declare const buildNestedNavTree: (items: NestedNavItem[]) => NestedNavTree;
76
+
77
+ type AdminNavLinkItem = {
78
+ href: string;
79
+ label: string;
80
+ parentHref?: string;
81
+ };
82
+ type AdminPageRecord = {
83
+ path?: string;
84
+ title?: string;
85
+ };
86
+ type AdminPageLinkOption = {
87
+ href: string;
88
+ label: string;
89
+ title: string;
90
+ };
91
+ declare const buildAdminPageLinkOptions: (pages: AdminPageRecord[]) => AdminPageLinkOption[];
92
+ declare const getAdminNavRows: (navItems: AdminNavLinkItem[], pageOptions: AdminPageLinkOption[], minRows?: number, maxRows?: number) => number;
93
+ type AdminNavInput = {
94
+ href?: string;
95
+ label?: string;
96
+ parentHref?: string;
97
+ };
98
+ declare const normalizeAdminNavInputs: (rows: AdminNavInput[], pageOptions: AdminPageLinkOption[]) => AdminNavLinkItem[];
99
+ declare const parseAdminHeaderNavFromForm: (formData: FormData, pageOptions: AdminPageLinkOption[], maxRows?: number) => AdminNavLinkItem[];
100
+
101
+ type index_AdminBreadcrumbItem = AdminBreadcrumbItem;
102
+ declare const index_AdminBreadcrumbs: typeof AdminBreadcrumbs;
103
+ type index_AdminNavIcon = AdminNavIcon;
104
+ type index_AdminNavInput = AdminNavInput;
105
+ type index_AdminNavItem = AdminNavItem;
106
+ type index_AdminNavLinkItem = AdminNavLinkItem;
107
+ declare const index_AdminPage: typeof AdminPage;
108
+ type index_AdminPageLinkOption = AdminPageLinkOption;
109
+ type index_AdminPageRecord = AdminPageRecord;
110
+ type index_AdminRole = AdminRole;
111
+ type index_MediaDetailPanelProps = MediaDetailPanelProps;
112
+ type index_MediaListItemProps = MediaListItemProps;
113
+ type index_NestedNavItem = NestedNavItem;
114
+ type index_NestedNavItemInput = NestedNavItemInput;
115
+ type index_NestedNavTree = NestedNavTree;
116
+ declare const index_buildAdminPageLinkOptions: typeof buildAdminPageLinkOptions;
117
+ declare const index_buildNestedNavTree: typeof buildNestedNavTree;
118
+ declare const index_getAdminNavRows: typeof getAdminNavRows;
119
+ declare const index_navItemIsActive: typeof navItemIsActive;
120
+ declare const index_normalizeAdminNavInputs: typeof normalizeAdminNavInputs;
121
+ declare const index_normalizeNestedNavItems: typeof normalizeNestedNavItems;
122
+ declare const index_parseAdminHeaderNavFromForm: typeof parseAdminHeaderNavFromForm;
123
+ declare const index_roleCanAccessNav: typeof roleCanAccessNav;
124
+ declare namespace index {
125
+ export { type index_AdminBreadcrumbItem as AdminBreadcrumbItem, index_AdminBreadcrumbs as AdminBreadcrumbs, type index_AdminNavIcon as AdminNavIcon, type index_AdminNavInput as AdminNavInput, type index_AdminNavItem as AdminNavItem, type index_AdminNavLinkItem as AdminNavLinkItem, index_AdminPage as AdminPage, type index_AdminPageLinkOption as AdminPageLinkOption, type index_AdminPageRecord as AdminPageRecord, type index_AdminRole as AdminRole, type index_MediaDetailPanelProps as MediaDetailPanelProps, type index_MediaListItemProps as MediaListItemProps, type index_NestedNavItem as NestedNavItem, type index_NestedNavItemInput as NestedNavItemInput, type index_NestedNavTree as NestedNavTree, index_buildAdminPageLinkOptions as buildAdminPageLinkOptions, index_buildNestedNavTree as buildNestedNavTree, index_getAdminNavRows as getAdminNavRows, index_navItemIsActive as navItemIsActive, index_normalizeAdminNavInputs as normalizeAdminNavInputs, index_normalizeNestedNavItems as normalizeNestedNavItems, index_parseAdminHeaderNavFromForm as parseAdminHeaderNavFromForm, index_roleCanAccessNav as roleCanAccessNav };
126
+ }
127
+
128
+ export { type AdminBreadcrumbItem as A, type MediaDetailPanelProps as M, type NestedNavItem as N, AdminBreadcrumbs as a, type AdminNavIcon as b, type AdminNavInput as c, type AdminNavItem as d, type AdminNavLinkItem as e, AdminPage as f, type AdminPageLinkOption as g, type AdminPageRecord as h, index as i, type AdminRole as j, type MediaListItemProps as k, type NestedNavItemInput as l, type NestedNavTree as m, buildAdminPageLinkOptions as n, buildNestedNavTree as o, getAdminNavRows as p, navItemIsActive as q, normalizeAdminNavInputs as r, normalizeNestedNavItems as s, parseAdminHeaderNavFromForm as t, roleCanAccessNav as u };
@@ -0,0 +1,128 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ReactNode } from 'react';
3
+
4
+ type AdminRole = 'admin' | 'editor' | 'client';
5
+ type AdminNavIcon = 'dashboard' | 'pages' | 'globals' | 'media' | 'tools' | 'account';
6
+ type AdminNavItem = {
7
+ href: string;
8
+ icon?: AdminNavIcon;
9
+ label: string;
10
+ matchPrefixes: string[];
11
+ roles?: AdminRole[];
12
+ };
13
+ type AdminBreadcrumbItem = {
14
+ label: string;
15
+ href?: string;
16
+ };
17
+ declare const roleCanAccessNav: (role: string | undefined, item: AdminNavItem) => boolean;
18
+ declare const navItemIsActive: (pathname: string, item: AdminNavItem) => boolean;
19
+
20
+ type AdminBreadcrumbsProps = {
21
+ items: AdminBreadcrumbItem[];
22
+ };
23
+ declare function AdminBreadcrumbs({ items }: AdminBreadcrumbsProps): react_jsx_runtime.JSX.Element;
24
+
25
+ type AdminPageProps = {
26
+ title: string;
27
+ description?: string;
28
+ breadcrumbs: AdminBreadcrumbItem[];
29
+ actions?: ReactNode;
30
+ children: ReactNode;
31
+ };
32
+ declare function AdminPage({ title, description, breadcrumbs, actions, children }: AdminPageProps): react_jsx_runtime.JSX.Element;
33
+
34
+ type MediaDetailPanelProps = {
35
+ id: string;
36
+ filename?: string;
37
+ alt?: string;
38
+ url?: string;
39
+ filesize?: number;
40
+ width?: number;
41
+ height?: number;
42
+ mimeType?: string;
43
+ createdAt?: string;
44
+ updateAction: (formData: FormData) => void;
45
+ deleteAction: (formData: FormData) => void;
46
+ };
47
+
48
+ type MediaListItemProps = {
49
+ id: string;
50
+ filename?: string;
51
+ alt?: string;
52
+ url?: string;
53
+ filesize?: number;
54
+ width?: number;
55
+ height?: number;
56
+ mimeType?: string;
57
+ href: string;
58
+ };
59
+
60
+ type NestedNavItemInput = {
61
+ href?: string;
62
+ label?: string;
63
+ parentHref?: string;
64
+ };
65
+ type NestedNavItem = {
66
+ href: string;
67
+ label: string;
68
+ parentHref?: string;
69
+ };
70
+ type NestedNavTree = {
71
+ topLevel: NestedNavItem[];
72
+ childrenByParent: Map<string, NestedNavItem[]>;
73
+ };
74
+ declare const normalizeNestedNavItems: <T extends NestedNavItemInput>(items: T[]) => NestedNavItem[];
75
+ declare const buildNestedNavTree: (items: NestedNavItem[]) => NestedNavTree;
76
+
77
+ type AdminNavLinkItem = {
78
+ href: string;
79
+ label: string;
80
+ parentHref?: string;
81
+ };
82
+ type AdminPageRecord = {
83
+ path?: string;
84
+ title?: string;
85
+ };
86
+ type AdminPageLinkOption = {
87
+ href: string;
88
+ label: string;
89
+ title: string;
90
+ };
91
+ declare const buildAdminPageLinkOptions: (pages: AdminPageRecord[]) => AdminPageLinkOption[];
92
+ declare const getAdminNavRows: (navItems: AdminNavLinkItem[], pageOptions: AdminPageLinkOption[], minRows?: number, maxRows?: number) => number;
93
+ type AdminNavInput = {
94
+ href?: string;
95
+ label?: string;
96
+ parentHref?: string;
97
+ };
98
+ declare const normalizeAdminNavInputs: (rows: AdminNavInput[], pageOptions: AdminPageLinkOption[]) => AdminNavLinkItem[];
99
+ declare const parseAdminHeaderNavFromForm: (formData: FormData, pageOptions: AdminPageLinkOption[], maxRows?: number) => AdminNavLinkItem[];
100
+
101
+ type index_AdminBreadcrumbItem = AdminBreadcrumbItem;
102
+ declare const index_AdminBreadcrumbs: typeof AdminBreadcrumbs;
103
+ type index_AdminNavIcon = AdminNavIcon;
104
+ type index_AdminNavInput = AdminNavInput;
105
+ type index_AdminNavItem = AdminNavItem;
106
+ type index_AdminNavLinkItem = AdminNavLinkItem;
107
+ declare const index_AdminPage: typeof AdminPage;
108
+ type index_AdminPageLinkOption = AdminPageLinkOption;
109
+ type index_AdminPageRecord = AdminPageRecord;
110
+ type index_AdminRole = AdminRole;
111
+ type index_MediaDetailPanelProps = MediaDetailPanelProps;
112
+ type index_MediaListItemProps = MediaListItemProps;
113
+ type index_NestedNavItem = NestedNavItem;
114
+ type index_NestedNavItemInput = NestedNavItemInput;
115
+ type index_NestedNavTree = NestedNavTree;
116
+ declare const index_buildAdminPageLinkOptions: typeof buildAdminPageLinkOptions;
117
+ declare const index_buildNestedNavTree: typeof buildNestedNavTree;
118
+ declare const index_getAdminNavRows: typeof getAdminNavRows;
119
+ declare const index_navItemIsActive: typeof navItemIsActive;
120
+ declare const index_normalizeAdminNavInputs: typeof normalizeAdminNavInputs;
121
+ declare const index_normalizeNestedNavItems: typeof normalizeNestedNavItems;
122
+ declare const index_parseAdminHeaderNavFromForm: typeof parseAdminHeaderNavFromForm;
123
+ declare const index_roleCanAccessNav: typeof roleCanAccessNav;
124
+ declare namespace index {
125
+ export { type index_AdminBreadcrumbItem as AdminBreadcrumbItem, index_AdminBreadcrumbs as AdminBreadcrumbs, type index_AdminNavIcon as AdminNavIcon, type index_AdminNavInput as AdminNavInput, type index_AdminNavItem as AdminNavItem, type index_AdminNavLinkItem as AdminNavLinkItem, index_AdminPage as AdminPage, type index_AdminPageLinkOption as AdminPageLinkOption, type index_AdminPageRecord as AdminPageRecord, type index_AdminRole as AdminRole, type index_MediaDetailPanelProps as MediaDetailPanelProps, type index_MediaListItemProps as MediaListItemProps, type index_NestedNavItem as NestedNavItem, type index_NestedNavItemInput as NestedNavItemInput, type index_NestedNavTree as NestedNavTree, index_buildAdminPageLinkOptions as buildAdminPageLinkOptions, index_buildNestedNavTree as buildNestedNavTree, index_getAdminNavRows as getAdminNavRows, index_navItemIsActive as navItemIsActive, index_normalizeAdminNavInputs as normalizeAdminNavInputs, index_normalizeNestedNavItems as normalizeNestedNavItems, index_parseAdminHeaderNavFromForm as parseAdminHeaderNavFromForm, index_roleCanAccessNav as roleCanAccessNav };
126
+ }
127
+
128
+ export { type AdminBreadcrumbItem as A, type MediaDetailPanelProps as M, type NestedNavItem as N, AdminBreadcrumbs as a, type AdminNavIcon as b, type AdminNavInput as c, type AdminNavItem as d, type AdminNavLinkItem as e, AdminPage as f, type AdminPageLinkOption as g, type AdminPageRecord as h, index as i, type AdminRole as j, type MediaListItemProps as k, type NestedNavItemInput as l, type NestedNavTree as m, buildAdminPageLinkOptions as n, buildNestedNavTree as o, getAdminNavRows as p, navItemIsActive as q, normalizeAdminNavInputs as r, normalizeNestedNavItems as s, parseAdminHeaderNavFromForm as t, roleCanAccessNav as u };
@@ -0,0 +1,193 @@
1
+ import { S as StudioDocumentV1, a as StudioNodeTypeDefinition, b as StudioModuleManifest } from './index-BzKOThsI.mjs';
2
+ import { ComponentType, CSSProperties, ReactNode } from 'react';
3
+
4
+ type InspectorGroupKey = 'advanced' | 'basics' | 'media' | 'typography';
5
+ type InspectorFieldType = 'checkbox' | 'color' | 'number' | 'search' | 'select' | 'text' | 'textarea';
6
+
7
+ type BuilderSettingsPanelMode = 'advanced' | 'basic';
8
+ type BuilderTextAlign = 'center' | 'justify' | 'left' | 'right';
9
+ type BuilderTypographySpacingPreset = 'normal' | 'relaxed' | 'tight';
10
+ type BuilderLayoutSettingsV2 = {
11
+ contentWidth?: 'content' | 'full' | 'inherit' | 'narrow' | 'wide';
12
+ linkHorizontalPadding?: boolean;
13
+ linkVerticalPadding?: boolean;
14
+ paddingBottomPt?: number | null;
15
+ paddingLeftPt?: number | null;
16
+ paddingRightPt?: number | null;
17
+ paddingTopPt?: number | null;
18
+ sectionPaddingX?: 'inherit' | 'lg' | 'md' | 'none' | 'sm';
19
+ sectionPaddingY?: 'lg' | 'md' | 'none' | 'sm';
20
+ };
21
+ type BuilderTypographySettingsV2 = {
22
+ bodyAlign?: BuilderTextAlign;
23
+ headingAlign?: BuilderTextAlign;
24
+ letterSpacingPreset?: BuilderTypographySpacingPreset;
25
+ lineHeightPreset?: BuilderTypographySpacingPreset;
26
+ maxTextWidth?: 'auto' | 'full' | 'lg' | 'md' | 'sm';
27
+ };
28
+ type BuilderMediaSettingsV2 = {
29
+ cornerStyle?: 'rounded' | 'square';
30
+ fit?: 'contain' | 'cover';
31
+ height?: number | null;
32
+ position?: 'bottom' | 'center' | 'left' | 'right' | 'top';
33
+ positionX?: number | null;
34
+ positionY?: number | null;
35
+ };
36
+ type BuilderAppearanceSettingsV2 = {
37
+ contentBackgroundColor?: string;
38
+ contentBackgroundMode?: 'color' | 'gradient' | 'none';
39
+ contentGradientAngle?: string;
40
+ contentGradientFrom?: string;
41
+ contentGradientPreset?: string;
42
+ contentGradientTo?: string;
43
+ sectionBackgroundColor?: string;
44
+ sectionBackgroundMode?: 'color' | 'gradient' | 'none';
45
+ sectionGradientAngle?: string;
46
+ sectionGradientFrom?: string;
47
+ sectionGradientPreset?: string;
48
+ sectionGradientTo?: string;
49
+ };
50
+ type BuilderAdvancedSettingsV2 = {
51
+ customClassName?: string;
52
+ editCopyInPanel?: boolean;
53
+ hideOnMobile?: boolean;
54
+ };
55
+ type BuilderBlockSettingsV2 = {
56
+ advanced: BuilderAdvancedSettingsV2;
57
+ appearance: BuilderAppearanceSettingsV2;
58
+ layout: BuilderLayoutSettingsV2;
59
+ media: BuilderMediaSettingsV2;
60
+ typography: BuilderTypographySettingsV2;
61
+ version: 2;
62
+ };
63
+ type BuilderThemeScale = 'lg' | 'md' | 'sm' | 'xl';
64
+ type BuilderThemeTokens = {
65
+ colors: {
66
+ accent: string;
67
+ bodyText: string;
68
+ headingText: string;
69
+ surface: string;
70
+ };
71
+ radii: {
72
+ card: number;
73
+ panel: number;
74
+ };
75
+ spacing: {
76
+ sectionGap: BuilderThemeScale;
77
+ sectionPadding: BuilderThemeScale;
78
+ };
79
+ typography: {
80
+ bodySize: BuilderThemeScale;
81
+ headingSize: BuilderThemeScale;
82
+ };
83
+ };
84
+ type BuilderThemeTokenOverrides = {
85
+ [K in keyof BuilderThemeTokens]?: BuilderThemeTokens[K] extends Record<string, unknown> ? Partial<BuilderThemeTokens[K]> : BuilderThemeTokens[K];
86
+ };
87
+ type BuilderThemeTokenLayers = {
88
+ block?: BuilderThemeTokenOverrides;
89
+ page?: BuilderThemeTokenOverrides;
90
+ site?: BuilderThemeTokenOverrides;
91
+ };
92
+ declare const defaultBuilderThemeTokens: BuilderThemeTokens;
93
+
94
+ declare const resolveBuilderThemeTokens: (layers: BuilderThemeTokenLayers) => BuilderThemeTokens;
95
+
96
+ declare const layoutToStudioDocument: (layout: Array<Record<string, unknown>>, title?: string, metadata?: Record<string, unknown>) => StudioDocumentV1;
97
+ declare const studioDocumentToLayout: (document: StudioDocumentV1) => Array<Record<string, unknown>>;
98
+ declare const createDefaultStudioDocument: (title?: string) => StudioDocumentV1;
99
+
100
+ type BuilderBlock$1 = {
101
+ blockType: string;
102
+ [key: string]: unknown;
103
+ };
104
+ type SectionPreset = {
105
+ id: string;
106
+ title: string;
107
+ description: string;
108
+ blocks: BuilderBlock$1[];
109
+ };
110
+
111
+ type BuilderBlock = {
112
+ blockType?: string;
113
+ [key: string]: unknown;
114
+ };
115
+ type BuilderRenderWithSectionShell = (block: BuilderBlock, className: string, content: ReactNode, options?: {
116
+ inheritProjectStyles?: boolean;
117
+ }) => ReactNode;
118
+ type BuilderInlineTextComponentProps = {
119
+ as?: 'h1' | 'h2' | 'h3' | 'p' | 'span';
120
+ className?: string;
121
+ multiline?: boolean;
122
+ onCommit: (value: string) => void;
123
+ placeholder?: string;
124
+ style?: CSSProperties;
125
+ value?: string;
126
+ };
127
+ type BuilderPreviewTextFieldOptions = Omit<BuilderInlineTextComponentProps, 'onCommit' | 'value'>;
128
+ type BuilderPreviewEditingHelpers = {
129
+ InlineText: ComponentType<BuilderInlineTextComponentProps>;
130
+ readText: (value: unknown, fallback?: string) => string;
131
+ updateArrayItemText: (arrayField: string, itemIndex: number, fieldName: string, value: string) => void;
132
+ updateBlockText: (fieldName: string, value: string) => void;
133
+ };
134
+ type BuilderBlockPreviewRenderArgs = {
135
+ block: BuilderBlock;
136
+ editing: BuilderPreviewEditingHelpers;
137
+ index: number;
138
+ renderWithSectionShell: BuilderRenderWithSectionShell;
139
+ resolvedThemeTokens: BuilderThemeTokens;
140
+ };
141
+
142
+ type BuilderBlockPreviewRenderer = (args: BuilderBlockPreviewRenderArgs) => ReactNode | null;
143
+
144
+ declare const pageNodeTypes: StudioNodeTypeDefinition[];
145
+ declare const pagePaletteGroups: {
146
+ id: string;
147
+ label: string;
148
+ items: {
149
+ nodeType: string;
150
+ title: string;
151
+ description: string;
152
+ }[];
153
+ }[];
154
+ declare const pageInspectorPanels: {
155
+ fields: {
156
+ advanced: boolean | undefined;
157
+ group: InspectorGroupKey;
158
+ inlineEditable: boolean | undefined;
159
+ key: string;
160
+ label: string;
161
+ type: InspectorFieldType;
162
+ }[];
163
+ id: string;
164
+ label: string;
165
+ nodeType: string;
166
+ }[];
167
+ declare const pageStudioModuleManifest: StudioModuleManifest;
168
+
169
+ type index_BuilderBlockPreviewRenderArgs = BuilderBlockPreviewRenderArgs;
170
+ type index_BuilderBlockPreviewRenderer = BuilderBlockPreviewRenderer;
171
+ type index_BuilderBlockSettingsV2 = BuilderBlockSettingsV2;
172
+ type index_BuilderInlineTextComponentProps = BuilderInlineTextComponentProps;
173
+ type index_BuilderPreviewEditingHelpers = BuilderPreviewEditingHelpers;
174
+ type index_BuilderPreviewTextFieldOptions = BuilderPreviewTextFieldOptions;
175
+ type index_BuilderRenderWithSectionShell = BuilderRenderWithSectionShell;
176
+ type index_BuilderSettingsPanelMode = BuilderSettingsPanelMode;
177
+ type index_BuilderThemeTokenOverrides = BuilderThemeTokenOverrides;
178
+ type index_BuilderThemeTokens = BuilderThemeTokens;
179
+ type index_SectionPreset = SectionPreset;
180
+ declare const index_createDefaultStudioDocument: typeof createDefaultStudioDocument;
181
+ declare const index_defaultBuilderThemeTokens: typeof defaultBuilderThemeTokens;
182
+ declare const index_layoutToStudioDocument: typeof layoutToStudioDocument;
183
+ declare const index_pageInspectorPanels: typeof pageInspectorPanels;
184
+ declare const index_pageNodeTypes: typeof pageNodeTypes;
185
+ declare const index_pagePaletteGroups: typeof pagePaletteGroups;
186
+ declare const index_pageStudioModuleManifest: typeof pageStudioModuleManifest;
187
+ declare const index_resolveBuilderThemeTokens: typeof resolveBuilderThemeTokens;
188
+ declare const index_studioDocumentToLayout: typeof studioDocumentToLayout;
189
+ declare namespace index {
190
+ export { type BuilderBlock$1 as BuilderBlock, type index_BuilderBlockPreviewRenderArgs as BuilderBlockPreviewRenderArgs, type index_BuilderBlockPreviewRenderer as BuilderBlockPreviewRenderer, type index_BuilderBlockSettingsV2 as BuilderBlockSettingsV2, type index_BuilderInlineTextComponentProps as BuilderInlineTextComponentProps, type index_BuilderPreviewEditingHelpers as BuilderPreviewEditingHelpers, type index_BuilderPreviewTextFieldOptions as BuilderPreviewTextFieldOptions, type index_BuilderRenderWithSectionShell as BuilderRenderWithSectionShell, type index_BuilderSettingsPanelMode as BuilderSettingsPanelMode, type index_BuilderThemeTokenOverrides as BuilderThemeTokenOverrides, type index_BuilderThemeTokens as BuilderThemeTokens, type index_SectionPreset as SectionPreset, index_createDefaultStudioDocument as createDefaultStudioDocument, index_defaultBuilderThemeTokens as defaultBuilderThemeTokens, index_layoutToStudioDocument as layoutToStudioDocument, index_pageInspectorPanels as pageInspectorPanels, index_pageNodeTypes as pageNodeTypes, index_pagePaletteGroups as pagePaletteGroups, index_pageStudioModuleManifest as pageStudioModuleManifest, index_resolveBuilderThemeTokens as resolveBuilderThemeTokens, index_studioDocumentToLayout as studioDocumentToLayout };
191
+ }
192
+
193
+ export { type BuilderBlock$1 as B, type SectionPreset as S, type BuilderBlockPreviewRenderArgs as a, type BuilderBlockPreviewRenderer as b, type BuilderBlockSettingsV2 as c, type BuilderInlineTextComponentProps as d, type BuilderPreviewEditingHelpers as e, type BuilderPreviewTextFieldOptions as f, type BuilderRenderWithSectionShell as g, type BuilderSettingsPanelMode as h, index as i, type BuilderThemeTokenOverrides as j, type BuilderThemeTokens as k, createDefaultStudioDocument as l, defaultBuilderThemeTokens as m, layoutToStudioDocument as n, pageNodeTypes as o, pageInspectorPanels as p, pagePaletteGroups as q, pageStudioModuleManifest as r, resolveBuilderThemeTokens as s, studioDocumentToLayout as t };
package/dist/index.d.mts CHANGED
@@ -1,9 +1,10 @@
1
- export { i as admin } from './index-DJFhANvJ.mjs';
2
- export { i as adminApp } from './index-BallJs-K.mjs';
1
+ export { i as admin } from './index-B7QvY3yF.mjs';
2
+ export { i as adminApp } from './index-ZbOx4OCF.mjs';
3
3
  export { i as blocks } from './index-CluwY0ZQ.mjs';
4
- export { i as nextjs } from './index-DbH0Ljwp.mjs';
5
- export { i as studio } from './index-CmR6NInu.mjs';
6
- export { i as studioPages } from './index-B9N5MyjF.mjs';
4
+ export { i as nextjs } from './index-D8BNfUJb.mjs';
5
+ export { i as studio } from './index-BzKOThsI.mjs';
6
+ export { i as studioPages } from './index-gLl_358v.mjs';
7
7
  import 'payload';
8
+ import './socialMedia-C05Iy-SV.mjs';
8
9
  import 'react/jsx-runtime';
9
10
  import 'react';
package/dist/index.d.ts CHANGED
@@ -1,9 +1,10 @@
1
- export { i as admin } from './index-DJFhANvJ.js';
2
- export { i as adminApp } from './index-BallJs-K.js';
1
+ export { i as admin } from './index-BK03FiEM.js';
2
+ export { i as adminApp } from './index-ZbOx4OCF.js';
3
3
  export { i as blocks } from './index-CluwY0ZQ.js';
4
- export { i as nextjs } from './index-DbH0Ljwp.js';
5
- export { i as studio } from './index-CmR6NInu.js';
6
- export { i as studioPages } from './index-g8tBHLKD.js';
4
+ export { i as nextjs } from './index-DD_E2UfJ.js';
5
+ export { i as studio } from './index-BzKOThsI.js';
6
+ export { i as studioPages } from './index-DUi_XND6.js';
7
7
  import 'payload';
8
+ import './socialMedia-C05Iy-SV.js';
8
9
  import 'react/jsx-runtime';
9
10
  import 'react';