@prenta/admin 1.0.0 → 1.2.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 (149) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/AdminRoot.d.ts.map +1 -1
  3. package/dist/AdminRoot.js +5 -56
  4. package/dist/AdminRoot.js.map +1 -1
  5. package/dist/__tests__/components/breakpoint-controls.render.test.js +4 -4
  6. package/dist/__tests__/components/breakpoint-controls.render.test.js.map +1 -1
  7. package/dist/__tests__/lib/canvas-edit-chrome.test.js +1 -22
  8. package/dist/__tests__/lib/canvas-edit-chrome.test.js.map +1 -1
  9. package/dist/__tests__/lib/open-public-site-tab.test.d.ts +2 -0
  10. package/dist/__tests__/lib/open-public-site-tab.test.d.ts.map +1 -0
  11. package/dist/__tests__/lib/open-public-site-tab.test.js +64 -0
  12. package/dist/__tests__/lib/open-public-site-tab.test.js.map +1 -0
  13. package/dist/__tests__/lib/preview-bridge.test.js +19 -79
  14. package/dist/__tests__/lib/preview-bridge.test.js.map +1 -1
  15. package/dist/__tests__/lib/view-site-chrome.test.d.ts +2 -0
  16. package/dist/__tests__/lib/view-site-chrome.test.d.ts.map +1 -0
  17. package/dist/__tests__/lib/view-site-chrome.test.js +69 -0
  18. package/dist/__tests__/lib/view-site-chrome.test.js.map +1 -0
  19. package/dist/__tests__/router/admin-routes.test.js +4 -0
  20. package/dist/__tests__/router/admin-routes.test.js.map +1 -1
  21. package/dist/__tests__/views/canvas-review-mode.render.test.js +11 -1
  22. package/dist/__tests__/views/canvas-review-mode.render.test.js.map +1 -1
  23. package/dist/__tests__/views/canvas-surface-shared.test.js +0 -16
  24. package/dist/__tests__/views/canvas-surface-shared.test.js.map +1 -1
  25. package/dist/__tests__/views/editor-top-bar.render.test.js +52 -22
  26. package/dist/__tests__/views/editor-top-bar.render.test.js.map +1 -1
  27. package/dist/__tests__/views/page-section-editor.test.js +53 -18
  28. package/dist/__tests__/views/page-section-editor.test.js.map +1 -1
  29. package/dist/__tests__/views/post-section-editor.test.js +23 -0
  30. package/dist/__tests__/views/post-section-editor.test.js.map +1 -1
  31. package/dist/components/BreakpointPicker.d.ts +3 -2
  32. package/dist/components/BreakpointPicker.d.ts.map +1 -1
  33. package/dist/components/BreakpointPicker.js +5 -3
  34. package/dist/components/BreakpointPicker.js.map +1 -1
  35. package/dist/components/CanvasEditTip.js +1 -1
  36. package/dist/components/CanvasEditTip.js.map +1 -1
  37. package/dist/lib/canvas-edit-chrome.d.ts +0 -17
  38. package/dist/lib/canvas-edit-chrome.d.ts.map +1 -1
  39. package/dist/lib/canvas-edit-chrome.js +0 -62
  40. package/dist/lib/canvas-edit-chrome.js.map +1 -1
  41. package/dist/lib/editor-preview.d.ts +4 -1
  42. package/dist/lib/editor-preview.d.ts.map +1 -1
  43. package/dist/lib/editor-preview.js +4 -1
  44. package/dist/lib/editor-preview.js.map +1 -1
  45. package/dist/lib/open-public-site-tab.d.ts +14 -0
  46. package/dist/lib/open-public-site-tab.d.ts.map +1 -0
  47. package/dist/lib/open-public-site-tab.js +46 -0
  48. package/dist/lib/open-public-site-tab.js.map +1 -0
  49. package/dist/lib/preview-bridge.d.ts +7 -74
  50. package/dist/lib/preview-bridge.d.ts.map +1 -1
  51. package/dist/lib/preview-bridge.js +12 -73
  52. package/dist/lib/preview-bridge.js.map +1 -1
  53. package/dist/lib/view-site-chrome.d.ts +19 -0
  54. package/dist/lib/view-site-chrome.d.ts.map +1 -0
  55. package/dist/lib/view-site-chrome.js +24 -0
  56. package/dist/lib/view-site-chrome.js.map +1 -0
  57. package/dist/router/admin-routes.d.ts.map +1 -1
  58. package/dist/router/admin-routes.js +0 -2
  59. package/dist/router/admin-routes.js.map +1 -1
  60. package/dist/views/page-editor/EditorCanvas.d.ts +2 -3
  61. package/dist/views/page-editor/EditorCanvas.d.ts.map +1 -1
  62. package/dist/views/page-editor/EditorCanvas.js +2 -2
  63. package/dist/views/page-editor/EditorCanvas.js.map +1 -1
  64. package/dist/views/page-editor/EditorTopBar.d.ts +15 -17
  65. package/dist/views/page-editor/EditorTopBar.d.ts.map +1 -1
  66. package/dist/views/page-editor/EditorTopBar.js +20 -21
  67. package/dist/views/page-editor/EditorTopBar.js.map +1 -1
  68. package/dist/views/page-editor/PageSectionEditor.d.ts +1 -7
  69. package/dist/views/page-editor/PageSectionEditor.d.ts.map +1 -1
  70. package/dist/views/page-editor/PageSectionEditor.js +36 -141
  71. package/dist/views/page-editor/PageSectionEditor.js.map +1 -1
  72. package/dist/views/page-editor/StructureNotice.d.ts +2 -5
  73. package/dist/views/page-editor/StructureNotice.d.ts.map +1 -1
  74. package/dist/views/page-editor/StructureNotice.js +6 -10
  75. package/dist/views/page-editor/StructureNotice.js.map +1 -1
  76. package/dist/views/page-editor/sections/SectionRenderer.d.ts +1 -1
  77. package/dist/views/page-editor/sections/SectionRenderer.d.ts.map +1 -1
  78. package/dist/views/page-editor/sections/SectionRenderer.js +2 -1
  79. package/dist/views/page-editor/sections/SectionRenderer.js.map +1 -1
  80. package/dist/views/post-editor/PostEditorCanvas.d.ts +2 -4
  81. package/dist/views/post-editor/PostEditorCanvas.d.ts.map +1 -1
  82. package/dist/views/post-editor/PostEditorCanvas.js +3 -3
  83. package/dist/views/post-editor/PostEditorCanvas.js.map +1 -1
  84. package/dist/views/post-editor/PostSectionEditor.d.ts +1 -15
  85. package/dist/views/post-editor/PostSectionEditor.d.ts.map +1 -1
  86. package/dist/views/post-editor/PostSectionEditor.js +36 -128
  87. package/dist/views/post-editor/PostSectionEditor.js.map +1 -1
  88. package/dist/views/settings/SeoSettingsTab.d.ts.map +1 -1
  89. package/dist/views/settings/SeoSettingsTab.js +2 -1
  90. package/dist/views/settings/SeoSettingsTab.js.map +1 -1
  91. package/dist/views/settings/SiteInformationCard.d.ts.map +1 -1
  92. package/dist/views/settings/SiteInformationCard.js +3 -1
  93. package/dist/views/settings/SiteInformationCard.js.map +1 -1
  94. package/package.json +6 -6
  95. package/src/AdminRoot.tsx +0 -70
  96. package/src/__tests__/components/breakpoint-controls.render.test.tsx +6 -4
  97. package/src/__tests__/lib/canvas-edit-chrome.test.ts +0 -27
  98. package/src/__tests__/lib/open-public-site-tab.test.ts +74 -0
  99. package/src/__tests__/lib/preview-bridge.test.ts +21 -110
  100. package/src/__tests__/lib/view-site-chrome.test.ts +80 -0
  101. package/src/__tests__/router/admin-routes.test.ts +5 -0
  102. package/src/__tests__/views/canvas-review-mode.render.test.tsx +14 -1
  103. package/src/__tests__/views/canvas-surface-shared.test.ts +0 -19
  104. package/src/__tests__/views/editor-top-bar.render.test.tsx +104 -22
  105. package/src/__tests__/views/page-section-editor.test.tsx +65 -22
  106. package/src/__tests__/views/post-section-editor.test.tsx +35 -0
  107. package/src/components/BreakpointPicker.tsx +6 -3
  108. package/src/components/CanvasEditTip.tsx +2 -2
  109. package/src/lib/canvas-edit-chrome.ts +0 -64
  110. package/src/lib/editor-preview.ts +4 -1
  111. package/src/lib/open-public-site-tab.ts +57 -0
  112. package/src/lib/preview-bridge.ts +11 -157
  113. package/src/lib/view-site-chrome.ts +46 -0
  114. package/src/router/admin-routes.ts +0 -2
  115. package/src/styles/theme.css +4 -4
  116. package/src/views/page-editor/EditorCanvas.tsx +2 -7
  117. package/src/views/page-editor/EditorTopBar.tsx +85 -82
  118. package/src/views/page-editor/PageSectionEditor.tsx +83 -220
  119. package/src/views/page-editor/StructureNotice.tsx +7 -42
  120. package/src/views/page-editor/sections/SectionRenderer.tsx +5 -2
  121. package/src/views/post-editor/PostEditorCanvas.tsx +3 -9
  122. package/src/views/post-editor/PostSectionEditor.tsx +71 -195
  123. package/src/views/settings/SeoSettingsTab.tsx +21 -0
  124. package/src/views/settings/SiteInformationCard.tsx +7 -0
  125. package/dist/__tests__/views/use-site-preview.render.test.d.ts +0 -2
  126. package/dist/__tests__/views/use-site-preview.render.test.d.ts.map +0 -1
  127. package/dist/__tests__/views/use-site-preview.render.test.js +0 -120
  128. package/dist/__tests__/views/use-site-preview.render.test.js.map +0 -1
  129. package/dist/views/page-editor/PagePreview.d.ts +0 -13
  130. package/dist/views/page-editor/PagePreview.d.ts.map +0 -1
  131. package/dist/views/page-editor/PagePreview.js +0 -46
  132. package/dist/views/page-editor/PagePreview.js.map +0 -1
  133. package/dist/views/page-editor/SitePreviewFrame.d.ts +0 -43
  134. package/dist/views/page-editor/SitePreviewFrame.d.ts.map +0 -1
  135. package/dist/views/page-editor/SitePreviewFrame.js +0 -165
  136. package/dist/views/page-editor/SitePreviewFrame.js.map +0 -1
  137. package/dist/views/page-editor/useSitePreview.d.ts +0 -47
  138. package/dist/views/page-editor/useSitePreview.d.ts.map +0 -1
  139. package/dist/views/page-editor/useSitePreview.js +0 -96
  140. package/dist/views/page-editor/useSitePreview.js.map +0 -1
  141. package/dist/views/post-editor/PostPreview.d.ts +0 -14
  142. package/dist/views/post-editor/PostPreview.d.ts.map +0 -1
  143. package/dist/views/post-editor/PostPreview.js +0 -63
  144. package/dist/views/post-editor/PostPreview.js.map +0 -1
  145. package/src/__tests__/views/use-site-preview.render.test.tsx +0 -164
  146. package/src/views/page-editor/PagePreview.tsx +0 -105
  147. package/src/views/page-editor/SitePreviewFrame.tsx +0 -250
  148. package/src/views/page-editor/useSitePreview.ts +0 -158
  149. package/src/views/post-editor/PostPreview.tsx +0 -125
@@ -58,5 +58,9 @@ describe('ADMIN_STATIC_ROUTE_PATTERNS stays in sync with AdminRoot', () => {
58
58
  const missing = [...new Set(literals)].filter((p) => !known.has(p));
59
59
  expect(missing).toEqual([]);
60
60
  });
61
+ it('does not keep the retired admin-renderer preview routes', () => {
62
+ expect(ADMIN_STATIC_ROUTE_PATTERNS).not.toContain('/pages/:id/preview');
63
+ expect(ADMIN_STATIC_ROUTE_PATTERNS).not.toContain('/posts/:type/:id/preview');
64
+ });
61
65
  });
62
66
  //# sourceMappingURL=admin-routes.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"admin-routes.test.js","sourceRoot":"","sources":["../../../src/__tests__/router/admin-routes.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-routes.test.js","sourceRoot":"","sources":["../../../src/__tests__/router/admin-routes.test.ts"],"names":[],"mappings":"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"}
@@ -54,9 +54,19 @@ describe('SectionRenderer — review mode', () => {
54
54
  const onSelect = vi.fn();
55
55
  render(_jsx(SectionRenderer, { section: SECTION, editable: true, onSelect: onSelect }));
56
56
  fireEvent.click(sectionEl());
57
- expect(onSelect).toHaveBeenCalledWith('s1');
57
+ expect(onSelect).toHaveBeenCalledWith('s1', undefined);
58
58
  expect(sectionEl().getAttribute('data-editable')).toBe('true');
59
59
  });
60
+ it('passes the data-cms-field path when a field inside the section is clicked', () => {
61
+ const onSelect = vi.fn();
62
+ render(_jsx(SectionRenderer, { section: SECTION, editable: true, onSelect: onSelect }));
63
+ const field = document.createElement('h2');
64
+ field.setAttribute('data-cms-field', 'heading');
65
+ field.textContent = 'A headline';
66
+ sectionEl().appendChild(field);
67
+ fireEvent.click(field);
68
+ expect(onSelect).toHaveBeenCalledWith('s1', 'heading');
69
+ });
60
70
  it('names the change in the accessible name, not only in colour and a dashed border', () => {
61
71
  render(_jsx(SectionRenderer, { section: SECTION, editable: true, reviewing: true, changed: true }));
62
72
  expect(sectionEl().getAttribute('aria-label')).toBe('Hero Banner section — changed in this version');
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-review-mode.render.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/canvas-review-mode.render.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvas-review-mode.render.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/canvas-review-mode.render.test.tsx"],"names":[],"mappings":"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"}
@@ -49,21 +49,5 @@ describe('canvas surface is shared, not copied', () => {
49
49
  expect(read(rel), `${rel} re-implements the scale`).not.toMatch(/fitScale/);
50
50
  }
51
51
  });
52
- /**
53
- * `SitePreviewFrame` was the third copy of `clientWidth - 48` and the one
54
- * followup 2 left alone, because it scales an IFRAME rather than a rendered
55
- * surface and cannot render `CanvasSurface`. It can still measure the same
56
- * way, and now does: the padding arithmetic is gone even though the
57
- * component is not shared.
58
- *
59
- * Kept apart from CANVASES on purpose — the assertion here is about the
60
- * measurement, not about rendering the shared surface, and folding it in
61
- * would make the other two tests claim something untrue about it.
62
- */
63
- it('the site preview measures from a sentinel too, though it cannot share the surface', () => {
64
- const preview = read('src/views/page-editor/SitePreviewFrame.tsx');
65
- expect(preview, 'SitePreviewFrame still does padding arithmetic').not.toMatch(/clientWidth\s*-\s*\d/);
66
- expect(preview, 'SitePreviewFrame does not measure from a sentinel').toMatch(/sentinelRef/);
67
- });
68
52
  });
69
53
  //# sourceMappingURL=canvas-surface-shared.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-surface-shared.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/canvas-surface-shared.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C;;;;;;;;;;;;;GAaG;AAEH,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAEhE;;;;;GAKG;AACH,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAC3B,YAAY,CAAC,GAAG,GAAG,GAAG,EAAE,MAAM,CAAC;KAC5B,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;KAChC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;AAEjC,MAAM,QAAQ,GAAG;IACf,wCAAwC;IACxC,4CAA4C;CAC7C,CAAA;AAED,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IACpD,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,gCAAgC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QACtF,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,6BAA6B,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;QAClF,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,yCAAyC,CAAC,CAAA;QAC/D,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAEnC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,6BAA6B,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;YACjF,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,0BAA0B,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC7E,CAAC;IACH,CAAC,CAAC,CAAA;IAEF;;;;;;;;;;OAUG;IACH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC3F,MAAM,OAAO,GAAG,IAAI,CAAC,4CAA4C,CAAC,CAAA;QAClE,MAAM,CAAC,OAAO,EAAE,gDAAgD,CAAC,CAAC,GAAG,CAAC,OAAO,CAC3E,sBAAsB,CACvB,CAAA;QACD,MAAM,CAAC,OAAO,EAAE,mDAAmD,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IAC7F,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"canvas-surface-shared.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/canvas-surface-shared.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C;;;;;;;;;;;;;GAaG;AAEH,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAEhE;;;;;GAKG;AACH,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAC3B,YAAY,CAAC,GAAG,GAAG,GAAG,EAAE,MAAM,CAAC;KAC5B,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;KAChC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;AAEjC,MAAM,QAAQ,GAAG;IACf,wCAAwC;IACxC,4CAA4C;CAC7C,CAAA;AAED,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IACpD,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,gCAAgC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QACtF,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,6BAA6B,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;QAClF,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,yCAAyC,CAAC,CAAA;QAC/D,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAEnC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,6BAA6B,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;YACjF,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,0BAA0B,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC7E,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -14,7 +14,6 @@ const baseProps = {
14
14
  viewport: 'wide',
15
15
  onViewport: vi.fn(),
16
16
  onBack: vi.fn(),
17
- onPreview: vi.fn(),
18
17
  onOpenSettings: vi.fn(),
19
18
  onSaveDraft: vi.fn(),
20
19
  onPublish: vi.fn(),
@@ -55,23 +54,60 @@ describe('EditorTopBar publish gating', () => {
55
54
  expect(screen.getByRole('button', { name: 'Schedule publish' }).disabled).toBe(true);
56
55
  });
57
56
  });
58
- describe('EditorTopBar view-on-site vs view-live', () => {
59
- it('labels the external-link button "View draft on site" for a draft', () => {
60
- render(_jsx(EditorTopBar, { ...baseProps, status: "DRAFT", onViewOnSite: vi.fn() }));
61
- expect(screen.getByRole('button', { name: 'View draft on site' })).toBeTruthy();
62
- expect(screen.queryByRole('button', { name: 'View live page' })).toBeNull();
57
+ describe('EditorTopBar view site / share', () => {
58
+ it('does not render the eye or the globe', () => {
59
+ render(_jsx(EditorTopBar, { ...baseProps, onViewOnSite: vi.fn(), onShare: vi.fn(), hasPublicSiteUrl: true }));
60
+ expect(screen.queryByRole('button', { name: /Preview page|Preview structure/ })).toBeNull();
63
61
  });
64
- it('labels it "View live page" for a published document and calls the handler', () => {
62
+ it('labels View site on a draft and calls with preview-draft', () => {
65
63
  const onViewOnSite = vi.fn();
66
- render(_jsx(EditorTopBar, { ...baseProps, status: "PUBLISHED", onViewOnSite: onViewOnSite }));
67
- const btn = screen.getByRole('button', { name: 'View live page' });
68
- fireEvent.click(btn);
69
- expect(onViewOnSite).toHaveBeenCalledOnce();
70
- expect(screen.queryByRole('button', { name: 'View draft on site' })).toBeNull();
64
+ render(_jsx(EditorTopBar, { ...baseProps, status: "DRAFT", onViewOnSite: onViewOnSite, onShare: vi.fn(), hasPublicSiteUrl: true }));
65
+ fireEvent.click(screen.getByRole('button', { name: 'View site' }));
66
+ expect(onViewOnSite).toHaveBeenCalledWith('preview-draft');
67
+ expect(screen.getByRole('button', { name: 'Share' })).toBeTruthy();
68
+ });
69
+ it('labels View live on a clean published document and hides Share', () => {
70
+ const onViewOnSite = vi.fn();
71
+ render(_jsx(EditorTopBar, { ...baseProps, status: "PUBLISHED", onViewOnSite: onViewOnSite, onShare: vi.fn(), hasPublicSiteUrl: true }));
72
+ fireEvent.click(screen.getByRole('button', { name: 'View live' }));
73
+ expect(onViewOnSite).toHaveBeenCalledWith('view-live');
74
+ expect(screen.queryByRole('button', { name: 'Share' })).toBeNull();
75
+ });
76
+ it('keeps View live as a second action when published and dirty', () => {
77
+ const onViewOnSite = vi.fn();
78
+ render(_jsx(EditorTopBar, { ...baseProps, status: "PUBLISHED", dirty: true, onViewOnSite: onViewOnSite, onShare: vi.fn(), hasPublicSiteUrl: true }));
79
+ fireEvent.click(screen.getByRole('button', { name: 'View site' }));
80
+ expect(onViewOnSite).toHaveBeenCalledWith('preview-draft');
81
+ // Radix DropdownMenu opens on pointerdown (not click), which happy-dom
82
+ // doesn't synthesize from fireEvent.click — open via keyboard instead.
83
+ fireEvent.keyDown(screen.getByRole('button', { name: 'More view options' }), {
84
+ key: 'Enter',
85
+ });
86
+ fireEvent.click(screen.getByRole('menuitem', { name: 'View live' }));
87
+ expect(onViewOnSite).toHaveBeenCalledWith('view-live');
88
+ expect(screen.getByRole('button', { name: 'Share' })).toBeTruthy();
89
+ });
90
+ it('disables View site and Share when the site URL is the admin origin', () => {
91
+ render(_jsx(EditorTopBar, { ...baseProps, onViewOnSite: vi.fn(), onShare: vi.fn(), hasPublicSiteUrl: true, matchesAdminOrigin: true }));
92
+ const view = screen.getByRole('button', { name: 'View site' });
93
+ const share = screen.getByRole('button', { name: 'Share' });
94
+ expect(view.disabled).toBe(true);
95
+ expect(share.disabled).toBe(true);
96
+ expect(view.getAttribute('title')).toBe('This origin is the admin, not the public site. Set the public site URL in Settings → SEO.');
97
+ });
98
+ it('disables View site and Share when the public site URL is missing', () => {
99
+ render(_jsx(EditorTopBar, { ...baseProps, onViewOnSite: vi.fn(), onShare: vi.fn(), hasPublicSiteUrl: false }));
100
+ const view = screen.getByRole('button', { name: 'View site' });
101
+ const share = screen.getByRole('button', { name: 'Share' });
102
+ expect(view.disabled).toBe(true);
103
+ expect(share.disabled).toBe(true);
104
+ expect(view.getAttribute('title')).toBe('Set the public site URL in Settings → SEO to open the live design.');
71
105
  });
72
- it('hides the button when onViewOnSite is omitted (unsaved doc)', () => {
106
+ it('hides View site and Share when onViewOnSite is omitted (unsaved doc)', () => {
73
107
  render(_jsx(EditorTopBar, { ...baseProps, status: "PUBLISHED" }));
74
- expect(screen.queryByRole('button', { name: /View (live|draft)/ })).toBeNull();
108
+ expect(screen.queryByRole('button', { name: 'View site' })).toBeNull();
109
+ expect(screen.queryByRole('button', { name: 'View live' })).toBeNull();
110
+ expect(screen.queryByRole('button', { name: 'Share' })).toBeNull();
75
111
  });
76
112
  });
77
113
  describe('EditorTopBar history button', () => {
@@ -90,14 +126,8 @@ describe('EditorTopBar history button', () => {
90
126
  // coarse pointer — and it is applied per control, so a button written with
91
127
  // a conditional className is easy to leave out. Exactly that happened to
92
128
  // the history button, whose pressed state made it the odd one out.
93
- render(_jsx(EditorTopBar, { ...baseProps, onHistory: vi.fn(), onViewOnSite: vi.fn(), onToggleSitePreview: vi.fn() }));
94
- for (const name of [
95
- 'Page settings',
96
- 'Version history',
97
- 'Preview page',
98
- 'Inline site preview',
99
- 'View draft on site',
100
- ]) {
129
+ render(_jsx(EditorTopBar, { ...baseProps, status: "PUBLISHED", dirty: true, hasPublicSiteUrl: true, onHistory: vi.fn(), onViewOnSite: vi.fn() }));
130
+ for (const name of ['Page settings', 'Version history', 'More view options']) {
101
131
  const button = screen.getByRole('button', { name });
102
132
  expect(button.className, `${name} has no touch target`).toContain('prenta-touch-target');
103
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"editor-top-bar.render.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/editor-top-bar.render.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-top-bar.render.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/editor-top-bar.render.test.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAElE,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAA;AAEtE,MAAM,SAAS,GAAG;IAChB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAgB;IACxB,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE,MAAe;IAC1B,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,MAAe;IACzB,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE;IACnB,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE;IACf,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE;IACvB,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE;IACpB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;CACnB,CAAA;AAED,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;QACnF,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,YAAY,EAAE,KAAK,EACnB,qBAAqB,EAAC,qDAAqD,GAC3E,CACH,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAsB,CAAA;QAChF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/B,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAA;IAC/F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,CAAC,KAAC,YAAY,OAAK,SAAS,EAAE,YAAY,SAAG,CAAC,CAAA;QACpD,MAAM,CAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAuB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC1F,KAAK,CACN,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,UAAU,EAAE,KAAK,EACjB,YAAY,QACZ,qBAAqB,EAAC,gCAAgC,GACtD,CACH,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAsB,CAAA;QAChF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/B,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QACzB,MAAM,CAAC,KAAC,YAAY,OAAK,SAAS,EAAE,YAAY,QAAC,SAAS,EAAE,SAAS,GAAI,CAAC,CAAA;QAC1E,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;QAChE,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,EAAE,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC1B,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,YAAY,QACZ,aAAa,QACb,UAAU,EAAE,UAAU,EACtB,WAAW,EAAC,0BAA0B,GACtC,CACH,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAA;QACtE,MAAM,CAAE,GAAyB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACvD,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpB,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,KAAC,YAAY,OAAK,SAAS,EAAE,YAAY,QAAC,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,GAAI,CAAC,CAAA;QAC/F,MAAM,CACH,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAuB,CAAC,QAAQ,CACzF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACd,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,CACJ,KAAC,YAAY,OAAK,SAAS,EAAE,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,gBAAgB,SAAG,CAC1F,CAAA;QACD,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC7F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC5B,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,MAAM,EAAC,OAAO,EACd,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAChB,gBAAgB,SAChB,CACH,CAAA;QACD,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAA;QAClE,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAA;QAC1D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;IACpE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC5B,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,MAAM,EAAC,WAAW,EAClB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAChB,gBAAgB,SAChB,CACH,CAAA;QACD,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAA;QAClE,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAA;QACtD,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IACpE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;QAC5B,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,MAAM,EAAC,WAAW,EAClB,KAAK,QACL,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAChB,gBAAgB,SAChB,CACH,CAAA;QACD,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAA;QAClE,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAA;QAC1D,uEAAuE;QACvE,uEAAuE;QACvE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,EAAE;YAC3E,GAAG,EAAE,OAAO;SACb,CAAC,CAAA;QACF,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAA;QACpE,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAA;QACtD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;IACpE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,EACrB,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAChB,gBAAgB,QAChB,kBAAkB,SAClB,CACH,CAAA;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAsB,CAAA;QACnF,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAsB,CAAA;QAChF,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACrC,2FAA2F,CAC5F,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,EACrB,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAChB,gBAAgB,EAAE,KAAK,GACvB,CACH,CAAA;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAsB,CAAA;QACnF,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAsB,CAAA;QAChF,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACrC,oEAAoE,CACrE,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,MAAM,CAAC,KAAC,YAAY,OAAK,SAAS,EAAE,MAAM,EAAC,WAAW,GAAG,CAAC,CAAA;QAC1D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;QACtE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;QACtE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IACpE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,EAAE,CAAC,+FAA+F,EAAE,GAAG,EAAE;QACvG,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,KAAC,YAAY,OAAK,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,GAAI,CAAC,CAAA;QAC/E,MAAM,CACJ,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CACrF,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACf,OAAO,EAAE,CAAA;QAET,MAAM,CAAC,KAAC,YAAY,OAAK,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,SAAG,CAAC,CAAA;QACvE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAA;QACpE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;IAClE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,qEAAqE;QACrE,uEAAuE;QACvE,2EAA2E;QAC3E,yEAAyE;QACzE,mEAAmE;QACnE,MAAM,CACJ,KAAC,YAAY,OACP,SAAS,EACb,MAAM,EAAC,WAAW,EAClB,KAAK,QACL,gBAAgB,QAChB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,EAClB,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,GACrB,CACH,CAAA;QAED,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,CAAC;YAC7E,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YACnD,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,IAAI,sBAAsB,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAA;QAC1F,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -3,11 +3,20 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { afterEach, describe, expect, it, vi } from 'vitest';
4
4
  import { fireEvent, render, screen, waitFor } from '@testing-library/react';
5
5
  const fetchPageForEditor = vi.fn();
6
+ const savePageDraft = vi.fn(async (page) => page);
6
7
  vi.mock('../../lib/page-editor-service.js', async (importOriginal) => {
7
8
  const actual = await importOriginal();
8
9
  return {
9
10
  ...actual,
10
- fetchPageForEditor: (...args) => fetchPageForEditor(...args),
11
+ fetchPageForEditor,
12
+ savePageDraft,
13
+ };
14
+ });
15
+ vi.mock('../../lib/seo-service.js', async (importOriginal) => {
16
+ const actual = await importOriginal();
17
+ return {
18
+ ...actual,
19
+ updateSeoFields: vi.fn(async () => ({})),
11
20
  };
12
21
  });
13
22
  const { PageSectionEditor } = await import('../../views/page-editor/PageSectionEditor.js');
@@ -29,6 +38,7 @@ const validConfig = {
29
38
  };
30
39
  afterEach(() => {
31
40
  fetchPageForEditor.mockReset();
41
+ savePageDraft.mockClear();
32
42
  });
33
43
  describe('PageSectionEditor schema guard', () => {
34
44
  it('refuses to operate when the pages collection is missing the sections field', async () => {
@@ -90,9 +100,8 @@ describe('PageSectionEditor structure mode', () => {
90
100
  render(_jsx(PageSectionEditor, { documentId: "p1", config: validConfig, onNavigate: () => { }, session: {} }));
91
101
  await screen.findByText('Sections');
92
102
  expect(screen.queryByText(/Structure view/)).toBeNull();
93
- // "View on site" stays an icon-only button.
94
- expect(screen.getByRole('button', { name: 'View draft on site' })).toBeTruthy();
95
- expect(screen.getByRole('button', { name: 'Preview page' })).toBeTruthy();
103
+ expect(screen.getByRole('button', { name: 'View site' })).toBeTruthy();
104
+ expect(screen.getByRole('button', { name: 'Share' })).toBeTruthy();
96
105
  });
97
106
  it('shows the structure notice and promotes "View on site" for custom section types', async () => {
98
107
  fetchPageForEditor.mockResolvedValue(loadedPage([
@@ -102,10 +111,7 @@ describe('PageSectionEditor structure mode', () => {
102
111
  render(_jsx(PageSectionEditor, { documentId: "p1", config: validConfig, onNavigate: () => { }, session: {} }));
103
112
  await screen.findByText('Sections');
104
113
  expect(screen.getByText(/Structure view/)).toBeTruthy();
105
- // Promoted to a labeled button the primary design preview.
106
- expect(screen.getByRole('button', { name: /View on site/ })).toBeTruthy();
107
- // Eye preview is relabeled to set expectations.
108
- expect(screen.getByRole('button', { name: /Preview structure/ })).toBeTruthy();
114
+ expect(screen.getByRole('button', { name: 'View site' })).toBeTruthy();
109
115
  });
110
116
  it('stays out of structure mode when a custom renderer is registered for the type', async () => {
111
117
  fetchPageForEditor.mockResolvedValue(loadedPage([
@@ -118,7 +124,7 @@ describe('PageSectionEditor structure mode', () => {
118
124
  // structural for this page.
119
125
  expect(screen.getByTestId('opal-canvas')).toBeTruthy();
120
126
  expect(screen.queryByText(/Structure view/)).toBeNull();
121
- expect(screen.getByRole('button', { name: 'View draft on site' })).toBeTruthy();
127
+ expect(screen.getByRole('button', { name: 'View site' })).toBeTruthy();
122
128
  });
123
129
  it('exposes a version history button for saved pages', async () => {
124
130
  fetchPageForEditor.mockResolvedValue(loadedPage([{ id: 's1', sectionType: 'hero', name: 'Hero' }]));
@@ -148,21 +154,50 @@ describe('PageSectionEditor section disclosure', () => {
148
154
  await waitFor(() => expect(close()).toBeNull());
149
155
  expect(screen.queryByLabelText('Section name')).toBeNull();
150
156
  });
151
- it('keeps the row open when the site preview points at one of its fields', async () => {
157
+ it('keeps the row open when a canvas field click targets the same section', async () => {
152
158
  // A `fieldPath` means "the editor clicked THIS field" — toggling there
153
- // would close the form on the second click of a field being edited.
154
- fetchPageForEditor.mockResolvedValue(loadedPage([{ id: 's1', sectionType: 'hero', name: 'Hero' }]));
159
+ // would close the form on the second click of a field being inspected.
160
+ fetchPageForEditor.mockResolvedValue({
161
+ ...loadedPage([{ id: 's1', sectionType: 'hero', name: 'Hero' }]),
162
+ sections: [
163
+ {
164
+ id: 's1',
165
+ sectionType: 'hero',
166
+ name: 'Hero',
167
+ visible: true,
168
+ content: { heading: 'Welcome' },
169
+ settings: {},
170
+ },
171
+ ],
172
+ });
155
173
  render(_jsx(PageSectionEditor, { documentId: "p1", config: validConfig, onNavigate: () => { }, session: {} }));
156
174
  await screen.findByText('Sections');
157
175
  fireEvent.click(screen.getByRole('button', { name: 'Edit Hero' }));
158
176
  await screen.findByRole('button', { name: 'Close Hero' });
159
- // Same section, arriving with a field path, twice.
160
- for (let i = 0; i < 2; i++) {
161
- window.dispatchEvent(new MessageEvent('message', {
162
- data: { v: 1, type: 'prenta-preview:select', sectionId: 's1', fieldPath: 'heading' },
163
- }));
164
- }
177
+ const section = document.querySelector('[data-section-id="s1"]');
178
+ expect(section).toBeTruthy();
179
+ const field = document.createElement('h2');
180
+ field.setAttribute('data-cms-field', 'heading');
181
+ field.textContent = 'Welcome';
182
+ section?.appendChild(field);
183
+ fireEvent.click(field);
184
+ fireEvent.click(field);
165
185
  expect(screen.getByRole('button', { name: 'Close Hero' })).toBeTruthy();
166
186
  });
167
187
  });
188
+ describe('PageSectionEditor Share', () => {
189
+ const configWithSite = { ...validConfig, seo: { siteUrl: 'https://example.com' } };
190
+ it('saves a dirty draft before opening Share', async () => {
191
+ const page = loadedPage([{ id: 's1', sectionType: 'hero', name: 'Hero' }]);
192
+ fetchPageForEditor.mockResolvedValue(page);
193
+ savePageDraft.mockResolvedValue(page);
194
+ render(_jsx(PageSectionEditor, { documentId: "p1", config: configWithSite, onNavigate: () => { }, session: {} }));
195
+ await screen.findByText('Sections');
196
+ fireEvent.click(screen.getByRole('button', { name: 'Edit Hero' }));
197
+ fireEvent.change(await screen.findByLabelText('Section name'), { target: { value: 'Intro' } });
198
+ fireEvent.click(screen.getByRole('button', { name: 'Share' }));
199
+ await waitFor(() => expect(savePageDraft).toHaveBeenCalledOnce());
200
+ expect(await screen.findByRole('dialog', { name: 'Share preview link' })).toBeTruthy();
201
+ });
202
+ });
168
203
  //# sourceMappingURL=page-section-editor.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-section-editor.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/page-section-editor.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"page-section-editor.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/page-section-editor.test.tsx"],"names":[],"mappings":"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"}
@@ -4,12 +4,14 @@ import { afterEach, describe, expect, it, vi } from 'vitest';
4
4
  import { fireEvent, render, screen, waitFor } from '@testing-library/react';
5
5
  const fetchPostForEditor = vi.fn();
6
6
  const fetchTemplateForEditor = vi.fn();
7
+ const savePostDraft = vi.fn();
7
8
  vi.mock('../../lib/post-editor-service.js', async (importOriginal) => {
8
9
  const actual = await importOriginal();
9
10
  return {
10
11
  ...actual,
11
12
  fetchPostForEditor: (...args) => fetchPostForEditor(...args),
12
13
  fetchTemplateForEditor: (...args) => fetchTemplateForEditor(...args),
14
+ savePostDraft: (...args) => savePostDraft(...args),
13
15
  };
14
16
  });
15
17
  const { PostSectionEditor } = await import('../../views/post-editor/PostSectionEditor.js');
@@ -56,6 +58,7 @@ function loadedPost(sections) {
56
58
  afterEach(() => {
57
59
  fetchPostForEditor.mockReset();
58
60
  fetchTemplateForEditor.mockReset();
61
+ savePostDraft.mockReset();
59
62
  });
60
63
  describe('PostSectionEditor schema guard', () => {
61
64
  it('refuses to operate when the post-type collection is missing the sections field', async () => {
@@ -86,6 +89,9 @@ describe('PostSectionEditor new post', () => {
86
89
  render(_jsx(PostSectionEditor, { postType: "blog", documentId: "p1", config: validConfig, onNavigate: () => { }, session: {} }));
87
90
  await screen.findByText('Sections');
88
91
  expect(screen.queryByRole('dialog', { name: 'Post details' })).toBeNull();
92
+ expect(screen.getByRole('button', { name: 'View site' })).toBeTruthy();
93
+ expect(screen.getByRole('button', { name: 'Share' })).toBeTruthy();
94
+ expect(screen.queryByRole('button', { name: /Preview page/ })).toBeNull();
89
95
  });
90
96
  });
91
97
  describe('PostSectionEditor unmanaged sections', () => {
@@ -122,6 +128,23 @@ describe('PostSectionEditor section disclosure', () => {
122
128
  await waitFor(() => expect(screen.queryByRole('button', { name: 'Close Quote' })).toBeNull());
123
129
  });
124
130
  });
131
+ describe('PostSectionEditor Share', () => {
132
+ it('saves a dirty draft before opening Share', async () => {
133
+ const post = loadedPost([{ id: 's1', sectionType: 'quote', name: 'Quote' }]);
134
+ fetchTemplateForEditor.mockRejectedValue(new Error('no template'));
135
+ fetchPostForEditor.mockResolvedValue(post);
136
+ savePostDraft.mockResolvedValue(post);
137
+ render(_jsx(PostSectionEditor, { postType: "blog", documentId: "p1", config: { ...validConfig, seo: { siteUrl: 'https://example.com' } }, onNavigate: () => { }, session: {} }));
138
+ await screen.findByText('Sections');
139
+ fireEvent.click(screen.getByRole('button', { name: 'Edit Quote' }));
140
+ fireEvent.change(await screen.findByLabelText('Section name'), {
141
+ target: { value: 'Pull quote' },
142
+ });
143
+ fireEvent.click(screen.getByRole('button', { name: 'Share' }));
144
+ await waitFor(() => expect(savePostDraft).toHaveBeenCalledOnce());
145
+ expect(await screen.findByRole('dialog', { name: 'Share preview link' })).toBeTruthy();
146
+ });
147
+ });
125
148
  /**
126
149
  * The post editor was the last screen still on the pre-handoff panel: a fixed
127
150
  * 288px aside with no resize, no collapse and no tabs, with SEO in a
@@ -1 +1 @@
1
- {"version":3,"file":"post-section-editor.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/post-section-editor.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post-section-editor.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/post-section-editor.test.tsx"],"names":[],"mappings":"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"}
@@ -5,11 +5,12 @@ export interface BreakpointPickerProps {
5
5
  disabled?: boolean;
6
6
  }
7
7
  /**
8
- * Preview-breakpoint selector for the editor header.
8
+ * Canvas-width selector for the editor header.
9
9
  *
10
10
  * A dropdown rather than a segmented row: six presets with names like "Tablet
11
11
  * Landscape" do not fit a header strip, and the grouped menu is what makes the
12
- * DESKTOP / TABLET / MOBILE structure legible.
12
+ * DESKTOP / TABLET / MOBILE structure legible. This only sizes the first-party
13
+ * canvas — it is not a live-site viewport.
13
14
  *
14
15
  * Radix owns the menu behaviour — outside-click, Escape, roving focus, and
15
16
  * `aria-expanded` on the trigger — rather than a hand-rolled popover.
@@ -1 +1 @@
1
- {"version":3,"file":"BreakpointPicker.d.ts","sourceRoot":"","sources":["../../src/components/BreakpointPicker.tsx"],"names":[],"mappings":"AAMA,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAA;AAG9B,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,YAAY,CAAA;IACnB,QAAQ,EAAE,CAAC,EAAE,EAAE,YAAY,KAAK,IAAI,CAAA;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,qBAAqB,2CAmFpF"}
1
+ {"version":3,"file":"BreakpointPicker.d.ts","sourceRoot":"","sources":["../../src/components/BreakpointPicker.tsx"],"names":[],"mappings":"AAMA,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAA;AAG9B,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,YAAY,CAAA;IACnB,QAAQ,EAAE,CAAC,EAAE,EAAE,YAAY,KAAK,IAAI,CAAA;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,qBAAqB,2CAqFpF"}
@@ -7,11 +7,12 @@ import { adminPortalContainer } from '../lib/portal-container.js';
7
7
  import { BREAKPOINT_GROUPS, breakpointsInGroup, getBreakpoint, } from '../lib/breakpoints.js';
8
8
  import { breakpointIcon } from './breakpoint-icons.js';
9
9
  /**
10
- * Preview-breakpoint selector for the editor header.
10
+ * Canvas-width selector for the editor header.
11
11
  *
12
12
  * A dropdown rather than a segmented row: six presets with names like "Tablet
13
13
  * Landscape" do not fit a header strip, and the grouped menu is what makes the
14
- * DESKTOP / TABLET / MOBILE structure legible.
14
+ * DESKTOP / TABLET / MOBILE structure legible. This only sizes the first-party
15
+ * canvas — it is not a live-site viewport.
15
16
  *
16
17
  * Radix owns the menu behaviour — outside-click, Escape, roving focus, and
17
18
  * `aria-expanded` on the trigger — rather than a hand-rolled popover.
@@ -20,7 +21,8 @@ export function BreakpointPicker({ value, onChange, disabled }) {
20
21
  const [open, setOpen] = useState(false);
21
22
  const active = getBreakpoint(value);
22
23
  const ActiveIcon = breakpointIcon(active.icon);
23
- return (_jsxs(DropdownMenu.Root, { open: open, onOpenChange: setOpen, children: [_jsx(DropdownMenu.Trigger, { asChild: true, children: _jsxs("button", { type: "button", disabled: disabled, "aria-label": `Preview breakpoint: ${active.name}, ${active.width} pixels`, className: `border-border flex h-[34px] items-center gap-1.5 rounded-lg border px-2.5 text-[12.5px] font-medium transition-colors disabled:opacity-50 ${open
24
+ const canvasWidthLabel = `Canvas width: ${active.name}, ${active.width} pixels. First-party layout only use View site for the live design.`;
25
+ return (_jsxs(DropdownMenu.Root, { open: open, onOpenChange: setOpen, children: [_jsx(DropdownMenu.Trigger, { asChild: true, children: _jsxs("button", { type: "button", disabled: disabled, "aria-label": canvasWidthLabel, title: canvasWidthLabel, className: `border-border flex h-[34px] items-center gap-1.5 rounded-lg border px-2.5 text-[12.5px] font-medium transition-colors disabled:opacity-50 ${open
24
26
  ? 'border-brand bg-accent text-accent-foreground'
25
27
  : 'bg-card text-foreground hover:bg-accent'}`, children: [_jsx(ActiveIcon, { className: `h-4 w-4 shrink-0 ${open ? '' : 'text-brand'}`, "aria-hidden": true }), _jsx("span", { className: "hidden lg:inline", children: active.name }), _jsx("span", { className: "lg:hidden", children: active.abbr }), _jsx("span", { className: "text-muted-foreground hidden text-[11.5px] tabular-nums xl:inline", children: active.width }), _jsx(ChevronDown, { className: `h-3.5 w-3.5 shrink-0 transition-transform ${open ? 'rotate-180' : ''}`, "aria-hidden": true })] }) }), _jsx(DropdownMenu.Portal, { container: adminPortalContainer(), children: _jsx(DropdownMenu.Content, { align: "end", sideOffset: 6, className: "border-border bg-popover data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:slide-in-from-top-1 z-[120] w-[272px] rounded-[10px] border p-[5px] shadow-[0_12px_34px_rgba(26,24,39,0.17)] duration-[130ms]", children: BREAKPOINT_GROUPS.map((group) => (_jsxs(DropdownMenu.Group, { children: [_jsx(DropdownMenu.Label, { className: "text-muted-foreground px-2.5 pt-2 pb-1 text-[10px] font-bold tracking-[0.6px]", children: group }), breakpointsInGroup(group).map((bp) => {
26
28
  const Icon = breakpointIcon(bp.icon);
@@ -1 +1 @@
1
- {"version":3,"file":"BreakpointPicker.js","sourceRoot":"","sources":["../../src/components/BreakpointPicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BreakpointPicker.js","sourceRoot":"","sources":["../../src/components/BreakpointPicker.tsx"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export function CanvasEditTip() {
14
14
  }, []);
15
15
  if (!visible)
16
16
  return null;
17
- return (_jsxs("div", { role: "note", className: "border-border bg-card text-muted-foreground mx-auto mb-4 flex w-fit max-w-full items-start gap-2 rounded-lg border px-3 py-2 text-xs", children: [_jsx(MousePointerClick, { className: "text-foreground mt-0.5 h-3.5 w-3.5 shrink-0", "aria-hidden": true }), _jsxs("p", { className: "min-w-0 flex-1 leading-[1.5]", children: [_jsx("span", { className: "text-foreground font-medium", children: "Editing tip" }), ' — ', "Click a section on the canvas, or in the list, to open its copy and images in the section list. Use ", _jsx("span", { className: "text-foreground font-medium", children: "Site preview" }), " to click text and images in place."] }), _jsx("button", { type: "button", "aria-label": "Dismiss editing tip", onClick: () => {
17
+ return (_jsxs("div", { role: "note", className: "border-border bg-card text-muted-foreground mx-auto mb-4 flex w-fit max-w-full items-start gap-2 rounded-lg border px-3 py-2 text-xs", children: [_jsx(MousePointerClick, { className: "text-foreground mt-0.5 h-3.5 w-3.5 shrink-0", "aria-hidden": true }), _jsxs("p", { className: "min-w-0 flex-1 leading-[1.5]", children: [_jsx("span", { className: "text-foreground font-medium", children: "Editing tip" }), ' — ', "Click a section on the canvas, or in the list, to open its copy and images in the section list. Use ", _jsx("span", { className: "text-foreground font-medium", children: "View site" }), " for the live design."] }), _jsx("button", { type: "button", "aria-label": "Dismiss editing tip", onClick: () => {
18
18
  dismissCanvasEditTip();
19
19
  setVisible(false);
20
20
  }, className: "text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:ring-ring -mt-0.5 -mr-0.5 shrink-0 rounded-md p-1 transition-colors focus-visible:ring-2 focus-visible:outline-none", children: _jsx(X, { className: "h-3.5 w-3.5", "aria-hidden": true }) })] }));