@riverbankcms/sdk 0.82.0 → 0.84.1

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 (206) hide show
  1. package/README.md +16 -0
  2. package/dist/{PreviewEditorSidebar-LHGK6RIO.mjs → PreviewEditorSidebar-X7RLMEI6.mjs} +330 -11
  3. package/dist/{PreviewEditorUI-AXZG2SDC.mjs → PreviewEditorUI-CT67N4O3.mjs} +3 -3
  4. package/dist/SdkPreviewModeRuntime-EIMQ3S2V.mjs +8 -0
  5. package/dist/_dts/ai/src/contracts/proposals.d.ts +200 -0
  6. package/dist/_dts/api/src/blocks.d.ts +36 -0
  7. package/dist/_dts/api/src/contentRuntime.d.ts +46 -0
  8. package/dist/_dts/api/src/endpoints.d.ts +40 -0
  9. package/dist/_dts/api/src/index.d.ts +2 -2
  10. package/dist/_dts/api/src/sdk-event-pricing.d.ts +61 -0
  11. package/dist/_dts/api/src/sdk-event-schedule.d.ts +52 -0
  12. package/dist/_dts/api/src/sdk-event-upsert.d.ts +50 -0
  13. package/dist/_dts/api/src/sdkContracts.d.ts +67 -33
  14. package/dist/_dts/api/src/shared-contracts.d.ts +13 -0
  15. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +22 -36
  16. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +46 -1
  17. package/dist/_dts/block-form/src/backend/useBackendWatch.d.ts +6 -1
  18. package/dist/_dts/block-form/src/utils/evaluateVisibility.d.ts +3 -2
  19. package/dist/_dts/block-form/src/utils/visibleWhen.d.ts +7 -0
  20. package/dist/_dts/blocks/src/PageRenderer.d.ts +11 -0
  21. package/dist/_dts/blocks/src/bindings/index.d.ts +1 -1
  22. package/dist/_dts/blocks/src/client/site-chrome.d.ts +1 -1
  23. package/dist/_dts/blocks/src/client.d.ts +4 -0
  24. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +16 -4
  25. package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +288 -2016
  26. package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +288 -2016
  27. package/dist/_dts/blocks/src/system/blocks/cart.d.ts +288 -2016
  28. package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +288 -2016
  29. package/dist/_dts/blocks/src/system/blocks/collection.d.ts +288 -2016
  30. package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +171 -0
  31. package/dist/_dts/blocks/src/system/blocks/faq.d.ts +288 -2016
  32. package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +288 -2016
  33. package/dist/_dts/blocks/src/system/blocks/hero.d.ts +3 -2
  34. package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
  35. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +1 -7
  36. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +2534 -151
  37. package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +288 -2016
  38. package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +288 -2016
  39. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +288 -2016
  40. package/dist/_dts/blocks/src/system/blocks/site-header.d.ts +36 -3
  41. package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +2 -2
  42. package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
  43. package/dist/_dts/blocks/src/system/fields/aspectRatio.d.ts +4 -1
  44. package/dist/_dts/blocks/src/system/fields/imageShape.d.ts +30 -0
  45. package/dist/_dts/blocks/src/system/fragments/library/heroLayoutControls.d.ts +25 -0
  46. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +35 -161
  47. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +24 -6
  48. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +12 -3
  49. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +33 -0
  50. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationWizard.d.ts +0 -2
  51. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/constants.d.ts +1 -0
  52. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +275 -0
  53. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.override.d.ts +10 -0
  54. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.planning.d.ts +22 -0
  55. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.state.d.ts +3 -0
  56. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +20 -1
  57. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +13 -4
  58. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/utils.d.ts +1 -1
  59. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +28 -6
  60. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/pricing.d.ts +14 -0
  61. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +1 -1
  62. package/dist/_dts/content-editor/src/controller/buildBlockPublishedBaselines.d.ts +1 -1
  63. package/dist/_dts/content-editor/src/controller/seedDraftBaselinesFromBlocks.d.ts +1 -1
  64. package/dist/_dts/content-editor/src/controller/useBlocksList.d.ts +1 -1
  65. package/dist/_dts/content-editor/src/controller/useInvalidBlockRecovery.d.ts +1 -1
  66. package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +2 -1
  67. package/dist/_dts/content-editor/src/primitives/PreviewTextEditor.d.ts +1 -0
  68. package/dist/_dts/content-model/src/entry-slots/index.d.ts +1 -0
  69. package/dist/_dts/content-model/src/entry-slots/types.d.ts +356 -0
  70. package/dist/_dts/content-model/src/index.d.ts +1 -0
  71. package/dist/_dts/content-model/src/templates/defaults.d.ts +7 -0
  72. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +100 -5
  73. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +6 -1
  74. package/dist/_dts/editor-blocks/src/BlockForm.d.ts +7 -5
  75. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +3 -2
  76. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +3 -2
  77. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +3 -2
  78. package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +27 -0
  79. package/dist/_dts/editor-blocks/src/index.d.ts +1 -0
  80. package/dist/_dts/media-core/src/assetsInUseSummary.d.ts +8 -0
  81. package/dist/_dts/media-core/src/mediaUsageProjection.d.ts +37 -3
  82. package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +4 -2
  83. package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -2
  84. package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +3 -1
  85. package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +19 -0
  86. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeButton.d.ts +8 -0
  87. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -1
  88. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +1 -1
  89. package/dist/_dts/preview-next/src/client/preview/linkedEntryEditEvents.d.ts +9 -0
  90. package/dist/_dts/preview-next/src/client/preview/previewCustomizeControls.d.ts +9 -8
  91. package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +10 -1
  92. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +5 -1
  93. package/dist/_dts/sdk/src/bookings/index.d.ts +5 -4
  94. package/dist/_dts/sdk/src/bookings/types.d.ts +2 -2
  95. package/dist/_dts/sdk/src/cli/content/reader.d.ts +9 -8
  96. package/dist/_dts/sdk/src/cli/content/writer.d.ts +6 -1
  97. package/dist/_dts/sdk/src/cli/helpers.d.ts +10 -5
  98. package/dist/_dts/sdk/src/cli/merge-remote/entryLocal.d.ts +2 -2
  99. package/dist/_dts/sdk/src/cli/merge-remote/entryMerge.d.ts +2 -1
  100. package/dist/_dts/sdk/src/cli/merge-remote/entrySnapshots.d.ts +2 -2
  101. package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
  102. package/dist/_dts/sdk/src/client/management/types.d.ts +40 -10
  103. package/dist/_dts/sdk/src/config/field-definitions.d.ts +13 -7
  104. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +26 -3
  105. package/dist/_dts/sdk/src/public-api/contracts.d.ts +13 -0
  106. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +1 -0
  107. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +6 -1
  108. package/dist/_dts/sdk/src/rendering/overrides.d.ts +6 -1
  109. package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
  110. package/dist/_dts/sdk/src/version.d.ts +1 -1
  111. package/dist/_dts/site-commands/src/commands.d.ts +15 -0
  112. package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -1
  113. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
  114. package/dist/_dts/theme-core/src/buttons/personalities/ornate-ritual.d.ts +16 -0
  115. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -1
  116. package/dist/_dts/theme-core/src/buttons/types.d.ts +3 -3
  117. package/dist/_dts/theme-core/src/cards/types.d.ts +15 -15
  118. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  119. package/dist/_dts/theme-core/src/inputs/types.d.ts +1 -1
  120. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +33 -33
  121. package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
  122. package/dist/_dts/theme-core/src/palette/variants/warm-dark.d.ts +16 -0
  123. package/dist/_dts/theme-core/src/schema.d.ts +30 -25
  124. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  125. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +141 -1
  126. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +2 -0
  127. package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +110 -5
  128. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
  129. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
  130. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +5 -1
  131. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
  132. package/dist/_dts/theme-core/src/site-styles/types.d.ts +1 -1
  133. package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +16 -1
  134. package/dist/_dts/theme-core/src/siteChromePlanning.d.ts +1 -0
  135. package/dist/_dts/theme-core/src/utils/colorStyles.d.ts +6 -6
  136. package/dist/{chunk-2BUMISSH.mjs → chunk-3LXFQS7T.mjs} +1 -1
  137. package/dist/{chunk-FIREV57T.mjs → chunk-LBBPD2IW.mjs} +40 -0
  138. package/dist/{chunk-XQR6THQJ.mjs → chunk-O62NDCTI.mjs} +3390 -1331
  139. package/dist/{chunk-6FWNF3DJ.mjs → chunk-QRKJDWT7.mjs} +158 -20
  140. package/dist/{chunk-HKB6XVIP.mjs → chunk-RCTJAZSK.mjs} +2 -2
  141. package/dist/{chunk-G35HOQEN.mjs → chunk-X5ZCSU6F.mjs} +132 -46
  142. package/dist/cli/index.mjs +2925 -577
  143. package/dist/cli/init-docs/content/agents-section.md +5 -0
  144. package/dist/cli/init-docs/content/cli-reference.md +13 -0
  145. package/dist/cli/init-docs/content/content-management.md +31 -0
  146. package/dist/cli/init-docs/content/getting-started.md +14 -0
  147. package/dist/cli/init-docs/content/workflow-add-block.md +3 -1
  148. package/dist/cli/init-docs/content/workflow-agent-safe-sync.md +81 -0
  149. package/dist/cli/init-docs/content/workflow-create-page.md +13 -3
  150. package/dist/cli/init-docs/content/workflow-custom-block.md +9 -0
  151. package/dist/cli/init-docs/content/workflow-templates.md +107 -2
  152. package/dist/client/{accordion-G34C45TW.mjs → accordion-2UZPBMYM.mjs} +2 -2
  153. package/dist/client/{bookingForm-BLBVKSAQ.mjs → bookingForm-DYXT6YB6.mjs} +5 -5
  154. package/dist/client/bookings.mjs +3477 -186
  155. package/dist/client/{carousel-7ZVTBRMD.mjs → carousel-QH77HR6X.mjs} +3 -3
  156. package/dist/client/{cart-Q6S6LZUO.mjs → cart-X4YK4FTW.mjs} +6 -6
  157. package/dist/client/{checkout-5QJLDE4I.mjs → checkout-OM2BEPWD.mjs} +6 -6
  158. package/dist/client/{chunk-ZF4XEWDM.mjs → chunk-3DTWLTXM.mjs} +1 -1
  159. package/dist/client/{chunk-5PQH4Y75.mjs → chunk-4OXKTA3D.mjs} +2 -2
  160. package/dist/client/{chunk-WJFHDTYF.mjs → chunk-52CGCQ7B.mjs} +5 -5
  161. package/dist/client/{chunk-CHAB5ACD.mjs → chunk-7UCLJ5SP.mjs} +2 -2
  162. package/dist/client/{chunk-U2EW7RSR.mjs → chunk-F5VRX5Y6.mjs} +1 -1
  163. package/dist/client/{chunk-SBBSMFFG.mjs → chunk-SYIJ5JO2.mjs} +1 -1
  164. package/dist/client/{chunk-EQKYMX4N.mjs → chunk-UHDWIXVR.mjs} +180 -157
  165. package/dist/client/{chunk-RJHTCTCZ.mjs → chunk-VGDBVNOO.mjs} +429 -15
  166. package/dist/client/{chunk-S3MKFGOG.mjs → chunk-ZE5G642V.mjs} +1 -1
  167. package/dist/client/{chunk-CSZGLBYR.mjs → chunk-ZKUO52W3.mjs} +1 -1
  168. package/dist/client/client.mjs +2685 -847
  169. package/dist/client/{courseRegistration-VUG2JJDB.mjs → courseRegistration-YBOGURTA.mjs} +5 -5
  170. package/dist/client/{eventCalendar-E7D2LD4N.mjs → eventCalendar-K4QJVCMD.mjs} +7 -7
  171. package/dist/client/{eventCombined-FUZ2Z3CS.mjs → eventCombined-MTXGMTCZ.mjs} +7 -7
  172. package/dist/client/{eventDetails-QRITJAOW.mjs → eventDetails-3PC4NL3U.mjs} +7 -7
  173. package/dist/client/{eventListing-INMQMJZ5.mjs → eventListing-TFJET6DN.mjs} +7 -7
  174. package/dist/client/{eventRegistration-TOOJD4WU.mjs → eventRegistration-QGPBGJTW.mjs} +7 -7
  175. package/dist/client/{form-BOWN7ZNQ.mjs → form-MDKR4FNB.mjs} +2 -2
  176. package/dist/client/{headerSection-HFQNZOUU.mjs → headerSection-Y5TMR3TW.mjs} +3 -3
  177. package/dist/client/hooks.mjs +2077 -546
  178. package/dist/client/{locationMap-VUZGC7Y5.mjs → locationMap-RH2LG7FZ.mjs} +2 -2
  179. package/dist/client/{newsletterForm-X2XQTPCB.mjs → newsletterForm-ZR5UDGBT.mjs} +2 -2
  180. package/dist/client/{productDetail-TA7D2G2B.mjs → productDetail-OIGDR4YE.mjs} +6 -6
  181. package/dist/client/{productList-AZOLOZKM.mjs → productList-4MA5S2CX.mjs} +6 -6
  182. package/dist/client/rendering/client.mjs +2560 -1205
  183. package/dist/client/rendering/islands.mjs +19 -19
  184. package/dist/client/rendering.mjs +2932 -1021
  185. package/dist/client/{shop-ZDLO7IIG.mjs → shop-WXSYV5QO.mjs} +6 -6
  186. package/dist/preview-next/before-render.mjs +40 -0
  187. package/dist/preview-next/client/runtime.mjs +5 -5
  188. package/dist/preview-next/middleware.mjs +40 -0
  189. package/dist/{sdk-runtime-CTWKNBDQ.mjs → sdk-runtime-7HJYPRWQ.mjs} +6 -6
  190. package/dist/server/components.mjs +2232 -534
  191. package/dist/server/config-validation.mjs +2068 -536
  192. package/dist/server/config.mjs +2068 -536
  193. package/dist/server/data.mjs +2077 -546
  194. package/dist/server/index.mjs +42 -1
  195. package/dist/server/next.mjs +2345 -574
  196. package/dist/server/page-converter.mjs +2684 -1220
  197. package/dist/server/prebuild.mjs +1 -1
  198. package/dist/server/rendering/server.mjs +2244 -546
  199. package/dist/server/rendering.mjs +2323 -552
  200. package/dist/server/routing.mjs +2012 -420
  201. package/dist/server/server.mjs +2153 -549
  202. package/dist/server/theme-bridge.mjs +1180 -101
  203. package/dist/server/theme.mjs +92 -1
  204. package/dist/styles/index.css +292 -36
  205. package/package.json +1 -1
  206. package/dist/SdkPreviewModeRuntime-RNVRHFFR.mjs +0 -8
@@ -1,9 +1,9 @@
1
1
  "use client";
2
- import { useOptionalPreviewLayout, PreviewQueryProvider } from './chunk-2BUMISSH.mjs';
3
- import { PreviewBlockCustomizeSelectionProvider, resolveSiteStyleAccess, resolvePreviewDashboardSetupHandoff, buildPreviewDashboardSetupUrl, resolvePreviewSetupBannerModel, usePreviewBlockCustomizeSelectionOptional, useBlockCustomizeControls, MAX_CUSTOMIZE_POPOVER_ROWS, MAX_QUICK_MANIFEST_FIELDS, OfferingsPreviewWidgetProvider, previewWidgetOverrides, sanitizeDashboardPath } from './chunk-G35HOQEN.mjs';
4
- import { resolvePreviewChromeSurface, getPreviewSidebarTab, onPreviewSidebarOpenRequest, getPreviewChromeSurfaceDataProps, PREVIEW_CHROME_THEME_CLASS_NAME, setPreviewSidebarTab, PreviewPageDesignEditorStateProvider, usePreviewPageDesignEditorState } from './chunk-HKB6XVIP.mjs';
5
- import { clientComponentRegistry, deriveLaunchReadiness, DEFAULT_LAUNCH_READINESS_INPUT, useEditorUiStore, PreviewThemeOverlayProvider, PreviewDesignCoordinatorProvider, SiteChromeCustomizeProvider, ResizableSplitPane, BlockApiProvider, EditorProvider, PreviewDesignHistoryOrderProvider, MediaEditorProvider, useEditorUiStoreInstance, useEditor, createRoutingHelpers, createSnapshotFromPageRecord, EntryControllerProvider, useEntryEditorController, surfaceResolutionContextFromTheme, unsafeAsEditorBlockId, EditableBlockProvider, asDesignBlockId, PageRenderer, usePreviewThemeOverlay, planSiteDocument, ThemeScope, FixedBottomSurface, Button, unsafeAsLinkedContentEntryId, sectionTransitionVariantForBoundaryOptionId, sectionTransitionFamilyForBoundaryOptionId, sectionTransitionFamilies, X, defaultSectionTransitionVariantForFamily, RotateCcw, parseBackgroundOverrideFromContent, rankBackgroundImagePoolItems, imagePoolForOverride, resolveBackgroundCapability, enabledBackgroundModes, canCycleBackgroundOverrideValue, FormRenderer, stableSerialize, prefetchBlockData, isSupportedLoaderEndpoint, PreviewRichTextEditor, RichText, PreviewTextEditor, Text, buildThemeRuntime, renderBlock, siteHeaderManifest, siteFooterManifest, SiteDocumentLayout, SITE_CHROME_CLASS_NAMES, Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter, buildEditorModelRuntimeFieldsByBlockId, applyCompiledRuntimeFieldsToContent, assertNever2, getBlockDefinition, systemCustomizeFacetDefinitionsForBlock, systemCustomizeFacetAppliesToLayoutVariant, systemCustomizeFacetCurrentValue, systemCustomizeFacetLabelForValue, backgroundColorTokens, ChevronLeft, ChevronRight, createMicrobatcher, unwrapResponse, normalizePublicApiLoaderParams, visibleHeaderClearancePx, LINKED_CONTENT_ENTRY_META_KEY, useMediaEditorOptional, Image, defaultBackgroundOverrideForMode, decodePublicProductCategorySelectorQuery, EDITABLE_SURFACE_FORWARDING_PROP, useSiteChromeCustomizeOptional, assertNever, SITE_CHROME_VISIBLE_HEADER_SELECTOR, getLinkedContentEntryMeta, GRADIENT_PRESETS, resolveImageUrlWithContext, gradientToCss, Upload, MediaEditor, SECTION_BACKGROUND_MIN_SOURCE_WIDTH, SECTION_BACKGROUND_MIN_SOURCE_HEIGHT, parseMediaAssetId, formatSiteChromeBackgroundTokenLabel, planBackgroundOverride, planBackgroundTransition, systemCustomizeFacetNextValue } from './chunk-XQR6THQJ.mjs';
6
- import { API_ENDPOINTS, createBearerAPIClient, isPreviewRuntimeSessionEditable, DEFAULT_SURFACE_ID, initPreviewAuth, usePreviewAuth, usePreviewAuthFetch, markPreviewAuthExpired, usePreviewToken } from './chunk-FIREV57T.mjs';
2
+ import { useOptionalPreviewLayout, PreviewQueryProvider } from './chunk-3LXFQS7T.mjs';
3
+ import { PreviewBlockCustomizeSelectionProvider, resolveSiteStyleAccess, resolvePreviewDashboardSetupHandoff, buildPreviewDashboardSetupUrl, resolvePreviewSetupBannerModel, usePreviewBlockCustomizeSelectionOptional, useBlockCustomizeControls, MAX_CUSTOMIZE_POPOVER_ROWS, MAX_QUICK_MANIFEST_FIELDS, OfferingsPreviewWidgetProvider, previewWidgetOverrides, sanitizeDashboardPath } from './chunk-X5ZCSU6F.mjs';
4
+ import { resolvePreviewChromeSurface, getPreviewSidebarTab, onPreviewSidebarOpenRequest, getPreviewChromeSurfaceDataProps, PREVIEW_CHROME_THEME_CLASS_NAME, setPreviewSidebarTab, PreviewPageDesignEditorStateProvider, usePreviewPageDesignEditorState } from './chunk-RCTJAZSK.mjs';
5
+ import { clientComponentRegistry, deriveLaunchReadiness, DEFAULT_LAUNCH_READINESS_INPUT, useEditorUiStore, PreviewThemeOverlayProvider, PreviewDesignCoordinatorProvider, SiteChromeCustomizeProvider, ResizableSplitPane, BlockApiProvider, EditorProvider, PreviewDesignHistoryOrderProvider, MediaEditorProvider, useEditorUiStoreInstance, useEditor, createRoutingHelpers, createSnapshotFromPageRecord, EntryControllerProvider, useEntryEditorController, surfaceResolutionContextFromTheme, designRuntimeRulesForTheme, unsafeAsEditorBlockId, EditableBlockProvider, asDesignBlockId, PageRenderer, usePreviewThemeOverlay, planSiteDocument, ThemeScope, FixedBottomSurface, Button, unsafeAsLinkedContentEntryId, sectionTransitionVariantForBoundaryOptionId, sectionTransitionFamilyForBoundaryOptionId, sectionTransitionFamilies, X, defaultSectionTransitionVariantForFamily, RotateCcw, parseBackgroundOverrideFromContent, rankBackgroundImagePoolItems, imagePoolForOverride, resolveBackgroundCapability, enabledBackgroundModes, canCycleBackgroundOverrideValue, FormRenderer, stableSerialize, prefetchBlockData, isSupportedLoaderEndpoint, PreviewRichTextEditor, RichText, PreviewTextEditor, Text, buildThemeRuntime, renderBlock, siteHeaderManifest, siteFooterManifest, SiteDocumentLayout, SITE_CHROME_CLASS_NAMES, Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter, buildEditorModelRuntimeFieldsByBlockId, applyCompiledRuntimeFieldsToContent, assertNever2, getBlockDefinition, systemCustomizeFacetDefinitionsForBlock, systemCustomizeFacetAppliesToLayoutVariant, systemCustomizeFacetCurrentValue, systemCustomizeFacetLabelForValue, backgroundColorTokens, ChevronLeft, ChevronRight, createMicrobatcher, unwrapResponse, normalizePublicApiLoaderParams, visibleHeaderClearancePx, LINKED_CONTENT_ENTRY_META_KEY, useMediaEditorOptional, Image, defaultBackgroundOverrideForMode, decodePublicProductCategorySelectorQuery, EDITABLE_SURFACE_FORWARDING_PROP, useSiteChromeCustomizeOptional, assertNever, SITE_CHROME_VISIBLE_HEADER_SELECTOR, getLinkedContentEntryMeta, GRADIENT_PRESETS, resolveImageUrlWithContext, gradientToCss, Upload, MediaEditor, SECTION_BACKGROUND_MIN_SOURCE_WIDTH, SECTION_BACKGROUND_MIN_SOURCE_HEIGHT, parseMediaAssetId, formatSiteChromeBackgroundTokenLabel, planBackgroundOverride, planBackgroundTransition, systemCustomizeFacetNextValue } from './chunk-O62NDCTI.mjs';
6
+ import { API_ENDPOINTS, createBearerAPIClient, isPreviewRuntimeSessionEditable, DEFAULT_SURFACE_ID, initPreviewAuth, usePreviewAuth, usePreviewAuthFetch, markPreviewAuthExpired, usePreviewToken } from './chunk-LBBPD2IW.mjs';
7
7
  import React10, { createContext, useMemo, useState, useEffect, useRef, useCallback, useId, useReducer, Children, isValidElement, Fragment as Fragment$1, cloneElement, useContext } from 'react';
8
8
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
9
9
  import { createPortal } from 'react-dom';
@@ -203,13 +203,14 @@ function cloneRecord(value) {
203
203
  }
204
204
 
205
205
  // ../preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.ts
206
- function runtimeContentDecorationProjectionFromEditorModel(editorModel, surfaceResolutionContext) {
206
+ function runtimeContentDecorationProjectionFromEditorModel(editorModel, surfaceResolutionContext, designRules) {
207
207
  return {
208
208
  kind: "runtime-content-decoration",
209
209
  source: "page-design",
210
210
  fieldsByBlockId: buildEditorModelRuntimeFieldsByBlockId({
211
211
  editorModel,
212
- surfaceResolutionContext
212
+ surfaceResolutionContext,
213
+ designRules
213
214
  })
214
215
  };
215
216
  }
@@ -491,6 +492,7 @@ function draftSnapshotMap(snapshots) {
491
492
  // ../preview-next/src/client/preview/linkedEntryEditEvents.ts
492
493
  var LINKED_ENTRY_EDIT_EVENT = "riverbank:preview:linked-entry-edit";
493
494
  var LINKED_ENTRY_FIELD_FOCUS_EVENT = "riverbank:preview:linked-entry-field-focus";
495
+ var BLOCK_FIELD_FOCUS_EVENT = "riverbank:preview:block-field-focus";
494
496
  function dispatchLinkedEntryEditEvent(target) {
495
497
  window.dispatchEvent(new CustomEvent(LINKED_ENTRY_EDIT_EVENT, {
496
498
  detail: target
@@ -501,6 +503,11 @@ function dispatchLinkedEntryFieldFocusEvent(binding) {
501
503
  detail: binding
502
504
  }));
503
505
  }
506
+ function dispatchBlockFieldFocusEvent(target) {
507
+ window.dispatchEvent(new CustomEvent(BLOCK_FIELD_FOCUS_EVENT, {
508
+ detail: target
509
+ }));
510
+ }
504
511
  function isLinkedEntryEditEvent(event) {
505
512
  if (!(event instanceof CustomEvent)) return false;
506
513
  const detail = event.detail;
@@ -512,6 +519,11 @@ function isLinkedEntryFieldFocusEvent(event) {
512
519
  const write = detail?.write;
513
520
  return Boolean(detail) && typeof detail === "object" && detail.kind === "linked-entry-field" && Boolean(detail.target) && Boolean(write) && typeof write === "object" && typeof write.fieldPath === "string";
514
521
  }
522
+ function isBlockFieldFocusEvent(event) {
523
+ if (!(event instanceof CustomEvent)) return false;
524
+ const detail = event.detail;
525
+ return Boolean(detail) && typeof detail === "object" && detail.kind === "block-field" && typeof detail.blockId === "string" && typeof detail.fieldPath === "string";
526
+ }
515
527
  function requireClientRegistryComponent(key) {
516
528
  const component = clientComponentRegistry[key];
517
529
  if (!component) {
@@ -520,6 +532,15 @@ function requireClientRegistryComponent(key) {
520
532
  return component;
521
533
  }
522
534
  var ButtonComponent = requireClientRegistryComponent("button");
535
+ function dispatchBlockFieldFocusEventFromPath(path) {
536
+ const match = path.match(/^blocks\.([^.]+)\.(.+)$/);
537
+ if (!match?.[1] || !match[2]) return;
538
+ dispatchBlockFieldFocusEvent({
539
+ kind: "block-field",
540
+ blockId: match[1],
541
+ fieldPath: match[2]
542
+ });
543
+ }
523
544
  var TextWithEditor = ({ value, children, path, linkedEntryField, ...rest }) => {
524
545
  const raw = value ?? children;
525
546
  const content = typeof raw === "string" || typeof raw === "number" ? raw : "";
@@ -532,6 +553,7 @@ var TextWithEditor = ({ value, children, path, linkedEntryField, ...rest }) => {
532
553
  path,
533
554
  linkedEntryField,
534
555
  onLinkedEntryFieldFocus: dispatchLinkedEntryFieldFocusEvent,
556
+ onBlockFieldFocus: dispatchBlockFieldFocusEventFromPath,
535
557
  children: content
536
558
  }
537
559
  ) : /* @__PURE__ */ jsx(Text, { ...rest, children: content });
@@ -548,6 +570,7 @@ var RichTextWithEditor = ({ value, path, linkedEntryField, ...rest }) => {
548
570
  path,
549
571
  linkedEntryField,
550
572
  onLinkedEntryFieldFocus: dispatchLinkedEntryFieldFocusEvent,
573
+ onBlockFieldFocus: dispatchBlockFieldFocusEventFromPath,
551
574
  doc: value
552
575
  }
553
576
  );
@@ -1083,13 +1106,14 @@ function CustomizePopoverShell({
1083
1106
  onClose,
1084
1107
  onKeyDown,
1085
1108
  spacing = "normal",
1109
+ side = "below",
1086
1110
  children
1087
1111
  }) {
1088
1112
  return /* @__PURE__ */ jsxs(
1089
1113
  "div",
1090
1114
  {
1091
1115
  id: panelId,
1092
- className: "builder-dashboard-chrome-theme fixed inset-x-3 bottom-[calc(var(--builder-editor-chrome-offset,0px)+1rem)] z-[70] rounded-lg border bg-background p-3 text-foreground shadow-xl sm:absolute sm:inset-x-auto sm:bottom-auto sm:right-0 sm:top-9 sm:w-72",
1116
+ className: `builder-dashboard-chrome-theme fixed inset-x-3 bottom-[calc(var(--builder-editor-chrome-offset,0px)+1rem)] z-[70] max-h-[calc(100vh-var(--builder-editor-chrome-offset,0px)-2rem)] overflow-y-auto rounded-lg border bg-background p-3 text-foreground shadow-xl sm:absolute sm:inset-x-auto sm:right-0 sm:w-72 ${desktopPopoverSideClassName(side)}`,
1093
1117
  role: "dialog",
1094
1118
  "aria-modal": "true",
1095
1119
  "aria-label": dialogLabel,
@@ -1123,6 +1147,9 @@ function CustomizePopoverShell({
1123
1147
  }
1124
1148
  );
1125
1149
  }
1150
+ function desktopPopoverSideClassName(side) {
1151
+ return side === "above" ? "sm:bottom-9 sm:top-auto" : "sm:bottom-auto sm:top-9";
1152
+ }
1126
1153
  function CustomizeCycleRow({
1127
1154
  label,
1128
1155
  valueLabel,
@@ -2567,7 +2594,8 @@ function pageDesignRuntimeProjectionFromSource(source) {
2567
2594
  if (source.kind === "preserve-server-runtime") return null;
2568
2595
  return runtimeContentDecorationProjectionFromEditorModel(
2569
2596
  source.editorModel,
2570
- source.surfaceResolutionContext
2597
+ source.surfaceResolutionContext,
2598
+ source.designRules
2571
2599
  );
2572
2600
  }
2573
2601
  function resolveRuntimePreviewSource(input) {
@@ -2575,7 +2603,8 @@ function resolveRuntimePreviewSource(input) {
2575
2603
  return {
2576
2604
  kind: "apply-editor-model",
2577
2605
  editorModel: input.pageDesignState.editorModel,
2578
- surfaceResolutionContext: input.surfaceResolutionContext
2606
+ surfaceResolutionContext: input.surfaceResolutionContext,
2607
+ designRules: input.designRules
2579
2608
  };
2580
2609
  }
2581
2610
  return { kind: "preserve-server-runtime" };
@@ -2636,9 +2665,10 @@ function EditablePageRenderer(props) {
2636
2665
  const runtimePreviewSource = useMemo(
2637
2666
  () => resolveRuntimePreviewSource({
2638
2667
  pageDesignState,
2639
- surfaceResolutionContext
2668
+ surfaceResolutionContext,
2669
+ designRules: designRuntimeRulesForTheme(pageRendererProps.theme)
2640
2670
  }),
2641
- [pageDesignState, surfaceResolutionContext]
2671
+ [pageDesignState, pageRendererProps.theme, surfaceResolutionContext]
2642
2672
  );
2643
2673
  const runtimeProjection = useMemo(
2644
2674
  () => pageDesignRuntimeProjectionFromSource(runtimePreviewSource),
@@ -4035,6 +4065,7 @@ function PreviewAuthBanner({
4035
4065
  // ../blocks/src/client/site-chrome.tsx
4036
4066
  function renderSiteChromeBlock(model, surface, theme, options = {}) {
4037
4067
  const spec = model[surface];
4068
+ if (!spec) return null;
4038
4069
  const themeConfig = options.themeConfigOverrideMode === "ignore" ? theme : applyThemeConfigOverride(theme, spec.themeConfigOverride);
4039
4070
  const themeRuntime = buildThemeRuntime(themeConfig);
4040
4071
  const manifest = surface === "header" ? siteHeaderManifest : siteFooterManifest;
@@ -4065,6 +4096,12 @@ function SiteChromeCustomizeButton({
4065
4096
  }) {
4066
4097
  const customize = useSiteChromeCustomizeOptional();
4067
4098
  const popover = useCustomizePopoverController();
4099
+ const popoverSide = useSiteChromeCustomizePopoverSide({
4100
+ open: popover.open,
4101
+ surface,
4102
+ buttonRef: popover.buttonRef,
4103
+ dialogRef: popover.dialogRef
4104
+ });
4068
4105
  const surfaceState = customize?.getSurfaceState(surface) ?? {
4069
4106
  kind: "unavailable"
4070
4107
  };
@@ -4075,7 +4112,7 @@ function SiteChromeCustomizeButton({
4075
4112
  return surfaceState.options.filter((option) => option.available).length;
4076
4113
  }, [surfaceState]);
4077
4114
  const cycleableLayoutOptionCount = useMemo(() => {
4078
- if (surfaceState.kind !== "available" || surfaceState.surface !== "header") {
4115
+ if (surfaceState.kind !== "available") {
4079
4116
  return 0;
4080
4117
  }
4081
4118
  return surfaceState.layoutOptions.filter((option) => option.available).length;
@@ -4086,7 +4123,7 @@ function SiteChromeCustomizeButton({
4086
4123
  }
4087
4124
  return {
4088
4125
  cycleRows: [
4089
- ...surfaceState.surface === "header" ? [
4126
+ ...surfaceState.surface === "header" || surfaceState.surface === "footer" ? [
4090
4127
  {
4091
4128
  label: "Layout",
4092
4129
  valueLabel: surfaceState.currentLayoutLabel,
@@ -4167,6 +4204,7 @@ function SiteChromeCustomizeButton({
4167
4204
  closeButtonRef: popover.registerInitialFocus,
4168
4205
  onClose: popover.close,
4169
4206
  onKeyDown: popover.handleDialogKeyDown,
4207
+ side: popoverSide,
4170
4208
  children: [
4171
4209
  controlPlan.cycleRows.map((row) => /* @__PURE__ */ jsx(CustomizeCycleRow, { ...row }, row.label)),
4172
4210
  background?.available ? /* @__PURE__ */ jsx(
@@ -4234,6 +4272,87 @@ function SiteChromeCustomizeButton({
4234
4272
  }
4235
4273
  );
4236
4274
  }
4275
+ var POPOVER_VIEWPORT_GUTTER_PX = 16;
4276
+ var POPOVER_UNMEASURED_MIN_SPACE_PX = 180;
4277
+ function useSiteChromeCustomizePopoverSide({
4278
+ open,
4279
+ surface,
4280
+ buttonRef,
4281
+ dialogRef
4282
+ }) {
4283
+ const preferredSide = surface === "footer" ? "above" : "below";
4284
+ const [side, setSide] = useState(preferredSide);
4285
+ useEffect(() => {
4286
+ if (!open) {
4287
+ setSide(preferredSide);
4288
+ return;
4289
+ }
4290
+ if (typeof window === "undefined") return;
4291
+ let frame = null;
4292
+ const update = () => {
4293
+ const button = buttonRef.current;
4294
+ if (!button) {
4295
+ setSide(preferredSide);
4296
+ return;
4297
+ }
4298
+ const buttonRect = button.getBoundingClientRect();
4299
+ const panelHeight = dialogRef.current?.offsetHeight ?? 0;
4300
+ setSide(
4301
+ chooseSiteChromeCustomizePopoverSide({
4302
+ preferredSide,
4303
+ panelHeight,
4304
+ availableAbove: buttonRect.top - POPOVER_VIEWPORT_GUTTER_PX,
4305
+ availableBelow: window.innerHeight - buttonRect.bottom - POPOVER_VIEWPORT_GUTTER_PX
4306
+ })
4307
+ );
4308
+ };
4309
+ const scheduleUpdate = () => {
4310
+ if (frame !== null) return;
4311
+ frame = window.requestAnimationFrame(() => {
4312
+ frame = null;
4313
+ update();
4314
+ });
4315
+ };
4316
+ scheduleUpdate();
4317
+ window.addEventListener("resize", scheduleUpdate);
4318
+ window.addEventListener("scroll", scheduleUpdate, true);
4319
+ return () => {
4320
+ if (frame !== null) {
4321
+ window.cancelAnimationFrame(frame);
4322
+ }
4323
+ window.removeEventListener("resize", scheduleUpdate);
4324
+ window.removeEventListener("scroll", scheduleUpdate, true);
4325
+ };
4326
+ }, [buttonRef, dialogRef, open, preferredSide]);
4327
+ return side;
4328
+ }
4329
+ function chooseSiteChromeCustomizePopoverSide(input) {
4330
+ const availableAbove = Math.max(0, input.availableAbove);
4331
+ const availableBelow = Math.max(0, input.availableBelow);
4332
+ const measuredPanelHeight = Number.isFinite(input.panelHeight) && input.panelHeight > 0 ? input.panelHeight : null;
4333
+ if (measuredPanelHeight === null) {
4334
+ if (input.preferredSide === "above" && availableAbove < POPOVER_UNMEASURED_MIN_SPACE_PX && availableBelow > availableAbove) {
4335
+ return "below";
4336
+ }
4337
+ if (input.preferredSide === "below" && availableBelow < POPOVER_UNMEASURED_MIN_SPACE_PX && availableAbove > availableBelow) {
4338
+ return "above";
4339
+ }
4340
+ return input.preferredSide;
4341
+ }
4342
+ if (input.preferredSide === "above" && measuredPanelHeight <= availableAbove) {
4343
+ return "above";
4344
+ }
4345
+ if (input.preferredSide === "below" && measuredPanelHeight <= availableBelow) {
4346
+ return "below";
4347
+ }
4348
+ if (measuredPanelHeight <= availableAbove && availableAbove >= availableBelow) {
4349
+ return "above";
4350
+ }
4351
+ if (measuredPanelHeight <= availableBelow) {
4352
+ return "below";
4353
+ }
4354
+ return availableAbove > availableBelow ? "above" : "below";
4355
+ }
4237
4356
  function SiteChromeBackgroundPalette({
4238
4357
  surface,
4239
4358
  background,
@@ -4451,14 +4570,15 @@ function PreviewThemedSiteDocument({
4451
4570
  siteChromeRenderModel
4452
4571
  }) {
4453
4572
  const { effectiveTheme } = usePreviewThemeOverlay();
4573
+ const headerNode = siteChromeRenderModel?.header ? /* @__PURE__ */ jsx(SiteChromeEditableSurface, { surface: "header", children: renderSiteChromeBlock(siteChromeRenderModel, "header", effectiveTheme, {
4574
+ themeConfigOverrideMode: "ignore"
4575
+ }) }) : staticHeaderNode;
4454
4576
  const siteDocumentPlan = planSiteDocument({
4455
4577
  headerPositioning: effectiveTheme.header?.positioning ?? "static",
4456
4578
  headerVariant: effectiveTheme.header?.variant ?? null,
4457
- hasVisibleBanner: Boolean(bannerNode)
4579
+ hasVisibleBanner: Boolean(bannerNode),
4580
+ hasVisibleHeader: Boolean(headerNode)
4458
4581
  });
4459
- const headerNode = siteChromeRenderModel ? /* @__PURE__ */ jsx(SiteChromeEditableSurface, { surface: "header", children: renderSiteChromeBlock(siteChromeRenderModel, "header", effectiveTheme, {
4460
- themeConfigOverrideMode: "ignore"
4461
- }) }) : staticHeaderNode;
4462
4582
  const canRenderFooterReactively = Boolean(siteChromeRenderModel) && siteChromeRenderModel?.footer.canRenderReactively !== false;
4463
4583
  const footerNode = canRenderFooterReactively && siteChromeRenderModel ? /* @__PURE__ */ jsx(SiteChromeEditableSurface, { surface: "footer", preserveSingleComponentRoot: true, children: renderSiteChromeBlock(siteChromeRenderModel, "footer", effectiveTheme, {
4464
4584
  themeConfigOverrideMode: "ignore"
@@ -4573,22 +4693,40 @@ function LinkedEntryEditEventBridge() {
4573
4693
  fieldPath: event.detail.write.fieldPath
4574
4694
  });
4575
4695
  };
4696
+ const handleBlockFieldFocus = (event) => {
4697
+ if (!isBlockFieldFocusEvent(event)) return;
4698
+ const state = uiStore.getState();
4699
+ const blockId = unsafeAsEditorBlockId(event.detail.blockId);
4700
+ state.setPreviewSidebarTab("editor");
4701
+ state.setDrawerOpen(true);
4702
+ state.setActivePreviewField({
4703
+ kind: "block",
4704
+ blockId,
4705
+ fieldPath: event.detail.fieldPath
4706
+ });
4707
+ state.requestFocus({
4708
+ blockId,
4709
+ fieldPath: event.detail.fieldPath
4710
+ });
4711
+ };
4576
4712
  window.addEventListener(LINKED_ENTRY_EDIT_EVENT, handleLinkedEntryEdit);
4577
4713
  window.addEventListener(LINKED_ENTRY_FIELD_FOCUS_EVENT, handleLinkedEntryFieldFocus);
4714
+ window.addEventListener(BLOCK_FIELD_FOCUS_EVENT, handleBlockFieldFocus);
4578
4715
  return () => {
4579
4716
  window.removeEventListener(LINKED_ENTRY_EDIT_EVENT, handleLinkedEntryEdit);
4580
4717
  window.removeEventListener(LINKED_ENTRY_FIELD_FOCUS_EVENT, handleLinkedEntryFieldFocus);
4718
+ window.removeEventListener(BLOCK_FIELD_FOCUS_EVENT, handleBlockFieldFocus);
4581
4719
  };
4582
4720
  }, [uiStore]);
4583
4721
  return null;
4584
4722
  }
4585
4723
  var previewContainerResponsiveEnabled = process.env.NEXT_PUBLIC_ENABLE_PREVIEW_CONTAINER_RESPONSIVE !== "false";
4586
4724
  var PreviewEditorSidebar = React10.lazy(async () => {
4587
- const mod = await import('./PreviewEditorSidebar-LHGK6RIO.mjs');
4725
+ const mod = await import('./PreviewEditorSidebar-X7RLMEI6.mjs');
4588
4726
  return { default: mod.PreviewEditorSidebar };
4589
4727
  });
4590
4728
  var PreviewEditorUI = React10.lazy(async () => {
4591
- const mod = await import('./PreviewEditorUI-AXZG2SDC.mjs');
4729
+ const mod = await import('./PreviewEditorUI-CT67N4O3.mjs');
4592
4730
  return { default: mod.PreviewEditorUI };
4593
4731
  });
4594
4732
  var previewPaneContainmentStyle = {
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { assertNever2, usePreviewDesignHistoryOrder, useOptionalEditorUiStoreInstance, getPageDesignEditorState, PAGE_DESIGN_EDITOR_STATE_FETCH_ERROR_MESSAGE, unwrapResponse, useDebouncedLatestSave, AMBIENT_BACKGROUND_ROLES, applyPageDesignEditorAction, resolvePreviewSidebarTab, confirmAutosaveBatch, beginAutosaveBatch, enqueueTransaction, applyBackgroundOverrideContentPatch, systemCustomizeFacetDefinitionForBlock, systemCustomizeFacetRollbackContentPatch, systemCustomizeFacetApplyContentPatch, unsafeAsEditorBlockId, createHistoryState, rejectAutosaveBatch, redoHistory, undoHistory, pushHistoryEntry, idleEditorTransactionQueueState, canRedoHistory, deriveTransactionCapabilities, canUndoHistory, backgroundOverrideEquals, attachRenderableMediaAssetFields, planPageDesignLayoutLookCompatibility, unsafeAsEditorBlockValues } from './chunk-XQR6THQJ.mjs';
3
- import { ApiRequestError, resolveSurfaceDocumentAttributes, SURFACE_DOCUMENT_DATA_ATTRIBUTE, SURFACE_IDS } from './chunk-FIREV57T.mjs';
2
+ import { assertNever2, usePreviewDesignHistoryOrder, useOptionalEditorUiStoreInstance, getPageDesignEditorState, PAGE_DESIGN_EDITOR_STATE_FETCH_ERROR_MESSAGE, unwrapResponse, useDebouncedLatestSave, AMBIENT_BACKGROUND_ROLES, applyPageDesignEditorAction, resolvePreviewSidebarTab, confirmAutosaveBatch, beginAutosaveBatch, enqueueTransaction, applyBackgroundOverrideContentPatch, systemCustomizeFacetDefinitionForBlock, systemCustomizeFacetRollbackContentPatch, systemCustomizeFacetApplyContentPatch, unsafeAsEditorBlockId, createHistoryState, rejectAutosaveBatch, redoHistory, undoHistory, pushHistoryEntry, idleEditorTransactionQueueState, canRedoHistory, deriveTransactionCapabilities, canUndoHistory, backgroundOverrideEquals, attachRenderableMediaAssetFields, planPageDesignLayoutLookCompatibility, unsafeAsEditorBlockValues } from './chunk-O62NDCTI.mjs';
3
+ import { ApiRequestError, resolveSurfaceDocumentAttributes, SURFACE_DOCUMENT_DATA_ATTRIBUTE, SURFACE_IDS } from './chunk-LBBPD2IW.mjs';
4
4
  import { createContext, useState, useRef, useEffect, useMemo, useLayoutEffect, useContext } from 'react';
5
5
  import { jsx } from 'react/jsx-runtime';
6
6