@riverbankcms/sdk 0.138.0 → 0.139.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 (208) hide show
  1. package/README.md +11 -15
  2. package/dist/{PreviewEditorSidebar-BVPur_CU.mjs → PreviewEditorSidebar-BDeenhi3.mjs} +4 -4
  3. package/dist/{PreviewEditorUI-DLhWX8oh.mjs → PreviewEditorUI-DSRhgjF5.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-BguJY1SW.mjs → PreviewQueryProvider-D2K8GLUG.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-Tda6qw4z.mjs → SdkPreviewModeRuntime-CL7wSnYu.mjs} +47 -27
  6. package/dist/{SiteChromeCustomizeContext-BHFgMjde.mjs → SiteChromeCustomizeContext-BhDn-5ir.mjs} +7771 -5863
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +99 -330
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +9 -30
  9. package/dist/_dts/api/src/billing.d.ts +10 -3
  10. package/dist/_dts/api/src/contentRuntime.d.ts +8 -1
  11. package/dist/_dts/api/src/endpoints.d.ts +182 -103
  12. package/dist/_dts/api/src/footerSettings.d.ts +2 -5
  13. package/dist/_dts/api/src/index.d.ts +11 -9
  14. package/dist/_dts/api/src/mailchimpIntegration.d.ts +2 -59
  15. package/dist/_dts/api/src/mailingListIntegration.d.ts +117 -0
  16. package/dist/_dts/api/src/navigation/locations.d.ts +1 -0
  17. package/dist/_dts/api/src/navigation.d.ts +1 -26
  18. package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +109 -2
  19. package/dist/_dts/api/src/onboarding/surfaceData.d.ts +185 -0
  20. package/dist/_dts/api/src/privacyPolicy.d.ts +74 -2
  21. package/dist/_dts/api/src/publicBookingAvailabilityEndpointDefinitions.d.ts +6 -6
  22. package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +1 -1
  23. package/dist/_dts/api/src/publicExperience/newsletterEndpoints.d.ts +2 -4
  24. package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +10 -24
  25. package/dist/_dts/api/src/publicReadEndpointDefinitions.d.ts +73 -0
  26. package/dist/_dts/api/src/schemas/site-api-keys.d.ts +1 -1
  27. package/dist/_dts/api/src/sdkContracts.d.ts +2 -10
  28. package/dist/_dts/api/src/sdkThemeWire.d.ts +2 -2
  29. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +0 -29
  30. package/dist/_dts/api/src/siteOnboarding.d.ts +91 -228
  31. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -9
  32. package/dist/_dts/api/src/siteSettings.d.ts +20 -1
  33. package/dist/_dts/api/src/types.d.ts +5 -4
  34. package/dist/_dts/billing/src/membership/index.d.ts +14 -7
  35. package/dist/_dts/billing/src/plans/display.d.ts +15 -0
  36. package/dist/_dts/billing/src/plans/registry.d.ts +2 -0
  37. package/dist/_dts/billing/src/plans/standing.d.ts +19 -0
  38. package/dist/_dts/billing/src/plans/types.d.ts +1 -7
  39. package/dist/_dts/billing/src/subscriptions/evidence.d.ts +12 -0
  40. package/dist/_dts/billing/src/subscriptions/standingEvidence.d.ts +31 -0
  41. package/dist/_dts/billing/src/subscriptions/store.d.ts +23 -5
  42. package/dist/_dts/blocks/src/PageRenderer.d.ts +6 -15
  43. package/dist/_dts/blocks/src/client.d.ts +1 -1
  44. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +32 -16
  45. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +4 -0
  46. package/dist/_dts/blocks/src/pageRenderingMode.d.ts +12 -6
  47. package/dist/_dts/blocks/src/system/blocks/appointment-services.d.ts +11 -0
  48. package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +39 -66
  49. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +39 -114
  50. package/dist/_dts/blocks/src/system/blocks/offerings-preview/catalogue.d.ts +18 -0
  51. package/dist/_dts/blocks/src/system/blocks/offerings-preview/fields.d.ts +2 -0
  52. package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +4 -0
  53. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +7 -13
  54. package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
  55. package/dist/_dts/blocks/src/system/data/index.d.ts +2 -2
  56. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  57. package/dist/_dts/blocks/src/system/data/publicLoaderCachePolicy.d.ts +2 -74
  58. package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +33 -100
  59. package/dist/_dts/blocks/src/system/runtime/api/types/newsletter.d.ts +5 -15
  60. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +48 -24
  61. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +24 -12
  62. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.d.ts +3 -0
  63. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.state.d.ts +1 -1
  64. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarToday.d.ts +22 -0
  65. package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +51 -0
  66. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +2 -0
  67. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +0 -1
  68. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +28 -0
  69. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/bookability.d.ts +9 -0
  70. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +14 -0
  71. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/duration.d.ts +2 -0
  72. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/index.d.ts +4 -0
  73. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/location.d.ts +2 -0
  74. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/quickDates.d.ts +16 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/AgendaEventCard.d.ts +9 -1
  76. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/CalendarDayCell.d.ts +2 -0
  77. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/CalendarDayHeaders.d.ts +4 -0
  78. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/DayEventsModal.d.ts +2 -1
  79. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +5 -0
  80. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +2 -1
  81. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventQuickDates.d.ts +15 -0
  82. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekAgendaView.d.ts +7 -3
  83. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekTimetableView.d.ts +1 -0
  84. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/index.d.ts +2 -0
  85. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/timetableModel.d.ts +1 -0
  86. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/useHydrationReady.d.ts +6 -0
  87. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.client.state.d.ts +3 -0
  88. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +56 -33
  89. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.submission.d.ts +3 -3
  90. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +13 -31
  91. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview-catalogue.d.ts +14 -0
  92. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview-content.d.ts +23 -0
  93. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +4 -2
  94. package/dist/_dts/blocks/src/system/transforms/registry/formatting.d.ts +5 -0
  95. package/dist/_dts/commerce/src/purchase/index.d.ts +1 -0
  96. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +5 -12
  97. package/dist/_dts/commerce/src/purchase/stripeCommissionMetadata.d.ts +34 -0
  98. package/dist/_dts/content-editor/src/footerEngagementDraft.d.ts +6 -24
  99. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +1 -2
  100. package/dist/_dts/core/src/footer-engagement.d.ts +2 -6
  101. package/dist/_dts/core/src/index.d.ts +9 -1
  102. package/dist/_dts/core/src/mailing-list-identifiers.d.ts +21 -0
  103. package/dist/_dts/core/src/mailing-list-runtime.d.ts +42 -0
  104. package/dist/_dts/core/src/mailing-list-setup-parser.d.ts +14 -0
  105. package/dist/_dts/core/src/mailing-list-setup.d.ts +129 -0
  106. package/dist/_dts/core/src/mailing-list-submission.d.ts +244 -0
  107. package/dist/_dts/core/src/mailing-list-targeting-parser.d.ts +12 -0
  108. package/dist/_dts/core/src/mailing-list-targeting.d.ts +93 -0
  109. package/dist/_dts/core/src/navigation-locations.d.ts +28 -0
  110. package/dist/_dts/core/src/public-profile.d.ts +9 -1
  111. package/dist/_dts/core/src/public-read-cache-contract.d.ts +45 -0
  112. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +529 -373
  113. package/dist/_dts/editor-blocks/src/widgets/index.d.ts +1 -0
  114. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListTargetingField.d.ts +11 -0
  115. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/context.d.ts +13 -0
  116. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/index.d.ts +3 -0
  117. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/loaders.d.ts +6 -0
  118. package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +1 -0
  119. package/dist/_dts/sdk/src/client/publicAppointmentReadOperations.d.ts +12 -0
  120. package/dist/_dts/sdk/src/client/publicEventReadOperations.d.ts +2 -1
  121. package/dist/_dts/sdk/src/client/publicLoaderCacheAccess.d.ts +11 -4
  122. package/dist/_dts/sdk/src/config/content-types.d.ts +3 -13
  123. package/dist/_dts/sdk/src/config/content-validation.d.ts +5 -8
  124. package/dist/_dts/sdk/src/constants.d.ts +3 -3
  125. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  126. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +12 -31
  127. package/dist/_dts/sdk/src/navigation/index.d.ts +11 -29
  128. package/dist/_dts/sdk/src/next/index.d.ts +4 -4
  129. package/dist/_dts/sdk/src/prebuild/types.d.ts +1 -5
  130. package/dist/_dts/sdk/src/public-api/contracts.d.ts +33 -16
  131. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +3 -0
  132. package/dist/_dts/sdk/src/rendering/client.d.ts +3 -20
  133. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +3 -0
  134. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +4 -0
  135. package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +1 -0
  136. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
  137. package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
  138. package/dist/_dts/sdk/src/version.d.ts +1 -1
  139. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  140. package/dist/_dts/theme-core/src/hosted-booking-appearance.d.ts +41 -0
  141. package/dist/_dts/theme-core/src/index.d.ts +1 -0
  142. package/dist/_dts/theme-core/src/runtime/buildThemeRuntime.d.ts +0 -1
  143. package/dist/_dts/theme-core/src/tokens/tokens.d.ts +7 -0
  144. package/dist/_dts/ui/src/badge.d.ts +1 -1
  145. package/dist/_dts/ui/src/callout.d.ts +1 -1
  146. package/dist/client/{BookingConsentAgreement-DQUik1Mx.mjs → BookingConsentAgreement-CZvTDtsK.mjs} +2 -2
  147. package/dist/client/{DiscountCodeDisclosure-CU67Q4vH.mjs → DiscountCodeDisclosure-D-DsLCMU.mjs} +1 -1
  148. package/dist/client/{EventCombined.client-a02TXUgg.mjs → EventCombined.client-dWqgd5ZO.mjs} +443 -199
  149. package/dist/client/{EventListing.client-99qx7jFl.mjs → EventListing.client-BMRa9IYp.mjs} +2 -2
  150. package/dist/client/{LeafletStaticMap-CWzcq73L.mjs → LeafletStaticMap-D21W9kBZ.mjs} +1 -1
  151. package/dist/client/{accordion-D1nb3-Oj.mjs → accordion-FxF_ta47.mjs} +1 -1
  152. package/dist/client/{bookingForm-BGrmLhaO.mjs → bookingForm-YnwW4TGw.mjs} +5 -5
  153. package/dist/client/bookings.mjs +43 -2
  154. package/dist/client/{carousel-DSmOx3ad.mjs → carousel-vng7fFT5.mjs} +1 -1
  155. package/dist/client/{cart-COWeOIUk.mjs → cart-DEPDsjNk.mjs} +3 -3
  156. package/dist/client/{checkout-CeysaIJK.mjs → checkout-CZRWu9rW.mjs} +3 -3
  157. package/dist/client/client.mjs +3331 -1407
  158. package/dist/client/{context-DBzX85Xc.mjs → context-DvU_WUmd.mjs} +4 -3
  159. package/dist/client/{dates-DCYhZBlW.mjs → dates-wnPMiRl5.mjs} +21 -3
  160. package/dist/client/{eventCalendar-BgsN73Ul.mjs → eventCalendar-BA3Q5L15.mjs} +80 -78
  161. package/dist/client/{eventCombined-DcZQAMQP.mjs → eventCombined-51wgR-1R.mjs} +3 -3
  162. package/dist/client/{eventDetails-BWwGJ54l.mjs → eventDetails-modaetpm.mjs} +4 -4
  163. package/dist/client/{eventListing-DqYqV8vp.mjs → eventListing-D8t2J3Kv.mjs} +3 -3
  164. package/dist/client/{eventRegistration-DQGDgu_e.mjs → eventRegistration-CYqtkCE_.mjs} +49 -9
  165. package/dist/client/{form-ClfpasVT.mjs → form-CBKXN5In.mjs} +2 -2
  166. package/dist/client/{headerSection-BuOMe98N.mjs → headerSection-DylDqNrs.mjs} +2 -2
  167. package/dist/client/hooks.mjs +1259 -555
  168. package/dist/client/{locationMap-CEqu_sfa.mjs → locationMap-CvWrG0vZ.mjs} +2 -2
  169. package/dist/client/{newsletterForm-IbrHjMxy.mjs → newsletterForm-Btwk70zw.mjs} +117 -38
  170. package/dist/client/{pricing-xj7MPZlK.mjs → pricing-Uzw-GQ6Y.mjs} +1 -1
  171. package/dist/client/{productDetail-vxqTt5Xj.mjs → productDetail-JLcUYKnd.mjs} +3 -3
  172. package/dist/client/{productList-OTdZu8sb.mjs → productList-FM0cbUzj.mjs} +3 -3
  173. package/dist/client/{propsDecoder-CY9gGEF7.mjs → propsDecoder-DYzafZb2.mjs} +592 -152
  174. package/dist/client/rendering/client.mjs +2259 -835
  175. package/dist/client/rendering/islands.mjs +17 -17
  176. package/dist/client/rendering.mjs +3308 -1236
  177. package/dist/client/{scrollToBlock--BFV6kl-.mjs → scrollToBlock-CvXszexS.mjs} +1 -1
  178. package/dist/client/{shop-CP4YbDL9.mjs → shop-BIcjvy5a.mjs} +6 -6
  179. package/dist/client/{shop-commerce-APs4XBXE.mjs → shop-commerce-BZQsy7xw.mjs} +5 -5
  180. package/dist/client/{shop-commerce-store-CAVLxLFr.mjs → shop-commerce-store-D5V7XAb5.mjs} +1 -1
  181. package/dist/client/{shopShared-BnSRrwXI.mjs → shopShared-DowkXevB.mjs} +3 -3
  182. package/dist/client/{useEventFilters-1a1by4c8.mjs → useEventFilters-oMoTw_JE.mjs} +56 -9
  183. package/dist/preview-next/before-render.mjs +238 -111
  184. package/dist/preview-next/client/runtime.mjs +4 -4
  185. package/dist/preview-next/keepAlive.mjs +238 -111
  186. package/dist/preview-next/middleware.mjs +238 -111
  187. package/dist/{previewAuthStore-BkEgnYPP.mjs → previewAuthStore-COUyAKaX.mjs} +238 -111
  188. package/dist/{sdk-runtime-DwGfsT0S.mjs → sdk-runtime-D4k2LSGF.mjs} +2 -2
  189. package/dist/{separator-BeqDLneQ.mjs → separator-UGtpag4Z.mjs} +1 -1
  190. package/dist/server/components.mjs +2697 -1023
  191. package/dist/server/config-validation.mjs +2424 -1720
  192. package/dist/server/config.mjs +2429 -1724
  193. package/dist/server/data.mjs +1164 -454
  194. package/dist/server/index.mjs +364 -280
  195. package/dist/server/navigation.mjs +16 -47
  196. package/dist/server/next.mjs +2915 -1380
  197. package/dist/server/page-converter.mjs +969 -522
  198. package/dist/server/prebuild.mjs +2 -3
  199. package/dist/server/rendering/server.mjs +2704 -1030
  200. package/dist/server/rendering.mjs +2742 -1063
  201. package/dist/server/routing.mjs +1386 -595
  202. package/dist/server/server.mjs +2878 -2324
  203. package/dist/server/theme-bridge.mjs +292 -24
  204. package/dist/styles/index.css +289 -25
  205. package/package.json +1 -1
  206. package/dist/_dts/api/src/navigation/identity.d.ts +0 -59
  207. package/dist/_dts/blocks/src/system/blocks/newsletter-signup-destination.d.ts +0 -291
  208. package/dist/_dts/core/src/newsletter-signup-destination.d.ts +0 -38
@@ -1010,14 +1010,117 @@ const NEWSLETTER_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
1010
1010
  responseKind: "json",
1011
1011
  errors: ["auth:forbidden", "server:internal_error"]
1012
1012
  },
1013
- getMailchimpSignupSyncHealth: {
1014
- path: "/sites/{siteId}/integrations/mailchimp/signup-sync-health",
1013
+ getMailingListSetup: {
1014
+ path: "/sites/{siteId}/mailing-list/setup",
1015
+ method: "GET",
1016
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
1017
+ auth: "user",
1018
+ responseKind: "json",
1019
+ errors: ["auth:forbidden", "server:internal_error"]
1020
+ },
1021
+ getMailingListAuthoringContext: {
1022
+ path: "/sites/{siteId}/mailing-list/authoring-context",
1023
+ method: "GET",
1024
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
1025
+ auth: "user",
1026
+ responseKind: "json",
1027
+ errors: ["auth:forbidden", "server:internal_error"]
1028
+ },
1029
+ previewMailingListSetupChange: {
1030
+ path: "/sites/{siteId}/mailing-list/setup/preview",
1031
+ method: "POST",
1032
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
1033
+ auth: "user",
1034
+ responseKind: "json",
1035
+ demoMutation: DEMO_MUTATION_ALLOWED,
1036
+ errors: [
1037
+ "auth:forbidden",
1038
+ "validation:invalid_input",
1039
+ "server:internal_error"
1040
+ ]
1041
+ },
1042
+ applyMailingListSetupChange: {
1043
+ path: "/sites/{siteId}/mailing-list/setup",
1044
+ method: "PUT",
1045
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
1046
+ auth: "user",
1047
+ responseKind: "json",
1048
+ demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
1049
+ errors: [
1050
+ "auth:forbidden",
1051
+ "validation:invalid_input",
1052
+ "resource:conflict",
1053
+ "server:internal_error"
1054
+ ]
1055
+ },
1056
+ getMailingListProviderCatalog: {
1057
+ path: "/sites/{siteId}/mailing-list/providers/{provider}/catalog",
1058
+ method: "GET",
1059
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
1060
+ auth: "user",
1061
+ responseKind: "json",
1062
+ errors: [
1063
+ "auth:forbidden",
1064
+ "validation:invalid_input",
1065
+ "server:internal_error"
1066
+ ]
1067
+ },
1068
+ refreshMailingListProviderCatalog: {
1069
+ path: "/sites/{siteId}/mailing-list/providers/{provider}/catalog/refresh",
1070
+ method: "POST",
1071
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
1072
+ auth: "user",
1073
+ responseKind: "json",
1074
+ demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
1075
+ errors: [
1076
+ "auth:forbidden",
1077
+ "validation:invalid_input",
1078
+ "server:internal_error"
1079
+ ]
1080
+ },
1081
+ getMailingListProviderHealth: {
1082
+ path: "/sites/{siteId}/mailing-list/health",
1083
+ method: "GET",
1084
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
1085
+ auth: "user",
1086
+ responseKind: "json",
1087
+ errors: ["auth:forbidden", "server:internal_error"]
1088
+ },
1089
+ getBrevoConnection: {
1090
+ path: "/sites/{siteId}/integrations/brevo/connection",
1015
1091
  method: "GET",
1016
1092
  tags: [TAG_TEMPLATES.site],
1017
1093
  auth: "user",
1018
1094
  responseKind: "json",
1019
1095
  errors: ["auth:forbidden", "server:internal_error"]
1020
1096
  },
1097
+ connectBrevo: {
1098
+ path: "/sites/{siteId}/integrations/brevo/connection",
1099
+ method: "PUT",
1100
+ tags: [TAG_TEMPLATES.site],
1101
+ auth: "user",
1102
+ responseKind: "json",
1103
+ demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
1104
+ errors: [
1105
+ "auth:forbidden",
1106
+ "validation:invalid_input",
1107
+ "resource:conflict",
1108
+ "server:internal_error"
1109
+ ]
1110
+ },
1111
+ disconnectBrevo: {
1112
+ path: "/sites/{siteId}/integrations/brevo/disconnect",
1113
+ method: "POST",
1114
+ tags: [TAG_TEMPLATES.site],
1115
+ auth: "user",
1116
+ responseKind: "json",
1117
+ demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
1118
+ errors: [
1119
+ "auth:forbidden",
1120
+ "resource:conflict",
1121
+ "server:internal_error"
1122
+ ]
1123
+ },
1021
1124
  getMailchimpConnection: {
1022
1125
  path: "/sites/{siteId}/integrations/mailchimp/connection",
1023
1126
  method: "GET",
@@ -1240,6 +1343,56 @@ const NEWSLETTER_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
1240
1343
  responseKind: "json"
1241
1344
  }
1242
1345
  });
1346
+ const PUBLIC_CONTENT_FRESHNESS_SECONDS = 3600;
1347
+ function availability(transport) {
1348
+ return {
1349
+ kind: "live",
1350
+ reason: "booking_correctness",
1351
+ freshness: "availability",
1352
+ transport
1353
+ };
1354
+ }
1355
+ function content(tags, transport = "direct") {
1356
+ return {
1357
+ kind: "tagged",
1358
+ tags,
1359
+ freshness: "content",
1360
+ transport
1361
+ };
1362
+ }
1363
+ /** The single classification authority for cacheable public reads. */
1364
+ const PUBLIC_READ_CACHE_POLICIES = {
1365
+ listPublishedEntries: content(["published_content"]),
1366
+ getPublishedEntryPreview: content(["published_content"]),
1367
+ listPublicEvents: availability("direct"),
1368
+ listPublicEventCalendarWindow: availability("direct"),
1369
+ listPublicRecurringSchedule: availability("batch_only"),
1370
+ getPublicEventDetails: availability("batch_only"),
1371
+ resolveEventSubroute: availability("direct"),
1372
+ listPublicRouteCandidates: content(["published_content"], "batch_only"),
1373
+ listPublicTeamMembers: content(["public_team_members"]),
1374
+ listPublicProducts: availability("direct"),
1375
+ listPublicPasses: availability("direct"),
1376
+ listPublicMemberships: availability("direct"),
1377
+ getPublicFormById: content(["site_forms"]),
1378
+ getPublicBookingServices: availability("direct"),
1379
+ getPublicBookingService: availability("direct"),
1380
+ getPublicBookingResourcesReference: availability("direct"),
1381
+ getPublicBookingAvailableDates: availability("direct"),
1382
+ getPublicBookingAvailableSlots: availability("direct"),
1383
+ getPublicWeeklySlotAvailability: availability("direct"),
1384
+ listPublicForms: content(["site_forms"]),
1385
+ checkRedirect: content([]),
1386
+ getPublicRoutableContent: content(["published_content"]),
1387
+ getPublicSitemapRoutes: content(["published_content"])
1388
+ };
1389
+ new Set(Object.keys(PUBLIC_READ_CACHE_POLICIES));
1390
+ function getPublicReadCachePolicy(endpoint) {
1391
+ return PUBLIC_READ_CACHE_POLICIES[endpoint];
1392
+ }
1393
+ function publicReadFreshnessSeconds(endpoint) {
1394
+ return getPublicReadCachePolicy(endpoint).freshness === "availability" ? 60 : PUBLIC_CONTENT_FRESHNESS_SECONDS;
1395
+ }
1243
1396
  //#endregion
1244
1397
  //#region ../api/src/publicEventEndpointDefinitions.ts
1245
1398
  const PUBLIC_EVENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
@@ -1273,7 +1426,7 @@ const PUBLIC_EVENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
1273
1426
  resolveEventSubroute: {
1274
1427
  path: "/public/sites/{siteId}/events/subroutes/resolve",
1275
1428
  method: "GET",
1276
- revalidate: 60,
1429
+ revalidate: publicReadFreshnessSeconds("resolveEventSubroute"),
1277
1430
  tags: [TAG_TEMPLATES.publicEvents, "event-subroute"],
1278
1431
  auth: "public",
1279
1432
  responseKind: "json",
@@ -1326,7 +1479,7 @@ const PUBLIC_BOOKING_AVAILABILITY_ENDPOINT_DEFINITIONS = defineEndpointDefinitio
1326
1479
  getPublicBookingServices: {
1327
1480
  path: "/public/bookings/services",
1328
1481
  method: "GET",
1329
- revalidate: 60,
1482
+ revalidate: publicReadFreshnessSeconds("getPublicBookingServices"),
1330
1483
  tags: [TAG_TEMPLATES.publicBookingServices],
1331
1484
  auth: "public",
1332
1485
  responseKind: "json"
@@ -1334,7 +1487,7 @@ const PUBLIC_BOOKING_AVAILABILITY_ENDPOINT_DEFINITIONS = defineEndpointDefinitio
1334
1487
  getPublicBookingService: {
1335
1488
  path: "/public/bookings/services/{serviceId}",
1336
1489
  method: "GET",
1337
- revalidate: 60,
1490
+ revalidate: publicReadFreshnessSeconds("getPublicBookingService"),
1338
1491
  tags: [TAG_TEMPLATES.publicBookingServices],
1339
1492
  auth: "public",
1340
1493
  responseKind: "json"
@@ -1342,7 +1495,7 @@ const PUBLIC_BOOKING_AVAILABILITY_ENDPOINT_DEFINITIONS = defineEndpointDefinitio
1342
1495
  getPublicBookingResourcesReference: {
1343
1496
  path: "/public/bookings/resources/reference",
1344
1497
  method: "GET",
1345
- revalidate: 60,
1498
+ revalidate: publicReadFreshnessSeconds("getPublicBookingResourcesReference"),
1346
1499
  tags: [TAG_TEMPLATES.publicBookingServices],
1347
1500
  auth: "public",
1348
1501
  responseKind: "json"
@@ -1350,7 +1503,7 @@ const PUBLIC_BOOKING_AVAILABILITY_ENDPOINT_DEFINITIONS = defineEndpointDefinitio
1350
1503
  getPublicBookingAvailableDates: {
1351
1504
  path: "/public/bookings/availability/dates",
1352
1505
  method: "GET",
1353
- revalidate: 60,
1506
+ revalidate: publicReadFreshnessSeconds("getPublicBookingAvailableDates"),
1354
1507
  tags: [TAG_TEMPLATES.publicBookingAvailability, TAG_TEMPLATES.publicBookingServices],
1355
1508
  auth: "public",
1356
1509
  responseKind: "json"
@@ -1358,7 +1511,7 @@ const PUBLIC_BOOKING_AVAILABILITY_ENDPOINT_DEFINITIONS = defineEndpointDefinitio
1358
1511
  getPublicBookingAvailableSlots: {
1359
1512
  path: "/public/bookings/availability/slots",
1360
1513
  method: "GET",
1361
- revalidate: 60,
1514
+ revalidate: publicReadFreshnessSeconds("getPublicBookingAvailableSlots"),
1362
1515
  tags: [TAG_TEMPLATES.publicBookingAvailability, TAG_TEMPLATES.publicBookingServices],
1363
1516
  auth: "public",
1364
1517
  responseKind: "json"
@@ -1366,7 +1519,7 @@ const PUBLIC_BOOKING_AVAILABILITY_ENDPOINT_DEFINITIONS = defineEndpointDefinitio
1366
1519
  getPublicWeeklySlotAvailability: {
1367
1520
  path: "/public/bookings/weekly-slot-availability",
1368
1521
  method: "GET",
1369
- revalidate: 60,
1522
+ revalidate: publicReadFreshnessSeconds("getPublicWeeklySlotAvailability"),
1370
1523
  tags: [TAG_TEMPLATES.publicBookingAvailability, TAG_TEMPLATES.publicBookingServices],
1371
1524
  auth: "public",
1372
1525
  responseKind: "json",
@@ -1816,10 +1969,86 @@ const SDK_MEDIA_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
1816
1969
  responseKind: "json"
1817
1970
  }
1818
1971
  });
1972
+ //#endregion
1973
+ //#region ../api/src/publicReadEndpointDefinitions.ts
1974
+ /**
1975
+ * Direct public reads governed by the canonical public-read freshness policy.
1976
+ * Keeping these definitions together makes the endpoint identity used to
1977
+ * derive freshness reviewable beside its route and tags.
1978
+ */
1979
+ const PUBLIC_READ_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
1980
+ getPublishedEntryPreview: {
1981
+ path: "/public/content/{siteId}/{type}/{slug}/preview",
1982
+ method: "GET",
1983
+ revalidate: publicReadFreshnessSeconds("getPublishedEntryPreview"),
1984
+ tags: ["content-{siteId}-{type}-{slug}"],
1985
+ auth: "public",
1986
+ responseKind: "json"
1987
+ },
1988
+ listPublishedEntries: {
1989
+ path: "/public/content/{siteId}/{type}/entries",
1990
+ method: "GET",
1991
+ revalidate: publicReadFreshnessSeconds("listPublishedEntries"),
1992
+ tags: ["content-{siteId}-{type}"],
1993
+ auth: "public",
1994
+ responseKind: "json"
1995
+ },
1996
+ getPublicFormById: {
1997
+ path: "/public/forms/{formId}",
1998
+ method: "GET",
1999
+ revalidate: publicReadFreshnessSeconds("getPublicFormById"),
2000
+ tags: [TAG_TEMPLATES.formById],
2001
+ auth: "public",
2002
+ responseKind: "json"
2003
+ },
2004
+ listPublicEvents: {
2005
+ path: "/public/sites/{siteId}/events",
2006
+ method: "GET",
2007
+ revalidate: publicReadFreshnessSeconds("listPublicEvents"),
2008
+ tags: [TAG_TEMPLATES.publicEvents],
2009
+ auth: "public",
2010
+ responseKind: "json"
2011
+ },
2012
+ listPublicTeamMembers: {
2013
+ path: "/public/sites/{siteId}/team-members",
2014
+ method: "GET",
2015
+ revalidate: publicReadFreshnessSeconds("listPublicTeamMembers"),
2016
+ tags: [TAG_TEMPLATES.publicTeamMembers],
2017
+ errors: [],
2018
+ auth: "public",
2019
+ responseKind: "json"
2020
+ },
2021
+ listPublicPasses: {
2022
+ path: "/public/sites/{siteId}/bookings/products/passes",
2023
+ method: "GET",
2024
+ revalidate: publicReadFreshnessSeconds("listPublicPasses"),
2025
+ tags: [TAG_TEMPLATES.publicPasses],
2026
+ auth: "public",
2027
+ responseKind: "json"
2028
+ },
2029
+ listPublicMemberships: {
2030
+ path: "/public/sites/{siteId}/bookings/products/memberships",
2031
+ method: "GET",
2032
+ revalidate: publicReadFreshnessSeconds("listPublicMemberships"),
2033
+ tags: [TAG_TEMPLATES.publicMemberships],
2034
+ auth: "public",
2035
+ responseKind: "json"
2036
+ },
2037
+ listPublicProducts: {
2038
+ path: "/public/sites/{siteId}/products",
2039
+ method: "GET",
2040
+ revalidate: publicReadFreshnessSeconds("listPublicProducts"),
2041
+ tags: [TAG_TEMPLATES.publicProducts],
2042
+ errors: [],
2043
+ auth: "public",
2044
+ responseKind: "json"
2045
+ }
2046
+ });
1819
2047
  const API_ENDPOINTS = {
1820
2048
  ...ACCOUNT_ENDPOINT_DEFINITIONS,
1821
2049
  ...PUBLIC_EVENT_ENDPOINT_DEFINITIONS,
1822
2050
  ...GIFTING_ENDPOINT_DEFINITIONS,
2051
+ ...PUBLIC_READ_ENDPOINT_DEFINITIONS,
1823
2052
  aiContentUpdateChat: {
1824
2053
  path: "/ai/content-update-chat",
1825
2054
  method: "POST",
@@ -3822,13 +4051,6 @@ const API_ENDPOINTS = {
3822
4051
  auth: "user",
3823
4052
  responseKind: "json"
3824
4053
  },
3825
- createNavigationMenu: {
3826
- path: "/sites/{siteId}/navigation/menus",
3827
- method: "POST",
3828
- tags: [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation],
3829
- auth: "user",
3830
- responseKind: "json"
3831
- },
3832
4054
  getNavigationMenuItems: {
3833
4055
  path: "/sites/{siteId}/navigation/menus/{menuId}",
3834
4056
  method: "GET",
@@ -3840,28 +4062,6 @@ const API_ENDPOINTS = {
3840
4062
  auth: "user",
3841
4063
  responseKind: "json"
3842
4064
  },
3843
- updateNavigationMenu: {
3844
- path: "/sites/{siteId}/navigation/menus/{menuId}",
3845
- method: "PATCH",
3846
- tags: [
3847
- TAG_TEMPLATES.siteCollection,
3848
- TAG_TEMPLATES.siteNavigation,
3849
- TAG_TEMPLATES.navigationMenuById
3850
- ],
3851
- auth: "user",
3852
- responseKind: "json"
3853
- },
3854
- deleteNavigationMenu: {
3855
- path: "/sites/{siteId}/navigation/menus/{menuId}",
3856
- method: "DELETE",
3857
- tags: [
3858
- TAG_TEMPLATES.siteCollection,
3859
- TAG_TEMPLATES.siteNavigation,
3860
- TAG_TEMPLATES.navigationMenuById
3861
- ],
3862
- auth: "user",
3863
- responseKind: "json"
3864
- },
3865
4065
  createNavigationItem: {
3866
4066
  path: "/sites/{siteId}/navigation/menus/{menuId}/items",
3867
4067
  method: "POST",
@@ -3932,22 +4132,6 @@ const API_ENDPOINTS = {
3932
4132
  auth: "public",
3933
4133
  responseKind: "json"
3934
4134
  },
3935
- getPublishedEntryPreview: {
3936
- path: "/public/content/{siteId}/{type}/{slug}/preview",
3937
- method: "GET",
3938
- revalidate: 60,
3939
- tags: ["content-{siteId}-{type}-{slug}"],
3940
- auth: "public",
3941
- responseKind: "json"
3942
- },
3943
- listPublishedEntries: {
3944
- path: "/public/content/{siteId}/{type}/entries",
3945
- method: "GET",
3946
- revalidate: 60,
3947
- tags: ["content-{siteId}-{type}"],
3948
- auth: "public",
3949
- responseKind: "json"
3950
- },
3951
4135
  getPublishedPostPreview: {
3952
4136
  path: "/public/posts/{siteId}/{slug}/preview",
3953
4137
  method: "GET",
@@ -4671,14 +4855,6 @@ const API_ENDPOINTS = {
4671
4855
  auth: "public",
4672
4856
  responseKind: "json"
4673
4857
  },
4674
- getPublicFormById: {
4675
- path: "/public/forms/{formId}",
4676
- method: "GET",
4677
- revalidate: 60,
4678
- tags: [TAG_TEMPLATES.formById],
4679
- auth: "public",
4680
- responseKind: "json"
4681
- },
4682
4858
  listPublicForms: {
4683
4859
  path: "/public/sites/{siteId}/forms",
4684
4860
  method: "GET",
@@ -4961,14 +5137,6 @@ const API_ENDPOINTS = {
4961
5137
  auth: "service",
4962
5138
  responseKind: "json"
4963
5139
  },
4964
- listPublicEvents: {
4965
- path: "/public/sites/{siteId}/events",
4966
- method: "GET",
4967
- revalidate: 60,
4968
- tags: [TAG_TEMPLATES.publicEvents],
4969
- auth: "public",
4970
- responseKind: "json"
4971
- },
4972
5140
  getPublicEventFilters: {
4973
5141
  path: "/public/sites/{siteId}/events/filters",
4974
5142
  method: "GET",
@@ -4977,15 +5145,6 @@ const API_ENDPOINTS = {
4977
5145
  auth: "public",
4978
5146
  responseKind: "json"
4979
5147
  },
4980
- listPublicTeamMembers: {
4981
- path: "/public/sites/{siteId}/team-members",
4982
- method: "GET",
4983
- revalidate: 60,
4984
- tags: [TAG_TEMPLATES.publicTeamMembers],
4985
- errors: [],
4986
- auth: "public",
4987
- responseKind: "json"
4988
- },
4989
5148
  resolveWaitlistClaim: {
4990
5149
  path: "/public/sites/{siteId}/waitlists/claim/resolve",
4991
5150
  method: "POST",
@@ -4999,31 +5158,6 @@ const API_ENDPOINTS = {
4999
5158
  "server:internal_error"
5000
5159
  ]
5001
5160
  },
5002
- listPublicPasses: {
5003
- path: "/public/sites/{siteId}/bookings/products/passes",
5004
- method: "GET",
5005
- revalidate: 300,
5006
- tags: [TAG_TEMPLATES.publicPasses],
5007
- auth: "public",
5008
- responseKind: "json"
5009
- },
5010
- listPublicMemberships: {
5011
- path: "/public/sites/{siteId}/bookings/products/memberships",
5012
- method: "GET",
5013
- revalidate: 300,
5014
- tags: [TAG_TEMPLATES.publicMemberships],
5015
- auth: "public",
5016
- responseKind: "json"
5017
- },
5018
- listPublicProducts: {
5019
- path: "/public/sites/{siteId}/products",
5020
- method: "GET",
5021
- revalidate: 300,
5022
- tags: [TAG_TEMPLATES.publicProducts],
5023
- errors: [],
5024
- auth: "public",
5025
- responseKind: "json"
5026
- },
5027
5161
  createShopCheckout: {
5028
5162
  path: "/public/sites/{siteId}/bookings/checkout",
5029
5163
  method: "POST",
@@ -6852,13 +6986,6 @@ const API_ENDPOINTS = {
6852
6986
  auth: "service",
6853
6987
  responseKind: "json"
6854
6988
  },
6855
- sdkDeleteNavigationMenu: {
6856
- path: "/sdk/{siteId}/navigation/{menuId}",
6857
- method: "DELETE",
6858
- auth: "service",
6859
- responseKind: "json",
6860
- errors: ["resource:not_found", "server:internal_error"]
6861
- },
6862
6989
  sdkUpsertTheme: {
6863
6990
  path: "/sdk/{siteId}/theme",
6864
6991
  method: "POST",