@riverbankcms/sdk 0.79.0 → 0.80.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 (160) hide show
  1. package/dist/PreviewEditorSidebar-QZG37QIF.mjs +2655 -0
  2. package/dist/{PreviewEditorUI-27KJVEET.mjs → PreviewEditorUI-AXIKSMZA.mjs} +27 -4
  3. package/dist/SdkPreviewModeRuntime-XE5M4UKM.mjs +8 -0
  4. package/dist/_dts/ai/src/contracts/proposals.d.ts +20 -0
  5. package/dist/_dts/api/src/endpoints.d.ts +24 -0
  6. package/dist/_dts/api/src/index.d.ts +1 -1
  7. package/dist/_dts/api/src/siteInfrastructure.d.ts +124 -0
  8. package/dist/_dts/api/src/siteOnboarding.d.ts +13 -0
  9. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +10 -1
  10. package/dist/_dts/block-form/src/client/index.d.ts +2 -0
  11. package/dist/_dts/block-form/src/index.d.ts +2 -0
  12. package/dist/_dts/block-form/src/utils/evaluateVisibility.d.ts +2 -1
  13. package/dist/_dts/blocks/src/client/header.d.ts +1 -1
  14. package/dist/_dts/blocks/src/client.d.ts +12 -12
  15. package/dist/_dts/blocks/src/index.d.ts +1 -1
  16. package/dist/_dts/blocks/src/system/blocks/events/event-listing.d.ts +2 -2
  17. package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -1
  18. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -1
  19. package/dist/_dts/blocks/src/system/blocks/testimonials.d.ts +7 -1
  20. package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +21 -12
  21. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +4 -2
  22. package/dist/_dts/blocks/src/system/fragments/library/faqHeading.d.ts +1 -0
  23. package/dist/_dts/blocks/src/system/fragments/library/testimonialsCarousel.d.ts +5 -0
  24. package/dist/_dts/blocks/src/system/node/fragments/headingDecoration.d.ts +1 -4
  25. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
  26. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +7 -7
  27. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +3 -3
  28. package/dist/_dts/blocks/src/system/runtime/header/enhanceHeaderSection.d.ts +10 -2
  29. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +5 -5
  30. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.server.d.ts +2 -2
  31. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventSpotlight.d.ts +2 -2
  32. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +2 -2
  33. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventDetailModal.d.ts +2 -2
  34. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +2 -2
  35. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.client.d.ts +2 -2
  36. package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +3 -0
  37. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +9 -0
  38. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +14 -1
  39. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +9 -3
  40. package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +2 -6
  41. package/dist/_dts/editor-blocks/src/block-editor/BlockCardBody.d.ts +2 -6
  42. package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +2 -6
  43. package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +2 -6
  44. package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +6 -4
  45. package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -6
  46. package/dist/_dts/editor-blocks/src/index.d.ts +2 -0
  47. package/dist/_dts/preview-next/src/client/blocks/BlockToolbar.d.ts +5 -1
  48. package/dist/_dts/preview-next/src/client/blocks/previewCustomizeControlPlan.d.ts +24 -0
  49. package/dist/_dts/preview-next/src/client/blocks/useBlockCustomizeControls.d.ts +34 -0
  50. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -5
  51. package/dist/_dts/preview-next/src/client/preview/PageDesignEditorStateContext.d.ts +4 -1
  52. package/dist/_dts/preview-next/src/client/preview/PreviewBlockCustomizeSelectionContext.d.ts +20 -0
  53. package/dist/_dts/preview-next/src/client/preview/PreviewOpenEditorButton.d.ts +2 -0
  54. package/dist/_dts/preview-next/src/client/preview/SelectedBlockCustomizePanel.d.ts +13 -0
  55. package/dist/_dts/preview-next/src/client/preview/previewCustomizeEditorDraftPatch.d.ts +13 -0
  56. package/dist/_dts/preview-next/src/client/preview/previewCustomizeRuntimePatch.d.ts +2 -0
  57. package/dist/_dts/preview-next/src/client/preview/storeTypes.d.ts +4 -0
  58. package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +3 -1
  59. package/dist/_dts/sdk/src/cli/commands/webhooks.d.ts +44 -0
  60. package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
  61. package/dist/_dts/sdk/src/client/management/types.d.ts +56 -0
  62. package/dist/_dts/sdk/src/client/management/webhooks.d.ts +3 -0
  63. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +6 -3
  64. package/dist/_dts/sdk/src/version.d.ts +1 -1
  65. package/dist/_dts/theme-core/src/accordions/siteStyleDefaults.d.ts +220 -0
  66. package/dist/_dts/theme-core/src/accordions/types.d.ts +45 -2
  67. package/dist/_dts/theme-core/src/blockOverrides.d.ts +8 -0
  68. package/dist/_dts/theme-core/src/blocks/types.d.ts +1 -1
  69. package/dist/_dts/theme-core/src/blocks/vars/testimonials.d.ts +4 -1
  70. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -1
  71. package/dist/_dts/theme-core/src/cards/core.d.ts +20 -0
  72. package/dist/_dts/theme-core/src/cards/generateDefaultCardSystem.d.ts +6 -3
  73. package/dist/_dts/theme-core/src/cards/siteStyleDefaults.d.ts +105 -0
  74. package/dist/_dts/theme-core/src/cards/types.d.ts +177 -0
  75. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  76. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +156 -18
  77. package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
  78. package/dist/_dts/theme-core/src/palette/variants/soft-natural.d.ts +16 -0
  79. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +1 -1
  80. package/dist/_dts/theme-core/src/schema.d.ts +446 -52
  81. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +86 -17
  82. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +2 -3
  83. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +86 -17
  84. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +110 -1
  85. package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +20 -1
  86. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -0
  87. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +286 -6
  88. package/dist/_dts/theme-core/src/site-styles/index.d.ts +2 -0
  89. package/dist/_dts/theme-core/src/site-styles/logoBranding.d.ts +193 -0
  90. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +2 -8
  91. package/dist/_dts/theme-core/src/site-styles/rawStyleFields.d.ts +2 -0
  92. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +10 -7
  93. package/dist/_dts/theme-core/src/site-styles/siteStyleThemeCompiler.d.ts +11 -0
  94. package/dist/_dts/theme-core/src/site-styles/sourceCatalogs.d.ts +2 -2
  95. package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +1 -1
  96. package/dist/_dts/theme-core/src/site-styles/testimonialQuotePresets.d.ts +15 -0
  97. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
  98. package/dist/_dts/theme-core/src/site-styles/types.d.ts +7 -29
  99. package/dist/{PreviewEditorSidebar-56NMJMIK.mjs → chunk-5NZGBSJF.mjs} +1423 -2451
  100. package/dist/{chunk-4HCW7FHJ.mjs → chunk-7PCYG6YV.mjs} +215 -137
  101. package/dist/{chunk-K2IIF34C.mjs → chunk-BBLZSQEY.mjs} +24 -0
  102. package/dist/{chunk-V47ZU33I.mjs → chunk-GYXKAUFV.mjs} +2785 -785
  103. package/dist/{chunk-GP555I66.mjs → chunk-HTB4BMKD.mjs} +94 -46
  104. package/dist/{chunk-A3HHFKVT.mjs → chunk-MPBNEVPB.mjs} +1 -1
  105. package/dist/cli/index.mjs +2100 -545
  106. package/dist/cli/init-docs/content/workflow-isr-revalidation.md +16 -4
  107. package/dist/client/{accordion-QLA7KBYO.mjs → accordion-QFZMNB7O.mjs} +1 -1
  108. package/dist/client/{bookingForm-PYZIPA5G.mjs → bookingForm-NCIXFWIG.mjs} +3 -3
  109. package/dist/client/bookings.mjs +1144 -329
  110. package/dist/client/{carousel-5EIULWBI.mjs → carousel-EO4BJMWD.mjs} +2 -2
  111. package/dist/client/{cart-DOP3FNI4.mjs → cart-FTYCLYUW.mjs} +5 -5
  112. package/dist/client/{checkout-BVMF6FBV.mjs → checkout-NFGLVCOX.mjs} +5 -5
  113. package/dist/client/{chunk-TYONZMST.mjs → chunk-4W66ALYT.mjs} +1 -1
  114. package/dist/client/{chunk-44K2U3QI.mjs → chunk-6GVVWSPU.mjs} +4 -4
  115. package/dist/client/{chunk-UDS3NTWA.mjs → chunk-IWFZSQNZ.mjs} +1 -1
  116. package/dist/client/{chunk-R5ESWNKX.mjs → chunk-PUOELU4O.mjs} +89 -5
  117. package/dist/client/{chunk-YLDYVRZL.mjs → chunk-PYRBIURC.mjs} +4 -4
  118. package/dist/client/{chunk-GG4M2NP6.mjs → chunk-T6UIP6UZ.mjs} +1 -1
  119. package/dist/client/{chunk-V6M5FCR5.mjs → chunk-VDS5YFLX.mjs} +1 -1
  120. package/dist/client/{chunk-CCNTDRCF.mjs → chunk-Y37KDO7P.mjs} +1 -1
  121. package/dist/client/client.mjs +4205 -2324
  122. package/dist/client/{courseRegistration-E6EAA6NL.mjs → courseRegistration-2EORROPS.mjs} +3 -3
  123. package/dist/client/{eventCalendar-HBG3HAK6.mjs → eventCalendar-WZI4VL6N.mjs} +5 -5
  124. package/dist/client/{eventCombined-6K5ZZWAK.mjs → eventCombined-QCB2TCNL.mjs} +5 -5
  125. package/dist/client/{eventDetails-Q75ICXLT.mjs → eventDetails-TFTATAPH.mjs} +5 -5
  126. package/dist/client/{eventListing-27P5F7DZ.mjs → eventListing-A2CQEHEQ.mjs} +5 -5
  127. package/dist/client/{eventRegistration-IQ7AMASR.mjs → eventRegistration-OELPVLUY.mjs} +5 -5
  128. package/dist/client/{form-JRTD65FN.mjs → form-NTIFD6WQ.mjs} +1 -1
  129. package/dist/client/{headerSection-7FPSSZHS.mjs → headerSection-7TBNKCLA.mjs} +65 -24
  130. package/dist/client/hooks.mjs +3354 -2006
  131. package/dist/client/{locationMap-7NGFNYBH.mjs → locationMap-LRLB5A3H.mjs} +1 -1
  132. package/dist/client/{newsletterForm-F3BADCI2.mjs → newsletterForm-XI52RZSN.mjs} +1 -1
  133. package/dist/client/{productDetail-V3HP7ITJ.mjs → productDetail-GSNKBFLY.mjs} +5 -5
  134. package/dist/client/{productList-L3EGJUF2.mjs → productList-BGCGT4KZ.mjs} +5 -5
  135. package/dist/client/rendering/client.mjs +2570 -1657
  136. package/dist/client/rendering/islands.mjs +18 -18
  137. package/dist/client/rendering.mjs +4275 -2394
  138. package/dist/client/{shop-DQUB5E2C.mjs → shop-RQHUCLNY.mjs} +5 -5
  139. package/dist/preview-next/before-render.mjs +24 -0
  140. package/dist/preview-next/client/runtime.mjs +5 -5
  141. package/dist/preview-next/middleware.mjs +24 -0
  142. package/dist/{sdk-runtime-AF6KXJU4.mjs → sdk-runtime-A4LHT2RS.mjs} +6 -6
  143. package/dist/server/components.mjs +4063 -2293
  144. package/dist/server/config-validation.mjs +3525 -2176
  145. package/dist/server/config.mjs +3525 -2176
  146. package/dist/server/data.mjs +3354 -2006
  147. package/dist/server/index.mjs +25 -1
  148. package/dist/server/next.mjs +4006 -2236
  149. package/dist/server/page-converter.mjs +2747 -1816
  150. package/dist/server/prebuild.mjs +1 -1
  151. package/dist/server/rendering/server.mjs +4063 -2293
  152. package/dist/server/rendering.mjs +4063 -2293
  153. package/dist/server/routing.mjs +3508 -2111
  154. package/dist/server/server.mjs +3372 -2024
  155. package/dist/server/theme-bridge.mjs +1436 -310
  156. package/dist/server/theme.mjs +409 -219
  157. package/dist/styles/index.css +300 -33
  158. package/package.json +1 -1
  159. package/dist/SdkPreviewModeRuntime-H4BSP6E7.mjs +0 -8
  160. package/dist/chunk-LCY32PXF.mjs +0 -1175
@@ -1,14 +1,14 @@
1
1
  "use client";
2
- import { resolvePreviewChromeSurface, usePreviewPageDesignEditorState, PREVIEW_CHROME_PORTAL_CLASS_NAME, PREVIEW_CHROME_THEME_CLASS_NAME, applyPreviewChromeSurfaceToElement, setPreviewSidebarTab, PREVIEW_THEME_COOKIE_NAME } from './chunk-GP555I66.mjs';
3
- import { useEntryEditorController, useEditorUiStore, useMultiAutosave, EditorChrome, classifyHistoryShortcut, unwrapResponse, cn, Dialog, Button, Palette, DialogContent, DialogHeader, DialogTitle, DialogDescription, TriangleAlert, useEditorUiStoreInstance, Pencil, previewAssistantEnabled, Sparkles } from './chunk-V47ZU33I.mjs';
4
- import { usePreviewAuth, getDashboardBaseUrl } from './chunk-K2IIF34C.mjs';
2
+ import { resolvePreviewChromeSurface, usePreviewPageDesignEditorState, PREVIEW_CHROME_PORTAL_CLASS_NAME, PREVIEW_CHROME_THEME_CLASS_NAME, applyPreviewChromeSurfaceToElement, setPreviewSidebarTab, PREVIEW_THEME_COOKIE_NAME } from './chunk-HTB4BMKD.mjs';
3
+ import { useEntryEditorController, useEditorUiStore, useMultiAutosave, EditorChrome, classifyHistoryShortcut, previewAssistantEnabled, unwrapResponse, cn, Dialog, Button, Palette, DialogContent, DialogHeader, DialogTitle, DialogDescription, TriangleAlert, Pencil, Sparkles, useEditorUiStoreInstance } from './chunk-GYXKAUFV.mjs';
4
+ import { usePreviewAuth, getDashboardBaseUrl } from './chunk-BBLZSQEY.mjs';
5
5
  import './chunk-R7POPVJR.mjs';
6
6
  import { useState, useMemo, useEffect, useTransition, useCallback } from 'react';
7
7
  import { createPortal } from 'react-dom';
8
8
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
9
9
  import { useRouter } from 'next/navigation';
10
10
 
11
- function PreviewOpenEditorButton() {
11
+ function usePreviewSidebarControls() {
12
12
  const uiStore = useEditorUiStoreInstance();
13
13
  const drawerOpen = useEditorUiStore((state) => state.drawerOpen);
14
14
  const activeTab = useEditorUiStore((state) => state.previewSidebarTab);
@@ -26,6 +26,26 @@ function PreviewOpenEditorButton() {
26
26
  );
27
27
  const editorActive = drawerOpen && activeTab === "editor";
28
28
  const assistantActive = drawerOpen && activeTab === "assistant";
29
+ return {
30
+ assistantActive,
31
+ editorActive,
32
+ toggleSidebar
33
+ };
34
+ }
35
+ function usePreviewOpenEditorMobileMenuItems() {
36
+ const { assistantActive, toggleSidebar } = usePreviewSidebarControls();
37
+ return useMemo(() => {
38
+ if (!previewAssistantEnabled) return [];
39
+ return [
40
+ {
41
+ label: assistantActive ? "Close AI assistant" : "Open AI assistant",
42
+ onClick: () => toggleSidebar("assistant")
43
+ }
44
+ ];
45
+ }, [assistantActive, toggleSidebar]);
46
+ }
47
+ function PreviewOpenEditorButton() {
48
+ const { assistantActive, editorActive, toggleSidebar } = usePreviewSidebarControls();
29
49
  return /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
30
50
  /* @__PURE__ */ jsx(
31
51
  Button,
@@ -44,6 +64,7 @@ function PreviewOpenEditorButton() {
44
64
  {
45
65
  variant: assistantActive ? "default" : "outline",
46
66
  size: "icon",
67
+ className: "hidden sm:inline-flex",
47
68
  onClick: () => toggleSidebar("assistant"),
48
69
  "aria-label": assistantActive ? "Close AI assistant" : "Open AI assistant",
49
70
  "aria-pressed": assistantActive,
@@ -285,6 +306,7 @@ function PreviewEditorUI({
285
306
  const undo = useEditorUiStore((state) => state.history.undo);
286
307
  const redo = useEditorUiStore((state) => state.history.redo);
287
308
  const designHistory = usePreviewPageDesignEditorState();
309
+ const previewOpenEditorMobileMenuItems = usePreviewOpenEditorMobileMenuItems();
288
310
  const lastSavedAt = useMemo(() => {
289
311
  const metaTime = metadataAutosave.lastSavedAt;
290
312
  const contentTime = contentAutosave.lastSavedAt;
@@ -416,6 +438,7 @@ function PreviewEditorUI({
416
438
  inMaintenanceMode && siteId ? /* @__PURE__ */ jsx(MaintenanceModeBadge, { siteId }) : null,
417
439
  /* @__PURE__ */ jsx(PreviewOpenEditorButton, {})
418
440
  ] }),
441
+ mobileMenuItems: previewOpenEditorMobileMenuItems,
419
442
  status: combinedAutosave.status,
420
443
  lastSavedAt,
421
444
  draftSyncState,
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ export { SdkPreviewModeRuntime } from './chunk-7PCYG6YV.mjs';
3
+ import './chunk-MPBNEVPB.mjs';
4
+ import './chunk-5NZGBSJF.mjs';
5
+ import './chunk-HTB4BMKD.mjs';
6
+ import './chunk-GYXKAUFV.mjs';
7
+ import './chunk-BBLZSQEY.mjs';
8
+ import './chunk-R7POPVJR.mjs';
@@ -4977,6 +4977,8 @@ declare const SiteStyleSelectionCommandBodySchema: z.ZodObject<{
4977
4977
  }>;
4978
4978
  footerLookId: z.ZodNullable<z.ZodEnum<{
4979
4979
  "footer-muted-grounding": "footer-muted-grounding";
4980
+ "footer-centered-calm": "footer-centered-calm";
4981
+ "footer-editorial-columns": "footer-editorial-columns";
4980
4982
  "site-footer-brand-two-band": "site-footer-brand-two-band";
4981
4983
  }>>;
4982
4984
  baseSelectionVersion: z.ZodNumber;
@@ -5056,6 +5058,8 @@ export declare const SiteStyleSelectionCommandBackedPreviewSchema: z.ZodObject<{
5056
5058
  }>;
5057
5059
  footerLookId: z.ZodNullable<z.ZodEnum<{
5058
5060
  "footer-muted-grounding": "footer-muted-grounding";
5061
+ "footer-centered-calm": "footer-centered-calm";
5062
+ "footer-editorial-columns": "footer-editorial-columns";
5059
5063
  "site-footer-brand-two-band": "site-footer-brand-two-band";
5060
5064
  }>>;
5061
5065
  baseSelectionVersion: z.ZodNumber;
@@ -5141,6 +5145,8 @@ export declare const ProposeSiteStyleSelectionCommandBackedOutputSchema: z.ZodOb
5141
5145
  }>;
5142
5146
  footerLookId: z.ZodNullable<z.ZodEnum<{
5143
5147
  "footer-muted-grounding": "footer-muted-grounding";
5148
+ "footer-centered-calm": "footer-centered-calm";
5149
+ "footer-editorial-columns": "footer-editorial-columns";
5144
5150
  "site-footer-brand-two-band": "site-footer-brand-two-band";
5145
5151
  }>>;
5146
5152
  baseSelectionVersion: z.ZodNumber;
@@ -6120,6 +6126,8 @@ export declare const ProposeSiteStyleSelectionCommandBackedOutputSchema: z.ZodOb
6120
6126
  }>;
6121
6127
  footerLookId: z.ZodNullable<z.ZodEnum<{
6122
6128
  "footer-muted-grounding": "footer-muted-grounding";
6129
+ "footer-centered-calm": "footer-centered-calm";
6130
+ "footer-editorial-columns": "footer-editorial-columns";
6123
6131
  "site-footer-brand-two-band": "site-footer-brand-two-band";
6124
6132
  }>>;
6125
6133
  baseSelectionVersion: z.ZodNumber;
@@ -6221,6 +6229,8 @@ export declare const ProposeSiteStyleSelectionOutputSchema: z.ZodUnion<readonly
6221
6229
  }>;
6222
6230
  footerLookId: z.ZodNullable<z.ZodEnum<{
6223
6231
  "footer-muted-grounding": "footer-muted-grounding";
6232
+ "footer-centered-calm": "footer-centered-calm";
6233
+ "footer-editorial-columns": "footer-editorial-columns";
6224
6234
  "site-footer-brand-two-band": "site-footer-brand-two-band";
6225
6235
  }>>;
6226
6236
  baseSelectionVersion: z.ZodNumber;
@@ -7200,6 +7210,8 @@ export declare const ProposeSiteStyleSelectionOutputSchema: z.ZodUnion<readonly
7200
7210
  }>;
7201
7211
  footerLookId: z.ZodNullable<z.ZodEnum<{
7202
7212
  "footer-muted-grounding": "footer-muted-grounding";
7213
+ "footer-centered-calm": "footer-centered-calm";
7214
+ "footer-editorial-columns": "footer-editorial-columns";
7203
7215
  "site-footer-brand-two-band": "site-footer-brand-two-band";
7204
7216
  }>>;
7205
7217
  baseSelectionVersion: z.ZodNumber;
@@ -7302,6 +7314,8 @@ export declare const ProposeSiteStyleSelectionResultSchema: z.ZodUnion<readonly
7302
7314
  }>;
7303
7315
  footerLookId: z.ZodNullable<z.ZodEnum<{
7304
7316
  "footer-muted-grounding": "footer-muted-grounding";
7317
+ "footer-centered-calm": "footer-centered-calm";
7318
+ "footer-editorial-columns": "footer-editorial-columns";
7305
7319
  "site-footer-brand-two-band": "site-footer-brand-two-band";
7306
7320
  }>>;
7307
7321
  baseSelectionVersion: z.ZodNumber;
@@ -8281,6 +8295,8 @@ export declare const ProposeSiteStyleSelectionResultSchema: z.ZodUnion<readonly
8281
8295
  }>;
8282
8296
  footerLookId: z.ZodNullable<z.ZodEnum<{
8283
8297
  "footer-muted-grounding": "footer-muted-grounding";
8298
+ "footer-centered-calm": "footer-centered-calm";
8299
+ "footer-editorial-columns": "footer-editorial-columns";
8284
8300
  "site-footer-brand-two-band": "site-footer-brand-two-band";
8285
8301
  }>>;
8286
8302
  baseSelectionVersion: z.ZodNumber;
@@ -29600,6 +29616,8 @@ export declare const proposalToolSchemas: {
29600
29616
  }>;
29601
29617
  footerLookId: z.ZodNullable<z.ZodEnum<{
29602
29618
  "footer-muted-grounding": "footer-muted-grounding";
29619
+ "footer-centered-calm": "footer-centered-calm";
29620
+ "footer-editorial-columns": "footer-editorial-columns";
29603
29621
  "site-footer-brand-two-band": "site-footer-brand-two-band";
29604
29622
  }>>;
29605
29623
  baseSelectionVersion: z.ZodNumber;
@@ -30579,6 +30597,8 @@ export declare const proposalToolSchemas: {
30579
30597
  }>;
30580
30598
  footerLookId: z.ZodNullable<z.ZodEnum<{
30581
30599
  "footer-muted-grounding": "footer-muted-grounding";
30600
+ "footer-centered-calm": "footer-centered-calm";
30601
+ "footer-editorial-columns": "footer-editorial-columns";
30582
30602
  "site-footer-brand-two-band": "site-footer-brand-two-band";
30583
30603
  }>>;
30584
30604
  baseSelectionVersion: z.ZodNumber;
@@ -302,6 +302,23 @@ export declare const API_ENDPOINTS: {
302
302
  readonly auth: "user";
303
303
  readonly responseKind: "json";
304
304
  };
305
+ readonly getSdkDeploymentHealth: {
306
+ readonly path: "/sites/{siteId}/sdk-deployment/health";
307
+ readonly method: "GET";
308
+ readonly tags: ["site-{siteId}", "webhooks"];
309
+ readonly auth: "user";
310
+ readonly errors: readonly [];
311
+ readonly responseKind: "json";
312
+ };
313
+ readonly setupSdkDeploymentRevalidationWebhook: {
314
+ readonly path: "/sites/{siteId}/sdk-deployment/revalidation-webhook";
315
+ readonly method: "POST";
316
+ readonly tags: ["site-{siteId}", "webhooks"];
317
+ readonly auth: "user";
318
+ readonly errors: readonly ["validation:invalid_input", "resource:conflict"];
319
+ readonly responseKind: "json";
320
+ readonly demoMutation: import("./apiEndpointTypes").ApiDemoMutationPolicy;
321
+ };
305
322
  readonly listSiteApiKeys: {
306
323
  readonly path: "/sites/{siteId}/api-keys";
307
324
  readonly method: "GET";
@@ -5003,6 +5020,13 @@ export declare const API_ENDPOINTS: {
5003
5020
  readonly auth: "service";
5004
5021
  readonly responseKind: "json";
5005
5022
  };
5023
+ readonly sdkSetupRevalidationWebhook: {
5024
+ readonly path: "/sdk/{siteId}/webhooks/revalidation/setup";
5025
+ readonly method: "POST";
5026
+ readonly auth: "service";
5027
+ readonly responseKind: "json";
5028
+ readonly errors: readonly ["validation:invalid_input", "server:internal_error"];
5029
+ };
5006
5030
  readonly portalGetProfile: {
5007
5031
  readonly path: "/portal/me";
5008
5032
  readonly method: "GET";
@@ -32,7 +32,7 @@ export { FLEXIBLE_BALANCE_ADMIN_ACTION_SOURCES } from "./types";
32
32
  export { getEventAttendanceModeLabel, getEventDeliveryModeLabel, getEventTicketTypeAttendanceScopeLabel, } from "./eventAttendanceLabels";
33
33
  export { analyzeSiteBannerBody, decodeSiteBannerSettings, EMPTY_SITE_BANNER_BODY, SITE_BANNER_COOKIE_NAME_PREFIX, SITE_BANNER_MAX_PARAGRAPHS, SITE_BANNER_MAX_TEXT_LENGTH, createSiteBannerRevision, encodeSiteBannerSettings, fromSiteBannerDraft, getSiteBannerCookieName, isSiteBannerEligibleForPath, planSiteBannerRender, resolveSiteBannerAnnouncementRole, resolveSiteBannerShellBehavior, sanitizeSiteBannerBody, siteBannerDraftEquals, siteBannerSettingsInputSchema, siteBannerSettingsSchema, toSiteBannerDraft, validateSiteBannerDraft, } from "./siteBanner";
34
34
  export type { SiteBannerBodyAnalysis, SiteBannerBodyIssue, SiteBannerDraft, SiteBannerDraftValidationIssue, SiteBannerRenderPlan, SiteBannerResolvedCta, } from "./siteBanner";
35
- export type { AiSiteWizardSuggestGoalsRequest, AiSiteWizardSuggestGoalsResponse, AdminDeleteSiteResponse, AdminDeleteUserResponse, AdminOwnedSiteSummary, DashboardConfig, DashboardNavigationConfig, DashboardNavVisibilityConfig, DashboardNavVisibilityConfigWithRoles, DashboardWaitlistEntry, DashboardWaitlistEntryStatus, DashboardWaitlistListResponse, MediaUsageCheckItem, MediaUsageCheckResponse, MediaUsageLocation, BookingCollectionOptionKind, BookingPaymentArchetype, BookingPaymentDefaults, BookingInstalmentIntervalUnit, BookingPaymentOptionsSource, BookingInstalmentPlanConfig, BookingPaymentCollectionOption, BookingPaymentTermsConfig, PublicBookingPaymentTermsAvailability, PublishedBlockBaseline, PublicBookingAppointmentSummary, PublicBookingCustomerSummary, PublicBookingAppointmentStatusResponse, PublicCreateBookingAppointmentResponse, EventPricingMode, EventAttendanceMode, EventCapacityByAttendanceMode, EventDeliveryMode, EventModeCapacity, PublicEventEligibilityTicketTypeRecord, PublicEventTicketTypeAvailability, PublicEventTicketTypeRecord, EventTicketTypeCapacityMode, EventTicketTypeAttendanceScope, EventTicketTypeInput, EventTicketTypeRecord, GoLiveDecision, LaunchReadiness, LaunchRequirement, LaunchRequirementAction, LaunchEmailPackState, LaunchReviewPackState, LaunchAppointmentsPackState, LaunchEventsPackState, LaunchCoursesPackState, LaunchPaymentsPackState, LaunchCustomDomainPackState, AcknowledgeLaunchRequirementRequest, AcknowledgeLaunchRequirementResponse, GoLiveSiteRequest, GoLiveSiteResponse, LaunchRequirementEvidence, LaunchRequirementId, LaunchOverridableRequirementId, LaunchRequirementOverride, LaunchRequirementOverrideDefinition, LaunchRequirementOverrideReason, LaunchRequirementOwner, LaunchRequirementPackId, LaunchRequirementPriority, LaunchRequirementState, OnboardingPreviewStatusResponse, OnboardingPreviewThemeOption, OnboardingPreviewThemesResponse, ResendOnboardingPreviewConfirmationResponse, PublicOnboardingAttemptResponse, PublicOnboardingAttemptProgress, PublicOnboardingAttemptProgressResponse, PublicOnboardingProvisioningStage, PublicOnboardingAttemptRunKickoff, PublicOnboardingAttemptRunResponse, MacadamiaOnboardingCourseSession, MacadamiaOnboardingDraftFirstOffering, MacadamiaOnboardingFirstOffering, MacadamiaOnboardingFirstOfferingDeliveryMode, MacadamiaOnboardingFirstOfferingKind, MacadamiaOnboardingFirstOfferingScheduleMode, MacadamiaOnboardingMappedPalette, MacadamiaOnboardingOfferingKind, MacadamiaOnboardingSiteMode, MacadamiaOnboardingStyleMood, MacadamiaOnboardingSurfaceData, MacadamiaOnboardingTeamMode, MacadamiaOnboardingVisualIdentity, MacadamiaOnboardingWeekday, SiteGenerationBookingOfferingKind, SiteAnalyticsCookieBannerCopyOverrides, SiteAnalyticsSettingsPayload, SiteBannerAnnouncementRole, SiteBannerCta, SiteBannerScope, SiteBannerSettingsPayload, SiteBannerTone, StripeConnectRestrictions, SiteLegalJurisdiction, SiteLegalProfilePayload, SensitiveClientRecordsConfirmationKey, SensitiveClientRecordsMode, SensitiveClientRecordsRetentionProfile, SensitiveClientRecordsSettings, SensitiveClientRecordsUpdatePayload, SitePrivacyPolicyCapabilities, SitePrivacyPolicyDocument, SitePrivacySettings, SitePrivacySettingsPayload, SitePrivacySettingsResponse, SiteRuntimePrivacyPolicy, WaitlistDashboardActionResponse, } from "./types";
35
+ export type { AiSiteWizardSuggestGoalsRequest, AiSiteWizardSuggestGoalsResponse, AdminDeleteSiteResponse, AdminDeleteUserResponse, AdminOwnedSiteSummary, DashboardConfig, DashboardNavigationConfig, DashboardNavVisibilityConfig, DashboardNavVisibilityConfigWithRoles, DashboardWaitlistEntry, DashboardWaitlistEntryStatus, DashboardWaitlistListResponse, MediaUsageCheckItem, MediaUsageCheckResponse, MediaUsageLocation, BookingCollectionOptionKind, BookingPaymentArchetype, BookingPaymentDefaults, BookingInstalmentIntervalUnit, BookingPaymentOptionsSource, BookingInstalmentPlanConfig, BookingPaymentCollectionOption, BookingPaymentTermsConfig, PublicBookingPaymentTermsAvailability, PublishedBlockBaseline, PublicBookingAppointmentSummary, PublicBookingCustomerSummary, PublicBookingAppointmentStatusResponse, PublicCreateBookingAppointmentResponse, EventPricingMode, EventAttendanceMode, EventCapacityByAttendanceMode, EventDeliveryMode, EventModeCapacity, PublicEventEligibilityTicketTypeRecord, PublicEventTicketTypeAvailability, PublicEventTicketTypeRecord, EventTicketTypeCapacityMode, EventTicketTypeAttendanceScope, EventTicketTypeInput, EventTicketTypeRecord, GoLiveDecision, LaunchReadiness, LaunchRequirement, LaunchRequirementAction, LaunchEmailPackState, LaunchReviewPackState, LaunchAppointmentsPackState, LaunchEventsPackState, LaunchCoursesPackState, LaunchPaymentsPackState, LaunchCustomDomainPackState, AcknowledgeLaunchRequirementRequest, AcknowledgeLaunchRequirementResponse, GoLiveSiteRequest, GoLiveSiteResponse, LaunchRequirementEvidence, LaunchRequirementId, LaunchOverridableRequirementId, LaunchRequirementOverride, LaunchRequirementOverrideDefinition, LaunchRequirementOverrideReason, LaunchRequirementOwner, LaunchRequirementPackId, LaunchRequirementPriority, LaunchRequirementState, OnboardingPreviewStatusResponse, OnboardingPreviewThemeOption, OnboardingPreviewThemesResponse, ResendOnboardingPreviewConfirmationResponse, PublicOnboardingAttemptResponse, PublicOnboardingAttemptProgress, PublicOnboardingAttemptProgressResponse, PublicOnboardingProvisioningStage, PublicOnboardingAttemptRunKickoff, PublicOnboardingAttemptRunResponse, MacadamiaOnboardingCourseSession, MacadamiaOnboardingDraftFirstOffering, MacadamiaOnboardingFirstOffering, MacadamiaOnboardingFirstOfferingDeliveryMode, MacadamiaOnboardingFirstOfferingKind, MacadamiaOnboardingFirstOfferingScheduleMode, MacadamiaOnboardingLogoAnalysis, MacadamiaOnboardingLogoPaletteRecommendation, MacadamiaOnboardingMappedPalette, MacadamiaOnboardingOfferingKind, MacadamiaOnboardingSiteMode, MacadamiaOnboardingStyleMood, MacadamiaOnboardingSurfaceData, MacadamiaOnboardingTeamMode, MacadamiaOnboardingVisualIdentity, MacadamiaOnboardingWeekday, SiteGenerationBookingOfferingKind, SiteAnalyticsCookieBannerCopyOverrides, SiteAnalyticsSettingsPayload, SiteBannerAnnouncementRole, SiteBannerCta, SiteBannerScope, SiteBannerSettingsPayload, SiteBannerTone, StripeConnectRestrictions, SiteLegalJurisdiction, SiteLegalProfilePayload, SensitiveClientRecordsConfirmationKey, SensitiveClientRecordsMode, SensitiveClientRecordsRetentionProfile, SensitiveClientRecordsSettings, SensitiveClientRecordsUpdatePayload, SitePrivacyPolicyCapabilities, SitePrivacyPolicyDocument, SitePrivacySettings, SitePrivacySettingsPayload, SitePrivacySettingsResponse, SiteRuntimePrivacyPolicy, WaitlistDashboardActionResponse, } from "./types";
36
36
  export { acknowledgeLaunchRequirementRequestSchema, goLiveSiteRequestSchema, LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS, toAcknowledgeLaunchRequirementRequest, } from "./siteOnboarding";
37
37
  export { MANAGED_PRIVACY_POLICY_PATH, DEFAULT_SITE_LEGAL_JURISDICTION, JURISDICTION_LABELS, SENSITIVE_CLIENT_RECORDS_CONFIRMATION_KEYS, SENSITIVE_CLIENT_RECORDS_CONFIRMATION_VERSION, buildManagedPrivacyPolicyDocument, } from "./privacyPolicy";
38
38
  export { analyticsCollect } from "./analytics";
@@ -69,6 +69,129 @@ export type UpdateWebhookResponse = {
69
69
  export type DeleteWebhookResponse = {
70
70
  success: boolean;
71
71
  };
72
+ export type SetupSdkRevalidationWebhookRequest = {
73
+ url: string;
74
+ name?: string;
75
+ rotateSecret?: boolean;
76
+ dryRun?: boolean;
77
+ vercel?: boolean;
78
+ };
79
+ export type SdkRevalidationWebhookPlannedEndpoint = {
80
+ name: string;
81
+ url: string;
82
+ events: string[];
83
+ enabled: boolean;
84
+ rotateSecret: boolean;
85
+ };
86
+ type SdkRevalidationWebhookSetupBase = {
87
+ message: string;
88
+ checklist: string[];
89
+ plannedEndpoint: SdkRevalidationWebhookPlannedEndpoint;
90
+ };
91
+ export type SetupSdkRevalidationWebhookDryRunResponse = SdkRevalidationWebhookSetupBase & {
92
+ dryRun: true;
93
+ action: 'would_create' | 'would_update' | 'would_rotate' | 'would_leave_unchanged';
94
+ endpoint: WebhookEndpointRecord | null;
95
+ };
96
+ export type SetupSdkRevalidationWebhookCreatedResponse = SdkRevalidationWebhookSetupBase & {
97
+ dryRun: false;
98
+ action: 'created' | 'rotated';
99
+ endpoint: WebhookEndpointRecord;
100
+ secret: string;
101
+ };
102
+ export type SetupSdkRevalidationWebhookUpdatedResponse = SdkRevalidationWebhookSetupBase & {
103
+ dryRun: false;
104
+ action: 'updated' | 'unchanged';
105
+ endpoint: WebhookEndpointRecord;
106
+ };
107
+ export type SetupSdkRevalidationWebhookResponse = SetupSdkRevalidationWebhookDryRunResponse | SetupSdkRevalidationWebhookCreatedResponse | SetupSdkRevalidationWebhookUpdatedResponse;
108
+ export type SdkDeploymentHealthStatus = 'not_connected' | 'misconfigured' | 'attention_needed' | 'healthy' | 'unknown';
109
+ export type SdkDeploymentHealthIssueCode = 'endpoint_missing' | 'duplicate_sdk_revalidation_endpoints' | 'endpoint_disabled' | 'endpoint_missing_secret' | 'endpoint_missing_events' | 'recent_delivery_failed' | 'failure_count_nonzero' | 'secret_rotated_without_success' | 'no_delivery_evidence';
110
+ export type SdkDeploymentHealthAction = {
111
+ tag: 'create_endpoint';
112
+ label: string;
113
+ adminOnly: true;
114
+ } | {
115
+ tag: 'repair_endpoint';
116
+ label: string;
117
+ adminOnly: true;
118
+ } | {
119
+ tag: 'rotate_secret';
120
+ label: string;
121
+ adminOnly: true;
122
+ } | {
123
+ tag: 'inspect_logs';
124
+ label: string;
125
+ adminOnly: false;
126
+ } | {
127
+ tag: 'none';
128
+ label: string;
129
+ adminOnly: false;
130
+ };
131
+ export type SdkDeploymentSafeDeliveryStatus = 'success' | 'failed' | 'unknown';
132
+ export type SdkDeploymentSafeDeliverySummary = {
133
+ id: string;
134
+ event: string;
135
+ status: SdkDeploymentSafeDeliveryStatus;
136
+ statusCode: number | null;
137
+ responseTimeMs: number | null;
138
+ deliveredAt: string;
139
+ snippet: string | null;
140
+ };
141
+ export type SdkDeploymentHealthState = {
142
+ tag: 'not_connected';
143
+ status: 'not_connected';
144
+ message: string;
145
+ issues: Array<{
146
+ code: Extract<SdkDeploymentHealthIssueCode, 'endpoint_missing'>;
147
+ message: string;
148
+ }>;
149
+ actions: SdkDeploymentHealthAction[];
150
+ } | {
151
+ tag: 'misconfigured';
152
+ status: 'misconfigured';
153
+ message: string;
154
+ issues: Array<{
155
+ code: Extract<SdkDeploymentHealthIssueCode, 'duplicate_sdk_revalidation_endpoints' | 'endpoint_disabled' | 'endpoint_missing_secret' | 'endpoint_missing_events'>;
156
+ message: string;
157
+ }>;
158
+ actions: SdkDeploymentHealthAction[];
159
+ } | {
160
+ tag: 'attention_needed';
161
+ status: 'attention_needed';
162
+ message: string;
163
+ issues: Array<{
164
+ code: Extract<SdkDeploymentHealthIssueCode, 'recent_delivery_failed' | 'failure_count_nonzero' | 'secret_rotated_without_success'>;
165
+ message: string;
166
+ }>;
167
+ actions: SdkDeploymentHealthAction[];
168
+ } | {
169
+ tag: 'healthy';
170
+ status: 'healthy';
171
+ message: string;
172
+ issues: [];
173
+ actions: SdkDeploymentHealthAction[];
174
+ } | {
175
+ tag: 'unknown';
176
+ status: 'unknown';
177
+ message: string;
178
+ issues: Array<{
179
+ code: Extract<SdkDeploymentHealthIssueCode, 'no_delivery_evidence'>;
180
+ message: string;
181
+ }>;
182
+ actions: SdkDeploymentHealthAction[];
183
+ };
184
+ export type SdkDeploymentHealthResponse = {
185
+ visible: boolean;
186
+ canonicalWebhookName: string;
187
+ canonicalEvents: readonly string[];
188
+ endpoint: WebhookEndpointRecord | null;
189
+ duplicateEndpoints: WebhookEndpointRecord[];
190
+ recentDeliveries: SdkDeploymentSafeDeliverySummary[];
191
+ health: SdkDeploymentHealthState;
192
+ };
193
+ export type SetupSdkDeploymentRevalidationWebhookRequest = SetupSdkRevalidationWebhookRequest;
194
+ export type SetupSdkDeploymentRevalidationWebhookResponse = SetupSdkRevalidationWebhookResponse;
72
195
  export type ApiKeyType = "content" | "preview" | "management";
73
196
  export type ApiKeyRecord = {
74
197
  id: string;
@@ -336,3 +459,4 @@ export type ImportBackupAsNewSiteResponse = {
336
459
  error?: string;
337
460
  code?: string;
338
461
  };
462
+ export {};
@@ -1,4 +1,5 @@
1
1
  import type { Theme } from "../../blocks/src/index";
2
+ import type { LogoFacts } from "../../theme-core/src/site-styles/index";
2
3
  import { z } from "zod";
3
4
  import type { AiGenerateSiteEntityType, AiGenerateSitePrimaryCta, AiGenerateSiteRequest } from "./siteGeneration";
4
5
  import type { BookingVerticalConfig } from "./bookingConfig";
@@ -91,11 +92,21 @@ export type MacadamiaOnboardingMappedPalette = {
91
92
  palette: Record<"primary" | "secondary" | "accent" | "background" | "surface" | "text", string>;
92
93
  mode: "light" | "dark";
93
94
  };
95
+ export type MacadamiaOnboardingLogoPaletteRecommendation = {
96
+ title: string;
97
+ palette: MacadamiaOnboardingMappedPalette["palette"];
98
+ };
99
+ export type MacadamiaOnboardingLogoAnalysis = {
100
+ logoFacts: LogoFacts;
101
+ recommendedPalettes: MacadamiaOnboardingLogoPaletteRecommendation[];
102
+ ignoredColors: string[];
103
+ };
94
104
  export type MacadamiaOnboardingVisualIdentity = {
95
105
  logoPath: string | null;
96
106
  logoUrl: string | null;
97
107
  logoPalette: string[] | null;
98
108
  logoMappedPalette: MacadamiaOnboardingMappedPalette | null;
109
+ logoAnalysis: MacadamiaOnboardingLogoAnalysis | null;
99
110
  primaryColor: string | null;
100
111
  secondaryColors: string[];
101
112
  selectedPaletteKey: string | null;
@@ -412,6 +423,7 @@ export type PublicOnboardingLogoUploadResponse = {
412
423
  path: string;
413
424
  publicUrl: string | null;
414
425
  palette: string[];
426
+ logoAnalysis: MacadamiaOnboardingLogoAnalysis | null;
415
427
  };
416
428
  export type PublicOnboardingAttemptStatus = "draft" | "claimed" | "provisioning" | "provisioned" | "completed" | "cancelled";
417
429
  export type PublicOnboardingProvisioningStage = "starting" | "site_setup" | "copy_generation" | "media_generation" | "page_creation" | "surface_setup" | "theme_setup" | "preview_ready";
@@ -482,6 +494,7 @@ export type SiteWizardResumeSnapshot = {
482
494
  palette: Record<"primary" | "secondary" | "accent" | "background" | "surface" | "text", string>;
483
495
  mode: "light" | "dark";
484
496
  } | null;
497
+ logoAnalysis?: MacadamiaOnboardingLogoAnalysis | null;
485
498
  goalSuggestions?: AiSiteWizardSuggestGoalsResponse | null;
486
499
  goalSuggestionsInputKey?: string | null;
487
500
  };
@@ -5,7 +5,7 @@ import type { MutableCourseStatus } from "./courses";
5
5
  import type { ListCustomBlocksResponse, CreateCustomBlockRequest, CreateCustomBlockResponse, DeleteCustomBlockResponse, GetCustomBlockResponse, SdkWorkflowRunStatusCallbackRequest, SdkWorkflowRunStatusCallbackResponse, UpdateCustomBlockRequest, UpdateCustomBlockResponse } from "./contentRuntime";
6
6
  import type { ContentTypeRecord, CreateContentTypeRequest, CreateContentTypeResponse, DeleteContentTypeResponse, DuplicateContentTypeResponse, ListContentTypesResponse, UpdateContentTypeRequest, UpdateContentTypeResponse } from "./contentTypes";
7
7
  import type { CheckRedirectQuery, CheckRedirectResponse, CreateRedirectRuleRequest, CreateRedirectRuleResponse, DeleteRedirectRuleResponse, ListRedirectRulesResponse } from "./redirects";
8
- import type { CreateManagementKeyRequest, CreateManagementKeyResponse, CreateSiteApiKeyRequest, CreateSiteApiKeyResponse, CreateSitePreviewKeyResponse, CreateWebhookRequest, CreateWebhookResponse, DeleteBackupUploadRequest, DeleteBackupUploadResponse, DeleteWebhookResponse, GetSiteApiKeyAccessLogsResponse, GetSitePreviewKeyResponse, GetWebhookResponse, ImportBackupAsNewSiteRequest, ImportBackupAsNewSiteResponse, ImportSiteBackupRequest, ListManagementKeysResponse, ListSiteApiKeysResponse, ListWebhooksResponse, RevokeManagementKeyRequest, RevokeManagementKeyResponse, RevokeSiteApiKeyResponse, UpdateWebhookRequest, UpdateWebhookResponse, BackupImportResponse, BackupPreviewRequest, BackupPreviewResponse, CreateBackupUploadUrlRequest, CreateBackupUploadUrlResponse } from "./siteInfrastructure";
8
+ import type { CreateManagementKeyRequest, CreateManagementKeyResponse, CreateSiteApiKeyRequest, CreateSiteApiKeyResponse, CreateSitePreviewKeyResponse, CreateWebhookRequest, CreateWebhookResponse, DeleteBackupUploadRequest, DeleteBackupUploadResponse, DeleteWebhookResponse, GetSiteApiKeyAccessLogsResponse, GetSitePreviewKeyResponse, GetWebhookResponse, ImportBackupAsNewSiteRequest, ImportBackupAsNewSiteResponse, ImportSiteBackupRequest, ListManagementKeysResponse, ListSiteApiKeysResponse, ListWebhooksResponse, RevokeManagementKeyRequest, RevokeManagementKeyResponse, RevokeSiteApiKeyResponse, SdkDeploymentHealthResponse, SetupSdkDeploymentRevalidationWebhookRequest, SetupSdkDeploymentRevalidationWebhookResponse, SetupSdkRevalidationWebhookRequest, SetupSdkRevalidationWebhookResponse, UpdateWebhookRequest, UpdateWebhookResponse, BackupImportResponse, BackupPreviewRequest, BackupPreviewResponse, CreateBackupUploadUrlRequest, CreateBackupUploadUrlResponse } from "./siteInfrastructure";
9
9
  import type { GetSiteInspirationAnalysisResponse, ListSiteInspirationAnalysesResponse } from "./siteGeneration";
10
10
  import type { ListGscPropertiesAdminResponse, AuthStatusResponse, CronAppointmentRemindersResponse, CronBillingStatusResponse, CronEventFeedbackEmailsResponse, CronEventOccurrencesResponse, CronEventRemindersResponse, CronMediaJobsQuery, CronMediaJobsResponse, CronNewsletterSendResponse, CronPaymentReconciliationResponse, CronSeoIngestResponse, CronWaitlistExpiryResponse } from "./siteOperations";
11
11
  import type { ApplySiteStyleSelectionBody, ApplySiteStyleSelectionResponse } from "./siteRuntimeEndpoints";
@@ -49,6 +49,12 @@ export type SitePlatformAPIEndpoints = {
49
49
  siteId: string;
50
50
  webhookId: string;
51
51
  }, DeleteWebhookResponse>;
52
+ getSdkDeploymentHealth: APIEndpoint<never, {
53
+ siteId: string;
54
+ }, SdkDeploymentHealthResponse>;
55
+ setupSdkDeploymentRevalidationWebhook: APIEndpoint<SetupSdkDeploymentRevalidationWebhookRequest, {
56
+ siteId: string;
57
+ }, SetupSdkDeploymentRevalidationWebhookResponse>;
52
58
  listSiteApiKeys: APIEndpoint<never, {
53
59
  siteId: string;
54
60
  }, ListSiteApiKeysResponse>;
@@ -470,6 +476,9 @@ export type SitePlatformAPIEndpoints = {
470
476
  }, {
471
477
  siteId: string;
472
478
  }, SdkUpdateSettingsResponse>;
479
+ sdkSetupRevalidationWebhook: APIEndpoint<SetupSdkRevalidationWebhookRequest, {
480
+ siteId: string;
481
+ }, SetupSdkRevalidationWebhookResponse>;
473
482
  listSiteContentTypes: APIEndpoint<never, {
474
483
  siteId: string;
475
484
  }, ListContentTypesResponse>;
@@ -12,6 +12,8 @@ export { formatPublishBlockedMessage, formatRecoveryConflictSummary, formatRecov
12
12
  export type { BlockDraftSaveability, BlockDraftValidationIssue, BlockManifestResolution, BlockManifestValidationMode, } from './blockDraftSaveability';
13
13
  export type { BaseFieldConfig, FieldConfig, TextFieldConfig, NumberFieldConfig, RichTextFieldConfig, MediaFieldConfig, FileFieldConfig, BooleanFieldConfig, DateFieldConfig, TimeFieldConfig, DateTimeFieldConfig, SlugFieldConfig, UrlFieldConfig, LinkFieldConfig, SelectFieldConfig, ReferenceFieldConfig, GroupFieldConfig, RepeaterFieldConfig, ButtonFieldConfig, ContentTypeSelectFieldConfig, EntryPickerFieldConfig, } from '../fields/types';
14
14
  export { createManifestFormAdapter } from '../manifest/manifestFormAdapter';
15
+ export { evaluateVisibility } from '../utils/evaluateVisibility';
16
+ export type { VisibilityValueReader } from '../utils/evaluateVisibility';
15
17
  export { PaletteProvider, usePalette } from '../palette/PaletteContext';
16
18
  export { SdkConfigProvider, useSdkConfig, useBlockFieldOptions } from '../sdk-config';
17
19
  export type { SdkConfig, SdkConfigProviderProps, SdkThemePalette, SdkSectionBackground, SdkSectionOptions, SdkSiteStyleConfig, SdkFieldSelectOption, SdkBlockFieldConfig, SdkBlockFieldOptionsMap, SdkBlockFieldExtensionsMap, } from '../sdk-config';
@@ -21,3 +21,5 @@ export type { FieldSettingsModalProps } from './widgets';
21
21
  export { SettingsModal } from './widgets';
22
22
  export type { SettingsModalProps, SettingsTab, SettingsTabId } from './widgets';
23
23
  export * from './utils/fieldHelpers';
24
+ export { evaluateVisibility } from './utils/evaluateVisibility';
25
+ export type { VisibilityValueReader } from './utils/evaluateVisibility';
@@ -6,4 +6,5 @@
6
6
  */
7
7
  import type { BaseFieldConfig } from '../fields/types';
8
8
  import type { FormBackend } from '../backend/types';
9
- export declare function evaluateVisibility(field: BaseFieldConfig, backend: FormBackend, path: string): boolean;
9
+ export type VisibilityValueReader = Pick<FormBackend, 'getValue'>;
10
+ export declare function evaluateVisibility(field: BaseFieldConfig, backend: VisibilityValueReader, path: string): boolean;
@@ -1 +1 @@
1
- export { enhanceHeaderSection } from '../system/runtime/header/enhanceHeaderSection';
1
+ export { mountHeaderChromeRuntime, type HeaderChromeRuntimeMountResult, type HeaderChromeRuntimeOptions, } from '../system/runtime/header/enhanceHeaderSection';
@@ -7,11 +7,11 @@
7
7
  *
8
8
  * For server-safe rendering, use './server'.
9
9
  */
10
- export { BlockApiProvider, useBlockApi, type BlockApiConfig } from './system/runtime/api';
10
+ export { BlockApiProvider, useBlockApi, type BlockApiConfig, } from './system/runtime/api';
11
11
  export { clientComponentRegistry } from './system/runtime/components/registry.client';
12
12
  export type { ComponentRegistry } from './system/runtime/resolver';
13
13
  export type { BookingPaymentOptionViewModel, BookingPaymentSelectionViewModel, } from './system/runtime/shared/bookingPaymentOptions';
14
- export { enhanceHeaderSection } from './system/runtime/header/enhanceHeaderSection';
14
+ export { mountHeaderChromeRuntime, type HeaderChromeRuntimeMountResult, type HeaderChromeRuntimeOptions, } from './system/runtime/header/enhanceHeaderSection';
15
15
  export { ClientThemeScope } from '../../theme-core/src/ClientThemeScope';
16
16
  export { ImageResolveContextProvider, useImageResolveContextOptional, } from './system/runtime/nodes/ImageResolveContext';
17
17
  export { FormNodeClient } from './system/runtime/nodes/form.client';
@@ -19,23 +19,23 @@ export { BookingFormClient } from './system/runtime/nodes/booking-form.client';
19
19
  export { HeadlessBookingPaymentSelectionStep, type HeadlessBookingPaymentSelectionStepProps, } from './system/runtime/nodes/booking-form.default-ui';
20
20
  export { HeadlessBookingProvider, createBookingBlockApiConfig, useHeadlessBookingFlow, } from './system/runtime/hooks/useHeadlessBookingFlow';
21
21
  export { AltchaWidget as HeadlessBookingAltchaWidget } from '../../altcha/src/client';
22
- export { EventRegistrationClient, EventRegistrationIslandClient } from './system/runtime/nodes/event-registration.client';
23
- export { EventDetailsClient, EventDetailsIslandClient } from './system/runtime/nodes/event-details.client';
24
- export { LocationMapClient, LocationMapIslandClient } from './system/runtime/nodes/location-map.client';
25
- export { CourseRegistrationClient, CourseRegistrationIslandClient } from './system/runtime/nodes/course-registration.client';
26
- export { EventListingClient, EventCalendarClient, EventCombinedClient, EventCombinedIslandClient } from './system/runtime/nodes/events';
22
+ export { EventRegistrationClient, EventRegistrationIslandClient, } from './system/runtime/nodes/event-registration.client';
23
+ export { EventDetailsClient, EventDetailsIslandClient, } from './system/runtime/nodes/event-details.client';
24
+ export { LocationMapClient, LocationMapIslandClient, } from './system/runtime/nodes/location-map.client';
25
+ export { CourseRegistrationClient, CourseRegistrationIslandClient, } from './system/runtime/nodes/course-registration.client';
26
+ export { EventListingClient, EventCalendarClient, EventCombinedClient, EventCombinedIslandClient, } from './system/runtime/nodes/events';
27
27
  export { CarouselNodeClient } from './system/runtime/nodes/carousel.client';
28
28
  export { normalizeCarouselProps } from './system/runtime/nodes/carousel.client';
29
29
  export type { CarouselNodeClientProps, NormalizedCarouselProps, ResponsiveSlidesToShow, } from './system/runtime/nodes/carousel.client';
30
- export { MediaNode, type MediaNodeProps } from './system/runtime/nodes/media.client';
30
+ export { MediaNode, type MediaNodeProps, } from './system/runtime/nodes/media.client';
31
31
  export type { BookingFormClientProps, FormConfig as BookingFormConfig, Service as BookingService, } from './system/runtime/nodes/booking-form.client';
32
- export { BOOKING_FORM_DATA_RESERVED_KEY_VALUES, } from './system/runtime/nodes/booking-form.reserved-fields';
32
+ export { BOOKING_FORM_DATA_RESERVED_KEY_VALUES } from './system/runtime/nodes/booking-form.reserved-fields';
33
33
  export type { BookingFormData, BookingSelectedCollectionOptionKind, } from './system/runtime/nodes/booking-form.state';
34
34
  export type { BookingAvailabilityModel, BookingAppointmentPackagesModel, BookingDiscountModel, BookingFieldsModel, BookingFlowActions, BookingPaymentModel, BookingResourcesModel, BookingServicesModel, BookingSpamProtectionModel, HeadlessBookingFlow, HeadlessBookingFlowOptions, HeadlessBookingProviderProps, } from './system/runtime/hooks/useHeadlessBookingFlow';
35
35
  export type { AppointmentBookingOverrideData, AppointmentBookingOverrideInput, AppointmentBookingOverrideInputResult, AppointmentBookingOverridePropsLike, BookingAvailabilityQuery, BookingAppointmentPackagesUnavailableReason, BookingFieldValue, BookingFieldView, BookingFlowActionResult, BookingFlowFeedback, BookingFlowStatus, BookingFlowView, BookingResourceView, BookingFlowStep, BookingFlowStepId, BookingSlotView, BookingSubmitActionResult, BookingSubmitOptions, BookingValidationErrors, DerivedBookingFlowSteps, DeriveBookingFlowStepsInput, LoadState, } from './system/runtime/hooks/useHeadlessBookingFlow.state';
36
36
  export { buildBookingAvailabilityQuery, buildBookingStepPlan, buildBookingSubmitPlan, createEmptyBookingValidationErrors, createFieldBookingValidationErrors, createFormBookingValidationError, describeUnknownError, deriveBookingFlowSteps, deriveBookingFieldViews, getAppointmentBookingOverrideInput, hasBookingValidationErrors, resolveAppointmentPackagesModel, resolveHeadlessBookingStatus, resolveHeadlessBookingView, toBookingFormData, toBookingSlotView, toBookingSlotViews, validateBookingField, validateBookingFields, validateBookingStep, } from './system/runtime/hooks/useHeadlessBookingFlow.state';
37
- export type { EventDetailsClientProps, EventDetailsIslandClientProps } from './system/runtime/nodes/event-details.client';
38
- export type { LocationMapClientProps, LocationMapIslandClientProps } from './system/runtime/nodes/location-map.client';
37
+ export type { EventDetailsClientProps, EventDetailsIslandClientProps, } from './system/runtime/nodes/event-details.client';
38
+ export type { LocationMapClientProps, LocationMapIslandClientProps, } from './system/runtime/nodes/location-map.client';
39
39
  export type { EventRegistrationClientProps, EventRegistrationIslandClientProps, } from './system/runtime/nodes/event-registration.client';
40
40
  export type { CourseRegistrationClientProps, CourseRegistrationIslandClientProps, } from './system/runtime/nodes/course-registration.client';
41
41
  export { ShopClient } from './system/runtime/nodes/shop.client';
@@ -52,4 +52,4 @@ export type { ShopDisplayConfig } from './system/runtime/nodes/shop.types';
52
52
  export { NewsletterFormClient } from './system/runtime/nodes/newsletter-form.client';
53
53
  export type { NewsletterFormProps } from './system/runtime/nodes/newsletter-form.types';
54
54
  export { useBookingFormConfig } from './system/runtime/hooks/useBookingFormConfig';
55
- export type { Service, BookingFormConfig as BookingFormConfigHook } from './system/runtime/hooks/useBookingFormConfig';
55
+ export type { Service, BookingFormConfig as BookingFormConfigHook, } from './system/runtime/hooks/useBookingFormConfig';
@@ -14,7 +14,7 @@ export * from '../../theme-core/src/site-styles/index';
14
14
  export * from '../../theme-core/src/styles/buttons';
15
15
  export * from '../../theme-core/src/styles/buttonsLibrary';
16
16
  export { type ButtonBackground, type ButtonBorder, type ButtonGlobalSettings, type ButtonSystem, type ButtonVariant, type CornerStyle, type EffectApplication, type FontWeight, type GradientSharpness, type GradientStyle, type HoverColor, type HoverTransform, type ShadowSize, type TextTransform, buttonBackgroundSchema, buttonBorderSchema, buttonGlobalSettingsSchema, buttonSystemSchema, buttonVariantSchema, cornerStyleSchema, effectApplicationSchema, fontWeightSchema, gradientSharpnessSchema, gradientStyleSchema, hoverColorSchema, hoverTransformSchema, shadowSizeSchema, textTransformSchema, generateButtonCss, generateDefaultButtonSystem, buttonPresets, type ButtonPreset, EFFECT_PRESETS, getEffectPreset, getEffectPresetsByCategory, getAllEffectPresets, type EffectCategory, type EffectPreset, type EffectContext, type StateGroup, generateButtonCoreCss, getDefaultButtonVariants, type ButtonVariantCore, type ButtonCoreSettings, type ButtonBackgroundType, type GradientDirection, } from '../../theme-core/src/buttons/index';
17
- export { type CardBackground, type CardBorder, type CardSpacing, type CardSystem, type CardVariant, cardBackgroundSchema, cardBorderSchema, cardSpacingSchema, cardSystemSchema, cardVariantSchema, generateCardCss, generateDefaultCardSystem, generateCardCoreCss, getDefaultCardVariants, type CardVariantCore, type CardCoreSettings, type CardBackgroundType, type CardSpacingCore, } from '../../theme-core/src/cards/index';
17
+ export { type CardBackground, type CardBorder, type CardSpacing, type CardSystem, type CardVariant, type CardVariantRole, type BoxStylesCardVariant, cardBackgroundSchema, cardBorderSchema, cardSpacingSchema, cardSystemSchema, cardVariantSchema, cardVariantRoleSchema, boxStylesCardVariantSchema, normalizeCardVariantRole, normalizeBoxStylesCardVariant, generateCardCss, generateDefaultCardSystem, generateCardCoreCss, getDefaultCardVariants, type CardVariantCore, type CardCoreSettings, type CardBackgroundType, type CardSpacingCore, } from '../../theme-core/src/cards/index';
18
18
  export { generateInputCoreCss, getDefaultInputSettings, type InputCoreSettings, } from '../../theme-core/src/inputs/core';
19
19
  export * from '../../theme-core/src/tokens/index';
20
20
  export * from '../../theme-core/src/styles/gradients';
@@ -1,7 +1,7 @@
1
1
  import type { SystemBlockDefinition } from "../../registry";
2
2
  import { type SectionStylesContent } from "../../fields/boxStyles";
3
3
  import { eventListingBlockRuntime } from "../../runtime/nodes/events/EventListing.interactive";
4
- import type { EventBlockKind, EventScheduleScope, EventSurfacePreset, EventSurfaceScope } from "./shared/types";
4
+ import type { EventBlockKind, EventCardVariantInput, EventScheduleScope, EventSurfacePreset, EventSurfaceScope } from "./shared/types";
5
5
  export declare const eventListingManifest: import("../..").DefinedBlockManifest<{
6
6
  readonly additionalFields: readonly [{
7
7
  readonly id: "layout";
@@ -35,7 +35,7 @@ export type EventListingContent = {
35
35
  paginationMode?: "loadMore" | "seeAllLink" | null;
36
36
  seeAllUrl?: string | null;
37
37
  loadMoreText?: string | null;
38
- cardVariant?: "default" | "variant1" | "variant2" | null;
38
+ cardVariant?: EventCardVariantInput | null;
39
39
  buttonVariant?: "primary" | "secondary" | "outline" | "link" | null;
40
40
  buttonText?: string | null;
41
41
  showVenue?: boolean | null;
@@ -3,6 +3,7 @@ import type { SystemBlockDefinition } from "../../registry";
3
3
  import type { NodeDefinition } from "../../node";
4
4
  import { type SectionStylesContent } from "../../fields/boxStyles";
5
5
  import { type BlockConfig, type BlockContentShapeInput, type DefinedBlockManifest } from "../../defineBlock";
6
+ import type { EventCardVariantInput } from "./shared/types";
6
7
  /**
7
8
  * Event Spotlight Block
8
9
  *
@@ -32,7 +33,7 @@ export type EventSpotlightContent = {
32
33
  ctaUrl?: LinkValue | string | null;
33
34
  layout?: "grid" | "stack" | null;
34
35
  columns?: "2" | "3" | null;
35
- cardVariant?: "default" | "variant1" | "variant2" | null;
36
+ cardVariant?: EventCardVariantInput | null;
36
37
  buttonVariant?: "primary" | "secondary" | "outline" | "link" | null;
37
38
  buttonText?: string | null;
38
39
  showVenue?: boolean | null;
@@ -8,6 +8,7 @@ import type { PublicTeamMemberSummary } from '../../shared/teamMembers';
8
8
  import type { CoursePricing } from '../../courses/shared/types';
9
9
  import type { eventCalendarDisplayModeValues, eventCalendarListLayoutValues } from '../../../constants/events';
10
10
  import type { EventBlockKind, EventScheduleScope, EventSurfacePreset, EventSurfaceScope } from './filtering';
11
+ import type { CardVariantRole, LegacyCardVariantRoleAlias } from '../../../../../../theme-core/src/cards/index';
11
12
  /**
12
13
  * Geographic coordinates for venue location
13
14
  */
@@ -156,7 +157,9 @@ export type PublicEvent = {
156
157
  /**
157
158
  * Card variant options for event display
158
159
  */
159
- export type CardVariant = "default" | "variant1" | "variant2";
160
+ export type CardVariant = CardVariantRole;
161
+ export type LegacyEventCardVariant = LegacyCardVariantRoleAlias;
162
+ export type EventCardVariantInput = CardVariant | LegacyEventCardVariant;
160
163
  /**
161
164
  * Card orientation options for event display
162
165
  * - vertical: Standard card layout with image on top (grid mode)
@@ -11,6 +11,7 @@ export declare const testimonialsManifest: import("..").DefinedBlockManifest<imp
11
11
  readonly carousel: NodeDefinition;
12
12
  readonly grid: NodeDefinition;
13
13
  readonly 'split-grid': NodeDefinition;
14
+ readonly highlight: NodeDefinition;
14
15
  };
15
16
  readonly defaultVariant: "carousel";
16
17
  readonly variantOptions: {
@@ -29,6 +30,11 @@ export declare const testimonialsManifest: import("..").DefinedBlockManifest<imp
29
30
  readonly description: "Heading on the left with testimonial cards on the right";
30
31
  readonly icon: "PanelLeft";
31
32
  };
33
+ readonly highlight: {
34
+ readonly label: "Highlight";
35
+ readonly description: "A single, centered testimonial with no carousel";
36
+ readonly icon: "Quote";
37
+ };
32
38
  };
33
39
  readonly additionalFields: import("../../../../block-form/src/backend/index").FieldDefinition[];
34
40
  readonly description: "Display customer testimonials in carousel or grid layouts.";
@@ -47,7 +53,7 @@ export declare const testimonialsManifest: import("..").DefinedBlockManifest<imp
47
53
  };
48
54
  }>>;
49
55
  export type TestimonialsBlockContent = {
50
- variant?: 'carousel' | 'grid' | 'split-grid' | null;
56
+ variant?: 'carousel' | 'grid' | 'split-grid' | 'highlight' | null;
51
57
  heading?: string | null;
52
58
  subheading?: string | null;
53
59
  avatarLayout?: 'above-centered' | 'inline-left' | 'hidden' | null;