@riverbankcms/sdk 0.107.0 → 0.109.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 (256) hide show
  1. package/README.md +21 -1
  2. package/dist/{PreviewEditorSidebar-DpAbAl08.mjs → PreviewEditorSidebar-DWqwfy3_.mjs} +48 -28
  3. package/dist/{PreviewEditorUI-O7cn6Xxv.mjs → PreviewEditorUI-B7OL4sfR.mjs} +10 -9
  4. package/dist/{PreviewQueryProvider-D0tnKl0t.mjs → PreviewQueryProvider-D0y2l8JN.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-CVB7urtl.mjs → SdkPreviewModeRuntime-D8Gt9Gbe.mjs} +633 -220
  6. package/dist/{SiteChromeCustomizeContext-C_sizso-.mjs → SiteChromeCustomizeContext-DUpalEdL.mjs} +5764 -1556
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +15383 -11388
  8. package/dist/_dts/api/src/blocks.d.ts +41 -7
  9. package/dist/_dts/api/src/bookingAdjustments.d.ts +5 -0
  10. package/dist/_dts/api/src/bookingOperations.d.ts +4 -0
  11. package/dist/_dts/api/src/bookingRecords.d.ts +177 -127
  12. package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +6 -6
  13. package/dist/_dts/api/src/cache-tags.d.ts +3 -0
  14. package/dist/_dts/api/src/common/envelope.d.ts +7 -0
  15. package/dist/_dts/api/src/contentRuntime.d.ts +19 -1
  16. package/dist/_dts/api/src/courses.d.ts +1 -0
  17. package/dist/_dts/api/src/customerMembershipOutcomes.d.ts +5 -5
  18. package/dist/_dts/api/src/endpoints.d.ts +134 -0
  19. package/dist/_dts/api/src/footer-settings.d.ts +1 -0
  20. package/dist/_dts/api/src/footerSettings.d.ts +8 -0
  21. package/dist/_dts/api/src/index.d.ts +7 -4
  22. package/dist/_dts/api/src/navigation/contracts.d.ts +3 -3
  23. package/dist/_dts/api/src/participantMessaging.d.ts +18 -12
  24. package/dist/_dts/api/src/previewContentContract.d.ts +4 -0
  25. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +1 -0
  26. package/dist/_dts/api/src/sdkContracts.d.ts +309 -1
  27. package/dist/_dts/api/src/siteBanner.d.ts +2 -2
  28. package/dist/_dts/api/src/siteInfrastructure.d.ts +13 -0
  29. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +144 -60
  30. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +35 -1
  31. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +74 -28
  32. package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/BackgroundGradientField.d.ts +9 -0
  33. package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/BackgroundGradientWidget.d.ts +3 -4
  34. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -4
  35. package/dist/_dts/blocks/src/index.d.ts +1 -1
  36. package/dist/_dts/blocks/src/primitives/layout/Section.d.ts +0 -1
  37. package/dist/_dts/blocks/src/rendering/server.d.ts +1 -0
  38. package/dist/_dts/blocks/src/system/blocks/audio-player.d.ts +3 -0
  39. package/dist/_dts/blocks/src/system/blocks/body-text.d.ts +3 -0
  40. package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +3 -0
  41. package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +1 -22
  42. package/dist/_dts/blocks/src/system/blocks/cta-full.d.ts +3 -0
  43. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +1 -22
  44. package/dist/_dts/blocks/src/system/blocks/file-download.d.ts +3 -0
  45. package/dist/_dts/blocks/src/system/blocks/form.d.ts +3 -0
  46. package/dist/_dts/blocks/src/system/blocks/image-gallery.d.ts +3 -0
  47. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +3 -0
  48. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +3 -0
  49. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +50 -0
  50. package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +9 -48
  51. package/dist/_dts/blocks/src/system/blocks/site-header.d.ts +3 -0
  52. package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +3 -0
  53. package/dist/_dts/blocks/src/system/blocks/testimonials.d.ts +3 -0
  54. package/dist/_dts/blocks/src/system/blocks/video-grid.d.ts +3 -0
  55. package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
  56. package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +16 -6
  57. package/dist/_dts/blocks/src/system/defineBlock.d.ts +9 -1
  58. package/dist/_dts/blocks/src/system/fields/ctas.d.ts +8 -0
  59. package/dist/_dts/blocks/src/system/icons/registry.d.ts +2 -1
  60. package/dist/_dts/blocks/src/system/icons/social.d.ts +5 -0
  61. package/dist/_dts/blocks/src/system/icons/svg.d.ts +1 -0
  62. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +33 -2
  63. package/dist/_dts/blocks/src/system/node/fragments/backgroundLayer.d.ts +13 -0
  64. package/dist/_dts/blocks/src/system/node/fragments/footerNav.d.ts +2 -0
  65. package/dist/_dts/blocks/src/system/node/fragments/styledContainer.d.ts +4 -4
  66. package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +3 -12
  67. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
  68. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +6 -6
  69. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +3 -3
  70. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +2 -2
  71. package/dist/_dts/blocks/src/system/types/link.d.ts +3 -3
  72. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +14 -0
  73. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +27 -8
  74. package/dist/_dts/content-editor/src/footerComposer.d.ts +56 -0
  75. package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +1 -1
  76. package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +5 -5
  77. package/dist/_dts/content-editor/src/index.d.ts +2 -0
  78. package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +3 -1
  79. package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +20 -36
  80. package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +5 -1
  81. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +11 -0
  82. package/dist/_dts/content-model/src/content-types/entryValidation.d.ts +31 -0
  83. package/dist/_dts/content-model/src/content-types/scaffold.d.ts +58 -0
  84. package/dist/_dts/content-model/src/content-types/schema.d.ts +1 -1
  85. package/dist/_dts/content-model/src/content-types/sentinels.d.ts +36 -0
  86. package/dist/_dts/content-model/src/definitions/shared.d.ts +3 -0
  87. package/dist/_dts/content-model/src/index.d.ts +3 -0
  88. package/dist/_dts/core/src/booking-date-time.d.ts +8 -0
  89. package/dist/_dts/core/src/branded.d.ts +3 -0
  90. package/dist/_dts/core/src/editor-state.d.ts +4 -0
  91. package/dist/_dts/core/src/footer-composition.d.ts +143 -0
  92. package/dist/_dts/core/src/index.d.ts +2 -0
  93. package/dist/_dts/core/src/public-profile.d.ts +73 -0
  94. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +221 -205
  95. package/dist/_dts/db/src/schemas/forms.d.ts +10 -10
  96. package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +5 -0
  97. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +1 -0
  98. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +2 -1
  99. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +2 -1
  100. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +2 -1
  101. package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +10 -0
  102. package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +1 -0
  103. package/dist/_dts/media-core/src/fileMimeDetection.d.ts +16 -0
  104. package/dist/_dts/media-core/src/fileStorage.d.ts +8 -0
  105. package/dist/_dts/media-core/src/storagePathDomain.d.ts +2 -0
  106. package/dist/_dts/media-core/src/uploadVerificationContract.d.ts +3 -0
  107. package/dist/_dts/path-utils/src/index.d.ts +5 -0
  108. package/dist/_dts/preview-next/src/client/blocks/BlockToolbar.d.ts +2 -0
  109. package/dist/_dts/preview-next/src/client/preview/PreviewChromeLayer.d.ts +5 -0
  110. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -1
  111. package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +1 -0
  112. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -1
  113. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -1
  114. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +1 -0
  115. package/dist/_dts/preview-next/src/client/preview/previewErrorMessages.d.ts +4 -0
  116. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +1 -1
  117. package/dist/_dts/sdk/src/cli/commands/audit.d.ts +1 -1
  118. package/dist/_dts/sdk/src/cli/commands/compare.d.ts +1 -1
  119. package/dist/_dts/sdk/src/cli/commands/deploy.d.ts +1 -1
  120. package/dist/_dts/sdk/src/cli/commands/drafts.d.ts +18 -0
  121. package/dist/_dts/sdk/src/cli/commands/entry.d.ts +15 -0
  122. package/dist/_dts/sdk/src/cli/commands/init-docs.d.ts +2 -2
  123. package/dist/_dts/sdk/src/cli/commands/publish-all.d.ts +1 -1
  124. package/dist/_dts/sdk/src/cli/commands/pull.d.ts +1 -0
  125. package/dist/_dts/sdk/src/cli/commands/push/execute/diff.d.ts +1 -1
  126. package/dist/_dts/sdk/src/cli/commands/push/options.d.ts +3 -0
  127. package/dist/_dts/sdk/src/cli/commands/push-execute.d.ts +12 -1
  128. package/dist/_dts/sdk/src/cli/commands/setup.d.ts +1 -0
  129. package/dist/_dts/sdk/src/cli/commands/verify.d.ts +1 -0
  130. package/dist/_dts/sdk/src/cli/content/reader.d.ts +1 -0
  131. package/dist/_dts/sdk/src/cli/helpers.d.ts +22 -1
  132. package/dist/_dts/sdk/src/cli/index.d.ts +4 -0
  133. package/dist/_dts/sdk/src/cli/output.d.ts +88 -0
  134. package/dist/_dts/sdk/src/cli/program.d.ts +29 -0
  135. package/dist/_dts/sdk/src/cli/push-config.d.ts +1 -1
  136. package/dist/_dts/sdk/src/client/management/blocks.d.ts +14 -1
  137. package/dist/_dts/sdk/src/client/management/catalog.d.ts +10 -0
  138. package/dist/_dts/sdk/src/client/management/http.d.ts +7 -1
  139. package/dist/_dts/sdk/src/client/management/index.d.ts +2 -1
  140. package/dist/_dts/sdk/src/client/management/types.d.ts +58 -20
  141. package/dist/_dts/sdk/src/config/content-types.d.ts +2 -0
  142. package/dist/_dts/sdk/src/config/content-validation.d.ts +4 -0
  143. package/dist/_dts/sdk/src/date-time/index.d.ts +68 -0
  144. package/dist/_dts/sdk/src/navigation/index.d.ts +2 -0
  145. package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -2
  146. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +2 -1
  147. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +1 -1
  148. package/dist/_dts/sdk/src/version.d.ts +1 -1
  149. package/dist/_dts/site-commands/src/commands.d.ts +900 -827
  150. package/dist/_dts/theme-core/src/accordions/types.d.ts +2 -2
  151. package/dist/_dts/theme-core/src/buttons/core.d.ts +15 -46
  152. package/dist/_dts/theme-core/src/buttons/effectClassification.d.ts +147 -0
  153. package/dist/_dts/theme-core/src/buttons/effects/types.d.ts +2 -3
  154. package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +1 -1
  155. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
  156. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
  157. package/dist/_dts/theme-core/src/buttons/personalities/two-tone-pill.d.ts +17 -0
  158. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +45 -33
  159. package/dist/_dts/theme-core/src/buttons/presets.d.ts +4 -25
  160. package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +100 -0
  161. package/dist/_dts/theme-core/src/buttons/resolvedButtonCss.d.ts +16 -0
  162. package/dist/_dts/theme-core/src/buttons/types.d.ts +104 -86
  163. package/dist/_dts/theme-core/src/cards/types.d.ts +16 -16
  164. package/dist/_dts/theme-core/src/footer/mode.d.ts +15 -0
  165. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  166. package/dist/_dts/theme-core/src/gradients/presets.d.ts +200 -8
  167. package/dist/_dts/theme-core/src/gradients/utils.d.ts +6 -2
  168. package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
  169. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +117 -150
  170. package/dist/_dts/theme-core/src/mock-themes/modern-minimal.d.ts +1 -1
  171. package/dist/_dts/theme-core/src/navigation/types.d.ts +3 -3
  172. package/dist/_dts/theme-core/src/palette/curated/index.d.ts +2 -2
  173. package/dist/_dts/theme-core/src/palette/curated/types.d.ts +5 -8
  174. package/dist/_dts/theme-core/src/palette/index.d.ts +0 -1
  175. package/dist/_dts/theme-core/src/schema.d.ts +1264 -138
  176. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  177. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +10 -10
  178. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +12 -1
  179. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +3 -2
  180. package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +13 -6
  181. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +29 -8
  182. package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +15 -0
  183. package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +2 -2
  184. package/dist/cli/index.mjs +68552 -66955
  185. package/dist/cli/init-docs/content/cli-reference.md +50 -7
  186. package/dist/cli/init-docs/content/content-management.md +7 -4
  187. package/dist/cli/init-docs/content/workflow-publish.md +5 -1
  188. package/dist/client/{DiscountCodeDisclosure-BwGkvmVH.mjs → DiscountCodeDisclosure-DU1ygxU2.mjs} +1 -1
  189. package/dist/client/{EventCombined.client-JnWE6Hzc.mjs → EventCombined.client-DB5zagCo.mjs} +3 -3
  190. package/dist/client/{EventListing.client-DQewc_kg.mjs → EventListing.client-CTX9JHBL.mjs} +2 -2
  191. package/dist/client/{LeafletStaticMap-DPAU3SFt.mjs → LeafletStaticMap-BYImhgiB.mjs} +1 -1
  192. package/dist/client/{MagicLinkForm-D4kpWCbW.mjs → MagicLinkForm-CRkw_M3l.mjs} +2 -2
  193. package/dist/client/{StepIndicator-CBlkb4rA.mjs → StepIndicator-BnmVBJJh.mjs} +2 -2
  194. package/dist/client/{accordion-DAIBVpTS.mjs → accordion-CeGreumd.mjs} +1 -1
  195. package/dist/client/{bookingForm-DZ-4l5_1.mjs → bookingForm-CSzFNrpN.mjs} +6 -6
  196. package/dist/client/bookings.mjs +637 -328
  197. package/dist/client/{buttons-DJgynGHQ.mjs → buttons-DoFV7KDL.mjs} +618 -306
  198. package/dist/client/{carousel-D-SLfX8r.mjs → carousel-B2jDtogf.mjs} +1 -1
  199. package/dist/client/{cart-CEgbgJhX.mjs → cart-D-jZ-vaY.mjs} +3 -3
  200. package/dist/client/{checkout-CXWrCRAA.mjs → checkout-Dza-LA7N.mjs} +3 -3
  201. package/dist/client/client.mjs +2497 -1216
  202. package/dist/client/{colorStyles-jZS6KfkP.mjs → colorStyles-CrgzoXsm.mjs} +1 -30
  203. package/dist/client/{courseRegistration-DVmLrRVz.mjs → courseRegistration-TYkNychb.mjs} +7 -7
  204. package/dist/client/{eventCalendar-DCuyPY_c.mjs → eventCalendar-BI_90SsT.mjs} +5 -5
  205. package/dist/client/{eventCombined-kP2CA2D4.mjs → eventCombined-mNrpryE9.mjs} +2 -2
  206. package/dist/client/{eventDetails-DU0LeF5e.mjs → eventDetails-D4GVlCIY.mjs} +3 -3
  207. package/dist/client/{eventListing-CcHF87BI.mjs → eventListing-YhKN018y.mjs} +2 -2
  208. package/dist/client/{eventRegistration-DJnR0yFH.mjs → eventRegistration-CdHGtilr.mjs} +7 -7
  209. package/dist/client/foregroundContract-xICPq59x.mjs +31 -0
  210. package/dist/client/{form-CH1lCusH.mjs → form-AcAL45rA.mjs} +2 -2
  211. package/dist/client/{headerSection-CBPFZoku.mjs → headerSection-uEC52ueD.mjs} +3 -3
  212. package/dist/client/hooks.mjs +1249 -841
  213. package/dist/client/{locationMap-Cx1hBg5n.mjs → locationMap-_wJDSUYe.mjs} +3 -3
  214. package/dist/client/{media-DHtSxS5V.mjs → media-BK0O3b-U.mjs} +3 -2
  215. package/dist/client/{newsletterForm-1ZL_ti9u.mjs → newsletterForm-DrArsb2B.mjs} +2 -2
  216. package/dist/client/{pricing-BIbzmV0G.mjs → pricing-BSYVghwo.mjs} +1 -1
  217. package/dist/client/{productDetail-BTh5gHBV.mjs → productDetail-Dyk90sMs.mjs} +3 -3
  218. package/dist/client/{productList-Cc7OMrqN.mjs → productList-BCKThwAI.mjs} +3 -3
  219. package/dist/client/{propsDecoder-oR-M-ISN.mjs → propsDecoder-CkXxkdSR.mjs} +96 -33
  220. package/dist/client/rendering/client.mjs +1278 -523
  221. package/dist/client/rendering/islands.mjs +19 -19
  222. package/dist/client/rendering.mjs +2308 -1028
  223. package/dist/client/{shop-CQ_YbCnn.mjs → shop-DeltVH10.mjs} +6 -6
  224. package/dist/client/{shop-commerce-BM-AoD3M.mjs → shop-commerce-BD9Jsm2Z.mjs} +6 -6
  225. package/dist/client/{shop-commerce-store-DFMQhU5p.mjs → shop-commerce-store-CmXD6FDS.mjs} +1 -1
  226. package/dist/client/{shopShared-D0SKO2Cu.mjs → shopShared-B8v-lH_F.mjs} +2 -2
  227. package/dist/client/{useDiscountCodeUi-CrG4_ARt.mjs → useDiscountCodeUi-DbWJN8ld.mjs} +1 -1
  228. package/dist/client/{useEventFilters-CxK8Fekl.mjs → useEventFilters-EJIMUnqT.mjs} +46 -69
  229. package/dist/client/{usePolling-jcVryNgZ.mjs → usePolling-Cmh14fc7.mjs} +2 -2
  230. package/dist/preview-next/before-render.mjs +213 -0
  231. package/dist/preview-next/client/runtime.mjs +4 -4
  232. package/dist/preview-next/middleware.mjs +213 -0
  233. package/dist/{previewAuthStore-BPcJPzdz.mjs → previewAuthStore-CTO7CRPk.mjs} +213 -0
  234. package/dist/{sdk-runtime-C39Rsk-x.mjs → sdk-runtime-Dou0GAav.mjs} +2 -2
  235. package/dist/{separator-BoMSQnsP.mjs → separator-CI5wZNXT.mjs} +1 -1
  236. package/dist/server/components.mjs +2370 -1132
  237. package/dist/server/config-validation.mjs +1256 -842
  238. package/dist/server/config.mjs +1256 -843
  239. package/dist/server/data.mjs +1249 -841
  240. package/dist/server/date-time.mjs +386 -0
  241. package/dist/server/index.mjs +214 -1
  242. package/dist/server/navigation.mjs +9 -3
  243. package/dist/server/next.mjs +3421 -1949
  244. package/dist/server/page-converter.mjs +1236 -659
  245. package/dist/server/prebuild.mjs +1 -1
  246. package/dist/server/rendering/server.mjs +2074 -1060
  247. package/dist/server/rendering.mjs +2370 -1132
  248. package/dist/server/routing.mjs +1543 -1062
  249. package/dist/server/server.mjs +1464 -843
  250. package/dist/server/theme-bridge.mjs +1581 -474
  251. package/dist/server/theme.mjs +614 -305
  252. package/dist/styles/index.css +12 -1
  253. package/package.json +7 -1
  254. package/dist/_dts/theme-core/src/buttons/presets/types.d.ts +0 -88
  255. package/dist/_dts/theme-core/src/buttons/utils/contrast.d.ts +0 -38
  256. package/dist/_dts/theme-core/src/palette/themePaletteCompatibility.d.ts +0 -57
@@ -31,6 +31,12 @@ function setPreviewAuthCookies(res, { accessToken, refreshToken }, options) {
31
31
  }
32
32
  //#endregion
33
33
  //#region ../api/src/apiEndpointTypes.ts
34
+ function allowedDemoMutationPolicy() {
35
+ return {
36
+ classification: "allowed",
37
+ publicMessage: ""
38
+ };
39
+ }
34
40
  function blockedDemoMutationPolicy(classification, publicMessage) {
35
41
  if (publicMessage.trim() === "") throw new Error(`Demo mutation policy ${classification} requires publicMessage.`);
36
42
  return {
@@ -58,6 +64,7 @@ const TAG_TEMPLATES = {
58
64
  siteRouteOutcomes: "riverbank:site:{siteId}:route-outcomes",
59
65
  routeById: "riverbank:route:{routeId}",
60
66
  pageById: "riverbank:page:{pageId}",
67
+ pageSurfaceById: "riverbank:page-surface:{pageSurfaceId}",
61
68
  workflowRunById: "riverbank:workflow-run:{runId}",
62
69
  siteForms: "riverbank:site:{siteId}:forms",
63
70
  formById: "riverbank:form:{formId}",
@@ -83,6 +90,7 @@ const TAG_TEMPLATES = {
83
90
  const DEMO_MUTATION_BLOCKED_HIDDEN = blockedDemoMutationPolicy("blocked-hidden", "This action is not available in demo sites.");
84
91
  const DEMO_MUTATION_BLOCKED_DISABLED = blockedDemoMutationPolicy("blocked-disabled", "This setting is disabled in demo sites.");
85
92
  const DEMO_MUTATION_INTERNAL_ONLY = blockedDemoMutationPolicy("internal-only", "This internal operation is not available in demo sites.");
93
+ const DEMO_MUTATION_ALLOWED = allowedDemoMutationPolicy();
86
94
  const API_ENDPOINTS = {
87
95
  aiContentUpdateChat: {
88
96
  path: "/ai/content-update-chat",
@@ -2221,6 +2229,49 @@ const API_ENDPOINTS = {
2221
2229
  auth: "user",
2222
2230
  responseKind: "json"
2223
2231
  },
2232
+ updatePageSurfaceDraftContent: {
2233
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content",
2234
+ method: "PUT",
2235
+ errors: [
2236
+ "validation:invalid_input",
2237
+ "resource:not_found",
2238
+ "resource:conflict",
2239
+ "server:internal_error"
2240
+ ],
2241
+ tags: [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById],
2242
+ auth: "user",
2243
+ responseKind: "json"
2244
+ },
2245
+ discardPageSurfaceDraftContent: {
2246
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content/draft",
2247
+ method: "DELETE",
2248
+ errors: [
2249
+ "validation:invalid_input",
2250
+ "resource:not_found",
2251
+ "resource:conflict",
2252
+ "server:internal_error"
2253
+ ],
2254
+ tags: [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById],
2255
+ auth: "user",
2256
+ responseKind: "json"
2257
+ },
2258
+ updatePageSurfaceRouteMetadata: {
2259
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/metadata",
2260
+ method: "PATCH",
2261
+ errors: [
2262
+ "validation:invalid_input",
2263
+ "resource:not_found",
2264
+ "resource:conflict",
2265
+ "server:internal_error"
2266
+ ],
2267
+ tags: [
2268
+ TAG_TEMPLATES.siteCollection,
2269
+ TAG_TEMPLATES.siteRoutableContent,
2270
+ TAG_TEMPLATES.pageSurfaceById
2271
+ ],
2272
+ auth: "user",
2273
+ responseKind: "json"
2274
+ },
2224
2275
  runSdkWorkflow: {
2225
2276
  path: "/sites/{siteId}/content/{type}/{entryId}/workflows/{workflowId}/run",
2226
2277
  method: "POST",
@@ -2601,6 +2652,50 @@ const API_ENDPOINTS = {
2601
2652
  errors: [],
2602
2653
  responseKind: "json"
2603
2654
  },
2655
+ getFooterComposition: {
2656
+ path: "/sites/{siteId}/settings/footer-composition",
2657
+ method: "GET",
2658
+ revalidate: 120,
2659
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2660
+ auth: "user",
2661
+ errors: ["resource:not_found", "server:internal_error"],
2662
+ responseKind: "json"
2663
+ },
2664
+ updateFooterComposition: {
2665
+ path: "/sites/{siteId}/settings/footer-composition",
2666
+ method: "POST",
2667
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2668
+ auth: "user",
2669
+ demoMutation: DEMO_MUTATION_ALLOWED,
2670
+ errors: [
2671
+ "validation:invalid_input",
2672
+ "resource:not_found",
2673
+ "server:internal_error"
2674
+ ],
2675
+ responseKind: "json"
2676
+ },
2677
+ getPublicProfile: {
2678
+ path: "/sites/{siteId}/settings/public-profile",
2679
+ method: "GET",
2680
+ revalidate: 120,
2681
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2682
+ auth: "user",
2683
+ errors: ["resource:not_found", "server:internal_error"],
2684
+ responseKind: "json"
2685
+ },
2686
+ updatePublicProfile: {
2687
+ path: "/sites/{siteId}/settings/public-profile",
2688
+ method: "POST",
2689
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2690
+ auth: "user",
2691
+ demoMutation: DEMO_MUTATION_ALLOWED,
2692
+ errors: [
2693
+ "validation:invalid_input",
2694
+ "resource:not_found",
2695
+ "server:internal_error"
2696
+ ],
2697
+ responseKind: "json"
2698
+ },
2604
2699
  updateSiteLayoutSettings: {
2605
2700
  path: "/sites/{siteId}/settings/layout",
2606
2701
  method: "POST",
@@ -3673,6 +3768,76 @@ const API_ENDPOINTS = {
3673
3768
  responseKind: "json",
3674
3769
  errors: ["resource:not_found"]
3675
3770
  },
3771
+ listPageSurfaceContentSlots: {
3772
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots",
3773
+ method: "GET",
3774
+ tags: [
3775
+ TAG_TEMPLATES.siteCollection,
3776
+ TAG_TEMPLATES.pageSurfaceById,
3777
+ "surface-slots",
3778
+ "blocks"
3779
+ ],
3780
+ auth: "user",
3781
+ responseKind: "json",
3782
+ errors: [
3783
+ "resource:not_found",
3784
+ "resource:conflict",
3785
+ "server:internal_error"
3786
+ ]
3787
+ },
3788
+ createPageSurfaceSlotBlock: {
3789
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks",
3790
+ method: "POST",
3791
+ tags: [
3792
+ TAG_TEMPLATES.siteCollection,
3793
+ TAG_TEMPLATES.pageSurfaceById,
3794
+ "surface-slot-{slotKey}",
3795
+ "blocks"
3796
+ ],
3797
+ auth: "user",
3798
+ responseKind: "json",
3799
+ errors: [
3800
+ "validation:invalid_input",
3801
+ "resource:not_found",
3802
+ "resource:conflict",
3803
+ "server:internal_error"
3804
+ ]
3805
+ },
3806
+ reorderPageSurfaceSlotBlocks: {
3807
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks/reorder",
3808
+ method: "POST",
3809
+ tags: [
3810
+ TAG_TEMPLATES.siteCollection,
3811
+ TAG_TEMPLATES.pageSurfaceById,
3812
+ "surface-slot-{slotKey}",
3813
+ "blocks"
3814
+ ],
3815
+ auth: "user",
3816
+ responseKind: "json",
3817
+ errors: [
3818
+ "validation:invalid_input",
3819
+ "resource:not_found",
3820
+ "resource:conflict",
3821
+ "server:internal_error"
3822
+ ]
3823
+ },
3824
+ deletePageSurfaceSlotBlock: {
3825
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks/{blockId}",
3826
+ method: "DELETE",
3827
+ tags: [
3828
+ TAG_TEMPLATES.siteCollection,
3829
+ TAG_TEMPLATES.pageSurfaceById,
3830
+ "surface-slot-{slotKey}",
3831
+ "blocks"
3832
+ ],
3833
+ auth: "user",
3834
+ responseKind: "json",
3835
+ errors: [
3836
+ "resource:not_found",
3837
+ "resource:conflict",
3838
+ "server:internal_error"
3839
+ ]
3840
+ },
3676
3841
  createBlock: {
3677
3842
  path: "/sites/{siteId}/pages/{pageId}/blocks",
3678
3843
  method: "POST",
@@ -6156,6 +6321,41 @@ const API_ENDPOINTS = {
6156
6321
  auth: "service",
6157
6322
  responseKind: "json"
6158
6323
  },
6324
+ sdkCatalogTheme: {
6325
+ path: "/sdk/{siteId}/catalog/theme",
6326
+ method: "GET",
6327
+ errors: ["server:internal_error"],
6328
+ auth: "service",
6329
+ responseKind: "json"
6330
+ },
6331
+ sdkCatalogBlocks: {
6332
+ path: "/sdk/{siteId}/catalog/blocks",
6333
+ method: "GET",
6334
+ errors: ["server:internal_error"],
6335
+ auth: "service",
6336
+ responseKind: "json"
6337
+ },
6338
+ sdkCatalogContentTypes: {
6339
+ path: "/sdk/{siteId}/catalog/content-types",
6340
+ method: "GET",
6341
+ errors: ["server:internal_error"],
6342
+ auth: "service",
6343
+ responseKind: "json"
6344
+ },
6345
+ sdkCapabilities: {
6346
+ path: "/sdk/{siteId}/capabilities",
6347
+ method: "GET",
6348
+ errors: ["server:internal_error"],
6349
+ auth: "service",
6350
+ responseKind: "json"
6351
+ },
6352
+ sdkListDemoContent: {
6353
+ path: "/sdk/{siteId}/demo-content",
6354
+ method: "GET",
6355
+ errors: ["server:internal_error"],
6356
+ auth: "service",
6357
+ responseKind: "json"
6358
+ },
6159
6359
  sdkPullPages: {
6160
6360
  path: "/sdk/{siteId}/pull/pages",
6161
6361
  method: "GET",
@@ -6285,6 +6485,19 @@ const API_ENDPOINTS = {
6285
6485
  auth: "service",
6286
6486
  responseKind: "json"
6287
6487
  },
6488
+ sdkPatchPageBlock: {
6489
+ path: "/sdk/{siteId}/pages/{identifier}/blocks/{blockIdentifier}",
6490
+ method: "PATCH",
6491
+ errors: [
6492
+ "validation:invalid_input",
6493
+ "resource:not_found",
6494
+ "resource:conflict",
6495
+ "billing:plan_limit_exceeded",
6496
+ "server:internal_error"
6497
+ ],
6498
+ auth: "service",
6499
+ responseKind: "json"
6500
+ },
6288
6501
  sdkReorderPageBlocks: {
6289
6502
  path: "/sdk/{siteId}/pages/{identifier}/blocks/reorder",
6290
6503
  method: "POST",
@@ -2,6 +2,12 @@
2
2
  import * as React$1 from "react";
3
3
  import { useSyncExternalStore } from "react";
4
4
  //#region ../api/src/apiEndpointTypes.ts
5
+ function allowedDemoMutationPolicy() {
6
+ return {
7
+ classification: "allowed",
8
+ publicMessage: ""
9
+ };
10
+ }
5
11
  function blockedDemoMutationPolicy(classification, publicMessage) {
6
12
  if (publicMessage.trim() === "") throw new Error(`Demo mutation policy ${classification} requires publicMessage.`);
7
13
  return {
@@ -29,6 +35,7 @@ const TAG_TEMPLATES = {
29
35
  siteRouteOutcomes: "riverbank:site:{siteId}:route-outcomes",
30
36
  routeById: "riverbank:route:{routeId}",
31
37
  pageById: "riverbank:page:{pageId}",
38
+ pageSurfaceById: "riverbank:page-surface:{pageSurfaceId}",
32
39
  workflowRunById: "riverbank:workflow-run:{runId}",
33
40
  siteForms: "riverbank:site:{siteId}:forms",
34
41
  formById: "riverbank:form:{formId}",
@@ -54,6 +61,7 @@ const TAG_TEMPLATES = {
54
61
  const DEMO_MUTATION_BLOCKED_HIDDEN = blockedDemoMutationPolicy("blocked-hidden", "This action is not available in demo sites.");
55
62
  const DEMO_MUTATION_BLOCKED_DISABLED = blockedDemoMutationPolicy("blocked-disabled", "This setting is disabled in demo sites.");
56
63
  const DEMO_MUTATION_INTERNAL_ONLY = blockedDemoMutationPolicy("internal-only", "This internal operation is not available in demo sites.");
64
+ const DEMO_MUTATION_ALLOWED = allowedDemoMutationPolicy();
57
65
  const API_ENDPOINTS = {
58
66
  aiContentUpdateChat: {
59
67
  path: "/ai/content-update-chat",
@@ -2192,6 +2200,49 @@ const API_ENDPOINTS = {
2192
2200
  auth: "user",
2193
2201
  responseKind: "json"
2194
2202
  },
2203
+ updatePageSurfaceDraftContent: {
2204
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content",
2205
+ method: "PUT",
2206
+ errors: [
2207
+ "validation:invalid_input",
2208
+ "resource:not_found",
2209
+ "resource:conflict",
2210
+ "server:internal_error"
2211
+ ],
2212
+ tags: [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById],
2213
+ auth: "user",
2214
+ responseKind: "json"
2215
+ },
2216
+ discardPageSurfaceDraftContent: {
2217
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content/draft",
2218
+ method: "DELETE",
2219
+ errors: [
2220
+ "validation:invalid_input",
2221
+ "resource:not_found",
2222
+ "resource:conflict",
2223
+ "server:internal_error"
2224
+ ],
2225
+ tags: [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById],
2226
+ auth: "user",
2227
+ responseKind: "json"
2228
+ },
2229
+ updatePageSurfaceRouteMetadata: {
2230
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/metadata",
2231
+ method: "PATCH",
2232
+ errors: [
2233
+ "validation:invalid_input",
2234
+ "resource:not_found",
2235
+ "resource:conflict",
2236
+ "server:internal_error"
2237
+ ],
2238
+ tags: [
2239
+ TAG_TEMPLATES.siteCollection,
2240
+ TAG_TEMPLATES.siteRoutableContent,
2241
+ TAG_TEMPLATES.pageSurfaceById
2242
+ ],
2243
+ auth: "user",
2244
+ responseKind: "json"
2245
+ },
2195
2246
  runSdkWorkflow: {
2196
2247
  path: "/sites/{siteId}/content/{type}/{entryId}/workflows/{workflowId}/run",
2197
2248
  method: "POST",
@@ -2572,6 +2623,50 @@ const API_ENDPOINTS = {
2572
2623
  errors: [],
2573
2624
  responseKind: "json"
2574
2625
  },
2626
+ getFooterComposition: {
2627
+ path: "/sites/{siteId}/settings/footer-composition",
2628
+ method: "GET",
2629
+ revalidate: 120,
2630
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2631
+ auth: "user",
2632
+ errors: ["resource:not_found", "server:internal_error"],
2633
+ responseKind: "json"
2634
+ },
2635
+ updateFooterComposition: {
2636
+ path: "/sites/{siteId}/settings/footer-composition",
2637
+ method: "POST",
2638
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2639
+ auth: "user",
2640
+ demoMutation: DEMO_MUTATION_ALLOWED,
2641
+ errors: [
2642
+ "validation:invalid_input",
2643
+ "resource:not_found",
2644
+ "server:internal_error"
2645
+ ],
2646
+ responseKind: "json"
2647
+ },
2648
+ getPublicProfile: {
2649
+ path: "/sites/{siteId}/settings/public-profile",
2650
+ method: "GET",
2651
+ revalidate: 120,
2652
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2653
+ auth: "user",
2654
+ errors: ["resource:not_found", "server:internal_error"],
2655
+ responseKind: "json"
2656
+ },
2657
+ updatePublicProfile: {
2658
+ path: "/sites/{siteId}/settings/public-profile",
2659
+ method: "POST",
2660
+ tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings],
2661
+ auth: "user",
2662
+ demoMutation: DEMO_MUTATION_ALLOWED,
2663
+ errors: [
2664
+ "validation:invalid_input",
2665
+ "resource:not_found",
2666
+ "server:internal_error"
2667
+ ],
2668
+ responseKind: "json"
2669
+ },
2575
2670
  updateSiteLayoutSettings: {
2576
2671
  path: "/sites/{siteId}/settings/layout",
2577
2672
  method: "POST",
@@ -3644,6 +3739,76 @@ const API_ENDPOINTS = {
3644
3739
  responseKind: "json",
3645
3740
  errors: ["resource:not_found"]
3646
3741
  },
3742
+ listPageSurfaceContentSlots: {
3743
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots",
3744
+ method: "GET",
3745
+ tags: [
3746
+ TAG_TEMPLATES.siteCollection,
3747
+ TAG_TEMPLATES.pageSurfaceById,
3748
+ "surface-slots",
3749
+ "blocks"
3750
+ ],
3751
+ auth: "user",
3752
+ responseKind: "json",
3753
+ errors: [
3754
+ "resource:not_found",
3755
+ "resource:conflict",
3756
+ "server:internal_error"
3757
+ ]
3758
+ },
3759
+ createPageSurfaceSlotBlock: {
3760
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks",
3761
+ method: "POST",
3762
+ tags: [
3763
+ TAG_TEMPLATES.siteCollection,
3764
+ TAG_TEMPLATES.pageSurfaceById,
3765
+ "surface-slot-{slotKey}",
3766
+ "blocks"
3767
+ ],
3768
+ auth: "user",
3769
+ responseKind: "json",
3770
+ errors: [
3771
+ "validation:invalid_input",
3772
+ "resource:not_found",
3773
+ "resource:conflict",
3774
+ "server:internal_error"
3775
+ ]
3776
+ },
3777
+ reorderPageSurfaceSlotBlocks: {
3778
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks/reorder",
3779
+ method: "POST",
3780
+ tags: [
3781
+ TAG_TEMPLATES.siteCollection,
3782
+ TAG_TEMPLATES.pageSurfaceById,
3783
+ "surface-slot-{slotKey}",
3784
+ "blocks"
3785
+ ],
3786
+ auth: "user",
3787
+ responseKind: "json",
3788
+ errors: [
3789
+ "validation:invalid_input",
3790
+ "resource:not_found",
3791
+ "resource:conflict",
3792
+ "server:internal_error"
3793
+ ]
3794
+ },
3795
+ deletePageSurfaceSlotBlock: {
3796
+ path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks/{blockId}",
3797
+ method: "DELETE",
3798
+ tags: [
3799
+ TAG_TEMPLATES.siteCollection,
3800
+ TAG_TEMPLATES.pageSurfaceById,
3801
+ "surface-slot-{slotKey}",
3802
+ "blocks"
3803
+ ],
3804
+ auth: "user",
3805
+ responseKind: "json",
3806
+ errors: [
3807
+ "resource:not_found",
3808
+ "resource:conflict",
3809
+ "server:internal_error"
3810
+ ]
3811
+ },
3647
3812
  createBlock: {
3648
3813
  path: "/sites/{siteId}/pages/{pageId}/blocks",
3649
3814
  method: "POST",
@@ -6127,6 +6292,41 @@ const API_ENDPOINTS = {
6127
6292
  auth: "service",
6128
6293
  responseKind: "json"
6129
6294
  },
6295
+ sdkCatalogTheme: {
6296
+ path: "/sdk/{siteId}/catalog/theme",
6297
+ method: "GET",
6298
+ errors: ["server:internal_error"],
6299
+ auth: "service",
6300
+ responseKind: "json"
6301
+ },
6302
+ sdkCatalogBlocks: {
6303
+ path: "/sdk/{siteId}/catalog/blocks",
6304
+ method: "GET",
6305
+ errors: ["server:internal_error"],
6306
+ auth: "service",
6307
+ responseKind: "json"
6308
+ },
6309
+ sdkCatalogContentTypes: {
6310
+ path: "/sdk/{siteId}/catalog/content-types",
6311
+ method: "GET",
6312
+ errors: ["server:internal_error"],
6313
+ auth: "service",
6314
+ responseKind: "json"
6315
+ },
6316
+ sdkCapabilities: {
6317
+ path: "/sdk/{siteId}/capabilities",
6318
+ method: "GET",
6319
+ errors: ["server:internal_error"],
6320
+ auth: "service",
6321
+ responseKind: "json"
6322
+ },
6323
+ sdkListDemoContent: {
6324
+ path: "/sdk/{siteId}/demo-content",
6325
+ method: "GET",
6326
+ errors: ["server:internal_error"],
6327
+ auth: "service",
6328
+ responseKind: "json"
6329
+ },
6130
6330
  sdkPullPages: {
6131
6331
  path: "/sdk/{siteId}/pull/pages",
6132
6332
  method: "GET",
@@ -6256,6 +6456,19 @@ const API_ENDPOINTS = {
6256
6456
  auth: "service",
6257
6457
  responseKind: "json"
6258
6458
  },
6459
+ sdkPatchPageBlock: {
6460
+ path: "/sdk/{siteId}/pages/{identifier}/blocks/{blockIdentifier}",
6461
+ method: "PATCH",
6462
+ errors: [
6463
+ "validation:invalid_input",
6464
+ "resource:not_found",
6465
+ "resource:conflict",
6466
+ "billing:plan_limit_exceeded",
6467
+ "server:internal_error"
6468
+ ],
6469
+ auth: "service",
6470
+ responseKind: "json"
6471
+ },
6259
6472
  sdkReorderPageBlocks: {
6260
6473
  path: "/sdk/{siteId}/pages/{identifier}/blocks/reorder",
6261
6474
  method: "POST",
@@ -1,4 +1,4 @@
1
1
  "use client";
2
- import "./PreviewQueryProvider-D0tnKl0t.mjs";
3
- import { i as PreviewShellLayout, r as PreviewShell } from "./SdkPreviewModeRuntime-CVB7urtl.mjs";
2
+ import "./PreviewQueryProvider-D0y2l8JN.mjs";
3
+ import { i as PreviewShellLayout, r as PreviewShell } from "./SdkPreviewModeRuntime-D8Gt9Gbe.mjs";
4
4
  export { PreviewShell, PreviewShellLayout };
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { Hu as cn, Ru as Primitive } from "./SiteChromeCustomizeContext-C_sizso-.mjs";
2
+ import { Zu as Primitive, td as cn } from "./SiteChromeCustomizeContext-DUpalEdL.mjs";
3
3
  import * as React$1 from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  //#region ../../node_modules/.pnpm/@radix-ui+react-separator@1.1.10_@types+react-dom@19.2.3_@types+react@19.2.17__@types+r_adfab47c9055efb8b0c4b77a2b96b053/node_modules/@radix-ui/react-separator/dist/index.mjs