@pantheon-systems/puck-css 0.12.0 → 0.14.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 (559) hide show
  1. package/README.md +1 -1
  2. package/dist/agent/components/AgentActionButton.js +0 -13
  3. package/dist/agent/components/AgentActionButton.js.map +1 -1
  4. package/dist/agent/components/AgentActionModal.js +0 -13
  5. package/dist/agent/components/AgentActionModal.js.map +1 -1
  6. package/dist/agent/components/AgentStatusPanel.js +0 -10
  7. package/dist/agent/components/AgentStatusPanel.js.map +1 -1
  8. package/dist/agent/components/index.js +0 -5
  9. package/dist/agent/components/index.js.map +1 -1
  10. package/dist/agent/useAgentEdit.js +0 -12
  11. package/dist/agent/useAgentEdit.js.map +1 -1
  12. package/dist/agent/useAgentTrigger.js +0 -29
  13. package/dist/agent/useAgentTrigger.js.map +1 -1
  14. package/dist/auth/P1AuthProvider.d.ts +9 -2
  15. package/dist/auth/P1AuthProvider.d.ts.map +1 -1
  16. package/dist/auth/P1AuthProvider.js +21 -44
  17. package/dist/auth/P1AuthProvider.js.map +1 -1
  18. package/dist/auth/P1LoginPage.js +0 -18
  19. package/dist/auth/P1LoginPage.js.map +1 -1
  20. package/dist/auth/index.d.ts +2 -0
  21. package/dist/auth/index.d.ts.map +1 -1
  22. package/dist/auth/index.js +1 -9
  23. package/dist/auth/index.js.map +1 -1
  24. package/dist/auth/logout.d.ts +23 -0
  25. package/dist/auth/logout.d.ts.map +1 -0
  26. package/dist/auth/logout.js +14 -0
  27. package/dist/auth/logout.js.map +1 -0
  28. package/dist/auth/storage-keys.d.ts +5 -0
  29. package/dist/auth/storage-keys.d.ts.map +1 -0
  30. package/dist/auth/storage-keys.js +3 -0
  31. package/dist/auth/storage-keys.js.map +1 -0
  32. package/dist/collaboration/components/AgentActivityBanner.js +0 -15
  33. package/dist/collaboration/components/AgentActivityBanner.js.map +1 -1
  34. package/dist/collaboration/components/CollaboratorAvatars.js +0 -17
  35. package/dist/collaboration/components/CollaboratorAvatars.js.map +1 -1
  36. package/dist/collaboration/components/FocusRegionHighlight.js +0 -9
  37. package/dist/collaboration/components/FocusRegionHighlight.js.map +1 -1
  38. package/dist/collaboration/components/PresenceIndicator.js +0 -9
  39. package/dist/collaboration/components/PresenceIndicator.js.map +1 -1
  40. package/dist/collaboration/useBranchPresence.js +0 -36
  41. package/dist/collaboration/useBranchPresence.js.map +1 -1
  42. package/dist/collaboration/useFocusRegionReporting.js +0 -75
  43. package/dist/collaboration/useFocusRegionReporting.js.map +1 -1
  44. package/dist/collaboration/usePresence.js +0 -37
  45. package/dist/collaboration/usePresence.js.map +1 -1
  46. package/dist/collaboration/useSitePresence.js +0 -36
  47. package/dist/collaboration/useSitePresence.js.map +1 -1
  48. package/dist/collaboration/utils/avatarColor.js +0 -3
  49. package/dist/collaboration/utils/avatarColor.js.map +1 -1
  50. package/dist/collaboration/utils/focusHighlightConfig.js +0 -61
  51. package/dist/collaboration/utils/focusHighlightConfig.js.map +1 -1
  52. package/dist/collaboration/utils/focusRegionMap.js +1 -80
  53. package/dist/collaboration/utils/focusRegionMap.js.map +1 -1
  54. package/dist/collaboration/utils/initials.js +0 -14
  55. package/dist/collaboration/utils/initials.js.map +1 -1
  56. package/dist/collaboration/utils/presenceIdentity.js +0 -26
  57. package/dist/collaboration/utils/presenceIdentity.js.map +1 -1
  58. package/dist/core/FocusHighlightContext.js +0 -31
  59. package/dist/core/FocusHighlightContext.js.map +1 -1
  60. package/dist/core/NotificationContext.js +2 -67
  61. package/dist/core/NotificationContext.js.map +1 -1
  62. package/dist/core/P1PuckContext.js +0 -31
  63. package/dist/core/P1PuckContext.js.map +1 -1
  64. package/dist/core/PresenceContext.js +0 -18
  65. package/dist/core/PresenceContext.js.map +1 -1
  66. package/dist/core/config.js +0 -11
  67. package/dist/core/config.js.map +1 -1
  68. package/dist/core/featureConfig.js +0 -32
  69. package/dist/core/featureConfig.js.map +1 -1
  70. package/dist/core/index.d.ts +1 -1
  71. package/dist/core/index.d.ts.map +1 -1
  72. package/dist/core/plugin-types.d.ts +9 -0
  73. package/dist/core/plugin-types.d.ts.map +1 -1
  74. package/dist/core/types.d.ts +7 -1
  75. package/dist/core/types.d.ts.map +1 -1
  76. package/dist/core/types.js +0 -3
  77. package/dist/core/types.js.map +1 -1
  78. package/dist/core/utils/debounce.js +0 -18
  79. package/dist/core/utils/debounce.js.map +1 -1
  80. package/dist/core/utils/requestError.js +0 -5
  81. package/dist/core/utils/requestError.js.map +1 -1
  82. package/dist/core/utils/retry.js +0 -31
  83. package/dist/core/utils/retry.js.map +1 -1
  84. package/dist/core/utils/throttle.js +0 -24
  85. package/dist/core/utils/throttle.js.map +1 -1
  86. package/dist/data/cross-reference-resolve.js +0 -6
  87. package/dist/data/cross-reference-resolve.js.map +1 -1
  88. package/dist/data/cross-reference.js +0 -15
  89. package/dist/data/cross-reference.js.map +1 -1
  90. package/dist/data/css-queries/css-query-registry.d.ts +2 -2
  91. package/dist/data/css-queries/css-query-registry.js +1 -1
  92. package/dist/data/css-queries/css-query-registry.js.map +1 -1
  93. package/dist/data/dal/index.js +0 -21
  94. package/dist/data/dal/index.js.map +1 -1
  95. package/dist/data/dal/init.js +0 -40
  96. package/dist/data/dal/init.js.map +1 -1
  97. package/dist/data/dal/p1-store.d.ts.map +1 -1
  98. package/dist/data/dal/p1-store.js +11 -41
  99. package/dist/data/dal/p1-store.js.map +1 -1
  100. package/dist/data/data-list-block/builtin-components/cards.d.ts +1 -0
  101. package/dist/data/data-list-block/builtin-components/cards.d.ts.map +1 -1
  102. package/dist/data/data-list-block/builtin-components/cards.js +16 -16
  103. package/dist/data/data-list-block/builtin-components/cards.js.map +1 -1
  104. package/dist/data/data-list-block/builtin-components/listing.d.ts +1 -0
  105. package/dist/data/data-list-block/builtin-components/listing.d.ts.map +1 -1
  106. package/dist/data/data-list-block/builtin-components/listing.js +4 -3
  107. package/dist/data/data-list-block/builtin-components/listing.js.map +1 -1
  108. package/dist/data/data-list-block/builtin-components/rows.d.ts +1 -0
  109. package/dist/data/data-list-block/builtin-components/rows.d.ts.map +1 -1
  110. package/dist/data/data-list-block/builtin-components/rows.js +3 -3
  111. package/dist/data/data-list-block/builtin-components/rows.js.map +1 -1
  112. package/dist/data/data-list-block/create-data-list-block.d.ts +1 -0
  113. package/dist/data/data-list-block/create-data-list-block.d.ts.map +1 -1
  114. package/dist/data/data-list-block/create-data-list-block.js +7 -11
  115. package/dist/data/data-list-block/create-data-list-block.js.map +1 -1
  116. package/dist/data/data-list-block/data-list.css +314 -0
  117. package/dist/data/data-list-block/utils.js +0 -1
  118. package/dist/data/data-list-block/utils.js.map +1 -1
  119. package/dist/data/fields/pds-field-helpers.js +1 -4
  120. package/dist/data/fields/pds-field-helpers.js.map +1 -1
  121. package/dist/data/fields/visible-when.js +0 -5
  122. package/dist/data/fields/visible-when.js.map +1 -1
  123. package/dist/data/fields.d.ts.map +1 -1
  124. package/dist/data/fields.js +7 -14
  125. package/dist/data/fields.js.map +1 -1
  126. package/dist/data/get-page.js +0 -1
  127. package/dist/data/get-page.js.map +1 -1
  128. package/dist/data/page-editor-meta.js +0 -7
  129. package/dist/data/page-editor-meta.js.map +1 -1
  130. package/dist/data/page-store.js +0 -32
  131. package/dist/data/page-store.js.map +1 -1
  132. package/dist/data/page-structure.js +0 -3
  133. package/dist/data/page-structure.js.map +1 -1
  134. package/dist/data/paths.d.ts +6 -0
  135. package/dist/data/paths.d.ts.map +1 -1
  136. package/dist/data/paths.js +3 -16
  137. package/dist/data/paths.js.map +1 -1
  138. package/dist/data/query-provider.d.ts +14 -0
  139. package/dist/data/query-provider.d.ts.map +1 -1
  140. package/dist/data/query-provider.js +20 -9
  141. package/dist/data/query-provider.js.map +1 -1
  142. package/dist/data/remote-datasources/fetch-http-json.js +0 -5
  143. package/dist/data/remote-datasources/fetch-http-json.js.map +1 -1
  144. package/dist/data/remote-datasources/loader.js +0 -21
  145. package/dist/data/remote-datasources/loader.js.map +1 -1
  146. package/dist/data/remote-datasources/remote-datasource-registry.js +0 -4
  147. package/dist/data/remote-datasources/remote-datasource-registry.js.map +1 -1
  148. package/dist/data/resolve-data-templates.js +0 -24
  149. package/dist/data/resolve-data-templates.js.map +1 -1
  150. package/dist/data/route-templates.js +0 -29
  151. package/dist/data/route-templates.js.map +1 -1
  152. package/dist/data/semantic-ops.js +0 -11
  153. package/dist/data/semantic-ops.js.map +1 -1
  154. package/dist/data/styles.js +0 -2
  155. package/dist/data/styles.js.map +1 -1
  156. package/dist/data/template-autocomplete.js +0 -8
  157. package/dist/data/template-autocomplete.js.map +1 -1
  158. package/dist/data/utils.d.ts +16 -0
  159. package/dist/data/utils.d.ts.map +1 -1
  160. package/dist/data/utils.js +21 -1
  161. package/dist/data/utils.js.map +1 -1
  162. package/dist/editor/P1App.d.ts.map +1 -1
  163. package/dist/editor/P1App.js +6 -45
  164. package/dist/editor/P1App.js.map +1 -1
  165. package/dist/editor/P1PuckProvider.d.ts +1 -1
  166. package/dist/editor/P1PuckProvider.d.ts.map +1 -1
  167. package/dist/editor/P1PuckProvider.js +54 -561
  168. package/dist/editor/P1PuckProvider.js.map +1 -1
  169. package/dist/editor/aiPanelStore.js +0 -7
  170. package/dist/editor/aiPanelStore.js.map +1 -1
  171. package/dist/editor/components/BranchSelector.js +0 -21
  172. package/dist/editor/components/BranchSelector.js.map +1 -1
  173. package/dist/editor/components/CollapsibleSectionHeader.js +1 -4
  174. package/dist/editor/components/CollapsibleSectionHeader.js.map +1 -1
  175. package/dist/editor/components/DraggableRow.js +0 -1
  176. package/dist/editor/components/DraggableRow.js.map +1 -1
  177. package/dist/editor/components/EditorReloadOverlay.d.ts +16 -0
  178. package/dist/editor/components/EditorReloadOverlay.d.ts.map +1 -0
  179. package/dist/editor/components/EditorReloadOverlay.js +13 -0
  180. package/dist/editor/components/EditorReloadOverlay.js.map +1 -0
  181. package/dist/editor/components/NotificationContainer.js +0 -20
  182. package/dist/editor/components/NotificationContainer.js.map +1 -1
  183. package/dist/editor/components/OutlinePanel.js +1 -12
  184. package/dist/editor/components/OutlinePanel.js.map +1 -1
  185. package/dist/editor/components/P1InspectorFields.d.ts.map +1 -1
  186. package/dist/editor/components/P1InspectorFields.js +12 -14
  187. package/dist/editor/components/P1InspectorFields.js.map +1 -1
  188. package/dist/editor/components/P1TemplateFields.js +6 -12
  189. package/dist/editor/components/P1TemplateFields.js.map +1 -1
  190. package/dist/editor/components/PanelHeader.d.ts.map +1 -1
  191. package/dist/editor/components/PanelHeader.js +3 -2
  192. package/dist/editor/components/PanelHeader.js.map +1 -1
  193. package/dist/editor/components/PublishButton.js +0 -21
  194. package/dist/editor/components/PublishButton.js.map +1 -1
  195. package/dist/editor/components/PuckDataCapture.js +0 -14
  196. package/dist/editor/components/PuckDataCapture.js.map +1 -1
  197. package/dist/editor/components/PuckDataSynchronizer.js +0 -67
  198. package/dist/editor/components/PuckDataSynchronizer.js.map +1 -1
  199. package/dist/editor/components/PuckSelectionTracker.js +0 -62
  200. package/dist/editor/components/PuckSelectionTracker.js.map +1 -1
  201. package/dist/editor/components/SaveIndicator.js +0 -41
  202. package/dist/editor/components/SaveIndicator.js.map +1 -1
  203. package/dist/editor/components/Toast.js +1 -32
  204. package/dist/editor/components/Toast.js.map +1 -1
  205. package/dist/editor/components/VersionBannerOverride.d.ts +7 -1
  206. package/dist/editor/components/VersionBannerOverride.d.ts.map +1 -1
  207. package/dist/editor/components/VersionBannerOverride.js +17 -24
  208. package/dist/editor/components/VersionBannerOverride.js.map +1 -1
  209. package/dist/editor/components/collapsibleSectionContext.js +0 -10
  210. package/dist/editor/components/collapsibleSectionContext.js.map +1 -1
  211. package/dist/editor/components/componentIconName.js +0 -23
  212. package/dist/editor/components/componentIconName.js.map +1 -1
  213. package/dist/editor/components/connectable.js +0 -5
  214. package/dist/editor/components/connectable.js.map +1 -1
  215. package/dist/editor/components/merge-preview/MergePreviewRenderer.js +2 -74
  216. package/dist/editor/components/merge-preview/MergePreviewRenderer.js.map +1 -1
  217. package/dist/editor/components/merge-preview/ScaledContent.js +0 -6
  218. package/dist/editor/components/merge-preview/ScaledContent.js.map +1 -1
  219. package/dist/editor/components/merge-preview/index.js +0 -5
  220. package/dist/editor/components/merge-preview/index.js.map +1 -1
  221. package/dist/editor/components/outlineTree.js +0 -31
  222. package/dist/editor/components/outlineTree.js.map +1 -1
  223. package/dist/editor/components/useDragReorder.js +0 -1
  224. package/dist/editor/components/useDragReorder.js.map +1 -1
  225. package/dist/editor/composePlugins.d.ts +9 -3
  226. package/dist/editor/composePlugins.d.ts.map +1 -1
  227. package/dist/editor/composePlugins.js +3 -8
  228. package/dist/editor/composePlugins.js.map +1 -1
  229. package/dist/editor/defaultPlugins.d.ts +1 -1
  230. package/dist/editor/defaultPlugins.d.ts.map +1 -1
  231. package/dist/editor/defaultPlugins.js +3 -1
  232. package/dist/editor/defaultPlugins.js.map +1 -1
  233. package/dist/editor/freshFieldTypes.d.ts +12 -0
  234. package/dist/editor/freshFieldTypes.d.ts.map +1 -0
  235. package/dist/editor/freshFieldTypes.js +11 -0
  236. package/dist/editor/freshFieldTypes.js.map +1 -0
  237. package/dist/editor/logout-store.d.ts +13 -0
  238. package/dist/editor/logout-store.d.ts.map +1 -0
  239. package/dist/editor/logout-store.js +23 -0
  240. package/dist/editor/logout-store.js.map +1 -0
  241. package/dist/editor/plugin/P1Plugin.d.ts +16 -3
  242. package/dist/editor/plugin/P1Plugin.d.ts.map +1 -1
  243. package/dist/editor/plugin/P1Plugin.js +21 -171
  244. package/dist/editor/plugin/P1Plugin.js.map +1 -1
  245. package/dist/editor/plugin/context-sync-key.js +0 -19
  246. package/dist/editor/plugin/context-sync-key.js.map +1 -1
  247. package/dist/editor/plugin/createP1Overrides.js +1 -49
  248. package/dist/editor/plugin/createP1Overrides.js.map +1 -1
  249. package/dist/editor/plugin/document-sync-plugin.js +0 -50
  250. package/dist/editor/plugin/document-sync-plugin.js.map +1 -1
  251. package/dist/editor/plugin/fieldGuidance.js +0 -5
  252. package/dist/editor/plugin/fieldGuidance.js.map +1 -1
  253. package/dist/editor/plugin/index.js +0 -6
  254. package/dist/editor/plugin/index.js.map +1 -1
  255. package/dist/editor/plugin/selectHeaderCollaborators.js +0 -8
  256. package/dist/editor/plugin/selectHeaderCollaborators.js.map +1 -1
  257. package/dist/editor/presets.js +2 -2
  258. package/dist/editor/stablePluginDeps.d.ts +9 -0
  259. package/dist/editor/stablePluginDeps.d.ts.map +1 -0
  260. package/dist/editor/stablePluginDeps.js +15 -0
  261. package/dist/editor/stablePluginDeps.js.map +1 -0
  262. package/dist/editor/thumbnails/LiveThumbnail.js +1 -49
  263. package/dist/editor/thumbnails/LiveThumbnail.js.map +1 -1
  264. package/dist/editor/thumbnails/ThumbnailCard.js +0 -25
  265. package/dist/editor/thumbnails/ThumbnailCard.js.map +1 -1
  266. package/dist/editor/thumbnails/buildLiveThumbnailDrawer.js +0 -21
  267. package/dist/editor/thumbnails/buildLiveThumbnailDrawer.js.map +1 -1
  268. package/dist/editor/thumbnails/humanizeComponentName.js +0 -17
  269. package/dist/editor/thumbnails/humanizeComponentName.js.map +1 -1
  270. package/dist/editor/thumbnails/resolveLiveThumbnailDrawer.js +0 -11
  271. package/dist/editor/thumbnails/resolveLiveThumbnailDrawer.js.map +1 -1
  272. package/dist/editor/thumbnails/thumbnailCache.js +0 -38
  273. package/dist/editor/thumbnails/thumbnailCache.js.map +1 -1
  274. package/dist/editor/useAutoSave.js +0 -32
  275. package/dist/editor/useAutoSave.js.map +1 -1
  276. package/dist/editor/useBranches.js +0 -30
  277. package/dist/editor/useBranches.js.map +1 -1
  278. package/dist/editor/useComponentRegistry.d.ts +1 -1
  279. package/dist/editor/useComponentRegistry.js +0 -28
  280. package/dist/editor/useComponentRegistry.js.map +1 -1
  281. package/dist/editor/useDocuments.js +0 -51
  282. package/dist/editor/useDocuments.js.map +1 -1
  283. package/dist/editor/useMergePreview.js +8 -12
  284. package/dist/editor/useMergePreview.js.map +1 -1
  285. package/dist/editor/useP1Editor.d.ts +35 -7
  286. package/dist/editor/useP1Editor.d.ts.map +1 -1
  287. package/dist/editor/useP1Editor.js +146 -243
  288. package/dist/editor/useP1Editor.js.map +1 -1
  289. package/dist/editor/useP1Overrides.js +15 -50
  290. package/dist/editor/useP1Overrides.js.map +1 -1
  291. package/dist/editor/useP1Plugin.d.ts +10 -4
  292. package/dist/editor/useP1Plugin.d.ts.map +1 -1
  293. package/dist/editor/useP1Plugin.js +34 -56
  294. package/dist/editor/useP1Plugin.js.map +1 -1
  295. package/dist/editor/useRealtime.d.ts +15 -3
  296. package/dist/editor/useRealtime.d.ts.map +1 -1
  297. package/dist/editor/useRealtime.js +12 -91
  298. package/dist/editor/useRealtime.js.map +1 -1
  299. package/dist/editor/useResponsivePanels.js +2 -35
  300. package/dist/editor/useResponsivePanels.js.map +1 -1
  301. package/dist/editor/useSidebarScrollPreservation.js +0 -14
  302. package/dist/editor/useSidebarScrollPreservation.js.map +1 -1
  303. package/dist/editor/utils/buildThumbnailOverride.js +0 -9
  304. package/dist/editor/utils/buildThumbnailOverride.js.map +1 -1
  305. package/dist/editor/utils/componentRegistry.d.ts +6 -11
  306. package/dist/editor/utils/componentRegistry.d.ts.map +1 -1
  307. package/dist/editor/utils/componentRegistry.js +1 -71
  308. package/dist/editor/utils/componentRegistry.js.map +1 -1
  309. package/dist/editor/utils/createStablePluginArray.js +0 -27
  310. package/dist/editor/utils/createStablePluginArray.js.map +1 -1
  311. package/dist/editor/utils/path.js +0 -6
  312. package/dist/editor/utils/path.js.map +1 -1
  313. package/dist/editor/utils/puckYjsBinding.d.ts +1 -1
  314. package/dist/editor/utils/puckYjsBinding.js +0 -99
  315. package/dist/editor/utils/puckYjsBinding.js.map +1 -1
  316. package/dist/editor/utils/restoreDocumentVersion.js +0 -12
  317. package/dist/editor/utils/restoreDocumentVersion.js.map +1 -1
  318. package/dist/editor/utils/sanitizeRichtextDefaults.js +0 -26
  319. package/dist/editor/utils/sanitizeRichtextDefaults.js.map +1 -1
  320. package/dist/editor/utils/snapshotToPuckData.js +0 -8
  321. package/dist/editor/utils/snapshotToPuckData.js.map +1 -1
  322. package/dist/editor/utils/syncComponentRegistry.d.ts +2 -2
  323. package/dist/editor/utils/syncComponentRegistry.js +1 -76
  324. package/dist/editor/utils/syncComponentRegistry.js.map +1 -1
  325. package/dist/editor/utils/syncComponentRegistryWriteOnly.d.ts +7 -7
  326. package/dist/editor/utils/syncComponentRegistryWriteOnly.js +0 -22
  327. package/dist/editor/utils/syncComponentRegistryWriteOnly.js.map +1 -1
  328. package/dist/editor/utils/templatePath.js +0 -5
  329. package/dist/editor/utils/templatePath.js.map +1 -1
  330. package/dist/features/content-type-templates/editor/useTemplatePermissions.js +0 -3
  331. package/dist/features/content-type-templates/editor/useTemplatePermissions.js.map +1 -1
  332. package/dist/features/content-type-templates/hooks/useTemplateList.js +0 -30
  333. package/dist/features/content-type-templates/hooks/useTemplateList.js.map +1 -1
  334. package/dist/features/content-type-templates/index.js +0 -8
  335. package/dist/features/content-type-templates/index.js.map +1 -1
  336. package/dist/features/content-type-templates/permissions/createPuckPermissions.js +1 -43
  337. package/dist/features/content-type-templates/permissions/createPuckPermissions.js.map +1 -1
  338. package/dist/features/content-type-templates/permissions/role-permissions.d.ts +8 -0
  339. package/dist/features/content-type-templates/permissions/role-permissions.d.ts.map +1 -1
  340. package/dist/features/content-type-templates/permissions/role-permissions.js +3 -29
  341. package/dist/features/content-type-templates/permissions/role-permissions.js.map +1 -1
  342. package/dist/features/content-type-templates/permissions/useContentRole.js +0 -24
  343. package/dist/features/content-type-templates/permissions/useContentRole.js.map +1 -1
  344. package/dist/features/content-type-templates/permissions/useResolveContentRole.d.ts +5 -5
  345. package/dist/features/content-type-templates/permissions/useResolveContentRole.js +2 -22
  346. package/dist/features/content-type-templates/permissions/useResolveContentRole.js.map +1 -1
  347. package/dist/features/content-type-templates/stores/index.js +0 -5
  348. package/dist/features/content-type-templates/stores/index.js.map +1 -1
  349. package/dist/features/content-type-templates/stores/template-store-api.js +0 -14
  350. package/dist/features/content-type-templates/stores/template-store-api.js.map +1 -1
  351. package/dist/features/content-type-templates/stores/template-store.d.ts +1 -1
  352. package/dist/features/content-type-templates/stores/template-store.js +0 -12
  353. package/dist/features/content-type-templates/stores/template-store.js.map +1 -1
  354. package/dist/features/content-type-templates/types.js +0 -5
  355. package/dist/features/content-type-templates/types.js.map +1 -1
  356. package/dist/features/content-type-templates/ui/ActionBarPinButton.js +12 -21
  357. package/dist/features/content-type-templates/ui/ActionBarPinButton.js.map +1 -1
  358. package/dist/features/content-type-templates/ui/TemplateDetailsPanel.js +0 -23
  359. package/dist/features/content-type-templates/ui/TemplateDetailsPanel.js.map +1 -1
  360. package/dist/features/content-type-templates/ui/TemplateSelector.js +0 -19
  361. package/dist/features/content-type-templates/ui/TemplateSelector.js.map +1 -1
  362. package/dist/features/content-type-templates/validation/structural-validation.js +0 -40
  363. package/dist/features/content-type-templates/validation/structural-validation.js.map +1 -1
  364. package/dist/features/localization/authority.d.ts +26 -0
  365. package/dist/features/localization/authority.d.ts.map +1 -0
  366. package/dist/features/localization/authority.js +17 -0
  367. package/dist/features/localization/authority.js.map +1 -0
  368. package/dist/features/localization/index.d.ts +11 -0
  369. package/dist/features/localization/index.d.ts.map +1 -0
  370. package/dist/features/localization/index.js +7 -0
  371. package/dist/features/localization/index.js.map +1 -0
  372. package/dist/features/localization/prop-target.d.ts +26 -0
  373. package/dist/features/localization/prop-target.d.ts.map +1 -0
  374. package/dist/features/localization/prop-target.js +15 -0
  375. package/dist/features/localization/prop-target.js.map +1 -0
  376. package/dist/features/localization/puck-overrides.d.ts +12 -0
  377. package/dist/features/localization/puck-overrides.d.ts.map +1 -0
  378. package/dist/features/localization/puck-overrides.js +12 -0
  379. package/dist/features/localization/puck-overrides.js.map +1 -0
  380. package/dist/features/localization/relation.d.ts +14 -0
  381. package/dist/features/localization/relation.d.ts.map +1 -0
  382. package/dist/features/localization/relation.js +7 -0
  383. package/dist/features/localization/relation.js.map +1 -0
  384. package/dist/features/localization/translatable.d.ts +24 -0
  385. package/dist/features/localization/translatable.d.ts.map +1 -0
  386. package/dist/features/localization/translatable.js +30 -0
  387. package/dist/features/localization/translatable.js.map +1 -0
  388. package/dist/features/localization/types.d.ts +17 -0
  389. package/dist/features/localization/types.d.ts.map +1 -0
  390. package/dist/features/localization/types.js +2 -0
  391. package/dist/features/localization/types.js.map +1 -0
  392. package/dist/features/localization/ui/AuthorityFieldControl.d.ts +32 -0
  393. package/dist/features/localization/ui/AuthorityFieldControl.d.ts.map +1 -0
  394. package/dist/features/localization/ui/AuthorityFieldControl.js +36 -0
  395. package/dist/features/localization/ui/AuthorityFieldControl.js.map +1 -0
  396. package/dist/features/localization/ui/TranslatabilityToggle.d.ts +17 -0
  397. package/dist/features/localization/ui/TranslatabilityToggle.d.ts.map +1 -0
  398. package/dist/features/localization/ui/TranslatabilityToggle.js +16 -0
  399. package/dist/features/localization/ui/TranslatabilityToggle.js.map +1 -0
  400. package/dist/features/localization/useLocalizationData.d.ts +37 -0
  401. package/dist/features/localization/useLocalizationData.d.ts.map +1 -0
  402. package/dist/features/localization/useLocalizationData.js +88 -0
  403. package/dist/features/localization/useLocalizationData.js.map +1 -0
  404. package/dist/index.d.ts +6 -4
  405. package/dist/index.d.ts.map +1 -1
  406. package/dist/index.js +2 -43
  407. package/dist/index.js.map +1 -1
  408. package/dist/merge/components/conflict-notifications/ConflictNotificationToast.js +0 -19
  409. package/dist/merge/components/conflict-notifications/ConflictNotificationToast.js.map +1 -1
  410. package/dist/merge/components/conflict-notifications/index.js +0 -5
  411. package/dist/merge/components/conflict-notifications/index.js.map +1 -1
  412. package/dist/merge/components/conflict-notifications/useConflictNotifications.js +0 -48
  413. package/dist/merge/components/conflict-notifications/useConflictNotifications.js.map +1 -1
  414. package/dist/merge/components/conflict-resolution/ComponentConflictGroup.js +0 -36
  415. package/dist/merge/components/conflict-resolution/ComponentConflictGroup.js.map +1 -1
  416. package/dist/merge/components/conflict-resolution/PuckFieldResolutionPanel.js +0 -40
  417. package/dist/merge/components/conflict-resolution/PuckFieldResolutionPanel.js.map +1 -1
  418. package/dist/merge/components/conflict-resolution/RenderedResolutionPreview.js +0 -21
  419. package/dist/merge/components/conflict-resolution/RenderedResolutionPreview.js.map +1 -1
  420. package/dist/merge/components/conflict-resolution/index.js +0 -5
  421. package/dist/merge/components/conflict-resolution/index.js.map +1 -1
  422. package/dist/merge/components/merge-resolution/CherryPickVisualPanel.js +0 -44
  423. package/dist/merge/components/merge-resolution/CherryPickVisualPanel.js.map +1 -1
  424. package/dist/merge/components/merge-resolution/ComponentClickOverlay.js +0 -24
  425. package/dist/merge/components/merge-resolution/ComponentClickOverlay.js.map +1 -1
  426. package/dist/merge/components/merge-resolution/DocumentResolutionDetail.d.ts.map +1 -1
  427. package/dist/merge/components/merge-resolution/DocumentResolutionDetail.js +6 -31
  428. package/dist/merge/components/merge-resolution/DocumentResolutionDetail.js.map +1 -1
  429. package/dist/merge/components/merge-resolution/index.js +0 -3
  430. package/dist/merge/components/merge-resolution/index.js.map +1 -1
  431. package/dist/merge/useMergeResolution.d.ts +1 -1
  432. package/dist/merge/useMergeResolution.d.ts.map +1 -1
  433. package/dist/merge/useMergeResolution.js +6 -75
  434. package/dist/merge/useMergeResolution.js.map +1 -1
  435. package/dist/merge/utils/namespacePuckData.d.ts.map +1 -1
  436. package/dist/merge/utils/namespacePuckData.js +8 -8
  437. package/dist/merge/utils/namespacePuckData.js.map +1 -1
  438. package/dist/merge/utils/puckFieldClassifier.js +0 -183
  439. package/dist/merge/utils/puckFieldClassifier.js.map +1 -1
  440. package/dist/p1/editor/connect/connect-preview-config.js +0 -5
  441. package/dist/p1/editor/connect/connect-preview-config.js.map +1 -1
  442. package/dist/p1/editor/connect/field-connect-plugin.js +0 -6
  443. package/dist/p1/editor/connect/field-connect-plugin.js.map +1 -1
  444. package/dist/p1/editor/editor-preview-resolve.js +0 -13
  445. package/dist/p1/editor/editor-preview-resolve.js.map +1 -1
  446. package/dist/p1/editor/hooks/api-hooks.js +0 -7
  447. package/dist/p1/editor/hooks/api-hooks.js.map +1 -1
  448. package/dist/p1/editor/hooks/useLiveEditorContext.d.ts.map +1 -1
  449. package/dist/p1/editor/hooks/useLiveEditorContext.js +2 -13
  450. package/dist/p1/editor/hooks/useLiveEditorContext.js.map +1 -1
  451. package/dist/p1/editor/hooks/useLiveRemoteDatasources.js +0 -22
  452. package/dist/p1/editor/hooks/useLiveRemoteDatasources.js.map +1 -1
  453. package/dist/p1/editor/hooks/useP1Plugins.js +0 -5
  454. package/dist/p1/editor/hooks/useP1Plugins.js.map +1 -1
  455. package/dist/p1/editor/remote-datasources/remote-datasource-explorer-plugin.js +0 -7
  456. package/dist/p1/editor/remote-datasources/remote-datasource-explorer-plugin.js.map +1 -1
  457. package/dist/p1/editor/template-autocomplete-layer.js +0 -4
  458. package/dist/p1/editor/template-autocomplete-layer.js.map +1 -1
  459. package/dist/pds/components/AgentChip.js +0 -3
  460. package/dist/pds/components/AgentChip.js.map +1 -1
  461. package/dist/pds/components/CreatePageModal.js +1 -97
  462. package/dist/pds/components/CreatePageModal.js.map +1 -1
  463. package/dist/pds/components/LoadingMessage.d.ts.map +1 -1
  464. package/dist/pds/components/LoadingMessage.js +2 -1
  465. package/dist/pds/components/LoadingMessage.js.map +1 -1
  466. package/dist/pds/components/LoadingMessage.module.css +2 -21
  467. package/dist/pds/components/LoadingOverlay.d.ts +17 -0
  468. package/dist/pds/components/LoadingOverlay.d.ts.map +1 -0
  469. package/dist/pds/components/LoadingOverlay.js +7 -0
  470. package/dist/pds/components/LoadingOverlay.js.map +1 -0
  471. package/dist/pds/components/LoadingOverlay.module.css +28 -0
  472. package/dist/pds/components/P1EditorHeader.d.ts +9 -2
  473. package/dist/pds/components/P1EditorHeader.d.ts.map +1 -1
  474. package/dist/pds/components/P1EditorHeader.js +6 -26
  475. package/dist/pds/components/P1EditorHeader.js.map +1 -1
  476. package/dist/pds/components/P1EditorHeader.module.css +26 -0
  477. package/dist/pds/components/PageNavigator.js +0 -16
  478. package/dist/pds/components/PageNavigator.js.map +1 -1
  479. package/dist/pds/components/PageNotFound.d.ts +27 -0
  480. package/dist/pds/components/PageNotFound.d.ts.map +1 -0
  481. package/dist/pds/components/PageNotFound.js +24 -0
  482. package/dist/pds/components/PageNotFound.js.map +1 -0
  483. package/dist/pds/components/PageNotFound.module.css +51 -0
  484. package/dist/pds/components/PresenceStack.js +0 -9
  485. package/dist/pds/components/PresenceStack.js.map +1 -1
  486. package/dist/pds/components/PublishControl.js +0 -6
  487. package/dist/pds/components/PublishControl.js.map +1 -1
  488. package/dist/pds/components/WorkstreamSwitcher.js +1 -25
  489. package/dist/pds/components/WorkstreamSwitcher.js.map +1 -1
  490. package/dist/pds/index.d.ts +4 -0
  491. package/dist/pds/index.d.ts.map +1 -1
  492. package/dist/pds/index.js +2 -29
  493. package/dist/pds/index.js.map +1 -1
  494. package/dist/pds/theme/pds-core-content.js +0 -5
  495. package/dist/pds/theme/pds-core-content.js.map +1 -1
  496. package/dist/pds/utils/deriveDocState.js +0 -1
  497. package/dist/pds/utils/deriveDocState.js.map +1 -1
  498. package/dist/pds/utils/deriveLiveDocState.js +0 -13
  499. package/dist/pds/utils/deriveLiveDocState.js.map +1 -1
  500. package/dist/registry-sync.js +0 -4
  501. package/dist/registry-sync.js.map +1 -1
  502. package/dist/server.js +0 -7
  503. package/dist/server.js.map +1 -1
  504. package/dist/versioning/components/ReadOnlyFieldsGuard.js +0 -3
  505. package/dist/versioning/components/ReadOnlyFieldsGuard.js.map +1 -1
  506. package/dist/versioning/components/VersionBannerActions.js +0 -1
  507. package/dist/versioning/components/VersionBannerActions.js.map +1 -1
  508. package/dist/versioning/components/version-compare/BranchDiffHeader.js +0 -7
  509. package/dist/versioning/components/version-compare/BranchDiffHeader.js.map +1 -1
  510. package/dist/versioning/components/version-compare/BranchMergeCompare.js +0 -19
  511. package/dist/versioning/components/version-compare/BranchMergeCompare.js.map +1 -1
  512. package/dist/versioning/components/version-compare/ComponentNode.js +0 -8
  513. package/dist/versioning/components/version-compare/ComponentNode.js.map +1 -1
  514. package/dist/versioning/components/version-compare/ComponentTree.js +0 -10
  515. package/dist/versioning/components/version-compare/ComponentTree.js.map +1 -1
  516. package/dist/versioning/components/version-compare/DiffHeader.js +0 -3
  517. package/dist/versioning/components/version-compare/DiffHeader.js.map +1 -1
  518. package/dist/versioning/components/version-compare/DocumentDiffList.js +0 -14
  519. package/dist/versioning/components/version-compare/DocumentDiffList.js.map +1 -1
  520. package/dist/versioning/components/version-compare/PropDiffPanel.js +0 -7
  521. package/dist/versioning/components/version-compare/PropDiffPanel.js.map +1 -1
  522. package/dist/versioning/components/version-compare/PropDiffRow.js +0 -3
  523. package/dist/versioning/components/version-compare/PropDiffRow.js.map +1 -1
  524. package/dist/versioning/components/version-compare/PropValueDisplay.js +0 -22
  525. package/dist/versioning/components/version-compare/PropValueDisplay.js.map +1 -1
  526. package/dist/versioning/components/version-compare/VersionComparePage.js +0 -13
  527. package/dist/versioning/components/version-compare/VersionComparePage.js.map +1 -1
  528. package/dist/versioning/components/version-compare/VisualBranchCompare.js +0 -17
  529. package/dist/versioning/components/version-compare/VisualBranchCompare.js.map +1 -1
  530. package/dist/versioning/components/version-compare/VisualVersionCompare.js +0 -23
  531. package/dist/versioning/components/version-compare/VisualVersionCompare.js.map +1 -1
  532. package/dist/versioning/components/version-compare/index.js +0 -5
  533. package/dist/versioning/components/version-compare/index.js.map +1 -1
  534. package/dist/versioning/components/version-history/AgentCheckpointBadge.js +0 -14
  535. package/dist/versioning/components/version-history/AgentCheckpointBadge.js.map +1 -1
  536. package/dist/versioning/components/version-history/VersionItem.js +0 -7
  537. package/dist/versioning/components/version-history/VersionItem.js.map +1 -1
  538. package/dist/versioning/components/version-history/index.js +0 -5
  539. package/dist/versioning/components/version-history/index.js.map +1 -1
  540. package/dist/versioning/useCheckpoints.js +0 -28
  541. package/dist/versioning/useCheckpoints.js.map +1 -1
  542. package/dist/versioning/useVersions.js +0 -31
  543. package/dist/versioning/useVersions.js.map +1 -1
  544. package/dist/versioning/utils/branchDiff.js +0 -93
  545. package/dist/versioning/utils/branchDiff.js.map +1 -1
  546. package/dist/versioning/utils/diff.js +0 -79
  547. package/dist/versioning/utils/diff.js.map +1 -1
  548. package/dist/versioning/utils/formatVersionDate.js +0 -12
  549. package/dist/versioning/utils/formatVersionDate.js.map +1 -1
  550. package/dist/versioning/utils/highlightConfig.js +0 -42
  551. package/dist/versioning/utils/highlightConfig.js.map +1 -1
  552. package/dist/versioning/utils/versionKind.js +0 -10
  553. package/dist/versioning/utils/versionKind.js.map +1 -1
  554. package/package.json +7 -7
  555. package/src/data/data-list-block/data-list.css +314 -0
  556. package/src/pds/theme/PuckEditorTheme.css +5 -5
  557. package/src/styles.css +1 -1
  558. package/src/pds/theme/PuckEditorTheme.test.ts +0 -195
  559. package/src/pds/theme/pds-core-content.ts +0 -8
@@ -1,19 +1,6 @@
1
- /**
2
- * useResolveContentRole Hook
3
- *
4
- * Auto-detects the user's ContentRole by querying the CSS backend's
5
- * auth/me endpoint with site context. Falls back to the provided
6
- * default role if the backend doesn't return role info.
7
- *
8
- * CSS backend role mapping:
9
- * - ADMIN → 'admin'
10
- * - EDITOR → 'editor'
11
- * - VIEWER → 'junior-editor' (read-only structural access)
12
- * - NO_ACCESS → 'junior-editor' (most restrictive)
13
- */
14
1
  import { useState, useEffect } from 'react';
15
- function mapCssRoleToContentRole(cssRole) {
16
- switch (cssRole) {
2
+ function mapCssRoleToContentRole(ccrRole) {
3
+ switch (ccrRole) {
17
4
  case 'ADMIN':
18
5
  return 'admin';
19
6
  case 'EDITOR':
@@ -24,13 +11,6 @@ function mapCssRoleToContentRole(cssRole) {
24
11
  return 'junior-editor';
25
12
  }
26
13
  }
27
- /**
28
- * Hook to auto-resolve the user's ContentRole from the CSS backend.
29
- *
30
- * Calls GET /api/sites/{siteId}/auth/role (when available) to determine
31
- * the user's effective role. Falls back to the provided fallbackRole
32
- * if the endpoint is unavailable or returns an error.
33
- */
34
14
  export function useResolveContentRole({ baseUrl, siteId, branchId, token, fallbackRole = 'junior-editor', }) {
35
15
  const [role, setRole] = useState(fallbackRole);
36
16
  const [loading, setLoading] = useState(true);
@@ -1 +1 @@
1
- {"version":3,"file":"useResolveContentRole.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/permissions/useResolveContentRole.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAK5C,SAAS,uBAAuB,CAAC,OAAoB;IACnD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW,CAAC;QACjB;YACE,OAAO,eAAe,CAAC;IAC3B,CAAC;AACH,CAAC;AAgBD;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,EACpC,OAAO,EACP,MAAM,EACN,QAAQ,EACR,KAAK,EACL,YAAY,GAAG,eAAe,GACD;IAC7B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAc,YAAY,CAAC,CAAC;IAC5D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAClC,OAAO,CAAC,YAAY,CAAC,CAAC;YACtB,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACH,MAAM,OAAO,GAA2B;oBACtC,aAAa,EAAE,UAAU,KAAK,EAAE;iBACjC,CAAC;gBACF,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,GAAG,OAAO,cAAc,kBAAkB,CAAC,MAAM,CAAC,aAAa,kBAAkB,CAAC,QAAQ,CAAC,YAAY,EACvG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAC3B,CAAC;gBAEF,IAAI,SAAS;oBAAE,OAAO;gBAEtB,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACX,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA+B,CAAC;oBAC9D,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAClB,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;wBAChD,WAAW,CAAC,IAAI,CAAC,CAAC;oBACpB,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,YAAY,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,YAAY,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,SAAS;oBAAE,OAAO,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,SAAS;oBAAE,UAAU,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAErD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AACrC,CAAC;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
1
+ {"version":3,"file":"useResolveContentRole.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/permissions/useResolveContentRole.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAK5C,SAAS,uBAAuB,CAAC,OAAoB;IACnD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW,CAAC;QACjB;YACE,OAAO,eAAe,CAAC;IAC3B,CAAC;AACH,CAAC;AAuBD,MAAM,UAAU,qBAAqB,CAAC,EACpC,OAAO,EACP,MAAM,EACN,QAAQ,EACR,KAAK,EACL,YAAY,GAAG,eAAe,GACD;IAC7B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAc,YAAY,CAAC,CAAC;IAC5D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAClC,OAAO,CAAC,YAAY,CAAC,CAAC;YACtB,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACH,MAAM,OAAO,GAA2B;oBACtC,aAAa,EAAE,UAAU,KAAK,EAAE;iBACjC,CAAC;gBACF,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,GAAG,OAAO,cAAc,kBAAkB,CAAC,MAAM,CAAC,aAAa,kBAAkB,CAAC,QAAQ,CAAC,YAAY,EACvG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAC3B,CAAC;gBAEF,IAAI,SAAS;oBAAE,OAAO;gBAEtB,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACX,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA+B,CAAC;oBAC9D,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAClB,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;wBAChD,WAAW,CAAC,IAAI,CAAC,CAAC;oBACpB,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,YAAY,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,YAAY,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,SAAS;oBAAE,OAAO,CAAC,YAAY,CAAC,CAAC;YACxC,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,SAAS;oBAAE,UAAU,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAErD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AACrC,CAAC;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -1,8 +1,3 @@
1
- /**
2
- * Template Stores
3
- *
4
- * Store implementations for template persistence.
5
- */
6
1
  export { createInMemoryTemplateStore } from './template-store.js';
7
2
  export { createApiTemplateStore } from './template-store-api.js';
8
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/stores/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/stores/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,16 +1,3 @@
1
- /**
2
- * API-Backed Template Store
3
- *
4
- * Production template store implementation using the backend API.
5
- */
6
- /**
7
- * Create a template store backed by the P1 API.
8
- *
9
- * @param client - P1Client instance
10
- * @param siteId - Site ID
11
- * @param branchId - Branch ID
12
- * @returns TemplateStore instance
13
- */
14
1
  export function createApiTemplateStore(client, siteId, branchId) {
15
2
  return {
16
3
  async create(params) {
@@ -23,7 +10,6 @@ export function createApiTemplateStore(client, siteId, branchId) {
23
10
  return template;
24
11
  }
25
12
  catch (error) {
26
- // Return undefined for 404s
27
13
  if (error && typeof error === 'object' && 'status' in error && error.status === 404) {
28
14
  return undefined;
29
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"template-store-api.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/stores/template-store-api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAgB,EAChB,MAAc,EACd,QAAgB;IAEhB,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,MAA4B;YACvC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACzE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,EAAU;YAClB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAClE,OAAO,QAAQ,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,4BAA4B;gBAC5B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBACpF,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI;YACR,OAAO,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,MAA4B;YACnD,OAAO,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QACrE,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAU;YACrB,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,WAAmB;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,KAAK,CAAC,UAAU,CACd,WAAmB,EACnB,WAAmB,EACnB,gBAAwB;YAExB,MAAM,IAAI,KAAK,CAAC,4GAA4G,CAAC,CAAC;QAChI,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,WAAmB;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,WAAmB;YACrC,MAAM,IAAI,KAAK,CAAC,+GAA+G,CAAC,CAAC;QACnI,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"template-store-api.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/stores/template-store-api.ts"],"names":[],"mappings":"AAkBA,MAAM,UAAU,sBAAsB,CACpC,MAAgB,EAChB,MAAc,EACd,QAAgB;IAEhB,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,MAA4B;YACvC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACzE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,EAAU;YAClB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAClE,OAAO,QAAQ,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAEf,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBACpF,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI;YACR,OAAO,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,MAA4B;YACnD,OAAO,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QACrE,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAU;YACrB,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,WAAmB;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,KAAK,CAAC,UAAU,CACd,WAAmB,EACnB,WAAmB,EACnB,gBAAwB;YAExB,MAAM,IAAI,KAAK,CAAC,4GAA4G,CAAC,CAAC;QAChI,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,WAAmB;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,WAAmB;YACrC,MAAM,IAAI,KAAK,CAAC,+GAA+G,CAAC,CAAC;QACnI,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * Template Store Interface
3
3
  *
4
4
  * Defines the contract for template storage and retrieval.
5
- * Implementations can use localStorage, CSS documents, or backend API.
5
+ * Implementations can use localStorage, backend documents, or a backend API.
6
6
  */
7
7
  import type { Template, TemplateSummary, TemplateBinding, CreateTemplateParams, UpdateTemplateParams } from '../types.js';
8
8
  /**
@@ -1,18 +1,6 @@
1
- /**
2
- * Template Store Interface
3
- *
4
- * Defines the contract for template storage and retrieval.
5
- * Implementations can use localStorage, CSS documents, or backend API.
6
- */
7
- /**
8
- * Generate a unique template ID.
9
- */
10
1
  function generateId() {
11
2
  return `tmpl_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;
12
3
  }
13
- /**
14
- * Create an in-memory template store for testing and development.
15
- */
16
4
  export function createInMemoryTemplateStore() {
17
5
  const templates = new Map();
18
6
  const bindings = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"template-store.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/stores/template-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-store.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/stores/template-store.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,2 @@
1
- /**
2
- * Content Type Templates - Core Types
3
- *
4
- * TypeScript types and interfaces for the content type templates feature.
5
- */
6
1
  export {};
7
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/features/content-type-templates/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/features/content-type-templates/types.ts"],"names":[],"mappings":""}
@@ -1,34 +1,27 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useCallback } from 'react';
3
- import { ActionBar, createUsePuck, usePuck } from '@puckeditor/core';
3
+ import { ActionBar, createUsePuck } from '@puckeditor/core';
4
4
  import { Icon } from '@pantheon-systems/pds-toolkit-react';
5
5
  import { useP1PuckOptional } from '../../../core/P1PuckContext.js';
6
6
  const usePuckState = createUsePuck();
7
- /**
8
- * Resolve the template being edited in template mode (document path
9
- * `_registry/templates/<name>`). Pinning is a template-authoring capability,
10
- * so ordinary pages (including template-bound ones) resolve to null.
11
- */
12
- function resolveTemplate(css) {
13
- const path = css.currentDocument?.path;
7
+ function resolveTemplate(ccr) {
8
+ const path = ccr.currentDocument?.path;
14
9
  if (!path)
15
10
  return null;
16
11
  const match = path.match(/^_registry\/templates\/(.+)$/);
17
12
  if (!match)
18
13
  return null;
19
- return css.templates.find((t) => t.name === match[1]) ?? null;
14
+ return ccr.templates.find((t) => t.name === match[1]) ?? null;
20
15
  }
21
16
  export function ActionBarPinButton() {
22
- const css = useP1PuckOptional();
17
+ const ccr = useP1PuckOptional();
23
18
  const selectedItem = usePuckState((s) => s.selectedItem);
24
19
  const rootProps = usePuckState((s) => s.appState?.data?.root?.props);
25
- const { dispatch } = usePuck();
26
- const template = css ? resolveTemplate(css) : null;
20
+ const dispatch = usePuckState((s) => s.dispatch);
21
+ const template = ccr ? resolveTemplate(ccr) : null;
27
22
  const pinMap = rootProps?._pinMap ?? {};
28
- // Pin state lives in the document's root props (_pinMap) and persists
29
- // through the normal document autosave.
30
23
  const handleTogglePin = useCallback(() => {
31
- if (!css || !template || !selectedItem || css.isViewingHistoricalVersion)
24
+ if (!ccr || !template || !selectedItem || ccr.isViewingHistoricalVersion)
32
25
  return;
33
26
  const compId = selectedItem.props.id;
34
27
  const newPinned = !pinMap[compId];
@@ -46,14 +39,12 @@ export function ActionBarPinButton() {
46
39
  },
47
40
  }),
48
41
  });
49
- }, [css, template, selectedItem, pinMap, dispatch]);
50
- if (!css || !template || !selectedItem) {
42
+ }, [ccr, template, selectedItem, pinMap, dispatch]);
43
+ if (!ccr || !template || !selectedItem) {
51
44
  return null;
52
45
  }
53
- const isAdmin = css.userRole === 'admin';
46
+ const isAdmin = ccr.userRole === 'admin';
54
47
  const isPinned = pinMap[selectedItem.props.id] ?? false;
55
- return (_jsx(ActionBar.Action, { label: isPinned ? 'Unpin component' : 'Pin component', onClick: handleTogglePin, active: isPinned,
56
- // Historical versions are read-only; a toggle there would never persist.
57
- disabled: !isAdmin || css.isViewingHistoricalVersion, children: _jsx(Icon, { iconName: isPinned ? 'lock' : 'lockOpen', size: "s", "aria-hidden": "true" }) }));
48
+ return (_jsx(ActionBar.Action, { label: isPinned ? 'Unpin component' : 'Pin component', onClick: handleTogglePin, active: isPinned, disabled: !isAdmin || ccr.isViewingHistoricalVersion, children: _jsx(Icon, { iconName: isPinned ? 'lock' : 'lockOpen', size: "s", "aria-hidden": "true" }) }));
58
49
  }
59
50
  //# sourceMappingURL=ActionBarPinButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarPinButton.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/ui/ActionBarPinButton.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionBarPinButton.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/ui/ActionBarPinButton.tsx"],"names":[],"mappings":"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"}
@@ -1,15 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * TemplateDetailsPanel
4
- *
5
- * Right-sidebar panel shown when editing a template in the regular editor
6
- * (template mode — document path `_registry/templates/<name>`). It replaces the
7
- * default "Page" root fields with a "Template" section exposing the template's
8
- * Label, Description and URL pattern. Edits **autosave** (debounced) to the
9
- * template's metadata via `onSave`; the layout itself is saved by the canvas.
10
- */
11
2
  import { useState, useEffect, useCallback, useRef } from 'react';
12
- /** Delay after the last keystroke before autosaving the template details. */
13
3
  const AUTOSAVE_DEBOUNCE_MS = 600;
14
4
  const fieldStyle = {
15
5
  display: 'flex',
@@ -37,10 +27,7 @@ export function TemplateDetailsPanel({ template, onSave, }) {
37
27
  const [defaultUrlPattern, setDefaultUrlPattern] = useState(template.defaultUrlPattern ?? '');
38
28
  const [status, setStatus] = useState('idle');
39
29
  const [error, setError] = useState(null);
40
- // Skip the autosave that the initial mount / template-switch re-sync would
41
- // otherwise trigger (those aren't user edits).
42
30
  const skipNextAutosaveRef = useRef(true);
43
- // Re-sync the fields when a different template is loaded into the editor.
44
31
  useEffect(() => {
45
32
  setLabel(template.label ?? '');
46
33
  setDescription(template.description ?? '');
@@ -48,8 +35,6 @@ export function TemplateDetailsPanel({ template, onSave, }) {
48
35
  setError(null);
49
36
  setStatus('idle');
50
37
  skipNextAutosaveRef.current = true;
51
- // Keyed on the template id: switching documents swaps the whole record.
52
- // eslint-disable-next-line react-hooks/exhaustive-deps
53
38
  }, [template.id]);
54
39
  const save = useCallback(async () => {
55
40
  setStatus('saving');
@@ -67,14 +52,8 @@ export function TemplateDetailsPanel({ template, onSave, }) {
67
52
  setStatus('error');
68
53
  }
69
54
  }, [label, description, defaultUrlPattern, onSave]);
70
- // Call the latest `save` via a ref so the autosave effect only depends on the
71
- // field VALUES. `save`/`onSave` get new identities on every render (onSave is
72
- // an inline closure upstream); depending on them would re-run the effect each
73
- // render and create a save → refetch → re-render → save loop.
74
55
  const saveRef = useRef(save);
75
56
  saveRef.current = save;
76
- // Debounced autosave on edits. A label is required; we never autosave a blank
77
- // label (it's the template's human-readable name).
78
57
  useEffect(() => {
79
58
  if (skipNextAutosaveRef.current) {
80
59
  skipNextAutosaveRef.current = false;
@@ -91,8 +70,6 @@ export function TemplateDetailsPanel({ template, onSave, }) {
91
70
  display: 'flex',
92
71
  flexDirection: 'column',
93
72
  gap: 'var(--puck-space-px, 16px)',
94
- // Match the regular block-edit fields gutter (Puck wraps default fields
95
- // in `padding: var(--puck-space-px)`; overriding `fields` drops it).
96
73
  padding: 'var(--puck-space-px, 16px)',
97
74
  }, children: [_jsx("p", { style: {
98
75
  margin: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateDetailsPanel.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/ui/TemplateDetailsPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TemplateDetailsPanel.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/ui/TemplateDetailsPanel.tsx"],"names":[],"mappings":"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"}
@@ -1,24 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useTemplateList } from '../hooks/useTemplateList.js';
3
- /**
4
- * Template selector component for document creation.
5
- *
6
- * Displays a list of available templates plus a "Blank Page" option.
7
- * Uses PDS button and card styles.
8
- *
9
- * @example
10
- * ```tsx
11
- * const [selectedTemplate, setSelectedTemplate] = useState<Template | null>(null);
12
- *
13
- * <TemplateSelector
14
- * client={client}
15
- * siteId={siteId}
16
- * branchId={branchId}
17
- * onSelect={setSelectedTemplate}
18
- * selectedTemplateId={selectedTemplate?.id}
19
- * />
20
- * ```
21
- */
22
3
  export function TemplateSelector({ client, siteId, branchId, onSelect, selectedTemplateId, }) {
23
4
  const { templates, loading, error } = useTemplateList(client, siteId, branchId);
24
5
  if (loading) {
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateSelector.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/ui/TemplateSelector.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAe9D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,MAAM,EACN,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,kBAAkB,GACI;IACtB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEhF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,cAAK,SAAS,EAAC,8CAA8C,YAC3D,cAAK,SAAS,EAAC,oCAAoC,qCAE7C,GACF,CACP,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,cAAK,SAAS,EAAC,4CAA4C,YACzD,eAAK,SAAS,EAAC,kCAAkC,aAC/C,uDAAwC,EACxC,sBAAI,KAAK,CAAC,OAAO,GAAK,IAClB,GACF,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAC,mBAAmB,YAChC,eAAK,SAAS,EAAC,yBAAyB,aAEtC,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yDAAyD,EACnE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,kBACf,kBAAkB,KAAK,IAAI,IAAI,kBAAkB,KAAK,SAAS,YAE7E,eAAK,SAAS,EAAC,mCAAmC,aAChD,cAAK,SAAS,EAAC,iCAAiC,2BAAiB,EACjE,cAAK,SAAS,EAAC,uCAAuC,oDAEhD,IACF,GACC,EAGR,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CACxD,iBAEE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yDAAyD,EACnE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBACnB,kBAAkB,KAAK,QAAQ,CAAC,EAAE,YAEhD,eAAK,SAAS,EAAC,mCAAmC,aAChD,cAAK,SAAS,EAAC,iCAAiC,YAAE,QAAQ,CAAC,KAAK,GAAO,EACtE,QAAQ,CAAC,WAAW,IAAI,CACvB,cAAK,SAAS,EAAC,uCAAuC,YACnD,QAAQ,CAAC,WAAW,GACjB,CACP,IACG,IAbD,QAAQ,CAAC,EAAE,CAcT,CACV,CAAC,IACE,GACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"TemplateSelector.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/ui/TemplateSelector.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAkC9D,MAAM,UAAU,gBAAgB,CAAC,EAC/B,MAAM,EACN,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,kBAAkB,GACI;IACtB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEhF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,cAAK,SAAS,EAAC,8CAA8C,YAC3D,cAAK,SAAS,EAAC,oCAAoC,qCAE7C,GACF,CACP,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,cAAK,SAAS,EAAC,4CAA4C,YACzD,eAAK,SAAS,EAAC,kCAAkC,aAC/C,uDAAwC,EACxC,sBAAI,KAAK,CAAC,OAAO,GAAK,IAClB,GACF,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAC,mBAAmB,YAChC,eAAK,SAAS,EAAC,yBAAyB,aAEtC,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yDAAyD,EACnE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,kBACf,kBAAkB,KAAK,IAAI,IAAI,kBAAkB,KAAK,SAAS,YAE7E,eAAK,SAAS,EAAC,mCAAmC,aAChD,cAAK,SAAS,EAAC,iCAAiC,2BAAiB,EACjE,cAAK,SAAS,EAAC,uCAAuC,oDAEhD,IACF,GACC,EAGR,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CACxD,iBAEE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yDAAyD,EACnE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBACnB,kBAAkB,KAAK,QAAQ,CAAC,EAAE,YAEhD,eAAK,SAAS,EAAC,mCAAmC,aAChD,cAAK,SAAS,EAAC,iCAAiC,YAAE,QAAQ,CAAC,KAAK,GAAO,EACtE,QAAQ,CAAC,WAAW,IAAI,CACvB,cAAK,SAAS,EAAC,uCAAuC,YACnD,QAAQ,CAAC,WAAW,GACjB,CACP,IACG,IAbD,QAAQ,CAAC,EAAE,CAcT,CACV,CAAC,IACE,GACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,25 +1,11 @@
1
- /**
2
- * Structural Validation
3
- *
4
- * Validates that a document conforms to its template's structural requirements.
5
- */
6
- /**
7
- * Read a component instance's slot id (`props.id`) if it is a string.
8
- */
9
1
  function slotId(item) {
10
2
  const id = item?.props?.id;
11
3
  return typeof id === 'string' ? id : undefined;
12
4
  }
13
- /**
14
- * Read a component instance's type if it is a string.
15
- */
16
5
  function componentTypeOf(item) {
17
6
  const type = item?.type;
18
7
  return typeof type === 'string' ? type : undefined;
19
8
  }
20
- /**
21
- * Pinned slots held by one list, in list order.
22
- */
23
9
  function pinnedSlotsIn(items, list, pinMap) {
24
10
  if (!Array.isArray(items))
25
11
  return [];
@@ -33,9 +19,6 @@ function pinnedSlotsIn(items, list, pinMap) {
33
19
  }
34
20
  return slots;
35
21
  }
36
- /**
37
- * Every pinned slot a template requires, content first, then zones.
38
- */
39
22
  function collectPinnedSlots(template) {
40
23
  const pinMap = template.root?.props?._pinMap ?? {};
41
24
  const slots = pinnedSlotsIn(template.content, 'content', pinMap);
@@ -44,9 +27,6 @@ function collectPinnedSlots(template) {
44
27
  }
45
28
  return slots;
46
29
  }
47
- /**
48
- * Slot ids held by one list, in list order.
49
- */
50
30
  function slotIdsIn(items) {
51
31
  if (!Array.isArray(items))
52
32
  return [];
@@ -58,9 +38,6 @@ function slotIdsIn(items) {
58
38
  }
59
39
  return ids;
60
40
  }
61
- /**
62
- * Index a document's slot ids by the list that holds them.
63
- */
64
41
  function collectDocumentSlots(data) {
65
42
  const byList = new Map();
66
43
  byList.set('content', slotIdsIn(data.content));
@@ -75,10 +52,6 @@ function collectDocumentSlots(data) {
75
52
  }
76
53
  return { all, byList };
77
54
  }
78
- /**
79
- * Presence: a pinned slot may sit in any list, but its id must appear
80
- * somewhere in the document.
81
- */
82
55
  function findMissingSlots(pinnedSlots, documentIds) {
83
56
  return pinnedSlots
84
57
  .filter((slot) => !documentIds.has(slot.id))
@@ -88,11 +61,6 @@ function findMissingSlots(pinnedSlots, documentIds) {
88
61
  componentType: slot.type,
89
62
  }));
90
63
  }
91
- /**
92
- * Order: within each list, the pinned slots found in that list keep the
93
- * template's relative order. A slot found in a different list than the
94
- * template placed it in does not advance that list's chain.
95
- */
96
64
  function findOutOfOrderSlots(pinnedSlots, idsByList) {
97
65
  const errors = [];
98
66
  for (const list of new Set(pinnedSlots.map((slot) => slot.list))) {
@@ -119,14 +87,6 @@ function findOutOfOrderSlots(pinnedSlots, idsByList) {
119
87
  }
120
88
  return errors;
121
89
  }
122
- /**
123
- * Validate that document data conforms to template structure.
124
- *
125
- * Conformance resolves by slot-id membership: every pinned slot must be
126
- * present somewhere in the document, and the pinned slots that share a list
127
- * must hold the template's relative order there. Components carrying non-slot
128
- * ids are allowed anywhere. A template with no pinned slots imposes nothing.
129
- */
130
90
  export function validateStructure(data, template) {
131
91
  const pinnedSlots = collectPinnedSlots(template);
132
92
  if (pinnedSlots.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"structural-validation.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/validation/structural-validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"structural-validation.js","sourceRoot":"","sources":["../../../../src/features/content-type-templates/validation/structural-validation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Prop Authority Resolution
3
+ *
4
+ * A prop on a translation is either inherited from the canonical page
5
+ * ('canonical') or owned by the translation ('locale'). That answer comes from
6
+ * three places, in precedence order: the prop's own override, the default its
7
+ * slot's template declares, and a site-wide fallback. The server resolves the
8
+ * same chain when it judges a write, so a client that stops at the override map
9
+ * shows an authority the server disagrees with.
10
+ */
11
+ import type { AuthorityOverridesResult, PropAuthority } from '@pantheon-systems/css-client';
12
+ /**
13
+ * The authority a slot's props take when no override names them.
14
+ */
15
+ export declare function slotAuthority(result: AuthorityOverridesResult | null, slotId: string): PropAuthority;
16
+ /**
17
+ * The effective authority of a single prop.
18
+ */
19
+ export declare function resolveAuthority(result: AuthorityOverridesResult | null, slotId: string, propName: string): PropAuthority;
20
+ /**
21
+ * Whether moving a prop to `target` needs an override stored, or is reached by
22
+ * dropping the one it has. Storing an override that repeats the slot default
23
+ * would survive a later change to that default and silently pin the prop.
24
+ */
25
+ export declare function needsOverride(result: AuthorityOverridesResult | null, slotId: string, target: PropAuthority): boolean;
26
+ //# sourceMappingURL=authority.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority.d.ts","sourceRoot":"","sources":["../../../src/features/localization/authority.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAW5F;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,wBAAwB,GAAG,IAAI,EACvC,MAAM,EAAE,MAAM,GACb,aAAa,CAIf;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,wBAAwB,GAAG,IAAI,EACvC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,aAAa,CAGf;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,wBAAwB,GAAG,IAAI,EACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,GACpB,OAAO,CAET"}
@@ -0,0 +1,17 @@
1
+ function isAuthority(value) {
2
+ return value === 'canonical' || value === 'locale';
3
+ }
4
+ export function slotAuthority(result, slotId) {
5
+ const declared = result?.slotDefaults?.[slotId];
6
+ if (isAuthority(declared))
7
+ return declared;
8
+ return isAuthority(result?.defaultAuthority) ? result.defaultAuthority : 'canonical';
9
+ }
10
+ export function resolveAuthority(result, slotId, propName) {
11
+ const override = result?.authorityOverrides?.[slotId]?.[propName];
12
+ return isAuthority(override) ? override : slotAuthority(result, slotId);
13
+ }
14
+ export function needsOverride(result, slotId, target) {
15
+ return slotAuthority(result, slotId) !== target;
16
+ }
17
+ //# sourceMappingURL=authority.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority.js","sourceRoot":"","sources":["../../../src/features/localization/authority.ts"],"names":[],"mappings":"AAkBA,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,QAAQ,CAAC;AACrD,CAAC;AAKD,MAAM,UAAU,aAAa,CAC3B,MAAuC,EACvC,MAAc;IAEd,MAAM,QAAQ,GAAG,MAAM,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,WAAW,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC3C,OAAO,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC;AACvF,CAAC;AAKD,MAAM,UAAU,gBAAgB,CAC9B,MAAuC,EACvC,MAAc,EACd,QAAgB;IAEhB,MAAM,QAAQ,GAAG,MAAM,EAAE,kBAAkB,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAClE,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1E,CAAC;AAOD,MAAM,UAAU,aAAa,CAC3B,MAAuC,EACvC,MAAc,EACd,MAAqB;IAErB,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;AAClD,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Localization Feature
3
+ *
4
+ * Lets site managers create a locale-tagged translation of an existing page,
5
+ * linked to its canonical document. The per-field controls self-gate on whether
6
+ * the current document is a translation, so they stay inert on canonical pages.
7
+ */
8
+ import type { P1FeaturePlugin } from '../../core/plugin-types.js';
9
+ export type { LocalizationRelation, CreateTranslationParams, CreateTranslationResult, TranslationVariant, ListTranslationsResult, TranslatablePage, } from './types.js';
10
+ export declare const localizationPlugin: P1FeaturePlugin;
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/localization/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAGlE,YAAY,EACV,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,kBAAkB,EAAE,eAIhC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { buildLocalizationOverrides } from './puck-overrides.js';
2
+ export const localizationPlugin = {
3
+ name: 'localization',
4
+ priority: 70,
5
+ puckOverrides: (deps) => buildLocalizationOverrides(deps),
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/localization/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAWjE,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC;CAC1D,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Prop Addressing
3
+ *
4
+ * Authority, translatability, and change classification are all keyed by the
5
+ * (slotId, propName) pair of a top-level prop on a component. Root props belong
6
+ * to no component, so they key on `__root__`.
7
+ */
8
+ /** The slot id root props are keyed by. */
9
+ export declare const ROOT_SLOT_ID = "__root__";
10
+ /** A prop, addressed the way the stored maps key it. */
11
+ export interface PropTarget {
12
+ slotId: string;
13
+ propName: string;
14
+ }
15
+ /**
16
+ * The prop a fields-panel field acts on, or null when the field addresses no
17
+ * prop the stored maps can key.
18
+ *
19
+ * Puck composes a field id as `${slotId}_${fieldType}_${propName}`, using the
20
+ * literal `root` for a root prop, and appends `_${subName}` for each level below
21
+ * the top-level prop — where `name` becomes a path (`meta.title`,
22
+ * `items[0].title`). The maps key on the top-level prop, so a nested subfield
23
+ * has no address of its own and its controls belong on the prop above it.
24
+ */
25
+ export declare function resolvePropTarget(id: string | undefined, fieldType: string | undefined, name: string): PropTarget | null;
26
+ //# sourceMappingURL=prop-target.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prop-target.d.ts","sourceRoot":"","sources":["../../../src/features/localization/prop-target.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,2CAA2C;AAC3C,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,wDAAwD;AACxD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,IAAI,EAAE,MAAM,GACX,UAAU,GAAG,IAAI,CAUnB"}
@@ -0,0 +1,15 @@
1
+ export const ROOT_SLOT_ID = '__root__';
2
+ export function resolvePropTarget(id, fieldType, name) {
3
+ if (!id)
4
+ return null;
5
+ if (name.includes('.') || name.includes('['))
6
+ return null;
7
+ const suffix = `_${fieldType ?? ''}_${name}`;
8
+ if (!id.endsWith(suffix))
9
+ return null;
10
+ const slotId = id.slice(0, -suffix.length);
11
+ if (!slotId)
12
+ return null;
13
+ return { slotId: slotId === 'root' ? ROOT_SLOT_ID : slotId, propName: name };
14
+ }
15
+ //# sourceMappingURL=prop-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prop-target.js","sourceRoot":"","sources":["../../../src/features/localization/prop-target.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AAkBvC,MAAM,UAAU,iBAAiB,CAC/B,EAAsB,EACtB,SAA6B,EAC7B,IAAY;IAEZ,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1D,MAAM,MAAM,GAAG,IAAI,SAAS,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Localization Puck Overrides
3
+ *
4
+ * Contributes the per-prop fields-panel controls via the fieldTypes override:
5
+ * a single connected control per field renders the authority break/reset
6
+ * control on a translation and the translatability toggle on the canonical
7
+ * page. It reads the current document and client from P1 context at render
8
+ * time, so the override is inert on documents that are neither.
9
+ */
10
+ import type { P1FeaturePluginDeps } from '../../core/plugin-types.js';
11
+ export declare function buildLocalizationOverrides(_deps: P1FeaturePluginDeps): Record<string, unknown>;
12
+ //# sourceMappingURL=puck-overrides.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"puck-overrides.d.ts","sourceRoot":"","sources":["../../../src/features/localization/puck-overrides.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAatE,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,mBAAmB,GACzB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYzB"}