@drawnagency/primitives 0.1.113 → 0.1.115

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 (534) hide show
  1. package/README.md +1 -1
  2. package/dist/auth/cookies.d.ts +39 -0
  3. package/dist/auth/cookies.d.ts.map +1 -1
  4. package/dist/auth/index.js +3 -3
  5. package/dist/chunk-4WQ36ZP7.js +83 -0
  6. package/dist/{chunk-REDDTTGJ.js → chunk-4Y2JQQZL.js} +19 -1
  7. package/dist/chunk-5GFACGSN.js +6 -0
  8. package/dist/{chunk-AHALSCQH.js → chunk-67P34WNW.js} +76 -131
  9. package/dist/{chunk-S2L3BPLS.js → chunk-7SX42OP4.js} +1 -1
  10. package/dist/{chunk-GGXZZ77Z.js → chunk-AASEGXNT.js} +18 -1
  11. package/dist/chunk-APIJPTFG.js +64 -0
  12. package/dist/{chunk-WKZ7OENC.js → chunk-BQ5TZZUE.js} +5 -1
  13. package/dist/chunk-CDBURDPX.js +90 -0
  14. package/dist/chunk-DFKTF3CH.js +0 -0
  15. package/dist/chunk-DIMDRBFK.js +11 -0
  16. package/dist/chunk-DJABADOO.js +131 -0
  17. package/dist/{chunk-NHN2LSIU.js → chunk-DJOGPSRU.js} +31 -68
  18. package/dist/{chunk-KR2MHTNJ.js → chunk-FHTKSELX.js} +610 -62
  19. package/dist/{chunk-WUJ3XNFI.js → chunk-GGYY3JQJ.js} +19 -24
  20. package/dist/chunk-GNF6KFQ7.js +18 -0
  21. package/dist/{chunk-FRE2CCLV.js → chunk-HHNPSKPT.js} +5 -79
  22. package/dist/{chunk-IINIZBQB.js → chunk-JCDZAFX2.js} +30 -10
  23. package/dist/chunk-JR24U7FJ.js +120 -0
  24. package/dist/{chunk-BDFTMGCL.js → chunk-JXATNKLV.js} +11 -10
  25. package/dist/{chunk-SW6PCQQD.js → chunk-KQA772WQ.js} +2 -1
  26. package/dist/{chunk-6BZ2KNTP.js → chunk-NX7TFHA4.js} +195 -65
  27. package/dist/{chunk-VWWY5TL5.js → chunk-O37AV27P.js} +14 -75
  28. package/dist/chunk-RIITGTV3.js +275 -0
  29. package/dist/{chunk-HBULBDGP.js → chunk-S37DZPHW.js} +1 -1
  30. package/dist/chunk-S7QRHUWO.js +8 -0
  31. package/dist/{chunk-Z7W3DQTR.js → chunk-T26HAKW3.js} +424 -42
  32. package/dist/{chunk-4I5OO5UB.js → chunk-TEOAKGZA.js} +0 -1
  33. package/dist/{chunk-GPPVYLEI.js → chunk-UUUSJDIG.js} +1 -1
  34. package/dist/chunk-VY3IFGE3.js +70 -0
  35. package/dist/chunk-WYOFQHKI.js +176 -0
  36. package/dist/{chunk-4RNF2DRG.js → chunk-XDEPXTBY.js} +0 -2
  37. package/dist/{chunk-DS4GCYV2.js → chunk-YV3YSZEB.js} +223 -16
  38. package/dist/collab/rebase.d.ts +2 -1
  39. package/dist/collab/rebase.d.ts.map +1 -1
  40. package/dist/collab/rebase.js +24 -9
  41. package/dist/components/brandguide/ColorsEditable.d.ts.map +1 -1
  42. package/dist/components/chat/ChatPanel.d.ts.map +1 -1
  43. package/dist/components/chat/ChatWidget.d.ts.map +1 -1
  44. package/dist/components/docfile/DocFilePane.d.ts.map +1 -1
  45. package/dist/components/editor/ChildBlockWrapper.d.ts.map +1 -1
  46. package/dist/components/editor/ConflictDialog.d.ts.map +1 -1
  47. package/dist/components/editor/DragHandle.d.ts +12 -2
  48. package/dist/components/editor/DragHandle.d.ts.map +1 -1
  49. package/dist/components/editor/DropEdgeIndicator.d.ts +15 -6
  50. package/dist/components/editor/DropEdgeIndicator.d.ts.map +1 -1
  51. package/dist/components/editor/NavGroupRow.d.ts +4 -1
  52. package/dist/components/editor/NavGroupRow.d.ts.map +1 -1
  53. package/dist/components/editor/PagesModal.d.ts.map +1 -1
  54. package/dist/components/editor/SectionWrapper.d.ts +1 -1
  55. package/dist/components/editor/SectionWrapper.d.ts.map +1 -1
  56. package/dist/components/editor/SettingsForm.d.ts.map +1 -1
  57. package/dist/components/editor/TagIndicator.d.ts +15 -0
  58. package/dist/components/editor/TagIndicator.d.ts.map +1 -0
  59. package/dist/components/editor/index.js +150 -79
  60. package/dist/components/primitives/DocumentDropZone.d.ts +1 -1
  61. package/dist/components/primitives/EditableGrid.d.ts.map +1 -1
  62. package/dist/components/primitives/EditableList.d.ts.map +1 -1
  63. package/dist/components/primitives/HeadingSection.d.ts +4 -1
  64. package/dist/components/primitives/HeadingSection.d.ts.map +1 -1
  65. package/dist/components/primitives/ResolvedMedia.d.ts +5 -1
  66. package/dist/components/primitives/ResolvedMedia.d.ts.map +1 -1
  67. package/dist/components/primitives/{defineHeadingSection.d.ts → define-heading-section.d.ts} +1 -1
  68. package/dist/components/primitives/define-heading-section.d.ts.map +1 -0
  69. package/dist/components/primitives/{gridDrop.d.ts → grid-drop.d.ts} +1 -1
  70. package/dist/components/primitives/grid-drop.d.ts.map +1 -0
  71. package/dist/components/primitives/index.d.ts +1 -1
  72. package/dist/components/primitives/index.d.ts.map +1 -1
  73. package/dist/components/primitives/index.js +22 -154
  74. package/dist/components/sections/Button/CTAButton.d.ts.map +1 -1
  75. package/dist/components/sections/DoDontMedia/DoDontMediaBlock.d.ts +2 -6
  76. package/dist/components/sections/DoDontMedia/DoDontMediaBlock.d.ts.map +1 -1
  77. package/dist/components/sections/DoDontMedia/index.d.ts +8 -0
  78. package/dist/components/sections/DoDontMedia/index.d.ts.map +1 -1
  79. package/dist/components/sections/IconList/IconList.d.ts +2 -1
  80. package/dist/components/sections/IconList/IconList.d.ts.map +1 -1
  81. package/dist/components/sections/IconList/IconListSettings.d.ts +2 -1
  82. package/dist/components/sections/IconList/IconListSettings.d.ts.map +1 -1
  83. package/dist/components/sections/IconList/index.d.ts +1 -0
  84. package/dist/components/sections/IconList/index.d.ts.map +1 -1
  85. package/dist/components/sections/Media/MediaBlock.d.ts +2 -1
  86. package/dist/components/sections/Media/MediaBlock.d.ts.map +1 -1
  87. package/dist/components/sections/Media/index.d.ts +8 -0
  88. package/dist/components/sections/Media/index.d.ts.map +1 -1
  89. package/dist/components/sections/Reference/ReferenceList.d.ts +35 -0
  90. package/dist/components/sections/Reference/ReferenceList.d.ts.map +1 -0
  91. package/dist/components/sections/Reference/ReferenceSettings.d.ts +12 -0
  92. package/dist/components/sections/Reference/ReferenceSettings.d.ts.map +1 -0
  93. package/dist/components/sections/Reference/index.d.ts +9 -0
  94. package/dist/components/sections/Reference/index.d.ts.map +1 -0
  95. package/dist/components/sections/SectionSummary/SectionSummaryBlock.d.ts +38 -0
  96. package/dist/components/sections/SectionSummary/SectionSummaryBlock.d.ts.map +1 -0
  97. package/dist/components/sections/SectionSummary/SectionSummarySettings.d.ts +20 -0
  98. package/dist/components/sections/SectionSummary/SectionSummarySettings.d.ts.map +1 -0
  99. package/dist/components/sections/SectionSummary/index.d.ts +33 -0
  100. package/dist/components/sections/SectionSummary/index.d.ts.map +1 -0
  101. package/dist/components/sections/all-sections.d.ts +53 -0
  102. package/dist/components/sections/all-sections.d.ts.map +1 -1
  103. package/dist/components/sections/brand-guide.d.ts +41 -2
  104. package/dist/components/sections/brand-guide.d.ts.map +1 -1
  105. package/dist/components/sections/brand-guide.js +17 -10
  106. package/dist/components/sections/core-sections.d.ts +14 -0
  107. package/dist/components/sections/core-sections.d.ts.map +1 -1
  108. package/dist/components/sections/register-schemas.js +25 -18
  109. package/dist/components/sections/register.js +25 -18
  110. package/dist/components/shared/BrandSwatchesContext.d.ts +9 -0
  111. package/dist/components/shared/BrandSwatchesContext.d.ts.map +1 -0
  112. package/dist/components/shared/Button.d.ts +11 -3
  113. package/dist/components/shared/Button.d.ts.map +1 -1
  114. package/dist/components/shared/Checkbox.d.ts +6 -0
  115. package/dist/components/shared/Checkbox.d.ts.map +1 -1
  116. package/dist/components/shared/ConfirmDialog.d.ts +25 -0
  117. package/dist/components/shared/ConfirmDialog.d.ts.map +1 -0
  118. package/dist/components/shared/ConfirmInline.d.ts +25 -0
  119. package/dist/components/shared/ConfirmInline.d.ts.map +1 -0
  120. package/dist/components/shared/ErrorBoundary.d.ts.map +1 -1
  121. package/dist/components/shared/Fab.d.ts +11 -2
  122. package/dist/components/shared/Fab.d.ts.map +1 -1
  123. package/dist/components/shared/FabStack.d.ts +22 -0
  124. package/dist/components/shared/FabStack.d.ts.map +1 -0
  125. package/dist/components/shared/HistoryChangesModal.d.ts.map +1 -1
  126. package/dist/components/shared/HistoryPopover.d.ts.map +1 -1
  127. package/dist/components/shared/ImageBackgroundField.d.ts +9 -0
  128. package/dist/components/shared/ImageBackgroundField.d.ts.map +1 -0
  129. package/dist/components/shared/{UploadRejectionAlert.d.ts → InlineAlert.d.ts} +4 -2
  130. package/dist/components/shared/InlineAlert.d.ts.map +1 -0
  131. package/dist/components/shared/Input.d.ts +10 -0
  132. package/dist/components/shared/Input.d.ts.map +1 -1
  133. package/dist/components/shared/Navigation.d.ts.map +1 -1
  134. package/dist/components/shared/Notice.d.ts +10 -0
  135. package/dist/components/shared/Notice.d.ts.map +1 -0
  136. package/dist/components/shared/Popover.d.ts.map +1 -1
  137. package/dist/components/shared/ReferenceSourcesContext.d.ts +25 -0
  138. package/dist/components/shared/ReferenceSourcesContext.d.ts.map +1 -0
  139. package/dist/components/shared/Select.d.ts +3 -2
  140. package/dist/components/shared/Select.d.ts.map +1 -1
  141. package/dist/components/shared/SplitButton.d.ts.map +1 -1
  142. package/dist/components/shared/SummaryAnchorsContext.d.ts +10 -0
  143. package/dist/components/shared/SummaryAnchorsContext.d.ts.map +1 -0
  144. package/dist/components/shared/Textarea.d.ts +7 -0
  145. package/dist/components/shared/Textarea.d.ts.map +1 -1
  146. package/dist/components/shared/ToolbarFrame.d.ts +17 -0
  147. package/dist/components/shared/ToolbarFrame.d.ts.map +1 -0
  148. package/dist/components/shared/copy.d.ts +13 -0
  149. package/dist/components/shared/copy.d.ts.map +1 -0
  150. package/dist/components/shared/icons.d.ts +0 -12
  151. package/dist/components/shared/icons.d.ts.map +1 -1
  152. package/dist/components/shell/AudienceDetailsPanel.d.ts +7 -1
  153. package/dist/components/shell/AudienceDetailsPanel.d.ts.map +1 -1
  154. package/dist/components/shell/AudienceRow.d.ts.map +1 -1
  155. package/dist/components/shell/BugReportFAB.d.ts +7 -1
  156. package/dist/components/shell/BugReportFAB.d.ts.map +1 -1
  157. package/dist/components/shell/CredentialList.d.ts.map +1 -1
  158. package/dist/components/shell/DocInspector.d.ts.map +1 -1
  159. package/dist/components/shell/DocumentEditorOverlay.d.ts.map +1 -1
  160. package/dist/components/shell/EditorContext.d.ts +4 -0
  161. package/dist/components/shell/EditorContext.d.ts.map +1 -1
  162. package/dist/components/shell/EditorLoginForm.d.ts.map +1 -1
  163. package/dist/components/shell/EditorModal.d.ts.map +1 -1
  164. package/dist/components/shell/EditorShell.d.ts.map +1 -1
  165. package/dist/components/shell/HistoryToolbar.d.ts.map +1 -1
  166. package/dist/components/shell/MediaFolderTile.d.ts +4 -1
  167. package/dist/components/shell/MediaFolderTile.d.ts.map +1 -1
  168. package/dist/components/shell/MediaLibraryModal.d.ts.map +1 -1
  169. package/dist/components/shell/RestoreModal.d.ts.map +1 -1
  170. package/dist/components/shell/SiteSettingsChatbot.d.ts.map +1 -1
  171. package/dist/components/shell/SiteSettingsDisplay.d.ts.map +1 -1
  172. package/dist/components/shell/SiteSettingsModal.d.ts +3 -1
  173. package/dist/components/shell/SiteSettingsModal.d.ts.map +1 -1
  174. package/dist/components/shell/SiteSettingsTags.d.ts +13 -0
  175. package/dist/components/shell/SiteSettingsTags.d.ts.map +1 -0
  176. package/dist/components/shell/SiteSettingsUsers.d.ts.map +1 -1
  177. package/dist/components/shell/ViewerLoginForm.d.ts.map +1 -1
  178. package/dist/components/shell/{blockMoveDispatch.d.ts → block-move-dispatch.d.ts} +1 -1
  179. package/dist/components/shell/block-move-dispatch.d.ts.map +1 -0
  180. package/dist/components/shell/reference-sources.d.ts +22 -0
  181. package/dist/components/shell/reference-sources.d.ts.map +1 -0
  182. package/dist/deck/index.d.ts +2 -2
  183. package/dist/deck/index.d.ts.map +1 -1
  184. package/dist/deck/index.js +1 -3
  185. package/dist/deck-builder/index.js +10 -17
  186. package/dist/document/index.d.ts +2 -2
  187. package/dist/document/index.d.ts.map +1 -1
  188. package/dist/hooks/useBlockDnd.d.ts +11 -0
  189. package/dist/hooks/useBlockDnd.d.ts.map +1 -1
  190. package/dist/hooks/useBuildStatus.d.ts +1 -1
  191. package/dist/hooks/useBuildStatus.d.ts.map +1 -1
  192. package/dist/hooks/useDocumentUploads.d.ts +1 -1
  193. package/dist/hooks/useDocumentUploads.d.ts.map +1 -1
  194. package/dist/hooks/useEditorPersistence.d.ts +5 -1
  195. package/dist/hooks/useEditorPersistence.d.ts.map +1 -1
  196. package/dist/hooks/useEditorPublish.d.ts +6 -3
  197. package/dist/hooks/useEditorPublish.d.ts.map +1 -1
  198. package/dist/hooks/useMediaPipeline.d.ts.map +1 -1
  199. package/dist/hooks/useNotice.d.ts +19 -0
  200. package/dist/hooks/useNotice.d.ts.map +1 -0
  201. package/dist/hooks/useSortableNavRow.d.ts +11 -0
  202. package/dist/hooks/useSortableNavRow.d.ts.map +1 -1
  203. package/dist/hooks/useSortableRow.d.ts +11 -0
  204. package/dist/hooks/useSortableRow.d.ts.map +1 -1
  205. package/dist/hooks/useStackedEscape.d.ts +32 -0
  206. package/dist/hooks/useStackedEscape.d.ts.map +1 -0
  207. package/dist/index.js +95 -48
  208. package/dist/lib/audience-secret.js +2 -2
  209. package/dist/lib/block-dnd.d.ts +5 -0
  210. package/dist/lib/block-dnd.d.ts.map +1 -1
  211. package/dist/lib/block-move.d.ts.map +1 -1
  212. package/dist/lib/brand-swatches.d.ts +12 -0
  213. package/dist/lib/brand-swatches.d.ts.map +1 -0
  214. package/dist/lib/container-ops.d.ts +3 -2
  215. package/dist/lib/container-ops.d.ts.map +1 -1
  216. package/dist/lib/dexie.d.ts +7 -1
  217. package/dist/lib/dexie.d.ts.map +1 -1
  218. package/dist/lib/dexie.js +12 -3
  219. package/dist/lib/env.d.ts +4 -0
  220. package/dist/lib/env.d.ts.map +1 -1
  221. package/dist/lib/env.js +5 -3
  222. package/dist/lib/events.d.ts +1 -2
  223. package/dist/lib/events.d.ts.map +1 -1
  224. package/dist/lib/image-background.d.ts +8 -0
  225. package/dist/lib/image-background.d.ts.map +1 -0
  226. package/dist/lib/image-variant-plan.d.ts +42 -0
  227. package/dist/lib/image-variant-plan.d.ts.map +1 -0
  228. package/dist/lib/image-variant-plan.js +53 -0
  229. package/dist/lib/index-ops.d.ts.map +1 -1
  230. package/dist/lib/index-ops.js +21 -17
  231. package/dist/lib/index.d.ts +7 -4
  232. package/dist/lib/index.d.ts.map +1 -1
  233. package/dist/lib/index.js +55 -26
  234. package/dist/lib/loader.d.ts +25 -12
  235. package/dist/lib/loader.d.ts.map +1 -1
  236. package/dist/lib/media-ops.d.ts +73 -0
  237. package/dist/lib/media-ops.d.ts.map +1 -0
  238. package/dist/lib/media-ops.js +60 -0
  239. package/dist/lib/nav-tree.d.ts +7 -0
  240. package/dist/lib/nav-tree.d.ts.map +1 -1
  241. package/dist/lib/nav.d.ts +38 -0
  242. package/dist/lib/nav.d.ts.map +1 -1
  243. package/dist/lib/pages.d.ts +2 -1
  244. package/dist/lib/pages.d.ts.map +1 -1
  245. package/dist/lib/platform-broker.d.ts +4 -2
  246. package/dist/lib/platform-broker.d.ts.map +1 -1
  247. package/dist/lib/platform-broker.js +21 -13
  248. package/dist/lib/reference-type.d.ts +2 -0
  249. package/dist/lib/reference-type.d.ts.map +1 -0
  250. package/dist/lib/reference-validation.d.ts +31 -0
  251. package/dist/lib/reference-validation.d.ts.map +1 -0
  252. package/dist/lib/reference-validation.js +39 -0
  253. package/dist/lib/references.d.ts +74 -0
  254. package/dist/lib/references.d.ts.map +1 -0
  255. package/dist/lib/registry.d.ts +35 -0
  256. package/dist/lib/registry.d.ts.map +1 -1
  257. package/dist/lib/{safeRedirect.d.ts → safe-redirect.d.ts} +1 -1
  258. package/dist/lib/safe-redirect.d.ts.map +1 -0
  259. package/dist/lib/sidecar-diagnostics.d.ts +20 -0
  260. package/dist/lib/sidecar-diagnostics.d.ts.map +1 -0
  261. package/dist/lib/sidecars.d.ts +118 -0
  262. package/dist/lib/sidecars.d.ts.map +1 -0
  263. package/dist/lib/sidecars.js +23 -0
  264. package/dist/lib/slug.d.ts +2 -0
  265. package/dist/lib/slug.d.ts.map +1 -0
  266. package/dist/lib/storage-tier.d.ts +17 -0
  267. package/dist/lib/storage-tier.d.ts.map +1 -0
  268. package/dist/lib/storage-tier.js +29 -0
  269. package/dist/lib/tags.d.ts +64 -0
  270. package/dist/lib/tags.d.ts.map +1 -0
  271. package/dist/lib/theme-vars.d.ts +9 -0
  272. package/dist/lib/theme-vars.d.ts.map +1 -1
  273. package/dist/media/index.d.ts +1 -1
  274. package/dist/media/index.d.ts.map +1 -1
  275. package/dist/media/index.js +18 -14
  276. package/dist/media/queue.d.ts +2 -0
  277. package/dist/media/queue.d.ts.map +1 -1
  278. package/dist/media/utils.d.ts +2 -0
  279. package/dist/media/utils.d.ts.map +1 -1
  280. package/dist/media/{videoPoster.d.ts → video-poster.d.ts} +1 -1
  281. package/dist/media/video-poster.d.ts.map +1 -0
  282. package/dist/media/worker.d.ts +1 -35
  283. package/dist/media/worker.d.ts.map +1 -1
  284. package/dist/schemas/audience.js +2 -2
  285. package/dist/schemas/index.d.ts +1 -0
  286. package/dist/schemas/index.d.ts.map +1 -1
  287. package/dist/schemas/index.js +25 -13
  288. package/dist/schemas/media.d.ts +4 -0
  289. package/dist/schemas/media.d.ts.map +1 -1
  290. package/dist/schemas/shared.d.ts +26 -0
  291. package/dist/schemas/shared.d.ts.map +1 -1
  292. package/dist/schemas/site-config.d.ts +6 -0
  293. package/dist/schemas/site-config.d.ts.map +1 -1
  294. package/dist/schemas/tags.d.ts +27 -0
  295. package/dist/schemas/tags.d.ts.map +1 -0
  296. package/dist/storage/index.js +2 -1
  297. package/dist/storage/memory.d.ts +21 -0
  298. package/dist/storage/memory.d.ts.map +1 -0
  299. package/dist/storage/memory.js +129 -0
  300. package/dist/storage/types.d.ts +9 -0
  301. package/dist/storage/types.d.ts.map +1 -1
  302. package/dist/types/database.d.ts.map +1 -1
  303. package/package.json +26 -1
  304. package/src/auth/cookies.ts +111 -0
  305. package/src/collab/rebase.ts +29 -9
  306. package/src/components/brandguide/ColorSwatchSettings.tsx +1 -1
  307. package/src/components/brandguide/ColorsEditable.tsx +1 -0
  308. package/src/components/chat/ChatPanel.tsx +2 -3
  309. package/src/components/chat/ChatWidget.tsx +2 -3
  310. package/src/components/docfile/DocFilePane.tsx +4 -12
  311. package/src/components/editor/ChildBlockWrapper.tsx +13 -19
  312. package/src/components/editor/ConflictDialog.tsx +27 -35
  313. package/src/components/editor/DeleteButton.tsx +2 -2
  314. package/src/components/editor/DragHandle.tsx +16 -3
  315. package/src/components/editor/DropEdgeIndicator.tsx +36 -10
  316. package/src/components/editor/InsertButton.tsx +2 -2
  317. package/src/components/editor/NavGroupRow.tsx +43 -14
  318. package/src/components/editor/PagesModal.tsx +99 -26
  319. package/src/components/editor/SectionWrapper.tsx +64 -23
  320. package/src/components/editor/SettingsButton.tsx +2 -2
  321. package/src/components/editor/SettingsForm.tsx +19 -2
  322. package/src/components/editor/StatusIndicator.tsx +4 -4
  323. package/src/components/editor/TagIndicator.tsx +80 -0
  324. package/src/components/primitives/DocumentDropZone.tsx +1 -1
  325. package/src/components/primitives/EditableGrid.tsx +15 -14
  326. package/src/components/primitives/EditableList.tsx +27 -74
  327. package/src/components/primitives/HeadingSection.tsx +5 -2
  328. package/src/components/primitives/ResolvedMedia.tsx +13 -0
  329. package/src/components/primitives/{defineHeadingSection.tsx → define-heading-section.tsx} +1 -0
  330. package/src/components/primitives/index.ts +1 -1
  331. package/src/components/primitives/useEditablePlainText.ts +5 -5
  332. package/src/components/sections/Button/CTAButton.tsx +3 -1
  333. package/src/components/sections/DoDontMedia/DoDontMediaBlock.tsx +4 -4
  334. package/src/components/sections/DoDontMedia/index.tsx +12 -3
  335. package/src/components/sections/IconList/DoDontToggle.tsx +2 -2
  336. package/src/components/sections/IconList/IconList.tsx +70 -37
  337. package/src/components/sections/IconList/IconListSettings.tsx +55 -17
  338. package/src/components/sections/IconList/index.tsx +10 -3
  339. package/src/components/sections/LinkHeading/index.tsx +1 -1
  340. package/src/components/sections/Media/MediaBlock.tsx +13 -2
  341. package/src/components/sections/Media/index.tsx +12 -4
  342. package/src/components/sections/Reference/ReferenceList.tsx +214 -0
  343. package/src/components/sections/Reference/ReferenceSettings.tsx +159 -0
  344. package/src/components/sections/Reference/index.tsx +47 -0
  345. package/src/components/sections/SectionSummary/SectionSummaryBlock.tsx +476 -0
  346. package/src/components/sections/SectionSummary/SectionSummarySettings.tsx +126 -0
  347. package/src/components/sections/SectionSummary/index.tsx +149 -0
  348. package/src/components/sections/SubHeading/index.tsx +1 -1
  349. package/src/components/sections/SubSubHeading/index.tsx +1 -1
  350. package/src/components/sections/brand-guide.ts +4 -3
  351. package/src/components/sections/core-sections.ts +2 -0
  352. package/src/components/shared/BrandSwatchesContext.ts +13 -0
  353. package/src/components/shared/Button.tsx +47 -34
  354. package/src/components/shared/Checkbox.tsx +21 -12
  355. package/src/components/shared/ConfirmDialog.tsx +87 -0
  356. package/src/components/shared/ConfirmInline.tsx +90 -0
  357. package/src/components/shared/ErrorBoundary.tsx +6 -18
  358. package/src/components/shared/Fab.tsx +15 -5
  359. package/src/components/shared/FabStack.tsx +28 -0
  360. package/src/components/shared/HistoryChangesModal.tsx +43 -41
  361. package/src/components/shared/HistoryPopover.tsx +7 -20
  362. package/src/components/shared/ImageBackgroundField.tsx +92 -0
  363. package/src/components/shared/{UploadRejectionAlert.tsx → InlineAlert.tsx} +21 -5
  364. package/src/components/shared/Input.tsx +23 -7
  365. package/src/components/shared/Navigation.tsx +22 -17
  366. package/src/components/shared/Notice.tsx +59 -0
  367. package/src/components/shared/Popover.tsx +7 -11
  368. package/src/components/shared/ReferenceSourcesContext.ts +27 -0
  369. package/src/components/shared/Select.tsx +5 -2
  370. package/src/components/shared/SplitButton.tsx +11 -17
  371. package/src/components/shared/SummaryAnchorsContext.ts +11 -0
  372. package/src/components/shared/Textarea.tsx +17 -2
  373. package/src/components/shared/ToolbarFrame.tsx +28 -0
  374. package/src/components/shared/VideoSourceField.tsx +1 -1
  375. package/src/components/shared/copy.ts +18 -0
  376. package/src/components/shared/icons.tsx +1 -17
  377. package/src/components/shell/AudienceAddForm.tsx +2 -2
  378. package/src/components/shell/AudienceDetailsPanel.tsx +23 -5
  379. package/src/components/shell/AudienceRow.tsx +22 -15
  380. package/src/components/shell/BugReportFAB.tsx +50 -40
  381. package/src/components/shell/CredentialList.tsx +33 -13
  382. package/src/components/shell/DocInspector.tsx +3 -12
  383. package/src/components/shell/DocumentEditorOverlay.tsx +33 -23
  384. package/src/components/shell/EditorContext.tsx +7 -0
  385. package/src/components/shell/EditorLoginForm.tsx +26 -36
  386. package/src/components/shell/EditorModal.tsx +8 -10
  387. package/src/components/shell/EditorShell.tsx +501 -338
  388. package/src/components/shell/HistoryToolbar.tsx +24 -26
  389. package/src/components/shell/MediaFolderTile.tsx +8 -3
  390. package/src/components/shell/MediaLibraryModal.tsx +59 -60
  391. package/src/components/shell/ProcessingIndicator.tsx +2 -2
  392. package/src/components/shell/RestoreModal.tsx +17 -16
  393. package/src/components/shell/SetPasswordForm.tsx +3 -3
  394. package/src/components/shell/SiteSettingsChatbot.tsx +61 -42
  395. package/src/components/shell/SiteSettingsDisplay.tsx +10 -20
  396. package/src/components/shell/SiteSettingsModal.tsx +24 -2
  397. package/src/components/shell/SiteSettingsTags.tsx +143 -0
  398. package/src/components/shell/SiteSettingsUsers.tsx +36 -26
  399. package/src/components/shell/SiteSettingsViewerAccess.tsx +2 -2
  400. package/src/components/shell/ViewerLoginForm.tsx +5 -4
  401. package/src/components/shell/reference-sources.ts +36 -0
  402. package/src/deck/index.ts +2 -2
  403. package/src/document/index.ts +2 -2
  404. package/src/hooks/useBlockDnd.ts +11 -0
  405. package/src/hooks/useBuildStatus.ts +53 -6
  406. package/src/hooks/useDocumentUploads.ts +1 -1
  407. package/src/hooks/useEditorPersistence.ts +141 -35
  408. package/src/hooks/useEditorPublish.ts +27 -31
  409. package/src/hooks/useMediaPipeline.ts +30 -24
  410. package/src/hooks/useNotice.ts +45 -0
  411. package/src/hooks/useSortableNavRow.ts +11 -0
  412. package/src/hooks/useSortableRow.ts +22 -2
  413. package/src/hooks/useStackedEscape.ts +62 -0
  414. package/src/lib/block-dnd.ts +6 -1
  415. package/src/lib/block-move.ts +3 -0
  416. package/src/lib/brand-swatches.ts +32 -0
  417. package/src/lib/container-ops.ts +5 -3
  418. package/src/lib/dexie.ts +24 -2
  419. package/src/lib/env.ts +9 -0
  420. package/src/lib/events.ts +1 -2
  421. package/src/lib/image-background.ts +31 -0
  422. package/src/lib/image-variant-plan.ts +92 -0
  423. package/src/lib/index-ops.ts +9 -18
  424. package/src/lib/index.ts +20 -4
  425. package/src/lib/loader.ts +28 -88
  426. package/src/lib/media-ops.ts +112 -0
  427. package/src/lib/nav-tree.ts +104 -4
  428. package/src/lib/nav.ts +196 -36
  429. package/src/lib/pages.ts +2 -3
  430. package/src/lib/platform-broker.ts +32 -14
  431. package/src/lib/reference-type.ts +3 -0
  432. package/src/lib/reference-validation.ts +69 -0
  433. package/src/lib/references.ts +130 -0
  434. package/src/lib/registry.ts +37 -0
  435. package/src/lib/sidecar-diagnostics.ts +29 -0
  436. package/src/lib/sidecars.ts +221 -0
  437. package/src/lib/slug.ts +6 -0
  438. package/src/lib/storage-tier.ts +38 -0
  439. package/src/lib/tags.ts +165 -0
  440. package/src/lib/theme-vars.ts +23 -0
  441. package/src/media/index.ts +1 -1
  442. package/src/media/queue.ts +3 -0
  443. package/src/media/utils.ts +19 -1
  444. package/src/media/{videoPoster.ts → video-poster.ts} +2 -2
  445. package/src/media/worker.ts +17 -8
  446. package/src/schemas/index.ts +1 -0
  447. package/src/schemas/media.ts +7 -2
  448. package/src/schemas/shared.ts +24 -1
  449. package/src/schemas/site-config.ts +6 -1
  450. package/src/schemas/tags.ts +33 -0
  451. package/src/storage/memory.ts +178 -0
  452. package/src/storage/types.ts +16 -3
  453. package/src/types/database.ts +2 -0
  454. package/dist/chunk-DNY72JZN.js +0 -86
  455. package/dist/chunk-F2LYQPXV.js +0 -77
  456. package/dist/chunk-JH762VUH.js +0 -128
  457. package/dist/chunk-K7DYZXVU.js +0 -138
  458. package/dist/components/primitives/defineHeadingSection.d.ts.map +0 -1
  459. package/dist/components/primitives/gridDrop.d.ts.map +0 -1
  460. package/dist/components/shared/UploadRejectionAlert.d.ts.map +0 -1
  461. package/dist/components/shell/BuildStatusIndicator.d.ts +0 -7
  462. package/dist/components/shell/BuildStatusIndicator.d.ts.map +0 -1
  463. package/dist/components/shell/blockMoveDispatch.d.ts.map +0 -1
  464. package/dist/hooks/index.d.ts +0 -9
  465. package/dist/hooks/index.d.ts.map +0 -1
  466. package/dist/lib/grid.d.ts +0 -2
  467. package/dist/lib/grid.d.ts.map +0 -1
  468. package/dist/lib/safeRedirect.d.ts.map +0 -1
  469. package/dist/media/videoPoster.d.ts.map +0 -1
  470. package/src/components/brandguide/ColorSwatchSettings.d.ts.map +0 -1
  471. package/src/components/brandguide/Colors.d.ts.map +0 -1
  472. package/src/components/primitives/CustomParagraph.d.ts.map +0 -1
  473. package/src/components/primitives/EditableGrid.d.ts.map +0 -1
  474. package/src/components/primitives/EditablePlainText.d.ts.map +0 -1
  475. package/src/components/primitives/EditableRichText.d.ts.map +0 -1
  476. package/src/components/primitives/HeadingSection.d.ts.map +0 -1
  477. package/src/components/primitives/IconPicker.d.ts.map +0 -1
  478. package/src/components/primitives/LinkPopover.d.ts.map +0 -1
  479. package/src/components/primitives/MediaSettingsForms.d.ts.map +0 -1
  480. package/src/components/primitives/ResolvedMedia.d.ts.map +0 -1
  481. package/src/components/primitives/RichTextToolbar.d.ts.map +0 -1
  482. package/src/components/primitives/tiptap-presets.d.ts.map +0 -1
  483. package/src/components/primitives/useEditableCollection.d.ts.map +0 -1
  484. package/src/components/primitives/useEditablePlainText.d.ts.map +0 -1
  485. package/src/components/primitives/useEditableRichText.d.ts.map +0 -1
  486. package/src/components/sections/Button/CTAButton.d.ts.map +0 -1
  487. package/src/components/sections/Button/index.d.ts.map +0 -1
  488. package/src/components/sections/Colors/index.d.ts.map +0 -1
  489. package/src/components/sections/IconList/IconList.d.ts.map +0 -1
  490. package/src/components/sections/IconList/IconListSettings.d.ts.map +0 -1
  491. package/src/components/sections/IconList/index.d.ts.map +0 -1
  492. package/src/components/sections/LinkHeading/index.d.ts.map +0 -1
  493. package/src/components/sections/Prose/Prose.d.ts.map +0 -1
  494. package/src/components/sections/Prose/index.d.ts.map +0 -1
  495. package/src/components/sections/SubHeading/index.d.ts.map +0 -1
  496. package/src/components/sections/SubSubHeading/index.d.ts.map +0 -1
  497. package/src/components/sections/register-schemas.d.ts.map +0 -1
  498. package/src/components/shared/Button.d.ts.map +0 -1
  499. package/src/components/shared/Checkbox.d.ts.map +0 -1
  500. package/src/components/shared/FormLabel.d.ts.map +0 -1
  501. package/src/components/shared/IconButton.d.ts.map +0 -1
  502. package/src/components/shared/Input.d.ts.map +0 -1
  503. package/src/components/shared/Select.d.ts.map +0 -1
  504. package/src/components/shared/icons.d.ts.map +0 -1
  505. package/src/components/shell/BuildStatusIndicator.tsx +0 -59
  506. package/src/components/shell/MediaLibraryContext.d.ts.map +0 -1
  507. package/src/hooks/index.ts +0 -8
  508. package/src/hooks/useResolvedMedia.d.ts.map +0 -1
  509. package/src/lib/cn.d.ts.map +0 -1
  510. package/src/lib/grid.d.ts.map +0 -1
  511. package/src/lib/grid.ts +0 -7
  512. package/src/lib/icons.d.ts.map +0 -1
  513. package/src/lib/loader.d.ts.map +0 -1
  514. package/src/lib/nav.d.ts.map +0 -1
  515. package/src/lib/registry.d.ts.map +0 -1
  516. package/src/lib/sanitize.d.ts.map +0 -1
  517. package/src/media/github.d.ts.map +0 -1
  518. package/src/media/index.d.ts.map +0 -1
  519. package/src/media/queue.d.ts.map +0 -1
  520. package/src/media/resolve.d.ts.map +0 -1
  521. package/src/media/types.d.ts.map +0 -1
  522. package/src/media/utils.d.ts.map +0 -1
  523. package/src/media/videoPoster.d.ts.map +0 -1
  524. package/src/schemas/auth.d.ts.map +0 -1
  525. package/src/schemas/media-grid-options.d.ts.map +0 -1
  526. package/src/schemas/media.d.ts.map +0 -1
  527. package/src/schemas/sections.d.ts.map +0 -1
  528. package/src/schemas/shared.d.ts.map +0 -1
  529. package/src/schemas/site-config.d.ts.map +0 -1
  530. /package/dist/{chunk-B7VBSE5X.js → chunk-3JDTXOIG.js} +0 -0
  531. /package/dist/{chunk-CXZ5YJG4.js → chunk-L45X7DKX.js} +0 -0
  532. /package/src/components/primitives/{gridDrop.ts → grid-drop.ts} +0 -0
  533. /package/src/components/shell/{blockMoveDispatch.ts → block-move-dispatch.ts} +0 -0
  534. /package/src/lib/{safeRedirect.ts → safe-redirect.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DragHandle.d.ts","sourceRoot":"","sources":["../../../src/components/editor/DragHandle.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU;kBAAiD,QAAQ,GAAG,OAAO;qDAexF,CAAC"}
1
+ {"version":3,"file":"DragHandle.d.ts","sourceRoot":"","sources":["../../../src/components/editor/DragHandle.tsx"],"names":[],"mappings":"AAKA,UAAU,eAAe;IACvB,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,UAAU,+GAgBrB,CAAC"}
@@ -1,13 +1,22 @@
1
+ import type { CSSProperties } from "react";
1
2
  /**
2
- * The horizontal insertion line shown at the top or bottom edge of a row during
3
- * a closest-edge drag-to-reorder, paired with `useSortableRow`'s `closestEdge`.
3
+ * The insertion line shown at an edge of a row/cell during a closest-edge
4
+ * drag-to-reorder, paired with `useSortableRow`'s (or `useSortableNavRow`'s)
5
+ * `closestEdge`. `top`/`bottom` render a horizontal line spanning the row;
6
+ * `left`/`right` render a vertical one spanning its height.
4
7
  *
5
- * `inset` starts the line at the nested-row indent, which is the ONLY thing
6
- * distinguishing "drop inside this group" from "drop before this group" — and
8
+ * `inset` starts a horizontal line at the nested-row indent — the ONLY thing
9
+ * distinguishing "drop inside this group" from "drop before this group", and
7
10
  * a group's last member slot from the top-level slot that follows it.
11
+ *
12
+ * `style` is the escape hatch for a caller whose perpendicular offset differs
13
+ * from the default (a wider cell gutter, a caller-specific `top`) — it wins
14
+ * over the default Tailwind transform/position via normal inline-style
15
+ * precedence, so callers only need to override the property that differs.
8
16
  */
9
- export declare function DropEdgeIndicator({ edge, inset }: {
10
- edge: "top" | "bottom" | null;
17
+ export declare function DropEdgeIndicator({ edge, inset, style, }: {
18
+ edge: "top" | "bottom" | "left" | "right" | null;
11
19
  inset?: boolean;
20
+ style?: CSSProperties;
12
21
  }): import("react/jsx-runtime").JSX.Element | null;
13
22
  //# sourceMappingURL=DropEdgeIndicator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropEdgeIndicator.d.ts","sourceRoot":"","sources":["../../../src/components/editor/DropEdgeIndicator.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAa,EAAE,EAAE;IAAE,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,kDAW5G"}
1
+ {"version":3,"file":"DropEdgeIndicator.d.ts","sourceRoot":"","sources":["../../../src/components/editor/DropEdgeIndicator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,KAAa,EACb,KAAK,GACN,EAAE;IACD,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,kDAmBA"}
@@ -3,6 +3,9 @@ import type { NavLocation } from "../../lib/nav-tree";
3
3
  interface Props {
4
4
  group: NavGroupEntry;
5
5
  entryIndex: number;
6
+ /** Total top-level entries — groups move among these only (never into a
7
+ * group, unlike a page). */
8
+ entryCount: number;
6
9
  memberCount: number;
7
10
  /** Opens the settings panel on mount. The `+ Add group` flow sets this so a
8
11
  * brand-new group lands with its label input focused. */
@@ -21,6 +24,6 @@ interface Props {
21
24
  * non-dragging ones then cleared the dragging row's state. */
22
25
  onDragStateChange?: (groupId: string, dragging: boolean) => void;
23
26
  }
24
- export declare function NavGroupRow({ group, entryIndex, memberCount, autoOpenSettings, onRename, onSetStartCollapsed, onDelete, onMove, onDragStateChange, }: Props): import("react/jsx-runtime").JSX.Element;
27
+ export declare function NavGroupRow({ group, entryIndex, entryCount, memberCount, autoOpenSettings, onRename, onSetStartCollapsed, onDelete, onMove, onDragStateChange, }: Props): import("react/jsx-runtime").JSX.Element;
25
28
  export {};
26
29
  //# sourceMappingURL=NavGroupRow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavGroupRow.d.ts","sourceRoot":"","sources":["../../../src/components/editor/NavGroupRow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAWtD,UAAU,KAAK;IACb,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB;8DAC0D;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,mBAAmB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IACrD;;;;;;;mEAO+D;IAC/D,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CAClE;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAwB,EACxD,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,GACnE,EAAE,KAAK,2CA2FP"}
1
+ {"version":3,"file":"NavGroupRow.d.ts","sourceRoot":"","sources":["../../../src/components/editor/NavGroupRow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAatD,UAAU,KAAK;IACb,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB;iCAC6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB;8DAC0D;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,mBAAmB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IACrD;;;;;;;mEAO+D;IAC/D,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CAClE;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAwB,EACpE,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,GACnE,EAAE,KAAK,2CAmHP"}
@@ -1 +1 @@
1
- {"version":3,"file":"PagesModal.d.ts","sourceRoot":"","sources":["../../../src/components/editor/PagesModal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAQtE,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAOlE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,+EAA+E;IAC/E,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxD,wBAAwB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAChE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7D,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC;IAClG,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC1D,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACzE,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CAwJhD"}
1
+ {"version":3,"file":"PagesModal.d.ts","sourceRoot":"","sources":["../../../src/components/editor/PagesModal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAUtE,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAOlE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,+EAA+E;IAC/E,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxD,wBAAwB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAChE,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7D,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC;IAClG,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC1D,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACzE,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,2CAkLhD"}
@@ -1,3 +1,3 @@
1
1
  import type { WrapperProps } from "../../lib/registry";
2
- export declare function SectionWrapper({ sectionId, sectionType, status, dirty, index, isLast, containerId, isContainerBlock, definition, options, audiences, access, onAccessChange, onStatusChange, onSectionChange, onReorder, onRequestInsert, onDelete, onMoveSection, onAddChild, mainStatus, contentDiffersFromMain, isLocalOnly, lockedBy, onTakeover, onEditIntent, children, }: WrapperProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function SectionWrapper({ sectionId, sectionType, status, dirty, index, isLast, sectionCount, containerId, isContainerBlock, definition, options, audiences, access, onAccessChange, tagging, onStatusChange, onSectionChange, onReorder, onRequestInsert, onDelete, onMoveSection, onAddChild, mainStatus, contentDiffersFromMain, isLocalOnly, lockedBy, onTakeover, onEditIntent, children, }: WrapperProps): import("react/jsx-runtime").JSX.Element;
3
3
  //# sourceMappingURL=SectionWrapper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SectionWrapper.d.ts","sourceRoot":"","sources":["../../../src/components/editor/SectionWrapper.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIvD,wBAAgB,cAAc,CAAC,EAC7B,SAAS,EACT,WAAW,EACX,MAAM,EACN,KAAK,EACL,KAAK,EACL,MAAM,EACN,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,OAAO,EACP,SAAS,EACT,MAAM,EACN,cAAc,EACd,cAAc,EACd,eAAe,EACf,SAAS,EACT,eAAe,EACf,QAAQ,EACR,aAAa,EACb,UAAU,EACV,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,QAAQ,GACT,EAAE,YAAY,2CA0Vd"}
1
+ {"version":3,"file":"SectionWrapper.d.ts","sourceRoot":"","sources":["../../../src/components/editor/SectionWrapper.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKvD,wBAAgB,cAAc,CAAC,EAC7B,SAAS,EACT,WAAW,EACX,MAAM,EACN,KAAK,EACL,KAAK,EACL,MAAM,EACN,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,OAAO,EACP,SAAS,EACT,MAAM,EACN,cAAc,EACd,OAAO,EACP,cAAc,EACd,eAAe,EACf,SAAS,EACT,eAAe,EACf,QAAQ,EACR,aAAa,EACb,UAAU,EACV,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,QAAQ,GACT,EAAE,YAAY,2CA8Xd"}
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsForm.d.ts","sourceRoot":"","sources":["../../../src/components/editor/SettingsForm.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AAa3E,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,UAAU,iBAAiB;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;CAC9C;AAuKD,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,iBAAiB,2CA8BjF"}
1
+ {"version":3,"file":"SettingsForm.d.ts","sourceRoot":"","sources":["../../../src/components/editor/SettingsForm.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AAe3E,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,UAAU,iBAAiB;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;CAC9C;AAmLD,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,iBAAiB,2CAiCjF"}
@@ -0,0 +1,15 @@
1
+ import type { TagEntry } from "../../schemas/tags";
2
+ interface TagIndicatorProps {
3
+ /** The site's tag registry, already reconciled (siteTags). */
4
+ tags: TagEntry[];
5
+ /** The ids of the tags on this section. */
6
+ assignedIds: string[];
7
+ onToggle: (tagId: string, tagged: boolean) => void;
8
+ /** Create a tag from a typed name and put it on this section. */
9
+ onCreate: (label: string) => void;
10
+ /** Display-only mode — the pill still summarizes, but the picker never opens. */
11
+ disabled?: boolean;
12
+ }
13
+ export declare function TagIndicator({ tags, assignedIds, onToggle, onCreate, disabled }: TagIndicatorProps): import("react/jsx-runtime").JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=TagIndicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagIndicator.d.ts","sourceRoot":"","sources":["../../../src/components/editor/TagIndicator.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAMnD,UAAU,iBAAiB;IACzB,8DAA8D;IAC9D,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,2CAA2C;IAC3C,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACnD,iEAAiE;IACjE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAyDlG"}
@@ -6,35 +6,44 @@ import {
6
6
  buildBlockDragData,
7
7
  buildBlockDropData,
8
8
  canDropBlock,
9
- isBlockDragData
10
- } from "../../chunk-6BZ2KNTP.js";
11
- import "../../chunk-F2LYQPXV.js";
12
- import "../../chunk-K7DYZXVU.js";
13
- import {
14
- AddIcon
15
- } from "../../chunk-JH762VUH.js";
9
+ isBlockDragData,
10
+ useEditorContext
11
+ } from "../../chunk-NX7TFHA4.js";
16
12
  import {
17
13
  Kbd,
18
14
  Popover,
19
15
  PopoverItem,
20
16
  Tooltip
21
- } from "../../chunk-IINIZBQB.js";
22
- import "../../chunk-WUJ3XNFI.js";
17
+ } from "../../chunk-JCDZAFX2.js";
18
+ import "../../chunk-GGYY3JQJ.js";
19
+ import {
20
+ CheckboxBox
21
+ } from "../../chunk-JR24U7FJ.js";
22
+ import {
23
+ DropEdgeIndicator
24
+ } from "../../chunk-RIITGTV3.js";
23
25
  import {
24
26
  IconButton
25
27
  } from "../../chunk-IIDKW7AV.js";
26
- import "../../chunk-FRE2CCLV.js";
27
- import "../../chunk-4RNF2DRG.js";
28
+ import "../../chunk-HHNPSKPT.js";
29
+ import "../../chunk-CDBURDPX.js";
30
+ import "../../chunk-XDEPXTBY.js";
28
31
  import {
29
32
  cn
30
33
  } from "../../chunk-7EOSDFS3.js";
31
- import "../../chunk-NHN2LSIU.js";
32
- import "../../chunk-AHALSCQH.js";
33
- import "../../chunk-4TZJZU2T.js";
34
- import "../../chunk-GGXZZ77Z.js";
34
+ import {
35
+ tagDisplayLabel
36
+ } from "../../chunk-4WQ36ZP7.js";
37
+ import "../../chunk-GNF6KFQ7.js";
38
+ import "../../chunk-S7QRHUWO.js";
39
+ import {
40
+ REFERENCE_TYPE
41
+ } from "../../chunk-5GFACGSN.js";
42
+ import "../../chunk-APIJPTFG.js";
35
43
  import "../../chunk-JSBRDJBE.js";
36
44
 
37
45
  // src/components/editor/InsertButton.tsx
46
+ import { Plus } from "lucide-react";
38
47
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
39
48
  function InsertButton({ index, onInsert }) {
40
49
  return /* @__PURE__ */ jsx(Tooltip, { content: /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -46,7 +55,7 @@ function InsertButton({ index, onInsert }) {
46
55
  ] }), children: /* @__PURE__ */ jsx(
47
56
  IconButton,
48
57
  {
49
- icon: /* @__PURE__ */ jsx(AddIcon, { size: 18 }),
58
+ icon: /* @__PURE__ */ jsx(Plus, { size: 18 }),
50
59
  label: "Add section",
51
60
  className: "pointer-events-auto rounded-md text-base-contrast-light/80 hover:bg-base-contrast-light/10 hover:text-base-contrast",
52
61
  tabIndex: -1,
@@ -204,10 +213,10 @@ function deriveStatusDisplay({ mainStatus, savedStatus, contentDiffers, isLocalO
204
213
  };
205
214
  }
206
215
  var dotColorClasses = {
207
- live: "bg-green-500",
208
- draft: "bg-gray-400",
209
- archived: "bg-white border-gray-300",
210
- modified: "bg-orange-400"
216
+ live: "bg-status-live-text",
217
+ draft: "bg-status-draft-text",
218
+ archived: "bg-white border-status-draft-text",
219
+ modified: "bg-status-modified-text"
211
220
  };
212
221
  var STATUSES = ["draft", "live", "archived"];
213
222
  function StatusRadioList({ status, onChange, onClose, ariaLabel = "Section status" }) {
@@ -333,20 +342,70 @@ function AudienceIndicator({ access, audiences, onChange, disabled }) {
333
342
  }
334
343
 
335
344
  // src/components/editor/SectionWrapper.tsx
336
- import { useState as useState4, useRef as useRef2, useEffect as useEffect2 } from "react";
337
- import { ArrowRightLeft, Plus } from "lucide-react";
345
+ import { useState as useState4, useRef as useRef2, useEffect as useEffect2, useId } from "react";
346
+ import { ArrowRightLeft, Plus as Plus3, ChevronUp, ChevronDown } from "lucide-react";
347
+
348
+ // src/components/editor/TagIndicator.tsx
349
+ import { useState as useState2 } from "react";
350
+ import { Plus as Plus2 } from "lucide-react";
351
+ import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
352
+ function TagIndicator({ tags, assignedIds, onToggle, onCreate, disabled }) {
353
+ const [draft, setDraft] = useState2("");
354
+ const assigned = tags.filter((t) => assignedIds.includes(t.id));
355
+ const labelText = assigned.length === 0 ? "No tags" : assigned.length === 1 ? tagDisplayLabel(assigned[0].label) : `${assigned.length} tags`;
356
+ const ariaSummary = assigned.length === 0 ? "none" : assigned.map((t) => tagDisplayLabel(t.label)).join(", ");
357
+ function submit(e) {
358
+ e.preventDefault();
359
+ const label = draft.trim();
360
+ if (!label) return;
361
+ onCreate(label);
362
+ setDraft("");
363
+ }
364
+ return /* @__PURE__ */ jsx5(
365
+ IndicatorPill,
366
+ {
367
+ dots: [],
368
+ label: labelText,
369
+ ariaLabel: `Tags: ${ariaSummary}`,
370
+ buttonClassName: assigned.length === 0 ? "text-base-contrast-light" : void 0,
371
+ disabled,
372
+ clickContent: /* @__PURE__ */ jsxs5("div", { className: "w-56 py-1", children: [
373
+ tags.length > 0 && /* @__PURE__ */ jsx5("ul", { role: "list", className: "max-h-64 overflow-y-auto", children: tags.map((t) => {
374
+ const checked = assignedIds.includes(t.id);
375
+ return /* @__PURE__ */ jsx5("li", { children: /* @__PURE__ */ jsxs5(PopoverItem, { role: "checkbox", "aria-checked": checked, onClick: () => onToggle(t.id, !checked), children: [
376
+ /* @__PURE__ */ jsx5(CheckboxBox, { checked }),
377
+ /* @__PURE__ */ jsx5("span", { className: cn("truncate font-medium text-base-contrast", !t.label && "italic text-base-contrast/60"), children: tagDisplayLabel(t.label) })
378
+ ] }) }, t.id);
379
+ }) }),
380
+ /* @__PURE__ */ jsxs5("form", { onSubmit: submit, className: cn("flex items-center gap-1 px-3 py-1.5", tags.length > 0 && "border-t border-base-200"), children: [
381
+ /* @__PURE__ */ jsx5(
382
+ "input",
383
+ {
384
+ "aria-label": "New tag",
385
+ value: draft,
386
+ placeholder: tags.length > 0 ? "New tag" : "Create the first tag",
387
+ onChange: (e) => setDraft(e.target.value),
388
+ className: "min-w-0 flex-1 rounded border border-base-200 bg-base px-2 py-1 text-xs text-base-contrast focus:border-base-contrast focus:outline-none"
389
+ }
390
+ ),
391
+ /* @__PURE__ */ jsx5(IconButton, { icon: /* @__PURE__ */ jsx5(Plus2, { size: 14 }), label: "Create tag", size: "sm", type: "submit" })
392
+ ] })
393
+ ] })
394
+ }
395
+ );
396
+ }
338
397
 
339
398
  // src/components/editor/LockBadge.tsx
340
399
  import { Lock } from "lucide-react";
341
- import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
400
+ import { jsx as jsx6, jsxs as jsxs6 } from "react/jsx-runtime";
342
401
  function LockBadge({ email, onTakeover }) {
343
- return /* @__PURE__ */ jsxs5("span", { className: "pointer-events-auto inline-flex items-center gap-1.5 rounded-full bg-status-modified-bg px-2 py-0.5 text-xs font-medium text-status-modified-text align-middle", children: [
344
- /* @__PURE__ */ jsx5(Lock, { size: 12, strokeWidth: 2.5, "aria-hidden": "true" }),
345
- /* @__PURE__ */ jsxs5("span", { className: "whitespace-nowrap", children: [
402
+ return /* @__PURE__ */ jsxs6("span", { className: "pointer-events-auto inline-flex items-center gap-1.5 rounded-full bg-status-modified-bg px-2 py-0.5 text-xs font-medium text-status-modified-text align-middle", children: [
403
+ /* @__PURE__ */ jsx6(Lock, { size: 12, strokeWidth: 2.5, "aria-hidden": "true" }),
404
+ /* @__PURE__ */ jsxs6("span", { className: "whitespace-nowrap", children: [
346
405
  email,
347
406
  " is editing"
348
407
  ] }),
349
- onTakeover && /* @__PURE__ */ jsx5(
408
+ onTakeover && /* @__PURE__ */ jsx6(
350
409
  "button",
351
410
  {
352
411
  type: "button",
@@ -361,24 +420,12 @@ function LockBadge({ email, onTakeover }) {
361
420
  ] });
362
421
  }
363
422
 
364
- // src/components/shell/EditorContext.tsx
365
- import { createContext, useContext, useState as useState2, useCallback as useCallback2 } from "react";
366
- import { jsx as jsx6 } from "react/jsx-runtime";
367
- var EditorContext = createContext(null);
368
- function useEditorContext() {
369
- const context = useContext(EditorContext);
370
- if (!context) {
371
- throw new Error("useEditorContext must be used within an EditorProvider");
372
- }
373
- return context;
374
- }
375
-
376
423
  // src/components/shell/EditorModalContext.tsx
377
- import { createContext as createContext2, useContext as useContext2, useState as useState3, useCallback as useCallback3 } from "react";
424
+ import { createContext, useContext, useState as useState3, useCallback as useCallback2 } from "react";
378
425
  import { jsx as jsx7 } from "react/jsx-runtime";
379
- var EditorModalContext = createContext2(null);
426
+ var EditorModalContext = createContext(null);
380
427
  function useEditorModal() {
381
- const context = useContext2(EditorModalContext);
428
+ const context = useContext(EditorModalContext);
382
429
  if (!context) {
383
430
  throw new Error("useEditorModal must be used within an EditorModalProvider");
384
431
  }
@@ -386,7 +433,7 @@ function useEditorModal() {
386
433
  }
387
434
 
388
435
  // src/components/editor/SectionWrapper.tsx
389
- import { Fragment as Fragment2, jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
436
+ import { Fragment as Fragment2, jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
390
437
  function SectionWrapper({
391
438
  sectionId,
392
439
  sectionType,
@@ -394,6 +441,7 @@ function SectionWrapper({
394
441
  dirty,
395
442
  index,
396
443
  isLast,
444
+ sectionCount,
397
445
  containerId,
398
446
  isContainerBlock,
399
447
  definition,
@@ -401,6 +449,7 @@ function SectionWrapper({
401
449
  audiences,
402
450
  access,
403
451
  onAccessChange,
452
+ tagging,
404
453
  onStatusChange,
405
454
  onSectionChange,
406
455
  onReorder,
@@ -432,6 +481,7 @@ function SectionWrapper({
432
481
  const handleRef = useRef2(null);
433
482
  const [isDragging, setIsDragging] = useState4(false);
434
483
  const [closestEdge, setClosestEdge] = useState4(null);
484
+ const dragHintId = useId();
435
485
  const hasSettings = !!((definition.settings || definition.settingsForm) && onSectionChange);
436
486
  useEffect2(() => {
437
487
  const block = blockRef.current;
@@ -469,7 +519,8 @@ function SectionWrapper({
469
519
  blockId: sectionId,
470
520
  containerId,
471
521
  index,
472
- isContainer: isContainerBlock
522
+ isContainer: isContainerBlock,
523
+ isReference: sectionType === REFERENCE_TYPE
473
524
  }),
474
525
  onGenerateDragPreview: () => {
475
526
  dropElement.style.opacity = "0.4";
@@ -517,7 +568,7 @@ function SectionWrapper({
517
568
  cancelled = true;
518
569
  cleanup?.();
519
570
  };
520
- }, [sectionId, index, containerId, isContainerBlock, isEditMode, isLocked]);
571
+ }, [sectionId, sectionType, index, containerId, isContainerBlock, isEditMode, isLocked]);
521
572
  function handleSettingsClick() {
522
573
  if (!onSectionChange) return;
523
574
  if (definition.settingsForm) {
@@ -550,14 +601,14 @@ function SectionWrapper({
550
601
  }
551
602
  if (!isEditMode) {
552
603
  if (status && status !== "live") {
553
- return /* @__PURE__ */ jsxs6(
604
+ return /* @__PURE__ */ jsxs7(
554
605
  "div",
555
606
  {
556
607
  className: "relative",
557
608
  "data-section-id": sectionId,
558
609
  "data-section-type": sectionType,
559
610
  children: [
560
- /* @__PURE__ */ jsx8("div", { className: "pointer-events-none absolute right-0 bottom-full z-30 mb-1", children: /* @__PURE__ */ jsxs6(
611
+ /* @__PURE__ */ jsx8("div", { className: "pointer-events-none absolute right-0 bottom-full z-30 mb-1", children: /* @__PURE__ */ jsxs7(
561
612
  "span",
562
613
  {
563
614
  className: cn(
@@ -578,7 +629,7 @@ function SectionWrapper({
578
629
  return /* @__PURE__ */ jsx8(Fragment2, { children });
579
630
  }
580
631
  const alwaysShow = showAllChrome || isActive;
581
- return /* @__PURE__ */ jsxs6(
632
+ return /* @__PURE__ */ jsxs7(
582
633
  "div",
583
634
  {
584
635
  ref: blockRef,
@@ -603,26 +654,52 @@ function SectionWrapper({
603
654
  children: /* @__PURE__ */ jsx8(InsertButton, { index, onInsert: onRequestInsert })
604
655
  }
605
656
  ),
606
- !isLocked && /* @__PURE__ */ jsxs6(
657
+ !isLocked && /* @__PURE__ */ jsxs7(
607
658
  "div",
608
659
  {
609
660
  className: cn(
610
661
  "absolute left-0 bottom-full z-30 hover:z-[60] mb-1 flex items-center gap-1.5 transition-opacity",
611
- alwaysShow ? "opacity-100" : "opacity-0 group-hover:opacity-100"
662
+ // group-focus-within: this cluster's own tab stops (DragHandle,
663
+ // Move up/down) would otherwise be focusable but invisible —
664
+ // hover alone doesn't cover keyboard navigation.
665
+ alwaysShow ? "opacity-100" : "opacity-0 group-hover:opacity-100 group-focus-within:opacity-100"
612
666
  ),
613
667
  children: [
614
- /* @__PURE__ */ jsxs6("div", { className: "relative -ml-[34px] flex flex-col items-center", children: [
615
- /* @__PURE__ */ jsx8(DragHandle, { ref: handleRef }),
668
+ /* @__PURE__ */ jsxs7("div", { className: "relative -ml-[34px] flex flex-col items-center", children: [
669
+ /* @__PURE__ */ jsx8(DragHandle, { ref: handleRef, tabIndex: 0, "aria-describedby": dragHintId }),
616
670
  onRequestInsert && !isDragging && chromeReady && // Below xl the gutter can't fit the plus beside the handle, so it
617
671
  // hangs below it (absolute → no row-height contribution: the handle
618
672
  // stays put and the pair stacks DOWN instead of centering).
619
673
  /* @__PURE__ */ jsx8("div", { className: "absolute top-full xl:hidden", children: /* @__PURE__ */ jsx8(InsertButton, { index, onInsert: onRequestInsert }) })
620
674
  ] }),
621
- /* @__PURE__ */ jsx8("span", { className: "pointer-events-none select-none whitespace-nowrap text-sm capitalize text-base-contrast-light/80", children: definition.label })
675
+ /* @__PURE__ */ jsx8("span", { className: "pointer-events-none select-none whitespace-nowrap text-sm capitalize text-base-contrast-light/80", children: definition.label }),
676
+ onReorder && /* @__PURE__ */ jsxs7("div", { className: "pointer-events-auto flex items-center", children: [
677
+ /* @__PURE__ */ jsx8(
678
+ IconButton,
679
+ {
680
+ icon: /* @__PURE__ */ jsx8(ChevronUp, { size: 14 }),
681
+ label: sectionCount ? `Move up (position ${index + 1} of ${sectionCount})` : "Move up",
682
+ size: "sm",
683
+ disabled: index === 0,
684
+ onClick: () => onReorder(index, index - 1)
685
+ }
686
+ ),
687
+ /* @__PURE__ */ jsx8(
688
+ IconButton,
689
+ {
690
+ icon: /* @__PURE__ */ jsx8(ChevronDown, { size: 14 }),
691
+ label: sectionCount ? `Move down (position ${index + 1} of ${sectionCount})` : "Move down",
692
+ size: "sm",
693
+ disabled: isLast,
694
+ onClick: () => onReorder(index, index + 1)
695
+ }
696
+ )
697
+ ] }),
698
+ /* @__PURE__ */ jsx8("span", { id: dragHintId, className: "sr-only", children: "Use Move up / Move down to reorder with the keyboard." })
622
699
  ]
623
700
  }
624
701
  ),
625
- /* @__PURE__ */ jsxs6(
702
+ /* @__PURE__ */ jsxs7(
626
703
  "div",
627
704
  {
628
705
  className: cn(
@@ -657,22 +734,26 @@ function SectionWrapper({
657
734
  onChange: (newAccess) => onAccessChange?.(newAccess)
658
735
  }
659
736
  ) }),
660
- !isLocked && onAddChild && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: /* @__PURE__ */ jsxs6(Fragment2, { children: [
661
- /* @__PURE__ */ jsx8(Kbd, { children: "Add" }),
662
- " a block"
663
- ] }), children: /* @__PURE__ */ jsx8(
737
+ /* @__PURE__ */ jsx8("div", { className: "pointer-events-auto", children: /* @__PURE__ */ jsx8(
738
+ TagIndicator,
739
+ {
740
+ tags: tagging.tags,
741
+ assignedIds: tagging.assignedIds,
742
+ disabled: isLocked || !tagging.onToggle || !tagging.onCreate,
743
+ onToggle: (tagId, tagged) => tagging.onToggle?.(tagId, tagged),
744
+ onCreate: (label) => tagging.onCreate?.(label)
745
+ }
746
+ ) }),
747
+ !isLocked && onAddChild && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: "Add a block", children: /* @__PURE__ */ jsx8(
664
748
  IconButton,
665
749
  {
666
- icon: /* @__PURE__ */ jsx8(Plus, { size: 16 }),
750
+ icon: /* @__PURE__ */ jsx8(Plus3, { size: 16 }),
667
751
  label: "Add block",
668
752
  onClick: onAddChild,
669
753
  className: "pointer-events-auto hover:text-primary"
670
754
  }
671
755
  ) }),
672
- !isLocked && onMoveSection && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: /* @__PURE__ */ jsxs6(Fragment2, { children: [
673
- /* @__PURE__ */ jsx8(Kbd, { children: "Move" }),
674
- " to page"
675
- ] }), children: /* @__PURE__ */ jsx8(
756
+ !isLocked && onMoveSection && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: "Move to page", children: /* @__PURE__ */ jsx8(
676
757
  IconButton,
677
758
  {
678
759
  icon: /* @__PURE__ */ jsx8(ArrowRightLeft, { size: 16 }),
@@ -681,28 +762,18 @@ function SectionWrapper({
681
762
  className: "pointer-events-auto hover:text-primary"
682
763
  }
683
764
  ) }),
684
- !isLocked && hasSettings && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: /* @__PURE__ */ jsxs6(Fragment2, { children: [
685
- /* @__PURE__ */ jsx8(Kbd, { children: "Edit" }),
686
- " settings"
687
- ] }), children: /* @__PURE__ */ jsx8(SettingsButton, { onClick: handleSettingsClick }) }),
688
- !isLocked && onDelete && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: /* @__PURE__ */ jsxs6(Fragment2, { children: [
689
- /* @__PURE__ */ jsx8(Kbd, { children: "Delete" }),
690
- " section"
691
- ] }), children: /* @__PURE__ */ jsx8(DeleteButton, { onDelete }) })
765
+ !isLocked && hasSettings && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: "Edit settings", children: /* @__PURE__ */ jsx8(SettingsButton, { onClick: handleSettingsClick }) }),
766
+ !isLocked && onDelete && /* @__PURE__ */ jsx8(Tooltip, { className: "pointer-events-auto", content: "Delete section", children: /* @__PURE__ */ jsx8(DeleteButton, { onDelete }) })
692
767
  ]
693
768
  }
694
769
  ),
695
- closestEdge === "top" && /* @__PURE__ */ jsx8(
696
- "div",
770
+ /* @__PURE__ */ jsx8(
771
+ DropEdgeIndicator,
697
772
  {
698
- className: "absolute right-0 left-0 z-10 h-0.5 bg-primary",
699
- style: {
700
- top: "calc(var(--section-gap) / 2 * -1)",
701
- transform: "translateY(-50%)"
702
- }
773
+ edge: closestEdge === "bottom" && !isLast ? null : closestEdge,
774
+ style: closestEdge === "top" ? { top: "calc(var(--section-gap) / 2 * -1)" } : closestEdge === "bottom" ? { transform: "none" } : void 0
703
775
  }
704
776
  ),
705
- closestEdge === "bottom" && isLast && /* @__PURE__ */ jsx8("div", { className: "absolute right-0 bottom-0 left-0 z-10 h-0.5 bg-primary" }),
706
777
  isLocked ? (
707
778
  // React 19 supports the boolean `inert` prop — blocks focus, pointer,
708
779
  // and edits to another editor's locked content. Only wrapped when
@@ -10,7 +10,7 @@ interface DocumentDropZoneProps {
10
10
  *
11
11
  * Deliberately thin on validation: every rejection (wrong type, too large, no
12
12
  * documents store) belongs to `uploadDocument`, which already routes typed copy
13
- * through the pipeline's `onUploadError` → `UploadRejectionAlert` channel. The
13
+ * through the pipeline's `onUploadError` → `InlineAlert` channel. The
14
14
  * one judgement made here is WHICH file of a multi-file drop to hand over.
15
15
  */
16
16
  export declare function DocumentDropZone({ onDocumentSelected, className }: DocumentDropZoneProps): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"EditableGrid.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/EditableGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAS3E,UAAU,iBAAiB,CAAC,CAAC;IAC3B,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;IAClF,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;2FACuF;IACvF,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAC9B,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,KAAK,EACL,SAAS,GACV,EAAE,iBAAiB,CAAC,CAAC,CAAC,2CAqItB"}
1
+ {"version":3,"file":"EditableGrid.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/EditableGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAU3E,UAAU,iBAAiB,CAAC,CAAC;IAC3B,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;IAClF,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;2FACuF;IACvF,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAC9B,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,KAAK,EACL,SAAS,GACV,EAAE,iBAAiB,CAAC,CAAC,CAAC,2CAqItB"}
@@ -1 +1 @@
1
- {"version":3,"file":"EditableList.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/EditableList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAMpE,UAAU,iBAAiB,CAAC,CAAC;IAC3B,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAC9B,KAAK,EACL,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,SAAS,GACV,EAAE,iBAAiB,CAAC,CAAC,CAAC,2CA+CtB"}
1
+ {"version":3,"file":"EditableList.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/EditableList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAS9C,UAAU,iBAAiB,CAAC,CAAC;IAC3B,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE;QAAE,UAAU,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAC9B,KAAK,EACL,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,SAAS,GACV,EAAE,iBAAiB,CAAC,CAAC,CAAC,2CA8CtB"}
@@ -3,8 +3,11 @@ interface Props {
3
3
  tag: "h2" | "h3" | "h4";
4
4
  placeholder: string;
5
5
  className?: string;
6
+ /** Overrides the heading-derived id — the `<heading>-<reference id>` anchor stamped on a copy a
7
+ * Reference pulled in (withNavAnchors). */
8
+ anchor?: string;
6
9
  onChange?: (heading: string) => void;
7
10
  }
8
- export declare function HeadingSection({ heading, tag, placeholder, className, onChange }: Props): import("react/jsx-runtime").JSX.Element;
11
+ export declare function HeadingSection({ heading, tag, placeholder, className, anchor, onChange }: Props): import("react/jsx-runtime").JSX.Element;
9
12
  export {};
10
13
  //# sourceMappingURL=HeadingSection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeadingSection.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/HeadingSection.tsx"],"names":[],"mappings":"AAIA,UAAU,KAAK;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,KAAK,2CAYvF"}
1
+ {"version":3,"file":"HeadingSection.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/HeadingSection.tsx"],"names":[],"mappings":"AAIA,UAAU,KAAK;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;gDAC4C;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,2CAY/F"}
@@ -1,3 +1,4 @@
1
+ import type { ImageBackdrop } from "../../lib/image-background";
1
2
  interface ResolvedMediaProps {
2
3
  imageId: string | undefined;
3
4
  src?: string;
@@ -8,7 +9,10 @@ interface ResolvedMediaProps {
8
9
  className?: string;
9
10
  imgClassName?: string;
10
11
  invertFrom?: string;
12
+ /** Painted above the loading placeholder and below the media, so it holds in
13
+ * the zero-JS viewer (where the placeholder never fades) and after load. */
14
+ backdrop?: ImageBackdrop;
11
15
  }
12
- export declare function ResolvedMedia({ imageId, src: propSrc, srcset: propSrcset, alt: propAlt, width: propWidth, height: propHeight, className, imgClassName, invertFrom, }: ResolvedMediaProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function ResolvedMedia({ imageId, src: propSrc, srcset: propSrcset, alt: propAlt, width: propWidth, height: propHeight, className, imgClassName, invertFrom, backdrop, }: ResolvedMediaProps): import("react/jsx-runtime").JSX.Element;
13
17
  export {};
14
18
  //# sourceMappingURL=ResolvedMedia.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResolvedMedia.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/ResolvedMedia.tsx"],"names":[],"mappings":"AAKA,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,SAAS,EACT,YAAY,EACZ,UAAU,GACX,EAAE,kBAAkB,2CAiFpB"}
1
+ {"version":3,"file":"ResolvedMedia.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/ResolvedMedia.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,UAAU,kBAAkB;IAC1B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;iFAC6E;IAC7E,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,SAAS,EACT,YAAY,EACZ,UAAU,EACV,QAAQ,GACT,EAAE,kBAAkB,2CAyFpB"}
@@ -27,4 +27,4 @@ export declare function defineHeadingSection<T extends string>(config: HeadingSe
27
27
  };
28
28
  }>;
29
29
  export {};
30
- //# sourceMappingURL=defineHeadingSection.d.ts.map
30
+ //# sourceMappingURL=define-heading-section.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"define-heading-section.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/define-heading-section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,UAAU,oBAAoB,CAAC,CAAC,SAAS,MAAM;IAC7C,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,uFAAuF;IACvF,OAAO,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC5B,oCAAoC;IACpC,GAAG,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,mFAAmF;IACnF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,8DAA8D;IAC9D,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;;;;;GA6CrF"}
@@ -15,4 +15,4 @@ export declare function resolveDropIndex({ fromIndex, targetIndex, edge, sameCol
15
15
  edge: "left" | "right" | null;
16
16
  sameCollection: boolean;
17
17
  }): number;
18
- //# sourceMappingURL=gridDrop.d.ts.map
18
+ //# sourceMappingURL=grid-drop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-drop.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/grid-drop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,WAAW,EACX,IAAI,EACJ,cAAc,GACf,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;CACzB,GAAG,MAAM,CAIT"}
@@ -5,7 +5,7 @@ export { EditableGrid } from "./EditableGrid";
5
5
  export { ImageDropZone } from "./ImageDropZone";
6
6
  export { ResolvedMedia } from "./ResolvedMedia";
7
7
  export { LinkPopover } from "./LinkPopover";
8
- export { defineHeadingSection } from "./defineHeadingSection";
8
+ export { defineHeadingSection } from "./define-heading-section";
9
9
  export { MediaBlock } from "../sections/Media/MediaBlock";
10
10
  export { LinkField } from "../shared/LinkField";
11
11
  export { usePages, PagesContext, type PagesContextValue } from "../shared/PagesContext";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAI1D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/primitives/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAI1D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}