@parhelia/core 0.4.12818 → 0.4.12825

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 (197) hide show
  1. package/dist/config/config.js +3 -0
  2. package/dist/config/config.js.map +1 -1
  3. package/dist/editor/ai/AgentStatusBadge.js +11 -9
  4. package/dist/editor/ai/AgentStatusBadge.js.map +1 -1
  5. package/dist/editor/ai/Agents.js +2 -2
  6. package/dist/editor/ai/Agents.js.map +1 -1
  7. package/dist/editor/ai/agentDiagnostics.d.ts +1 -1
  8. package/dist/editor/ai/agentDiagnostics.js +8 -0
  9. package/dist/editor/ai/agentDiagnostics.js.map +1 -1
  10. package/dist/editor/ai/terminal/agentSessionSnapshot.d.ts +15 -0
  11. package/dist/editor/ai/terminal/agentSessionSnapshot.js +103 -3
  12. package/dist/editor/ai/terminal/agentSessionSnapshot.js.map +1 -1
  13. package/dist/editor/ai/terminal/agentSessionState.js +5 -1
  14. package/dist/editor/ai/terminal/agentSessionState.js.map +1 -1
  15. package/dist/editor/ai/terminal/components/AgentActivityOverviewPanel.js +5 -5
  16. package/dist/editor/ai/terminal/components/AgentActivityOverviewPanel.js.map +1 -1
  17. package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js +1 -1
  18. package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js.map +1 -1
  19. package/dist/editor/ai/terminal/components/AgentSkillSettingsSection.js +2 -2
  20. package/dist/editor/ai/terminal/components/AgentSkillSettingsSection.js.map +1 -1
  21. package/dist/editor/ai/terminal/components/AiResponseMessage.js +8 -7
  22. package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
  23. package/dist/editor/ai/terminal/components/ContextInfoBar.js +1 -1
  24. package/dist/editor/ai/terminal/components/ContextInfoBar.js.map +1 -1
  25. package/dist/editor/ai/terminal/useAgentEditorContext.js +13 -3
  26. package/dist/editor/ai/terminal/useAgentEditorContext.js.map +1 -1
  27. package/dist/editor/ai/terminal/useAgentOperationHistoryLoader.js +5 -1
  28. package/dist/editor/ai/terminal/useAgentOperationHistoryLoader.js.map +1 -1
  29. package/dist/editor/ai/terminal/useAgentOperationSocketHandler.js +33 -1
  30. package/dist/editor/ai/terminal/useAgentOperationSocketHandler.js.map +1 -1
  31. package/dist/editor/ai/terminal/useAgentServerReconciler.js +11 -0
  32. package/dist/editor/ai/terminal/useAgentServerReconciler.js.map +1 -1
  33. package/dist/editor/ai/terminal/useAgentSubmitHandlers.d.ts +1 -0
  34. package/dist/editor/ai/terminal/useAgentSubmitHandlers.js +6 -2
  35. package/dist/editor/ai/terminal/useAgentSubmitHandlers.js.map +1 -1
  36. package/dist/editor/ai/terminal/useAgentTerminalController.js +4 -0
  37. package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
  38. package/dist/editor/bridge/protocol.d.ts +5 -0
  39. package/dist/editor/bridge/protocol.js.map +1 -1
  40. package/dist/editor/client/EditorShell.js +4 -3
  41. package/dist/editor/client/EditorShell.js.map +1 -1
  42. package/dist/editor/client/hooks/useSocketMessageHandler.js +3 -1
  43. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  44. package/dist/editor/client/operations.js +34 -2
  45. package/dist/editor/client/operations.js.map +1 -1
  46. package/dist/editor/commands/commands.d.ts +6 -0
  47. package/dist/editor/commands/commands.js.map +1 -1
  48. package/dist/editor/field-types/RichTextEditorComponent.js +10 -1
  49. package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
  50. package/dist/editor/field-types/richtext/components/ReactSlate.js +8 -2
  51. package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
  52. package/dist/editor/field-types/useFormFieldCaretPresence.js +1 -0
  53. package/dist/editor/field-types/useFormFieldCaretPresence.js.map +1 -1
  54. package/dist/editor/find-replace/FindReplacePanel.d.ts +11 -0
  55. package/dist/editor/find-replace/FindReplacePanel.js +311 -0
  56. package/dist/editor/find-replace/FindReplacePanel.js.map +1 -0
  57. package/dist/editor/find-replace/findReplaceCommand.d.ts +8 -0
  58. package/dist/editor/find-replace/findReplaceCommand.js +25 -0
  59. package/dist/editor/find-replace/findReplaceCommand.js.map +1 -0
  60. package/dist/editor/find-replace/findReplaceMatches.d.ts +42 -0
  61. package/dist/editor/find-replace/findReplaceMatches.js +66 -0
  62. package/dist/editor/find-replace/findReplaceMatches.js.map +1 -0
  63. package/dist/editor/find-replace/findReplaceStore.d.ts +30 -0
  64. package/dist/editor/find-replace/findReplaceStore.js +61 -0
  65. package/dist/editor/find-replace/findReplaceStore.js.map +1 -0
  66. package/dist/editor/find-replace/findReplaceTargets.d.ts +49 -0
  67. package/dist/editor/find-replace/findReplaceTargets.js +110 -0
  68. package/dist/editor/find-replace/findReplaceTargets.js.map +1 -0
  69. package/dist/editor/find-replace/findReplaceText.d.ts +50 -0
  70. package/dist/editor/find-replace/findReplaceText.js +189 -0
  71. package/dist/editor/find-replace/findReplaceText.js.map +1 -0
  72. package/dist/editor/menubar/ActiveUsers.js +1 -1
  73. package/dist/editor/menubar/ActiveUsers.js.map +1 -1
  74. package/dist/editor/menubar/ToolbarFactory.js +9 -1
  75. package/dist/editor/menubar/ToolbarFactory.js.map +1 -1
  76. package/dist/editor/menubar/VersionSelector.js +2 -2
  77. package/dist/editor/menubar/VersionSelector.js.map +1 -1
  78. package/dist/editor/menubar/toolbar-sections/FindReplaceControls.d.ts +6 -0
  79. package/dist/editor/menubar/toolbar-sections/FindReplaceControls.js +31 -0
  80. package/dist/editor/menubar/toolbar-sections/FindReplaceControls.js.map +1 -0
  81. package/dist/editor/menubar/toolbar-sections/index.d.ts +1 -0
  82. package/dist/editor/menubar/toolbar-sections/index.js +1 -0
  83. package/dist/editor/menubar/toolbar-sections/index.js.map +1 -1
  84. package/dist/editor/page-editor-chrome/FieldActionIndicator.js +8 -4
  85. package/dist/editor/page-editor-chrome/FieldActionIndicator.js.map +1 -1
  86. package/dist/editor/page-editor-chrome/FindReplaceHighlightings.d.ts +11 -0
  87. package/dist/editor/page-editor-chrome/FindReplaceHighlightings.js +117 -0
  88. package/dist/editor/page-editor-chrome/FindReplaceHighlightings.js.map +1 -0
  89. package/dist/editor/page-editor-chrome/PageEditorChrome.js +2 -1
  90. package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -1
  91. package/dist/editor/page-editor-chrome/SuggestionHighlightings.js +8 -1
  92. package/dist/editor/page-editor-chrome/SuggestionHighlightings.js.map +1 -1
  93. package/dist/editor/page-viewer/MiniMap.d.ts +6 -2
  94. package/dist/editor/page-viewer/MiniMap.js +139 -21
  95. package/dist/editor/page-viewer/MiniMap.js.map +1 -1
  96. package/dist/editor/page-viewer/PageViewerFrame.js +21 -5
  97. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  98. package/dist/editor/page-viewer/bridgeKeyboardShortcuts.d.ts +6 -0
  99. package/dist/editor/page-viewer/bridgeKeyboardShortcuts.js +19 -1
  100. package/dist/editor/page-viewer/bridgeKeyboardShortcuts.js.map +1 -1
  101. package/dist/editor/page-viewer/minimapViewport.d.ts +2 -0
  102. package/dist/editor/page-viewer/minimapViewport.js +31 -0
  103. package/dist/editor/page-viewer/minimapViewport.js.map +1 -0
  104. package/dist/editor/reviews/CommentEditor.js +34 -29
  105. package/dist/editor/reviews/CommentEditor.js.map +1 -1
  106. package/dist/editor/reviews/CommentImageAttachments.d.ts +12 -0
  107. package/dist/editor/reviews/CommentImageAttachments.js +19 -0
  108. package/dist/editor/reviews/CommentImageAttachments.js.map +1 -0
  109. package/dist/editor/reviews/SuggestionDisplayPopover.d.ts +3 -1
  110. package/dist/editor/reviews/SuggestionDisplayPopover.js +7 -2
  111. package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -1
  112. package/dist/editor/reviews/commentAgentAttachments.d.ts +5 -0
  113. package/dist/editor/reviews/commentAgentAttachments.js +51 -0
  114. package/dist/editor/reviews/commentAgentAttachments.js.map +1 -0
  115. package/dist/editor/reviews/commentAi.d.ts +4 -2
  116. package/dist/editor/reviews/commentAi.js +19 -12
  117. package/dist/editor/reviews/commentAi.js.map +1 -1
  118. package/dist/editor/reviews/useCommentImagePaste.d.ts +41 -14
  119. package/dist/editor/reviews/useCommentImagePaste.js +102 -63
  120. package/dist/editor/reviews/useCommentImagePaste.js.map +1 -1
  121. package/dist/editor/services/agentStatus.d.ts +1 -0
  122. package/dist/editor/services/agentStatus.js +14 -0
  123. package/dist/editor/services/agentStatus.js.map +1 -1
  124. package/dist/editor/settings/index/RecentBatchesList.js +2 -1
  125. package/dist/editor/settings/index/RecentBatchesList.js.map +1 -1
  126. package/dist/editor/sidebar/ComponentTree.js +6 -3
  127. package/dist/editor/sidebar/ComponentTree.js.map +1 -1
  128. package/dist/editor/sidebar/OperationItem.js +2 -1
  129. package/dist/editor/sidebar/OperationItem.js.map +1 -1
  130. package/dist/editor/sidebar/liveComponentThumbnails.d.ts +6 -2
  131. package/dist/editor/sidebar/liveComponentThumbnails.js +7 -2
  132. package/dist/editor/sidebar/liveComponentThumbnails.js.map +1 -1
  133. package/dist/editor/ui/ParheliaMark.d.ts +15 -0
  134. package/dist/editor/ui/ParheliaMark.js +12 -0
  135. package/dist/editor/ui/ParheliaMark.js.map +1 -0
  136. package/dist/editor/undoEligibility.d.ts +2 -0
  137. package/dist/editor/undoEligibility.js +8 -0
  138. package/dist/editor/undoEligibility.js.map +1 -0
  139. package/dist/editor/utils/keyboardNavigation.js +16 -0
  140. package/dist/editor/utils/keyboardNavigation.js.map +1 -1
  141. package/dist/index.d.ts +1 -0
  142. package/dist/index.js +1 -0
  143. package/dist/index.js.map +1 -1
  144. package/dist/lib/utils.d.ts +5 -0
  145. package/dist/lib/utils.js +7 -0
  146. package/dist/lib/utils.js.map +1 -1
  147. package/dist/revision.d.ts +2 -2
  148. package/dist/revision.js +2 -2
  149. package/dist/splash-screen/ModernSplashScreen.js +4 -3
  150. package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
  151. package/dist/splash-screen/RecentPages.js +3 -3
  152. package/dist/splash-screen/RecentPages.js.map +1 -1
  153. package/dist/task-board/TaskBoardWorkspace.js +179 -33
  154. package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
  155. package/dist/task-board/components/AttentionPromptDialog.d.ts +13 -0
  156. package/dist/task-board/components/AttentionPromptDialog.js +45 -0
  157. package/dist/task-board/components/AttentionPromptDialog.js.map +1 -0
  158. package/dist/task-board/components/GoalDataView.d.ts +22 -1
  159. package/dist/task-board/components/GoalDataView.js +63 -17
  160. package/dist/task-board/components/GoalDataView.js.map +1 -1
  161. package/dist/task-board/components/GoalFindingsTable.d.ts +43 -0
  162. package/dist/task-board/components/GoalFindingsTable.js +160 -0
  163. package/dist/task-board/components/GoalFindingsTable.js.map +1 -0
  164. package/dist/task-board/components/GoalsMatrix.js +33 -6
  165. package/dist/task-board/components/GoalsMatrix.js.map +1 -1
  166. package/dist/task-board/components/IssuePanel.d.ts +31 -0
  167. package/dist/task-board/components/IssuePanel.js +268 -0
  168. package/dist/task-board/components/IssuePanel.js.map +1 -0
  169. package/dist/task-board/components/ProjectGoalsPanel.js +66 -13
  170. package/dist/task-board/components/ProjectGoalsPanel.js.map +1 -1
  171. package/dist/task-board/components/SubgoalFindings.d.ts +40 -0
  172. package/dist/task-board/components/SubgoalFindings.js +88 -0
  173. package/dist/task-board/components/SubgoalFindings.js.map +1 -0
  174. package/dist/task-board/components/TaskAgentPanel.d.ts +2 -0
  175. package/dist/task-board/components/TaskAgentPanel.js +5 -4
  176. package/dist/task-board/components/TaskAgentPanel.js.map +1 -1
  177. package/dist/task-board/components/TaskDetailPanel.js +8 -12
  178. package/dist/task-board/components/TaskDetailPanel.js.map +1 -1
  179. package/dist/task-board/components/WizardCommunicationCenter.d.ts +2 -0
  180. package/dist/task-board/components/WizardCommunicationCenter.js +5 -3
  181. package/dist/task-board/components/WizardCommunicationCenter.js.map +1 -1
  182. package/dist/task-board/components/WizardCommunicationShared.js +2 -1
  183. package/dist/task-board/components/WizardCommunicationShared.js.map +1 -1
  184. package/dist/task-board/components/WizardTask.d.ts +2 -0
  185. package/dist/task-board/components/WizardTask.js +2 -2
  186. package/dist/task-board/components/WizardTask.js.map +1 -1
  187. package/dist/task-board/components/WizardTaskDetailsPanel.d.ts +4 -0
  188. package/dist/task-board/components/WizardTaskDetailsPanel.js +16 -3
  189. package/dist/task-board/components/WizardTaskDetailsPanel.js.map +1 -1
  190. package/dist/task-board/services/issueService.d.ts +193 -0
  191. package/dist/task-board/services/issueService.js +97 -0
  192. package/dist/task-board/services/issueService.js.map +1 -0
  193. package/dist/task-board/types.d.ts +24 -0
  194. package/dist/task-board/utils/projectDashboardModel.js +8 -0
  195. package/dist/task-board/utils/projectDashboardModel.js.map +1 -1
  196. package/package.json +1 -1
  197. package/styles.css +57 -3
@@ -1 +1 @@
1
- {"version":3,"file":"commentAi.js","sourceRoot":"","sources":["../../../src/editor/reviews/commentAi.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,SAAS,QAAQ,CAAC,IAAoB,EAAE,KAAqB;IAC3D,MAAM,SAAS,GAAG,CAAC,KAAqB,EAAE,EAAE,CAC1C,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACpD,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC3B,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,cAAc,CAAC,OAAoB,EAAE,MAAsB;IAClE,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,OAAO,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,6BAA6B,CAAC,OAAoB;IACzD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAI,OAAe,CAAC,UAAgC,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAEpC,IAAI,OAAO,CAAC,YAAY,IAAI,UAAU,EAAE,CAAC;QACvC,KAAK,CAAC,IAAI,CACR,SAAS,OAAO,CAAC,YAAY,IAAI,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACpF,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC;QACxD,KAAK,CAAC,IAAI,CACR,4BAA4B,OAAO,CAAC,QAAQ,IAAI,SAAS,KAAK,YAAY,GAAG,CAC9E,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CACR,UAAU,OAAO,CAAC,SAAS,IAAI,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5F,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,OAAoB;IAC3C,IACE,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;QACtC,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QACpC,OAAO,CAAC,UAAU,EAClB,CAAC;QACD,IAAI,CAAC;YACH,OAAO,OAAO,CAAC,UAAU,CAAC,SAAS,CACjC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,EAC/B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAC/C,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,OAAoB;IAC1C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IACvD,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAwB,EACxB,cAAsC;IAEtC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7E,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,WAAW,CAAC,CAAC;IAElE,MAAM,eAAe,GAAG,CAAC,OAAoB,EAAE,EAAE;QAC/C,IAAI,OAAO,GAA4B,OAAO,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,OAAO,OAAO,EAAE,CAAC;YACf,IAAI,OAAO,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,eAAe;gBAAE,OAAO,KAAK,CAAC;YAC3C,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YACvC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACrB,IAAI,OAAO,CAAC,eAAe,KAAK,WAAW,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzB,OAAO,GAAG,MAAM,CAAC;QACnB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,cAAc;SAC3B,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC;SAClD,MAAM,CAAC,eAAe,CAAC;SACvB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAE,EAAE,GAAG,OAAO,CAAC,CAAC;AACjD,CAAC;AAYD,MAAM,UAAU,yBAAyB,CACvC,aAAqC,EACrC,mBAA4C;IAE5C,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACrC,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,iBAAiB,EAAE,qBAAqB,CACtC,OAAO,EACP,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CACnE;QACD,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,eAAe,EAAE,OAAO,CAAC,eAAe;KACzC,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,WAAwB,EACxB,aAAqC,EACrC,mBAA4C;IAE5C,MAAM,WAAW,GAAG,6BAA6B,CAAC,WAAW,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAClD,IAAI,YAAY;QAAE,WAAW,CAAC,IAAI,CAAC,mBAAmB,YAAY,GAAG,CAAC,CAAC;IAEvE,MAAM,OAAO,GAAG,yBAAyB,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAC5D,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACzC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,MAAM,IAAI,GACR,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACzC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,CAAC,GAAG;YAC7B,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,OAAO,GACX,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,KAAK,WAAW,CAAC,EAAE;YAC/D,CAAC,CAAC,iBAAiB,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,oBAAoB,GAAG;YACjF,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,WAAW,CAAC;QACtD,OAAO,GAAG,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,iBAAiB,GAAG,IAAI,GAAG,OAAO,KAAK,IAAI,EAAE,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAC7B,OAAO;QACL,iDAAiD;QACjD,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,EAAE;QACF,iBAAiB,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,kBAAkB;QAChF,GAAG,KAAK;QACR,EAAE;QACF,0OAA0O,WAAW,CAAC,EAAE,0BAA0B;KACnR,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,WAAwB,EACxB,cAAsC,EACtC,WAA6B,EAC7B,mBAA4C;IAE5C,IAAI,CAAC,WAAW;QAAE,OAAO;IAEzB,MAAM,cAAc,GAAG,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CACtE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,cAAc,CAC3C,CAAC;IACF,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IAED,6BAA6B;IAC7B,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC;QAChC,WAAW,CAAC,SAAS,EAAE,CACrB,+DAA+D,CAChE,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC;IAC5B,MAAM,aAAa,GAAG,kBAAkB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,wBAAwB,CAC5C,OAAO,EACP,aAAa,EACb,mBAAmB,CACpB,CAAC;IAEF,IAAI,CAAC;QACH,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;YACzB,WAAW,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,UAAU,GACb,OAAe,CAAC,UAAU,IAAI,WAAW,CAAC,qBAAqB,EAAE,EAAE,CAAC;QACvE,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC5D,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAClE,MAAM,QAAQ,GACZ,UAAU,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO;YAC/C,CAAC,CAAC;gBACE,EAAE,EAAE,UAAU;gBACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,IAAI,EACF,OAAO,CAAC,YAAY;oBACpB,eAAe,EAAE,QAAQ;oBACzB,WAAW,CAAC,IAAI,EAAE,IAAI;gBACxB,IAAI,EAAE,eAAe,EAAE,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI;aAC1D;YACH,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,IAAI,GAAG,CACL;YACE,GAAG,WAAW,CAAC,YAAY,EAAE;YAC7B,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC;gBACrD,CAAC,CAAC,OAAO,CAAC,MAAM;gBAChB,CAAC,CAAC,SAAS;SACd,CAAC,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACrC,CACF,CAAC;QAEF,MAAM,UAAU,GAAG,YAAY;aAC5B,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;YACnB,IAAI,SAAc,CAAC;YACnB,IAAI,CAAC;gBACH,SAAS,GAAG,WAAW,CAAC,IAAI;oBAC1B,CAAC,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;oBACjD,CAAC,CAAC,SAAS,CAAC;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS,GAAG,SAAS,CAAC;YACxB,CAAC;YAED,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,OAAO;gBACL,WAAW;gBACX,aAAa,EACX,SAAS,EAAE,cAAc,EAAE,IAAI;oBAC/B,SAAS,EAAE,IAAI;oBACf,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;wBACpC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,iBAAiB,EAAE,QAAQ;wBACjD,CAAC,CAAC,SAAS,CAAC;gBAChB,aAAa,EAAE,SAAS,EAAE,IAAI,IAAI,SAAS;gBAC3C,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,IAAI,SAAS;gBACtD,QAAQ,EAAE,QAAS;aACpB,CAAC;QACJ,CAAC,CAAC;aACD,MAAM,CACL,CAAC,SAAS,EAA8C,EAAE,CACxD,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CACtC,CAAC;QAEJ,MAAM,KAAK,GACT,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM;YAC/B,CAAC,CAAC;gBACE,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,IAAI,EAAE;oBACJ,EAAE,EAAE,OAAO,CAAC,MAAM;oBAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,IAAI,EAAE,OAAO,CAAC,QAAQ,IAAI,iBAAiB,EAAE,QAAQ;oBACrD,IAAI,EAAE,iBAAiB,EAAE,QAAQ;iBAClC;aACF;YACH,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,eAAe,GAAkB;YACrC,KAAK,EAAE;gBACL;oBACE,EAAE,EAAE,UAAW;oBACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,IAAI,EACF,OAAO,CAAC,YAAY;wBACpB,eAAe,EAAE,QAAQ;wBACzB,WAAW,CAAC,IAAI,EAAE,IAAI;oBACxB,IAAI,EAAE,eAAe,EAAE,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI;iBAC1D;aACF;YACD,aAAa,EAAE,UAAU;YACzB,UAAU,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC1D,KAAK;YACL,OAAO,EAAE;gBACP,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,YAAY,EAAE,YAAY;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,yBAAyB,CAAC,aAAa,EAAE,mBAAmB,CAAC;aACtE;YACD,cAAc,EAAE;gBACd,aAAa;gBACb,SAAS,EACP,WAAW,CAAC,gBAAgB,EAAE,uBAAuB,IAAI,SAAS;gBACpE,WAAW,EACT,WAAW,CAAC,gBAAgB,EAAE,yBAAyB,IAAI,SAAS;aACvE;SACF,CAAC;QAEF,iEAAiE;QACjE,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC;gBACH,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAAC,oBAAoB,EAAE;oBACpC,MAAM,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;iBAC/B,CAAC,CACV,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC,CAAC;QAEF,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;YACzB,wEAAwE;YACxE,8CAA8C;YAC9C,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,aAAa,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,CAAC,CAAC,CAAC;QAC9D,WAAW,CAAC,SAAS,EAAE,CAAC,iDAAiD,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"commentAi.js","sourceRoot":"","sources":["../../../src/editor/reviews/commentAi.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,25 @@
1
1
  import React from "react";
2
2
  import { type CommentImageScope } from "./commentImages";
3
+ export type CommentImageAttachmentStatus = "uploading" | "done" | "error";
4
+ export interface CommentImageAttachment {
5
+ /** Local key; stable across upload and removal. */
6
+ key: string;
7
+ /** Server image id once uploaded. */
8
+ imageId?: string;
9
+ /** Object URL of the pasted file, or the served image URL for existing images. */
10
+ previewUrl: string;
11
+ fileName: string;
12
+ status: CommentImageAttachmentStatus;
13
+ error?: string;
14
+ }
3
15
  export interface UseCommentImagePasteOptions {
4
16
  scope: CommentImageScope;
5
17
  /** Main item id (review comments) or task id (task comments) the composer targets. */
6
18
  scopeId?: string | null;
7
19
  /** Item language for review comments; lets reviewers without Sitecore read access upload. */
8
20
  scopeLanguage?: string | null;
9
- textareaRef: React.RefObject<HTMLTextAreaElement | null>;
10
- value: string;
11
- onValueChange: (value: string) => void;
21
+ /** Comment text being edited; image references in it become attachments. */
22
+ initialText?: string;
12
23
  disabled?: boolean;
13
24
  }
14
25
  export interface CommentImagePasteState {
@@ -22,24 +33,40 @@ export interface CommentImagePasteState {
22
33
  onDragOver: (event: React.DragEvent<HTMLTextAreaElement>) => void;
23
34
  /** Attach to the composer textarea (`onDrop`). Handles dropped image files. */
24
35
  onDrop: (event: React.DragEvent<HTMLTextAreaElement>) => void;
36
+ /** Thumbnails to show above the textarea, in paste order. */
37
+ attachments: CommentImageAttachment[];
38
+ removeAttachment: (key: string) => void;
39
+ /** Drops every attachment, e.g. after the comment was posted or cancelled. */
40
+ clearAttachments: () => void;
41
+ /** True while at least one attachment is still uploading. */
25
42
  uploading: boolean;
26
- error: string | null;
27
- clearError: () => void;
43
+ /** Uploaded images that will be part of the comment. */
44
+ readyCount: number;
28
45
  /**
29
46
  * Resolves once no upload is pending for the current target, so a submit
30
- * triggered mid-upload can wait for the image reference to be inserted.
47
+ * triggered mid-upload can wait for the image references.
31
48
  */
32
49
  waitForUploads: () => Promise<void>;
33
- /** The latest composer value, including references inserted after a submit started waiting. */
34
- getValue: () => string;
50
+ /** The text to save: the typed text plus one reference line per uploaded image. */
51
+ buildSubmitText: (text: string) => string;
35
52
  }
36
53
  /**
37
- * Lets a comment composer accept pasted (or dropped) screenshots. Each image is
38
- * uploaded, then referenced in the textarea value as a markdown image on its own
39
- * line at the caret position. The textarea stays a plain `<textarea>`.
54
+ * Splits the text of a comment being edited into the plain text and the
55
+ * attachments for the images it references. Order of the images is kept;
56
+ * on save they are appended after the text again.
57
+ */
58
+ export declare function splitInitialCommentText(initialText: string | undefined): {
59
+ text: string;
60
+ attachments: CommentImageAttachment[];
61
+ };
62
+ /**
63
+ * Lets a comment composer accept pasted (or dropped) screenshots. Each image
64
+ * shows up as a thumbnail above the textarea while it uploads; the composer
65
+ * keeps typing text only, and `buildSubmitText` appends one markdown
66
+ * reference line per uploaded image when the comment is saved.
40
67
  *
41
68
  * Uploads are bound to the composer target: when `scope`/`scopeId` change while
42
- * an upload is in flight (e.g. the task panel switches tasks), the result is
43
- * discarded instead of being inserted into the new target's composer.
69
+ * an upload is in flight (e.g. the task panel switches tasks), the attachments
70
+ * are dropped instead of ending up on the new target's comment.
44
71
  */
45
- export declare function useCommentImagePaste({ scope, scopeId, scopeLanguage, textareaRef, value, onValueChange, disabled, }: UseCommentImagePasteOptions): CommentImagePasteState;
72
+ export declare function useCommentImagePaste({ scope, scopeId, scopeLanguage, initialText, disabled, }: UseCommentImagePasteOptions): CommentImagePasteState;
@@ -1,103 +1,132 @@
1
1
  import React from "react";
2
- import { buildCommentImageMarkdown, getImageFilesFromDataTransfer, insertCommentImageMarkdown, uploadCommentImage, } from "./commentImages";
2
+ import { buildCommentImageMarkdown, getImageFilesFromDataTransfer, splitCommentImages, uploadCommentImage, } from "./commentImages";
3
3
  /**
4
- * Lets a comment composer accept pasted (or dropped) screenshots. Each image is
5
- * uploaded, then referenced in the textarea value as a markdown image on its own
6
- * line at the caret position. The textarea stays a plain `<textarea>`.
4
+ * Splits the text of a comment being edited into the plain text and the
5
+ * attachments for the images it references. Order of the images is kept;
6
+ * on save they are appended after the text again.
7
+ */
8
+ export function splitInitialCommentText(initialText) {
9
+ if (!initialText)
10
+ return { text: "", attachments: [] };
11
+ const attachments = [];
12
+ const textParts = [];
13
+ for (const segment of splitCommentImages(initialText)) {
14
+ if (segment.type === "image") {
15
+ attachments.push({
16
+ key: `existing-${segment.imageId}`,
17
+ imageId: segment.imageId,
18
+ previewUrl: segment.src,
19
+ fileName: `${segment.alt}.png`,
20
+ status: "done",
21
+ });
22
+ }
23
+ else {
24
+ textParts.push(segment.value);
25
+ }
26
+ }
27
+ return { text: textParts.join("\n").trim(), attachments };
28
+ }
29
+ let attachmentSequence = 0;
30
+ /**
31
+ * Lets a comment composer accept pasted (or dropped) screenshots. Each image
32
+ * shows up as a thumbnail above the textarea while it uploads; the composer
33
+ * keeps typing text only, and `buildSubmitText` appends one markdown
34
+ * reference line per uploaded image when the comment is saved.
7
35
  *
8
36
  * Uploads are bound to the composer target: when `scope`/`scopeId` change while
9
- * an upload is in flight (e.g. the task panel switches tasks), the result is
10
- * discarded instead of being inserted into the new target's composer.
37
+ * an upload is in flight (e.g. the task panel switches tasks), the attachments
38
+ * are dropped instead of ending up on the new target's comment.
11
39
  */
12
- export function useCommentImagePaste({ scope, scopeId, scopeLanguage, textareaRef, value, onValueChange, disabled = false, }) {
13
- const [pendingCount, setPendingCount] = React.useState(0);
14
- const [error, setError] = React.useState(null);
15
- const pendingCountRef = React.useRef(0);
40
+ export function useCommentImagePaste({ scope, scopeId, scopeLanguage, initialText, disabled = false, }) {
41
+ const [attachments, setAttachments] = React.useState(() => splitInitialCommentText(initialText).attachments);
42
+ const attachmentsRef = React.useRef(attachments);
43
+ attachmentsRef.current = attachments;
16
44
  const waitersRef = React.useRef([]);
17
- // Latest composer value: follows the prop whenever the parent changes it, but
18
- // keeps an inserted reference across re-renders where the prop did not move.
19
- const valueRef = React.useRef(value);
20
- const lastPropValueRef = React.useRef(value);
21
- if (lastPropValueRef.current !== value) {
22
- lastPropValueRef.current = value;
23
- valueRef.current = value;
24
- }
25
45
  const mountedRef = React.useRef(true);
26
46
  // Every target change starts a new generation; uploads remember the generation
27
47
  // they started in and become no-ops once it moves on.
28
48
  const targetKey = `${scope}:${scopeId ?? ""}`;
29
49
  const targetKeyRef = React.useRef(targetKey);
30
50
  const generationRef = React.useRef(0);
51
+ const pendingCount = React.useMemo(() => attachments.filter((a) => a.status === "uploading").length, [attachments]);
52
+ const readyCount = React.useMemo(() => attachments.filter((a) => a.status === "done" && a.imageId).length, [attachments]);
31
53
  const resolveWaiters = React.useCallback(() => {
32
54
  const waiters = waitersRef.current;
33
55
  waitersRef.current = [];
34
56
  waiters.forEach((resolve) => resolve());
35
57
  }, []);
36
- const setPending = React.useCallback((next) => {
37
- pendingCountRef.current = Math.max(0, next);
38
- setPendingCount(pendingCountRef.current);
39
- if (pendingCountRef.current === 0)
58
+ React.useEffect(() => {
59
+ if (pendingCount === 0)
40
60
  resolveWaiters();
41
- }, [resolveWaiters]);
61
+ }, [pendingCount, resolveWaiters]);
62
+ const revokePreview = (attachment) => {
63
+ if (attachment.previewUrl.startsWith("blob:")) {
64
+ URL.revokeObjectURL(attachment.previewUrl);
65
+ }
66
+ };
42
67
  React.useEffect(() => {
43
68
  mountedRef.current = true;
44
69
  return () => {
45
70
  mountedRef.current = false;
46
71
  generationRef.current += 1;
72
+ attachmentsRef.current.forEach(revokePreview);
47
73
  resolveWaiters();
48
74
  };
49
75
  }, [resolveWaiters]);
76
+ const clearAttachments = React.useCallback(() => {
77
+ generationRef.current += 1;
78
+ attachmentsRef.current.forEach(revokePreview);
79
+ setAttachments([]);
80
+ resolveWaiters();
81
+ }, [resolveWaiters]);
50
82
  React.useEffect(() => {
51
83
  if (targetKeyRef.current === targetKey)
52
84
  return;
53
85
  targetKeyRef.current = targetKey;
54
- generationRef.current += 1;
55
- setError(null);
56
- setPending(0);
57
- }, [setPending, targetKey]);
58
- const insertMarkdown = React.useCallback((markdown) => {
59
- const textarea = textareaRef.current;
60
- // The textarea's own value/selection is the freshest source while the
61
- // user keeps typing during the upload; fall back to the last known value.
62
- const currentValue = textarea?.value ?? valueRef.current;
63
- const selectionStart = textarea?.selectionStart ?? currentValue.length;
64
- const selectionEnd = textarea?.selectionEnd ?? selectionStart;
65
- const next = insertCommentImageMarkdown(currentValue, selectionStart, selectionEnd, markdown);
66
- valueRef.current = next.value;
67
- onValueChange(next.value);
68
- window.requestAnimationFrame(() => {
69
- const node = textareaRef.current;
70
- if (!node)
71
- return;
72
- node.focus();
73
- node.setSelectionRange(next.cursor, next.cursor);
74
- });
75
- }, [onValueChange, textareaRef]);
86
+ clearAttachments();
87
+ }, [clearAttachments, targetKey]);
88
+ const updateAttachment = React.useCallback((key, patch) => {
89
+ setAttachments((current) => current.map((a) => (a.key === key ? { ...a, ...patch } : a)));
90
+ }, []);
76
91
  const uploadFiles = React.useCallback(async (files) => {
77
92
  const generation = generationRef.current;
78
93
  const isStale = () => !mountedRef.current || generation !== generationRef.current;
79
- setError(null);
80
- setPending(pendingCountRef.current + files.length);
81
- for (const file of files) {
94
+ const created = files.map((file) => ({
95
+ key: `pasted-${Date.now()}-${attachmentSequence++}`,
96
+ previewUrl: URL.createObjectURL(file),
97
+ fileName: file.name,
98
+ status: "uploading",
99
+ }));
100
+ setAttachments((current) => [...current, ...created]);
101
+ for (let index = 0; index < files.length; index++) {
102
+ const file = files[index];
103
+ const key = created[index].key;
82
104
  try {
83
105
  const uploaded = await uploadCommentImage(file, scope, scopeId, scopeLanguage);
84
106
  if (isStale())
85
107
  return;
86
- insertMarkdown(buildCommentImageMarkdown(uploaded.imageId));
108
+ updateAttachment(key, { imageId: uploaded.imageId, status: "done" });
87
109
  }
88
110
  catch (err) {
89
111
  if (isStale())
90
112
  return;
91
- setError(err instanceof Error && err.message
92
- ? err.message
93
- : "Image upload failed");
94
- }
95
- finally {
96
- if (!isStale())
97
- setPending(pendingCountRef.current - 1);
113
+ updateAttachment(key, {
114
+ status: "error",
115
+ error: err instanceof Error && err.message
116
+ ? err.message
117
+ : "Image upload failed",
118
+ });
98
119
  }
99
120
  }
100
- }, [insertMarkdown, scope, scopeId, scopeLanguage, setPending]);
121
+ }, [scope, scopeId, scopeLanguage, updateAttachment]);
122
+ const removeAttachment = React.useCallback((key) => {
123
+ setAttachments((current) => {
124
+ const target = current.find((a) => a.key === key);
125
+ if (target)
126
+ revokePreview(target);
127
+ return current.filter((a) => a.key !== key);
128
+ });
129
+ }, []);
101
130
  const onPaste = React.useCallback((event) => {
102
131
  if (disabled)
103
132
  return;
@@ -126,24 +155,34 @@ export function useCommentImagePaste({ scope, scopeId, scopeLanguage, textareaRe
126
155
  event.preventDefault();
127
156
  void uploadFiles(files);
128
157
  }, [disabled, uploadFiles]);
129
- const clearError = React.useCallback(() => setError(null), []);
130
158
  const waitForUploads = React.useCallback(() => new Promise((resolve) => {
131
- if (pendingCountRef.current === 0) {
159
+ const pending = attachmentsRef.current.some((a) => a.status === "uploading");
160
+ if (!pending) {
132
161
  resolve();
133
162
  return;
134
163
  }
135
164
  waitersRef.current.push(resolve);
136
165
  }), []);
137
- const getValue = React.useCallback(() => valueRef.current, []);
166
+ const buildSubmitText = React.useCallback((text) => {
167
+ const references = attachmentsRef.current
168
+ .filter((a) => a.status === "done" && a.imageId)
169
+ .map((a) => buildCommentImageMarkdown(a.imageId));
170
+ const body = text.trim();
171
+ if (references.length === 0)
172
+ return body;
173
+ return body ? `${body}\n${references.join("\n")}` : references.join("\n");
174
+ }, []);
138
175
  return {
139
176
  onPaste,
140
177
  onDragOver,
141
178
  onDrop,
179
+ attachments,
180
+ removeAttachment,
181
+ clearAttachments,
142
182
  uploading: pendingCount > 0,
143
- error,
144
- clearError,
183
+ readyCount,
145
184
  waitForUploads,
146
- getValue,
185
+ buildSubmitText,
147
186
  };
148
187
  }
149
188
  //# sourceMappingURL=useCommentImagePaste.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCommentImagePaste.js","sourceRoot":"","sources":["../../../src/editor/reviews/useCommentImagePaste.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useCommentImagePaste.js","sourceRoot":"","sources":["../../../src/editor/reviews/useCommentImagePaste.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export declare const AGENT_STATUSES: readonly ["new", "running", "waitingForAppr
2
2
  export type AgentStatus = (typeof AGENT_STATUSES)[number];
3
3
  export declare const TRANSIENT_AGENT_RUN_STATES: Set<string>;
4
4
  export declare function isAgentStatus(value: unknown): value is AgentStatus;
5
+ export declare function getAgentStatusLabel(status: AgentStatus): string;
5
6
  export declare function parseAgentStatus(value: unknown): AgentStatus | undefined;
6
7
  export declare function parseAgentRunStatusData(data: unknown): AgentStatus | undefined;
7
8
  export declare function isTransientAgentRunState(value: unknown): boolean;
@@ -9,6 +9,17 @@ export const AGENT_STATUSES = [
9
9
  "idle",
10
10
  "costLimitReached",
11
11
  ];
12
+ const AGENT_STATUS_LABELS = {
13
+ new: "New",
14
+ running: "Running",
15
+ waitingForApproval: "Waiting for approval",
16
+ waitingForInput: "Waiting for input",
17
+ completed: "Completed",
18
+ closed: "Closed",
19
+ error: "Error",
20
+ idle: "Idle",
21
+ costLimitReached: "Cost limit reached",
22
+ };
12
23
  const AGENT_STATUS_SET = new Set(AGENT_STATUSES);
13
24
  export const TRANSIENT_AGENT_RUN_STATES = new Set([
14
25
  "toolApprovalGranted",
@@ -23,6 +34,9 @@ export const TRANSIENT_AGENT_RUN_STATES = new Set([
23
34
  export function isAgentStatus(value) {
24
35
  return typeof value === "string" && AGENT_STATUS_SET.has(value);
25
36
  }
37
+ export function getAgentStatusLabel(status) {
38
+ return AGENT_STATUS_LABELS[status];
39
+ }
26
40
  export function parseAgentStatus(value) {
27
41
  if (isAgentStatus(value)) {
28
42
  return value;
@@ -1 +1 @@
1
- {"version":3,"file":"agentStatus.js","sourceRoot":"","sources":["../../../src/editor/services/agentStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentStatus.js","sourceRoot":"","sources":["../../../src/editor/services/agentStatus.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { Layers } from "lucide-react";
3
3
  import { SettingsCard as Card } from "../SettingsCard";
4
4
  import { formatDateOnly } from "../../utils";
5
5
  import { getBatchStatusIcon, getBatchStatusLabelStyles } from "./utils";
6
+ import { capitalizeFirstLetter } from "../../../lib/utils";
6
7
  /**
7
8
  * Displays a list of recent embedding batches
8
9
  */
@@ -10,7 +11,7 @@ export function RecentBatchesList({ batches }) {
10
11
  if (!batches || batches.length === 0) {
11
12
  return null;
12
13
  }
13
- return (_jsx(Card, { icon: _jsx(Layers, { strokeWidth: 1, className: "h-5 w-5" }), title: "Recent batches", description: "The most recent embedding batch runs and their results.", children: _jsx("div", { className: "space-y-2 overflow-y-auto", children: batches.map((batch) => (_jsxs("div", { className: "bg-neutral-grey-5 rounded p-2 text-sm", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsxs("div", { className: "flex flex-1 flex-wrap items-center gap-2", children: [getBatchStatusIcon(batch.status), _jsx("span", { className: `badge-pad-sm rounded text-xs font-medium ${getBatchStatusLabelStyles(batch.status)}`, children: batch.status ?? "Unknown" }), _jsx("span", { className: "font-mono text-xs", children: batch.id?.slice(-8) ?? "Unknown" })] }), _jsxs("div", { className: "shrink-0 text-right", children: [_jsxs("div", { className: "text-neutral-grey-50", children: [batch.numberOfItems ?? 0, " items"] }), _jsx("div", { className: "text-neutral-grey-50 text-xs", children: batch.created
14
+ return (_jsx(Card, { icon: _jsx(Layers, { strokeWidth: 1, className: "h-5 w-5" }), title: "Recent batches", description: "The most recent embedding batch runs and their results.", children: _jsx("div", { className: "space-y-2 overflow-y-auto", children: batches.map((batch) => (_jsxs("div", { className: "bg-neutral-grey-5 rounded p-2 text-sm", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsxs("div", { className: "flex flex-1 flex-wrap items-center gap-2", children: [getBatchStatusIcon(batch.status), _jsx("span", { className: `badge-pad-sm rounded text-xs font-medium ${getBatchStatusLabelStyles(batch.status)}`, children: capitalizeFirstLetter(batch.status ?? "Unknown") }), _jsx("span", { className: "font-mono text-xs", children: batch.id?.slice(-8) ?? "Unknown" })] }), _jsxs("div", { className: "shrink-0 text-right", children: [_jsxs("div", { className: "text-neutral-grey-50", children: [batch.numberOfItems ?? 0, " items"] }), _jsx("div", { className: "text-neutral-grey-50 text-xs", children: batch.created
14
15
  ? formatDateOnly(new Date(batch.created))
15
16
  : "Unknown" })] })] }), ((batch.firstErrors && batch.firstErrors.length > 0) ||
16
17
  batch.errorMessage) && (_jsx("div", { className: "text-feedback-red mt-1 text-xs", children: (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"RecentBatchesList.js","sourceRoot":"","sources":["../../../../src/editor/settings/index/RecentBatchesList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAGxE;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAE,OAAO,EAA0B;IACnE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,KAAC,IAAI,IACH,IAAI,EAAE,KAAC,MAAM,IAAC,WAAW,EAAE,CAAC,EAAE,SAAS,EAAC,SAAS,GAAG,EACpD,KAAK,EAAC,gBAAgB,EACtB,WAAW,EAAC,yDAAyD,YAErE,cAAK,SAAS,EAAC,2BAA2B,YACvC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACtB,eAAoB,SAAS,EAAC,uCAAuC,aACnE,eAAK,SAAS,EAAC,mCAAmC,aAChD,eAAK,SAAS,EAAC,0CAA0C,aACtD,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,EACjC,eACE,SAAS,EAAE,4CAA4C,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,YAE/F,KAAK,CAAC,MAAM,IAAI,SAAS,GACrB,EACP,eAAM,SAAS,EAAC,mBAAmB,YAChC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,GAC5B,IACH,EACN,eAAK,SAAS,EAAC,qBAAqB,aAClC,eAAK,SAAS,EAAC,sBAAsB,aAClC,KAAK,CAAC,aAAa,IAAI,CAAC,cACrB,EACN,cAAK,SAAS,EAAC,8BAA8B,YAC1C,KAAK,CAAC,OAAO;4CACZ,CAAC,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;4CACzC,CAAC,CAAC,SAAS,GACT,IACF,IACF,EACL,CAAC,CAAC,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;wBACnD,KAAK,CAAC,YAAY,CAAC,IAAI,CACvB,cAAK,SAAS,EAAC,gCAAgC,YAC5C,CAAC,GAAG,EAAE;4BACL,MAAM,QAAQ,GACZ,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;gCAC/C,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;gCAC/B,CAAC,CAAC,KAAK,CAAC,YAAY;oCAClB,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;oCACtB,CAAC,CAAC,EAAE,CAAC;4BACX,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;4BACnC,MAAM,UAAU,GACd,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC;gCACtC,CAAC,CAAC,KAAK,CAAC,UAAU;gCAClB,CAAC,CAAC,UAAU,CAAC;4BACjB,MAAM,MAAM,GACV,UAAU,GAAG,UAAU;gCACrB,CAAC,CAAC,MAAM,UAAU,GAAG,UAAU,QAAQ;gCACvC,CAAC,CAAC,EAAE,CAAC;4BACT,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC;wBAC5C,CAAC,CAAC,EAAE,GACA,CACP,KA9CO,KAAK,CAAC,EAAE,CA+CZ,CACP,CAAC,GACE,GACD,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"RecentBatchesList.js","sourceRoot":"","sources":["../../../../src/editor/settings/index/RecentBatchesList.tsx"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ import { Plus, LayoutTemplate, Pentagon, Folder, Square, ChevronRight, Circle, F
14
14
  import { SimpleIconButton, SimpleIconButtonStyleProvider, } from "../ui/SimpleIconButton";
15
15
  import { Spinner } from "../ui/Spinner";
16
16
  import { useComponentVisualMode } from "../componentVisualMode";
17
- import { findThumbnailRect, getThumbnailBackgroundStyle, useLiveComponentThumbnails, } from "./liveComponentThumbnails";
17
+ import { LIVE_THUMBNAIL_BOX, findThumbnailRect, getThumbnailBackgroundStyle, useLiveComponentThumbnails, } from "./liveComponentThumbnails";
18
18
  import { SearchInput } from "../../components/SearchInput";
19
19
  import { Tooltip, TooltipContent, TooltipTrigger, } from "../../components/ui/tooltip";
20
20
  import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/popover";
@@ -1051,7 +1051,10 @@ export function ComponentTree({ pageViewContext, itemDescriptor, item, isLoading
1051
1051
  editContext.readonly ||
1052
1052
  editContext.mode !== "edit", onClick: toggleInsertMode, children: _jsx("span", { className: "min-w-0 truncate", children: "Add component" }) }) }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsx(SimpleIconButton, { icon: _jsx(ImageIcon, { strokeWidth: 1, className: "h-5 w-5" }), label: showThumbnails ? "Hide thumbnails" : "Show thumbnails", size: "small", className: "h-[30px] w-[30px]", selected: showThumbnails, "data-testid": "component-tree-toggle-thumbnails", onClick: () => setVisualMode(showThumbnails ? "icon" : "thumbnail") }), _jsx(SimpleIconButton, { icon: _jsx(LayoutTemplate, { strokeWidth: 1, className: "h-5 w-5" }), label: editContext?.showLayoutComponents
1053
1053
  ? "Hide layout"
1054
- : "Show layout", size: "small", className: "h-[30px] w-[30px]", selected: editContext?.showLayoutComponents, "data-testid": "component-tree-toggle-layout", onClick: () => editContext?.setShowLayoutComponents(!editContext.showLayoutComponents) })] })] }) }), _jsx("div", { className: "border-border-default border-b p-2", "data-testid": "component-tree-search", children: _jsx(SearchInput, { value: filter, onChange: setFilter, className: "w-full", placeholder: "Search IDs, names, types..." }) }), _jsx("div", { className: "min-h-0 flex-1 overflow-auto overflow-x-hidden p-2", ref: treeRef, "data-testid": "component-tree", children: isFiltering && visibleRootNodes.length === 0 ? (_jsxs("div", { className: "text-neutral-grey-50 flex h-full items-center justify-center px-4 text-center text-xs", children: ["No components match \"", filter.trim(), "\"."] })) : (_jsx(PerfectTree, { nodes: visibleRootNodes, isDragging: !isFiltering && !!editContext?.dragObject, multiDragNoun: "components", selectedKeys: selectedItems, expandedKeys: expandedItems, onToggleExpand: isFiltering ? undefined : handleToggle, onSelect: handleTreeSelection, onContextMenu: handleTreeContextMenu, enableDragAndDrop: !isFiltering, onDragOverZone: handleDragOverZone, isValidDropZone: handleIsValidDropZone, onStartDrag: handleStartDrag, onDragEnd: handleDragEnd, onDrop: handleDropZone, onNodeMouseMove: handleNodeInsertTargetHover, onNodeMouseLeave: handleNodeInsertTargetLeave, renderNodePrefix: (node) => {
1054
+ : "Show layout", size: "small", className: "h-[30px] w-[30px]", selected: editContext?.showLayoutComponents, "data-testid": "component-tree-toggle-layout", onClick: () => editContext?.setShowLayoutComponents(!editContext.showLayoutComponents) })] })] }) }), _jsx("div", { className: "border-border-default border-b p-2", "data-testid": "component-tree-search", children: _jsx(SearchInput, { value: filter, onChange: setFilter, className: "w-full", placeholder: "Search IDs, names, types..." }) }), _jsx("div", {
1055
+ // Center 32px reorder targets in the 8px card gaps so they overlap
1056
+ // both neighboring cards and remain easy to hit while dragging.
1057
+ className: "min-h-0 flex-1 overflow-auto overflow-x-hidden p-2 [&_.drop-zone]:-top-1 [&_.drop-zone]:h-8", ref: treeRef, "data-testid": "component-tree", children: isFiltering && visibleRootNodes.length === 0 ? (_jsxs("div", { className: "text-neutral-grey-50 flex h-full items-center justify-center px-4 text-center text-xs", children: ["No components match \"", filter.trim(), "\"."] })) : (_jsx(PerfectTree, { nodes: visibleRootNodes, isDragging: !isFiltering && !!editContext?.dragObject, multiDragNoun: "components", selectedKeys: selectedItems, expandedKeys: expandedItems, onToggleExpand: isFiltering ? undefined : handleToggle, onSelect: handleTreeSelection, onContextMenu: handleTreeContextMenu, enableDragAndDrop: !isFiltering, onDragOverZone: handleDragOverZone, isValidDropZone: handleIsValidDropZone, onStartDrag: handleStartDrag, onDragEnd: handleDragEnd, onDrop: handleDropZone, onNodeMouseMove: handleNodeInsertTargetHover, onNodeMouseLeave: handleNodeInsertTargetLeave, renderNodePrefix: (node) => {
1055
1058
  const treeNode = node;
1056
1059
  if (treeNode.type !== "component")
1057
1060
  return null;
@@ -1315,7 +1318,7 @@ function filterComponentTreeNodes(nodes, filter) {
1315
1318
  expandedKeys: Array.from(expandedKeys),
1316
1319
  };
1317
1320
  }
1318
- const NODE_THUMBNAIL_BOX = { width: 56, height: 36 };
1321
+ const NODE_THUMBNAIL_BOX = LIVE_THUMBNAIL_BOX;
1319
1322
  /**
1320
1323
  * Live crop of the component out of the shared page sheet. While the first
1321
1324
  * sheet is on its way the box shows a spinner. Components the host did not