@riverbankcms/sdk 0.102.0 → 0.104.0

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 (203) hide show
  1. package/README.md +10 -2
  2. package/dist/{PreviewEditorSidebar-BKkhhkJk.mjs → PreviewEditorSidebar-ywqcYjTB.mjs} +217 -131
  3. package/dist/{PreviewEditorUI-DIvTqcqI.mjs → PreviewEditorUI-DApUNF6g.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-ZF6TXq5Q.mjs → PreviewQueryProvider-CStABBUh.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-CA2k7Z_T.mjs → SdkPreviewModeRuntime-DmHCcIMO.mjs} +1738 -815
  6. package/dist/{SiteChromeCustomizeContext-Bh9-DtMQ.mjs → SiteChromeCustomizeContext-BV9GU-3C.mjs} +3517 -2524
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +298 -298
  8. package/dist/_dts/api/src/contentRuntime.d.ts +6 -3
  9. package/dist/_dts/api/src/endpoints.d.ts +10 -3
  10. package/dist/_dts/api/src/index.d.ts +2 -2
  11. package/dist/_dts/api/src/navigation/contracts.d.ts +6 -6
  12. package/dist/_dts/api/src/siteBanner.d.ts +2 -2
  13. package/dist/_dts/api/src/siteIcons.d.ts +39 -43
  14. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +3 -3
  15. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +36 -7
  16. package/dist/_dts/block-form/src/widgets/SliderField/SliderField.d.ts +3 -3
  17. package/dist/_dts/block-form/src/widgets/SliderField/sliderValue.d.ts +36 -0
  18. package/dist/_dts/block-form/src/widgets/utils/readNumericUiConfig.d.ts +3 -0
  19. package/dist/_dts/blocks/src/PageRenderer.d.ts +6 -1
  20. package/dist/_dts/blocks/src/bindings/index.d.ts +2 -2
  21. package/dist/_dts/blocks/src/index.d.ts +2 -2
  22. package/dist/_dts/blocks/src/server.d.ts +1 -1
  23. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +7 -7
  24. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +1 -1
  25. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +14 -14
  26. package/dist/_dts/blocks/src/system/blocks/feature-card-icons.d.ts +29 -29
  27. package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +1 -0
  28. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +8 -5
  29. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +362 -227
  30. package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +1 -1
  31. package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
  32. package/dist/_dts/blocks/src/system/customize/facets.d.ts +2 -2
  33. package/dist/_dts/blocks/src/system/icons/generatedAssets.d.ts +28 -0
  34. package/dist/_dts/blocks/src/system/icons/index.d.ts +1 -0
  35. package/dist/_dts/blocks/src/system/icons/value.d.ts +3 -6
  36. package/dist/_dts/blocks/src/system/inlineText.d.ts +2 -2
  37. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +417 -177
  38. package/dist/_dts/blocks/src/system/node/schema.d.ts +1 -1
  39. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +1 -1
  40. package/dist/_dts/blocks/src/system/runtime/nodes/feature-card-icon.d.ts +1 -0
  41. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +7 -7
  42. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -1
  43. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +2 -0
  44. package/dist/_dts/content-editor/src/ui/stores/generatedIconAssetsStore.d.ts +9 -0
  45. package/dist/_dts/content-model/src/content-types/schema.d.ts +8 -8
  46. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +344 -0
  47. package/dist/_dts/db/src/schemas/forms.d.ts +15 -15
  48. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +7 -0
  49. package/dist/_dts/editor-blocks/src/BlockForm.d.ts +2 -1
  50. package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +4 -4
  51. package/dist/_dts/editor-blocks/src/block-editor/BlockCardBody.d.ts +2 -3
  52. package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +4 -4
  53. package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +4 -4
  54. package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +3 -3
  55. package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -3
  56. package/dist/_dts/editor-blocks/src/block-editor/blockHeaderActionPlan.d.ts +1 -5
  57. package/dist/_dts/editor-blocks/src/block-editor/featureCardIconActions.d.ts +25 -19
  58. package/dist/_dts/editor-blocks/src/block-editor/generatedIconApplyCoordination.d.ts +32 -0
  59. package/dist/_dts/editor-blocks/src/widgets/icon-picker/GeneratedIconLibraryContext.d.ts +28 -0
  60. package/dist/_dts/editor-blocks/src/widgets/icon-picker/index.d.ts +2 -0
  61. package/dist/_dts/editor-blocks/src/widgets/icon-picker/loaders.d.ts +7 -0
  62. package/dist/_dts/preview-next/src/client/blocks/previewProjection/types.d.ts +2 -1
  63. package/dist/_dts/preview-next/src/client/preview/CustomizeBackgroundControlRows.d.ts +15 -0
  64. package/dist/_dts/preview-next/src/client/preview/CustomizeColorTokenPicker.d.ts +27 -0
  65. package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +2 -1
  66. package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +2 -1
  67. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +3 -1
  68. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +4 -3
  69. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +4 -3
  70. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +4 -3
  71. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +13 -6
  72. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +5 -4
  73. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +44 -18
  74. package/dist/_dts/preview-next/src/client/preview/sidebarTabPreference.d.ts +1 -1
  75. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +16 -1
  76. package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +3 -2
  77. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +4 -5
  78. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +22 -1
  79. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +12 -4
  80. package/dist/_dts/sdk/src/client/management/types.d.ts +3 -0
  81. package/dist/_dts/sdk/src/config/validation.d.ts +3 -3
  82. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  83. package/dist/_dts/sdk/src/contracts/page.d.ts +2 -0
  84. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +0 -1
  85. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +10 -10
  86. package/dist/_dts/sdk/src/next/revalidate.d.ts +14 -1
  87. package/dist/_dts/sdk/src/public-api/contracts.d.ts +9 -6
  88. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +2 -1
  89. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +3 -2
  90. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +3 -4
  91. package/dist/_dts/sdk/src/rendering/hooks/useContent.d.ts +1 -0
  92. package/dist/_dts/sdk/src/version.d.ts +1 -1
  93. package/dist/_dts/site-commands/src/commands.d.ts +19 -19
  94. package/dist/_dts/theme-core/src/accordions/types.d.ts +3 -3
  95. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +3 -3
  96. package/dist/_dts/theme-core/src/buttons/types.d.ts +7 -7
  97. package/dist/_dts/theme-core/src/cards/types.d.ts +6 -6
  98. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  99. package/dist/_dts/theme-core/src/inputs/types.d.ts +4 -4
  100. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +156 -150
  101. package/dist/_dts/theme-core/src/navigation/types.d.ts +8 -6
  102. package/dist/_dts/theme-core/src/palette/colors.d.ts +84 -0
  103. package/dist/_dts/theme-core/src/palette/{variants → curated}/brand-led.d.ts +12 -24
  104. package/dist/_dts/theme-core/src/palette/{variants → curated}/high-contrast.d.ts +9 -18
  105. package/dist/_dts/theme-core/src/palette/{variants → curated}/index.d.ts +67 -119
  106. package/dist/_dts/theme-core/src/palette/{variants → curated}/soft-natural.d.ts +12 -24
  107. package/dist/_dts/theme-core/src/palette/{variants → curated}/types.d.ts +52 -62
  108. package/dist/_dts/theme-core/src/palette/{variants → curated}/warm-dark.d.ts +6 -12
  109. package/dist/_dts/theme-core/src/palette/{variants → curated}/warm-neutral.d.ts +12 -24
  110. package/dist/_dts/theme-core/src/palette/editorState.d.ts +45 -0
  111. package/dist/_dts/theme-core/src/palette/index.d.ts +25 -14
  112. package/dist/_dts/theme-core/src/palette/legacyRuntimeProjection.d.ts +38 -0
  113. package/dist/_dts/theme-core/src/palette/legacySelection.d.ts +34 -0
  114. package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +58 -0
  115. package/dist/_dts/theme-core/src/palette/paletteCompatibilityTransition.d.ts +241 -0
  116. package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +118 -0
  117. package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +50 -0
  118. package/dist/_dts/theme-core/src/palette/selection.d.ts +72 -0
  119. package/dist/_dts/theme-core/src/palette/sitePalettePersistence.d.ts +34 -0
  120. package/dist/_dts/theme-core/src/palette/themePaletteCompatibility.d.ts +58 -0
  121. package/dist/_dts/theme-core/src/schema.d.ts +208 -169
  122. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  123. package/dist/_dts/theme-core/src/site-styles/contentTemplateRuntimeCompiler.d.ts +2 -1
  124. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +22 -22
  125. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +24 -24
  126. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
  127. package/dist/_dts/theme-core/src/site-styles/index.d.ts +2 -0
  128. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +35 -11
  129. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +48 -17
  130. package/dist/_dts/theme-core/src/site-styles/sectionTransitions.d.ts +77 -0
  131. package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +45 -0
  132. package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +1 -1
  133. package/dist/_dts/theme-core/src/site-styles/themeParity.d.ts +21 -0
  134. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
  135. package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +3 -3
  136. package/dist/_dts/ui/src/badge.d.ts +1 -1
  137. package/dist/_dts/ui/src/button.d.ts +1 -1
  138. package/dist/_dts/ui/src/card.d.ts +1 -1
  139. package/dist/_dts/ui/src/palette/PaletteTokenEditor.d.ts +2 -1
  140. package/dist/_dts/ui/src/toggle.d.ts +2 -2
  141. package/dist/cli/index.mjs +7815 -7445
  142. package/dist/cli/init-docs/content/workflow-isr-revalidation.md +9 -1
  143. package/dist/client/{DiscountCodeDisclosure-ChVZwVtS.mjs → DiscountCodeDisclosure-Dit2aItR.mjs} +1 -1
  144. package/dist/client/{EventCombined.client-PZtXbH6R.mjs → EventCombined.client-BnREyCjf.mjs} +3 -3
  145. package/dist/client/{EventListing.client-C4AMTXec.mjs → EventListing.client-0uHld51x.mjs} +2 -2
  146. package/dist/client/{LeafletStaticMap-B0w8_i0u.mjs → LeafletStaticMap-DJcvSfmj.mjs} +1 -1
  147. package/dist/client/{MagicLinkForm-DF0ZGhIu.mjs → MagicLinkForm-EAsIktfw.mjs} +2 -2
  148. package/dist/client/{StepIndicator-PccQ89Ct.mjs → StepIndicator-CRR17tYI.mjs} +2 -2
  149. package/dist/client/{accordion-CTNWT1lk.mjs → accordion-B47HIuuH.mjs} +1 -1
  150. package/dist/client/{bookingForm-DYixwPqP.mjs → bookingForm-I1E-8F9P.mjs} +6 -6
  151. package/dist/client/{buttons-CySQwlFs.mjs → buttons-BbPn8OKA.mjs} +1 -1
  152. package/dist/client/{carousel-W75iYR0M.mjs → carousel-OlM7SyBs.mjs} +1 -1
  153. package/dist/client/{cart-Ca_DGWQq.mjs → cart-BKpG5jz6.mjs} +3 -3
  154. package/dist/client/{checkout-STgKTsNh.mjs → checkout-Dmmr6qoU.mjs} +3 -3
  155. package/dist/client/client.mjs +9000 -8353
  156. package/dist/client/{courseRegistration-DQI1cu1u.mjs → courseRegistration-CflZiqGk.mjs} +7 -7
  157. package/dist/client/{eventCalendar-BJrHpofg.mjs → eventCalendar-BvoLWcp-.mjs} +5 -5
  158. package/dist/client/{eventCombined-DPtqBHaH.mjs → eventCombined-DsrO8t_t.mjs} +2 -2
  159. package/dist/client/{eventDetails-Brt31CDo.mjs → eventDetails-C3hxgcJm.mjs} +3 -3
  160. package/dist/client/{eventListing-BrClHJOq.mjs → eventListing-C-hb237X.mjs} +2 -2
  161. package/dist/client/{eventRegistration-DxlNlVUC.mjs → eventRegistration-B0gyzDGi.mjs} +7 -7
  162. package/dist/client/{form-Vp5cGzDF.mjs → form-C_RUi6oJ.mjs} +2 -2
  163. package/dist/client/{headerSection-DL2xjRgW.mjs → headerSection-IKQiD2U0.mjs} +3 -3
  164. package/dist/client/hooks.mjs +4792 -4606
  165. package/dist/client/{locationMap-B0EjoXQS.mjs → locationMap-8ZBrMzRJ.mjs} +2 -2
  166. package/dist/client/{newsletterForm-BlV9VRlq.mjs → newsletterForm-CYk3ucwj.mjs} +2 -2
  167. package/dist/client/{pricing-DmRD7Tjx.mjs → pricing-B5GmvfIH.mjs} +1 -1
  168. package/dist/client/{productDetail-BLTQsY2f.mjs → productDetail-BjS2Dqzo.mjs} +3 -3
  169. package/dist/client/{productList-R8lsMpRs.mjs → productList-BOHvC8My.mjs} +3 -3
  170. package/dist/client/{propsDecoder-DgAshF92.mjs → propsDecoder-WS6UEJwZ.mjs} +7 -0
  171. package/dist/client/rendering/client.mjs +3565 -3218
  172. package/dist/client/rendering/islands.mjs +18 -18
  173. package/dist/client/rendering.mjs +8919 -8279
  174. package/dist/client/{shop-DWjyje1s.mjs → shop-CON03-wN.mjs} +6 -6
  175. package/dist/client/{shop-commerce-CSKCR87d.mjs → shop-commerce-DlqrFgH8.mjs} +5 -5
  176. package/dist/client/{shop-commerce-store-DxPnE-iN.mjs → shop-commerce-store-l74-Kne6.mjs} +1 -1
  177. package/dist/client/{shopShared-OOeAkFq7.mjs → shopShared-CQheEXSg.mjs} +2 -2
  178. package/dist/client/{useDiscountCodeUi-Bp6X7XgG.mjs → useDiscountCodeUi-v6OluyWl.mjs} +1 -1
  179. package/dist/client/{useEventFilters-B489x9TO.mjs → useEventFilters-BqSTcNOf.mjs} +3 -3
  180. package/dist/client/{usePolling-BKP66stL.mjs → usePolling-DMfADjIF.mjs} +2 -2
  181. package/dist/preview-next/before-render.mjs +10 -3
  182. package/dist/preview-next/client/runtime.mjs +4 -4
  183. package/dist/preview-next/middleware.mjs +10 -3
  184. package/dist/{previewAuthStore-ByPPZqmp.mjs → previewAuthStore-CfquDtTh.mjs} +10 -3
  185. package/dist/{sdk-runtime-K8Oqj97H.mjs → sdk-runtime-DWb08Xaz.mjs} +2 -2
  186. package/dist/{separator-CRoP34pT.mjs → separator--6yjc914.mjs} +1 -1
  187. package/dist/server/components.mjs +10183 -9621
  188. package/dist/server/config-validation.mjs +4871 -4686
  189. package/dist/server/config.mjs +4871 -4686
  190. package/dist/server/data.mjs +4848 -4663
  191. package/dist/server/index.mjs +11 -4
  192. package/dist/server/next/revalidate.mjs +31 -1
  193. package/dist/server/next.mjs +9894 -9322
  194. package/dist/server/page-converter.mjs +4758 -4573
  195. package/dist/server/prebuild.mjs +1 -1
  196. package/dist/server/rendering/server.mjs +10099 -9619
  197. package/dist/server/rendering.mjs +10195 -9631
  198. package/dist/server/routing.mjs +4985 -4701
  199. package/dist/server/server.mjs +4823 -4629
  200. package/dist/server/theme-bridge.mjs +360 -146
  201. package/dist/server/theme.mjs +94 -91
  202. package/dist/styles/index.css +143 -30
  203. package/package.json +1 -1
@@ -121,9 +121,9 @@ export declare const bookingQuestionsFormSettingsSchema: z.ZodObject<{
121
121
  }, z.core.$strict>>;
122
122
  audienceHint: z.ZodOptional<z.ZodEnum<{
123
123
  mixed: "mixed";
124
+ appointments: "appointments";
124
125
  courses: "courses";
125
126
  events: "events";
126
- appointments: "appointments";
127
127
  }>>;
128
128
  customerTitle: z.ZodOptional<z.ZodString>;
129
129
  introTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -217,9 +217,9 @@ export declare const formSettingsSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
217
217
  }, z.core.$strict>>;
218
218
  audienceHint: z.ZodOptional<z.ZodEnum<{
219
219
  mixed: "mixed";
220
+ appointments: "appointments";
220
221
  courses: "courses";
221
222
  events: "events";
222
- appointments: "appointments";
223
223
  }>>;
224
224
  customerTitle: z.ZodOptional<z.ZodString>;
225
225
  introTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -320,9 +320,9 @@ export declare const formSettingsInputSchema: z.ZodDiscriminatedUnion<[z.ZodObje
320
320
  }, z.core.$strict>>;
321
321
  audienceHint: z.ZodOptional<z.ZodEnum<{
322
322
  mixed: "mixed";
323
+ appointments: "appointments";
323
324
  courses: "courses";
324
325
  events: "events";
325
- appointments: "appointments";
326
326
  }>>;
327
327
  customerTitle: z.ZodOptional<z.ZodString>;
328
328
  introTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -370,8 +370,8 @@ export declare const formFieldSchema: z.ZodObject<{
370
370
  checkbox: "checkbox";
371
371
  radio: "radio";
372
372
  url: "url";
373
- tel: "tel";
374
373
  consent: "consent";
374
+ tel: "tel";
375
375
  }>;
376
376
  required: z.ZodDefault<z.ZodBoolean>;
377
377
  placeholder: z.ZodOptional<z.ZodString>;
@@ -394,8 +394,8 @@ export declare const formFieldSchema: z.ZodObject<{
394
394
  }, z.core.$strict>>;
395
395
  }, z.core.$strict>;
396
396
  export declare const bookingQuestionDocumentFileTypeSchema: z.ZodEnum<{
397
- image: "image";
398
397
  pdf: "pdf";
398
+ image: "image";
399
399
  docx: "docx";
400
400
  }>;
401
401
  declare const bookingQuestionScalarFieldSchema: z.ZodObject<{
@@ -448,8 +448,8 @@ declare const bookingQuestionDocumentUploadFieldSchema: z.ZodObject<{
448
448
  }>>;
449
449
  }, z.core.$strict>>;
450
450
  allowedFileTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
451
- image: "image";
452
451
  pdf: "pdf";
452
+ image: "image";
453
453
  docx: "docx";
454
454
  }>>>;
455
455
  maxBytes: z.ZodDefault<z.ZodNumber>;
@@ -503,8 +503,8 @@ export declare const bookingQuestionFieldSchema: z.ZodDiscriminatedUnion<[z.ZodO
503
503
  }>>;
504
504
  }, z.core.$strict>>;
505
505
  allowedFileTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
506
- image: "image";
507
506
  pdf: "pdf";
507
+ image: "image";
508
508
  docx: "docx";
509
509
  }>>>;
510
510
  maxBytes: z.ZodDefault<z.ZodNumber>;
@@ -562,8 +562,8 @@ export declare const bookingQuestionsSectionSchema: z.ZodObject<{
562
562
  }>>;
563
563
  }, z.core.$strict>>;
564
564
  allowedFileTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
565
- image: "image";
566
565
  pdf: "pdf";
566
+ image: "image";
567
567
  docx: "docx";
568
568
  }>>>;
569
569
  maxBytes: z.ZodDefault<z.ZodNumber>;
@@ -624,8 +624,8 @@ export declare const bookingQuestionsDetailedSchemaSchema: z.ZodObject<{
624
624
  }>>;
625
625
  }, z.core.$strict>>;
626
626
  allowedFileTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
627
- image: "image";
628
627
  pdf: "pdf";
628
+ image: "image";
629
629
  docx: "docx";
630
630
  }>>>;
631
631
  maxBytes: z.ZodDefault<z.ZodNumber>;
@@ -652,8 +652,8 @@ export declare const formSchemaSchema: z.ZodObject<{
652
652
  checkbox: "checkbox";
653
653
  radio: "radio";
654
654
  url: "url";
655
- tel: "tel";
656
655
  consent: "consent";
656
+ tel: "tel";
657
657
  }>;
658
658
  required: z.ZodDefault<z.ZodBoolean>;
659
659
  placeholder: z.ZodOptional<z.ZodString>;
@@ -727,8 +727,8 @@ export declare const bookingQuestionsFlatSchemaSchema: z.ZodObject<{
727
727
  }>>;
728
728
  }, z.core.$strict>>;
729
729
  allowedFileTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
730
- image: "image";
731
730
  pdf: "pdf";
731
+ image: "image";
732
732
  docx: "docx";
733
733
  }>>>;
734
734
  maxBytes: z.ZodDefault<z.ZodNumber>;
@@ -785,8 +785,8 @@ export declare const bookingQuestionsStoredSchemaSchema: z.ZodUnion<readonly [z.
785
785
  }>>;
786
786
  }, z.core.$strict>>;
787
787
  allowedFileTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
788
- image: "image";
789
788
  pdf: "pdf";
789
+ image: "image";
790
790
  docx: "docx";
791
791
  }>>>;
792
792
  maxBytes: z.ZodDefault<z.ZodNumber>;
@@ -846,8 +846,8 @@ export declare const bookingQuestionsStoredSchemaSchema: z.ZodUnion<readonly [z.
846
846
  }>>;
847
847
  }, z.core.$strict>>;
848
848
  allowedFileTypes: z.ZodDefault<z.ZodArray<z.ZodEnum<{
849
- image: "image";
850
849
  pdf: "pdf";
850
+ image: "image";
851
851
  docx: "docx";
852
852
  }>>>;
853
853
  maxBytes: z.ZodDefault<z.ZodNumber>;
@@ -906,8 +906,8 @@ export declare const createFormPayloadSchema: z.ZodObject<{
906
906
  checkbox: "checkbox";
907
907
  radio: "radio";
908
908
  url: "url";
909
- tel: "tel";
910
909
  consent: "consent";
910
+ tel: "tel";
911
911
  }>;
912
912
  required: z.ZodDefault<z.ZodBoolean>;
913
913
  placeholder: z.ZodOptional<z.ZodString>;
@@ -1016,9 +1016,9 @@ export declare const createFormPayloadSchema: z.ZodObject<{
1016
1016
  }, z.core.$strict>>;
1017
1017
  audienceHint: z.ZodOptional<z.ZodEnum<{
1018
1018
  mixed: "mixed";
1019
+ appointments: "appointments";
1019
1020
  courses: "courses";
1020
1021
  events: "events";
1021
- appointments: "appointments";
1022
1022
  }>>;
1023
1023
  customerTitle: z.ZodOptional<z.ZodString>;
1024
1024
  introTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -30,12 +30,19 @@ type UiState = {
30
30
  history: {
31
31
  applyCommand?: (command: EditorStructuralCommand) => void;
32
32
  };
33
+ generatedIconAssets: {
34
+ setForBlock: (blockId: Parameters<DraftsSlice['setAtPath']>[0], assets: readonly import('../../blocks/src/system/icons/index').GeneratedBlockIconRenderAssetInput[]) => void;
35
+ };
36
+ autosave: {
37
+ saveNow: (types: 'blocks'[]) => void;
38
+ };
33
39
  drafts: DraftsSlice & {
34
40
  setFailed?: (blockId: Parameters<DraftsSlice['autosaveFailed']>[0], message?: string) => void;
35
41
  };
36
42
  };
37
43
  export type BlockEditorProps = {
38
44
  siteId: string;
45
+ dashboardBaseUrl?: string | null;
39
46
  owner: BlockEditorOwner;
40
47
  blocks: BlockItem[];
41
48
  recoveryConflictBlockIds?: readonly string[];
@@ -4,7 +4,8 @@ import type { BlockManifest, Theme } from '../../blocks/src/index';
4
4
  import { type PageDesignEditorBlock } from '../../theme-core/src/site-styles/index';
5
5
  import { type EditorBlockId } from '../../core/src/index';
6
6
  import type { ArrayKeysManager, DraftsSlice, UiStore as BlockEditorUiStore } from './block-editor/types';
7
- export type BlockFormUiStoreState = {
7
+ import type { GeneratedIconApplyState } from './block-editor/generatedIconApplyCoordination';
8
+ export type BlockFormUiStoreState = GeneratedIconApplyState & {
8
9
  setActivePreviewField: (field: {
9
10
  kind: 'block';
10
11
  blockId: EditorBlockId;
@@ -8,8 +8,9 @@ import type { Theme } from '../../../blocks/src/index';
8
8
  import type { SiteIconStyleGuideVersionId } from '../../../blocks/src/index';
9
9
  import { type BlockActionPresentation } from './actionPresentation';
10
10
  import { type ReorderControlMode } from './reorderControlMode';
11
- import type { GeneratedIconSetGenerateInput, GeneratedIconSetGenerateResult, GeneratedIconSetPreview } from './GeneratedIconSetDialog';
11
+ import type { GeneratedIconSetGenerateInput, GeneratedIconSetGenerateResult } from './GeneratedIconSetDialog';
12
12
  import type { ArrayKeysManager, BlockFocusRequest, BlockItem, UiStore, DraftsSlice, UiSlice } from './types';
13
+ import type { GeneratedIconApplyState } from './generatedIconApplyCoordination';
13
14
  /** Drag listener props from dnd-kit */
14
15
  type DragListeners = SyntheticListenerMap | undefined;
15
16
  type BlockCardStore = UiStore<Pick<UiSlice, 'activeBlockId' | 'setActiveBlockId' | 'setActivePreviewField'> & {
@@ -21,8 +22,8 @@ type BlockCardStore = UiStore<Pick<UiSlice, 'activeBlockId' | 'setActiveBlockId'
21
22
  };
22
23
  drafts: Pick<DraftsSlice, 'getBlockSnapshot' | 'getCurrentValues' | 'getAtPath' | 'setAtPath' | 'edit' | 'initNewBlock' | 'updateBlockBaseline' | 'clearError'>;
23
24
  arrayKeys: ArrayKeysManager;
24
- }>;
25
- export declare function BlockCard({ siteId, block, manifest, isFirst, isLast, isMoving, onMove, onDuplicate, onDelete, dragListeners, canReorder, collapsed, onCollapsedChange, highlighted, hasRecoveryConflict, focusSignal, onFocusHandled, onBlockSave, theme, widgetOverrides, uiStore, hideThemeV2RawStyleFields, pageDesignBlock, reorderControlMode, actionPresentation, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, onApplyGeneratedIconSet, }: {
25
+ } & GeneratedIconApplyState>;
26
+ export declare function BlockCard({ siteId, block, manifest, isFirst, isLast, isMoving, onMove, onDuplicate, onDelete, dragListeners, canReorder, collapsed, onCollapsedChange, highlighted, hasRecoveryConflict, focusSignal, onFocusHandled, onBlockSave, theme, widgetOverrides, uiStore, hideThemeV2RawStyleFields, pageDesignBlock, reorderControlMode, actionPresentation, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, }: {
26
27
  siteId: string;
27
28
  block: BlockItem;
28
29
  manifest: SystemBlockDefinition['manifest'];
@@ -52,6 +53,5 @@ export declare function BlockCard({ siteId, block, manifest, isFirst, isLast, is
52
53
  iconStyleGuideSummary?: string | null;
53
54
  iconStyleGuideEditHref?: string | null;
54
55
  onGenerateIconSet?: (input: GeneratedIconSetGenerateInput) => Promise<GeneratedIconSetGenerateResult>;
55
- onApplyGeneratedIconSet?: (preview: GeneratedIconSetPreview) => GeneratedIconSetPreview | void | Promise<GeneratedIconSetPreview | void>;
56
56
  }): import("react").JSX.Element;
57
57
  export {};
@@ -5,8 +5,8 @@ import type { ComponentProps } from 'react';
5
5
  import type { BlockItem, BlockFocusRequest } from './types';
6
6
  import type { FieldWidgetComponent } from '../../../block-form/src/client/index';
7
7
  import type { SiteIconStyleGuideVersionId } from '../../../blocks/src/index';
8
- import type { GeneratedIconSetGenerateInput, GeneratedIconSetGenerateResult, GeneratedIconSetPreview } from './GeneratedIconSetDialog';
9
- export declare function BlockCardBody({ siteId, block, manifest, uiStore, hasRecoveryConflict, focusSignal, onFocusHandled, onBlockSave, theme, widgetOverrides, hideThemeV2RawStyleFields, pageDesignBlock, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, onApplyGeneratedIconSet, }: {
8
+ import type { GeneratedIconSetGenerateInput, GeneratedIconSetGenerateResult } from './GeneratedIconSetDialog';
9
+ export declare function BlockCardBody({ siteId, block, manifest, uiStore, hasRecoveryConflict, focusSignal, onFocusHandled, onBlockSave, theme, widgetOverrides, hideThemeV2RawStyleFields, pageDesignBlock, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, }: {
10
10
  siteId: string;
11
11
  block: BlockItem;
12
12
  manifest: SystemBlockDefinition['manifest'];
@@ -23,5 +23,4 @@ export declare function BlockCardBody({ siteId, block, manifest, uiStore, hasRec
23
23
  iconStyleGuideSummary?: string | null;
24
24
  iconStyleGuideEditHref?: string | null;
25
25
  onGenerateIconSet?: (input: GeneratedIconSetGenerateInput) => Promise<GeneratedIconSetGenerateResult>;
26
- onApplyGeneratedIconSet?: (preview: GeneratedIconSetPreview) => GeneratedIconSetPreview | void | Promise<GeneratedIconSetPreview | void>;
27
26
  }): import("react").JSX.Element;
@@ -4,14 +4,15 @@ import { type SiteIconStyleGuideVersionId, type SystemBlockDefinition, type Them
4
4
  import { type BlockActionPresentation } from './actionPresentation';
5
5
  import type { ReorderControlMode } from './reorderControlMode';
6
6
  import type { BlockItem, UiStore, DraftsSlice, ArrayKeysManager } from './types';
7
- import { type GeneratedIconSetGenerateInput, type GeneratedIconSetGenerateResult, type GeneratedIconSetPreview } from './GeneratedIconSetDialog';
7
+ import { type GeneratedIconSetGenerateInput, type GeneratedIconSetGenerateResult } from './GeneratedIconSetDialog';
8
+ import { type GeneratedIconApplyState } from './generatedIconApplyCoordination';
8
9
  /** Drag listener props from dnd-kit */
9
10
  type DragListeners = SyntheticListenerMap | undefined;
10
- type BlockCardHeaderStore = UiStore<{
11
+ type BlockCardHeaderStore = UiStore<GeneratedIconApplyState & {
11
12
  drafts: Pick<DraftsSlice, 'getBlockSnapshot' | 'getCurrentValues' | 'initNewBlock' | 'updateBlockBaseline' | 'clearError' | 'setAtPath' | 'getAtPath'>;
12
13
  arrayKeys: ArrayKeysManager;
13
14
  }>;
14
- export declare function BlockCardHeader({ block, manifest, isFirst, isLast, isMoving, onMove, onDuplicate, onDelete, dragListeners, canReorder, collapsed, onToggleCollapsed, contentId, uiStore, widgetOverrides, theme, hideThemeV2RawStyleFields, reorderControlMode, actionPresentation, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, onApplyGeneratedIconSet, }: {
15
+ export declare function BlockCardHeader({ block, manifest, isFirst, isLast, isMoving, onMove, onDuplicate, onDelete, dragListeners, canReorder, collapsed, onToggleCollapsed, contentId, uiStore, widgetOverrides, theme, hideThemeV2RawStyleFields, reorderControlMode, actionPresentation, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, }: {
15
16
  block: BlockItem;
16
17
  manifest: SystemBlockDefinition['manifest'];
17
18
  isFirst: boolean;
@@ -36,6 +37,5 @@ export declare function BlockCardHeader({ block, manifest, isFirst, isLast, isMo
36
37
  iconStyleGuideSummary?: string | null;
37
38
  iconStyleGuideEditHref?: string | null;
38
39
  onGenerateIconSet?: (input: GeneratedIconSetGenerateInput) => Promise<GeneratedIconSetGenerateResult>;
39
- onApplyGeneratedIconSet?: (preview: GeneratedIconSetPreview) => GeneratedIconSetPreview | void | Promise<GeneratedIconSetPreview | void>;
40
40
  }): import("react").JSX.Element;
41
41
  export {};
@@ -1,17 +1,17 @@
1
1
  import type { SiteIconStyleGuideVersionId } from '../../../blocks/src/index';
2
2
  import type { BlockItem, DraftsSlice, UiStore } from './types';
3
- import { type GeneratedIconSetGenerateInput, type GeneratedIconSetGenerateResult, type GeneratedIconSetPreview } from './GeneratedIconSetDialog';
4
- type FeatureCardIconsPanelStore = UiStore<{
3
+ import { type GeneratedIconSetGenerateInput, type GeneratedIconSetGenerateResult } from './GeneratedIconSetDialog';
4
+ import { type GeneratedIconApplyState } from './generatedIconApplyCoordination';
5
+ type FeatureCardIconsPanelStore = UiStore<GeneratedIconApplyState & {
5
6
  drafts: Pick<DraftsSlice, 'getCurrentValues' | 'setAtPath'>;
6
7
  }>;
7
8
  export declare function supportsFeatureCardIconActions(blockKind: string): boolean;
8
- export declare function FeatureCardIconsPanel({ block, uiStore, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, onApplyGeneratedIconSet, }: {
9
+ export declare function FeatureCardIconsPanel({ block, uiStore, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, }: {
9
10
  block: BlockItem;
10
11
  uiStore: FeatureCardIconsPanelStore;
11
12
  currentStyleGuideVersionId?: SiteIconStyleGuideVersionId | null;
12
13
  iconStyleGuideSummary?: string | null;
13
14
  iconStyleGuideEditHref?: string | null;
14
15
  onGenerateIconSet?: (input: GeneratedIconSetGenerateInput) => Promise<GeneratedIconSetGenerateResult>;
15
- onApplyGeneratedIconSet?: (preview: GeneratedIconSetPreview) => GeneratedIconSetPreview | void | Promise<GeneratedIconSetPreview | void>;
16
16
  }): import("react").JSX.Element | null;
17
17
  export {};
@@ -1,16 +1,16 @@
1
1
  import { type GeneratedBlockIconValue } from '../../../blocks/src/index';
2
- import type { GeneratedIconSetCandidate } from '../../../api/src/index';
3
- import type { FeatureCardIconDialogCard } from './featureCardIconActions';
2
+ import type { GeneratedIconRenderAsset } from '../../../api/src/index';
3
+ import { type FeatureCardIconDialogCard } from './featureCardIconActions';
4
4
  export type GeneratedIconSetPreviewAsset = Readonly<{
5
5
  cardKey: string;
6
6
  title: string;
7
7
  src: string;
8
8
  iconValue: GeneratedBlockIconValue;
9
+ renderAsset: GeneratedIconRenderAsset | null;
9
10
  }>;
10
11
  export type GeneratedIconSetPreview = Readonly<{
11
12
  setId: string;
12
13
  styleGuideSummary: string;
13
- candidate?: GeneratedIconSetCandidate;
14
14
  assets: readonly GeneratedIconSetPreviewAsset[];
15
15
  }>;
16
16
  export type GeneratedIconSetGenerateResult = Readonly<{
@@ -7,8 +7,8 @@ import { BlockCard } from './BlockCard';
7
7
  import type { FieldWidgetComponent } from '../../../block-form/src/client/index';
8
8
  import { type BlockActionPresentation } from './actionPresentation';
9
9
  import { type ReorderControlMode } from './reorderControlMode';
10
- import type { GeneratedIconSetGenerateInput, GeneratedIconSetGenerateResult, GeneratedIconSetPreview } from './GeneratedIconSetDialog';
11
- export declare const SortableBlockItem: import("react").MemoExoticComponent<({ siteId, block, onMove, onDuplicate, onDelete, isFirst, isLast, isMoving, isDraggable, collapsed, onCollapsedChange, highlighted, hasRecoveryConflict, focusSignal, onFocusHandled, onBlockSave, theme, widgetOverrides, uiStore, sdkConfig, customBlocks, hideThemeV2RawStyleFields, pageDesignBlock, reorderControlMode, actionPresentation, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, onApplyGeneratedIconSet, }: {
10
+ import type { GeneratedIconSetGenerateInput, GeneratedIconSetGenerateResult } from './GeneratedIconSetDialog';
11
+ export declare const SortableBlockItem: import("react").MemoExoticComponent<({ siteId, block, onMove, onDuplicate, onDelete, isFirst, isLast, isMoving, isDraggable, collapsed, onCollapsedChange, highlighted, hasRecoveryConflict, focusSignal, onFocusHandled, onBlockSave, theme, widgetOverrides, uiStore, sdkConfig, customBlocks, hideThemeV2RawStyleFields, pageDesignBlock, reorderControlMode, actionPresentation, currentStyleGuideVersionId, iconStyleGuideSummary, iconStyleGuideEditHref, onGenerateIconSet, }: {
12
12
  siteId: string;
13
13
  block: BlockItem;
14
14
  onMove: (blockId: string, direction: number) => void;
@@ -38,5 +38,4 @@ export declare const SortableBlockItem: import("react").MemoExoticComponent<({ s
38
38
  iconStyleGuideSummary?: string | null;
39
39
  iconStyleGuideEditHref?: string | null;
40
40
  onGenerateIconSet?: (input: GeneratedIconSetGenerateInput) => Promise<GeneratedIconSetGenerateResult>;
41
- onApplyGeneratedIconSet?: (preview: GeneratedIconSetPreview) => GeneratedIconSetPreview | void | Promise<GeneratedIconSetPreview | void>;
42
41
  }) => import("react").JSX.Element>;
@@ -9,9 +9,6 @@ export type BlockHeaderCustomizeAction = Readonly<{
9
9
  blockId: EditorBlockId;
10
10
  }>;
11
11
  export type BlockHeaderMenuAction = BlockHeaderCustomizeAction | Readonly<{
12
- kind: 'suggest-icons';
13
- disabled: boolean;
14
- }> | Readonly<{
15
12
  kind: 'generated-icon-set';
16
13
  disabled: boolean;
17
14
  stale: boolean;
@@ -37,7 +34,6 @@ export type DeriveBlockHeaderActionPlanInput = Readonly<{
37
34
  blockId: EditorBlockId | null;
38
35
  settingsAvailable: boolean;
39
36
  featureCardIconActionsAvailable: boolean;
40
- featureCardIconsComplete: boolean;
41
37
  generatedIconSetActionsAvailable: boolean;
42
38
  hasStaleGeneratedIcons: boolean;
43
39
  featureCardIconDialogCardsCount: number;
@@ -46,4 +42,4 @@ export type DeriveBlockHeaderActionPlanInput = Readonly<{
46
42
  deleteAvailable: boolean;
47
43
  deleteDisabled: boolean;
48
44
  }>;
49
- export declare function deriveBlockHeaderActionPlan({ actionPresentation, blockId, settingsAvailable, featureCardIconActionsAvailable, featureCardIconsComplete, generatedIconSetActionsAvailable, hasStaleGeneratedIcons, featureCardIconDialogCardsCount, duplicateAvailable, duplicateDisabled, deleteAvailable, deleteDisabled, }: DeriveBlockHeaderActionPlanInput): BlockHeaderActionPlan;
45
+ export declare function deriveBlockHeaderActionPlan({ actionPresentation, blockId, settingsAvailable, featureCardIconActionsAvailable, generatedIconSetActionsAvailable, hasStaleGeneratedIcons, featureCardIconDialogCardsCount, duplicateAvailable, duplicateDisabled, deleteAvailable, deleteDisabled, }: DeriveBlockHeaderActionPlanInput): BlockHeaderActionPlan;
@@ -1,20 +1,7 @@
1
- import { applyFeatureCardIconSuggestions, type GeneratedBlockIconValue, type FeatureCardIconInputContent, type SemanticIconId, type SiteIconStyleGuideVersionId } from '../../../blocks/src/index';
1
+ import { type GeneratedBlockIconValue, type GeneratedIconAssetId, type FeatureCardIconInputContent, type SemanticIconId, type SiteIconStyleGuideVersionId } from '../../../blocks/src/index';
2
2
  import { type EditorBlockId } from '../../../core/src/index';
3
3
  import type { DraftsSlice } from './types';
4
4
  type FeatureCardIconActionDrafts = Pick<DraftsSlice, 'setAtPath'>;
5
- export type FeatureCardIconActionResult = {
6
- kind: 'applied';
7
- appliedCount: number;
8
- } | {
9
- kind: 'no_cards';
10
- } | {
11
- kind: 'complete';
12
- } | {
13
- kind: 'plan_failed';
14
- reason: Exclude<ReturnType<typeof applyFeatureCardIconSuggestions>['kind'], 'applied'>;
15
- cardKey?: string;
16
- iconId?: string;
17
- };
18
5
  export type FeatureCardGeneratedIconSetAssetInput = Readonly<{
19
6
  cardKey: string;
20
7
  iconValue: unknown;
@@ -55,6 +42,30 @@ export type FeatureCardIconDialogCard = Readonly<{
55
42
  bodyText: string;
56
43
  semanticIconId: SemanticIconId;
57
44
  }>;
45
+ export type GeneratedIconSetCompatibility = Readonly<{
46
+ kind: 'exact_match';
47
+ }> | Readonly<{
48
+ kind: 'key_match_content_changed';
49
+ }> | Readonly<{
50
+ kind: 'set_incomplete';
51
+ unavailableAssetIds: readonly GeneratedIconAssetId[];
52
+ }> | Readonly<{
53
+ kind: 'structural_mismatch';
54
+ }> | Readonly<{
55
+ kind: 'source_metadata_unavailable';
56
+ }>;
57
+ type GeneratedIconSetSourceCard = Readonly<{
58
+ cardKey: string;
59
+ title: string;
60
+ bodyText: string;
61
+ semanticIconId: string;
62
+ }>;
63
+ export declare function planGeneratedIconSetCompatibility(input: Readonly<{
64
+ sourceFingerprintVersion: number | null;
65
+ sourceCards: readonly GeneratedIconSetSourceCard[] | null;
66
+ currentCards: readonly FeatureCardIconDialogCard[];
67
+ unavailableAssetIds: readonly GeneratedIconAssetId[];
68
+ }>): GeneratedIconSetCompatibility;
58
69
  export type FeatureCardGeneratedIconStyleSummary = Readonly<{
59
70
  kind: 'unavailable';
60
71
  }> | Readonly<{
@@ -67,11 +78,6 @@ export declare function getFeatureCards(content: Record<string, unknown> | null
67
78
  export declare function getFeatureCardIconStatus(content: Record<string, unknown> | null | undefined): import("../../../blocks/src/index").FeatureCardIconCompletion;
68
79
  export declare function getFeatureCardIconDialogCards(content: Record<string, unknown> | null | undefined): readonly FeatureCardIconDialogCard[];
69
80
  export declare function getFeatureCardGeneratedIconStyleSummary(content: Record<string, unknown> | null | undefined, currentStyleGuideVersionId: SiteIconStyleGuideVersionId | null | undefined): FeatureCardGeneratedIconStyleSummary;
70
- export declare function applyCuratedFeatureCardIconSuggestions({ blockId, content, drafts, }: {
71
- blockId: EditorBlockId;
72
- content: Record<string, unknown> | null | undefined;
73
- drafts: FeatureCardIconActionDrafts;
74
- }): FeatureCardIconActionResult;
75
81
  export declare function planGeneratedFeatureCardIconSetApply(cards: readonly FeatureCardIconInputContent[], assets: readonly FeatureCardGeneratedIconSetAssetInput[]): FeatureCardGeneratedIconSetApplyPlan;
76
82
  export declare function applyGeneratedFeatureCardIconSet({ blockId, content, drafts, assets, }: {
77
83
  blockId: EditorBlockId;
@@ -0,0 +1,32 @@
1
+ import { type GeneratedBlockIconRenderAssetInput } from '../../../blocks/src/system/icons/index';
2
+ import type { EditorBlockId } from '../../../core/src/index';
3
+ import type { DraftsSlice, UiStore } from './types';
4
+ import { type FeatureCardGeneratedIconSetActionResult } from './featureCardIconActions';
5
+ import type { GeneratedIconSetPreview } from './GeneratedIconSetDialog';
6
+ export type GeneratedIconApplyState = {
7
+ drafts: Pick<DraftsSlice, 'setAtPath'>;
8
+ generatedIconAssets: {
9
+ setForBlock: (blockId: EditorBlockId, assets: readonly GeneratedBlockIconRenderAssetInput[]) => void;
10
+ };
11
+ autosave: {
12
+ saveNow: (types: 'blocks'[]) => void;
13
+ blocks?: Readonly<{
14
+ status: 'idle' | 'saving' | 'success' | 'error';
15
+ lastSavedAt: string | null;
16
+ hasFailedSaves: boolean;
17
+ }>;
18
+ };
19
+ };
20
+ export type GeneratedIconApplyStore = UiStore<GeneratedIconApplyState>;
21
+ export type CoordinatedGeneratedIconApplyResult = FeatureCardGeneratedIconSetActionResult | Readonly<{
22
+ kind: 'invalid_render_asset';
23
+ cardKey: string;
24
+ }> | Readonly<{
25
+ kind: 'autosave_failed';
26
+ }>;
27
+ export declare function applyGeneratedIconSetToEditor({ blockId, content, preview, uiStore, }: {
28
+ blockId: EditorBlockId;
29
+ content: Record<string, unknown> | null | undefined;
30
+ preview: GeneratedIconSetPreview;
31
+ uiStore: GeneratedIconApplyStore;
32
+ }): Promise<CoordinatedGeneratedIconApplyResult>;
@@ -0,0 +1,28 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { GeneratedIconLibrarySet } from '../../../../api/src/index';
3
+ export type GeneratedIconLibraryLoadState = Readonly<{
4
+ kind: 'loading';
5
+ sets: readonly GeneratedIconLibrarySet[];
6
+ nextCursor: string | null;
7
+ }> | Readonly<{
8
+ kind: 'loading_more';
9
+ sets: readonly GeneratedIconLibrarySet[];
10
+ nextCursor: string;
11
+ }> | Readonly<{
12
+ kind: 'ready';
13
+ sets: readonly GeneratedIconLibrarySet[];
14
+ nextCursor: string | null;
15
+ }> | Readonly<{
16
+ kind: 'failed';
17
+ sets: readonly GeneratedIconLibrarySet[];
18
+ nextCursor: string | null;
19
+ message: string;
20
+ }>;
21
+ export type GeneratedIconLibraryState = GeneratedIconLibraryLoadState & Readonly<{
22
+ loadMore: (() => void) | null;
23
+ }>;
24
+ export declare function GeneratedIconLibraryProvider({ value, children, }: {
25
+ value: GeneratedIconLibraryState;
26
+ children: ReactNode;
27
+ }): import("react").JSX.Element;
28
+ export declare function useGeneratedIconLibrary(): GeneratedIconLibraryState;
@@ -1 +1,3 @@
1
1
  export * from './IconPickerField';
2
+ export * from './GeneratedIconLibraryContext';
3
+ export * from './loaders';
@@ -0,0 +1,7 @@
1
+ import type { ApiClient } from '../../../../api/src/request';
2
+ import type { GeneratedIconSetListResponse } from '../../../../api/src/index';
3
+ export declare function loadGeneratedIconLibraryPage(apiClient: ApiClient, input: Readonly<{
4
+ siteId: string;
5
+ cursor?: string;
6
+ limit?: number;
7
+ }>): Promise<GeneratedIconSetListResponse>;
@@ -1,6 +1,6 @@
1
1
  import type { EditorBlockId } from '../../../../../core/src/index';
2
2
  import type { BlockItem } from '../../../../../editor-blocks/src/index';
3
- import type { CompiledBlockRuntimeFields, DesignBlockId } from '../../../../../theme-core/src/site-styles/previewCompiler';
3
+ import type { CompiledBlockRuntimeFields, CompiledBoundaryRuntime, DesignBlockId } from '../../../../../theme-core/src/site-styles/previewCompiler';
4
4
  export type CanonicalBlockContent = Record<string, unknown> & {
5
5
  readonly __contentAuthority?: 'canonical-block-content';
6
6
  };
@@ -55,6 +55,7 @@ export type PreviewProjection = Readonly<{
55
55
  kind: 'runtime-content-decoration';
56
56
  source: 'page-design';
57
57
  fieldsByBlockId: ReadonlyMap<DesignBlockId, CompiledBlockRuntimeFields>;
58
+ boundaries: readonly CompiledBoundaryRuntime<DesignBlockId>[];
58
59
  }>;
59
60
  export type StructureProjection = Extract<PreviewProjection, {
60
61
  kind: 'structure-overlay';
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ export type CustomizeBackgroundCycleDirection = 'prev' | 'next';
3
+ export declare function CustomizeBackgroundControlRows({ modeLabel, valueLabel, valueAriaLabel, swatch, chooserOpen, chooser, canCycleMode, canCycleValue, onCycleMode, onCycleValue, onToggleChooser, }: Readonly<{
4
+ modeLabel: string;
5
+ valueLabel: string;
6
+ valueAriaLabel: string;
7
+ swatch: React.ReactNode;
8
+ chooserOpen: boolean;
9
+ chooser?: React.ReactNode;
10
+ canCycleMode: boolean;
11
+ canCycleValue: boolean;
12
+ onCycleMode: (direction: CustomizeBackgroundCycleDirection, event: React.MouseEvent) => void;
13
+ onCycleValue: (direction: CustomizeBackgroundCycleDirection, event: React.MouseEvent) => void;
14
+ onToggleChooser: (event: React.MouseEvent) => void;
15
+ }>): React.JSX.Element;
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ export declare function CustomizeColorTokenPicker<TToken extends string>({ title, selectedToken, recommendedTokens, advancedTokens, disabled, columnsClassName, showTitle, labelForToken, swatchColorForToken, onChooseToken, }: Readonly<{
3
+ title: string;
4
+ selectedToken: TToken | null;
5
+ recommendedTokens: readonly TToken[];
6
+ advancedTokens?: readonly TToken[];
7
+ disabled?: boolean;
8
+ columnsClassName?: string;
9
+ showTitle?: boolean;
10
+ labelForToken: (token: TToken) => string;
11
+ swatchColorForToken: (token: TToken) => string;
12
+ onChooseToken: (token: TToken, event: React.MouseEvent) => void;
13
+ }>): React.JSX.Element | null;
14
+ export declare function CustomizeBackgroundColorPicker<TToken extends string>({ title, selectedToken, recommendedTokens, advancedTokens, disabled, columnsClassName, defaultSelected, defaultLabel, labelForToken, swatchColorForToken, onChooseDefault, onChooseToken, }: Readonly<{
15
+ title?: string;
16
+ selectedToken: TToken | null;
17
+ recommendedTokens: readonly TToken[];
18
+ advancedTokens?: readonly TToken[];
19
+ disabled?: boolean;
20
+ columnsClassName?: string;
21
+ defaultSelected?: boolean;
22
+ defaultLabel?: string;
23
+ labelForToken: (token: TToken) => string;
24
+ swatchColorForToken: (token: TToken) => string;
25
+ onChooseDefault?: (event: React.MouseEvent) => void;
26
+ onChooseToken: (token: TToken, event: React.MouseEvent) => void;
27
+ }>): React.JSX.Element | null;
@@ -10,6 +10,7 @@ import type { PreviewEditorSidebarProps, PreviewTemplateData } from './PreviewEd
10
10
  import { type PreviewLinkedEntrySidebarSection } from './PreviewSidebarSection';
11
11
  type EntryEditorPanelProps = {
12
12
  siteId: string;
13
+ dashboardBaseUrl?: string | null;
13
14
  entryData: NonNullable<PreviewEditorSidebarProps['entryData']>;
14
15
  contentTypeSchema?: ContentTypeSchema | null;
15
16
  referenceContentTypeKeys: readonly string[];
@@ -32,5 +33,5 @@ type EntryEditorPanelProps = {
32
33
  onViewportWidthChange: (width: ViewportWidth) => void;
33
34
  onZoomChange: (zoom: ZoomLevel) => void;
34
35
  };
35
- export declare function EntryEditorPanel({ siteId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, apiClient, bearerToken, supabaseUrl, entrySubrouteContext, metadataPanel, linkedEntrySection, mediaAssets, widgets, sdkConfig, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: EntryEditorPanelProps): React.JSX.Element;
36
+ export declare function EntryEditorPanel({ siteId, dashboardBaseUrl, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, apiClient, bearerToken, supabaseUrl, entrySubrouteContext, metadataPanel, linkedEntrySection, mediaAssets, widgets, sdkConfig, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: EntryEditorPanelProps): React.JSX.Element;
36
37
  export {};
@@ -5,6 +5,7 @@ import type { FieldWidgetComponent } from "../../../../block-form/src/client/ind
5
5
  import type { SdkConfigForBlockPicker } from "../../../../editor-blocks/src/index";
6
6
  type EntrySlotBlockEditorPanelProps = {
7
7
  siteId: string;
8
+ dashboardBaseUrl?: string | null;
8
9
  typeKey: string;
9
10
  entryId: string;
10
11
  theme?: Theme | null;
@@ -15,5 +16,5 @@ type EntrySlotBlockEditorPanelProps = {
15
16
  mediaAssets?: MediaAssetIndexItem[];
16
17
  widgets: Record<string, FieldWidgetComponent>;
17
18
  };
18
- export declare function EntrySlotBlockEditorPanel({ siteId, typeKey, entryId, theme, apiClient, bearerToken, supabaseUrl, sdkConfig, mediaAssets, widgets, }: EntrySlotBlockEditorPanelProps): React.JSX.Element | null;
19
+ export declare function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId, theme, apiClient, bearerToken, supabaseUrl, sdkConfig, mediaAssets, widgets, }: EntrySlotBlockEditorPanelProps): React.JSX.Element | null;
19
20
  export {};
@@ -10,6 +10,7 @@ import { type PreviewLinkedEntrySidebarSection } from './PreviewSidebarSection';
10
10
  type PageBlockEditorPanelProps = {
11
11
  siteId: string;
12
12
  pageId: string;
13
+ dashboardBaseUrl?: string | null;
13
14
  theme?: Theme | null;
14
15
  apiClient: ApiClient;
15
16
  bearerToken?: string | null;
@@ -21,6 +22,7 @@ type PageBlockEditorPanelProps = {
21
22
  metadataPanel: ReactNode;
22
23
  linkedEntrySection?: PreviewLinkedEntrySidebarSection | null;
23
24
  designPanel?: ReactNode;
25
+ designOpenRequestId?: number | null;
24
26
  sdkConfig?: SdkConfigForBlockPicker | null;
25
27
  mediaAssets?: MediaAssetIndexItem[];
26
28
  bookingOfferingPresets?: readonly BookingOfferingPresetSummary[] | null;
@@ -31,5 +33,5 @@ type PageBlockEditorPanelProps = {
31
33
  onViewportWidthChange: (width: ViewportWidth) => void;
32
34
  onZoomChange: (zoom: ZoomLevel) => void;
33
35
  };
34
- export declare function PageBlockEditorPanel({ siteId, pageId, theme, apiClient, bearerToken, supabaseUrl, blockItems, uiStoreForBlockEditor, blockEditorRef, onBlocksChange, metadataPanel, linkedEntrySection, designPanel, sdkConfig, mediaAssets, bookingOfferingPresets, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PageBlockEditorPanelProps): React.JSX.Element;
36
+ export declare function PageBlockEditorPanel({ siteId, pageId, dashboardBaseUrl, theme, apiClient, bearerToken, supabaseUrl, blockItems, uiStoreForBlockEditor, blockEditorRef, onBlocksChange, metadataPanel, linkedEntrySection, designPanel, designOpenRequestId, sdkConfig, mediaAssets, bookingOfferingPresets, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PageBlockEditorPanelProps): React.JSX.Element;
35
37
  export {};
@@ -6,7 +6,7 @@ import type { EntrySubrouteContextData, BookingOfferingPresetSummary, MediaAsset
6
6
  import { type ContentTypeSchema } from "../../../../content-model/src/index";
7
7
  import { type ZoomLevel } from "../../../../content-editor/src/index";
8
8
  import type { ButtonPersonalityId } from "../../../../theme-core/src/buttons/index";
9
- import type { PaletteOverrides, PaletteVariantId } from "../../../../theme-core/src/palette/index";
9
+ import type { CuratedPaletteId, PaletteOverrides, RuntimePaletteState } from "../../../../theme-core/src/palette/index";
10
10
  import type { FooterSelectionContext, FooterLookId, HeaderLayoutId, HeaderSelectionContext, HeaderLookId, HeaderStyleId, TypographyPresetId } from "../../../../theme-core/src/site-styles/index";
11
11
  import type { PreviewDesignRow } from "./sidebarTabPreference";
12
12
  import type { ViewportMode, ViewportWidth } from "./PreviewViewportControls";
@@ -37,7 +37,8 @@ export type PreviewEditorSidebarProps = {
37
37
  themeSelectionUpdatedAt?: string | null;
38
38
  /** Persisted Style configurator selections (Phase C / E). */
39
39
  themeSelectionButtonPersonalityId?: ButtonPersonalityId | null;
40
- themeSelectionPaletteVariantId?: PaletteVariantId | null;
40
+ runtimePaletteState?: RuntimePaletteState | null;
41
+ themeSelectionPaletteVariantId?: CuratedPaletteId | null;
41
42
  themeSelectionPaletteOverrides?: PaletteOverrides | null;
42
43
  themeSelectionHeaderLayoutId?: HeaderLayoutId | null;
43
44
  themeSelectionHeaderStyleId?: HeaderStyleId | null;
@@ -71,4 +72,4 @@ export type PreviewEditorSidebarProps = {
71
72
  onViewportWidthChange: (width: ViewportWidth) => void;
72
73
  onZoomChange: (zoom: ZoomLevel) => void;
73
74
  };
74
- export declare function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, themeSelectionPaletteVariantId, themeSelectionPaletteOverrides, themeSelectionHeaderLayoutId, themeSelectionHeaderStyleId, themeSelectionTypographyPresetId, themeSelectionTypographyBodyFontOverride, themeSelectionTypographyHeadingFontOverride, themeSelectionHeaderLookId, themeSelectionFooterLookId, themeSelectionHeaderContext, themeSelectionFooterContext, designRowRequest, apiClient, bearerToken, supabaseUrl, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, siteStyleAccess, activeTab, onTabChange, onClose, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PreviewEditorSidebarProps): React.JSX.Element;
75
+ export declare function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, runtimePaletteState, themeSelectionPaletteVariantId, themeSelectionPaletteOverrides, themeSelectionHeaderLayoutId, themeSelectionHeaderStyleId, themeSelectionTypographyPresetId, themeSelectionTypographyBodyFontOverride, themeSelectionTypographyHeadingFontOverride, themeSelectionHeaderLookId, themeSelectionFooterLookId, themeSelectionHeaderContext, themeSelectionFooterContext, designRowRequest, apiClient, bearerToken, supabaseUrl, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, siteStyleAccess, activeTab, onTabChange, onClose, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PreviewEditorSidebarProps): React.JSX.Element;