@pantheon-systems/puck-css 0.4.1 → 0.4.3

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 (214) hide show
  1. package/dist/core/config.d.ts +3 -0
  2. package/dist/core/config.d.ts.map +1 -1
  3. package/dist/core/config.js +5 -6
  4. package/dist/core/config.js.map +1 -1
  5. package/dist/core/featureConfig.d.ts +2 -0
  6. package/dist/core/featureConfig.d.ts.map +1 -1
  7. package/dist/core/featureConfig.js +4 -0
  8. package/dist/core/featureConfig.js.map +1 -1
  9. package/dist/core/types.d.ts +58 -1
  10. package/dist/core/types.d.ts.map +1 -1
  11. package/dist/data/dal/index.d.ts +5 -1
  12. package/dist/data/dal/index.d.ts.map +1 -1
  13. package/dist/data/dal/index.js +22 -1
  14. package/dist/data/dal/index.js.map +1 -1
  15. package/dist/data/dal/init.d.ts.map +1 -1
  16. package/dist/data/dal/init.js +22 -14
  17. package/dist/data/dal/init.js.map +1 -1
  18. package/dist/data/dal/p1-store.d.ts +15 -1
  19. package/dist/data/dal/p1-store.d.ts.map +1 -1
  20. package/dist/data/dal/p1-store.js +51 -5
  21. package/dist/data/dal/p1-store.js.map +1 -1
  22. package/dist/data/dal/types.d.ts +13 -1
  23. package/dist/data/dal/types.d.ts.map +1 -1
  24. package/dist/data/page-store.d.ts +17 -2
  25. package/dist/data/page-store.d.ts.map +1 -1
  26. package/dist/data/page-store.js +47 -5
  27. package/dist/data/page-store.js.map +1 -1
  28. package/dist/editor/P1App.d.ts.map +1 -1
  29. package/dist/editor/P1App.js +1 -1
  30. package/dist/editor/P1App.js.map +1 -1
  31. package/dist/editor/P1PuckProvider.d.ts.map +1 -1
  32. package/dist/editor/P1PuckProvider.js +175 -66
  33. package/dist/editor/P1PuckProvider.js.map +1 -1
  34. package/dist/editor/plugin/P1Plugin.d.ts +22 -1
  35. package/dist/editor/plugin/P1Plugin.d.ts.map +1 -1
  36. package/dist/editor/plugin/P1Plugin.js +72 -21
  37. package/dist/editor/plugin/P1Plugin.js.map +1 -1
  38. package/dist/editor/plugin/createP1Overrides.d.ts.map +1 -1
  39. package/dist/editor/plugin/createP1Overrides.js +4 -1
  40. package/dist/editor/plugin/createP1Overrides.js.map +1 -1
  41. package/dist/editor/useDocuments.d.ts +4 -1
  42. package/dist/editor/useDocuments.d.ts.map +1 -1
  43. package/dist/editor/useDocuments.js +5 -2
  44. package/dist/editor/useDocuments.js.map +1 -1
  45. package/dist/editor/useP1Editor.d.ts +12 -0
  46. package/dist/editor/useP1Editor.d.ts.map +1 -1
  47. package/dist/editor/useP1Editor.js +40 -5
  48. package/dist/editor/useP1Editor.js.map +1 -1
  49. package/dist/editor/useP1Plugin.d.ts +5 -1
  50. package/dist/editor/useP1Plugin.d.ts.map +1 -1
  51. package/dist/editor/useP1Plugin.js +4 -0
  52. package/dist/editor/useP1Plugin.js.map +1 -1
  53. package/dist/editor/useRealtime.d.ts +9 -4
  54. package/dist/editor/useRealtime.d.ts.map +1 -1
  55. package/dist/editor/useRealtime.js +11 -6
  56. package/dist/editor/useRealtime.js.map +1 -1
  57. package/dist/features/content-type-templates/editor/useTemplateEditor.d.ts +20 -0
  58. package/dist/features/content-type-templates/editor/useTemplateEditor.d.ts.map +1 -0
  59. package/dist/features/content-type-templates/editor/useTemplateEditor.js +62 -0
  60. package/dist/features/content-type-templates/editor/useTemplateEditor.js.map +1 -0
  61. package/dist/features/content-type-templates/editor/useTemplatePermissions.d.ts +7 -0
  62. package/dist/features/content-type-templates/editor/useTemplatePermissions.d.ts.map +1 -0
  63. package/dist/features/content-type-templates/editor/useTemplatePermissions.js +12 -0
  64. package/dist/features/content-type-templates/editor/useTemplatePermissions.js.map +1 -0
  65. package/dist/features/content-type-templates/editor/useTemplateScaffold.d.ts +19 -0
  66. package/dist/features/content-type-templates/editor/useTemplateScaffold.d.ts.map +1 -0
  67. package/dist/features/content-type-templates/editor/useTemplateScaffold.js +37 -0
  68. package/dist/features/content-type-templates/editor/useTemplateScaffold.js.map +1 -0
  69. package/dist/features/content-type-templates/hooks/useTemplateList.d.ts +41 -0
  70. package/dist/features/content-type-templates/hooks/useTemplateList.d.ts.map +1 -0
  71. package/dist/features/content-type-templates/hooks/useTemplateList.js +72 -0
  72. package/dist/features/content-type-templates/hooks/useTemplateList.js.map +1 -0
  73. package/dist/features/content-type-templates/index.d.ts +18 -0
  74. package/dist/features/content-type-templates/index.d.ts.map +1 -0
  75. package/dist/features/content-type-templates/index.js +13 -0
  76. package/dist/features/content-type-templates/index.js.map +1 -0
  77. package/dist/features/content-type-templates/permissions/createPuckPermissions.d.ts +68 -0
  78. package/dist/features/content-type-templates/permissions/createPuckPermissions.d.ts.map +1 -0
  79. package/dist/features/content-type-templates/permissions/createPuckPermissions.js +90 -0
  80. package/dist/features/content-type-templates/permissions/createPuckPermissions.js.map +1 -0
  81. package/dist/features/content-type-templates/permissions/role-permissions.d.ts +49 -0
  82. package/dist/features/content-type-templates/permissions/role-permissions.d.ts.map +1 -0
  83. package/dist/features/content-type-templates/permissions/role-permissions.js +79 -0
  84. package/dist/features/content-type-templates/permissions/role-permissions.js.map +1 -0
  85. package/dist/features/content-type-templates/permissions/useContentRole.d.ts +37 -0
  86. package/dist/features/content-type-templates/permissions/useContentRole.d.ts.map +1 -0
  87. package/dist/features/content-type-templates/permissions/useContentRole.js +34 -0
  88. package/dist/features/content-type-templates/permissions/useContentRole.js.map +1 -0
  89. package/dist/features/content-type-templates/permissions/useResolveContentRole.d.ts +38 -0
  90. package/dist/features/content-type-templates/permissions/useResolveContentRole.d.ts.map +1 -0
  91. package/dist/features/content-type-templates/permissions/useResolveContentRole.js +83 -0
  92. package/dist/features/content-type-templates/permissions/useResolveContentRole.js.map +1 -0
  93. package/dist/features/content-type-templates/stores/index.d.ts +9 -0
  94. package/dist/features/content-type-templates/stores/index.d.ts.map +1 -0
  95. package/dist/features/content-type-templates/stores/index.js +8 -0
  96. package/dist/features/content-type-templates/stores/index.js.map +1 -0
  97. package/dist/features/content-type-templates/stores/template-store-api.d.ts +17 -0
  98. package/dist/features/content-type-templates/stores/template-store-api.d.ts.map +1 -0
  99. package/dist/features/content-type-templates/stores/template-store-api.js +56 -0
  100. package/dist/features/content-type-templates/stores/template-store-api.js.map +1 -0
  101. package/dist/features/content-type-templates/stores/template-store.d.ts +54 -0
  102. package/dist/features/content-type-templates/stores/template-store.d.ts.map +1 -0
  103. package/dist/features/content-type-templates/stores/template-store.js +80 -0
  104. package/dist/features/content-type-templates/stores/template-store.js.map +1 -0
  105. package/dist/features/content-type-templates/types.d.ts +114 -0
  106. package/dist/features/content-type-templates/types.d.ts.map +1 -0
  107. package/dist/features/content-type-templates/types.js +7 -0
  108. package/dist/features/content-type-templates/types.js.map +1 -0
  109. package/dist/features/content-type-templates/ui/ActionBarPinButton.d.ts +3 -0
  110. package/dist/features/content-type-templates/ui/ActionBarPinButton.d.ts.map +1 -0
  111. package/dist/features/content-type-templates/ui/ActionBarPinButton.js +77 -0
  112. package/dist/features/content-type-templates/ui/ActionBarPinButton.js.map +1 -0
  113. package/dist/features/content-type-templates/ui/TemplateManagerOverlay.d.ts +18 -0
  114. package/dist/features/content-type-templates/ui/TemplateManagerOverlay.d.ts.map +1 -0
  115. package/dist/features/content-type-templates/ui/TemplateManagerOverlay.js +167 -0
  116. package/dist/features/content-type-templates/ui/TemplateManagerOverlay.js.map +1 -0
  117. package/dist/features/content-type-templates/ui/TemplatePinPanel.d.ts +18 -0
  118. package/dist/features/content-type-templates/ui/TemplatePinPanel.d.ts.map +1 -0
  119. package/dist/features/content-type-templates/ui/TemplatePinPanel.js +11 -0
  120. package/dist/features/content-type-templates/ui/TemplatePinPanel.js.map +1 -0
  121. package/dist/features/content-type-templates/ui/TemplateSelector.d.ts +41 -0
  122. package/dist/features/content-type-templates/ui/TemplateSelector.d.ts.map +1 -0
  123. package/dist/features/content-type-templates/ui/TemplateSelector.js +32 -0
  124. package/dist/features/content-type-templates/ui/TemplateSelector.js.map +1 -0
  125. package/dist/features/content-type-templates/ui/dataToTemplate.d.ts +25 -0
  126. package/dist/features/content-type-templates/ui/dataToTemplate.d.ts.map +1 -0
  127. package/dist/features/content-type-templates/ui/dataToTemplate.js +37 -0
  128. package/dist/features/content-type-templates/ui/dataToTemplate.js.map +1 -0
  129. package/dist/features/content-type-templates/validation/structural-validation.d.ts +29 -0
  130. package/dist/features/content-type-templates/validation/structural-validation.d.ts.map +1 -0
  131. package/dist/features/content-type-templates/validation/structural-validation.js +69 -0
  132. package/dist/features/content-type-templates/validation/structural-validation.js.map +1 -0
  133. package/dist/index.d.ts +8 -1
  134. package/dist/index.d.ts.map +1 -1
  135. package/dist/index.js +6 -1
  136. package/dist/index.js.map +1 -1
  137. package/dist/p1/editor/connect/connect-field-modal.d.ts.map +1 -1
  138. package/dist/p1/editor/connect/connect-field-modal.js +23 -1
  139. package/dist/p1/editor/connect/connect-field-modal.js.map +1 -1
  140. package/dist/p1/editor/connect/field-connect-plugin.d.ts.map +1 -1
  141. package/dist/p1/editor/connect/field-connect-plugin.js +2 -6
  142. package/dist/p1/editor/connect/field-connect-plugin.js.map +1 -1
  143. package/dist/p1/pages/conflict-resolution-panel.d.ts +17 -0
  144. package/dist/p1/pages/conflict-resolution-panel.d.ts.map +1 -0
  145. package/dist/p1/pages/conflict-resolution-panel.js +74 -0
  146. package/dist/p1/pages/conflict-resolution-panel.js.map +1 -0
  147. package/dist/p1/pages/content-type-template-list.d.ts +7 -0
  148. package/dist/p1/pages/content-type-template-list.d.ts.map +1 -0
  149. package/dist/p1/pages/content-type-template-list.js +108 -0
  150. package/dist/p1/pages/content-type-template-list.js.map +1 -0
  151. package/dist/p1/pages/create-content-type-form.d.ts +7 -0
  152. package/dist/p1/pages/create-content-type-form.d.ts.map +1 -0
  153. package/dist/p1/pages/create-content-type-form.js +102 -0
  154. package/dist/p1/pages/create-content-type-form.js.map +1 -0
  155. package/dist/p1/pages/create-page-form.d.ts +8 -1
  156. package/dist/p1/pages/create-page-form.d.ts.map +1 -1
  157. package/dist/p1/pages/create-page-form.js +67 -8
  158. package/dist/p1/pages/create-page-form.js.map +1 -1
  159. package/dist/p1/pages/create-template-form.d.ts +6 -1
  160. package/dist/p1/pages/create-template-form.d.ts.map +1 -1
  161. package/dist/p1/pages/create-template-form.js +61 -15
  162. package/dist/p1/pages/create-template-form.js.map +1 -1
  163. package/dist/p1/pages/hooks.d.ts +6 -1
  164. package/dist/p1/pages/hooks.d.ts.map +1 -1
  165. package/dist/p1/pages/hooks.js +13 -2
  166. package/dist/p1/pages/hooks.js.map +1 -1
  167. package/dist/p1/pages/index.d.ts +5 -0
  168. package/dist/p1/pages/index.d.ts.map +1 -1
  169. package/dist/p1/pages/index.js +5 -0
  170. package/dist/p1/pages/index.js.map +1 -1
  171. package/dist/p1/pages/migration-conflict-queue.d.ts +8 -0
  172. package/dist/p1/pages/migration-conflict-queue.d.ts.map +1 -0
  173. package/dist/p1/pages/migration-conflict-queue.js +62 -0
  174. package/dist/p1/pages/migration-conflict-queue.js.map +1 -0
  175. package/dist/p1/pages/migration-preview-panel.d.ts +12 -0
  176. package/dist/p1/pages/migration-preview-panel.d.ts.map +1 -0
  177. package/dist/p1/pages/migration-preview-panel.js +157 -0
  178. package/dist/p1/pages/migration-preview-panel.js.map +1 -0
  179. package/dist/p1/pages/migration-status-panel.d.ts +7 -0
  180. package/dist/p1/pages/migration-status-panel.d.ts.map +1 -0
  181. package/dist/p1/pages/migration-status-panel.js +198 -0
  182. package/dist/p1/pages/migration-status-panel.js.map +1 -0
  183. package/dist/p1/pages/structure-page.d.ts.map +1 -1
  184. package/dist/p1/pages/structure-page.js +75 -18
  185. package/dist/p1/pages/structure-page.js.map +1 -1
  186. package/dist/p1/pages/structure-tabs.d.ts +11 -0
  187. package/dist/p1/pages/structure-tabs.d.ts.map +1 -0
  188. package/dist/p1/pages/structure-tabs.js +45 -0
  189. package/dist/p1/pages/structure-tabs.js.map +1 -0
  190. package/dist/pds/components/P1EditorHeader.d.ts +8 -9
  191. package/dist/pds/components/P1EditorHeader.d.ts.map +1 -1
  192. package/dist/pds/components/P1EditorHeader.js +20 -52
  193. package/dist/pds/components/P1EditorHeader.js.map +1 -1
  194. package/dist/pds/components/P1EditorHeader.module.css +43 -17
  195. package/dist/pds/components/P1EditorSubheader.d.ts +10 -1
  196. package/dist/pds/components/P1EditorSubheader.d.ts.map +1 -1
  197. package/dist/pds/components/P1EditorSubheader.js +4 -3
  198. package/dist/pds/components/P1EditorSubheader.js.map +1 -1
  199. package/dist/pds/components/P1EditorSubheader.module.css +31 -2
  200. package/dist/pds/components/PageNavigator.d.ts +7 -2
  201. package/dist/pds/components/PageNavigator.d.ts.map +1 -1
  202. package/dist/pds/components/PageNavigator.js +28 -7
  203. package/dist/pds/components/PageNavigator.js.map +1 -1
  204. package/dist/pds/components/PageNavigator.module.css +70 -0
  205. package/dist/pds/components/PublishControl.d.ts +4 -1
  206. package/dist/pds/components/PublishControl.d.ts.map +1 -1
  207. package/dist/pds/components/PublishControl.js +27 -10
  208. package/dist/pds/components/PublishControl.js.map +1 -1
  209. package/dist/pds/components/WorkstreamSwitcher.d.ts.map +1 -1
  210. package/dist/pds/components/WorkstreamSwitcher.js +8 -3
  211. package/dist/pds/components/WorkstreamSwitcher.js.map +1 -1
  212. package/dist/pds/components/WorkstreamSwitcher.module.css +12 -2
  213. package/package.json +16 -16
  214. package/src/styles.css +364 -0
@@ -0,0 +1,45 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useState, useEffect, useRef } from "react";
4
+ import { useP1Router } from "../router-context";
5
+ function getInitialTab(tabs) {
6
+ if (typeof window !== "undefined") {
7
+ const hash = window.location.hash.slice(1);
8
+ if (tabs.some((t) => t.id === hash))
9
+ return hash;
10
+ }
11
+ return tabs[0]?.id ?? "";
12
+ }
13
+ export function StructureTabs({ tabs }) {
14
+ const [activeTab, setActiveTab] = useState(() => getInitialTab(tabs));
15
+ const isInitialRender = useRef(true);
16
+ const router = useP1Router();
17
+ const routerRef = useRef(router);
18
+ routerRef.current = router;
19
+ useEffect(() => {
20
+ window.location.hash = activeTab;
21
+ if (isInitialRender.current) {
22
+ isInitialRender.current = false;
23
+ return;
24
+ }
25
+ routerRef.current.refresh();
26
+ window.dispatchEvent(new CustomEvent("p1:tab-activated", { detail: { tabId: activeTab } }));
27
+ }, [activeTab]);
28
+ return (_jsxs("div", { children: [_jsx("div", { style: {
29
+ display: "flex",
30
+ gap: 0,
31
+ borderBottom: "2px solid #e0e0e0",
32
+ marginBottom: 16,
33
+ }, children: tabs.map((tab) => (_jsx("button", { type: "button", onClick: () => setActiveTab(tab.id), style: {
34
+ padding: "10px 20px",
35
+ fontSize: 14,
36
+ fontWeight: activeTab === tab.id ? 600 : 400,
37
+ color: activeTab === tab.id ? "#111" : "#666",
38
+ background: "none",
39
+ border: "none",
40
+ borderBottom: activeTab === tab.id ? "2px solid #111" : "2px solid transparent",
41
+ marginBottom: -2,
42
+ cursor: "pointer",
43
+ }, children: tab.label }, tab.id))) }), tabs.map((tab) => (_jsx("div", { style: { display: activeTab === tab.id ? "block" : "none" }, children: tab.content }, tab.id)))] }));
44
+ }
45
+ //# sourceMappingURL=structure-tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structure-tabs.js","sourceRoot":"","sources":["../../../src/p1/pages/structure-tabs.tsx"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@
7
7
  * (non-main branches only).
8
8
  */
9
9
  import React from 'react';
10
- import type { Branch } from '@pantheon-systems/css-client';
11
10
  import type { PageNavigatorDocument } from './PageNavigator.js';
11
+ import type { Template } from '../../features/content-type-templates/types.js';
12
12
  export type { PageNavigatorDocument };
13
13
  export interface CurrentUser {
14
14
  id: string;
@@ -22,20 +22,19 @@ export interface SiteMenuItem {
22
22
  callback: () => void;
23
23
  }
24
24
  export interface P1EditorHeaderProps {
25
- branches: Branch[];
26
- currentBranch: Branch | null;
27
25
  documents: PageNavigatorDocument[];
28
26
  currentDocument: PageNavigatorDocument | null;
29
27
  selectedDocumentPath?: string | null;
30
28
  currentUser?: CurrentUser;
31
29
  siteName: string;
32
- siteMenuItems: SiteMenuItem[];
33
- onSwitchBranch: (id: string) => void;
30
+ siteId?: string;
31
+ dashboardUrl?: string;
34
32
  onSelectDocument: (doc: PageNavigatorDocument) => void;
35
- onCreateDocument?: (path: string) => Promise<void>;
36
- onCreateBranch?: (name: string) => Promise<void>;
37
- onCompareWithLive: () => void;
33
+ onCreateDocument?: (path: string, template?: Template | null) => Promise<void>;
38
34
  onLogout: () => void;
35
+ templates?: Template[];
36
+ templatesLoading?: boolean;
37
+ onManageTemplates?: () => void;
39
38
  }
40
- export declare function P1EditorHeader({ branches, currentBranch, documents, currentDocument, selectedDocumentPath, currentUser, siteName, siteMenuItems, onCreateBranch, onSwitchBranch, onSelectDocument, onCreateDocument, onCompareWithLive, onLogout, }: P1EditorHeaderProps): React.ReactElement;
39
+ export declare function P1EditorHeader({ documents, currentDocument, selectedDocumentPath, currentUser, siteName, siteId, dashboardUrl, onSelectDocument, onCreateDocument, onLogout, templates, templatesLoading, onManageTemplates, }: P1EditorHeaderProps): React.ReactElement;
41
40
  //# sourceMappingURL=P1EditorHeader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"P1EditorHeader.d.ts","sourceRoot":"","sources":["../../../src/pds/components/P1EditorHeader.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAK3D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAGhE,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,eAAe,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC9C,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,cAAc,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,gBAAgB,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACvD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,aAAa,EACb,SAAS,EACT,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,QAAQ,EACR,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,QAAQ,GACT,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,CA0U1C"}
1
+ {"version":3,"file":"P1EditorHeader.d.ts","sourceRoot":"","sources":["../../../src/pds/components/P1EditorHeader.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gDAAgD,CAAC;AAG/E,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,eAAe,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC9C,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACvD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC;AAED,wBAAgB,cAAc,CAAC,EAC7B,SAAS,EACT,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,iBAAiB,GAClB,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAgR1C"}
@@ -7,27 +7,21 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
7
  * user avatar with account menu, and the "Compare with Live" button
8
8
  * (non-main branches only).
9
9
  */
10
- import { useState, useRef, useCallback, useEffect } from 'react';
10
+ import React, { useState, useRef, useCallback, useEffect } from 'react';
11
11
  import { createPortal } from 'react-dom';
12
- import { Icon, Button, Avatar, PantheonLogo } from '@pantheon-systems/pds-toolkit-react';
12
+ import { Icon, Avatar, PantheonLogo } from '@pantheon-systems/pds-toolkit-react';
13
13
  import { getAvatarStyleOverride } from '../../collaboration/utils/avatarColor.js';
14
- import { WorkstreamSwitcher } from './WorkstreamSwitcher.js';
15
14
  import { PageNavigator } from './PageNavigator.js';
16
15
  import styles from './P1EditorHeader.module.css';
17
- export function P1EditorHeader({ branches, currentBranch, documents, currentDocument, selectedDocumentPath, currentUser, siteName, siteMenuItems, onCreateBranch, onSwitchBranch, onSelectDocument, onCreateDocument, onCompareWithLive, onLogout, }) {
16
+ export function P1EditorHeader({ documents, currentDocument, selectedDocumentPath, currentUser, siteName, siteId, dashboardUrl, onSelectDocument, onCreateDocument, onLogout, templates, templatesLoading, onManageTemplates, }) {
18
17
  const [pageNavigatorOpen, setPageNavigatorOpen] = useState(false);
19
18
  const [navigatorPortalStyle, setNavigatorPortalStyle] = useState();
20
19
  const pageSelectorRef = useRef(null);
21
- const [siteMenuOpen, setSiteMenuOpen] = useState(false);
22
- const [siteMenuStyle, setSiteMenuStyle] = useState({});
23
- const siteMenuTriggerRef = useRef(null);
24
- const siteMenuDropdownRef = useRef(null);
25
20
  const [userMenuOpen, setUserMenuOpen] = useState(false);
26
21
  const [userMenuStyle, setUserMenuStyle] = useState({});
27
22
  const userMenuTriggerRef = useRef(null);
28
23
  const userMenuRef = useRef(null);
29
24
  const handlePageSelectorClick = useCallback(() => {
30
- setSiteMenuOpen(false);
31
25
  setUserMenuOpen(false);
32
26
  if (!pageNavigatorOpen && pageSelectorRef.current) {
33
27
  const rect = pageSelectorRef.current.getBoundingClientRect();
@@ -42,25 +36,8 @@ export function P1EditorHeader({ branches, currentBranch, documents, currentDocu
42
36
  }
43
37
  setPageNavigatorOpen((o) => !o);
44
38
  }, [pageNavigatorOpen]);
45
- const handleSiteMenuClick = useCallback(() => {
46
- setPageNavigatorOpen(false);
47
- setUserMenuOpen(false);
48
- if (!siteMenuOpen && siteMenuTriggerRef.current) {
49
- const rect = siteMenuTriggerRef.current.getBoundingClientRect();
50
- const menuMaxW = Math.min(280, window.innerWidth - 16);
51
- setSiteMenuStyle({
52
- position: 'fixed',
53
- top: rect.bottom + 6,
54
- left: Math.min(rect.left, window.innerWidth - menuMaxW - 8),
55
- maxWidth: menuMaxW,
56
- zIndex: 9999,
57
- });
58
- }
59
- setSiteMenuOpen((prev) => !prev);
60
- }, [siteMenuOpen]);
61
39
  const handleUserMenuClick = useCallback(() => {
62
40
  setPageNavigatorOpen(false);
63
- setSiteMenuOpen(false);
64
41
  if (!userMenuOpen && userMenuTriggerRef.current) {
65
42
  const rect = userMenuTriggerRef.current.getBoundingClientRect();
66
43
  setUserMenuStyle({
@@ -88,20 +65,6 @@ export function P1EditorHeader({ branches, currentBranch, documents, currentDocu
88
65
  document.addEventListener('pointerdown', handleClickOutside, { capture: true });
89
66
  return () => document.removeEventListener('pointerdown', handleClickOutside, { capture: true });
90
67
  }, [pageNavigatorOpen]);
91
- useEffect(() => {
92
- if (!siteMenuOpen)
93
- return;
94
- function handleClickOutside(e) {
95
- const target = e.target;
96
- if (siteMenuTriggerRef.current?.contains(target) ||
97
- siteMenuDropdownRef.current?.contains(target)) {
98
- return;
99
- }
100
- setSiteMenuOpen(false);
101
- }
102
- document.addEventListener('pointerdown', handleClickOutside, { capture: true });
103
- return () => document.removeEventListener('pointerdown', handleClickOutside, { capture: true });
104
- }, [siteMenuOpen]);
105
68
  useEffect(() => {
106
69
  if (!userMenuOpen)
107
70
  return;
@@ -115,22 +78,27 @@ export function P1EditorHeader({ branches, currentBranch, documents, currentDocu
115
78
  document.addEventListener('pointerdown', handleClickOutside, { capture: true });
116
79
  return () => document.removeEventListener('pointerdown', handleClickOutside, { capture: true });
117
80
  }, [userMenuOpen]);
118
- const isMain = currentBranch?.isMain ?? true;
119
81
  function handleSelectDocument(doc) {
120
82
  onSelectDocument(doc);
121
83
  setPageNavigatorOpen(false);
122
84
  }
123
- return (_jsxs("header", { "data-testid": "p1-editor-header", className: styles.header, children: [_jsx(PantheonLogo, { "data-testid": "p1-logo", className: styles.logo, displayType: "sub-brand", subBrand: "P1", size: "s", linkContent: null }), _jsxs("button", { ref: siteMenuTriggerRef, "data-testid": "site-selector", type: "button", className: styles.siteSelector, onClick: handleSiteMenuClick, "aria-haspopup": "menu", "aria-expanded": siteMenuOpen, children: [_jsx(Icon, { iconName: "globe", iconSize: "s", "aria-hidden": "true" }), _jsxs("span", { className: styles.labelText, children: [siteName, _jsx(Icon, { iconName: "angleDown", iconSize: "s", "aria-hidden": "true" })] })] }), siteMenuOpen &&
124
- createPortal(_jsx("div", { ref: siteMenuDropdownRef, "data-testid": "site-menu", className: styles.dropdownMenu, role: "menu", style: siteMenuStyle, children: siteMenuItems.map((item) => (_jsxs("button", { type: "button", role: "menuitem", className: styles.dropdownMenuItem, onClick: () => {
125
- setSiteMenuOpen(false);
126
- item.callback();
127
- }, children: [item.iconName && _jsx(Icon, { iconName: item.iconName, iconSize: "s", "aria-hidden": "true" }), item.label] }, item.label))) }), document.body), _jsx("div", { className: styles.divider }), _jsx(WorkstreamSwitcher, { branches: branches, currentBranch: currentBranch, onSwitch: onSwitchBranch, onCreateBranch: onCreateBranch, onCompareWithLive: onCompareWithLive, hideCompareButton: true }), _jsxs("button", { ref: pageSelectorRef, "data-testid": "page-selector", className: styles.pageSelector, onClick: handlePageSelectorClick, type: "button", "aria-haspopup": "true", "aria-expanded": pageNavigatorOpen, children: [_jsx(Icon, { iconName: "folderTree", iconSize: "s", "aria-hidden": "true" }), _jsxs("span", { className: styles.labelText, children: [currentDocument?.path || selectedDocumentPath || 'Select a page', _jsx(Icon, { iconName: "angleDown", iconSize: "s", "aria-hidden": "true" })] })] }), (() => {
128
- const pagePath = currentDocument?.path || selectedDocumentPath;
129
- // Show button if there's a path and it's not empty/root
130
- const shouldShow = pagePath && pagePath !== '/' && pagePath !== '';
131
- return shouldShow ? (_jsx("a", { href: pagePath, target: "_blank", rel: "noopener noreferrer", className: styles.externalLinkButton, title: "Open page in new tab", "data-testid": "open-external", children: _jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }), _jsx("polyline", { points: "15 3 21 3 21 9" }), _jsx("line", { x1: "10", x2: "21", y1: "14", y2: "3" })] }) })) : null;
132
- })(), _jsx(PageNavigator, { open: pageNavigatorOpen, documents: documents, currentDocument: currentDocument, isMainBranch: isMain, onSelect: handleSelectDocument, onCreateDocument: onCreateDocument, onClose: () => setPageNavigatorOpen(false), portalStyle: navigatorPortalStyle }), _jsx("div", { className: styles.spacer }), !isMain && (_jsx("span", { className: styles.compareButton, children: _jsx(Button, { "data-testid": "compare-with-live", label: "Compare with Live", variant: "secondary", size: "sm", onClick: onCompareWithLive, buttonType: "button" }) })), _jsx("button", { ref: userMenuTriggerRef, "data-testid": "user-menu-trigger", type: "button", className: styles.userAvatar, onClick: handleUserMenuClick, "aria-haspopup": "menu", "aria-expanded": userMenuOpen, "aria-label": "Account menu", style: currentUser ? getAvatarStyleOverride(currentUser.id) : undefined, children: currentUser?.avatar ? (_jsx("div", { className: "pds-avatar pds-avatar--md pds-avatar--image", children: _jsx("span", { className: "pds-avatar__content", children: _jsx("img", { alt: "", className: "pds-avatar__image", src: currentUser.avatar, referrerPolicy: "no-referrer", crossOrigin: "anonymous" }) }) })) : (_jsx(Avatar, { uniqueId: currentUser?.id, hasUserFallback: true, size: "m" })) }), userMenuOpen &&
133
- createPortal(_jsxs("div", { ref: userMenuRef, "data-testid": "user-menu", className: styles.dropdownMenu, role: "menu", style: userMenuStyle, children: [currentUser?.name && (_jsx("div", { className: styles.dropdownUserInfo, role: "presentation", children: currentUser.name })), _jsxs("button", { type: "button", role: "menuitem", "data-testid": "user-menu-logout", className: styles.dropdownMenuItem, onClick: () => {
85
+ // Build dashboard URL if siteId is provided
86
+ const dashboardHref = React.useMemo(() => {
87
+ if (!siteId)
88
+ return undefined;
89
+ const baseUrl = (dashboardUrl || 'https://content.pantheon.io').replace(/\/$/, '');
90
+ return `${baseUrl}/dashboard/sites/${siteId}`;
91
+ }, [siteId, dashboardUrl]);
92
+ return (_jsxs("header", { "data-testid": "p1-editor-header", className: styles.header, children: [dashboardHref ? (_jsx("a", { href: dashboardHref, className: styles.logoLink, title: "Go to P1 Dashboard", "data-testid": "p1-logo-link", target: "_blank", rel: "noopener noreferrer", children: _jsx(PantheonLogo, { "data-testid": "p1-logo", className: styles.logo, displayType: "sub-brand", subBrand: "P1", size: "s", linkContent: null }) })) : (_jsx(PantheonLogo, { "data-testid": "p1-logo", className: styles.logo, displayType: "sub-brand", subBrand: "P1", size: "s", linkContent: null })), _jsx("div", { "data-testid": "site-label", className: styles.siteLabel, children: _jsxs("span", { className: styles.labelText, children: ["Site: ", siteName] }) }), _jsxs("div", { className: styles.pageSelectorGroup, children: [_jsxs("button", { ref: pageSelectorRef, "data-testid": "page-selector", className: styles.pageSelector, onClick: handlePageSelectorClick, type: "button", "aria-haspopup": "true", "aria-expanded": pageNavigatorOpen, children: [_jsx(Icon, { iconName: "folderTree", iconSize: "s", "aria-hidden": "true" }), _jsxs("span", { className: styles.labelText, children: [currentDocument?.path || selectedDocumentPath || 'Select a page', _jsx(Icon, { iconName: "angleDown", iconSize: "s", "aria-hidden": "true" })] })] }), (() => {
93
+ const pagePath = currentDocument?.path || selectedDocumentPath;
94
+ // Show button if there's a path and it's not empty/root
95
+ const shouldShow = pagePath && pagePath !== '/' && pagePath !== '';
96
+ return shouldShow ? (_jsx("a", { href: pagePath, target: "_blank", rel: "noopener noreferrer", className: styles.externalLinkButton, title: "Open page in new tab", "data-testid": "open-external", children: _jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }), _jsx("polyline", { points: "15 3 21 3 21 9" }), _jsx("line", { x1: "10", x2: "21", y1: "14", y2: "3" })] }) })) : null;
97
+ })()] }), _jsx(PageNavigator, { open: pageNavigatorOpen, documents: documents, currentDocument: currentDocument, isMainBranch: true, onSelect: handleSelectDocument, onCreateDocument: onCreateDocument, templates: templates, templatesLoading: templatesLoading, onClose: () => setPageNavigatorOpen(false), portalStyle: navigatorPortalStyle }), _jsx("div", { className: styles.spacer }), _jsx("button", { ref: userMenuTriggerRef, "data-testid": "user-menu-trigger", type: "button", className: styles.userAvatar, onClick: handleUserMenuClick, "aria-haspopup": "menu", "aria-expanded": userMenuOpen, "aria-label": "Account menu", style: currentUser ? getAvatarStyleOverride(currentUser.id) : undefined, children: currentUser?.avatar ? (_jsx("div", { className: "pds-avatar pds-avatar--md pds-avatar--image", children: _jsx("span", { className: "pds-avatar__content", children: _jsx("img", { alt: "", className: "pds-avatar__image", src: currentUser.avatar, referrerPolicy: "no-referrer", crossOrigin: "anonymous" }) }) })) : (_jsx(Avatar, { uniqueId: currentUser?.id, hasUserFallback: true, size: "m" })) }), userMenuOpen &&
98
+ createPortal(_jsxs("div", { ref: userMenuRef, "data-testid": "user-menu", className: styles.dropdownMenu, role: "menu", style: userMenuStyle, children: [currentUser?.name && (_jsx("div", { className: styles.dropdownUserInfo, role: "presentation", children: currentUser.name })), onManageTemplates && (_jsxs("button", { type: "button", role: "menuitem", className: styles.dropdownMenuItem, onClick: () => {
99
+ setUserMenuOpen(false);
100
+ onManageTemplates();
101
+ }, children: [_jsx(Icon, { iconName: "grid", iconSize: "s", "aria-hidden": "true" }), "Manage Templates"] })), _jsxs("button", { type: "button", role: "menuitem", "data-testid": "user-menu-logout", className: styles.dropdownMenuItem, onClick: () => {
134
102
  setUserMenuOpen(false);
135
103
  onLogout();
136
104
  }, children: [_jsx(Icon, { iconName: "bracketRight", iconSize: "s", "aria-hidden": "true" }), "Log out"] })] }), document.body)] }));
@@ -1 +1 @@
1
- {"version":3,"file":"P1EditorHeader.js","sourceRoot":"","sources":["../../../src/pds/components/P1EditorHeader.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"P1EditorHeader.js","sourceRoot":"","sources":["../../../src/pds/components/P1EditorHeader.tsx"],"names":[],"mappings":"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"}
@@ -35,6 +35,23 @@
35
35
  The PDS component defaults to 3.052rem icon height; we scale it down
36
36
  to fit the compact 52px editor header. */
37
37
 
38
+ .logoLink {
39
+ flex-shrink: 0;
40
+ text-decoration: none;
41
+ display: inline-flex;
42
+ align-items: center;
43
+ cursor: pointer;
44
+ transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1);
45
+ }
46
+
47
+ .logoLink:hover {
48
+ opacity: 0.7;
49
+ }
50
+
51
+ .logoLink .logo {
52
+ cursor: pointer;
53
+ }
54
+
38
55
  .logo {
39
56
  flex-shrink: 0;
40
57
  user-select: none;
@@ -52,30 +69,21 @@
52
69
  padding-inline-end: 0;
53
70
  }
54
71
 
55
- /* ── Site selector button ───────────────────────────────────────────── */
72
+ /* ── Site label ───────────────────────────────────────────── */
56
73
 
57
- .siteSelector {
74
+ .siteLabel {
58
75
  display: inline-flex;
59
76
  align-items: center;
60
- gap: 0.41rem;
61
77
  padding: 0.41rem 0.64rem;
62
- background: transparent;
63
- border: 1px solid var(--pds-color-border-default, oklch(0.9401 0 0));
64
- border-radius: var(--pds-border-radius-default, 0.188rem);
65
78
  font-family: var(--pds-typography-ff-default, 'Inter', sans-serif);
66
79
  font-size: var(--pds-typography-size-s, 0.875rem);
80
+ font-weight: var(--pds-typography-fw-medium, 500);
67
81
  color: var(--pds-color-fg-default, oklch(0.2046 0 0));
68
- cursor: pointer;
69
82
  white-space: nowrap;
70
83
  line-height: 1;
71
84
  flex-shrink: 0;
72
85
  }
73
86
 
74
- .siteSelector:hover {
75
- background: var(--pds-color-button-secondary-background-hover, oklch(0.96 0 0));
76
- border-color: var(--pds-color-button-secondary-border-hover, oklch(0.75 0 0));
77
- }
78
-
79
87
  /* ── Vertical divider between site selector and workstream switcher ── */
80
88
  /* Prototype: <div style={{ width: 1, height: 20, background: c.borderSubtle }} /> */
81
89
 
@@ -95,6 +103,14 @@
95
103
  position: relative;
96
104
  }
97
105
 
106
+ /* ── Page selector button group ────────────────────────────────────────────── */
107
+
108
+ .pageSelectorGroup {
109
+ display: inline-flex;
110
+ align-items: center;
111
+ flex-shrink: 0;
112
+ }
113
+
98
114
  /* ── Page selector button ────────────────────────────────────────────── */
99
115
  /* Mirrors the WorkstreamSwitcher trigger styling */
100
116
 
@@ -105,8 +121,8 @@
105
121
  height: 2rem;
106
122
  padding: 0.5rem 0.64rem;
107
123
  background: transparent;
108
- border: 1px solid oklch(0.96 0 0); /* borderSubtle */
109
- border-radius: var(--pds-border-radius-default, 0.188rem);
124
+ border: 1px solid var(--pds-color-border-input, oklch(0.8853 0 0));
125
+ border-radius: var(--pds-border-radius-button, 3.5rem);
110
126
  font-family: var(--pds-typography-ff-default, 'Inter', sans-serif);
111
127
  font-size: var(--pds-typography-size-s, 0.875rem);
112
128
  font-weight: var(--pds-typography-fw-medium, 500);
@@ -128,6 +144,12 @@
128
144
  border-color: oklch(0.75 0 0); /* borderStrong */
129
145
  }
130
146
 
147
+ /* When external link button follows page selector, create button group */
148
+ .pageSelector:has(+ .externalLinkButton) {
149
+ border-top-right-radius: 0;
150
+ border-bottom-right-radius: 0;
151
+ }
152
+
131
153
  /* ── External link button ──────────────────────────────────────────────── */
132
154
 
133
155
  .externalLinkButton {
@@ -138,8 +160,10 @@
138
160
  height: 2rem;
139
161
  padding: 0.5rem;
140
162
  background: transparent;
141
- border: 1px solid oklch(0.96 0 0); /* borderSubtle */
142
- border-radius: var(--pds-border-radius-default, 0.188rem);
163
+ border: 1px solid var(--pds-color-border-input, oklch(0.8853 0 0));
164
+ border-radius: var(--pds-border-radius-button, 3.5rem);
165
+ border-top-left-radius: 0;
166
+ border-bottom-left-radius: 0;
143
167
  color: var(--pds-color-fg-default, oklch(0.2046 0 0));
144
168
  cursor: pointer;
145
169
  text-decoration: none;
@@ -147,12 +171,14 @@
147
171
  background 0.2s cubic-bezier(0.2, 0, 0, 1),
148
172
  border-color 0.2s cubic-bezier(0.2, 0, 0, 1);
149
173
  flex-shrink: 0;
150
- margin-left: 0.5rem;
174
+ margin-left: -1px;
151
175
  }
152
176
 
153
177
  .externalLinkButton:hover {
154
178
  background: oklch(0.96 0 0); /* bgSubtle */
155
179
  border-color: oklch(0.75 0 0); /* borderStrong */
180
+ position: relative;
181
+ z-index: 1; /* Bring to front on hover so border is visible */
156
182
  }
157
183
 
158
184
  /* ── Spacer ──────────────────────────────────────────────────────────── */
@@ -9,6 +9,7 @@
9
9
  * bar (P1EditorHeader), shown only when not on the live workstream.
10
10
  */
11
11
  import React from 'react';
12
+ import type { Branch } from '@pantheon-systems/css-client';
12
13
  import type { DocState } from '../types.js';
13
14
  export interface SubheaderActor {
14
15
  id: string;
@@ -30,6 +31,7 @@ export interface P1EditorSubheaderProps {
30
31
  onStopAgent: (id: string) => void;
31
32
  onPublish?: () => Promise<void> | void;
32
33
  onReviewAndPublish?: () => void;
34
+ onReviewWorkstream?: () => void;
33
35
  onCreateWorkstream?: () => void;
34
36
  onDeleteDocument?: () => Promise<void> | void;
35
37
  hasPast: boolean;
@@ -38,8 +40,15 @@ export interface P1EditorSubheaderProps {
38
40
  onRedo: () => void;
39
41
  leftPanelVisible?: boolean;
40
42
  rightPanelVisible?: boolean;
43
+ pluginRailVisible?: boolean;
41
44
  onToggleLeftPanel?: () => void;
42
45
  onToggleRightPanel?: () => void;
46
+ onTogglePluginRail?: () => void;
47
+ branches: Branch[];
48
+ currentBranch: Branch | null;
49
+ onSwitchBranch: (id: string) => void;
50
+ onCompareWithLive: () => void;
51
+ onCreateBranch?: (name: string) => Promise<void>;
43
52
  }
44
- export declare function P1EditorSubheader({ puckActions, docState, hasDrift, context, agents, humanActors, onStopAgent, onPublish, onReviewAndPublish, onCreateWorkstream, onDeleteDocument, hasPast, hasFuture, onUndo, onRedo, leftPanelVisible, rightPanelVisible, onToggleLeftPanel, onToggleRightPanel, }: P1EditorSubheaderProps): React.ReactElement;
53
+ export declare function P1EditorSubheader({ puckActions, docState, hasDrift, context, agents, humanActors, onStopAgent, onPublish, onReviewAndPublish, onReviewWorkstream, onCreateWorkstream, onDeleteDocument, hasPast, hasFuture, onUndo, onRedo, leftPanelVisible, rightPanelVisible, pluginRailVisible, onToggleLeftPanel, onToggleRightPanel, onTogglePluginRail, branches, currentBranch, onSwitchBranch, onCompareWithLive, onCreateBranch, }: P1EditorSubheaderProps): React.ReactElement;
45
54
  //# sourceMappingURL=P1EditorSubheader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"P1EditorSubheader.d.ts","sourceRoot":"","sources":["../../../src/pds/components/P1EditorSubheader.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAM5C,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC3B,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACjC;AAED,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,WAAW,EACX,WAAW,EACX,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,SAAS,EACT,MAAM,EACN,MAAM,EACN,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,GACnB,EAAE,sBAAsB,GAAG,KAAK,CAAC,YAAY,CA4G7C"}
1
+ {"version":3,"file":"P1EditorSubheader.d.ts","sourceRoot":"","sources":["../../../src/pds/components/P1EditorSubheader.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAO5C,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC3B,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEhC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD;AAED,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,WAAW,EACX,WAAW,EACX,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,SAAS,EACT,MAAM,EACN,MAAM,EACN,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,QAAQ,EACR,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,cAAc,GACf,EAAE,sBAAsB,GAAG,KAAK,CAAC,YAAY,CA8I7C"}
@@ -3,9 +3,10 @@ import { IconButton } from '@pantheon-systems/pds-toolkit-react';
3
3
  import { AgentChip } from './AgentChip.js';
4
4
  import { PresenceStack } from './PresenceStack.js';
5
5
  import { PublishControl } from './PublishControl.js';
6
+ import { WorkstreamSwitcher } from './WorkstreamSwitcher.js';
6
7
  import styles from './P1EditorSubheader.module.css';
7
- export function P1EditorSubheader({ puckActions, docState, hasDrift, context, agents, humanActors, onStopAgent, onPublish, onReviewAndPublish, onCreateWorkstream, onDeleteDocument, hasPast, hasFuture, onUndo, onRedo, leftPanelVisible, rightPanelVisible, onToggleLeftPanel, onToggleRightPanel, }) {
8
- return (_jsxs("div", { "data-testid": "p1-editor-subheader", className: styles.subheader, children: [_jsxs("div", { "data-testid": "panel-toggles", className: styles.panelToggles, children: [_jsx(IconButton, { ariaLabel: "Toggle left panel", iconName: "tableRows", size: "s", hasTooltip: false, hasBorder: false, "aria-pressed": leftPanelVisible, onClick: onToggleLeftPanel }), _jsx(IconButton, { ariaLabel: "Toggle right panel", iconName: "penField", size: "s", hasTooltip: false, hasBorder: false, "aria-pressed": rightPanelVisible, onClick: onToggleRightPanel })] }), puckActions, _jsxs("div", { "data-testid": "device-selector", className: styles.historyGroup, children: [_jsx(IconButton, { "data-testid": "undo-btn", ariaLabel: "Undo", iconName: "rotateLeft", size: "s", disabled: !hasPast, onClick: onUndo, hasTooltip: false, hasBorder: false }), _jsx(IconButton, { "data-testid": "redo-btn", ariaLabel: "Redo", iconName: "rotateRight", size: "s", disabled: !hasFuture, onClick: onRedo, hasTooltip: false, hasBorder: false })] }), _jsx("div", { className: styles.spacer }), _jsxs("div", { className: styles.actorsArea, children: [agents.map((actor) => (_jsx(AgentChip, { id: actor.id, agent: {
8
+ export function P1EditorSubheader({ puckActions, docState, hasDrift, context, agents, humanActors, onStopAgent, onPublish, onReviewAndPublish, onReviewWorkstream, onCreateWorkstream, onDeleteDocument, hasPast, hasFuture, onUndo, onRedo, leftPanelVisible, rightPanelVisible, pluginRailVisible, onToggleLeftPanel, onToggleRightPanel, onTogglePluginRail, branches, currentBranch, onSwitchBranch, onCompareWithLive, onCreateBranch, }) {
9
+ return (_jsxs("div", { "data-testid": "p1-editor-subheader", className: styles.subheader, children: [_jsxs("div", { "data-testid": "panel-toggles", className: styles.panelToggles, children: [_jsx(IconButton, { ariaLabel: "Toggle plugin rail", iconName: pluginRailVisible ? "angleRight" : "angleLeft", size: "s", hasTooltip: false, hasBorder: false, "aria-pressed": pluginRailVisible, onClick: onTogglePluginRail }), _jsx(IconButton, { ariaLabel: "Toggle left panel", iconName: "tableRows", size: "s", hasTooltip: false, hasBorder: false, "aria-pressed": leftPanelVisible, onClick: onToggleLeftPanel }), _jsx(IconButton, { ariaLabel: "Toggle right panel", iconName: "tableRows", size: "s", hasTooltip: false, hasBorder: false, "aria-pressed": rightPanelVisible, onClick: onToggleRightPanel, className: styles.rightPanelToggle })] }), puckActions, _jsxs("div", { "data-testid": "device-selector", className: styles.historyGroup, children: [_jsx(IconButton, { "data-testid": "undo-btn", ariaLabel: "Undo", iconName: "rotateLeft", size: "s", disabled: !hasPast, onClick: onUndo, hasTooltip: false, hasBorder: false }), _jsx(IconButton, { "data-testid": "redo-btn", ariaLabel: "Redo", iconName: "rotateRight", size: "s", disabled: !hasFuture, onClick: onRedo, hasTooltip: false, hasBorder: false })] }), _jsx("div", { className: styles.spacer }), _jsxs("div", { className: styles.actorsArea, children: [agents.map((actor) => (_jsx(AgentChip, { id: actor.id, agent: {
9
10
  id: actor.id,
10
11
  name: actor.name,
11
12
  initials: actor.name[0] ?? '',
@@ -23,6 +24,6 @@ export function P1EditorSubheader({ puckActions, docState, hasDrift, context, ag
23
24
  state: 'active',
24
25
  lastActivityAt: new Date().toISOString(),
25
26
  joinedAt: new Date().toISOString(),
26
- })), maxVisible: 3 }))] }), _jsx("div", { className: styles.divider }), _jsx(PublishControl, { docState: docState, hasDrift: hasDrift, context: context, onPublish: onPublish, onReviewAndPublish: onReviewAndPublish, onCreateWorkstream: onCreateWorkstream, onDeleteDocument: onDeleteDocument })] }));
27
+ })), maxVisible: 3 }))] }), _jsx(PublishControl, { docState: docState, hasDrift: hasDrift, context: context, onPublish: onPublish, onReviewAndPublish: onReviewAndPublish, onReviewWorkstream: onReviewWorkstream, onCreateWorkstream: onCreateWorkstream, onDeleteDocument: onDeleteDocument, renderBadgeOnly: true }), _jsxs("div", { className: styles.workstreamPublishGroup, children: [_jsx(WorkstreamSwitcher, { branches: branches, currentBranch: currentBranch, onSwitch: onSwitchBranch, onCompareWithLive: onCompareWithLive, hideCompareButton: true, onCreateBranch: onCreateBranch }), _jsx(PublishControl, { docState: docState, hasDrift: hasDrift, context: context, onPublish: onPublish, onReviewAndPublish: onReviewAndPublish, onReviewWorkstream: onReviewWorkstream, onCreateWorkstream: onCreateWorkstream, onDeleteDocument: onDeleteDocument, renderButtonOnly: true })] })] }));
27
28
  }
28
29
  //# sourceMappingURL=P1EditorSubheader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"P1EditorSubheader.js","sourceRoot":"","sources":["../../../src/pds/components/P1EditorSubheader.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"P1EditorSubheader.js","sourceRoot":"","sources":["../../../src/pds/components/P1EditorSubheader.tsx"],"names":[],"mappings":"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"}
@@ -2,8 +2,9 @@
2
2
 
3
3
  .subheader {
4
4
  height: 48px;
5
- background: var(--pds-color-bg-default-secondary, oklch(0.9702 0 0));
6
- border-bottom: 1px solid var(--pds-color-border-separator, oklch(0.85 0 0));
5
+ background: var(--pds-color-bg-default, oklch(1 0 0));
6
+ border-top: 1px solid oklch(0.96 0 0); /* borderSubtle */
7
+ border-bottom: 1px solid oklch(0.96 0 0); /* borderSubtle */
7
8
  display: flex;
8
9
  align-items: center;
9
10
  padding: 0 var(--pds-spacing-m, 1rem);
@@ -67,6 +68,34 @@
67
68
  display: none;
68
69
  }
69
70
 
71
+ /* ── Right panel toggle rotation ─────────────────────────────────────── */
72
+
73
+ .rightPanelToggle :global(.pds-icon) {
74
+ transform: rotate(180deg);
75
+ }
76
+
77
+ /* ── Workstream + Publish button group ────────────────────────────────── */
78
+
79
+ .workstreamPublishGroup {
80
+ display: inline-flex;
81
+ align-items: center;
82
+ flex-shrink: 0;
83
+ }
84
+
85
+ /* Remove rounded corners and right border on workstream switcher when grouped */
86
+ .workstreamPublishGroup :global(.WorkstreamSwitcher-module__vbDGzq__trigger) {
87
+ border-top-right-radius: 0;
88
+ border-bottom-right-radius: 0;
89
+ border-right: none;
90
+ }
91
+
92
+ /* Remove rounded corners on the left side of publish button when grouped */
93
+ .workstreamPublishGroup :global(.pds-split-button),
94
+ .workstreamPublishGroup :global(.pds-button) {
95
+ border-top-left-radius: 0;
96
+ border-bottom-left-radius: 0;
97
+ }
98
+
70
99
  /* ── Compact mobile layout (< 768px) ────────────────────────────────── */
71
100
 
72
101
  @media (max-width: 767px) {
@@ -10,6 +10,7 @@
10
10
  * flash where the portal appears at y=0 before being repositioned.
11
11
  */
12
12
  import React from 'react';
13
+ import type { Template } from '../../features/content-type-templates/types.js';
13
14
  export interface PageNavigatorDocument {
14
15
  id: string;
15
16
  path: string;
@@ -26,7 +27,11 @@ export interface PageNavigatorProps {
26
27
  /** Whether the current branch is main/live. Inherited docs are dimmed when false. */
27
28
  isMainBranch?: boolean;
28
29
  /** Called when the user creates a new page. If omitted, the "+ New page" button has no effect. */
29
- onCreateDocument?: (path: string) => Promise<void>;
30
+ onCreateDocument?: (path: string, template?: Template | null) => Promise<void>;
31
+ /** Available templates for document creation. When non-empty, a template selector step is shown. */
32
+ templates?: Template[];
33
+ /** Whether templates are still loading. */
34
+ templatesLoading?: boolean;
30
35
  /**
31
36
  * Pre-computed fixed positioning style. Caller must compute this
32
37
  * synchronously (e.g. in the trigger's onClick) so it is available on the
@@ -34,5 +39,5 @@ export interface PageNavigatorProps {
34
39
  */
35
40
  portalStyle?: React.CSSProperties;
36
41
  }
37
- export declare function PageNavigator({ documents, currentDocument, onSelect, onClose, open, isMainBranch, onCreateDocument, portalStyle, }: PageNavigatorProps): React.JSX.Element | null;
42
+ export declare function PageNavigator({ documents, currentDocument, onSelect, onClose, open, isMainBranch, onCreateDocument, templates, templatesLoading, portalStyle, }: PageNavigatorProps): React.JSX.Element | null;
38
43
  //# sourceMappingURL=PageNavigator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageNavigator.d.ts","sourceRoot":"","sources":["../../../src/pds/components/PageNavigator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AAIrD,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,eAAe,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC9C,QAAQ,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAC/C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,qFAAqF;IACrF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kGAAkG;IAClG,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD;;;;OAIG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACnC;AAED,wBAAgB,aAAa,CAAC,EAC5B,SAAS,EACT,eAAe,EACf,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,gBAAgB,EAChB,WAAW,GACZ,EAAE,kBAAkB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAiJ/C"}
1
+ {"version":3,"file":"PageNavigator.d.ts","sourceRoot":"","sources":["../../../src/pds/components/PageNavigator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AAGrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gDAAgD,CAAC;AAE/E,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,eAAe,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC9C,QAAQ,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAC/C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,qFAAqF;IACrF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kGAAkG;IAClG,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,oGAAoG;IACpG,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACnC;AAID,wBAAgB,aAAa,CAAC,EAC5B,SAAS,EACT,eAAe,EACf,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,WAAW,GACZ,EAAE,kBAAkB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAwN/C"}