@orion-studios/payload-studio 0.5.0-beta.107 → 0.5.0-beta.108

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.
@@ -514,6 +514,10 @@ var FaqBlock = {
514
514
  plural: "FAQs"
515
515
  },
516
516
  fields: [
517
+ {
518
+ name: "eyebrow",
519
+ type: "text"
520
+ },
517
521
  {
518
522
  name: "title",
519
523
  type: "text",
@@ -571,10 +575,13 @@ var FeatureGridBlock = {
571
575
  plural: "Feature Grids"
572
576
  },
573
577
  fields: [
578
+ {
579
+ name: "eyebrow",
580
+ type: "text"
581
+ },
574
582
  {
575
583
  name: "title",
576
- type: "text",
577
- required: true
584
+ type: "text"
578
585
  },
579
586
  {
580
587
  name: "subtitle",
@@ -606,6 +613,16 @@ var FeatureGridBlock = {
606
613
  name: "description",
607
614
  type: "textarea"
608
615
  },
616
+ {
617
+ name: "tone",
618
+ type: "select",
619
+ defaultValue: "warm",
620
+ options: [
621
+ { label: "Warm", value: "warm" },
622
+ { label: "Cool", value: "cool" },
623
+ { label: "Neutral", value: "neutral" }
624
+ ]
625
+ },
609
626
  {
610
627
  name: "iconType",
611
628
  type: "select",
@@ -658,6 +675,32 @@ var FeatureGridBlock = {
658
675
  description: "Optional direct image URL when this item should use an external image."
659
676
  }
660
677
  },
678
+ {
679
+ name: "embedURL",
680
+ type: "text",
681
+ admin: {
682
+ description: "Optional iframe/embed URL for items like maps or other embedded content."
683
+ }
684
+ },
685
+ {
686
+ name: "buttonLabel",
687
+ type: "text"
688
+ },
689
+ {
690
+ name: "buttonHref",
691
+ type: "text"
692
+ },
693
+ {
694
+ name: "bullets",
695
+ type: "array",
696
+ fields: [
697
+ {
698
+ name: "label",
699
+ type: "text",
700
+ required: true
701
+ }
702
+ ]
703
+ },
661
704
  {
662
705
  name: "imageHeight",
663
706
  type: "number",
@@ -740,6 +783,22 @@ var FeatureGridBlock = {
740
783
  {
741
784
  label: "Highlight",
742
785
  value: "highlight"
786
+ },
787
+ {
788
+ label: "Split List",
789
+ value: "splitList"
790
+ },
791
+ {
792
+ label: "Panels",
793
+ value: "panels"
794
+ },
795
+ {
796
+ label: "Catalog",
797
+ value: "catalog"
798
+ },
799
+ {
800
+ label: "Contact Split",
801
+ value: "contact"
743
802
  }
744
803
  ]
745
804
  },
@@ -777,6 +836,10 @@ var FormEmbedBlock = {
777
836
  plural: "Form Embeds"
778
837
  },
779
838
  fields: [
839
+ {
840
+ name: "eyebrow",
841
+ type: "text"
842
+ },
780
843
  {
781
844
  name: "title",
782
845
  type: "text"
@@ -1319,6 +1382,21 @@ var RichTextBlock = {
1319
1382
  plural: "Rich Text Sections"
1320
1383
  },
1321
1384
  fields: [
1385
+ {
1386
+ name: "variant",
1387
+ type: "select",
1388
+ defaultValue: "default",
1389
+ options: [
1390
+ {
1391
+ label: "Default",
1392
+ value: "default"
1393
+ },
1394
+ {
1395
+ label: "Quote Banner",
1396
+ value: "quoteBanner"
1397
+ }
1398
+ ]
1399
+ },
1322
1400
  {
1323
1401
  name: "title",
1324
1402
  type: "text"
@@ -17,7 +17,7 @@ import {
17
17
  defaultPageLayoutBlocks,
18
18
  sectionPresets,
19
19
  templateStarterPresets
20
- } from "../chunk-5MBN5YVW.mjs";
20
+ } from "../chunk-G7QOJ4AB.mjs";
21
21
  import "../chunk-WY7RQGSN.mjs";
22
22
  import "../chunk-6BWS3CLP.mjs";
23
23
  export {
@@ -327,6 +327,7 @@ var inspectorDefinitionByBlockType = {
327
327
  faq: {
328
328
  blockType: "faq",
329
329
  fields: [
330
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
330
331
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
331
332
  ...layoutFieldSet,
332
333
  ...typographyFieldSet,
@@ -337,6 +338,7 @@ var inspectorDefinitionByBlockType = {
337
338
  featureGrid: {
338
339
  blockType: "featureGrid",
339
340
  fields: [
341
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
340
342
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
341
343
  {
342
344
  group: "basics",
@@ -344,7 +346,11 @@ var inspectorDefinitionByBlockType = {
344
346
  label: "Variant",
345
347
  options: [
346
348
  { label: "Cards", value: "cards" },
347
- { label: "Highlight", value: "highlight" }
349
+ { label: "Highlight", value: "highlight" },
350
+ { label: "Split List", value: "splitList" },
351
+ { label: "Panels", value: "panels" },
352
+ { label: "Catalog", value: "catalog" },
353
+ { label: "Contact Split", value: "contact" }
348
354
  ],
349
355
  type: "select"
350
356
  },
@@ -359,6 +365,7 @@ var inspectorDefinitionByBlockType = {
359
365
  formEmbed: {
360
366
  blockType: "formEmbed",
361
367
  fields: [
368
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
362
369
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
363
370
  { group: "basics", inlineEditable: true, key: "description", label: "Description", type: "textarea" },
364
371
  {
@@ -444,6 +451,16 @@ var inspectorDefinitionByBlockType = {
444
451
  richText: {
445
452
  blockType: "richText",
446
453
  fields: [
454
+ {
455
+ group: "basics",
456
+ key: "variant",
457
+ label: "Variant",
458
+ options: [
459
+ { label: "Default", value: "default" },
460
+ { label: "Quote Banner", value: "quoteBanner" }
461
+ ],
462
+ type: "select"
463
+ },
447
464
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
448
465
  {
449
466
  group: "basics",
@@ -349,6 +349,10 @@ var FaqBlock = {
349
349
  plural: "FAQs"
350
350
  },
351
351
  fields: [
352
+ {
353
+ name: "eyebrow",
354
+ type: "text"
355
+ },
352
356
  {
353
357
  name: "title",
354
358
  type: "text",
@@ -406,10 +410,13 @@ var FeatureGridBlock = {
406
410
  plural: "Feature Grids"
407
411
  },
408
412
  fields: [
413
+ {
414
+ name: "eyebrow",
415
+ type: "text"
416
+ },
409
417
  {
410
418
  name: "title",
411
- type: "text",
412
- required: true
419
+ type: "text"
413
420
  },
414
421
  {
415
422
  name: "subtitle",
@@ -441,6 +448,16 @@ var FeatureGridBlock = {
441
448
  name: "description",
442
449
  type: "textarea"
443
450
  },
451
+ {
452
+ name: "tone",
453
+ type: "select",
454
+ defaultValue: "warm",
455
+ options: [
456
+ { label: "Warm", value: "warm" },
457
+ { label: "Cool", value: "cool" },
458
+ { label: "Neutral", value: "neutral" }
459
+ ]
460
+ },
444
461
  {
445
462
  name: "iconType",
446
463
  type: "select",
@@ -493,6 +510,32 @@ var FeatureGridBlock = {
493
510
  description: "Optional direct image URL when this item should use an external image."
494
511
  }
495
512
  },
513
+ {
514
+ name: "embedURL",
515
+ type: "text",
516
+ admin: {
517
+ description: "Optional iframe/embed URL for items like maps or other embedded content."
518
+ }
519
+ },
520
+ {
521
+ name: "buttonLabel",
522
+ type: "text"
523
+ },
524
+ {
525
+ name: "buttonHref",
526
+ type: "text"
527
+ },
528
+ {
529
+ name: "bullets",
530
+ type: "array",
531
+ fields: [
532
+ {
533
+ name: "label",
534
+ type: "text",
535
+ required: true
536
+ }
537
+ ]
538
+ },
496
539
  {
497
540
  name: "imageHeight",
498
541
  type: "number",
@@ -575,6 +618,22 @@ var FeatureGridBlock = {
575
618
  {
576
619
  label: "Highlight",
577
620
  value: "highlight"
621
+ },
622
+ {
623
+ label: "Split List",
624
+ value: "splitList"
625
+ },
626
+ {
627
+ label: "Panels",
628
+ value: "panels"
629
+ },
630
+ {
631
+ label: "Catalog",
632
+ value: "catalog"
633
+ },
634
+ {
635
+ label: "Contact Split",
636
+ value: "contact"
578
637
  }
579
638
  ]
580
639
  },
@@ -612,6 +671,10 @@ var FormEmbedBlock = {
612
671
  plural: "Form Embeds"
613
672
  },
614
673
  fields: [
674
+ {
675
+ name: "eyebrow",
676
+ type: "text"
677
+ },
615
678
  {
616
679
  name: "title",
617
680
  type: "text"
@@ -1154,6 +1217,21 @@ var RichTextBlock = {
1154
1217
  plural: "Rich Text Sections"
1155
1218
  },
1156
1219
  fields: [
1220
+ {
1221
+ name: "variant",
1222
+ type: "select",
1223
+ defaultValue: "default",
1224
+ options: [
1225
+ {
1226
+ label: "Default",
1227
+ value: "default"
1228
+ },
1229
+ {
1230
+ label: "Quote Banner",
1231
+ value: "quoteBanner"
1232
+ }
1233
+ ]
1234
+ },
1157
1235
  {
1158
1236
  name: "title",
1159
1237
  type: "text"
@@ -1,4 +1,5 @@
1
- import { S as StudioDocumentV1, a as StudioNodeTypeDefinition, b as StudioModuleManifest } from './index-BIwu3qIH.mjs';
1
+ import { S as StudioDocumentV1, a as StudioNodeTypeDefinition, b as StudioModuleManifest } from './index-BzKOThsI.js';
2
+ import { ComponentType, CSSProperties, ReactNode } from 'react';
2
3
 
3
4
  type InspectorGroupKey = 'advanced' | 'basics' | 'layout' | 'media' | 'style' | 'typography';
4
5
  type InspectorFieldType = 'checkbox' | 'color' | 'number' | 'search' | 'select' | 'text' | 'textarea';
@@ -96,6 +97,50 @@ declare const layoutToStudioDocument: (layout: Array<Record<string, unknown>>, t
96
97
  declare const studioDocumentToLayout: (document: StudioDocumentV1) => Array<Record<string, unknown>>;
97
98
  declare const createDefaultStudioDocument: (title?: string) => StudioDocumentV1;
98
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
+
99
144
  declare const pageNodeTypes: StudioNodeTypeDefinition[];
100
145
  declare const pagePaletteGroups: {
101
146
  id: string;
@@ -121,10 +166,17 @@ declare const pageInspectorPanels: {
121
166
  }[];
122
167
  declare const pageStudioModuleManifest: StudioModuleManifest;
123
168
 
169
+ type index_BuilderBlockPreviewRenderArgs = BuilderBlockPreviewRenderArgs;
170
+ type index_BuilderBlockPreviewRenderer = BuilderBlockPreviewRenderer;
124
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;
125
176
  type index_BuilderSettingsPanelMode = BuilderSettingsPanelMode;
126
177
  type index_BuilderThemeTokenOverrides = BuilderThemeTokenOverrides;
127
178
  type index_BuilderThemeTokens = BuilderThemeTokens;
179
+ type index_SectionPreset = SectionPreset;
128
180
  declare const index_createDefaultStudioDocument: typeof createDefaultStudioDocument;
129
181
  declare const index_defaultBuilderThemeTokens: typeof defaultBuilderThemeTokens;
130
182
  declare const index_layoutToStudioDocument: typeof layoutToStudioDocument;
@@ -135,7 +187,7 @@ declare const index_pageStudioModuleManifest: typeof pageStudioModuleManifest;
135
187
  declare const index_resolveBuilderThemeTokens: typeof resolveBuilderThemeTokens;
136
188
  declare const index_studioDocumentToLayout: typeof studioDocumentToLayout;
137
189
  declare namespace index {
138
- export { type index_BuilderBlockSettingsV2 as BuilderBlockSettingsV2, type index_BuilderSettingsPanelMode as BuilderSettingsPanelMode, type index_BuilderThemeTokenOverrides as BuilderThemeTokenOverrides, type index_BuilderThemeTokens as BuilderThemeTokens, 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 };
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 };
139
191
  }
140
192
 
141
- export { type BuilderBlockSettingsV2 as B, type BuilderSettingsPanelMode as a, type BuilderThemeTokenOverrides as b, type BuilderThemeTokens as c, createDefaultStudioDocument as d, defaultBuilderThemeTokens as e, pageNodeTypes as f, pagePaletteGroups as g, pageStudioModuleManifest as h, index as i, layoutToStudioDocument as l, pageInspectorPanels as p, resolveBuilderThemeTokens as r, studioDocumentToLayout as s };
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 };
@@ -104,6 +104,7 @@ type StudioRegistry = {
104
104
  type StudioPageService = {
105
105
  getPageForStudio: (pageID: string) => Promise<{
106
106
  id: string;
107
+ slug?: string;
107
108
  studioDocument: StudioDocumentV1;
108
109
  title: string;
109
110
  }>;
@@ -104,6 +104,7 @@ type StudioRegistry = {
104
104
  type StudioPageService = {
105
105
  getPageForStudio: (pageID: string) => Promise<{
106
106
  id: string;
107
+ slug?: string;
107
108
  studioDocument: StudioDocumentV1;
108
109
  title: string;
109
110
  }>;
@@ -1,4 +1,5 @@
1
- import { S as StudioDocumentV1, a as StudioNodeTypeDefinition, b as StudioModuleManifest } from './index-BIwu3qIH.js';
1
+ import { S as StudioDocumentV1, a as StudioNodeTypeDefinition, b as StudioModuleManifest } from './index-BzKOThsI.mjs';
2
+ import { ComponentType, CSSProperties, ReactNode } from 'react';
2
3
 
3
4
  type InspectorGroupKey = 'advanced' | 'basics' | 'layout' | 'media' | 'style' | 'typography';
4
5
  type InspectorFieldType = 'checkbox' | 'color' | 'number' | 'search' | 'select' | 'text' | 'textarea';
@@ -96,6 +97,50 @@ declare const layoutToStudioDocument: (layout: Array<Record<string, unknown>>, t
96
97
  declare const studioDocumentToLayout: (document: StudioDocumentV1) => Array<Record<string, unknown>>;
97
98
  declare const createDefaultStudioDocument: (title?: string) => StudioDocumentV1;
98
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
+
99
144
  declare const pageNodeTypes: StudioNodeTypeDefinition[];
100
145
  declare const pagePaletteGroups: {
101
146
  id: string;
@@ -121,10 +166,17 @@ declare const pageInspectorPanels: {
121
166
  }[];
122
167
  declare const pageStudioModuleManifest: StudioModuleManifest;
123
168
 
169
+ type index_BuilderBlockPreviewRenderArgs = BuilderBlockPreviewRenderArgs;
170
+ type index_BuilderBlockPreviewRenderer = BuilderBlockPreviewRenderer;
124
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;
125
176
  type index_BuilderSettingsPanelMode = BuilderSettingsPanelMode;
126
177
  type index_BuilderThemeTokenOverrides = BuilderThemeTokenOverrides;
127
178
  type index_BuilderThemeTokens = BuilderThemeTokens;
179
+ type index_SectionPreset = SectionPreset;
128
180
  declare const index_createDefaultStudioDocument: typeof createDefaultStudioDocument;
129
181
  declare const index_defaultBuilderThemeTokens: typeof defaultBuilderThemeTokens;
130
182
  declare const index_layoutToStudioDocument: typeof layoutToStudioDocument;
@@ -135,7 +187,7 @@ declare const index_pageStudioModuleManifest: typeof pageStudioModuleManifest;
135
187
  declare const index_resolveBuilderThemeTokens: typeof resolveBuilderThemeTokens;
136
188
  declare const index_studioDocumentToLayout: typeof studioDocumentToLayout;
137
189
  declare namespace index {
138
- export { type index_BuilderBlockSettingsV2 as BuilderBlockSettingsV2, type index_BuilderSettingsPanelMode as BuilderSettingsPanelMode, type index_BuilderThemeTokenOverrides as BuilderThemeTokenOverrides, type index_BuilderThemeTokens as BuilderThemeTokens, 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 };
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 };
139
191
  }
140
192
 
141
- export { type BuilderBlockSettingsV2 as B, type BuilderSettingsPanelMode as a, type BuilderThemeTokenOverrides as b, type BuilderThemeTokens as c, createDefaultStudioDocument as d, defaultBuilderThemeTokens as e, pageNodeTypes as f, pagePaletteGroups as g, pageStudioModuleManifest as h, index as i, layoutToStudioDocument as l, pageInspectorPanels as p, resolveBuilderThemeTokens as r, studioDocumentToLayout as s };
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
@@ -2,8 +2,8 @@ export { i as admin } from './index-BnoqmQDP.mjs';
2
2
  export { i as adminApp } from './index-ZbOx4OCF.mjs';
3
3
  export { i as blocks } from './index-CluwY0ZQ.mjs';
4
4
  export { i as nextjs } from './index-D8BNfUJb.mjs';
5
- export { i as studio } from './index-BIwu3qIH.mjs';
6
- export { i as studioPages } from './index-BiQ1tDJy.mjs';
5
+ export { i as studio } from './index-BzKOThsI.mjs';
6
+ export { i as studioPages } from './index-DkmB6hR5.mjs';
7
7
  import 'payload';
8
8
  import './socialMedia-C05Iy-SV.mjs';
9
9
  import 'react/jsx-runtime';
package/dist/index.d.ts CHANGED
@@ -2,8 +2,8 @@ export { i as admin } from './index-CTpik6fR.js';
2
2
  export { i as adminApp } from './index-ZbOx4OCF.js';
3
3
  export { i as blocks } from './index-CluwY0ZQ.js';
4
4
  export { i as nextjs } from './index-DD_E2UfJ.js';
5
- export { i as studio } from './index-BIwu3qIH.js';
6
- export { i as studioPages } from './index-dLyj5OTW.js';
5
+ export { i as studio } from './index-BzKOThsI.js';
6
+ export { i as studioPages } from './index-BHS4jJf8.js';
7
7
  import 'payload';
8
8
  import './socialMedia-C05Iy-SV.js';
9
9
  import 'react/jsx-runtime';
package/dist/index.js CHANGED
@@ -1398,6 +1398,10 @@ var FaqBlock = {
1398
1398
  plural: "FAQs"
1399
1399
  },
1400
1400
  fields: [
1401
+ {
1402
+ name: "eyebrow",
1403
+ type: "text"
1404
+ },
1401
1405
  {
1402
1406
  name: "title",
1403
1407
  type: "text",
@@ -1455,10 +1459,13 @@ var FeatureGridBlock = {
1455
1459
  plural: "Feature Grids"
1456
1460
  },
1457
1461
  fields: [
1462
+ {
1463
+ name: "eyebrow",
1464
+ type: "text"
1465
+ },
1458
1466
  {
1459
1467
  name: "title",
1460
- type: "text",
1461
- required: true
1468
+ type: "text"
1462
1469
  },
1463
1470
  {
1464
1471
  name: "subtitle",
@@ -1490,6 +1497,16 @@ var FeatureGridBlock = {
1490
1497
  name: "description",
1491
1498
  type: "textarea"
1492
1499
  },
1500
+ {
1501
+ name: "tone",
1502
+ type: "select",
1503
+ defaultValue: "warm",
1504
+ options: [
1505
+ { label: "Warm", value: "warm" },
1506
+ { label: "Cool", value: "cool" },
1507
+ { label: "Neutral", value: "neutral" }
1508
+ ]
1509
+ },
1493
1510
  {
1494
1511
  name: "iconType",
1495
1512
  type: "select",
@@ -1542,6 +1559,32 @@ var FeatureGridBlock = {
1542
1559
  description: "Optional direct image URL when this item should use an external image."
1543
1560
  }
1544
1561
  },
1562
+ {
1563
+ name: "embedURL",
1564
+ type: "text",
1565
+ admin: {
1566
+ description: "Optional iframe/embed URL for items like maps or other embedded content."
1567
+ }
1568
+ },
1569
+ {
1570
+ name: "buttonLabel",
1571
+ type: "text"
1572
+ },
1573
+ {
1574
+ name: "buttonHref",
1575
+ type: "text"
1576
+ },
1577
+ {
1578
+ name: "bullets",
1579
+ type: "array",
1580
+ fields: [
1581
+ {
1582
+ name: "label",
1583
+ type: "text",
1584
+ required: true
1585
+ }
1586
+ ]
1587
+ },
1545
1588
  {
1546
1589
  name: "imageHeight",
1547
1590
  type: "number",
@@ -1624,6 +1667,22 @@ var FeatureGridBlock = {
1624
1667
  {
1625
1668
  label: "Highlight",
1626
1669
  value: "highlight"
1670
+ },
1671
+ {
1672
+ label: "Split List",
1673
+ value: "splitList"
1674
+ },
1675
+ {
1676
+ label: "Panels",
1677
+ value: "panels"
1678
+ },
1679
+ {
1680
+ label: "Catalog",
1681
+ value: "catalog"
1682
+ },
1683
+ {
1684
+ label: "Contact Split",
1685
+ value: "contact"
1627
1686
  }
1628
1687
  ]
1629
1688
  },
@@ -1661,6 +1720,10 @@ var FormEmbedBlock = {
1661
1720
  plural: "Form Embeds"
1662
1721
  },
1663
1722
  fields: [
1723
+ {
1724
+ name: "eyebrow",
1725
+ type: "text"
1726
+ },
1664
1727
  {
1665
1728
  name: "title",
1666
1729
  type: "text"
@@ -2203,6 +2266,21 @@ var RichTextBlock = {
2203
2266
  plural: "Rich Text Sections"
2204
2267
  },
2205
2268
  fields: [
2269
+ {
2270
+ name: "variant",
2271
+ type: "select",
2272
+ defaultValue: "default",
2273
+ options: [
2274
+ {
2275
+ label: "Default",
2276
+ value: "default"
2277
+ },
2278
+ {
2279
+ label: "Quote Banner",
2280
+ value: "quoteBanner"
2281
+ }
2282
+ ]
2283
+ },
2206
2284
  {
2207
2285
  name: "title",
2208
2286
  type: "text"
@@ -4014,6 +4092,7 @@ var inspectorDefinitionByBlockType = {
4014
4092
  faq: {
4015
4093
  blockType: "faq",
4016
4094
  fields: [
4095
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
4017
4096
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
4018
4097
  ...layoutFieldSet,
4019
4098
  ...typographyFieldSet,
@@ -4024,6 +4103,7 @@ var inspectorDefinitionByBlockType = {
4024
4103
  featureGrid: {
4025
4104
  blockType: "featureGrid",
4026
4105
  fields: [
4106
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
4027
4107
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
4028
4108
  {
4029
4109
  group: "basics",
@@ -4031,7 +4111,11 @@ var inspectorDefinitionByBlockType = {
4031
4111
  label: "Variant",
4032
4112
  options: [
4033
4113
  { label: "Cards", value: "cards" },
4034
- { label: "Highlight", value: "highlight" }
4114
+ { label: "Highlight", value: "highlight" },
4115
+ { label: "Split List", value: "splitList" },
4116
+ { label: "Panels", value: "panels" },
4117
+ { label: "Catalog", value: "catalog" },
4118
+ { label: "Contact Split", value: "contact" }
4035
4119
  ],
4036
4120
  type: "select"
4037
4121
  },
@@ -4046,6 +4130,7 @@ var inspectorDefinitionByBlockType = {
4046
4130
  formEmbed: {
4047
4131
  blockType: "formEmbed",
4048
4132
  fields: [
4133
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
4049
4134
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
4050
4135
  { group: "basics", inlineEditable: true, key: "description", label: "Description", type: "textarea" },
4051
4136
  {
@@ -4131,6 +4216,16 @@ var inspectorDefinitionByBlockType = {
4131
4216
  richText: {
4132
4217
  blockType: "richText",
4133
4218
  fields: [
4219
+ {
4220
+ group: "basics",
4221
+ key: "variant",
4222
+ label: "Variant",
4223
+ options: [
4224
+ { label: "Default", value: "default" },
4225
+ { label: "Quote Banner", value: "quoteBanner" }
4226
+ ],
4227
+ type: "select"
4228
+ },
4134
4229
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
4135
4230
  {
4136
4231
  group: "basics",
package/dist/index.mjs CHANGED
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-XVH5SCBD.mjs";
7
7
  import {
8
8
  blocks_exports
9
- } from "./chunk-5MBN5YVW.mjs";
9
+ } from "./chunk-G7QOJ4AB.mjs";
10
10
  import {
11
11
  nextjs_exports
12
12
  } from "./chunk-BET2YLAS.mjs";
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk-ADIIWIYL.mjs";
17
17
  import {
18
18
  studio_pages_exports
19
- } from "./chunk-BN3GGCI5.mjs";
19
+ } from "./chunk-3ZQZ2VW3.mjs";
20
20
  import "./chunk-WY7RQGSN.mjs";
21
21
  import "./chunk-PF3EBZXF.mjs";
22
22
  import "./chunk-6BWS3CLP.mjs";
@@ -1,2 +1,2 @@
1
- export { I as ImageUploadOptimizationOptions, c as StudioCompileResult, S as StudioDocumentV1, d as StudioInspectorField, e as StudioInspectorPanel, f as StudioMigration, b as StudioModuleManifest, g as StudioNode, h as StudioNodeData, a as StudioNodeTypeDefinition, j as StudioPageService, k as StudioPaletteGroup, l as StudioPaletteItem, m as StudioPermission, n as StudioRegistry, o as StudioValidationIssue, p as SupportedImageMimeType, q as assertStudioDocumentV1, r as compileStudioDocument, s as createEmptyStudioDocument, t as createImageUploadOptimizationHook, u as createStudioRegistry, v as migrateStudioDocument, w as validateStudioDocument, x as withImageUploadOptimization } from '../index-BIwu3qIH.mjs';
1
+ export { I as ImageUploadOptimizationOptions, c as StudioCompileResult, S as StudioDocumentV1, d as StudioInspectorField, e as StudioInspectorPanel, f as StudioMigration, b as StudioModuleManifest, g as StudioNode, h as StudioNodeData, a as StudioNodeTypeDefinition, j as StudioPageService, k as StudioPaletteGroup, l as StudioPaletteItem, m as StudioPermission, n as StudioRegistry, o as StudioValidationIssue, p as SupportedImageMimeType, q as assertStudioDocumentV1, r as compileStudioDocument, s as createEmptyStudioDocument, t as createImageUploadOptimizationHook, u as createStudioRegistry, v as migrateStudioDocument, w as validateStudioDocument, x as withImageUploadOptimization } from '../index-BzKOThsI.mjs';
2
2
  import 'payload';
@@ -1,2 +1,2 @@
1
- export { I as ImageUploadOptimizationOptions, c as StudioCompileResult, S as StudioDocumentV1, d as StudioInspectorField, e as StudioInspectorPanel, f as StudioMigration, b as StudioModuleManifest, g as StudioNode, h as StudioNodeData, a as StudioNodeTypeDefinition, j as StudioPageService, k as StudioPaletteGroup, l as StudioPaletteItem, m as StudioPermission, n as StudioRegistry, o as StudioValidationIssue, p as SupportedImageMimeType, q as assertStudioDocumentV1, r as compileStudioDocument, s as createEmptyStudioDocument, t as createImageUploadOptimizationHook, u as createStudioRegistry, v as migrateStudioDocument, w as validateStudioDocument, x as withImageUploadOptimization } from '../index-BIwu3qIH.js';
1
+ export { I as ImageUploadOptimizationOptions, c as StudioCompileResult, S as StudioDocumentV1, d as StudioInspectorField, e as StudioInspectorPanel, f as StudioMigration, b as StudioModuleManifest, g as StudioNode, h as StudioNodeData, a as StudioNodeTypeDefinition, j as StudioPageService, k as StudioPaletteGroup, l as StudioPaletteItem, m as StudioPermission, n as StudioRegistry, o as StudioValidationIssue, p as SupportedImageMimeType, q as assertStudioDocumentV1, r as compileStudioDocument, s as createEmptyStudioDocument, t as createImageUploadOptimizationHook, u as createStudioRegistry, v as migrateStudioDocument, w as validateStudioDocument, x as withImageUploadOptimization } from '../index-BzKOThsI.js';
2
2
  import 'payload';
@@ -799,6 +799,7 @@ var inspectorDefinitionByBlockType = {
799
799
  faq: {
800
800
  blockType: "faq",
801
801
  fields: [
802
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
802
803
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
803
804
  ...layoutFieldSet,
804
805
  ...typographyFieldSet,
@@ -809,6 +810,7 @@ var inspectorDefinitionByBlockType = {
809
810
  featureGrid: {
810
811
  blockType: "featureGrid",
811
812
  fields: [
813
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
812
814
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
813
815
  {
814
816
  group: "basics",
@@ -816,7 +818,11 @@ var inspectorDefinitionByBlockType = {
816
818
  label: "Variant",
817
819
  options: [
818
820
  { label: "Cards", value: "cards" },
819
- { label: "Highlight", value: "highlight" }
821
+ { label: "Highlight", value: "highlight" },
822
+ { label: "Split List", value: "splitList" },
823
+ { label: "Panels", value: "panels" },
824
+ { label: "Catalog", value: "catalog" },
825
+ { label: "Contact Split", value: "contact" }
820
826
  ],
821
827
  type: "select"
822
828
  },
@@ -831,6 +837,7 @@ var inspectorDefinitionByBlockType = {
831
837
  formEmbed: {
832
838
  blockType: "formEmbed",
833
839
  fields: [
840
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
834
841
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
835
842
  { group: "basics", inlineEditable: true, key: "description", label: "Description", type: "textarea" },
836
843
  {
@@ -916,6 +923,16 @@ var inspectorDefinitionByBlockType = {
916
923
  richText: {
917
924
  blockType: "richText",
918
925
  fields: [
926
+ {
927
+ group: "basics",
928
+ key: "variant",
929
+ label: "Variant",
930
+ options: [
931
+ { label: "Default", value: "default" },
932
+ { label: "Quote Banner", value: "quoteBanner" }
933
+ ],
934
+ type: "select"
935
+ },
919
936
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
920
937
  {
921
938
  group: "basics",
@@ -3096,6 +3113,13 @@ var getItemTypographyAlign = (item) => {
3096
3113
  const value = typography.bodyAlign;
3097
3114
  return value === "center" || value === "justify" || value === "right" ? value : "left";
3098
3115
  };
3116
+ var bulletsToTextareaValue = (value) => {
3117
+ if (!Array.isArray(value)) {
3118
+ return "";
3119
+ }
3120
+ return value.map((item) => isRecord5(item) && typeof item.label === "string" ? item.label.trim() : "").filter(Boolean).join("\n");
3121
+ };
3122
+ var textareaValueToBullets = (value) => value.split("\n").map((line) => line.trim()).filter(Boolean).map((label) => ({ label }));
3099
3123
  function ArrayItemsEditor({
3100
3124
  blockType,
3101
3125
  expandedItemIndex,
@@ -3194,6 +3218,69 @@ function ArrayItemsEditor({
3194
3218
  }
3195
3219
  )
3196
3220
  ] }),
3221
+ hasQueryMatch(normalizedQuery, "tone", "style", "color") ? /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("label", { className: "orion-builder-settings-label", children: [
3222
+ "Tone",
3223
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
3224
+ "select",
3225
+ {
3226
+ className: "orion-builder-settings-input",
3227
+ onChange: (event) => onUpdateItemField(itemIndex, "tone", event.target.value),
3228
+ value: normalizeText(item.tone, "warm"),
3229
+ children: [
3230
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("option", { value: "warm", children: "Warm" }),
3231
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("option", { value: "cool", children: "Cool" }),
3232
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("option", { value: "neutral", children: "Neutral" })
3233
+ ]
3234
+ }
3235
+ )
3236
+ ] }) : null,
3237
+ hasQueryMatch(normalizedQuery, "button", "cta", "link label") ? /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("label", { className: "orion-builder-settings-label", children: [
3238
+ "Button Label",
3239
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3240
+ "input",
3241
+ {
3242
+ className: "orion-builder-settings-input",
3243
+ onChange: (event) => onUpdateItemField(itemIndex, "buttonLabel", event.target.value),
3244
+ type: "text",
3245
+ value: normalizeText(item.buttonLabel)
3246
+ }
3247
+ )
3248
+ ] }) : null,
3249
+ hasQueryMatch(normalizedQuery, "button", "url", "href", "link") ? /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("label", { className: "orion-builder-settings-label", children: [
3250
+ "Button URL",
3251
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3252
+ "input",
3253
+ {
3254
+ className: "orion-builder-settings-input",
3255
+ onChange: (event) => onUpdateItemField(itemIndex, "buttonHref", event.target.value),
3256
+ type: "text",
3257
+ value: normalizeText(item.buttonHref)
3258
+ }
3259
+ )
3260
+ ] }) : null,
3261
+ hasQueryMatch(normalizedQuery, "embed", "map", "iframe", "url") ? /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("label", { className: "orion-builder-settings-label", children: [
3262
+ "Embed URL",
3263
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3264
+ "input",
3265
+ {
3266
+ className: "orion-builder-settings-input",
3267
+ onChange: (event) => onUpdateItemField(itemIndex, "embedURL", event.target.value),
3268
+ type: "text",
3269
+ value: normalizeText(item.embedURL)
3270
+ }
3271
+ )
3272
+ ] }) : null,
3273
+ hasQueryMatch(normalizedQuery, "bullets", "list", "points") ? /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("label", { className: "orion-builder-settings-label", children: [
3274
+ "Bullet Points",
3275
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3276
+ "textarea",
3277
+ {
3278
+ className: "orion-builder-settings-input is-textarea",
3279
+ onChange: (event) => onUpdateItemField(itemIndex, "bullets", textareaValueToBullets(event.target.value)),
3280
+ value: bulletsToTextareaValue(item.bullets)
3281
+ }
3282
+ )
3283
+ ] }) : null,
3197
3284
  /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "orion-builder-settings-note", children: [
3198
3285
  "Select this item and use the ",
3199
3286
  /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("strong", { children: "Media" }),
@@ -772,6 +772,7 @@ var inspectorDefinitionByBlockType = {
772
772
  faq: {
773
773
  blockType: "faq",
774
774
  fields: [
775
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
775
776
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
776
777
  ...layoutFieldSet,
777
778
  ...typographyFieldSet,
@@ -782,6 +783,7 @@ var inspectorDefinitionByBlockType = {
782
783
  featureGrid: {
783
784
  blockType: "featureGrid",
784
785
  fields: [
786
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
785
787
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
786
788
  {
787
789
  group: "basics",
@@ -789,7 +791,11 @@ var inspectorDefinitionByBlockType = {
789
791
  label: "Variant",
790
792
  options: [
791
793
  { label: "Cards", value: "cards" },
792
- { label: "Highlight", value: "highlight" }
794
+ { label: "Highlight", value: "highlight" },
795
+ { label: "Split List", value: "splitList" },
796
+ { label: "Panels", value: "panels" },
797
+ { label: "Catalog", value: "catalog" },
798
+ { label: "Contact Split", value: "contact" }
793
799
  ],
794
800
  type: "select"
795
801
  },
@@ -804,6 +810,7 @@ var inspectorDefinitionByBlockType = {
804
810
  formEmbed: {
805
811
  blockType: "formEmbed",
806
812
  fields: [
813
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
807
814
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
808
815
  { group: "basics", inlineEditable: true, key: "description", label: "Description", type: "textarea" },
809
816
  {
@@ -889,6 +896,16 @@ var inspectorDefinitionByBlockType = {
889
896
  richText: {
890
897
  blockType: "richText",
891
898
  fields: [
899
+ {
900
+ group: "basics",
901
+ key: "variant",
902
+ label: "Variant",
903
+ options: [
904
+ { label: "Default", value: "default" },
905
+ { label: "Quote Banner", value: "quoteBanner" }
906
+ ],
907
+ type: "select"
908
+ },
892
909
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
893
910
  {
894
911
  group: "basics",
@@ -2976,6 +2993,13 @@ var getItemTypographyAlign = (item) => {
2976
2993
  const value = typography.bodyAlign;
2977
2994
  return value === "center" || value === "justify" || value === "right" ? value : "left";
2978
2995
  };
2996
+ var bulletsToTextareaValue = (value) => {
2997
+ if (!Array.isArray(value)) {
2998
+ return "";
2999
+ }
3000
+ return value.map((item) => isRecord5(item) && typeof item.label === "string" ? item.label.trim() : "").filter(Boolean).join("\n");
3001
+ };
3002
+ var textareaValueToBullets = (value) => value.split("\n").map((line) => line.trim()).filter(Boolean).map((label) => ({ label }));
2979
3003
  function ArrayItemsEditor({
2980
3004
  blockType,
2981
3005
  expandedItemIndex,
@@ -3074,6 +3098,69 @@ function ArrayItemsEditor({
3074
3098
  }
3075
3099
  )
3076
3100
  ] }),
3101
+ hasQueryMatch(normalizedQuery, "tone", "style", "color") ? /* @__PURE__ */ jsxs11("label", { className: "orion-builder-settings-label", children: [
3102
+ "Tone",
3103
+ /* @__PURE__ */ jsxs11(
3104
+ "select",
3105
+ {
3106
+ className: "orion-builder-settings-input",
3107
+ onChange: (event) => onUpdateItemField(itemIndex, "tone", event.target.value),
3108
+ value: normalizeText(item.tone, "warm"),
3109
+ children: [
3110
+ /* @__PURE__ */ jsx12("option", { value: "warm", children: "Warm" }),
3111
+ /* @__PURE__ */ jsx12("option", { value: "cool", children: "Cool" }),
3112
+ /* @__PURE__ */ jsx12("option", { value: "neutral", children: "Neutral" })
3113
+ ]
3114
+ }
3115
+ )
3116
+ ] }) : null,
3117
+ hasQueryMatch(normalizedQuery, "button", "cta", "link label") ? /* @__PURE__ */ jsxs11("label", { className: "orion-builder-settings-label", children: [
3118
+ "Button Label",
3119
+ /* @__PURE__ */ jsx12(
3120
+ "input",
3121
+ {
3122
+ className: "orion-builder-settings-input",
3123
+ onChange: (event) => onUpdateItemField(itemIndex, "buttonLabel", event.target.value),
3124
+ type: "text",
3125
+ value: normalizeText(item.buttonLabel)
3126
+ }
3127
+ )
3128
+ ] }) : null,
3129
+ hasQueryMatch(normalizedQuery, "button", "url", "href", "link") ? /* @__PURE__ */ jsxs11("label", { className: "orion-builder-settings-label", children: [
3130
+ "Button URL",
3131
+ /* @__PURE__ */ jsx12(
3132
+ "input",
3133
+ {
3134
+ className: "orion-builder-settings-input",
3135
+ onChange: (event) => onUpdateItemField(itemIndex, "buttonHref", event.target.value),
3136
+ type: "text",
3137
+ value: normalizeText(item.buttonHref)
3138
+ }
3139
+ )
3140
+ ] }) : null,
3141
+ hasQueryMatch(normalizedQuery, "embed", "map", "iframe", "url") ? /* @__PURE__ */ jsxs11("label", { className: "orion-builder-settings-label", children: [
3142
+ "Embed URL",
3143
+ /* @__PURE__ */ jsx12(
3144
+ "input",
3145
+ {
3146
+ className: "orion-builder-settings-input",
3147
+ onChange: (event) => onUpdateItemField(itemIndex, "embedURL", event.target.value),
3148
+ type: "text",
3149
+ value: normalizeText(item.embedURL)
3150
+ }
3151
+ )
3152
+ ] }) : null,
3153
+ hasQueryMatch(normalizedQuery, "bullets", "list", "points") ? /* @__PURE__ */ jsxs11("label", { className: "orion-builder-settings-label", children: [
3154
+ "Bullet Points",
3155
+ /* @__PURE__ */ jsx12(
3156
+ "textarea",
3157
+ {
3158
+ className: "orion-builder-settings-input is-textarea",
3159
+ onChange: (event) => onUpdateItemField(itemIndex, "bullets", textareaValueToBullets(event.target.value)),
3160
+ value: bulletsToTextareaValue(item.bullets)
3161
+ }
3162
+ )
3163
+ ] }) : null,
3077
3164
  /* @__PURE__ */ jsxs11("div", { className: "orion-builder-settings-note", children: [
3078
3165
  "Select this item and use the ",
3079
3166
  /* @__PURE__ */ jsx12("strong", { children: "Media" }),
@@ -1,3 +1,4 @@
1
- export { B as BuilderBlockSettingsV2, a as BuilderSettingsPanelMode, b as BuilderThemeTokenOverrides, c as BuilderThemeTokens, d as createDefaultStudioDocument, e as defaultBuilderThemeTokens, l as layoutToStudioDocument, p as pageInspectorPanels, f as pageNodeTypes, g as pagePaletteGroups, h as pageStudioModuleManifest, r as resolveBuilderThemeTokens, s as studioDocumentToLayout } from '../index-BiQ1tDJy.mjs';
2
- import '../index-BIwu3qIH.mjs';
1
+ export { B as BuilderBlock, a as BuilderBlockPreviewRenderArgs, b as BuilderBlockPreviewRenderer, c as BuilderBlockSettingsV2, d as BuilderInlineTextComponentProps, e as BuilderPreviewEditingHelpers, f as BuilderPreviewTextFieldOptions, g as BuilderRenderWithSectionShell, h as BuilderSettingsPanelMode, j as BuilderThemeTokenOverrides, k as BuilderThemeTokens, S as SectionPreset, l as createDefaultStudioDocument, m as defaultBuilderThemeTokens, n as layoutToStudioDocument, p as pageInspectorPanels, o as pageNodeTypes, q as pagePaletteGroups, r as pageStudioModuleManifest, s as resolveBuilderThemeTokens, t as studioDocumentToLayout } from '../index-DkmB6hR5.mjs';
2
+ import '../index-BzKOThsI.mjs';
3
+ import 'react';
3
4
  import 'payload';
@@ -1,3 +1,4 @@
1
- export { B as BuilderBlockSettingsV2, a as BuilderSettingsPanelMode, b as BuilderThemeTokenOverrides, c as BuilderThemeTokens, d as createDefaultStudioDocument, e as defaultBuilderThemeTokens, l as layoutToStudioDocument, p as pageInspectorPanels, f as pageNodeTypes, g as pagePaletteGroups, h as pageStudioModuleManifest, r as resolveBuilderThemeTokens, s as studioDocumentToLayout } from '../index-dLyj5OTW.js';
2
- import '../index-BIwu3qIH.js';
1
+ export { B as BuilderBlock, a as BuilderBlockPreviewRenderArgs, b as BuilderBlockPreviewRenderer, c as BuilderBlockSettingsV2, d as BuilderInlineTextComponentProps, e as BuilderPreviewEditingHelpers, f as BuilderPreviewTextFieldOptions, g as BuilderRenderWithSectionShell, h as BuilderSettingsPanelMode, j as BuilderThemeTokenOverrides, k as BuilderThemeTokens, S as SectionPreset, l as createDefaultStudioDocument, m as defaultBuilderThemeTokens, n as layoutToStudioDocument, p as pageInspectorPanels, o as pageNodeTypes, q as pagePaletteGroups, r as pageStudioModuleManifest, s as resolveBuilderThemeTokens, t as studioDocumentToLayout } from '../index-BHS4jJf8.js';
2
+ import '../index-BzKOThsI.js';
3
+ import 'react';
3
4
  import 'payload';
@@ -631,6 +631,7 @@ var inspectorDefinitionByBlockType = {
631
631
  faq: {
632
632
  blockType: "faq",
633
633
  fields: [
634
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
634
635
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
635
636
  ...layoutFieldSet,
636
637
  ...typographyFieldSet,
@@ -641,6 +642,7 @@ var inspectorDefinitionByBlockType = {
641
642
  featureGrid: {
642
643
  blockType: "featureGrid",
643
644
  fields: [
645
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
644
646
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
645
647
  {
646
648
  group: "basics",
@@ -648,7 +650,11 @@ var inspectorDefinitionByBlockType = {
648
650
  label: "Variant",
649
651
  options: [
650
652
  { label: "Cards", value: "cards" },
651
- { label: "Highlight", value: "highlight" }
653
+ { label: "Highlight", value: "highlight" },
654
+ { label: "Split List", value: "splitList" },
655
+ { label: "Panels", value: "panels" },
656
+ { label: "Catalog", value: "catalog" },
657
+ { label: "Contact Split", value: "contact" }
652
658
  ],
653
659
  type: "select"
654
660
  },
@@ -663,6 +669,7 @@ var inspectorDefinitionByBlockType = {
663
669
  formEmbed: {
664
670
  blockType: "formEmbed",
665
671
  fields: [
672
+ { group: "basics", inlineEditable: true, key: "eyebrow", label: "Eyebrow", type: "text" },
666
673
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
667
674
  { group: "basics", inlineEditable: true, key: "description", label: "Description", type: "textarea" },
668
675
  {
@@ -748,6 +755,16 @@ var inspectorDefinitionByBlockType = {
748
755
  richText: {
749
756
  blockType: "richText",
750
757
  fields: [
758
+ {
759
+ group: "basics",
760
+ key: "variant",
761
+ label: "Variant",
762
+ options: [
763
+ { label: "Default", value: "default" },
764
+ { label: "Quote Banner", value: "quoteBanner" }
765
+ ],
766
+ type: "select"
767
+ },
751
768
  { group: "basics", inlineEditable: true, key: "title", label: "Title", type: "text" },
752
769
  {
753
770
  group: "basics",
@@ -4,7 +4,7 @@ import {
4
4
  pagePaletteGroups,
5
5
  pageStudioModuleManifest,
6
6
  resolveBuilderThemeTokens
7
- } from "../chunk-BN3GGCI5.mjs";
7
+ } from "../chunk-3ZQZ2VW3.mjs";
8
8
  import "../chunk-WY7RQGSN.mjs";
9
9
  import {
10
10
  createDefaultStudioDocument,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orion-studios/payload-studio",
3
- "version": "0.5.0-beta.107",
3
+ "version": "0.5.0-beta.108",
4
4
  "description": "Unified Payload CMS toolkit for Orion Studios",
5
5
  "types": "./dist/index.d.ts",
6
6
  "main": "./dist/index.js",