@parhelia/core 0.1.12881 → 0.1.12883

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 (220) hide show
  1. package/dist/agents-view/AgentsSidebar.js +1 -1
  2. package/dist/agents-view/AgentsSidebar.js.map +1 -1
  3. package/dist/agents-view/AgentsTitlebar.d.ts +1 -1
  4. package/dist/agents-view/AgentsTitlebar.js +3 -6
  5. package/dist/agents-view/AgentsTitlebar.js.map +1 -1
  6. package/dist/agents-view/AgentsView.d.ts +2 -2
  7. package/dist/agents-view/AgentsView.js +2 -2
  8. package/dist/agents-view/AgentsView.js.map +1 -1
  9. package/dist/agents-view/AgentsWorkspaceView.js +1 -12
  10. package/dist/agents-view/AgentsWorkspaceView.js.map +1 -1
  11. package/dist/agents-view/CreateAgentView.d.ts +1 -1
  12. package/dist/agents-view/CreateAgentView.js +1 -1
  13. package/dist/agents-view/DateAgentsGroup.js +12 -1
  14. package/dist/agents-view/DateAgentsGroup.js.map +1 -1
  15. package/dist/agents-view/ProfileAgentsGroup.js +16 -4
  16. package/dist/agents-view/ProfileAgentsGroup.js.map +1 -1
  17. package/dist/components/ui/checkbox.js +1 -1
  18. package/dist/components/ui/checkbox.js.map +1 -1
  19. package/dist/components/ui/context-menu.d.ts +2 -1
  20. package/dist/components/ui/context-menu.js +4 -1
  21. package/dist/components/ui/context-menu.js.map +1 -1
  22. package/dist/components/ui/input.js +2 -2
  23. package/dist/components/ui/input.js.map +1 -1
  24. package/dist/components/ui/select.js +1 -1
  25. package/dist/components/ui/select.js.map +1 -1
  26. package/dist/components/ui/textarea.js +2 -2
  27. package/dist/components/ui/textarea.js.map +1 -1
  28. package/dist/config/config.js +92 -14
  29. package/dist/config/config.js.map +1 -1
  30. package/dist/config/types.d.ts +7 -0
  31. package/dist/config/types.js.map +1 -1
  32. package/dist/editor/ContextMenu.d.ts +1 -0
  33. package/dist/editor/ContextMenu.js +4 -4
  34. package/dist/editor/ContextMenu.js.map +1 -1
  35. package/dist/editor/FieldHistory.d.ts +2 -1
  36. package/dist/editor/FieldHistory.js +13 -12
  37. package/dist/editor/FieldHistory.js.map +1 -1
  38. package/dist/editor/FieldListField.js +4 -18
  39. package/dist/editor/FieldListField.js.map +1 -1
  40. package/dist/editor/LinkEditorDialog.d.ts +9 -2
  41. package/dist/editor/LinkEditorDialog.js +174 -70
  42. package/dist/editor/LinkEditorDialog.js.map +1 -1
  43. package/dist/editor/MainLayout.js +49 -6
  44. package/dist/editor/MainLayout.js.map +1 -1
  45. package/dist/editor/MobileLayout.js +33 -1
  46. package/dist/editor/MobileLayout.js.map +1 -1
  47. package/dist/editor/PictureCropper.js +45 -28
  48. package/dist/editor/PictureCropper.js.map +1 -1
  49. package/dist/editor/ai/AgentProfileSelector.js +7 -7
  50. package/dist/editor/ai/AgentProfileSelector.js.map +1 -1
  51. package/dist/editor/ai/Agents.js +19 -5
  52. package/dist/editor/ai/Agents.js.map +1 -1
  53. package/dist/editor/ai/InlineAiDialog.d.ts +1 -0
  54. package/dist/editor/ai/InlineAiDialog.js +239 -198
  55. package/dist/editor/ai/InlineAiDialog.js.map +1 -1
  56. package/dist/editor/ai/InlineAiTextEditTooltip.d.ts +8 -0
  57. package/dist/editor/ai/InlineAiTextEditTooltip.js +10 -0
  58. package/dist/editor/ai/InlineAiTextEditTooltip.js.map +1 -0
  59. package/dist/editor/ai/InlineAiTrigger.js +187 -20
  60. package/dist/editor/ai/InlineAiTrigger.js.map +1 -1
  61. package/dist/editor/ai/inlineAiTextEditLabels.d.ts +2 -0
  62. package/dist/editor/ai/inlineAiTextEditLabels.js +8 -0
  63. package/dist/editor/ai/inlineAiTextEditLabels.js.map +1 -0
  64. package/dist/editor/ai/prepareInlineAiTextSelection.d.ts +5 -0
  65. package/dist/editor/ai/prepareInlineAiTextSelection.js +86 -0
  66. package/dist/editor/ai/prepareInlineAiTextSelection.js.map +1 -0
  67. package/dist/editor/ai/terminal/components/AgentSettingsPopover.js +1 -1
  68. package/dist/editor/ai/terminal/components/AgentSettingsPopover.js.map +1 -1
  69. package/dist/editor/ai/terminal/components/AiResponseMessage.js +9 -9
  70. package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
  71. package/dist/editor/ai/terminal/components/ToolCallDisplay.js +3 -1
  72. package/dist/editor/ai/terminal/components/ToolCallDisplay.js.map +1 -1
  73. package/dist/editor/ai/useActiveAgentConversation.d.ts +3 -0
  74. package/dist/editor/ai/useActiveAgentConversation.js +32 -0
  75. package/dist/editor/ai/useActiveAgentConversation.js.map +1 -0
  76. package/dist/editor/ai/useInlineAiPosition.d.ts +9 -1
  77. package/dist/editor/ai/useInlineAiPosition.js +10 -19
  78. package/dist/editor/ai/useInlineAiPosition.js.map +1 -1
  79. package/dist/editor/client/EditorShell.js +23 -4
  80. package/dist/editor/client/EditorShell.js.map +1 -1
  81. package/dist/editor/client/editContext.d.ts +25 -0
  82. package/dist/editor/client/editContext.js.map +1 -1
  83. package/dist/editor/client/fieldModificationStore.d.ts +1 -0
  84. package/dist/editor/client/fieldModificationStore.js +7 -2
  85. package/dist/editor/client/fieldModificationStore.js.map +1 -1
  86. package/dist/editor/client/itemsRepository.js +3 -1
  87. package/dist/editor/client/itemsRepository.js.map +1 -1
  88. package/dist/editor/client/operations.js +26 -4
  89. package/dist/editor/client/operations.js.map +1 -1
  90. package/dist/editor/client/ui/EditorChrome.js +1 -1
  91. package/dist/editor/client/ui/EditorChrome.js.map +1 -1
  92. package/dist/editor/commands/componentCommands.d.ts +3 -1
  93. package/dist/editor/commands/componentCommands.js +8 -3
  94. package/dist/editor/commands/componentCommands.js.map +1 -1
  95. package/dist/editor/commands/handlers/uiActionHandlers.js +5 -1
  96. package/dist/editor/commands/handlers/uiActionHandlers.js.map +1 -1
  97. package/dist/editor/editor-warnings/FinalWorkflowStateReadOnly.js +5 -0
  98. package/dist/editor/editor-warnings/FinalWorkflowStateReadOnly.js.map +1 -1
  99. package/dist/editor/editor-warnings/ItemLocked.js +6 -3
  100. package/dist/editor/editor-warnings/ItemLocked.js.map +1 -1
  101. package/dist/editor/field-types/DateFieldEditor.js +1 -1
  102. package/dist/editor/field-types/DateFieldEditor.js.map +1 -1
  103. package/dist/editor/field-types/DateTimeFieldEditor.js +1 -1
  104. package/dist/editor/field-types/DateTimeFieldEditor.js.map +1 -1
  105. package/dist/editor/field-types/DropLinkEditor.js +1 -1
  106. package/dist/editor/field-types/DropLinkEditor.js.map +1 -1
  107. package/dist/editor/field-types/DropListEditor.js +1 -1
  108. package/dist/editor/field-types/DropListEditor.js.map +1 -1
  109. package/dist/editor/field-types/ImageFieldEditor.js +1 -1
  110. package/dist/editor/field-types/ImageFieldEditor.js.map +1 -1
  111. package/dist/editor/field-types/InternalLinkFieldEditor.js +1 -1
  112. package/dist/editor/field-types/InternalLinkFieldEditor.js.map +1 -1
  113. package/dist/editor/field-types/LinkFieldEditor.js +15 -3
  114. package/dist/editor/field-types/LinkFieldEditor.js.map +1 -1
  115. package/dist/editor/field-types/MultiLineText.js +1 -1
  116. package/dist/editor/field-types/MultiLineText.js.map +1 -1
  117. package/dist/editor/field-types/NameValueListEditor.js +1 -1
  118. package/dist/editor/field-types/NameValueListEditor.js.map +1 -1
  119. package/dist/editor/field-types/PictureFieldEditor.js +2 -2
  120. package/dist/editor/field-types/PictureFieldEditor.js.map +1 -1
  121. package/dist/editor/field-types/RawEditor.js +1 -1
  122. package/dist/editor/field-types/RawEditor.js.map +1 -1
  123. package/dist/editor/field-types/RichTextEditorComponent.js +18 -36
  124. package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
  125. package/dist/editor/field-types/SingleLineText.js +1 -1
  126. package/dist/editor/field-types/SingleLineText.js.map +1 -1
  127. package/dist/editor/field-types/TreeListEditor.js +1 -1
  128. package/dist/editor/field-types/TreeListEditor.js.map +1 -1
  129. package/dist/editor/field-types/richtext/bridgeRichTextProfile.d.ts +21 -0
  130. package/dist/editor/field-types/richtext/bridgeRichTextProfile.js +96 -0
  131. package/dist/editor/field-types/richtext/bridgeRichTextProfile.js.map +1 -0
  132. package/dist/editor/field-types/richtext/components/ReactSlate.css +44 -6
  133. package/dist/editor/field-types/richtext/components/ReactSlate.js +185 -36
  134. package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
  135. package/dist/editor/field-types/richtext/components/SimpleRichTextEditor.css +5 -2
  136. package/dist/editor/field-types/richtext/components/SimpleToolbar.js +5 -4
  137. package/dist/editor/field-types/richtext/components/SimpleToolbar.js.map +1 -1
  138. package/dist/editor/field-types/richtext/contextMenuFactory.d.ts +2 -14
  139. package/dist/editor/field-types/richtext/contextMenuFactory.js +4 -232
  140. package/dist/editor/field-types/richtext/contextMenuFactory.js.map +1 -1
  141. package/dist/editor/field-types/richtext/richTextToolbarIcons.d.ts +7 -0
  142. package/dist/editor/field-types/richtext/richTextToolbarIcons.js +49 -0
  143. package/dist/editor/field-types/richtext/richTextToolbarIcons.js.map +1 -0
  144. package/dist/editor/field-types/richtext/utils/conversion.js +23 -2
  145. package/dist/editor/field-types/richtext/utils/conversion.js.map +1 -1
  146. package/dist/editor/fieldTypes.d.ts +2 -0
  147. package/dist/editor/media-selector/MediaFolderBrowser.d.ts +2 -1
  148. package/dist/editor/media-selector/MediaFolderBrowser.js +19 -9
  149. package/dist/editor/media-selector/MediaFolderBrowser.js.map +1 -1
  150. package/dist/editor/media-selector/TreeSelector.js +15 -9
  151. package/dist/editor/media-selector/TreeSelector.js.map +1 -1
  152. package/dist/editor/media-selector/UploadZone.d.ts +2 -1
  153. package/dist/editor/media-selector/UploadZone.js +21 -9
  154. package/dist/editor/media-selector/UploadZone.js.map +1 -1
  155. package/dist/editor/menubar/toolbar-sections/ManualBrowser.d.ts +10 -0
  156. package/dist/editor/menubar/toolbar-sections/ManualBrowser.js +607 -85
  157. package/dist/editor/menubar/toolbar-sections/ManualBrowser.js.map +1 -1
  158. package/dist/editor/menubar/toolbar-sections/UtilityControls.js +3 -1
  159. package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
  160. package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.d.ts +3 -1
  161. package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +357 -73
  162. package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +1 -1
  163. package/dist/editor/page-editor-chrome/PageEditorChrome.js +1 -1
  164. package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -1
  165. package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.d.ts +24 -0
  166. package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.js +89 -0
  167. package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.js.map +1 -0
  168. package/dist/editor/page-editor-chrome/useBridgeInlineEditing.d.ts +1 -1
  169. package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js +7 -1
  170. package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js.map +1 -1
  171. package/dist/editor/page-viewer/PageViewer.js +23 -4
  172. package/dist/editor/page-viewer/PageViewer.js.map +1 -1
  173. package/dist/editor/page-viewer/PageViewerFrame.js +157 -2
  174. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  175. package/dist/editor/reviews/Comment.js +2 -2
  176. package/dist/editor/reviews/Comment.js.map +1 -1
  177. package/dist/editor/reviews/CommentDisplayPopover.js +2 -1
  178. package/dist/editor/reviews/CommentDisplayPopover.js.map +1 -1
  179. package/dist/editor/reviews/CommentEditor.d.ts +1 -0
  180. package/dist/editor/reviews/CommentEditor.js +3 -2
  181. package/dist/editor/reviews/CommentEditor.js.map +1 -1
  182. package/dist/editor/reviews/CommentPopover.js +2 -2
  183. package/dist/editor/reviews/CommentPopover.js.map +1 -1
  184. package/dist/editor/reviews/Comments.js +5 -4
  185. package/dist/editor/reviews/Comments.js.map +1 -1
  186. package/dist/editor/reviews/FeedbackCard.js +5 -7
  187. package/dist/editor/reviews/FeedbackCard.js.map +1 -1
  188. package/dist/editor/reviews/SuggestionCommentThread.js +3 -3
  189. package/dist/editor/reviews/SuggestionCommentThread.js.map +1 -1
  190. package/dist/editor/services/contentService.d.ts +1 -0
  191. package/dist/editor/services/contentService.js.map +1 -1
  192. package/dist/editor/sidebar/Validation.js +4 -1
  193. package/dist/editor/sidebar/Validation.js.map +1 -1
  194. package/dist/editor/template-wizard/TemplateStructureInlineEditor.js +1 -1
  195. package/dist/editor/template-wizard/TemplateStructureInlineEditor.js.map +1 -1
  196. package/dist/editor/ui/SimpleIconButton.js +8 -2
  197. package/dist/editor/ui/SimpleIconButton.js.map +1 -1
  198. package/dist/editor/ui/Splitter.d.ts +1 -0
  199. package/dist/editor/ui/Splitter.js +12 -2
  200. package/dist/editor/ui/Splitter.js.map +1 -1
  201. package/dist/editor/ui/animationSettle.d.ts +32 -0
  202. package/dist/editor/ui/animationSettle.js +85 -0
  203. package/dist/editor/ui/animationSettle.js.map +1 -0
  204. package/dist/editor/utils/expandSelectionAtCaret.d.ts +15 -0
  205. package/dist/editor/utils/expandSelectionAtCaret.js +183 -0
  206. package/dist/editor/utils/expandSelectionAtCaret.js.map +1 -0
  207. package/dist/editor/views/MediaFolderEditView.js +1 -1
  208. package/dist/editor/views/MediaFolderEditView.js.map +1 -1
  209. package/dist/revision.d.ts +2 -2
  210. package/dist/revision.js +2 -2
  211. package/dist/splash-screen/DialogWrappers.js +2 -2
  212. package/dist/splash-screen/DialogWrappers.js.map +1 -1
  213. package/dist/task-board/components/TaskDetailPanel.js +2 -1
  214. package/dist/task-board/components/TaskDetailPanel.js.map +1 -1
  215. package/dist/task-board/views/DependencyGraphView.d.ts +42 -1
  216. package/dist/task-board/views/DependencyGraphView.js +94 -0
  217. package/dist/task-board/views/DependencyGraphView.js.map +1 -1
  218. package/dist/types.d.ts +1 -0
  219. package/package.json +1 -1
  220. package/styles.css +59 -12
@@ -1,32 +1,62 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useEffect, useRef, useState } from "react";
3
- import { Dialog, DialogContent } from "../components/ui/dialog";
4
- import { StyledDialogTitle } from "../components/ui/styled-dialog-title";
3
+ import { createPortal } from "react-dom";
5
4
  import { Input } from "../components/ui/input";
6
5
  import { Button } from "../components/ui/button";
7
- import { Select } from "../components/ui/select";
6
+ import { Switch } from "../components/ui/switch";
7
+ import { CloseButton } from "../components/ui/close-button";
8
8
  import ItemSearch from "./ui/ItemSearch";
9
9
  import { ScrollingContentTree } from "./ScrollingContentTree";
10
10
  import { useEditContext } from "./client/editContext";
11
11
  import { normalizeUrl } from "./utils/urlUtils";
12
12
  import DialogButtons from "./ui/DialogButtons";
13
- import { Link2 } from "lucide-react";
13
+ import { Globe2, Link2, Mail, Phone } from "lucide-react";
14
+ import { cn } from "../lib/utils";
14
15
  function normalizeItemId(id) {
15
16
  if (!id)
16
17
  return undefined;
17
18
  return id.toLowerCase().replace(/[{}]/g, "");
18
19
  }
19
- export function LinkEditorDialog({ linkValue, onCancel, onOk, showText, }) {
20
- const [url, setUrl] = useState();
20
+ function getInitialLinkType(link) {
21
+ if (link.type === "internal")
22
+ return "internal";
23
+ if (link.type === "email" || link.url?.startsWith("mailto:"))
24
+ return "email";
25
+ if (link.type === "phone" || link.url?.startsWith("tel:"))
26
+ return "phone";
27
+ return "external";
28
+ }
29
+ function stripLinkScheme(value, scheme) {
30
+ if (!value)
31
+ return "";
32
+ const prefix = `${scheme}:`;
33
+ return value.startsWith(prefix) ? value.slice(prefix.length) : value;
34
+ }
35
+ function formatSpecialLinkUrl(type, value) {
36
+ const trimmed = value.trim();
37
+ if (!trimmed)
38
+ return "";
39
+ if (type === "email") {
40
+ return trimmed.startsWith("mailto:") ? trimmed : `mailto:${trimmed}`;
41
+ }
42
+ return trimmed.startsWith("tel:") ? trimmed : `tel:${trimmed}`;
43
+ }
44
+ export function LinkEditorDialog({ linkValue, onCancel, onOk, showText, position, }) {
45
+ const [url, setUrl] = useState("");
46
+ const [emailAddress, setEmailAddress] = useState("");
47
+ const [phoneNumber, setPhoneNumber] = useState("");
21
48
  const [targetWindow, setTargetWindow] = useState();
22
49
  const [customTarget, setCustomTarget] = useState();
23
50
  const [queryString, setQueryString] = useState();
24
51
  const [text, setText] = useState();
25
- const [activeTabIndex, setActiveTabIndex] = useState(0);
52
+ const [title, setTitle] = useState("");
53
+ const [nofollow, setNofollow] = useState(false);
54
+ const [activeLinkType, setActiveLinkType] = useState("internal");
26
55
  const [selectedItemId, setSelectedItemId] = useState("");
27
56
  const [hoveredItemId, setHoveredItemId] = useState();
28
57
  const editContext = useEditContext();
29
58
  const lastInitKeyRef = useRef(null);
59
+ const popoverRef = useRef(null);
30
60
  useEffect(() => {
31
61
  const initKey = [
32
62
  linkValue.type,
@@ -35,40 +65,63 @@ export function LinkEditorDialog({ linkValue, onCancel, onOk, showText, }) {
35
65
  linkValue.target ?? "",
36
66
  linkValue.queryString ?? "",
37
67
  linkValue.text ?? "",
68
+ linkValue.title ?? "",
69
+ linkValue.nofollow ? "nofollow" : "",
38
70
  linkValue.originalHref ?? "",
39
71
  ].join("|");
40
72
  if (lastInitKeyRef.current === initKey)
41
73
  return;
42
74
  lastInitKeyRef.current = initKey;
43
- setUrl(linkValue.url);
75
+ const initialLinkType = getInitialLinkType(linkValue);
76
+ setUrl(linkValue.url ?? "");
77
+ setEmailAddress(stripLinkScheme(linkValue.url, "mailto"));
78
+ setPhoneNumber(stripLinkScheme(linkValue.url, "tel"));
44
79
  setTargetWindow(linkValue.target ?? "");
45
- if (linkValue.type == "external")
46
- setActiveTabIndex(1);
47
- else
48
- setActiveTabIndex(0);
49
- if (linkValue.target && linkValue.target != "_blank") {
80
+ setCustomTarget(undefined);
81
+ setActiveLinkType(initialLinkType);
82
+ if (linkValue.target &&
83
+ linkValue.target != "_blank" &&
84
+ linkValue.target != "_self") {
50
85
  setTargetWindow("custom");
51
86
  setCustomTarget(linkValue.target);
52
87
  }
53
- if (linkValue.itemId)
54
- setSelectedItemId(linkValue.itemId);
55
- if (linkValue.queryString)
56
- setQueryString(linkValue.queryString);
57
- if (linkValue.text)
58
- setText(linkValue.text);
88
+ setSelectedItemId(linkValue.itemId ?? "");
89
+ setQueryString(linkValue.queryString);
90
+ setText(linkValue.text);
91
+ setTitle(linkValue.title ?? "");
92
+ setNofollow(!!linkValue.nofollow);
59
93
  }, [linkValue]);
60
- const targetWindows = [
61
- { name: "Active browser", code: "" },
62
- { name: "New browser", code: "_blank" },
63
- { name: "Custom", code: "custom" },
64
- ];
65
- const targetWindowOptions = targetWindows.map((x) => ({
66
- value: x.code,
67
- label: x.name,
68
- }));
94
+ useEffect(() => {
95
+ // Trigger a resize event to recalculate layouts when dialog opens
96
+ window.dispatchEvent(new Event("resize"));
97
+ }, []);
98
+ useEffect(() => {
99
+ const handlePointerDown = (event) => {
100
+ const target = event.target;
101
+ if (target instanceof Node &&
102
+ popoverRef.current &&
103
+ !popoverRef.current.contains(target)) {
104
+ onCancel();
105
+ }
106
+ };
107
+ const handleKeyDown = (event) => {
108
+ if (event.key === "Escape") {
109
+ event.preventDefault();
110
+ onCancel();
111
+ }
112
+ };
113
+ document.addEventListener("pointerdown", handlePointerDown, true);
114
+ document.addEventListener("keydown", handleKeyDown, true);
115
+ return () => {
116
+ document.removeEventListener("pointerdown", handlePointerDown, true);
117
+ document.removeEventListener("keydown", handleKeyDown, true);
118
+ };
119
+ }, [onCancel]);
69
120
  function getTargetWindow() {
70
121
  if (targetWindow == "custom")
71
122
  return customTarget;
123
+ if (targetWindow === "_self")
124
+ return "";
72
125
  return targetWindow;
73
126
  }
74
127
  if (!editContext)
@@ -77,54 +130,105 @@ export function LinkEditorDialog({ linkValue, onCancel, onOk, showText, }) {
77
130
  const currentItemExpansionId = normalizeItemId(editContext.currentItemDescriptor?.id);
78
131
  const expandedItemId = selectedExpansionId || currentItemExpansionId;
79
132
  const linkTypeOptions = [
80
- { value: "internal", label: "Internal" },
81
- { value: "external", label: "External" },
133
+ { value: "internal", label: "Internal", icon: Link2 },
134
+ { value: "external", label: "External", icon: Globe2 },
135
+ { value: "email", label: "E-Mail", icon: Mail },
136
+ { value: "phone", label: "Phone", icon: Phone },
82
137
  ];
83
- const internalContent = (_jsxs("div", { className: "flex h-full flex-col overflow-hidden", "data-testid": "internal-tab", children: [_jsx("div", { className: "border-border-default bg-neutral-grey-5/30 border-b p-2", children: _jsx(ItemSearch, { resultClassName: "badge-pad", itemSelected: (item) => {
138
+ // Tab targets and nofollow only apply to page/url links, not mailto:/tel:.
139
+ const supportsTargetOptions = activeLinkType === "internal" || activeLinkType === "external";
140
+ const showTextExtras = showText && (_jsxs("div", { className: "grid grid-cols-2 gap-2", children: [_jsx(Input, { value: text || "", onChange: (e) => setText(e.target.value), className: "h-9 bg-white text-xs", placeholder: "Link description", "aria-label": "Link description", "data-testid": "link-description" }), _jsx(Input, { value: queryString || "", onChange: (e) => setQueryString(e.target.value), className: "h-9 bg-white text-xs", placeholder: "Query string", "aria-label": "Query string", "data-testid": "link-query-string" })] }));
141
+ const linkOptionsContent = (_jsxs("div", { className: "flex flex-col gap-3", children: [_jsx(Input, { value: title, onChange: (e) => setTitle(e.target.value), className: "h-9 bg-white text-xs", placeholder: "Link title", "aria-label": "Link title", "data-testid": "link-title" }), supportsTargetOptions && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx("span", { className: "text-neutral-grey-100 text-xs font-semibold", children: "Open in new Tab" }), _jsx(Switch, { checked: targetWindow === "_blank", onCheckedChange: (checked) =>
142
+ // Toggling off restores a pre-existing custom frame target
143
+ // instead of discarding it.
144
+ setTargetWindow(checked ? "_blank" : customTarget ? "custom" : ""), "aria-label": "Open in new Tab", "data-testid": "link-open-new-tab" })] }), _jsxs("div", { className: "flex items-start justify-between gap-3", children: [_jsxs("div", { className: "flex min-w-0 flex-col", children: [_jsx("span", { className: "text-neutral-grey-100 text-xs font-semibold", children: "Make link no follow" }), _jsx("span", { className: "text-neutral-grey-50 text-xs", children: "Searchengines will ignore a nofollow link." })] }), _jsx(Switch, { checked: nofollow, onCheckedChange: setNofollow, "aria-label": "Make link no follow", "data-testid": "link-nofollow", className: "mt-0.5" })] })] }))] }));
145
+ const internalContent = (_jsxs("div", { className: "flex h-full flex-col overflow-hidden", "data-testid": "internal-tab", children: [_jsx("div", { className: "shrink-0 bg-white px-3 pb-2 [&_[data-slot=input]]:h-9 [&_[data-slot=input]]:text-xs", children: _jsx(ItemSearch, { resultClassName: "badge-pad", placeholder: "Find page", itemSelected: (item) => {
84
146
  setSelectedItemId(item.id);
85
147
  }, setHoveredItem: (item) => ((item) => {
86
148
  if (!item)
87
149
  return;
88
150
  setHoveredItemId(item.id);
89
- })(item) }) }), _jsx("div", { className: "relative min-h-0 flex-1", children: _jsx("div", { className: "absolute inset-0 overflow-auto p-1", children: _jsx(ScrollingContentTree, { selectedItemId: hoveredItemId || selectedItemId, expandedItemId: expandedItemId, onSelectionChange: (selection) => {
151
+ })(item) }) }), _jsx("div", { className: "relative min-h-0 flex-1", children: _jsx("div", { className: "absolute inset-0 overflow-auto px-2 py-1", children: _jsx(ScrollingContentTree, { selectedItemId: hoveredItemId || selectedItemId, expandedItemId: expandedItemId, onSelectionChange: (selection) => {
90
152
  setSelectedItemId(selection[0]?.id || "");
91
153
  } }) }) })] }));
92
- const externalContent = (_jsxs("div", { className: "flex flex-col gap-2 p-3", "data-testid": "external-tab", children: [_jsx("label", { className: "block text-xs", htmlFor: "link-url-external", children: "External Url" }), _jsx(Input, { id: "link-url-external", value: url || "", onChange: (e) => {
93
- setUrl(e.target.value);
94
- }, onBlur: (e) => {
95
- const normalizedUrl = normalizeUrl(e.target.value.trim());
96
- setUrl(normalizedUrl);
97
- }, className: "w-full text-sm", "data-testid": "link-url-external" })] }));
98
- useEffect(() => {
99
- // Trigger a resize event to recalculate layouts when dialog opens
100
- window.dispatchEvent(new Event("resize"));
101
- }, []);
102
- return (_jsx(Dialog, { open: true, onOpenChange: (open) => {
103
- if (!open)
104
- onCancel();
105
- }, "data-testid": "link-editor-dialog", children: _jsxs(DialogContent, { className: "flex flex-col overflow-hidden border-none p-0 shadow-2xl", style: {
106
- width: "80vw",
107
- maxWidth: "900px",
108
- height: "70vh",
109
- maxHeight: "750px",
110
- }, children: [_jsx(StyledDialogTitle, { icon: _jsx(Link2, { strokeWidth: 1 }), title: "Select link target" }), _jsxs("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden", children: [_jsx("div", { className: "flex min-h-0 flex-1 flex-col overflow-y-auto px-6 pb-4", children: _jsxs("div", { className: "flex min-h-0 flex-1 flex-col gap-6 pt-6", children: [linkValue && (_jsx("div", { className: "flex items-center gap-8", children: linkTypeOptions.map((option) => (_jsxs("label", { className: "flex cursor-pointer items-center gap-2.5", children: [_jsx("input", { type: "radio", name: "link-type", value: option.value, checked: activeTabIndex ===
111
- (option.value === "internal" ? 0 : 1), onClick: () => {
112
- setActiveTabIndex(option.value === "internal" ? 0 : 1);
113
- }, onChange: () => { }, className: "accent-primary h-4 w-4 cursor-pointer", "data-testid": `link-type-${option.value}` }), _jsx("span", { className: "text-neutral-grey-100 text-sm font-medium", children: option.label })] }, option.value))) })), _jsxs("div", { className: "flex min-h-0 flex-1 flex-col gap-4", children: [_jsx("div", { className: `overflow-hidden bg-white ${activeTabIndex === 0
114
- ? "min-h-[320px] flex-1"
115
- : "border-border-default min-h-[110px] rounded-xl border shadow-sm"}`, children: activeTabIndex === 0 ? internalContent : externalContent }), _jsxs("div", { className: "grid grid-cols-2 gap-6", children: [_jsxs("div", { className: "flex flex-col gap-4", children: [showText && (_jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("label", { className: "text-neutral-grey-100 text-sm font-semibold", children: "Link description" }), _jsx(Input, { value: text || "", onChange: (e) => setText(e.target.value), className: "bg-white", placeholder: "Enter link text..." })] })), _jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("label", { className: "text-neutral-grey-100 text-sm font-semibold", children: "Query String" }), _jsx(Input, { value: queryString || "", onChange: (e) => setQueryString(e.target.value), className: "bg-white", placeholder: "e.g. ?id=123" })] })] }), _jsxs("div", { className: "flex flex-col gap-4", children: [_jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("label", { className: "text-neutral-grey-100 text-sm font-semibold", children: "Window" }), _jsx(Select, { value: targetWindow, onValueChange: (v) => setTargetWindow(v), options: targetWindowOptions, placeholder: "Select window", className: "bg-white" })] }), targetWindow === "custom" && (_jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("label", { className: "text-neutral-grey-100 text-sm font-semibold", children: "Custom Window Name" }), _jsx(Input, { value: customTarget || "", onChange: (e) => {
116
- setCustomTarget(e.target.value);
117
- }, placeholder: "Enter window name", className: "bg-white" })] }))] })] })] })] }) }), _jsxs(DialogButtons, { hideBorder: true, className: "bg-neutral-grey-5/50", children: [_jsx(Button, { variant: "ghost", onClick: onCancel, "data-testid": "dialog-cancel", children: "Cancel" }), _jsx(Button, { onClick: () => {
118
- const isExternal = activeTabIndex === 1;
119
- onOk({
120
- url: isExternal ? normalizeUrl(url || "") : url,
121
- target: getTargetWindow(),
122
- customTarget: customTarget,
123
- itemId: selectedItemId,
124
- queryString: queryString,
125
- text: text,
126
- type: isExternal ? "external" : "internal",
127
- });
128
- }, "data-testid": "dialog-ok", className: "min-w-[100px]", children: "Ok" })] })] })] }) }));
154
+ const renderFieldContent = () => {
155
+ if (activeLinkType === "internal")
156
+ return internalContent;
157
+ const field = activeLinkType === "external"
158
+ ? {
159
+ id: "link-url-external",
160
+ label: "External URL",
161
+ placeholder: "Add url",
162
+ value: url,
163
+ testId: "link-url-external",
164
+ onChange: setUrl,
165
+ onBlur: (value) => setUrl(normalizeUrl(value.trim())),
166
+ }
167
+ : activeLinkType === "email"
168
+ ? {
169
+ id: "link-url-email",
170
+ label: "E-Mail address",
171
+ placeholder: "name@example.com",
172
+ value: emailAddress,
173
+ testId: "link-url-email",
174
+ onChange: setEmailAddress,
175
+ onBlur: (value) => setEmailAddress(value.trim()),
176
+ }
177
+ : {
178
+ id: "link-url-phone",
179
+ label: "Phone number",
180
+ placeholder: "+1 555 0100",
181
+ value: phoneNumber,
182
+ testId: "link-url-phone",
183
+ onChange: setPhoneNumber,
184
+ onBlur: (value) => setPhoneNumber(value.trim()),
185
+ };
186
+ return (_jsxs("div", { className: "flex h-full flex-col gap-3 p-3 pt-0", "data-testid": `${activeLinkType}-tab`, children: [_jsx(Input, { id: field.id, value: field.value, onChange: (e) => field.onChange(e.target.value), onBlur: (e) => {
187
+ field.onBlur(e.target.value);
188
+ }, className: "h-9 w-full bg-white text-xs", placeholder: field.placeholder, "aria-label": field.label, "data-testid": field.testId }), showTextExtras, linkOptionsContent] }));
189
+ };
190
+ if (typeof document === "undefined") {
191
+ return null;
192
+ }
193
+ const viewportWidth = typeof window === "undefined" ? 1024 : window.innerWidth;
194
+ const viewportHeight = typeof window === "undefined" ? 768 : window.innerHeight;
195
+ const popoverLeft = position
196
+ ? position.x
197
+ : Math.max(16, viewportWidth / 2 - 243);
198
+ const popoverTop = position
199
+ ? position.y
200
+ : Math.max(16, viewportHeight / 2 - 296);
201
+ const content = (_jsxs("div", { ref: popoverRef, role: "dialog", "aria-modal": "false", "aria-label": "Link settings", "data-slot": "dialog-content", "data-testid": "link-editor-dialog", className: "border-border-default animate-in fade-in-0 zoom-in-95 fixed z-[1100] flex flex-col overflow-hidden rounded-[8px] border bg-white p-0 shadow-2xl duration-200 ease-out", style: {
202
+ left: popoverLeft,
203
+ top: popoverTop,
204
+ width: "486px",
205
+ maxWidth: "calc(100vw - 32px)",
206
+ height: activeLinkType === "internal" ? "592px" : "auto",
207
+ maxHeight: "calc(100vh - 48px)",
208
+ }, onMouseDown: (event) => event.stopPropagation(), onClick: (event) => event.stopPropagation(), children: [_jsxs("div", { className: "flex h-12 shrink-0 items-center gap-2 px-4 pt-2", children: [_jsx("div", { className: "text-neutral-grey-100 min-w-0 flex-1 text-sm font-semibold tracking-normal", children: "Link settings" }), _jsx(CloseButton, { onClick: onCancel, showTooltip: false })] }), _jsxs("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden", children: [_jsx("div", { className: "bg-white p-3", children: _jsx("div", { className: "bg-neutral-grey-5 grid grid-cols-4 gap-1 rounded-[6px] p-1", children: linkTypeOptions.map((option) => {
209
+ const Icon = option.icon;
210
+ const active = activeLinkType === option.value;
211
+ return (_jsxs("button", { type: "button", className: cn("text-neutral-grey-100 flex h-9 min-w-0 items-center justify-center gap-2 rounded-[5px] px-2 text-xs font-semibold transition-colors hover:bg-white/70", active && "bg-white shadow-sm"), "aria-pressed": active, onClick: () => setActiveLinkType(option.value), "data-testid": `link-type-${option.value}`, children: [_jsx(Icon, { className: "h-3.5 w-3.5", strokeWidth: 1.5 }), _jsx("span", { className: "truncate", children: option.label })] }, option.value));
212
+ }) }) }), _jsx("div", { className: "min-h-0 flex-1 overflow-hidden", children: renderFieldContent() }), activeLinkType === "internal" && (_jsxs("div", { className: "border-border-default flex shrink-0 flex-col gap-3 border-t p-3", children: [showTextExtras, linkOptionsContent] })), _jsxs(DialogButtons, { hideBorder: activeLinkType !== "internal", className: "shrink-0 bg-white px-4 py-3", children: [_jsx(Button, { variant: "ghost", size: "sm", onClick: onCancel, "data-testid": "dialog-cancel", className: "h-9 px-3", children: "Cancel" }), _jsx(Button, { onClick: () => {
213
+ const resolvedUrl = activeLinkType === "email"
214
+ ? formatSpecialLinkUrl("email", emailAddress)
215
+ : activeLinkType === "phone"
216
+ ? formatSpecialLinkUrl("phone", phoneNumber)
217
+ : activeLinkType === "external"
218
+ ? normalizeUrl(url || "")
219
+ : url;
220
+ onOk({
221
+ url: resolvedUrl,
222
+ target: supportsTargetOptions ? getTargetWindow() : "",
223
+ customTarget: supportsTargetOptions ? customTarget : undefined,
224
+ itemId: selectedItemId,
225
+ queryString: queryString,
226
+ text: text,
227
+ title: title.trim() || undefined,
228
+ nofollow: supportsTargetOptions && nofollow ? true : undefined,
229
+ type: activeLinkType,
230
+ });
231
+ }, "data-testid": "dialog-ok", size: "sm", className: "h-9 min-w-[64px] px-4", children: "Save" })] })] })] }));
232
+ return createPortal(content, document.body);
129
233
  }
130
234
  //# sourceMappingURL=LinkEditorDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LinkEditorDialog.js","sourceRoot":"","sources":["../../src/editor/LinkEditorDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LinkEditorDialog.js","sourceRoot":"","sources":["../../src/editor/LinkEditorDialog.tsx"],"names":[],"mappings":"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"}
@@ -8,7 +8,16 @@ import { GlobalMenuBar } from "./GlobalMenuBar";
8
8
  import { ArrowLeftToLine, ArrowRightToLine, Layers } from "lucide-react";
9
9
  import { MobileLayout } from "./MobileLayout";
10
10
  import { WorkspaceRail } from "./sidebar/WorkspaceRail";
11
- const SIDEBAR_COLLAPSE_ANIMATION_MS = 220;
11
+ // Fallback only: closed sidebar stacks are normally unmounted when their
12
+ // collapse transition ends (event-driven, see handlePanelTransitionEnd). This
13
+ // guardrail ensures cleanup even if a transitionend is ever missed.
14
+ const SIDEBAR_COLLAPSE_SAFETY_MS = 400;
15
+ const AGENTS_PANEL_SURFACE_KEY = "agents-panel";
16
+ function getSidebarStackPanelName(stackIds) {
17
+ return stackIds.length === 1
18
+ ? `sidebar-${stackIds[0]}`
19
+ : `sidebarStack-${stackIds.join("-")}`;
20
+ }
12
21
  function hasSidebarDragData(e) {
13
22
  return (e.dataTransfer.types.includes("text/alpaca-sidebar") ||
14
23
  e.dataTransfer.types.includes("text/alpaca-sidebar-icon"));
@@ -144,18 +153,49 @@ function DesktopMainLayout({ editContext, ...props }) {
144
153
  return next;
145
154
  });
146
155
  });
156
+ // Primary unmount of closed stacks is event-driven (handlePanelTransitionEnd).
157
+ // This timeout is only a guardrail in case a transitionend never arrives.
158
+ const hasClosedStacks = renderedLeftSidebarStacksRef.current.some((stack) => !openStackKeys.has(getSidebarStackKey(stack)));
159
+ if (!hasClosedStacks) {
160
+ return;
161
+ }
147
162
  const timeout = window.setTimeout(() => {
148
163
  setRenderedLeftSidebarStacks((prev) => {
149
164
  const filtered = prev.filter((stack) => openStackKeys.has(getSidebarStackKey(stack)));
150
165
  renderedLeftSidebarStacksRef.current = filtered;
151
166
  return filtered;
152
167
  });
153
- }, SIDEBAR_COLLAPSE_ANIMATION_MS);
168
+ }, SIDEBAR_COLLAPSE_SAFETY_MS);
154
169
  return () => {
155
170
  window.clearTimeout(timeout);
156
171
  };
157
172
  }, [leftSidebarStackKeySignature, leftSidebarStacks]);
158
173
  const openLeftSidebarStackKeys = useMemo(() => new Set(leftSidebarStacks.map(getSidebarStackKey)), [leftSidebarStacks]);
174
+ const openLeftSidebarStackKeysRef = React.useRef(openLeftSidebarStackKeys);
175
+ openLeftSidebarStackKeysRef.current = openLeftSidebarStackKeys;
176
+ // Map each splitter panel name to the settle surface key(s) it represents so
177
+ // the transitionend handler can notify the registry without re-parsing names.
178
+ const panelSurfaceKeysRef = React.useRef(new Map());
179
+ const handlePanelTransitionEnd = useCallback((panelName) => {
180
+ panelSurfaceKeysRef.current
181
+ .get(panelName)
182
+ ?.forEach((key) => editContext.notifySurfaceSettled?.(key));
183
+ // Event-driven unmount: once a closed sidebar stack finishes collapsing,
184
+ // drop it from the rendered set (replaces the old fixed-delay removal).
185
+ if (panelName.startsWith("sidebar")) {
186
+ setRenderedLeftSidebarStacks((prev) => {
187
+ const next = prev.filter((stack) => {
188
+ if (getSidebarStackPanelName(stack) !== panelName)
189
+ return true;
190
+ return openLeftSidebarStackKeysRef.current.has(getSidebarStackKey(stack));
191
+ });
192
+ if (next.length === prev.length)
193
+ return prev;
194
+ renderedLeftSidebarStacksRef.current = next;
195
+ return next;
196
+ });
197
+ }
198
+ }, [editContext]);
159
199
  // Drag and drop handlers for reordering pinned sidebars
160
200
  const handleDragOver = useCallback((e) => {
161
201
  e.preventDefault();
@@ -216,6 +256,7 @@ function DesktopMainLayout({ editContext, ...props }) {
216
256
  newOpen.splice(insertIndex, 0, sourceSidebarId);
217
257
  editContext.reorderOpenSidebars(newOpen);
218
258
  }, [editContext]);
259
+ const panelSurfaceKeys = new Map();
219
260
  // Render each sidebar stack as its own splitter panel (one column per stack).
220
261
  renderedLeftSidebarStacks.forEach((stackIds) => {
221
262
  const firstId = stackIds[0];
@@ -223,10 +264,10 @@ function DesktopMainLayout({ editContext, ...props }) {
223
264
  return;
224
265
  const firstResolved = editContext.getResolvedSidebar(firstId);
225
266
  const stackKey = getSidebarStackKey(stackIds);
267
+ const panelName = getSidebarStackPanelName(stackIds);
268
+ panelSurfaceKeys.set(panelName, stackIds.map((id) => `sidebar:${id}`));
226
269
  panels.push({
227
- name: stackIds.length === 1
228
- ? `sidebar-${firstId}`
229
- : `sidebarStack-${stackIds.join("-")}`,
270
+ name: panelName,
230
271
  defaultSize: firstResolved?.defaultWidth ?? 350,
231
272
  collapsed: !openLeftSidebarStackKeys.has(stackKey) ||
232
273
  openingLeftSidebarStackKeys.has(stackKey),
@@ -249,6 +290,7 @@ function DesktopMainLayout({ editContext, ...props }) {
249
290
  });
250
291
  }
251
292
  if (props.farRightSidebar) {
293
+ panelSurfaceKeys.set("farRightSidebar", [AGENTS_PANEL_SURFACE_KEY]);
252
294
  panels.push({
253
295
  name: "farRightSidebar",
254
296
  defaultSize: 600,
@@ -267,6 +309,7 @@ function DesktopMainLayout({ editContext, ...props }) {
267
309
  collapsible: false,
268
310
  });
269
311
  }
312
+ panelSurfaceKeysRef.current = panelSurfaceKeys;
270
313
  let className = props.className;
271
314
  if (!editContext?.configuration.editor.embedded) {
272
315
  className = cn("absolute inset-0", props.className);
@@ -284,6 +327,6 @@ function DesktopMainLayout({ editContext, ...props }) {
284
327
  const showSidebarIcons = showWorkspaceRail && workspace.supportsSidebars && hasAvailableSidebars;
285
328
  return (_jsx("div", { className: cn("flex h-full w-full flex-col font-normal select-none", className), children: _jsxs("div", { className: "flex flex-1 overflow-hidden", children: [showWorkspaceRail && (_jsx(WorkspaceRail, { showSidebarIcons: showSidebarIcons })), _jsxs("div", { className: "flex flex-1 flex-col overflow-hidden", children: [workspace.menuBar !== undefined
286
329
  ? workspace.menuBar
287
- : showMenuBar && _jsx(GlobalMenuBar, {}), workspace?.toolbarFactory && (_jsx("div", { className: "w-full shrink-0", children: workspace.toolbarFactory(editContext) })), _jsx("div", { className: "bg-neutral-grey-5 flex-1 overflow-hidden", children: _jsx(Splitter, { splitterClassName: "bg-transparent -mr-1.5 md:w-[6px]", localStorageKey: "editor.panelSizes", expandLabel: _jsxs("div", { className: "flex items-center justify-center", children: [_jsx(Layers, { size: 14 }), _jsxs("div", { className: "mt-3", children: [props.rightSidebarTitle, " "] })] }), panels: panels }) })] })] }) }));
330
+ : showMenuBar && _jsx(GlobalMenuBar, {}), workspace?.toolbarFactory && (_jsx("div", { className: "w-full shrink-0", children: workspace.toolbarFactory(editContext) })), _jsx("div", { className: "bg-neutral-grey-5 flex-1 overflow-hidden", children: _jsx(Splitter, { splitterClassName: "bg-transparent -mr-1.5 md:w-[6px]", localStorageKey: "editor.panelSizes", expandLabel: _jsxs("div", { className: "flex items-center justify-center", children: [_jsx(Layers, { size: 14 }), _jsxs("div", { className: "mt-3", children: [props.rightSidebarTitle, " "] })] }), panels: panels, onPanelTransitionEnd: handlePanelTransitionEnd }) })] })] }) }));
288
331
  }
289
332
  //# sourceMappingURL=MainLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MainLayout.js","sourceRoot":"","sources":["../../src/editor/MainLayout.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MainLayout.js","sourceRoot":"","sources":["../../src/editor/MainLayout.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useMemo, useRef } from "react";
2
3
  import { cn } from "../lib/utils";
3
4
  import { useEditContext } from "./client/editContext";
4
5
  import { EditorForm } from "./page-viewer/EditorForm";
@@ -8,7 +9,7 @@ import { Splitter } from "./ui/Splitter";
8
9
  import { EditorSlotContextProvider } from "./views/editorSlotContext";
9
10
  export function MobileLayout(props) {
10
11
  const editContext = useEditContext();
11
- const openSidebarIdsForStack = !editContext || !props.workspace?.supportsSidebars
12
+ const openSidebarIdsForStack = useMemo(() => !editContext || !props.workspace?.supportsSidebars
12
13
  ? []
13
14
  : editContext.openSidebars.filter((id) => {
14
15
  const resolved = editContext.getResolvedSidebar(id);
@@ -19,7 +20,38 @@ export function MobileLayout(props) {
19
20
  if (editContext.isMobile && id === "agents-panel")
20
21
  return true;
21
22
  return false;
23
+ }), [editContext, props.workspace?.supportsSidebars]);
24
+ // Mobile renders sidebars (incl. the Agents panel) by mounting/unmounting a
25
+ // Splitter panel rather than animating an `animatedCollapse` collapse, so the
26
+ // Splitter never emits a transitionend for them and `onPanelTransitionEnd` is
27
+ // not wired here. Report settle to the registry once the new layout has been
28
+ // committed and painted (double rAF) so awaiters such as the Show-me
29
+ // openAgentsPanel resolve event-driven on mobile instead of falling back to
30
+ // the 1.5s safety timeout. Notify both the previous and current ids so opens
31
+ // and closes both resolve their `sidebar:<id>` key.
32
+ const openSidebarStackKey = openSidebarIdsForStack.join("|");
33
+ const previousSidebarIdsRef = useRef([]);
34
+ const notifySurfaceSettled = editContext?.notifySurfaceSettled;
35
+ useEffect(() => {
36
+ const previous = previousSidebarIdsRef.current;
37
+ const current = openSidebarStackKey ? openSidebarStackKey.split("|") : [];
38
+ previousSidebarIdsRef.current = current;
39
+ if (!notifySurfaceSettled)
40
+ return;
41
+ const settledIds = Array.from(new Set([...previous, ...current]));
42
+ if (settledIds.length === 0)
43
+ return;
44
+ let raf2 = 0;
45
+ const raf1 = window.requestAnimationFrame(() => {
46
+ raf2 = window.requestAnimationFrame(() => {
47
+ settledIds.forEach((id) => notifySurfaceSettled(`sidebar:${id}`));
48
+ });
22
49
  });
50
+ return () => {
51
+ window.cancelAnimationFrame(raf1);
52
+ window.cancelAnimationFrame(raf2);
53
+ };
54
+ }, [openSidebarStackKey, notifySurfaceSettled]);
23
55
  if (!editContext)
24
56
  return null;
25
57
  const isEditorWorkspace = editContext.workspaceId === "editor";
@@ -1 +1 @@
1
- {"version":3,"file":"MobileLayout.js","sourceRoot":"","sources":["../../src/editor/MobileLayout.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MobileLayout.js","sourceRoot":"","sources":["../../src/editor/MobileLayout.tsx"],"names":[],"mappings":"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"}