@riverbankcms/sdk 0.111.0 → 0.119.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 (196) hide show
  1. package/dist/{PreviewEditorSidebar-CTR6LUhN.mjs → PreviewEditorSidebar-C7TXFitV.mjs} +4 -4
  2. package/dist/{PreviewEditorUI-DZg15Zip.mjs → PreviewEditorUI-_1JIHTXS.mjs} +3 -3
  3. package/dist/{PreviewQueryProvider-kkmjklLG.mjs → PreviewQueryProvider-nKUT4TL-.mjs} +1 -1
  4. package/dist/{SdkPreviewModeRuntime-DeOTAFvR.mjs → SdkPreviewModeRuntime-CvJTVgWa.mjs} +2579 -34325
  5. package/dist/{SiteChromeCustomizeContext-DOSDLCiJ.mjs → SiteChromeCustomizeContext-66QfCbAS.mjs} +64625 -32791
  6. package/dist/_dts/ai/src/contracts/proposals.d.ts +5211 -639
  7. package/dist/_dts/ai/src/designer/themePatch.d.ts +1 -1
  8. package/dist/_dts/api/src/bookingAdjustments.d.ts +30 -36
  9. package/dist/_dts/api/src/bookingConfig.d.ts +26 -1
  10. package/dist/_dts/api/src/bookingRecords.d.ts +6 -74
  11. package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +3 -3
  12. package/dist/_dts/api/src/contentRuntime.d.ts +5 -1
  13. package/dist/_dts/api/src/customerMembershipOutcomes.d.ts +4 -4
  14. package/dist/_dts/api/src/endpoints.d.ts +35 -0
  15. package/dist/_dts/api/src/event-presentation.d.ts +4 -0
  16. package/dist/_dts/api/src/index.d.ts +4 -4
  17. package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +4 -1
  18. package/dist/_dts/api/src/navigation/dashboardSettingsNav.d.ts +2 -2
  19. package/dist/_dts/api/src/sdk-event-upsert.d.ts +2 -2
  20. package/dist/_dts/api/src/sdkContracts.d.ts +85 -7
  21. package/dist/_dts/api/src/siteBanner.d.ts +8 -8
  22. package/dist/_dts/api/src/siteOperations.d.ts +1 -1
  23. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +32 -4
  24. package/dist/_dts/block-form/src/widgets/RichTextField/richTextFieldDefaults.d.ts +3 -12
  25. package/dist/_dts/block-form/src/widgets/RichTextField/richTextFieldSchema.d.ts +1 -5
  26. package/dist/_dts/blocks/src/bindings/index.d.ts +1 -10
  27. package/dist/_dts/blocks/src/index.d.ts +3 -6
  28. package/dist/_dts/blocks/src/primitives/content/primitives.d.ts +2 -2
  29. package/dist/_dts/blocks/src/system/blocks/body-text.d.ts +2 -2
  30. package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule.d.ts +2 -2
  31. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +2 -8
  32. package/dist/_dts/blocks/src/system/blocks/feature-card-icons.d.ts +2 -2
  33. package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +3 -3
  34. package/dist/_dts/blocks/src/system/blocks/form.d.ts +2 -15
  35. package/dist/_dts/blocks/src/system/blocks/intro.d.ts +2 -2
  36. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +66 -66
  37. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +2 -16
  38. package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +0 -3
  39. package/dist/_dts/blocks/src/system/fragments/index.d.ts +0 -1
  40. package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +19 -2
  41. package/dist/_dts/blocks/src/system/manifest/richTextSchema.d.ts +8 -70
  42. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +1 -0
  43. package/dist/_dts/blocks/src/system/manifest/validation.d.ts +6 -0
  44. package/dist/_dts/blocks/src/system/node/schema.d.ts +4 -4
  45. package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -10
  46. package/dist/_dts/blocks/src/system/runtime/nodes/buttonAffordance.d.ts +5 -21
  47. package/dist/_dts/blocks/src/system/runtime/nodes/richText-coerce.d.ts +14 -2
  48. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -1
  49. package/dist/_dts/content-editor/src/controller/seedDraftBaselinesFromBlocks.d.ts +1 -1
  50. package/dist/_dts/content-editor/src/hooks/useBlockAutosave.d.ts +17 -1
  51. package/dist/_dts/content-editor/src/hooks/useDebouncedLatestSave.d.ts +1 -1
  52. package/dist/_dts/content-editor/src/hooks/useSimpleAutosave.d.ts +1 -1
  53. package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +3 -2
  54. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +2 -2
  55. package/dist/_dts/content-editor/src/ui/stores/autosaveStore.d.ts +1 -1
  56. package/dist/_dts/content-editor/src/ui/stores/types.d.ts +1 -1
  57. package/dist/_dts/content-model/src/content-types/builtins.d.ts +3 -15
  58. package/dist/_dts/content-model/src/content-types/entryValidation.d.ts +2 -0
  59. package/dist/_dts/content-model/src/content-types/schema.d.ts +1 -1
  60. package/dist/_dts/content-model/src/templates/defaults.d.ts +1 -21
  61. package/dist/_dts/core/src/editor-state.d.ts +14 -1
  62. package/dist/_dts/core/src/footer-composition.d.ts +2 -1
  63. package/dist/_dts/core/src/index.d.ts +1 -0
  64. package/dist/_dts/core/src/rich-text.d.ts +16 -0
  65. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +189 -86
  66. package/dist/_dts/editor/src/index.d.ts +1 -1
  67. package/dist/_dts/editor/src/primitives/rich-text/utils.d.ts +3 -5
  68. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +1 -1
  69. package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +2 -1
  70. package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +2 -1
  71. package/dist/_dts/editor-blocks/src/block-editor/blockDraftBaselineSeed.d.ts +15 -0
  72. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockBaselineSync.d.ts +3 -7
  73. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +12 -0
  74. package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +1 -0
  75. package/dist/_dts/editor-blocks/src/block-editor/utils.d.ts +1 -1
  76. package/dist/_dts/editor-blocks/src/index.d.ts +6 -5
  77. package/dist/_dts/editor-blocks/src/widgets/rich-text/RichTextField.d.ts +2 -2
  78. package/dist/_dts/media-core/src/contentMediaAudit.d.ts +104 -0
  79. package/dist/_dts/media-core/src/contentMediaAuditFieldAdapter.d.ts +8 -0
  80. package/dist/_dts/media-core/src/contentMediaSnapshotAudit.d.ts +22 -0
  81. package/dist/_dts/media-core/src/index.d.ts +3 -1
  82. package/dist/_dts/sdk/src/cli/commands/event.d.ts +18 -1
  83. package/dist/_dts/sdk/src/cli/commands/push/execute/theme.d.ts +2 -16
  84. package/dist/_dts/sdk/src/cli/content/reader.d.ts +8 -5
  85. package/dist/_dts/sdk/src/client/management/events.d.ts +2 -1
  86. package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
  87. package/dist/_dts/sdk/src/client/management/types.d.ts +36 -9
  88. package/dist/_dts/sdk/src/config/typed-entries.d.ts +7 -7
  89. package/dist/_dts/sdk/src/config/validation.d.ts +7 -7
  90. package/dist/_dts/sdk/src/contracts/content.d.ts +5 -15
  91. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  92. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +12 -25
  93. package/dist/_dts/sdk/src/contracts/theme.d.ts +2 -18
  94. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +1 -1
  95. package/dist/_dts/sdk/src/manifest/three-pass-converter.d.ts +4 -4
  96. package/dist/_dts/sdk/src/rendering/helpers/bindings.d.ts +1 -2
  97. package/dist/_dts/sdk/src/rendering/helpers/index.d.ts +1 -1
  98. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -13
  99. package/dist/_dts/sdk/src/theme/index.d.ts +0 -29
  100. package/dist/_dts/sdk/src/version.d.ts +1 -1
  101. package/dist/_dts/site-commands/src/commands.d.ts +31 -18
  102. package/dist/_dts/theme-core/src/buttons/affordanceIcons.d.ts +2 -2
  103. package/dist/_dts/theme-core/src/buttons/core.d.ts +0 -1
  104. package/dist/_dts/theme-core/src/buttons/effectClassification.d.ts +22 -9
  105. package/dist/_dts/theme-core/src/buttons/effects/presets/background.d.ts +1 -2
  106. package/dist/_dts/theme-core/src/buttons/effects/presets/border.d.ts +1 -2
  107. package/dist/_dts/theme-core/src/buttons/effects/presets/overlay.d.ts +3 -1
  108. package/dist/_dts/theme-core/src/buttons/effects/presets/shadow.d.ts +2 -2
  109. package/dist/_dts/theme-core/src/buttons/effects/types.d.ts +8 -18
  110. package/dist/_dts/theme-core/src/buttons/generateButtonCss.d.ts +2 -2
  111. package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +5 -5
  112. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -4
  113. package/dist/_dts/theme-core/src/buttons/parseThemeForPersistence.d.ts +36 -0
  114. package/dist/_dts/theme-core/src/buttons/types.d.ts +1638 -93
  115. package/dist/_dts/theme-core/src/cards/types.d.ts +13 -13
  116. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +969 -69
  117. package/dist/_dts/theme-core/src/navigation/types.d.ts +2 -2
  118. package/dist/_dts/theme-core/src/recommend/generateThemes.d.ts +0 -1
  119. package/dist/_dts/theme-core/src/schema.d.ts +1100 -116
  120. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  121. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +14 -14
  122. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
  123. package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +4 -4
  124. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +6 -0
  125. package/dist/cli/index.mjs +5706 -4852
  126. package/dist/cli/init-docs/content/cli-reference.md +40 -1
  127. package/dist/cli/init-docs/content/content-management.md +6 -0
  128. package/dist/client/{DiscountCodeDisclosure-C4xvTBux.mjs → DiscountCodeDisclosure-DIWj-P9v.mjs} +1 -1
  129. package/dist/client/{EventCombined.client-Cr7G131j.mjs → EventCombined.client-De8YWBSr.mjs} +2 -2
  130. package/dist/client/{EventListing.client-CAjbseNy.mjs → EventListing.client-seHTjimY.mjs} +2 -2
  131. package/dist/client/{LeafletStaticMap-BMlWfwz3.mjs → LeafletStaticMap-BmQxFcJW.mjs} +1 -1
  132. package/dist/client/{MagicLinkForm-ChdFz96y.mjs → MagicLinkForm-OoJAIUIj.mjs} +1 -1
  133. package/dist/client/{StepIndicator-7D3GaBeM.mjs → StepIndicator-CiZ8kdPk.mjs} +2 -2
  134. package/dist/client/{accordion-D8JTs2Si.mjs → accordion-6lnN__XJ.mjs} +1 -1
  135. package/dist/client/{bookingForm-H3DCRBHs.mjs → bookingForm-5uyqhONU.mjs} +6 -6
  136. package/dist/client/bookings.mjs +2219 -527
  137. package/dist/client/{carousel-DMr_QWlz.mjs → carousel-Dtnifil_.mjs} +1 -1
  138. package/dist/client/{cart-DWMbfBdR.mjs → cart-5Tc5S7NV.mjs} +3 -3
  139. package/dist/client/{checkout-zmfdkXLx.mjs → checkout-CYKKN5Hr.mjs} +3 -3
  140. package/dist/client/client.mjs +2498 -2384
  141. package/dist/client/{colorTokenParts-FSS3al6l.mjs → colorStyles-BWpj_h4C.mjs} +88 -1
  142. package/dist/client/{courseRegistration-Z_mn18jy.mjs → courseRegistration-CxCBybB4.mjs} +6 -6
  143. package/dist/client/{eventCalendar-CYp0YJGF.mjs → eventCalendar-Xj2jZS9X.mjs} +4 -4
  144. package/dist/client/{eventCombined-rKyYZUa9.mjs → eventCombined-CgcMoOgM.mjs} +2 -2
  145. package/dist/client/{eventDetails-X0ZaUuMj.mjs → eventDetails-CEAH8Edc.mjs} +3 -3
  146. package/dist/client/{eventListing-W1SuL7EP.mjs → eventListing-qyPVQ0wP.mjs} +2 -2
  147. package/dist/client/{eventRegistration-ClWricui.mjs → eventRegistration-DDu79CtL.mjs} +6 -6
  148. package/dist/client/{form--eKPwAAD.mjs → form-Bc7JKI7I.mjs} +1 -1
  149. package/dist/client/{headerSection-BSeGr-FS.mjs → headerSection-vTku_LEl.mjs} +2 -2
  150. package/dist/client/hooks.mjs +373 -555
  151. package/dist/client/{locationMap-BpOrtNYn.mjs → locationMap-Bg7X4Jna.mjs} +3 -3
  152. package/dist/client/{media-DoF0dcVx.mjs → media-CNE1Z-wb.mjs} +1 -2
  153. package/dist/client/{newsletterForm-Bt7it7Dy.mjs → newsletterForm-lpylVdp5.mjs} +1 -1
  154. package/dist/client/{pricing-BTjSDDr4.mjs → pricing-DE8fjJiT.mjs} +1 -1
  155. package/dist/client/{productDetail-ICnVTcCg.mjs → productDetail-D7Bo2RMH.mjs} +3 -3
  156. package/dist/client/{productList-ZHr6D604.mjs → productList-VjnZqiqN.mjs} +3 -3
  157. package/dist/client/{propsDecoder-wWN0tBDF.mjs → propsDecoder-DreFXjNP.mjs} +2212 -621
  158. package/dist/client/rendering/client.mjs +21612 -21646
  159. package/dist/client/rendering/islands.mjs +20 -20
  160. package/dist/client/rendering.mjs +1571 -1547
  161. package/dist/client/{shop-C1u_BUn0.mjs → shop-IRsHHbf7.mjs} +5 -5
  162. package/dist/client/{shop-commerce-CleZdRha.mjs → shop-commerce-gnI8PieZ.mjs} +27 -10
  163. package/dist/client/{shop-commerce-store-ycnoB2Ce.mjs → shop-commerce-store-BTbrhObn.mjs} +1 -1
  164. package/dist/client/{shopShared-CPhByt2a.mjs → shopShared-D6KS2_qk.mjs} +3 -3
  165. package/dist/client/{useDiscountCodeUi-cStSQI6C.mjs → useDiscountCodeUi-DCccGCxV.mjs} +1 -1
  166. package/dist/client/{useEventFilters-DKPN7hSY.mjs → useEventFilters-eGs3rPZQ.mjs} +3 -104
  167. package/dist/client/{usePolling-BKAd6pkZ.mjs → usePolling-CvSU2sur.mjs} +2 -2
  168. package/dist/preview-next/before-render.mjs +57 -0
  169. package/dist/preview-next/client/runtime.mjs +4 -4
  170. package/dist/preview-next/middleware.mjs +57 -0
  171. package/dist/{previewAuthStore-BkT1D06A.mjs → previewAuthStore-DN7vcRsv.mjs} +57 -0
  172. package/dist/{sdk-runtime-hu3wr3ng.mjs → sdk-runtime-DaOiA7ct.mjs} +2 -2
  173. package/dist/{separator-Bln8izQ9.mjs → separator-CqRhcCxD.mjs} +1 -1
  174. package/dist/server/components.mjs +4092 -4108
  175. package/dist/server/config-template-validation.mjs +4 -23
  176. package/dist/server/config-validation.mjs +373 -555
  177. package/dist/server/config.mjs +410 -558
  178. package/dist/server/data.mjs +373 -555
  179. package/dist/server/index.mjs +58 -1
  180. package/dist/server/next.mjs +32958 -32926
  181. package/dist/server/page-converter.mjs +369 -526
  182. package/dist/server/prebuild.mjs +1 -1
  183. package/dist/server/rendering/server.mjs +5371 -3174
  184. package/dist/server/rendering.mjs +4099 -4124
  185. package/dist/server/routing.mjs +758 -966
  186. package/dist/server/server.mjs +448 -632
  187. package/dist/server/theme-bridge.mjs +472 -525
  188. package/dist/server/theme.mjs +1074 -392
  189. package/package.json +1 -1
  190. package/dist/_dts/blocks/src/primitives/content/components/Button.d.ts +0 -40
  191. package/dist/_dts/blocks/src/system/fragments/library/footerBottomText.d.ts +0 -19
  192. package/dist/_dts/media-core/src/legacyMediaValue.d.ts +0 -11
  193. package/dist/_dts/theme-core/src/styles/buttons.d.ts +0 -27
  194. package/dist/_dts/theme-core/src/styles/buttonsLibrary.d.ts +0 -2
  195. package/dist/_dts/theme-core/src/styles/glow.d.ts +0 -3
  196. package/dist/client/colorStyles-gcTh5yZT.mjs +0 -89
@@ -1,5 +1,5 @@
1
1
  import type { AppointmentResourceId } from "../../../core/src/index";
2
- import type { BookingVerticalConfig } from "../bookingConfig";
2
+ import type { BookingSettingsSection, BookingVerticalConfig } from "../bookingConfig";
3
3
  import { type EventSeriesCanonicalBehaviour } from "../bookingVerticals";
4
4
  import { type StaffScope } from "../staffAccess";
5
5
  import type { SiteRole } from "../siteMembers";
@@ -73,6 +73,9 @@ export type DashboardBookingsNavDestination = Readonly<{
73
73
  kind: "booking_customers";
74
74
  }> | Readonly<{
75
75
  kind: "booking_settings";
76
+ section: BookingSettingsSection;
77
+ }> | Readonly<{
78
+ kind: "booking_closures";
76
79
  }>;
77
80
  export type DashboardBookingsNavItemPlan = Readonly<{
78
81
  label: string;
@@ -3,7 +3,7 @@ import { type NavStage } from "./visibility";
3
3
  import { type DashboardDemoUiMode } from "./dashboardSiteNav";
4
4
  export type DashboardSettingsNavSurfaceId = "settings.features" | "settings.general" | "settings.privacy" | "settings.domains" | "settings.fonts" | "settings.bookings" | "settings.redirects" | "settings.emails" | "settings.ai.siteProfile" | "settings.ai.brandGuidelines" | "settings.ai.iconStyleGuide" | "settings.team" | "settings.billing" | "settings.developer" | "settings.logs" | "settings.apiKeys" | "settings.backup";
5
5
  export type DashboardSettingsDangerItemId = "settings.danger";
6
- export type SettingsNavFeatureFlag = "hasSiteCost";
6
+ export type SettingsNavFeatureFlag = "hasPlatformCollectedBillingArrangement";
7
7
  export type DashboardSettingsNavDescriptor = Readonly<{
8
8
  id: DashboardSettingsNavSurfaceId;
9
9
  label: string;
@@ -36,7 +36,7 @@ export type DashboardSettingsNavPlan = Readonly<{
36
36
  export type DashboardSettingsNavPlanContext = Readonly<{
37
37
  role: SiteRole | null;
38
38
  sdkConfig: unknown;
39
- hasSiteCost?: boolean;
39
+ hasPlatformCollectedBillingArrangement?: boolean;
40
40
  demoUiMode?: DashboardDemoUiMode;
41
41
  }>;
42
42
  export declare const DASHBOARD_SETTINGS_NAV_GROUPS: readonly DashboardSettingsNavGroupDescriptor[];
@@ -1,4 +1,4 @@
1
- import type { SdkEntryUpsertSlotBlock, SdkPullEventSeries, SdkEventUpsertPaymentTermsInput, SdkEventUpsertPricingInput, SdkEventUpsertScheduleInput } from './sdkContracts';
1
+ import type { SdkEntryUpsertSlotBlock, SdkEventContentInput, SdkPullEventSeries, SdkEventUpsertPaymentTermsInput, SdkEventUpsertPricingInput, SdkEventUpsertScheduleInput } from './sdkContracts';
2
2
  import { type SdkEventPaymentTerms, type SdkEventPaymentTermsIssue } from './sdk-event-payment-terms';
3
3
  import { type SdkEventPricing, type SdkEventPricingIssue } from './sdk-event-pricing';
4
4
  import { type ClassifySdkEventScheduleOptions, type SdkEventCanonicalSchedule, type SdkEventScheduleInput, type SdkEventScheduleIssue } from './sdk-event-schedule';
@@ -15,7 +15,7 @@ export type SdkEventUpsertBody = Readonly<{
15
15
  paymentTerms?: SdkEventUpsertPaymentTermsInput;
16
16
  venueRef?: string | null;
17
17
  categoryRef?: string | null;
18
- content?: SdkPullEventSeries['content'];
18
+ content?: SdkEventContentInput;
19
19
  formRef?: string | null;
20
20
  settings?: Record<string, unknown>;
21
21
  presentation?: Record<string, unknown> | null;
@@ -1,9 +1,10 @@
1
- import type { BlockContentSource, BlockContentSourceKind, FieldDefinition, FieldDefinitionInput, SdkCustomBlock, SdkCustomBlockInput, SiteFooterContent, Theme } from '../../blocks/src/index';
1
+ import type { BlockContentSource, BlockContentSourceKind, FieldDefinition, FieldDefinitionInput, RichTextDoc, SdkCustomBlock, SdkCustomBlockInput, Theme } from '../../blocks/src/index';
2
2
  import type { ContentTypeSchema } from '../../content-model/src/index';
3
3
  import type { LinkPayload } from './navigation/types';
4
4
  import type { JsonValue } from './shared-contracts';
5
5
  import type { SdkEventPricing, SdkEventPricingInput } from './sdk-event-pricing';
6
6
  import type { SdkEventPaymentTerms, SdkEventPaymentTermsInput } from './sdk-event-payment-terms';
7
+ import type { EventOccurrenceStatus } from './bookingRecords';
7
8
  /**
8
9
  * SDK Site Configuration Types
9
10
  *
@@ -754,7 +755,10 @@ export interface SdkCapabilitiesResponse {
754
755
  };
755
756
  meta: SdkPullMeta;
756
757
  }
757
- /** One provenance ledger row: a resource a demo recipe run created/linked on this site. */
758
+ /**
759
+ * One observational provenance row for a resource a demo recipe run
760
+ * created/linked on this site. Historical rows are not cleanup-authoritative.
761
+ */
758
762
  export interface SdkDemoSeedProvenanceEntry {
759
763
  id: string;
760
764
  /** The recipe run that created/linked the resource. */
@@ -770,12 +774,17 @@ export interface SdkDemoSeedProvenanceEntry {
770
774
  /** The concrete resource id. */
771
775
  resourceId: string;
772
776
  /**
773
- * `created` — the run authored this resource (a cleanup candidate);
777
+ * `created` — this run observed that it authored the resource;
774
778
  * `existing` — the run only linked/configured a pre-existing resource.
779
+ *
780
+ * This field is observational, not deletion authorization. Destructive
781
+ * cleanup remains disabled until historical rows have an approved trust
782
+ * cutoff or purge.
775
783
  */
776
784
  disposition: 'created' | 'existing';
777
785
  createdAt: string;
778
786
  }
787
+ /** Observational ledger readout; it must not be used to drive deletion. */
779
788
  export interface SdkDemoContentResponse {
780
789
  items: SdkDemoSeedProvenanceEntry[];
781
790
  meta: SdkPullMeta;
@@ -783,8 +792,11 @@ export interface SdkDemoContentResponse {
783
792
  export interface SdkPullFooterMeta extends SdkPullMeta {
784
793
  updatedAt: string | null;
785
794
  }
795
+ export interface SdkFooterContent {
796
+ bottomText: RichTextDoc;
797
+ }
786
798
  export interface SdkPullFooterResponse {
787
- footer: SiteFooterContent | null;
799
+ footer: SdkFooterContent | null;
788
800
  meta: SdkPullFooterMeta;
789
801
  }
790
802
  export interface SdkPullVenue {
@@ -857,8 +869,10 @@ export interface SdkPullEventSeries {
857
869
  categoryRef: string | null;
858
870
  content: {
859
871
  summary?: string;
860
- body?: string | Record<string, unknown>;
861
- image?: string | Record<string, unknown>;
872
+ body?: RichTextDoc;
873
+ image?: Record<string, unknown> & {
874
+ identifier: string;
875
+ };
862
876
  [key: string]: unknown;
863
877
  };
864
878
  formRef: string | null;
@@ -870,6 +884,14 @@ export interface SdkPullEventSeries {
870
884
  contentUpdatedAt: string | null;
871
885
  blocks?: SdkEntrySlotBlocks;
872
886
  }
887
+ export type SdkEventContentInput = {
888
+ summary?: string;
889
+ body?: string | RichTextDoc;
890
+ image?: Record<string, unknown> & {
891
+ identifier: string;
892
+ };
893
+ [key: string]: unknown;
894
+ };
873
895
  export type SdkEventCanonicalScheduleInput = {
874
896
  recurrenceRule: string | null;
875
897
  /** Date used for the first occurrence; required for one-off SDK-managed events. */
@@ -1046,6 +1068,55 @@ export type SdkManagementEventCategory = SdkPullEventCategory & {
1046
1068
  export type SdkManagementEventSeries = SdkPullEventSeries & {
1047
1069
  id: string;
1048
1070
  };
1071
+ export type SdkEventOccurrenceProvenance = 'manual' | 'recurrence_generated' | 'recurrence_exception';
1072
+ export type SdkEventOccurrenceDeletionEligibility = {
1073
+ kind: 'allowed';
1074
+ } | {
1075
+ kind: 'blocked_by_registrations';
1076
+ registrations: number;
1077
+ } | {
1078
+ kind: 'blocked_generated_occurrence';
1079
+ } | {
1080
+ kind: 'blocked_completed_occurrence';
1081
+ };
1082
+ export interface SdkManagementEventOccurrence {
1083
+ id: string;
1084
+ seriesId: string;
1085
+ startsAt: string;
1086
+ endsAt: string;
1087
+ timeZone: string;
1088
+ status: EventOccurrenceStatus;
1089
+ provenance: SdkEventOccurrenceProvenance;
1090
+ capacityOverride: number | null;
1091
+ capacity: number | null;
1092
+ registrations: number;
1093
+ deletionEligibility: SdkEventOccurrenceDeletionEligibility;
1094
+ }
1095
+ export type SdkEventOccurrenceScheduleInput = {
1096
+ startsAt: string;
1097
+ endsAt: string;
1098
+ durationMinutes?: never;
1099
+ } | {
1100
+ startsAt: string;
1101
+ endsAt?: never;
1102
+ durationMinutes: number;
1103
+ };
1104
+ export type SdkAddEventOccurrenceRequest = SdkEventOccurrenceScheduleInput & {
1105
+ capacity?: number;
1106
+ };
1107
+ export type SdkEventOccurrenceCapacityIntent = {
1108
+ kind: 'override';
1109
+ capacity: number;
1110
+ } | {
1111
+ kind: 'inherit';
1112
+ };
1113
+ export type SdkUpdateEventOccurrenceRequest = {
1114
+ schedule: SdkEventOccurrenceScheduleInput;
1115
+ capacity?: SdkEventOccurrenceCapacityIntent;
1116
+ } | {
1117
+ schedule?: never;
1118
+ capacity: SdkEventOccurrenceCapacityIntent;
1119
+ };
1049
1120
  export type SdkManagementCourseRun = SdkPullCourseRun & {
1050
1121
  id: string;
1051
1122
  seriesId: string;
@@ -1185,6 +1256,13 @@ export interface SdkUpsertEventResponse {
1185
1256
  export interface SdkGetEventResponse {
1186
1257
  event: SdkManagementEventSeries;
1187
1258
  }
1259
+ export interface SdkListEventOccurrencesResponse {
1260
+ occurrences: SdkManagementEventOccurrence[];
1261
+ nextCursor: string | null;
1262
+ }
1263
+ export interface SdkEventOccurrenceResponse {
1264
+ occurrence: SdkManagementEventOccurrence;
1265
+ }
1188
1266
  export interface SdkListCoursesResponse {
1189
1267
  courses: SdkManagementCourseRun[];
1190
1268
  }
@@ -1213,7 +1291,7 @@ export interface SdkUpsertThemeResponse {
1213
1291
  savedAt: string;
1214
1292
  }
1215
1293
  export interface SdkUpsertFooterResponse {
1216
- footer: SiteFooterContent | null;
1294
+ footer: SdkFooterContent | null;
1217
1295
  }
1218
1296
  export interface SdkUpdateSettingsResponse {
1219
1297
  settings: SdkPullSettings;
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import type { TipTapNode } from '../../blocks/src/index';
2
+ import type { RichTextDoc } from '../../core/src/index';
3
3
  import type { LinkPayload } from './navigation/types';
4
4
  export type SiteBannerScope = 'homepage' | 'all-pages';
5
5
  export type SiteBannerTone = 'announcement' | 'promotion' | 'notice' | 'warning';
@@ -14,7 +14,7 @@ export type SiteBannerSettingsPayload = Readonly<{
14
14
  enabled: true;
15
15
  scope: SiteBannerScope;
16
16
  tone: SiteBannerTone;
17
- body: TipTapNode;
17
+ body: RichTextDoc;
18
18
  cta: SiteBannerCta | null;
19
19
  }>;
20
20
  export type SiteBannerSettingsResponse = {
@@ -32,7 +32,7 @@ export type SiteBannerDraft = Readonly<{
32
32
  enabled: boolean;
33
33
  scope: SiteBannerScope;
34
34
  tone: SiteBannerTone;
35
- body: TipTapNode;
35
+ body: RichTextDoc;
36
36
  cta: Readonly<{
37
37
  label: string;
38
38
  link: LinkPayload | null;
@@ -44,7 +44,7 @@ export type SiteBannerDraftValidationIssue = Readonly<{
44
44
  }>;
45
45
  export type SiteBannerBodyIssue = 'empty' | 'too-many-paragraphs' | 'too-long';
46
46
  export type SiteBannerBodyAnalysis = Readonly<{
47
- sanitizedBody: TipTapNode;
47
+ sanitizedBody: RichTextDoc;
48
48
  textLength: number;
49
49
  paragraphCount: number;
50
50
  issues: readonly SiteBannerBodyIssue[];
@@ -81,7 +81,7 @@ export declare const siteBannerSettingsSchema: z.ZodDiscriminatedUnion<[z.ZodObj
81
81
  announcement: "announcement";
82
82
  promotion: "promotion";
83
83
  }>;
84
- body: z.ZodPipe<z.ZodUnknown, z.ZodTransform<TipTapNode, unknown>>;
84
+ body: z.ZodType<RichTextDoc, unknown, z.core.$ZodTypeInternals<RichTextDoc, unknown>>;
85
85
  cta: z.ZodNullable<z.ZodObject<{
86
86
  label: z.ZodString;
87
87
  link: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -147,7 +147,7 @@ export declare const siteBannerSettingsInputSchema: z.ZodDiscriminatedUnion<[z.Z
147
147
  announcement: "announcement";
148
148
  promotion: "promotion";
149
149
  }>;
150
- body: z.ZodPipe<z.ZodUnknown, z.ZodTransform<TipTapNode, unknown>>;
150
+ body: z.ZodType<RichTextDoc, unknown, z.core.$ZodTypeInternals<RichTextDoc, unknown>>;
151
151
  cta: z.ZodNullable<z.ZodObject<{
152
152
  label: z.ZodString;
153
153
  link: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -199,7 +199,7 @@ export declare const siteBannerSettingsInputSchema: z.ZodDiscriminatedUnion<[z.Z
199
199
  }, z.core.$strip>], "kind">;
200
200
  }, z.core.$strip>>;
201
201
  }, z.core.$strip>], "enabled">;
202
- export declare const EMPTY_SITE_BANNER_BODY: TipTapNode;
202
+ export declare const EMPTY_SITE_BANNER_BODY: RichTextDoc;
203
203
  export declare function getSiteBannerCookieName(siteId: string): string;
204
204
  export declare function decodeSiteBannerSettings(input: unknown): SiteBannerSettingsPayload;
205
205
  export declare function encodeSiteBannerSettings(settings: SiteBannerSettingsPayload): SiteBannerSettingsPayload;
@@ -222,5 +222,5 @@ export declare function fromSiteBannerDraft(draft: SiteBannerDraft): SiteBannerS
222
222
  export declare function validateSiteBannerDraft(draft: SiteBannerDraft): readonly SiteBannerDraftValidationIssue[];
223
223
  export declare function siteBannerDraftEquals(left: SiteBannerDraft, right: SiteBannerDraft): boolean;
224
224
  export declare function analyzeSiteBannerBody(body: unknown): SiteBannerBodyAnalysis;
225
- export declare function sanitizeSiteBannerBody(input: unknown): TipTapNode;
225
+ export declare function sanitizeSiteBannerBody(input: RichTextDoc): RichTextDoc;
226
226
  export {};
@@ -457,7 +457,7 @@ export type RefundShopOrderResponse = {
457
457
  itemResults: ReadonlyArray<{
458
458
  orderItemId: string;
459
459
  displayName: string;
460
- status: "succeeded" | "failed";
460
+ status: "succeeded" | "partially_succeeded" | "failed";
461
461
  amountCents: number | null;
462
462
  errorMessage?: string;
463
463
  }>;
@@ -1,4 +1,4 @@
1
- import type { Theme } from '../../blocks/src/index';
1
+ import type { RichTextDoc, Theme } from '../../blocks/src/index';
2
2
  import type { SiteCommandOf } from '../../site-commands/src/index';
3
3
  import type { APIEndpoint } from './apiEndpointTypes';
4
4
  import type { AdminCreateSiteRequest, AdminCreateSiteResponse, AdminDeletePriceOverrideRequest, AdminDeletePriceOverrideResponse, AdminDeleteSiteResponse, AdminGetPriceOverrideQuery, AdminGetPriceOverrideResponse, AdminUpsertPriceOverrideRequest, AdminUpsertPriceOverrideResponse } from './accessAdmin';
@@ -10,11 +10,10 @@ import type { CreateManagementKeyRequest, CreateManagementKeyResponse, CreateSit
10
10
  import type { GetSiteInspirationAnalysisResponse, ListSiteInspirationAnalysesResponse } from './siteGeneration';
11
11
  import type { ListGscPropertiesAdminResponse, AuthStatusResponse, CronAppointmentRemindersResponse, CronBillingStatusResponse, CronEventFeedbackEmailsResponse, CronEventOccurrencesResponse, CronEventRemindersResponse, CronMediaJobsQuery, CronMediaJobsResponse, CronNewsletterSendResponse, CronPaymentReconciliationResponse, CronSeoIngestResponse, CronWaitlistExpiryResponse } from './siteOperations';
12
12
  import type { ApplySiteStyleSelectionBody, ApplySiteStyleSelectionResponse } from './siteRuntimeEndpoints';
13
- import type { ManagementMediaAsset, MediaResolveResponse, PushSdkConfigRequest, PushSdkConfigResponse, SdkBackfillIdentifiersResult, SdkGetCourseResponse, SdkGetEntryResponse, SdkGetEventCategoryResponse, SdkGetEventResponse, SdkGetFormResponse, SdkGetPageBlockResponse, SdkPatchPageBlockBody, SdkPatchPageBlockResponse, SdkGetVenueResponse, SdkListCoursesResponse, SdkListEntriesResponse, SdkListEventCategoriesResponse, SdkListEventsResponse, SdkListFormsResponse, SdkListVenuesResponse, SdkMediaFinalizeUploadResponse, SdkMediaUploadUrlResponse, SdkPageResponse, SdkEntryUpsertSlotBlock, SdkPublishOrUnpublishEntryResponse, SdkPullContentTypesResponse, SdkCatalogThemeResponse, SdkCatalogBlocksResponse, SdkCatalogContentTypesResponse, SdkCapabilitiesResponse, SdkDemoContentResponse, SdkPullCourseProgram, SdkPullCourseSession, SdkPullCoursesResponse, SdkPullEntriesAllResponse, SdkPullEntriesByTypeResponse, SdkPullEntriesResponse, SdkPullEventCategoriesResponse, SdkPullEventsResponse, SdkPullFooterResponse, SdkPullFormSchema, SdkPullFormsResponse, SdkPullFormSettings, SdkPullDraftsResponse, SdkPullNavigationResponse, SdkPullPagesResponse, SdkPullSettings, SdkPullSettingsResponse, SdkPullSiteInfoResponse, SdkPullThemeResponse, SdkPullVenue, SdkPullVenuesResponse, SdkUpdateSettingsResponse, SdkUpsertBlockResponse, SdkUpsertCourseResponse, SdkUpsertEntryResponse, SdkUpsertPageResponse, SdkUpsertEventCategoryResponse, SdkUpsertEventResponse, SdkUpsertFooterResponse, SdkUpsertFormResponse, SdkUpsertNavigationMenuResponse, SdkUpsertThemeResponse, SdkUpsertVenueResponse } from './sdkContracts';
13
+ import type { ManagementMediaAsset, MediaResolveResponse, PushSdkConfigRequest, PushSdkConfigResponse, SdkAddEventOccurrenceRequest, SdkBackfillIdentifiersResult, SdkEventOccurrenceResponse, SdkGetCourseResponse, SdkGetEntryResponse, SdkGetEventCategoryResponse, SdkGetEventResponse, SdkGetFormResponse, SdkGetPageBlockResponse, SdkPatchPageBlockBody, SdkPatchPageBlockResponse, SdkGetVenueResponse, SdkListCoursesResponse, SdkListEntriesResponse, SdkListEventCategoriesResponse, SdkListEventOccurrencesResponse, SdkListEventsResponse, SdkListFormsResponse, SdkListVenuesResponse, SdkMediaFinalizeUploadResponse, SdkMediaUploadUrlResponse, SdkPageResponse, SdkEntryUpsertSlotBlock, SdkPublishOrUnpublishEntryResponse, SdkPullContentTypesResponse, SdkCatalogThemeResponse, SdkCatalogBlocksResponse, SdkCatalogContentTypesResponse, SdkCapabilitiesResponse, SdkDemoContentResponse, SdkPullCourseProgram, SdkPullCourseSession, SdkPullCoursesResponse, SdkPullEntriesAllResponse, SdkPullEntriesByTypeResponse, SdkPullEntriesResponse, SdkPullEventCategoriesResponse, SdkPullEventsResponse, SdkPullFooterResponse, SdkPullFormSchema, SdkPullFormsResponse, SdkPullFormSettings, SdkPullDraftsResponse, SdkPullNavigationResponse, SdkPullPagesResponse, SdkPullSettings, SdkPullSettingsResponse, SdkPullSiteInfoResponse, SdkPullThemeResponse, SdkPullVenue, SdkPullVenuesResponse, SdkUpdateSettingsResponse, SdkUpdateEventOccurrenceRequest, SdkUpsertBlockResponse, SdkUpsertCourseResponse, SdkUpsertEntryResponse, SdkUpsertPageResponse, SdkUpsertEventCategoryResponse, SdkUpsertEventResponse, SdkUpsertFooterResponse, SdkUpsertFormResponse, SdkUpsertNavigationMenuResponse, SdkUpsertThemeResponse, SdkUpsertVenueResponse } from './sdkContracts';
14
14
  import type { SdkEventUpsertBody } from './sdk-event-upsert';
15
15
  import type { StripeConnectDisconnectResponse, StripeConnectStartResponse, StripeConnectStatusResponse, UpdateStripeAutomaticTaxRequest } from './billing';
16
16
  import type { NavigationLinkInput } from './navigation/types';
17
- import type { JsonValue } from './shared-contracts';
18
17
  export type SdkUpsertNavigationItemInput = Readonly<{
19
18
  label: string;
20
19
  isCta?: boolean;
@@ -343,7 +342,7 @@ export type SitePlatformAPIEndpoints = {
343
342
  siteId: string;
344
343
  }, ApplySiteStyleSelectionResponse>;
345
344
  sdkUpsertFooter: APIEndpoint<{
346
- bottomText?: Record<string, JsonValue> | null;
345
+ bottomText?: RichTextDoc | null;
347
346
  }, {
348
347
  siteId: string;
349
348
  }, SdkUpsertFooterResponse>;
@@ -431,6 +430,35 @@ export type SitePlatformAPIEndpoints = {
431
430
  }, {
432
431
  deleted: true;
433
432
  }>;
433
+ sdkListEventOccurrences: APIEndpoint<never, {
434
+ siteId: string;
435
+ identifier: string;
436
+ all?: boolean;
437
+ status?: 'scheduled' | 'cancelled' | 'completed';
438
+ cursor?: string;
439
+ limit?: number;
440
+ }, SdkListEventOccurrencesResponse>;
441
+ sdkAddEventOccurrence: APIEndpoint<SdkAddEventOccurrenceRequest, {
442
+ siteId: string;
443
+ identifier: string;
444
+ }, SdkEventOccurrenceResponse>;
445
+ sdkUpdateEventOccurrence: APIEndpoint<SdkUpdateEventOccurrenceRequest, {
446
+ siteId: string;
447
+ identifier: string;
448
+ occurrenceId: string;
449
+ }, SdkEventOccurrenceResponse>;
450
+ sdkCancelEventOccurrence: APIEndpoint<never, {
451
+ siteId: string;
452
+ identifier: string;
453
+ occurrenceId: string;
454
+ }, SdkEventOccurrenceResponse>;
455
+ sdkDeleteEventOccurrence: APIEndpoint<never, {
456
+ siteId: string;
457
+ identifier: string;
458
+ occurrenceId: string;
459
+ }, {
460
+ deleted: true;
461
+ }>;
434
462
  sdkListCourses: APIEndpoint<never, {
435
463
  siteId: string;
436
464
  }, SdkListCoursesResponse>;
@@ -1,20 +1,11 @@
1
1
  import type { RichTextFieldConfig } from '../../fields/types';
2
+ import { type RichTextDoc } from '../../../../blocks/src/system/manifest/richTextSchema';
2
3
  /**
3
4
  * Empty TipTap document structure
4
5
  */
5
- export declare const EMPTY_RICH_TEXT_DOC: {
6
- type: string;
7
- content: {
8
- type: string;
9
- }[];
10
- };
6
+ export declare const EMPTY_RICH_TEXT_DOC: RichTextDoc;
11
7
  /**
12
8
  * Get default value for rich text field
13
9
  * Returns empty TipTap document structure
14
10
  */
15
- export declare function getRichTextFieldDefaultValue(_config: RichTextFieldConfig): {
16
- type: string;
17
- content: {
18
- type: string;
19
- }[];
20
- };
11
+ export declare function getRichTextFieldDefaultValue(_config: RichTextFieldConfig): RichTextDoc;
@@ -9,8 +9,4 @@ import type { RichTextFieldConfig } from '../../fields/types';
9
9
  * @param config - Rich text field configuration
10
10
  * @returns Zod schema for rich text validation
11
11
  */
12
- export declare function buildRichTextFieldSchema(config: RichTextFieldConfig): z.ZodUnion<readonly [z.ZodType<import("../../../../blocks/src/index").TipTapNode, unknown, z.core.$ZodTypeInternals<import("../../../../blocks/src/index").TipTapNode, unknown>>, z.ZodObject<{
13
- doc: z.ZodType<import("../../../../blocks/src/index").TipTapNode, unknown, z.core.$ZodTypeInternals<import("../../../../blocks/src/index").TipTapNode, unknown>>;
14
- }, z.core.$strip>]> | z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodType<import("../../../../blocks/src/index").TipTapNode, unknown, z.core.$ZodTypeInternals<import("../../../../blocks/src/index").TipTapNode, unknown>>, z.ZodObject<{
15
- doc: z.ZodType<import("../../../../blocks/src/index").TipTapNode, unknown, z.core.$ZodTypeInternals<import("../../../../blocks/src/index").TipTapNode, unknown>>;
16
- }, z.core.$strip>]>, z.ZodNull]>>;
12
+ export declare function buildRichTextFieldSchema(config: RichTextFieldConfig): z.ZodType<import("../../../../core/src/index").RichTextDoc, unknown, z.core.$ZodTypeInternals<import("../../../../core/src/index").RichTextDoc, unknown>> | z.ZodOptional<z.ZodUnion<readonly [z.ZodType<import("../../../../core/src/index").RichTextDoc, unknown, z.core.$ZodTypeInternals<import("../../../../core/src/index").RichTextDoc, unknown>>, z.ZodNull]>>;
@@ -92,10 +92,7 @@ export declare function textToInlineText(value: unknown): unknown;
92
92
  /**
93
93
  * Extracts the first paragraph text from a TipTap/ProseMirror document.
94
94
  *
95
- * Accepts either the canonical unwrapped form (`{ type: 'doc', content: [...] }`)
96
- * or the legacy envelope (`{ doc: { type: 'doc', content: [...] } }`). New
97
- * producers must emit the unwrapped form; this tolerance only exists to read
98
- * data that pre-dates the unwrap migration.
95
+ * Accepts the canonical unwrapped form (`{ type: 'doc', content: [...] }`).
99
96
  */
100
97
  export declare function extractFirstParagraph(value: unknown): string | null;
101
98
  /**
@@ -117,9 +114,3 @@ export declare function isBindingDescriptorLike(value: unknown): value is Bindin
117
114
  * that objects have valid binding source values.
118
115
  */
119
116
  export declare function normalizeBindingInput(value: BindingInput): BindingDescriptor | null;
120
- /**
121
- * Normalizes binding output by unwrapping doc wrappers.
122
- * Rich text fields are sometimes wrapped as { doc: { type: 'doc', content: [...] } }
123
- * This unwraps them to just the doc content.
124
- */
125
- export declare function normalizeBindingOutput<T>(value: T): T;
@@ -3,7 +3,6 @@ export { createCustomBlockRegistry, mergeBlockDescriptorsWithRegistry, planCusto
3
3
  export type { CustomBlockConflictReason, CustomBlockManifestSource, CustomBlockRegistry, CustomBlockRegistryConflict, CustomBlockRegistryEntry, CustomBlockRegistryResolutionPlan, CustomBlockSourcePolicy, ResolvedCustomBlockManifest, SdkConfigForBlockPicker, } from './customBlockRegistry';
4
4
  export type { BlockOverrideComponent, BlockOverrideProps, BlockOverrides, EntrySubrouteContextData, OccurrenceContextData, PageBlockPosition, PageRuntimeBoundary, SdkConfigForRenderer, } from './PageRenderer';
5
5
  export * from './subroutes';
6
- export * from './primitives/content/components/Button';
7
6
  export * from './structure/schema';
8
7
  export { BLOCK_BUTTON_ROLES, BLOCK_BUTTON_ROLE_OPTIONS, blockButtonRoleSchema, isBlockButtonRole, type BlockButtonRole, } from './system/constants/buttonRoles';
9
8
  export type { BlockContentSource, BlockContentSourceKind, } from './system/manifest/schema';
@@ -13,9 +12,7 @@ export * from '../../theme-core/src/palette/utils/index';
13
12
  export * from '../../theme-core/src/recommend/generateThemes';
14
13
  export * from '../../theme-core/src/schema';
15
14
  export * from '../../theme-core/src/site-styles/index';
16
- export * from '../../theme-core/src/styles/buttons';
17
- export * from '../../theme-core/src/styles/buttonsLibrary';
18
- 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 GradientDirection, } from '../../theme-core/src/buttons/index';
15
+ export { type ButtonBackground, type ButtonBorder, type ButtonGlobalSettings, type ButtonSystem, type ButtonVariant, type CornerStyle, type ButtonEffectApplication, type FontWeight, type GradientSharpness, type GradientStyle, type HoverColor, type HoverTransform, type ShadowSize, type TextTransform, buttonBackgroundSchema, buttonBorderSchema, buttonGlobalSettingsSchema, buttonSystemSchema, buttonVariantSchema, cornerStyleSchema, buttonEffectApplicationSchema, fontWeightSchema, gradientSharpnessSchema, gradientStyleSchema, hoverColorSchema, hoverTransformSchema, shadowSizeSchema, textTransformSchema, generateButtonCss, generateDefaultButtonSystem, parseThemeForPersistence, buttonPresets, type ButtonPreset, type ValidatedThemeForPersistence, type GradientDirection, } from '../../theme-core/src/buttons/index';
19
16
  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';
20
17
  export { generateInputCoreCss, getDefaultInputSettings, type InputCoreSettings, } from '../../theme-core/src/inputs/core';
21
18
  export * from '../../theme-core/src/tokens/index';
@@ -48,8 +45,8 @@ export type { BodyTextContent } from './system/blocks/body-text';
48
45
  export { createRichTextDocFromMarkdown, parseRichTextInlineMarkdown, parseRichTextParagraphInlineMarkdown, } from './system/manifest/richTextSchema';
49
46
  export { applyInlineTextMarkToRange, coerceInlineTextWithFallback, inlineTextEqual, inlineTextAccentTones, inlineTextHighlightTones, inlineTextMarksEqual, inlineTextSchema, inlineTextToPlainText, isInlineTextEmpty, normalizeInlineText, normalizeInlineTextMarks, parseInlineTextFromUnknown, plainTextToInlineText, removeInlineTextMarkFromRange, replaceInlineTextRange, truncateInlineText, type InlineText, type InlineTextAccentTone, type InlineTextHighlightTone, type InlineTextMark, type InlineTextParseError, type InlineTextParseResult, type InlineTextRun, } from './system/inlineText';
50
47
  export { renderInlineText } from './system/runtime/nodes/renderInlineText';
51
- export type { RichTextHardBreakNode, RichTextInlineNode, RichTextTextNode, TipTapNode, } from './system/manifest/richTextSchema';
52
- export { createManifestValidator } from './system/manifest/validation';
48
+ export type { RichTextDoc, RichTextHardBreakNode, RichTextInlineNode, RichTextTextNode, TipTapNode, } from './system/manifest/richTextSchema';
49
+ export { createManifestValidator, createManifestWriteValidator, } from './system/manifest/validation';
53
50
  export { singleButtonManifest } from './system/blocks/single-button';
54
51
  export { Text, RichText } from './primitives/content/primitives';
55
52
  export type { PrimitiveAPI, RichTextPrimitiveProps, RichTextVariant, TextProps, } from './primitives/content/primitives';
@@ -1,6 +1,6 @@
1
1
  import type React from "react";
2
2
  import type { PrimitiveProps } from "../types";
3
- import type { TipTapNode } from "../../system/manifest/richTextSchema";
3
+ import type { RichTextDoc } from "../../system/manifest/richTextSchema";
4
4
  import type { PreviewLinkedEntryFieldBinding } from "../../system/data";
5
5
  import TextView from "./components/Text";
6
6
  import RichTextView from "./components/RichText";
@@ -17,7 +17,7 @@ export type RichTextPrimitiveProps = {
17
17
  className?: string;
18
18
  path?: string;
19
19
  linkedEntryField?: PreviewLinkedEntryFieldBinding;
20
- doc?: TipTapNode | null;
20
+ doc?: RichTextDoc | null;
21
21
  variant?: RichTextVariant;
22
22
  placeholder?: string;
23
23
  ariaLabel?: string;
@@ -1,4 +1,4 @@
1
- import type { TipTapNode } from "../manifest/richTextSchema";
1
+ import type { RichTextDoc } from "../manifest/richTextSchema";
2
2
  import type { SystemBlockDefinition } from "../registry";
3
3
  export declare const bodyTextManifest: import("..").DefinedBlockManifest<import("..").BlockContentShapeInput<{
4
4
  readonly id: "block.body-text";
@@ -76,7 +76,7 @@ export type BodyTextAlignment = "left" | "center";
76
76
  export type BodyTextContent = {
77
77
  variant?: "prose" | "intro" | "narrow" | null;
78
78
  heading?: string | null;
79
- body: TipTapNode;
79
+ body: RichTextDoc;
80
80
  alignment?: BodyTextAlignment | null;
81
81
  };
82
82
  export declare const bodyTextBlockDefinition: SystemBlockDefinition<BodyTextContent>;
@@ -1,5 +1,5 @@
1
1
  import type { SystemBlockDefinition } from '../../registry';
2
- import type { TipTapNode } from '../../manifest/richTextSchema';
2
+ import type { RichTextDoc } from '../../manifest/richTextSchema';
3
3
  import type { LinkValue } from '../../types/link';
4
4
  import { type BlockConfig, type BlockContentShapeInput, type DefinedBlockManifest } from '../../defineBlock';
5
5
  import { type SectionStylesContent } from '../../fields/boxStyles';
@@ -10,7 +10,7 @@ export declare const recurringScheduleManifest: DefinedBlockManifest<BlockConten
10
10
  export type RecurringScheduleContent = Readonly<{
11
11
  eyebrow?: string | null;
12
12
  heading?: string | null;
13
- description?: TipTapNode | null;
13
+ description?: RichTextDoc | null;
14
14
  showVenue?: boolean | null;
15
15
  buttonVariant?: BlockButtonRole | null;
16
16
  seeAllButtonVariant?: BlockButtonRole | null;
@@ -410,10 +410,7 @@ export declare const publicEventSchema: z.ZodObject<{
410
410
  title: z.ZodString;
411
411
  description: z.ZodNullable<z.ZodString>;
412
412
  content: z.ZodOptional<z.ZodObject<{
413
- body: z.ZodOptional<z.ZodNullable<z.ZodObject<{
414
- type: z.ZodLiteral<"doc">;
415
- content: z.ZodArray<z.ZodType<import("../../../..").TipTapNode, unknown, z.core.$ZodTypeInternals<import("../../../..").TipTapNode, unknown>>>;
416
- }, z.core.$strip>>>;
413
+ body: z.ZodOptional<z.ZodNullable<z.ZodType<import("../../../../../../core/src/index").RichTextDoc, unknown, z.core.$ZodTypeInternals<import("../../../../../../core/src/index").RichTextDoc, unknown>>>>;
417
414
  }, z.core.$strip>>;
418
415
  presentation: z.ZodOptional<z.ZodObject<{
419
416
  cardTitleOverride: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1085,10 +1082,7 @@ export declare const publicEventsArraySchema: z.ZodArray<z.ZodObject<{
1085
1082
  title: z.ZodString;
1086
1083
  description: z.ZodNullable<z.ZodString>;
1087
1084
  content: z.ZodOptional<z.ZodObject<{
1088
- body: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1089
- type: z.ZodLiteral<"doc">;
1090
- content: z.ZodArray<z.ZodType<import("../../../..").TipTapNode, unknown, z.core.$ZodTypeInternals<import("../../../..").TipTapNode, unknown>>>;
1091
- }, z.core.$strip>>>;
1085
+ body: z.ZodOptional<z.ZodNullable<z.ZodType<import("../../../../../../core/src/index").RichTextDoc, unknown, z.core.$ZodTypeInternals<import("../../../../../../core/src/index").RichTextDoc, unknown>>>>;
1092
1086
  }, z.core.$strip>>;
1093
1087
  presentation: z.ZodOptional<z.ZodObject<{
1094
1088
  cardTitleOverride: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1,4 +1,4 @@
1
- import type { TipTapNode } from '../manifest/richTextSchema';
1
+ import type { RichTextDoc } from '../manifest/richTextSchema';
2
2
  import { type Brand, type Result } from '../../../../core/src/index';
3
3
  import type { SemanticIconId } from '../icons/semantic';
4
4
  import { type BlockIconValue } from '../icons/value';
@@ -34,7 +34,7 @@ export declare function parseFeatureCardGeneratedIconSizePx(value: unknown): Res
34
34
  export declare function resolveFeatureCardGeneratedIconSizePx(value: unknown): FeatureCardGeneratedIconSizePx;
35
35
  export type FeatureCardIconContent = {
36
36
  title?: string | null;
37
- body?: TipTapNode | null;
37
+ body?: RichTextDoc | null;
38
38
  icon?: BlockIconValue | SemanticIconId | null;
39
39
  };
40
40
  export type FeatureCardIconInputContent = Omit<FeatureCardIconContent, 'icon'> & {
@@ -1,5 +1,5 @@
1
1
  import type { Media } from "../../lib/media";
2
- import type { TipTapNode } from "../manifest/richTextSchema";
2
+ import type { RichTextDoc } from "../manifest/richTextSchema";
3
3
  import type { SystemBlockDefinition } from "../registry";
4
4
  import { type BlockConfig, type BlockContentShapeInput, type DefinedBlockManifest } from "../defineBlock";
5
5
  import { type StandardAspectRatio } from "../fields/aspectRatio";
@@ -16,7 +16,7 @@ export type FeatureCard = {
16
16
  aspectRatio?: StandardAspectRatio | null;
17
17
  icon?: BlockIconValue | SemanticIconId | null;
18
18
  title: string;
19
- body?: TipTapNode | null;
19
+ body?: RichTextDoc | null;
20
20
  ctas?: BlockCtaContent[] | null;
21
21
  };
22
22
  export type FeatureCardsCardMarker = "icons" | "numbers" | "none";
@@ -24,7 +24,7 @@ export type FeatureCardsContent = {
24
24
  variant?: FeatureCardsVariant | null;
25
25
  eyebrow?: string | null;
26
26
  title?: string | null;
27
- description?: TipTapNode | null;
27
+ description?: RichTextDoc | null;
28
28
  columns?: FeatureCardsColumns | null;
29
29
  cardMarker?: FeatureCardsCardMarker | null;
30
30
  _iconTreatment?: FeatureCardIconTreatment | null;
@@ -3,6 +3,7 @@ import type { SystemBlockDefinition } from "../registry";
3
3
  import type { ContainerStylesContent, SectionStylesContent } from "../fields/boxStyles";
4
4
  import { formBlockRuntime } from "../runtime/nodes/form.interactive";
5
5
  import type { NodeDefinition } from "../node";
6
+ import type { RichTextDoc } from "../manifest/richTextSchema";
6
7
  export declare const formManifest: import("..").DefinedBlockManifest<import("..").BlockContentShapeInput<{
7
8
  readonly id: "block.form";
8
9
  readonly title: "Form";
@@ -84,21 +85,7 @@ export declare const formManifest: import("..").DefinedBlockManifest<import(".."
84
85
  readonly tags: readonly ["form", "contact", "input", "submit", "fields", "signup", "lead-capture"];
85
86
  readonly icon: "FormInput";
86
87
  }>>;
87
- /**
88
- * Rich text document structure (ProseMirror format)
89
- */
90
- export type RichTextDoc = {
91
- type: 'doc';
92
- content?: Array<{
93
- type: string;
94
- content?: Array<{
95
- type: string;
96
- text?: string;
97
- [key: string]: unknown;
98
- }>;
99
- [key: string]: unknown;
100
- }>;
101
- };
88
+ export type { RichTextDoc } from "../manifest/richTextSchema";
102
89
  export type FormBlockContent = {
103
90
  title?: string | null;
104
91
  intro?: RichTextDoc | null;
@@ -1,5 +1,5 @@
1
1
  import type { Media } from "../../lib/media";
2
- import type { TipTapNode } from "../manifest/richTextSchema";
2
+ import type { RichTextDoc } from "../manifest/richTextSchema";
3
3
  import type { SystemBlockDefinition } from "../registry";
4
4
  import type { SemanticSpacing } from "../spacing";
5
5
  import { type BlockConfig, type BlockContentShapeInput, type DefinedBlockManifest } from "../defineBlock";
@@ -13,7 +13,7 @@ export declare const introManifest: DefinedBlockManifest<BlockContentShapeInput<
13
13
  export type IntroContent = {
14
14
  variant?: IntroVariant | null;
15
15
  title?: string | null;
16
- body: TipTapNode;
16
+ body: RichTextDoc;
17
17
  media?: Media | null;
18
18
  imagePosition?: IntroImagePosition | null;
19
19
  gap?: SemanticSpacing | null;