@parhelia/core 0.1.12556 → 0.1.12560

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 (579) hide show
  1. package/dist/agents-view/AgentCard.d.ts +6 -4
  2. package/dist/agents-view/AgentCard.js +143 -24
  3. package/dist/agents-view/AgentCard.js.map +1 -1
  4. package/dist/agents-view/AgentsInbox.d.ts +1 -1
  5. package/dist/agents-view/AgentsInbox.js +7 -92
  6. package/dist/agents-view/AgentsInbox.js.map +1 -1
  7. package/dist/agents-view/AgentsTitlebar.js +3 -2
  8. package/dist/agents-view/AgentsTitlebar.js.map +1 -1
  9. package/dist/agents-view/AgentsView.d.ts +6 -7
  10. package/dist/agents-view/AgentsView.js +187 -98
  11. package/dist/agents-view/AgentsView.js.map +1 -1
  12. package/dist/agents-view/AgentsWorkspaceView.d.ts +2 -6
  13. package/dist/agents-view/AgentsWorkspaceView.js +266 -113
  14. package/dist/agents-view/AgentsWorkspaceView.js.map +1 -1
  15. package/dist/agents-view/ProfileAgentsGroup.d.ts +2 -1
  16. package/dist/agents-view/ProfileAgentsGroup.js +4 -3
  17. package/dist/agents-view/ProfileAgentsGroup.js.map +1 -1
  18. package/dist/components/ActionButton.d.ts +1 -1
  19. package/dist/components/ActionButton.js.map +1 -1
  20. package/dist/components/FilterInput.d.ts +1 -1
  21. package/dist/components/FilterInput.js +1 -1
  22. package/dist/components/FilterInput.js.map +1 -1
  23. package/dist/components/ui/LanguageSelector.js +2 -4
  24. package/dist/components/ui/LanguageSelector.js.map +1 -1
  25. package/dist/components/ui/PlaceholderInput.js +3 -3
  26. package/dist/components/ui/PlaceholderInput.js.map +1 -1
  27. package/dist/components/ui/PlaceholderInputTypes.js +1 -1
  28. package/dist/components/ui/PlaceholderInputTypes.js.map +1 -1
  29. package/dist/components/ui/alert-dialog.d.ts +1 -1
  30. package/dist/components/ui/alert-dialog.js +6 -10
  31. package/dist/components/ui/alert-dialog.js.map +1 -1
  32. package/dist/components/ui/button.d.ts +4 -4
  33. package/dist/components/ui/button.js +4 -1
  34. package/dist/components/ui/button.js.map +1 -1
  35. package/dist/components/ui/context-menu.d.ts +1 -1
  36. package/dist/components/ui/context-menu.js +12 -4
  37. package/dist/components/ui/context-menu.js.map +1 -1
  38. package/dist/components/ui/copy-button.d.ts +2 -1
  39. package/dist/components/ui/copy-button.js +2 -2
  40. package/dist/components/ui/copy-button.js.map +1 -1
  41. package/dist/components/ui/dialog.d.ts +1 -1
  42. package/dist/components/ui/dialog.js +21 -126
  43. package/dist/components/ui/dialog.js.map +1 -1
  44. package/dist/components/ui/input.d.ts +1 -1
  45. package/dist/components/ui/input.js +5 -3
  46. package/dist/components/ui/input.js.map +1 -1
  47. package/dist/components/ui/paste-button.d.ts +2 -1
  48. package/dist/components/ui/paste-button.js +2 -2
  49. package/dist/components/ui/paste-button.js.map +1 -1
  50. package/dist/components/ui/popover.js +1 -9
  51. package/dist/components/ui/popover.js.map +1 -1
  52. package/dist/components/ui/select.js +1 -1
  53. package/dist/components/ui/select.js.map +1 -1
  54. package/dist/components/ui/styled-dialog-title.js +1 -1
  55. package/dist/components/ui/styled-dialog-title.js.map +1 -1
  56. package/dist/components/ui/tabs.d.ts +1 -1
  57. package/dist/components/ui/tabs.js +4 -11
  58. package/dist/components/ui/tabs.js.map +1 -1
  59. package/dist/config/config.d.ts +4 -2
  60. package/dist/config/config.js +250 -70
  61. package/dist/config/config.js.map +1 -1
  62. package/dist/config/notificationRoutes.js +14 -0
  63. package/dist/config/notificationRoutes.js.map +1 -1
  64. package/dist/config/types/workspace.d.ts +6 -0
  65. package/dist/config/types.d.ts +63 -12
  66. package/dist/config/types.js.map +1 -1
  67. package/dist/editor/ConfirmationDialog.js +20 -4
  68. package/dist/editor/ConfirmationDialog.js.map +1 -1
  69. package/dist/editor/ContentTree.d.ts +2 -1
  70. package/dist/editor/ContentTree.js +93 -32
  71. package/dist/editor/ContentTree.js.map +1 -1
  72. package/dist/editor/Editor.js +87 -22
  73. package/dist/editor/Editor.js.map +1 -1
  74. package/dist/editor/FieldHistory.js +84 -36
  75. package/dist/editor/FieldHistory.js.map +1 -1
  76. package/dist/editor/FieldListField.js +21 -9
  77. package/dist/editor/FieldListField.js.map +1 -1
  78. package/dist/editor/FieldListFieldWithFallbacks.js +23 -2
  79. package/dist/editor/FieldListFieldWithFallbacks.js.map +1 -1
  80. package/dist/editor/GlobalMenuBar.js +29 -2
  81. package/dist/editor/GlobalMenuBar.js.map +1 -1
  82. package/dist/editor/ImageEditor.js +5 -2
  83. package/dist/editor/ImageEditor.js.map +1 -1
  84. package/dist/editor/ItemInfo.js +36 -1
  85. package/dist/editor/ItemInfo.js.map +1 -1
  86. package/dist/editor/LinkEditorDialog.js +3 -0
  87. package/dist/editor/LinkEditorDialog.js.map +1 -1
  88. package/dist/editor/MainLayout.d.ts +0 -2
  89. package/dist/editor/MainLayout.js +65 -8
  90. package/dist/editor/MainLayout.js.map +1 -1
  91. package/dist/editor/MigrationsView.js +29 -5
  92. package/dist/editor/MigrationsView.js.map +1 -1
  93. package/dist/editor/MobileLayout.js +37 -12
  94. package/dist/editor/MobileLayout.js.map +1 -1
  95. package/dist/editor/PictureCropper.js +54 -45
  96. package/dist/editor/PictureCropper.js.map +1 -1
  97. package/dist/editor/PictureEditor.js +17 -15
  98. package/dist/editor/PictureEditor.js.map +1 -1
  99. package/dist/editor/QuickItemSwitcher.js +21 -21
  100. package/dist/editor/QuickItemSwitcher.js.map +1 -1
  101. package/dist/editor/SetupWizard.js +52 -12
  102. package/dist/editor/SetupWizard.js.map +1 -1
  103. package/dist/editor/Titlebar.js +7 -2
  104. package/dist/editor/Titlebar.js.map +1 -1
  105. package/dist/editor/ai/AgentCostDisplay.d.ts +1 -0
  106. package/dist/editor/ai/AgentCostDisplay.js +1 -1
  107. package/dist/editor/ai/AgentCostDisplay.js.map +1 -1
  108. package/dist/editor/ai/AgentDocumentList.js +32 -14
  109. package/dist/editor/ai/AgentDocumentList.js.map +1 -1
  110. package/dist/editor/ai/AgentGreeting.js +3 -2
  111. package/dist/editor/ai/AgentGreeting.js.map +1 -1
  112. package/dist/editor/ai/AgentProfileSelector.js +2 -1
  113. package/dist/editor/ai/AgentProfileSelector.js.map +1 -1
  114. package/dist/editor/ai/AgentStatusBadge.d.ts +0 -5
  115. package/dist/editor/ai/AgentStatusBadge.js +67 -65
  116. package/dist/editor/ai/AgentStatusBadge.js.map +1 -1
  117. package/dist/editor/ai/AgentTerminal.d.ts +14 -2
  118. package/dist/editor/ai/AgentTerminal.js +2377 -483
  119. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  120. package/dist/editor/ai/AgentTerminalStatusBar.d.ts +8 -3
  121. package/dist/editor/ai/AgentTerminalStatusBar.js +460 -56
  122. package/dist/editor/ai/AgentTerminalStatusBar.js.map +1 -1
  123. package/dist/editor/ai/Agents.js +150 -113
  124. package/dist/editor/ai/Agents.js.map +1 -1
  125. package/dist/editor/ai/AiResponseMessage.d.ts +10 -1
  126. package/dist/editor/ai/AiResponseMessage.js +238 -23
  127. package/dist/editor/ai/AiResponseMessage.js.map +1 -1
  128. package/dist/editor/ai/ContextInfoBar.d.ts +2 -3
  129. package/dist/editor/ai/ContextInfoBar.js +64 -7
  130. package/dist/editor/ai/ContextInfoBar.js.map +1 -1
  131. package/dist/editor/ai/GuidanceOverlay.js +17 -11
  132. package/dist/editor/ai/GuidanceOverlay.js.map +1 -1
  133. package/dist/editor/ai/InlineAiDialog.d.ts +1 -1
  134. package/dist/editor/ai/InlineAiDialog.js +514 -192
  135. package/dist/editor/ai/InlineAiDialog.js.map +1 -1
  136. package/dist/editor/ai/InlineAiTrigger.js +115 -12
  137. package/dist/editor/ai/InlineAiTrigger.js.map +1 -1
  138. package/dist/editor/ai/MediaImage.js +40 -8
  139. package/dist/editor/ai/MediaImage.js.map +1 -1
  140. package/dist/editor/ai/SpawnedAgentsPanel.js +10 -12
  141. package/dist/editor/ai/SpawnedAgentsPanel.js.map +1 -1
  142. package/dist/editor/ai/ToolCallDisplay.d.ts +22 -2
  143. package/dist/editor/ai/ToolCallDisplay.js +518 -147
  144. package/dist/editor/ai/ToolCallDisplay.js.map +1 -1
  145. package/dist/editor/ai/dialogs/AgentDialogHandler.d.ts +1 -8
  146. package/dist/editor/ai/dialogs/AgentDialogHandler.js +379 -42
  147. package/dist/editor/ai/dialogs/AgentDialogHandler.js.map +1 -1
  148. package/dist/editor/ai/dialogs/QuestionnaireInline.d.ts +5 -1
  149. package/dist/editor/ai/dialogs/QuestionnaireInline.js +628 -60
  150. package/dist/editor/ai/dialogs/QuestionnaireInline.js.map +1 -1
  151. package/dist/editor/ai/dialogs/agentDialogTypes.d.ts +115 -0
  152. package/dist/editor/ai/dialogs/agentDialogTypes.js +2 -0
  153. package/dist/editor/ai/dialogs/agentDialogTypes.js.map +1 -1
  154. package/dist/editor/ai/types.d.ts +3 -1
  155. package/dist/editor/ai/useAgentStatus.d.ts +2 -1
  156. package/dist/editor/ai/useAgentStatus.js +86 -99
  157. package/dist/editor/ai/useAgentStatus.js.map +1 -1
  158. package/dist/editor/ai/useInlineAiPosition.js +45 -5
  159. package/dist/editor/ai/useInlineAiPosition.js.map +1 -1
  160. package/dist/editor/client/AboutDialog.js +4 -2
  161. package/dist/editor/client/AboutDialog.js.map +1 -1
  162. package/dist/editor/client/EditorShell.d.ts +4 -1
  163. package/dist/editor/client/EditorShell.js +770 -237
  164. package/dist/editor/client/EditorShell.js.map +1 -1
  165. package/dist/editor/client/editContext.d.ts +33 -19
  166. package/dist/editor/client/editContext.js.map +1 -1
  167. package/dist/editor/client/helpers.js +6 -0
  168. package/dist/editor/client/helpers.js.map +1 -1
  169. package/dist/editor/client/hooks/useEditorUrlSync.js +1 -2
  170. package/dist/editor/client/hooks/useEditorUrlSync.js.map +1 -1
  171. package/dist/editor/client/hooks/useEditorWebSocket.d.ts +10 -0
  172. package/dist/editor/client/hooks/useEditorWebSocket.js +209 -14
  173. package/dist/editor/client/hooks/useEditorWebSocket.js.map +1 -1
  174. package/dist/editor/client/hooks/useQuota.d.ts +8 -0
  175. package/dist/editor/client/hooks/useQuota.js.map +1 -1
  176. package/dist/editor/client/hooks/useSocketMessageHandler.js +68 -7
  177. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  178. package/dist/editor/client/itemsRepository.js +10 -6
  179. package/dist/editor/client/itemsRepository.js.map +1 -1
  180. package/dist/editor/client/navigation.js +35 -3
  181. package/dist/editor/client/navigation.js.map +1 -1
  182. package/dist/editor/client/operations.d.ts +6 -3
  183. package/dist/editor/client/operations.js +208 -30
  184. package/dist/editor/client/operations.js.map +1 -1
  185. package/dist/editor/client/pageModelBuilder.js +4 -31
  186. package/dist/editor/client/pageModelBuilder.js.map +1 -1
  187. package/dist/editor/client/ui/DevModeIndicator.js +2 -2
  188. package/dist/editor/client/ui/DevModeIndicator.js.map +1 -1
  189. package/dist/editor/client/ui/EditorChrome.d.ts +0 -6
  190. package/dist/editor/client/ui/EditorChrome.js +55 -72
  191. package/dist/editor/client/ui/EditorChrome.js.map +1 -1
  192. package/dist/editor/client/ui/FullscreenControls.js +5 -3
  193. package/dist/editor/client/ui/FullscreenControls.js.map +1 -1
  194. package/dist/editor/commands/commands.d.ts +11 -1
  195. package/dist/editor/commands/commands.js +12 -1
  196. package/dist/editor/commands/commands.js.map +1 -1
  197. package/dist/editor/commands/componentCommands.js +109 -55
  198. package/dist/editor/commands/componentCommands.js.map +1 -1
  199. package/dist/editor/commands/customCommandConverter.d.ts +8 -1
  200. package/dist/editor/commands/customCommandConverter.js +35 -5
  201. package/dist/editor/commands/customCommandConverter.js.map +1 -1
  202. package/dist/editor/commands/handlers/agentHandler.js +2 -1
  203. package/dist/editor/commands/handlers/agentHandler.js.map +1 -1
  204. package/dist/editor/commands/itemCommands.d.ts +3 -0
  205. package/dist/editor/commands/itemCommands.js +93 -10
  206. package/dist/editor/commands/itemCommands.js.map +1 -1
  207. package/dist/editor/commands/undo.d.ts +9 -15
  208. package/dist/editor/commands/undo.js +24 -0
  209. package/dist/editor/commands/undo.js.map +1 -1
  210. package/dist/editor/context-menu/InsertMenu.js +83 -39
  211. package/dist/editor/context-menu/InsertMenu.js.map +1 -1
  212. package/dist/editor/field-types/MultiLineText.js +1 -1
  213. package/dist/editor/field-types/MultiLineText.js.map +1 -1
  214. package/dist/editor/field-types/RawEditor.js +1 -1
  215. package/dist/editor/field-types/RichTextEditor.js +13 -5
  216. package/dist/editor/field-types/RichTextEditor.js.map +1 -1
  217. package/dist/editor/field-types/RichTextEditorComponent.js +37 -3
  218. package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
  219. package/dist/editor/field-types/SingleLineText.js +1 -1
  220. package/dist/editor/field-types/TreeListEditor.js +3 -2
  221. package/dist/editor/field-types/TreeListEditor.js.map +1 -1
  222. package/dist/editor/field-types/richtext/components/ReactSlate.css +23 -5
  223. package/dist/editor/field-types/richtext/components/ReactSlate.d.ts +2 -0
  224. package/dist/editor/field-types/richtext/components/ReactSlate.js +28 -4
  225. package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
  226. package/dist/editor/field-types/richtext/components/ToolbarButton.js +4 -2
  227. package/dist/editor/field-types/richtext/components/ToolbarButton.js.map +1 -1
  228. package/dist/editor/field-types/richtext/contextMenuFactory.d.ts +13 -0
  229. package/dist/editor/field-types/richtext/contextMenuFactory.js +181 -24
  230. package/dist/editor/field-types/richtext/contextMenuFactory.js.map +1 -1
  231. package/dist/editor/field-types/richtext/types.d.ts +2 -0
  232. package/dist/editor/field-types/richtext/types.js.map +1 -1
  233. package/dist/editor/field-types/richtext/utils/plugins.js +4 -0
  234. package/dist/editor/field-types/richtext/utils/plugins.js.map +1 -1
  235. package/dist/editor/field-types/textContextMenuFactory.js +3 -2
  236. package/dist/editor/field-types/textContextMenuFactory.js.map +1 -1
  237. package/dist/editor/media-selector/AiImageSearchPrompt.js +4 -2
  238. package/dist/editor/media-selector/AiImageSearchPrompt.js.map +1 -1
  239. package/dist/editor/media-selector/MediaFolderBrowser.js +1 -1
  240. package/dist/editor/media-selector/MediaFolderBrowser.js.map +1 -1
  241. package/dist/editor/media-selector/MediaSelector.js +7 -1
  242. package/dist/editor/media-selector/MediaSelector.js.map +1 -1
  243. package/dist/editor/media-selector/TreeSelector.js +40 -35
  244. package/dist/editor/media-selector/TreeSelector.js.map +1 -1
  245. package/dist/editor/menubar/ActiveUsers.js +1 -1
  246. package/dist/editor/menubar/ActiveUsers.js.map +1 -1
  247. package/dist/editor/menubar/GenericToolbar.js +4 -2
  248. package/dist/editor/menubar/GenericToolbar.js.map +1 -1
  249. package/dist/editor/menubar/ItemLanguageVersion.js +2 -2
  250. package/dist/editor/menubar/ItemLanguageVersion.js.map +1 -1
  251. package/dist/editor/menubar/PageSelector.js +26 -147
  252. package/dist/editor/menubar/PageSelector.js.map +1 -1
  253. package/dist/editor/menubar/Separator.js +1 -1
  254. package/dist/editor/menubar/VersionSelector.js +2 -4
  255. package/dist/editor/menubar/VersionSelector.js.map +1 -1
  256. package/dist/editor/menubar/WorkflowButton.js +39 -12
  257. package/dist/editor/menubar/WorkflowButton.js.map +1 -1
  258. package/dist/editor/menubar/toolbar-sections/CustomCommandsToolbar.js +16 -38
  259. package/dist/editor/menubar/toolbar-sections/CustomCommandsToolbar.js.map +1 -1
  260. package/dist/editor/menubar/toolbar-sections/EditControls.js +3 -3
  261. package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
  262. package/dist/editor/menubar/toolbar-sections/HelpButton.js +1 -0
  263. package/dist/editor/menubar/toolbar-sections/HelpButton.js.map +1 -1
  264. package/dist/editor/menubar/toolbar-sections/ManualBrowser.d.ts +6 -10
  265. package/dist/editor/menubar/toolbar-sections/ManualBrowser.js +597 -220
  266. package/dist/editor/menubar/toolbar-sections/ManualBrowser.js.map +1 -1
  267. package/dist/editor/menubar/toolbar-sections/UtilityControls.js +13 -2
  268. package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
  269. package/dist/editor/page-editor-chrome/CommentHighlighting.js +42 -1
  270. package/dist/editor/page-editor-chrome/CommentHighlighting.js.map +1 -1
  271. package/dist/editor/page-editor-chrome/FrameMenu.js +1 -1
  272. package/dist/editor/page-editor-chrome/FrameMenu.js.map +1 -1
  273. package/dist/editor/page-editor-chrome/InlineEditor.js +97 -48
  274. package/dist/editor/page-editor-chrome/InlineEditor.js.map +1 -1
  275. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +38 -17
  276. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
  277. package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +17 -11
  278. package/dist/editor/page-editor-chrome/PlaceholderDropZones.js.map +1 -1
  279. package/dist/editor/page-editor-chrome/useInlineAICompletion.js +301 -301
  280. package/dist/editor/page-editor-chrome/useInlineAICompletion.js.map +1 -1
  281. package/dist/editor/page-viewer/DeviceToolbar.js +1 -1
  282. package/dist/editor/page-viewer/DeviceToolbar.js.map +1 -1
  283. package/dist/editor/page-viewer/EditorForm.js +69 -11
  284. package/dist/editor/page-viewer/EditorForm.js.map +1 -1
  285. package/dist/editor/page-viewer/MiniMap.d.ts +2 -4
  286. package/dist/editor/page-viewer/MiniMap.js +91 -28
  287. package/dist/editor/page-viewer/MiniMap.js.map +1 -1
  288. package/dist/editor/page-viewer/PageViewer.d.ts +3 -1
  289. package/dist/editor/page-viewer/PageViewer.js +92 -19
  290. package/dist/editor/page-viewer/PageViewer.js.map +1 -1
  291. package/dist/editor/page-viewer/PageViewerFrame.d.ts +2 -1
  292. package/dist/editor/page-viewer/PageViewerFrame.js +348 -115
  293. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  294. package/dist/editor/page-viewer/pageModelSkeletonBuilder.js +114 -49
  295. package/dist/editor/page-viewer/pageModelSkeletonBuilder.js.map +1 -1
  296. package/dist/editor/page-viewer/pageViewContext.d.ts +1 -0
  297. package/dist/editor/page-viewer/pageViewContext.js +51 -14
  298. package/dist/editor/page-viewer/pageViewContext.js.map +1 -1
  299. package/dist/editor/pageModel.d.ts +14 -1
  300. package/dist/editor/reviews/Comment.js +26 -12
  301. package/dist/editor/reviews/Comment.js.map +1 -1
  302. package/dist/editor/reviews/CommentDisplayPopover.js +7 -5
  303. package/dist/editor/reviews/CommentDisplayPopover.js.map +1 -1
  304. package/dist/editor/reviews/CommentView.js +19 -4
  305. package/dist/editor/reviews/CommentView.js.map +1 -1
  306. package/dist/editor/reviews/Comments.js +89 -72
  307. package/dist/editor/reviews/Comments.js.map +1 -1
  308. package/dist/editor/reviews/CreateReviewDialog.js +281 -177
  309. package/dist/editor/reviews/CreateReviewDialog.js.map +1 -1
  310. package/dist/editor/reviews/DecisionsMatrix.js +96 -25
  311. package/dist/editor/reviews/DecisionsMatrix.js.map +1 -1
  312. package/dist/editor/reviews/DiffView.js +7 -14
  313. package/dist/editor/reviews/DiffView.js.map +1 -1
  314. package/dist/editor/reviews/EditReviewSettingsDialog.js +6 -4
  315. package/dist/editor/reviews/EditReviewSettingsDialog.js.map +1 -1
  316. package/dist/editor/reviews/MultiReviewManager.js +25 -3
  317. package/dist/editor/reviews/MultiReviewManager.js.map +1 -1
  318. package/dist/editor/reviews/PagesPanel.js +31 -15
  319. package/dist/editor/reviews/PagesPanel.js.map +1 -1
  320. package/dist/editor/reviews/PreviewInfo.js +1 -4
  321. package/dist/editor/reviews/PreviewInfo.js.map +1 -1
  322. package/dist/editor/reviews/ReviewCard.js +13 -7
  323. package/dist/editor/reviews/ReviewCard.js.map +1 -1
  324. package/dist/editor/reviews/ReviewDetail.js +3 -2
  325. package/dist/editor/reviews/ReviewDetail.js.map +1 -1
  326. package/dist/editor/reviews/ReviewsList.js +7 -3
  327. package/dist/editor/reviews/ReviewsList.js.map +1 -1
  328. package/dist/editor/reviews/SuggestedEdit.js +34 -3
  329. package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
  330. package/dist/editor/reviews/SuggestionDisplayPopover.js +31 -5
  331. package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -1
  332. package/dist/editor/reviews/commentAi.js +25 -6
  333. package/dist/editor/reviews/commentAi.js.map +1 -1
  334. package/dist/editor/reviews/reviewCommands.js +4 -1
  335. package/dist/editor/reviews/reviewCommands.js.map +1 -1
  336. package/dist/editor/reviews/useMultiReview.js +2 -2
  337. package/dist/editor/reviews/useMultiReview.js.map +1 -1
  338. package/dist/editor/reviews/useReviews.d.ts +2 -2
  339. package/dist/editor/reviews/useReviews.js +12 -30
  340. package/dist/editor/reviews/useReviews.js.map +1 -1
  341. package/dist/editor/services/agentService.d.ts +229 -5
  342. package/dist/editor/services/agentService.js +292 -39
  343. package/dist/editor/services/agentService.js.map +1 -1
  344. package/dist/editor/services/aiService.d.ts +57 -1
  345. package/dist/editor/services/aiService.js +79 -6
  346. package/dist/editor/services/aiService.js.map +1 -1
  347. package/dist/editor/services/contentService.d.ts +6 -3
  348. package/dist/editor/services/contentService.js +13 -12
  349. package/dist/editor/services/contentService.js.map +1 -1
  350. package/dist/editor/services/editService.d.ts +52 -1
  351. package/dist/editor/services/editService.js +94 -2
  352. package/dist/editor/services/editService.js.map +1 -1
  353. package/dist/editor/services/indexService.js +1 -1
  354. package/dist/editor/services/indexService.js.map +1 -1
  355. package/dist/editor/services/reviewsService.d.ts +3 -6
  356. package/dist/editor/services/reviewsService.js +2 -11
  357. package/dist/editor/services/reviewsService.js.map +1 -1
  358. package/dist/editor/services/serviceHelper.d.ts +2 -1
  359. package/dist/editor/services/serviceHelper.js +112 -20
  360. package/dist/editor/services/serviceHelper.js.map +1 -1
  361. package/dist/editor/services/systemService.d.ts +2 -1
  362. package/dist/editor/services/systemService.js +3 -0
  363. package/dist/editor/services/systemService.js.map +1 -1
  364. package/dist/editor/services-server/api.d.ts +1 -2
  365. package/dist/editor/services-server/api.js +11 -6
  366. package/dist/editor/services-server/api.js.map +1 -1
  367. package/dist/editor/settings/About.js +317 -3
  368. package/dist/editor/settings/About.js.map +1 -1
  369. package/dist/editor/settings/QuotaInfo.js +210 -4
  370. package/dist/editor/settings/QuotaInfo.js.map +1 -1
  371. package/dist/editor/settings/SettingsView.js +25 -23
  372. package/dist/editor/settings/SettingsView.js.map +1 -1
  373. package/dist/editor/settings/Status.js +7 -6
  374. package/dist/editor/settings/Status.js.map +1 -1
  375. package/dist/editor/settings/index/useIndexStatus.js +20 -22
  376. package/dist/editor/settings/index/useIndexStatus.js.map +1 -1
  377. package/dist/editor/settings/panels/AgentsPanel.d.ts +0 -4
  378. package/dist/editor/settings/panels/AgentsPanel.js +95 -121
  379. package/dist/editor/settings/panels/AgentsPanel.js.map +1 -1
  380. package/dist/editor/settings/panels/ModelsPanel.js +329 -108
  381. package/dist/editor/settings/panels/ModelsPanel.js.map +1 -1
  382. package/dist/editor/settings/panels/ProvidersPanel.d.ts +1 -1
  383. package/dist/editor/settings/panels/ProvidersPanel.js +86 -59
  384. package/dist/editor/settings/panels/ProvidersPanel.js.map +1 -1
  385. package/dist/editor/settings/panels/SearchConfigPanel.js +4 -4
  386. package/dist/editor/settings/panels/SearchConfigPanel.js.map +1 -1
  387. package/dist/editor/settings/panels/index.d.ts +3 -2
  388. package/dist/editor/settings/panels/index.js +3 -2
  389. package/dist/editor/settings/panels/index.js.map +1 -1
  390. package/dist/editor/settings/status/coreStatusChecks.js +124 -19
  391. package/dist/editor/settings/status/coreStatusChecks.js.map +1 -1
  392. package/dist/editor/settings/status/useStartupChecks.d.ts +3 -1
  393. package/dist/editor/settings/status/useStartupChecks.js +9 -5
  394. package/dist/editor/settings/status/useStartupChecks.js.map +1 -1
  395. package/dist/editor/setup-wizard/steps/CompleteStep.d.ts +2 -1
  396. package/dist/editor/setup-wizard/steps/CompleteStep.js +2 -1
  397. package/dist/editor/setup-wizard/steps/CompleteStep.js.map +1 -1
  398. package/dist/editor/sidebar/ComponentPalette.js +2 -1
  399. package/dist/editor/sidebar/ComponentPalette.js.map +1 -1
  400. package/dist/editor/sidebar/ComponentTree.d.ts +8 -1
  401. package/dist/editor/sidebar/ComponentTree.js +216 -69
  402. package/dist/editor/sidebar/ComponentTree.js.map +1 -1
  403. package/dist/editor/sidebar/EditHistory.js +22 -46
  404. package/dist/editor/sidebar/EditHistory.js.map +1 -1
  405. package/dist/editor/sidebar/Favorites.js +4 -8
  406. package/dist/editor/sidebar/Favorites.js.map +1 -1
  407. package/dist/editor/sidebar/MainContentTree.js +4 -3
  408. package/dist/editor/sidebar/MainContentTree.js.map +1 -1
  409. package/dist/editor/sidebar/OperationItem.js +21 -7
  410. package/dist/editor/sidebar/OperationItem.js.map +1 -1
  411. package/dist/editor/sidebar/SidebarPanel.d.ts +3 -1
  412. package/dist/editor/sidebar/SidebarPanel.js +44 -12
  413. package/dist/editor/sidebar/SidebarPanel.js.map +1 -1
  414. package/dist/editor/sidebar/SidebarStack.d.ts +2 -1
  415. package/dist/editor/sidebar/SidebarStack.js +4 -3
  416. package/dist/editor/sidebar/SidebarStack.js.map +1 -1
  417. package/dist/editor/sidebar/Validation.js +22 -12
  418. package/dist/editor/sidebar/Validation.js.map +1 -1
  419. package/dist/editor/sidebar/Workbox.js +53 -3
  420. package/dist/editor/sidebar/Workbox.js.map +1 -1
  421. package/dist/editor/sidebar/WorkspaceRail.d.ts +0 -1
  422. package/dist/editor/sidebar/WorkspaceRail.js +56 -167
  423. package/dist/editor/sidebar/WorkspaceRail.js.map +1 -1
  424. package/dist/editor/tree-indicators/GutterColumns.d.ts +3 -1
  425. package/dist/editor/tree-indicators/GutterColumns.js +26 -5
  426. package/dist/editor/tree-indicators/GutterColumns.js.map +1 -1
  427. package/dist/editor/tree-indicators/GutterContext.d.ts +4 -0
  428. package/dist/editor/tree-indicators/GutterContext.js +23 -0
  429. package/dist/editor/tree-indicators/GutterContext.js.map +1 -1
  430. package/dist/editor/tree-indicators/index.d.ts +0 -1
  431. package/dist/editor/tree-indicators/index.js +0 -1
  432. package/dist/editor/tree-indicators/index.js.map +1 -1
  433. package/dist/editor/tree-indicators/types.d.ts +12 -1
  434. package/dist/editor/ui/CopyMoveTargetSelectorDialog.js +1 -1
  435. package/dist/editor/ui/CopyMoveTargetSelectorDialog.js.map +1 -1
  436. package/dist/editor/ui/Icons.js +1 -1
  437. package/dist/editor/ui/Icons.js.map +1 -1
  438. package/dist/editor/ui/ItemNameDialogNew.d.ts +2 -0
  439. package/dist/editor/ui/ItemNameDialogNew.js +33 -17
  440. package/dist/editor/ui/ItemNameDialogNew.js.map +1 -1
  441. package/dist/editor/ui/ItemSearch.js +7 -11
  442. package/dist/editor/ui/ItemSearch.js.map +1 -1
  443. package/dist/editor/ui/SimpleIconButton.js +1 -1
  444. package/dist/editor/ui/SimpleIconButton.js.map +1 -1
  445. package/dist/editor/ui/SimpleTabs.d.ts +1 -0
  446. package/dist/editor/ui/SimpleTabs.js +45 -25
  447. package/dist/editor/ui/SimpleTabs.js.map +1 -1
  448. package/dist/editor/ui/Splitter.d.ts +1 -0
  449. package/dist/editor/ui/Splitter.js +102 -86
  450. package/dist/editor/ui/Splitter.js.map +1 -1
  451. package/dist/editor/ui/TemplateSelectorDialog.js +4 -4
  452. package/dist/editor/ui/TemplateSelectorDialog.js.map +1 -1
  453. package/dist/editor/ui/TreeListSelector.d.ts +6 -1
  454. package/dist/editor/ui/TreeListSelector.js +2 -2
  455. package/dist/editor/ui/TreeListSelector.js.map +1 -1
  456. package/dist/editor/utils/keyboardNavigation.d.ts +6 -20
  457. package/dist/editor/utils/keyboardNavigation.js +48 -140
  458. package/dist/editor/utils/keyboardNavigation.js.map +1 -1
  459. package/dist/editor/utils.js +19 -9
  460. package/dist/editor/utils.js.map +1 -1
  461. package/dist/editor/views/CompareView.d.ts +3 -1
  462. package/dist/editor/views/CompareView.js +7 -5
  463. package/dist/editor/views/CompareView.js.map +1 -1
  464. package/dist/editor/views/EditView.js +1 -1
  465. package/dist/editor/views/EditView.js.map +1 -1
  466. package/dist/editor/views/EditorSlot.js +27 -34
  467. package/dist/editor/views/EditorSlot.js.map +1 -1
  468. package/dist/editor/views/ItemEditor.js +7 -3
  469. package/dist/editor/views/ItemEditor.js.map +1 -1
  470. package/dist/editor/views/MediaFolderEditView.js +1 -1
  471. package/dist/editor/views/MediaFolderEditView.js.map +1 -1
  472. package/dist/editor/views/ParheliaView.js +5 -6
  473. package/dist/editor/views/ParheliaView.js.map +1 -1
  474. package/dist/editor/views/SingleEditView.d.ts +2 -1
  475. package/dist/editor/views/SingleEditView.js +10 -8
  476. package/dist/editor/views/SingleEditView.js.map +1 -1
  477. package/dist/editor/views/editorSlotContext.js +35 -6
  478. package/dist/editor/views/editorSlotContext.js.map +1 -1
  479. package/dist/index.d.ts +16 -2
  480. package/dist/index.js +11 -0
  481. package/dist/index.js.map +1 -1
  482. package/dist/revision.d.ts +2 -2
  483. package/dist/revision.js +2 -2
  484. package/dist/setup/services/setupWizardService.d.ts +40 -13
  485. package/dist/setup/services/setupWizardService.js +32 -17
  486. package/dist/setup/services/setupWizardService.js.map +1 -1
  487. package/dist/setup/wizard/steps/AddModelDialog.js +12 -3
  488. package/dist/setup/wizard/steps/AddModelDialog.js.map +1 -1
  489. package/dist/setup/wizard/steps/ImportModelDialog.js +39 -22
  490. package/dist/setup/wizard/steps/ImportModelDialog.js.map +1 -1
  491. package/dist/splash-screen/ModernSplashScreen.js +112 -32
  492. package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
  493. package/dist/splash-screen/NewPage.js +33 -50
  494. package/dist/splash-screen/NewPage.js.map +1 -1
  495. package/dist/splash-screen/OpenPage.js +2 -6
  496. package/dist/splash-screen/OpenPage.js.map +1 -1
  497. package/dist/splash-screen/ParheliaAssistantChat.js +12 -29
  498. package/dist/splash-screen/ParheliaAssistantChat.js.map +1 -1
  499. package/dist/splash-screen/ParheliaLogo.js +87 -37
  500. package/dist/splash-screen/ParheliaLogo.js.map +1 -1
  501. package/dist/splash-screen/RecentPages.js +3 -3
  502. package/dist/splash-screen/RecentPages.js.map +1 -1
  503. package/dist/tour/Tour.d.ts +2 -1
  504. package/dist/tour/Tour.js +256 -75
  505. package/dist/tour/Tour.js.map +1 -1
  506. package/dist/tour/default-tour.js +222 -96
  507. package/dist/tour/default-tour.js.map +1 -1
  508. package/dist/types.d.ts +63 -29
  509. package/package.json +19 -15
  510. package/styles.css +14 -10
  511. package/dist/editor/ComponentInfo.d.ts +0 -4
  512. package/dist/editor/ComponentInfo.js +0 -41
  513. package/dist/editor/ComponentInfo.js.map +0 -1
  514. package/dist/editor/ai/HelpTerminal.d.ts +0 -5
  515. package/dist/editor/ai/HelpTerminal.js +0 -166
  516. package/dist/editor/ai/HelpTerminal.js.map +0 -1
  517. package/dist/editor/field-types/ReactQuill.d.ts +0 -125
  518. package/dist/editor/field-types/ReactQuill.js +0 -385
  519. package/dist/editor/field-types/ReactQuill.js.map +0 -1
  520. package/dist/editor/services-server/graphQL.d.ts +0 -29
  521. package/dist/editor/services-server/graphQL.js +0 -53
  522. package/dist/editor/services-server/graphQL.js.map +0 -1
  523. package/dist/editor/settings/AllAgentsPanel.d.ts +0 -5
  524. package/dist/editor/settings/AllAgentsPanel.js +0 -139
  525. package/dist/editor/settings/AllAgentsPanel.js.map +0 -1
  526. package/dist/editor/settings/LatestFeedback.d.ts +0 -1
  527. package/dist/editor/settings/LatestFeedback.js +0 -136
  528. package/dist/editor/settings/LatestFeedback.js.map +0 -1
  529. package/dist/editor/settings/Setup.d.ts +0 -1
  530. package/dist/editor/settings/Setup.js +0 -211
  531. package/dist/editor/settings/Setup.js.map +0 -1
  532. package/dist/editor/settings/panels/DatabasePanel.d.ts +0 -6
  533. package/dist/editor/settings/panels/DatabasePanel.js +0 -50
  534. package/dist/editor/settings/panels/DatabasePanel.js.map +0 -1
  535. package/dist/editor/settings/setup-steps/AiSetupStep/EmbeddingsModelSection.d.ts +0 -2
  536. package/dist/editor/settings/setup-steps/AiSetupStep/EmbeddingsModelSection.js +0 -195
  537. package/dist/editor/settings/setup-steps/AiSetupStep/EmbeddingsModelSection.js.map +0 -1
  538. package/dist/editor/settings/setup-steps/AiSetupStep/index.d.ts +0 -2
  539. package/dist/editor/settings/setup-steps/AiSetupStep/index.js +0 -21
  540. package/dist/editor/settings/setup-steps/AiSetupStep/index.js.map +0 -1
  541. package/dist/editor/settings/setup-steps/AiSetupStep/provider/ProviderSection.d.ts +0 -1
  542. package/dist/editor/settings/setup-steps/AiSetupStep/provider/ProviderSection.js +0 -233
  543. package/dist/editor/settings/setup-steps/AiSetupStep/provider/ProviderSection.js.map +0 -1
  544. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersList.d.ts +0 -15
  545. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersList.js +0 -14
  546. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersList.js.map +0 -1
  547. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.d.ts +0 -1
  548. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.js +0 -94
  549. package/dist/editor/settings/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.js.map +0 -1
  550. package/dist/editor/settings/setup-steps/AiSetupStep/types.d.ts +0 -1
  551. package/dist/editor/settings/setup-steps/AiSetupStep/types.js +0 -2
  552. package/dist/editor/settings/setup-steps/AiSetupStep/types.js.map +0 -1
  553. package/dist/editor/settings/setup-steps/AiSetupStep/utils.d.ts +0 -5
  554. package/dist/editor/settings/setup-steps/AiSetupStep/utils.js +0 -44
  555. package/dist/editor/settings/setup-steps/AiSetupStep/utils.js.map +0 -1
  556. package/dist/editor/settings/setup-steps/IndexSetupStep.d.ts +0 -2
  557. package/dist/editor/settings/setup-steps/IndexSetupStep.js +0 -36
  558. package/dist/editor/settings/setup-steps/IndexSetupStep.js.map +0 -1
  559. package/dist/editor/settings/setup-steps/SettingsSetupStep.d.ts +0 -2
  560. package/dist/editor/settings/setup-steps/SettingsSetupStep.js +0 -111
  561. package/dist/editor/settings/setup-steps/SettingsSetupStep.js.map +0 -1
  562. package/dist/editor/settings/setup-steps/SetupOverview.d.ts +0 -14
  563. package/dist/editor/settings/setup-steps/SetupOverview.js +0 -38
  564. package/dist/editor/settings/setup-steps/SetupOverview.js.map +0 -1
  565. package/dist/editor/sidebar/Debug.d.ts +0 -1
  566. package/dist/editor/sidebar/Debug.js +0 -70
  567. package/dist/editor/sidebar/Debug.js.map +0 -1
  568. package/dist/editor/sidebar/GraphQL.d.ts +0 -2
  569. package/dist/editor/sidebar/GraphQL.js +0 -234
  570. package/dist/editor/sidebar/GraphQL.js.map +0 -1
  571. package/dist/editor/sidebar/LeftToolbar.d.ts +0 -1
  572. package/dist/editor/sidebar/LeftToolbar.js +0 -12
  573. package/dist/editor/sidebar/LeftToolbar.js.map +0 -1
  574. package/dist/editor/sidebar/NavigationSidebar.d.ts +0 -4
  575. package/dist/editor/sidebar/NavigationSidebar.js +0 -254
  576. package/dist/editor/sidebar/NavigationSidebar.js.map +0 -1
  577. package/dist/editor/tree-indicators/GutterSelector.d.ts +0 -5
  578. package/dist/editor/tree-indicators/GutterSelector.js +0 -91
  579. package/dist/editor/tree-indicators/GutterSelector.js.map +0 -1
package/dist/types.d.ts CHANGED
@@ -56,7 +56,7 @@ export type EditSession = {
56
56
  color: string;
57
57
  };
58
58
  export type EditOperation = {
59
- type: "edit-field" | "remove-component" | "move-component" | "add-component" | "synchronize-components" | "link-component" | "duplicate-components" | "rename-item" | "change-template" | "create-item" | "delete-items" | "add-version" | "remove-version" | "move-items" | "copy-items" | "import-items" | "convert-to-shared";
59
+ type: "edit-field" | "remove-component" | "move-component" | "add-component" | "synchronize-components" | "link-component" | "duplicate-components" | "rename-item" | "change-template" | "create-item" | "delete-items" | "add-version" | "remove-version" | "move-items" | "copy-items" | "import-items" | "publish-item" | "convert-to-shared" | "update-rendering-parameters";
60
60
  date: string;
61
61
  id: string;
62
62
  user?: User;
@@ -76,6 +76,12 @@ export type EditOperation = {
76
76
  focus?: string;
77
77
  mainItem: ItemDescriptor;
78
78
  mainItemPath?: string;
79
+ /** Populated when the server completes copy/create flows (e.g. for selection / terminal waiters). */
80
+ createdItemIds?: string[];
81
+ /** Source items for copy-items / move-items style operations. */
82
+ sourceItemIds?: string[];
83
+ /** Destination parent for copy-items / move-items. */
84
+ targetParentId?: string;
79
85
  agentId?: string;
80
86
  toolCallId?: string;
81
87
  /** Execution status for long-running operations: pending, executing, completed, or failed */
@@ -156,6 +162,7 @@ export type CreateItemOperation = EditOperation & {
156
162
  export type DeleteItemsOperation = EditOperation & {
157
163
  type: "delete-items";
158
164
  items: ItemDescriptor[];
165
+ hardDelete?: boolean;
159
166
  };
160
167
  export type MoveItemsOperation = EditOperation & {
161
168
  type: "move-items";
@@ -183,6 +190,18 @@ export type ImportItemsOperation = EditOperation & {
183
190
  failureCount?: number;
184
191
  summary?: string;
185
192
  };
193
+ export type PublishMode = "smart" | "republish";
194
+ export type PublishItemOperation = EditOperation & {
195
+ type: "publish-item";
196
+ item: ItemDescriptor;
197
+ targetDatabases: string[];
198
+ languages: string[];
199
+ publishMode: PublishMode;
200
+ includeSubitems: boolean;
201
+ publishRelatedItems: boolean;
202
+ publishedTargets?: string[];
203
+ publishedLanguages?: string[];
204
+ };
186
205
  export type AddVersionOperation = EditOperation & {
187
206
  type: "add-version";
188
207
  item: ItemDescriptor;
@@ -198,14 +217,16 @@ export type ConvertToSharedOperation = EditOperation & {
198
217
  componentId: string;
199
218
  targetFolderId?: string;
200
219
  };
220
+ export type UpdateRenderingParametersOperation = EditOperation & {
221
+ type: "update-rendering-parameters";
222
+ componentId: string;
223
+ parameters: Record<string, string | null>;
224
+ previousParameters?: Record<string, string | null>;
225
+ };
201
226
  export type PlaceholderToSynchronize = {
202
227
  name?: string;
203
228
  item?: ItemDescriptor | null;
204
229
  };
205
- /** @deprecated Use WorkspaceSettings instead */
206
- export type View = {
207
- name: string;
208
- };
209
230
  /**
210
231
  * Workspace settings from Sitecore, containing available sidebars for this workspace.
211
232
  */
@@ -219,8 +240,6 @@ export type UserInfo = {
219
240
  user: User;
220
241
  /** Workspace settings with nested sidebars - use this for new code */
221
242
  workspaces?: WorkspaceSettings[];
222
- /** @deprecated Use workspaces instead */
223
- views: View[];
224
243
  browseHistory?: UserBrowseHistoryEntry[];
225
244
  preferences: UserPreferences;
226
245
  };
@@ -234,11 +253,9 @@ export type User = {
234
253
  isAdministrator?: boolean;
235
254
  };
236
255
  export type UserPreferences = {
237
- pinnedViews?: string[];
238
256
  pinnedSidebars?: string[];
239
257
  showLabels?: boolean;
240
- /** @deprecated Use showLabels instead */
241
- showViewNames?: boolean;
258
+ showDisplayNames?: boolean;
242
259
  showComponentNavigator?: boolean;
243
260
  showAgentsPanel?: boolean;
244
261
  showMinimap?: boolean;
@@ -272,8 +289,6 @@ export type NavigationHistoryEntry = {
272
289
  itemName?: string;
273
290
  itemPath?: string;
274
291
  itemIcon?: string;
275
- /** @deprecated Use workspaceId instead */
276
- viewName?: string;
277
292
  };
278
293
  export type UserBrowseHistoryEntry = {
279
294
  id: number;
@@ -292,6 +307,8 @@ export type FieldHistoryItem = {
292
307
  date: string;
293
308
  ai: boolean;
294
309
  agentId?: string;
310
+ isBaseline?: boolean;
311
+ itemHistoryIndex?: number;
295
312
  value: unknown;
296
313
  rawValue: string;
297
314
  version: number;
@@ -340,11 +357,26 @@ export type InsertOption = {
340
357
  message?: string;
341
358
  isHidden: any;
342
359
  compatibleTypeIds?: string[];
360
+ isCommandTemplate?: boolean;
343
361
  action?: InsertAction;
344
362
  };
345
363
  export type LanguagesAndVersions = {
346
364
  languages: LanguageVersions[];
347
365
  versions: Version[];
366
+ itemPublishingRestrictions?: {
367
+ neverPublish: boolean;
368
+ neverPublishFieldId?: string | null;
369
+ publish?: string | null;
370
+ publishFieldId?: string | null;
371
+ unpublish?: string | null;
372
+ unpublishFieldId?: string | null;
373
+ };
374
+ publishingTargets?: {
375
+ name: string;
376
+ targetDatabase: string;
377
+ status: string;
378
+ message: string;
379
+ }[];
348
380
  };
349
381
  export type IndexStatus = {
350
382
  numberOfIndexedItems: number;
@@ -469,32 +501,17 @@ export type Comment = {
469
501
  author?: string;
470
502
  authorDisplayName?: string;
471
503
  created?: string;
504
+ tags?: string;
472
505
  isResolved?: boolean;
473
506
  resolvedBy?: string;
474
507
  resolvedDate?: string;
475
508
  position: number;
476
- tags?: string;
477
509
  relatedItems?: CommentRelatedItem[];
478
510
  };
479
511
  export type CommentTag = {
480
512
  label: string;
481
513
  color: string;
482
514
  };
483
- export type Reviewer = {
484
- name: string;
485
- email: string;
486
- };
487
- export type Review = {
488
- id: string;
489
- reviewerName: string;
490
- reviewerEmail: string;
491
- itemId: string;
492
- language: string;
493
- version: number;
494
- invitationSentDate?: string;
495
- approvalDate?: string;
496
- rejectedDate?: string;
497
- };
498
515
  export type ReviewWithPages = {
499
516
  reviewId: string;
500
517
  collectionId: string;
@@ -509,6 +526,7 @@ export type ReviewWithPages = {
509
526
  requiresSecret?: boolean;
510
527
  requiredApprovals?: number;
511
528
  updateWorkflowOnCompletion?: boolean;
529
+ shareCommentsAndSuggestions?: boolean;
512
530
  };
513
531
  export type ReviewAssignment = {
514
532
  assignmentId: string;
@@ -522,6 +540,11 @@ export type ReviewAssignment = {
522
540
  decisions?: ItemDecision[];
523
541
  secretValidated?: boolean;
524
542
  };
543
+ /** Review header plus assignments (e.g. from GET /parhelia/reviews/index). */
544
+ export type ReviewWithAssignments = {
545
+ review: ReviewWithPages;
546
+ assignments: ReviewAssignment[];
547
+ };
525
548
  export type ItemDecision = {
526
549
  decisionId: string;
527
550
  assignmentId: string;
@@ -564,7 +587,6 @@ export type ReviewListItem = {
564
587
  };
565
588
  export type CreateReviewRequest = {
566
589
  title?: string;
567
- language?: string;
568
590
  languages?: string[];
569
591
  reviewers: ReviewerInfo[];
570
592
  items: ItemWithSubtree[];
@@ -572,6 +594,7 @@ export type CreateReviewRequest = {
572
594
  secret?: string;
573
595
  requiredApprovals?: number;
574
596
  updateWorkflowOnCompletion?: boolean;
597
+ shareCommentsAndSuggestions?: boolean;
575
598
  };
576
599
  export type ReviewerInfo = {
577
600
  name: string;
@@ -590,6 +613,8 @@ export type SystemStatus = {
590
613
  messages: SystemStatusMessage[];
591
614
  settingsExist: boolean;
592
615
  setupComplete: boolean;
616
+ currentSiteName?: string;
617
+ shellSiteResolved?: boolean;
593
618
  };
594
619
  export type ParheliaSettings = {
595
620
  itemNameValidation?: string;
@@ -609,6 +634,15 @@ export type SamplePrompt = {
609
634
  description: string;
610
635
  prompt: string;
611
636
  };
637
+ export type HomeQuickAction = {
638
+ id: string;
639
+ title: string;
640
+ description: string;
641
+ svgIcon?: string;
642
+ commandType: string;
643
+ sortOrder: number;
644
+ settings: Record<string, unknown>;
645
+ };
612
646
  export type AiTextEditPrompt = {
613
647
  id: string;
614
648
  label: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@parhelia/core",
3
- "version": "0.1.12556",
3
+ "version": "0.1.12560",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -27,22 +27,27 @@
27
27
  "type": "module",
28
28
  "scripts": {
29
29
  "build": "tsc -p tsconfig.build.json && copyfiles -u 1 \"src/**/*.css\" dist",
30
+ "build:native": "tsgo -p tsconfig.build.json && copyfiles -u 1 \"src/**/*.css\" dist",
30
31
  "lint": "eslint . ",
31
- "check-types": "tsc --noEmit -p tsconfig.build.json"
32
+ "check-types": "tsc --noEmit -p tsconfig.build.json",
33
+ "check-types:native": "tsgo --noEmit -p tsconfig.build.json"
32
34
  },
33
35
  "devDependencies": {
34
36
  "@repo/eslint-config": "*",
35
37
  "@repo/typescript-config": "*",
36
38
  "@tailwindcss/postcss": "^4.1.18",
39
+ "@types/d3-hierarchy": "^3.1.7",
40
+ "@types/dompurify": "^3.0.5",
37
41
  "@types/node": "^22.13.9",
38
- "@types/react": "19.2.2",
39
- "@types/react-dom": "19.2.2",
42
+ "@types/react": "19.2.14",
43
+ "@types/react-dom": "19.2.3",
40
44
  "copyfiles": "^2.4.1",
41
45
  "eslint": "^9.22.0",
42
46
  "tailwindcss": "^4.1.18",
43
47
  "typescript": "5.8.2"
44
48
  },
45
49
  "dependencies": {
50
+ "@dagrejs/dagre": "^2.0.4",
46
51
  "@radix-ui/react-alert-dialog": "^1.1.15",
47
52
  "@radix-ui/react-checkbox": "^1.3.2",
48
53
  "@radix-ui/react-context-menu": "^2.2.7",
@@ -55,29 +60,28 @@
55
60
  "@radix-ui/react-slot": "^1.1.2",
56
61
  "@radix-ui/react-switch": "^1.2.5",
57
62
  "@radix-ui/react-tooltip": "^1.2.7",
63
+ "@radix-ui/react-visually-hidden": "^1.1.2",
58
64
  "@types/diff": "^7.0.2",
59
65
  "@types/lodash": "^4.17.16",
60
- "@uiw/react-md-editor": "^4.0.5",
61
66
  "@uiw/react-textarea-code-editor": "^3.1.1",
62
- "axios": "^1.6.7",
67
+ "@xyflow/react": "^12.10.1",
68
+ "axios": "^1.13.6",
63
69
  "class-variance-authority": "^0.7.1",
64
70
  "clsx": "^2.1.1",
65
71
  "cmdk": "^1.1.1",
66
72
  "date-fns": "^4.1.0",
67
- "diff": "^7.0.0",
73
+ "diff": "^8.0.4",
74
+ "dompurify": "^3.3.3",
68
75
  "html-entities": "^2.6.0",
76
+ "html2canvas-pro": "^2.0.2",
69
77
  "lucide-react": "^0.486.0",
70
78
  "morphdom": "^2.7.5",
71
- "next": "16.0.10",
72
- "next-themes": "^0.4.6",
73
79
  "postcss": "^8.5.3",
74
- "quill": "^2.0.3",
75
- "react": "19.2.3",
80
+ "react": "19.2.4",
76
81
  "react-day-picker": "^9.8.0",
77
- "react-dom": "19.2.3",
82
+ "react-dom": "19.2.4",
78
83
  "react-inspector": "^6.0.2",
79
84
  "react-json-view-lite": "^2.4.1",
80
- "react-quill-new": "^3.4.1",
81
85
  "react-uuid": "^2.0.0",
82
86
  "slate": "^0.117.2",
83
87
  "slate-dom": "^0.117.4",
@@ -90,7 +94,7 @@
90
94
  "use-debounce": "^10.0.4"
91
95
  },
92
96
  "overrides": {
93
- "@types/react": "19.2.2",
94
- "@types/react-dom": "19.2.2"
97
+ "@types/react": "19.2.14",
98
+ "@types/react-dom": "19.2.3"
95
99
  }
96
100
  }
package/styles.css CHANGED
@@ -28,6 +28,9 @@
28
28
 
29
29
  html,
30
30
  body {
31
+ height: 100%;
32
+ overflow: hidden;
33
+ overscroll-behavior: none;
31
34
  font-family:
32
35
  var(--font-inter),
33
36
  Inter,
@@ -966,23 +969,19 @@ body {
966
969
  animation-name: slide-in-from-left;
967
970
  }
968
971
 
969
- /* ViewTransition animations for Parhelia Assistant Chat */
970
- ::view-transition-old(.slide-fade-in) {
971
- animation: 200ms cubic-bezier(0.4, 0, 0.2, 1) both fade-out;
972
- }
973
-
974
- ::view-transition-new(.slide-fade-in) {
975
- animation: 400ms cubic-bezier(0.4, 0, 0.2, 1) both slide-fade-in-animation;
972
+ /* View slide-in animation */
973
+ .animate-view-slide-in {
974
+ animation: 400ms cubic-bezier(0.16, 1, 0.3, 1) both view-slide-in;
976
975
  }
977
976
 
978
- @keyframes slide-fade-in-animation {
977
+ @keyframes view-slide-in {
979
978
  from {
980
979
  opacity: 0;
981
- transform: translateY(20px);
980
+ transform: translateX(20px);
982
981
  }
983
982
  to {
984
983
  opacity: 1;
985
- transform: translateY(0);
984
+ transform: translateX(0);
986
985
  }
987
986
  }
988
987
 
@@ -1044,3 +1043,8 @@ body {
1044
1043
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1), ease-in-out;
1045
1044
  transition-delay: 0.8s, 0s;
1046
1045
  }
1046
+
1047
+
1048
+ .licensing-background-pattern {
1049
+ background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fillRule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.4'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
1050
+ }
@@ -1,4 +0,0 @@
1
- import { Component } from "./pageModel";
2
- export declare function ComponentInfo({ component }: {
3
- component: Component | null;
4
- }): import("react/jsx-runtime").JSX.Element | null;
@@ -1,41 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
- import { useEffect, useState } from "react";
4
- import { CopyButton } from "../components/ui/copy-button";
5
- import { Section } from "./ui/Section";
6
- import { useEditContext } from "./client/editContext";
7
- export function ComponentInfo({ component }) {
8
- if (!component)
9
- return null;
10
- const editContext = useEditContext();
11
- const [layoutItem, setLayoutItem] = useState();
12
- const [dataSourceItem, setDataSourceItem] = useState();
13
- useEffect(() => {
14
- if (!component.layoutId) {
15
- setLayoutItem(undefined);
16
- return;
17
- }
18
- editContext.itemsRepository
19
- .getItem({
20
- id: component.layoutId,
21
- language: editContext.currentItemDescriptor.language,
22
- version: 0,
23
- })
24
- .then(setLayoutItem);
25
- }, [component.layoutId]);
26
- useEffect(() => {
27
- async function loadDataSourceItem() {
28
- if (!component?.datasourceItem) {
29
- setDataSourceItem(undefined);
30
- return;
31
- }
32
- const item = await editContext.itemsRepository.getItem(component.datasourceItem);
33
- setDataSourceItem(item);
34
- }
35
- loadDataSourceItem();
36
- }, [component.datasourceItem]);
37
- const hostingPageItem = layoutItem ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "font-bold", children: "Source:" }), _jsxs("div", { children: [layoutItem.path, " ID: ", layoutItem.id] })] })) : null;
38
- const linkedComponent = component.datasourceItem ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "font-bold", children: "Source:" }), _jsxs("div", { children: [dataSourceItem?.path, " (", dataSourceItem?.id, ")"] })] })) : null;
39
- return (_jsxs("div", { children: [_jsx("h2", { className: "text-l my-2 px-3 py-3 font-bold", children: component.name }), _jsx(Section, { title: "Info", children: _jsxs("div", { className: "grid grid-cols-[min-content_1fr] gap-3 bg-gray-100 text-xs", children: [_jsx("div", { className: "font-bold", children: "ID:" }), _jsxs("div", { className: "flex items-center gap-1", children: [component.id, " ", _jsx(CopyButton, { textToCopy: component.id, iconOnly: true })] }), _jsx("div", { className: "font-bold", children: "Template" }), _jsxs("div", { children: ["(", component.datasourceItem?.templateId, component.datasourceItem && (_jsx(CopyButton, { textToCopy: component.datasourceItem.templateId, iconOnly: true })), ")"] }), _jsx("div", { className: "font-bold", children: "Languages" }), _jsx("div", { children: dataSourceItem?.translations?.join(", ") }), hostingPageItem, linkedComponent] }) })] }));
40
- }
41
- //# sourceMappingURL=ComponentInfo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ComponentInfo.js","sourceRoot":"","sources":["../../src/editor/ComponentInfo.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * HelpTerminalPanel - renders as a panel integrated into MainLayout's Splitter.
3
- * This component is shown when editContext.showHelpTerminal is true.
4
- */
5
- export declare function HelpTerminalPanel(): import("react/jsx-runtime").JSX.Element;
@@ -1,166 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, useEffect, useCallback, useMemo } from "react";
3
- import { X, Loader2, MessageCircleQuestion, ArrowLeft } from "lucide-react";
4
- import { useEditContext } from "../client/editContext";
5
- import { AgentTerminal } from "./AgentTerminal";
6
- import { loadAiProfiles, loadHelpTopics } from "../services/aiService";
7
- import { ManualBrowser } from "../menubar/toolbar-sections/ManualBrowser";
8
- import { SimpleTabs } from "../ui/SimpleTabs";
9
- import { FilterInput, highlightMatch } from "../../components/FilterInput";
10
- import { cn } from "../../lib/utils";
11
- const HELP_AGENT_PROFILE = "Help";
12
- const TAB_IDS = ["ask", "manual"];
13
- /**
14
- * HelpTerminalPanel - renders as a panel integrated into MainLayout's Splitter.
15
- * This component is shown when editContext.showHelpTerminal is true.
16
- */
17
- export function HelpTerminalPanel() {
18
- const editContext = useEditContext();
19
- const [availableProfiles, setAvailableProfiles] = useState([]);
20
- const [loadingProfiles, setLoadingProfiles] = useState(false);
21
- const [agent, setAgent] = useState(null);
22
- const [initialMetadata, setInitialMetadata] = useState(undefined);
23
- // Topics browser state
24
- const [topics, setTopics] = useState([]);
25
- const [loadingTopics, setLoadingTopics] = useState(false);
26
- const [topicsError, setTopicsError] = useState(null);
27
- const [searchQuery, setSearchQuery] = useState("");
28
- const [selectedTopic, setSelectedTopic] = useState(null);
29
- const [customQuestion, setCustomQuestion] = useState("");
30
- // Get the active tab from context, defaulting to "ask"
31
- const activeTabType = editContext?.helpTerminalActiveTab || "ask";
32
- const activeTabIndex = TAB_IDS.indexOf(activeTabType);
33
- const setActiveTabIndex = useCallback((index) => {
34
- const tabType = TAB_IDS[index];
35
- if (tabType) {
36
- editContext?.setHelpTerminalActiveTab(tabType);
37
- }
38
- }, [editContext]);
39
- // Define tabs for SimpleTabs component
40
- const tabs = useMemo(() => [
41
- { id: "ask", label: "Ask", content: null },
42
- { id: "manual", label: "Manual", content: null },
43
- ], []);
44
- // Load help topics when component mounts
45
- useEffect(() => {
46
- setLoadingTopics(true);
47
- setTopicsError(null);
48
- loadHelpTopics()
49
- .then((data) => {
50
- setTopics(data);
51
- })
52
- .catch((err) => {
53
- console.error("Failed to load help topics:", err);
54
- setTopicsError("Failed to load help topics");
55
- })
56
- .finally(() => {
57
- setLoadingTopics(false);
58
- });
59
- }, []);
60
- // Filter topics based on search query
61
- const filteredTopics = useMemo(() => {
62
- if (!searchQuery.trim()) {
63
- return topics;
64
- }
65
- const query = searchQuery.toLowerCase();
66
- return topics.filter((topic) => {
67
- const titleMatch = topic.title?.toLowerCase().includes(query);
68
- const descriptionMatch = topic.description?.toLowerCase().includes(query);
69
- return titleMatch || descriptionMatch;
70
- });
71
- }, [topics, searchQuery]);
72
- // Load profiles when component mounts
73
- useEffect(() => {
74
- let cancelled = false;
75
- (async () => {
76
- try {
77
- setLoadingProfiles(true);
78
- const profiles = await loadAiProfiles(editContext?.currentItemDescriptor);
79
- if (cancelled)
80
- return;
81
- setAvailableProfiles(profiles || []);
82
- }
83
- catch (e) {
84
- console.error("Failed to load AI profiles", e);
85
- }
86
- finally {
87
- if (!cancelled)
88
- setLoadingProfiles(false);
89
- }
90
- })();
91
- return () => {
92
- cancelled = true;
93
- };
94
- }, [editContext?.currentItemDescriptor?.id]);
95
- // Get initial prompt and profile name from editContext
96
- const initialPrompt = editContext?.helpTerminalInitialPrompt;
97
- const profileName = editContext?.helpTerminalProfileName || HELP_AGENT_PROFILE;
98
- // Determine the effective initial prompt (from context or selected topic)
99
- const effectiveInitialPrompt = initialPrompt || selectedTopic?.prompt;
100
- // Check if we should show the agent (has initial prompt from context or selected topic)
101
- const showAgent = !!initialPrompt || !!selectedTopic;
102
- // Create agent when profiles are loaded and we have a prompt
103
- useEffect(() => {
104
- if (agent || availableProfiles.length === 0 || !showAgent)
105
- return;
106
- const profile = availableProfiles.find((p) => p.name === profileName || p.id === profileName) || availableProfiles.find((p) => p.name === HELP_AGENT_PROFILE);
107
- const finalProfileName = profile?.name || profileName;
108
- const newAgent = {
109
- status: "new",
110
- id: crypto.randomUUID(),
111
- name: profile?.agentName || profile?.displayTitle || finalProfileName,
112
- updatedDate: new Date().toISOString(),
113
- userId: "",
114
- profileId: profile?.id,
115
- profileName: finalProfileName,
116
- profileSvgIcon: profile?.svgIcon,
117
- };
118
- // Build metadata with profile info and initial prompt
119
- const metadata = {
120
- profile: finalProfileName,
121
- additionalData: {
122
- profileId: profile?.id,
123
- profileName: finalProfileName,
124
- ...(effectiveInitialPrompt && { initialPrompt: effectiveInitialPrompt }),
125
- },
126
- };
127
- setAgent(newAgent);
128
- setInitialMetadata(metadata);
129
- }, [agent, availableProfiles, profileName, effectiveInitialPrompt, showAgent]);
130
- const handleClose = useCallback(() => {
131
- editContext?.setShowHelpTerminal(false);
132
- }, [editContext]);
133
- const handleTopicClick = useCallback((topic) => {
134
- setSelectedTopic(topic);
135
- }, []);
136
- const handleCustomQuestionSubmit = useCallback(() => {
137
- if (!customQuestion.trim())
138
- return;
139
- const customTopic = {
140
- id: "custom-" + Date.now(),
141
- title: "Custom Question",
142
- description: customQuestion,
143
- prompt: customQuestion,
144
- };
145
- setSelectedTopic(customTopic);
146
- setCustomQuestion("");
147
- }, [customQuestion]);
148
- const handleBackToTopics = useCallback(() => {
149
- setSelectedTopic(null);
150
- setAgent(null);
151
- setInitialMetadata(undefined);
152
- setSearchQuery("");
153
- }, []);
154
- return (_jsxs("div", { className: "flex h-full flex-col bg-white", children: [_jsxs("div", { className: "flex shrink-0 items-center justify-between border-b border-gray-200 bg-gray-50 pl-2 pr-2 pt-2", children: [_jsx(SimpleTabs, { tabs: tabs, activeTab: activeTabIndex, setActiveTab: setActiveTabIndex, hideContent: true, className: "justify-start" }), _jsx("button", { onClick: handleClose, className: "rounded p-1 text-gray-400 transition-colors hover:bg-gray-200 hover:text-gray-600", "aria-label": "Close", children: _jsx(X, { size: 16, strokeWidth: 1.5 }) })] }), _jsxs("div", { className: "flex-1 overflow-hidden", children: [_jsx("div", { className: cn("h-full", activeTabType !== "ask" && "hidden"), children: showAgent ? (
155
- // Show agent terminal with back button
156
- _jsxs("div", { className: "flex h-full flex-col", children: [selectedTopic && (_jsx("div", { className: "shrink-0 border-b border-gray-100 px-3 py-2", children: _jsxs("button", { onClick: handleBackToTopics, className: "flex items-center gap-1.5 text-xs text-gray-500 hover:text-gray-700 transition-colors", children: [_jsx(ArrowLeft, { className: "h-3.5 w-3.5" }), "Back to topics"] }) })), _jsx("div", { className: "flex-1 overflow-hidden", children: agent ? (_jsx(AgentTerminal, { agentStub: agent, initialMetadata: initialMetadata, profiles: availableProfiles, isActive: activeTabType === "ask", compact: false, simpleMode: true, hideGreeting: false, initialPrompt: effectiveInitialPrompt })) : (_jsx("div", { className: "flex h-full flex-col items-center justify-center", children: _jsx("div", { className: "text-sm text-gray-500", children: "Loading agent..." }) })) })] })) : (
157
- // Show topics browser
158
- _jsxs("div", { className: "flex h-full flex-col", children: [_jsx("div", { className: "shrink-0 border-b border-gray-100 px-4 py-3", children: _jsx("h3", { className: "text-sm font-semibold text-gray-900", children: "How can we help?" }) }), _jsxs("div", { className: "shrink-0 border-b border-gray-100 bg-blue-50/50 px-4 py-3", children: [_jsx("div", { className: "flex items-center justify-between mb-2", children: _jsxs("h4", { className: "text-xs font-semibold text-blue-900 flex items-center gap-1.5", children: [_jsx(MessageCircleQuestion, { className: "h-3.5 w-3.5" }), "Ask a question"] }) }), _jsxs("div", { className: "flex gap-2", children: [_jsx("div", { className: "flex-1", children: _jsx("input", { type: "text", value: customQuestion, onChange: (e) => setCustomQuestion(e.target.value), onKeyDown: (e) => {
159
- if (e.key === "Enter" && customQuestion.trim()) {
160
- handleCustomQuestionSubmit();
161
- }
162
- }, placeholder: "How do I...", className: "h-8 w-full rounded border border-gray-200 bg-white px-2.5 text-xs focus:border-blue-500 focus:outline-none" }) }), _jsx("button", { onClick: handleCustomQuestionSubmit, disabled: !customQuestion.trim(), className: cn("rounded px-3 py-1 text-xs font-medium transition-colors", customQuestion.trim()
163
- ? "bg-blue-600 text-white hover:bg-blue-700"
164
- : "bg-gray-200 text-gray-400 cursor-not-allowed"), children: "Ask" })] })] }), _jsx("div", { className: "shrink-0 border-b border-gray-100 bg-gray-50 px-4 py-2", children: _jsx("p", { className: "text-xs text-gray-500", children: "Or browse common topics" }) }), _jsx("div", { className: "shrink-0 px-4 py-2", children: _jsx(FilterInput, { value: searchQuery, onChange: setSearchQuery, placeholder: "Filter topics...", size: "sm" }) }), _jsxs("div", { className: "flex-1 overflow-y-auto", children: [loadingTopics && (_jsx("div", { className: "flex items-center justify-center py-8", children: _jsx(Loader2, { className: "h-5 w-5 animate-spin text-gray-400" }) })), topicsError && (_jsx("div", { className: "px-4 py-8 text-center text-sm text-red-500", children: topicsError })), !loadingTopics && !topicsError && topics.length === 0 && (_jsx("div", { className: "px-4 py-8 text-center text-sm text-gray-500", children: "No help topics available" })), !loadingTopics && !topicsError && topics.length > 0 && filteredTopics.length === 0 && searchQuery && (_jsx("div", { className: "px-4 py-8 text-center text-sm text-gray-500", children: "No help topics match your search" })), !loadingTopics && !topicsError && filteredTopics.length > 0 && (_jsx("div", { className: "py-2", children: filteredTopics.map((topic) => (_jsxs("button", { onClick: () => handleTopicClick(topic), className: cn("flex w-full items-start gap-3 px-4 py-2.5 text-left transition-colors", "hover:bg-gray-50 focus:bg-gray-50 focus:outline-none"), children: [_jsx(MessageCircleQuestion, { className: "mt-0.5 h-4 w-4 shrink-0 text-gray-400", strokeWidth: 1.5 }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "text-sm font-medium text-gray-900", children: highlightMatch(topic.title || "", searchQuery) }), topic.description && (_jsx("div", { className: "mt-0.5 text-xs text-gray-500 line-clamp-2", children: highlightMatch(topic.description, searchQuery) }))] })] }, topic.id))) }))] })] })) }), _jsx("div", { className: cn("h-full", activeTabType !== "manual" && "hidden"), children: _jsx(ManualBrowser, {}) })] })] }));
165
- }
166
- //# sourceMappingURL=HelpTerminal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HelpTerminal.js","sourceRoot":"","sources":["../../../src/editor/ai/HelpTerminal.tsx"],"names":[],"mappings":"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"}