@parhelia/core 0.1.12938 → 0.1.12939

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 (165) hide show
  1. package/dist/agents-view/AgentCard.d.ts +2 -1
  2. package/dist/agents-view/AgentCard.js +2 -2
  3. package/dist/agents-view/AgentCard.js.map +1 -1
  4. package/dist/agents-view/AgentsView.d.ts +3 -1
  5. package/dist/agents-view/AgentsView.js +4 -4
  6. package/dist/agents-view/AgentsView.js.map +1 -1
  7. package/dist/agents-view/DateAgentsGroup.d.ts +2 -1
  8. package/dist/agents-view/DateAgentsGroup.js +2 -2
  9. package/dist/agents-view/DateAgentsGroup.js.map +1 -1
  10. package/dist/agents-view/ProfileAgentsGroup.d.ts +2 -1
  11. package/dist/agents-view/ProfileAgentsGroup.js +3 -3
  12. package/dist/agents-view/ProfileAgentsGroup.js.map +1 -1
  13. package/dist/agents-view/RenameAgentDialog.js +6 -6
  14. package/dist/agents-view/RenameAgentDialog.js.map +1 -1
  15. package/dist/components/ui/PlaceholderInput.d.ts +1 -0
  16. package/dist/components/ui/PlaceholderInput.js +4 -2
  17. package/dist/components/ui/PlaceholderInput.js.map +1 -1
  18. package/dist/components/ui/PlaceholderItemSelector.js +15 -28
  19. package/dist/components/ui/PlaceholderItemSelector.js.map +1 -1
  20. package/dist/editor/FieldActionsOverlay.js +8 -10
  21. package/dist/editor/FieldActionsOverlay.js.map +1 -1
  22. package/dist/editor/ai/Agents.js +45 -29
  23. package/dist/editor/ai/Agents.js.map +1 -1
  24. package/dist/editor/ai/agentProfileDefaults.d.ts +7 -0
  25. package/dist/editor/ai/agentProfileDefaults.js +9 -0
  26. package/dist/editor/ai/agentProfileDefaults.js.map +1 -0
  27. package/dist/editor/ai/terminal/agentCost.d.ts +19 -0
  28. package/dist/editor/ai/terminal/agentCost.js +31 -0
  29. package/dist/editor/ai/terminal/agentCost.js.map +1 -0
  30. package/dist/editor/ai/terminal/agentSessionLiveTotals.js +13 -7
  31. package/dist/editor/ai/terminal/agentSessionLiveTotals.js.map +1 -1
  32. package/dist/editor/ai/terminal/components/AgentBanners.d.ts +2 -1
  33. package/dist/editor/ai/terminal/components/AgentBanners.js +3 -2
  34. package/dist/editor/ai/terminal/components/AgentBanners.js.map +1 -1
  35. package/dist/editor/ai/terminal/components/AgentCostDisplay.js +7 -3
  36. package/dist/editor/ai/terminal/components/AgentCostDisplay.js.map +1 -1
  37. package/dist/editor/ai/terminal/components/AgentGreeting.d.ts +3 -1
  38. package/dist/editor/ai/terminal/components/AgentGreeting.js +2 -2
  39. package/dist/editor/ai/terminal/components/AgentGreeting.js.map +1 -1
  40. package/dist/editor/ai/terminal/components/AgentMemoryPanel.js +8 -5
  41. package/dist/editor/ai/terminal/components/AgentMemoryPanel.js.map +1 -1
  42. package/dist/editor/ai/terminal/components/AgentModeSelector.js +4 -10
  43. package/dist/editor/ai/terminal/components/AgentModeSelector.js.map +1 -1
  44. package/dist/editor/ai/terminal/components/AgentProfileSwitcher.d.ts +26 -0
  45. package/dist/editor/ai/terminal/components/AgentProfileSwitcher.js +96 -0
  46. package/dist/editor/ai/terminal/components/AgentProfileSwitcher.js.map +1 -0
  47. package/dist/editor/ai/terminal/components/AgentPromptInputArea.js +8 -3
  48. package/dist/editor/ai/terminal/components/AgentPromptInputArea.js.map +1 -1
  49. package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.d.ts +1 -1
  50. package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js +21 -1
  51. package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js.map +1 -1
  52. package/dist/editor/ai/terminal/components/AgentSummaryAssistantResponse.d.ts +1 -3
  53. package/dist/editor/ai/terminal/components/AgentSummaryAssistantResponse.js +2 -2
  54. package/dist/editor/ai/terminal/components/AgentSummaryAssistantResponse.js.map +1 -1
  55. package/dist/editor/ai/terminal/components/AgentTerminalContextChrome.d.ts +2 -1
  56. package/dist/editor/ai/terminal/components/AgentTerminalContextChrome.js +2 -2
  57. package/dist/editor/ai/terminal/components/AgentTerminalContextChrome.js.map +1 -1
  58. package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.d.ts +7 -1
  59. package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js +4 -3
  60. package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js.map +1 -1
  61. package/dist/editor/ai/terminal/components/AgentTerminalMessageGroups.d.ts +1 -3
  62. package/dist/editor/ai/terminal/components/AgentTerminalMessageGroups.js +2 -2
  63. package/dist/editor/ai/terminal/components/AgentTerminalMessageGroups.js.map +1 -1
  64. package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js +9 -0
  65. package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js.map +1 -1
  66. package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.d.ts +1 -1
  67. package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js +2 -2
  68. package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js.map +1 -1
  69. package/dist/editor/ai/terminal/components/AgentThinkingIndicator.d.ts +1 -0
  70. package/dist/editor/ai/terminal/components/AgentThinkingIndicator.js +5 -0
  71. package/dist/editor/ai/terminal/components/AgentThinkingIndicator.js.map +1 -0
  72. package/dist/editor/ai/terminal/components/AiResponseMessage.d.ts +1 -2
  73. package/dist/editor/ai/terminal/components/AiResponseMessage.js +43 -31
  74. package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
  75. package/dist/editor/ai/terminal/components/ApprovalCard.d.ts +18 -0
  76. package/dist/editor/ai/terminal/components/ApprovalCard.js +63 -0
  77. package/dist/editor/ai/terminal/components/ApprovalCard.js.map +1 -0
  78. package/dist/editor/ai/terminal/components/ContextInfoBar.js +3 -3
  79. package/dist/editor/ai/terminal/components/ContextInfoBar.js.map +1 -1
  80. package/dist/editor/ai/terminal/components/InitialThinkingSplash.js +2 -2
  81. package/dist/editor/ai/terminal/components/InitialThinkingSplash.js.map +1 -1
  82. package/dist/editor/ai/terminal/components/ToolCallDisplay.d.ts +3 -5
  83. package/dist/editor/ai/terminal/components/ToolCallDisplay.js +13 -248
  84. package/dist/editor/ai/terminal/components/ToolCallDisplay.js.map +1 -1
  85. package/dist/editor/ai/terminal/components/UserMessage.js +43 -4
  86. package/dist/editor/ai/terminal/components/UserMessage.js.map +1 -1
  87. package/dist/editor/ai/terminal/components/approvalActions.d.ts +49 -0
  88. package/dist/editor/ai/terminal/components/approvalActions.js +128 -0
  89. package/dist/editor/ai/terminal/components/approvalActions.js.map +1 -0
  90. package/dist/editor/ai/terminal/components/toolCallApprovalGate.d.ts +14 -0
  91. package/dist/editor/ai/terminal/components/toolCallApprovalGate.js +31 -10
  92. package/dist/editor/ai/terminal/components/toolCallApprovalGate.js.map +1 -1
  93. package/dist/editor/ai/terminal/components/useApprovalActions.d.ts +23 -0
  94. package/dist/editor/ai/terminal/components/useApprovalActions.js +58 -0
  95. package/dist/editor/ai/terminal/components/useApprovalActions.js.map +1 -0
  96. package/dist/editor/ai/terminal/types.d.ts +6 -0
  97. package/dist/editor/ai/terminal/useAgentCostLimitWatcher.js +4 -1
  98. package/dist/editor/ai/terminal/useAgentCostLimitWatcher.js.map +1 -1
  99. package/dist/editor/ai/terminal/useAgentPendingApprovals.js +3 -1
  100. package/dist/editor/ai/terminal/useAgentPendingApprovals.js.map +1 -1
  101. package/dist/editor/ai/terminal/useAgentRunStatusSocketHandler.js +15 -2
  102. package/dist/editor/ai/terminal/useAgentRunStatusSocketHandler.js.map +1 -1
  103. package/dist/editor/ai/terminal/useAgentSettingsSelectOptions.js +0 -3
  104. package/dist/editor/ai/terminal/useAgentSettingsSelectOptions.js.map +1 -1
  105. package/dist/editor/ai/terminal/useAgentStatusBarContent.js +9 -0
  106. package/dist/editor/ai/terminal/useAgentStatusBarContent.js.map +1 -1
  107. package/dist/editor/ai/terminal/useAgentTerminalChrome.js +1 -1
  108. package/dist/editor/ai/terminal/useAgentTerminalChrome.js.map +1 -1
  109. package/dist/editor/ai/terminal/useAgentTerminalController.d.ts +1 -1
  110. package/dist/editor/ai/terminal/useAgentTerminalController.js +4 -1
  111. package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
  112. package/dist/editor/ai/types.d.ts +5 -0
  113. package/dist/editor/client/ui/EditorChrome.js +1 -1
  114. package/dist/editor/client/ui/EditorChrome.js.map +1 -1
  115. package/dist/editor/client/ui/FullscreenControls.js +2 -2
  116. package/dist/editor/client/ui/FullscreenControls.js.map +1 -1
  117. package/dist/editor/menubar/toolbar-sections/FullscreenControl.js +2 -2
  118. package/dist/editor/menubar/toolbar-sections/FullscreenControl.js.map +1 -1
  119. package/dist/editor/menubar/toolbar-sections/UndoRedoControls.js +1 -1
  120. package/dist/editor/menubar/toolbar-sections/UndoRedoControls.js.map +1 -1
  121. package/dist/editor/page-editor-chrome/DragInsertionOverlay.js +51 -0
  122. package/dist/editor/page-editor-chrome/DragInsertionOverlay.js.map +1 -1
  123. package/dist/editor/page-editor-chrome/EmptyImageFieldIndicators.d.ts +3 -1
  124. package/dist/editor/page-editor-chrome/EmptyImageFieldIndicators.js +42 -11
  125. package/dist/editor/page-editor-chrome/EmptyImageFieldIndicators.js.map +1 -1
  126. package/dist/editor/page-editor-chrome/PageEditorChrome.d.ts +2 -1
  127. package/dist/editor/page-editor-chrome/PageEditorChrome.js +4 -2
  128. package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -1
  129. package/dist/editor/page-editor-chrome/PictureEditorOverlay.d.ts +3 -2
  130. package/dist/editor/page-editor-chrome/PictureEditorOverlay.js +8 -3
  131. package/dist/editor/page-editor-chrome/PictureEditorOverlay.js.map +1 -1
  132. package/dist/editor/page-editor-chrome/PlaceholderDropZone.d.ts +10 -4
  133. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +13 -13
  134. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
  135. package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +5 -5
  136. package/dist/editor/page-editor-chrome/PlaceholderDropZones.js.map +1 -1
  137. package/dist/editor/page-viewer/PageViewerFrame.js +4 -1
  138. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  139. package/dist/editor/services/aiService.d.ts +2 -0
  140. package/dist/editor/services/aiService.js.map +1 -1
  141. package/dist/editor/settings/index/QueueErrorsDisplay.js +1 -1
  142. package/dist/editor/settings/index/QueueErrorsDisplay.js.map +1 -1
  143. package/dist/editor/settings/index/RebuildIndexSection.js +1 -1
  144. package/dist/editor/settings/index/RebuildIndexSection.js.map +1 -1
  145. package/dist/editor/settings/panels/ProvidersPanel.js +12 -6
  146. package/dist/editor/settings/panels/ProvidersPanel.js.map +1 -1
  147. package/dist/editor/setup-wizard/steps/ProviderStep.js +1 -1
  148. package/dist/editor/setup-wizard/steps/ProviderStep.js.map +1 -1
  149. package/dist/editor/sidebar/SidebarPanel.d.ts +2 -1
  150. package/dist/editor/sidebar/SidebarPanel.js +14 -4
  151. package/dist/editor/sidebar/SidebarPanel.js.map +1 -1
  152. package/dist/editor/sidebar/Workbox.js +59 -59
  153. package/dist/editor/sidebar/Workbox.js.map +1 -1
  154. package/dist/editor/ui/TreeListSelector.d.ts +2 -1
  155. package/dist/editor/ui/TreeListSelector.js +2 -2
  156. package/dist/editor/ui/TreeListSelector.js.map +1 -1
  157. package/dist/editor/ui/WorkboxItemsTable.js +39 -5
  158. package/dist/editor/ui/WorkboxItemsTable.js.map +1 -1
  159. package/dist/revision.d.ts +2 -2
  160. package/dist/revision.js +2 -2
  161. package/dist/tour/default-tour.js +29 -21
  162. package/dist/tour/default-tour.js.map +1 -1
  163. package/dist/types.d.ts +6 -0
  164. package/package.json +1 -1
  165. package/styles.css +34 -0
@@ -349,7 +349,7 @@ export function ContextInfoBar({ agent, agentMetadata, setAgentMetadata, setAgen
349
349
  }
350
350
  const Chip = ({ icon, label, onRemove, onLoad, showRemove = true, isActive = false, testId, }) => (_jsxs("span", { "data-testid": testId, className: `rounded-badge badge-pad-sm text-2xs inline-flex h-4 items-center gap-1 border leading-none ${isActive
351
351
  ? "border-feedback-green bg-feedback-green-light text-feedback-green"
352
- : "border-border-default bg-neutral-grey-5 text-neutral-grey-100"}`, children: [icon, _jsx("span", { className: "max-w-[240px] truncate leading-none", title: label, children: label }), !isActive && onLoad && (_jsx("button", { onClick: onLoad, className: `hover:bg-neutral-grey-10 ml-0.5 rounded p-0.5`, "aria-label": "Load item", children: _jsx(ArrowRight, { className: "h-3 w-3", strokeWidth: 1 }) })), showRemove && (_jsx("button", { onClick: onRemove, className: `ml-0.5 rounded p-0.5 ${isActive
352
+ : "border-border-default text-neutral-grey-100 bg-white"}`, children: [icon, _jsx("span", { className: "max-w-[240px] truncate leading-none", title: label, children: label }), !isActive && onLoad && (_jsx("button", { onClick: onLoad, className: `hover:bg-neutral-grey-10 ml-0.5 rounded p-0.5`, "aria-label": "Load item", children: _jsx(ArrowRight, { className: "h-3 w-3", strokeWidth: 1 }) })), showRemove && (_jsx("button", { onClick: onRemove, className: `ml-0.5 rounded p-0.5 ${isActive
353
353
  ? "hover:bg-feedback-green-light"
354
354
  : "hover:bg-neutral-grey-10"}`, "aria-label": "Remove context", children: _jsx(X, { className: "h-3 w-3", strokeWidth: 1 }) }))] }));
355
355
  const chips = [];
@@ -587,7 +587,7 @@ export function ContextInfoBar({ agent, agentMetadata, setAgentMetadata, setAgen
587
587
  : commentText || "Review comment";
588
588
  summaryChips.push(_jsx(Chip, { icon: _jsx(Target, { className: "text-neutral-grey-50 h-3 w-3", strokeWidth: 1 }), label: label, onRemove: () => { }, showRemove: false }, "summary-comment"));
589
589
  }
590
- const inlineHeaderActions = hasStoredContext ? (_jsx("div", { className: "flex items-center gap-1", children: _jsxs(Button, { size: "xs", variant: "ghost", onClick: removeAllContext, className: "text-feedback-red hover:bg-feedback-red-light hover:text-feedback-red", "data-testid": "remove-all-context", children: [_jsx(X, { className: "mr-1 h-3 w-3", strokeWidth: 1 }), " Clear All"] }) })) : null;
590
+ const inlineHeaderActions = hasStoredContext ? (_jsx("div", { className: "flex items-center gap-1", children: _jsxs(Button, { size: "xs", variant: "ghost", onClick: removeAllContext, className: "text-feedback-red hover:bg-feedback-red-light hover:text-feedback-red", "data-testid": "remove-all-context", children: [_jsx(X, { className: "mr-1 h-3 w-3", strokeWidth: 1 }), " Clear added context"] }) })) : null;
591
591
  const useHeaderPortal = headerless && headerActionsContainer;
592
592
  const expandedBody = (_jsxs("div", { className: "px-4 pt-3 pb-3", children: [useHeaderPortal && inlineHeaderActions
593
593
  ? createPortal(inlineHeaderActions, headerActionsContainer)
@@ -595,7 +595,7 @@ export function ContextInfoBar({ agent, agentMetadata, setAgentMetadata, setAgen
595
595
  ? "Editor context is disabled for this profile."
596
596
  : captureEditorContextOnCreate && !includeLiveEditorContext
597
597
  ? "Editor context will be captured when this agent starts."
598
- : "No context added yet. Drag items or components here to add them." })) }), !useHeaderPortal && inlineHeaderActions] }), showViewedSection && (_jsxs("div", { className: "border-border-default mt-2 border-t pt-3", children: [_jsxs("div", { className: "flex items-center justify-between gap-2 pb-2", children: [_jsx("span", { className: "text-neutral-grey-100 text-xs", children: "Currently viewing" }), _jsxs(Button, { size: "xs", variant: "outline", onClick: () => void pinViewedContext(), "data-testid": "add-current-item", children: [_jsx(Plus, { className: "mr-1 h-3 w-3", strokeWidth: 1 }), " Add to context"] })] }), _jsx("div", { className: "flex flex-wrap items-center gap-2", children: viewedChips })] }))] }));
598
+ : "No context added yet. Drag items or components here to add them." })) }), !useHeaderPortal && inlineHeaderActions] }), showViewedSection && (_jsxs("div", { className: "border-border-default mt-2 border-t pt-3", children: [_jsxs("div", { className: "flex items-center justify-between gap-2 pb-2", children: [_jsx("span", { className: "text-neutral-grey-100 text-xs", children: "Currently viewing (sent automatically)" }), _jsxs(Button, { size: "xs", variant: "outline", onClick: () => void pinViewedContext(), "data-testid": "add-current-item", children: [_jsx(Plus, { className: "mr-1 h-3 w-3", strokeWidth: 1 }), " Pin to context"] })] }), _jsx("div", { className: "flex flex-wrap items-center gap-2", children: viewedChips })] }))] }));
599
599
  if (headerless) {
600
600
  return (_jsx("div", { className: "bg-neutral-grey-5", onDragOver: handleDragOver, onDragEnter: handleDragOver, onDragLeave: handleDragLeave, onDrop: handleDrop, children: expandedBody }));
601
601
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ContextInfoBar.js","sourceRoot":"","sources":["../../../../../src/editor/ai/terminal/components/ContextInfoBar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContextInfoBar.js","sourceRoot":"","sources":["../../../../../src/editor/ai/terminal/components/ContextInfoBar.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  export const InitialThinkingSplash = () => {
3
- return (_jsx("div", { className: "flex h-full items-center justify-center p-8", children: _jsxs("div", { className: "flex items-center gap-1", children: [_jsx("span", { className: "bg-neutral-grey-50 h-2 w-2 animate-bounce rounded-full [animation-delay:-0.3s]" }), _jsx("span", { className: "bg-neutral-grey-50 h-2 w-2 animate-bounce rounded-full [animation-delay:-0.15s]" }), _jsx("span", { className: "bg-neutral-grey-50 h-2 w-2 animate-bounce rounded-full" })] }) }));
3
+ return (_jsx("div", { className: "flex h-full items-center justify-center p-8", children: _jsx("span", { className: "animate-text-shimmer text-sm font-medium", children: "Thinking..." }) }));
4
4
  };
5
5
  //# sourceMappingURL=InitialThinkingSplash.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InitialThinkingSplash.js","sourceRoot":"","sources":["../../../../../src/editor/ai/terminal/components/InitialThinkingSplash.tsx"],"names":[],"mappings":";AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,OAAO,CACL,cAAK,SAAS,EAAC,6CAA6C,YAC1D,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAM,SAAS,EAAC,gFAAgF,GAAG,EACnG,eAAM,SAAS,EAAC,iFAAiF,GAAG,EACpG,eAAM,SAAS,EAAC,wDAAwD,GAAG,IACvE,GACF,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"InitialThinkingSplash.js","sourceRoot":"","sources":["../../../../../src/editor/ai/terminal/components/InitialThinkingSplash.tsx"],"names":[],"mappings":";AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,OAAO,CACL,cAAK,SAAS,EAAC,6CAA6C,YAC1D,eAAM,SAAS,EAAC,0CAA0C,4BAEnD,GACH,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -50,6 +50,8 @@ export interface PendingToolCallInfo {
50
50
  dbMessageId?: string;
51
51
  toolCallId: string;
52
52
  riskLevel?: "low" | "medium" | "high";
53
+ functionName: string;
54
+ summary: string;
53
55
  }
54
56
  interface ToolCallDisplayProps {
55
57
  toolCalls: (BaseToolCall | AgentToolCall)[];
@@ -61,10 +63,6 @@ interface ToolCallDisplayProps {
61
63
  [key: string]: boolean;
62
64
  }>>;
63
65
  messageId: string;
64
- agentId?: string;
65
- allPendingApprovals?: PendingToolCallInfo[];
66
- onSwitchToAutonomous?: () => void;
67
- readOnly?: boolean;
68
66
  }
69
67
  export type InlineToolResultImage = {
70
68
  src: string;
@@ -79,5 +77,5 @@ export declare const InlineToolResultPreview: ({ preview, className, imageClassN
79
77
  imageClassName?: string;
80
78
  testId?: string;
81
79
  }) => React.JSX.Element;
82
- export declare function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopovers, messageId, agentId, allPendingApprovals, onSwitchToAutonomous, readOnly, }: ToolCallDisplayProps): React.JSX.Element | null;
80
+ export declare function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopovers, messageId, }: ToolCallDisplayProps): React.JSX.Element | null;
83
81
  export {};
@@ -1,14 +1,11 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState, useMemo, memo, useEffect } from "react";
3
3
  import { JsonView, defaultStyles } from "react-json-view-lite";
4
4
  import "react-json-view-lite/dist/index.css";
5
5
  import { Spinner } from "../../../ui/Spinner";
6
- import { Button } from "../../../../components/ui/button";
7
6
  import { CopyButton } from "../../../../components/ui/copy-button";
8
7
  import { Tooltip, TooltipTrigger, TooltipContent, } from "../../../../components/ui/tooltip";
9
- import { approveToolCall, approveToolCalls, createOperationAllowance, rejectToolCall, updateAgentSettings, } from "../../../services/agentService";
10
8
  import { formatTime, formatDateTime } from "../../../utils";
11
- import { groupHasPendingApproval } from "./toolCallApprovalGate";
12
9
  // Custom dark theme styles for JSON view
13
10
  const darkJsonStyles = {
14
11
  ...defaultStyles,
@@ -32,7 +29,7 @@ const JsonLightThemeStyles = () => (_jsx("style", { children: `
32
29
  .dark-json-null { color: var(--color-feedback-red); }
33
30
  .dark-json-undefined { color: var(--color-feedback-red); }
34
31
  ` }));
35
- import { ChevronDown, ChevronRight, Check, CheckCircle2, X, XCircle, ShieldCheck, Wrench, Zap, } from "lucide-react";
32
+ import { ChevronDown, ChevronRight, CheckCircle2, XCircle, Wrench, } from "lucide-react";
36
33
  const ToolCallStatusIcon = ({ failed }) => {
37
34
  const Icon = failed ? XCircle : CheckCircle2;
38
35
  return (_jsx(Icon, { strokeWidth: 1.75, size: 14, className: failed ? "text-feedback-red" : "text-feedback-green" }));
@@ -424,17 +421,11 @@ ToolCallDetails.displayName = "ToolCallDetails";
424
421
  const AnimatedToolCallDetails = ({ isExpanded, children, }) => {
425
422
  return (_jsx(AnimatedDisclosureContent, { isExpanded: isExpanded, children: children }));
426
423
  };
427
- export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopovers, messageId, agentId, allPendingApprovals = [], onSwitchToAutonomous, readOnly = false, }) {
428
- const [batchRiskAction, setBatchRiskAction] = useState(null);
429
- const [isSwitchingMode, setIsSwitchingMode] = useState(false);
430
- const [isGroupExpanded, setIsGroupExpanded] = useState(() => groupHasPendingApproval(toolCalls, allPendingApprovals));
424
+ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopovers, messageId, }) {
425
+ // Always starts collapsed — pending approvals are surfaced by the
426
+ // ApprovalCard after the activity, never by force-expanding diagnostics.
427
+ const [isGroupExpanded, setIsGroupExpanded] = useState(false);
431
428
  const [userToggled, setUserToggled] = useState(false);
432
- // Gate the group's batch-approval bar on the SAME pending set that drives the
433
- // count (allPendingApprovals / selectPendingApprovals), so a completed tool
434
- // call carrying stale requiresApproval metadata can no longer leak an empty
435
- // "Approve All (0)" bar. See toolCallApprovalGate.ts.
436
- const hasPendingApprovalsInGroup = useMemo(() => groupHasPendingApproval(toolCalls, allPendingApprovals), [toolCalls, allPendingApprovals]);
437
- const isGroupExpandedForRender = !userToggled && hasPendingApprovalsInGroup ? true : isGroupExpanded;
438
429
  const groupSummary = useMemo(() => {
439
430
  if (!toolCalls || toolCalls.length === 0)
440
431
  return null;
@@ -485,131 +476,19 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
485
476
  if (!toolCalls || toolCalls.length === 0) {
486
477
  return null;
487
478
  }
488
- const resolvePendingToolCalls = async (pendingToolCalls, approved) => {
489
- if (readOnly)
490
- return;
491
- if (!agentId || pendingToolCalls.length === 0)
492
- return;
493
- const actionLabel = approved ? "approve" : "reject";
494
- if (approved && pendingToolCalls.length > 1) {
495
- const result = await approveToolCalls({
496
- agentId,
497
- toolCalls: pendingToolCalls.map((pending) => ({
498
- messageId: pending.dbMessageId || pending.messageId,
499
- toolCallId: pending.toolCallId,
500
- })),
501
- });
502
- const approvedToolCallIds = result.approvedToolCallIds && result.approvedToolCallIds.length > 0
503
- ? new Set(result.approvedToolCallIds)
504
- : new Set(pendingToolCalls.map((pending) => pending.toolCallId));
505
- pendingToolCalls.forEach((pending) => {
506
- if (!approvedToolCallIds.has(pending.toolCallId)) {
507
- return;
508
- }
509
- window.dispatchEvent(new CustomEvent("agent:toolApprovalResolved", {
510
- detail: {
511
- agentId,
512
- messageId: pending.dbMessageId || pending.messageId,
513
- toolCallId: pending.toolCallId,
514
- approved: true,
515
- },
516
- }));
517
- });
518
- return;
519
- }
520
- await Promise.all(pendingToolCalls.map(async (pending) => {
521
- try {
522
- const params = {
523
- agentId,
524
- messageId: pending.dbMessageId || pending.messageId,
525
- toolCallId: pending.toolCallId,
526
- };
527
- if (approved) {
528
- await approveToolCall(params);
529
- }
530
- else {
531
- await rejectToolCall(params);
532
- }
533
- window.dispatchEvent(new CustomEvent("agent:toolApprovalResolved", {
534
- detail: {
535
- agentId,
536
- messageId: pending.dbMessageId || pending.messageId,
537
- toolCallId: pending.toolCallId,
538
- approved,
539
- },
540
- }));
541
- }
542
- catch (error) {
543
- console.error(`Failed to ${actionLabel} tool call ${pending.toolCallId}:`, error);
544
- }
545
- }));
546
- };
547
- // Helper to approve/reject all pending tool calls at once
548
- const handleApproveAllPending = async () => {
549
- if (!agentId || batchRiskAction)
550
- return;
551
- if (allPendingApprovals.length === 0)
552
- return;
553
- setBatchRiskAction("approve");
554
- try {
555
- await resolvePendingToolCalls(allPendingApprovals, true);
556
- }
557
- finally {
558
- setBatchRiskAction(null);
559
- }
560
- };
561
- const handleRejectAllPending = async () => {
562
- if (!agentId || batchRiskAction)
563
- return;
564
- if (allPendingApprovals.length === 0)
565
- return;
566
- setBatchRiskAction("reject");
567
- try {
568
- await resolvePendingToolCalls(allPendingApprovals, false);
569
- }
570
- finally {
571
- setBatchRiskAction(null);
572
- }
573
- };
574
- // Helper to switch to autonomous mode
575
- const handleSwitchToAutonomous = async () => {
576
- if (readOnly)
577
- return;
578
- if (!agentId || isSwitchingMode)
579
- return;
580
- setIsSwitchingMode(true);
581
- try {
582
- const result = await updateAgentSettings(agentId, { mode: "autonomous" });
583
- if (result.success === false || result.updates?.mode === false) {
584
- throw new Error("Mode change was not applied");
585
- }
586
- onSwitchToAutonomous?.();
587
- // After switching to autonomous, approve all remaining pending tool calls
588
- if (allPendingApprovals.length > 0) {
589
- await resolvePendingToolCalls(allPendingApprovals, true);
590
- }
591
- }
592
- catch (error) {
593
- console.error("Failed to switch to autonomous mode:", error);
594
- alert(`Failed to switch to autonomous mode: ${error?.message || "Unknown error"}`);
595
- }
596
- finally {
597
- setIsSwitchingMode(false);
598
- }
599
- };
600
479
  const showGroupHeader = toolCalls.length > 0;
601
480
  return (_jsxs("div", { className: "flex flex-col", children: [showGroupHeader && (_jsxs("div", { className: "group text-neutral-grey-50 hover:bg-neutral-grey-5/60 hover:text-neutral-grey-100 flex cursor-pointer items-center gap-1.5 rounded-md px-1 py-1 text-xs transition-all", onClick: () => {
602
- setIsGroupExpanded(!isGroupExpandedForRender);
481
+ setIsGroupExpanded(!isGroupExpanded);
603
482
  setUserToggled(true);
604
- }, children: [_jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center transition-transform group-hover:scale-110", children: isGroupExpandedForRender ? (_jsx(ChevronDown, { size: 14, strokeWidth: 1.5, className: "text-neutral-grey-50" })) : (_jsx(ChevronRight, { size: 14, strokeWidth: 1.5, className: "text-neutral-grey-50" })) }), _jsx("div", { className: "text-neutral-grey-50 flex h-4 w-4 shrink-0 items-center justify-center", children: _jsx(Wrench, { strokeWidth: 1.5, size: 14 }) }), _jsxs("span", { className: `leading-4 font-medium ${!allToolCallsCompleted && !groupHasFailedToolCall
483
+ }, children: [_jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center transition-transform group-hover:scale-110", children: isGroupExpanded ? (_jsx(ChevronDown, { size: 14, strokeWidth: 1.5, className: "text-neutral-grey-50" })) : (_jsx(ChevronRight, { size: 14, strokeWidth: 1.5, className: "text-neutral-grey-50" })) }), _jsx("div", { className: "text-neutral-grey-50 flex h-4 w-4 shrink-0 items-center justify-center", children: _jsx(Wrench, { strokeWidth: 1.5, size: 14 }) }), _jsxs("span", { className: `leading-4 font-medium ${!allToolCallsCompleted && !groupHasFailedToolCall
605
484
  ? "animate-text-shimmer"
606
- : ""}`, children: [toolCalls.length, " tool call", toolCalls.length !== 1 ? "s" : ""] }), !isGroupExpandedForRender && groupSummary && (_jsx("span", { className: "text-neutral-grey-50 ml-1 min-w-0 flex-1 truncate text-[10px] leading-4", children: groupSummary.uniqueNames.length <= 3
485
+ : ""}`, children: [toolCalls.length, " tool call", toolCalls.length !== 1 ? "s" : ""] }), !isGroupExpanded && groupSummary && (_jsx("span", { className: "text-neutral-grey-50 ml-1 min-w-0 flex-1 truncate text-[10px] leading-4", children: groupSummary.uniqueNames.length <= 3
607
486
  ? groupSummary.uniqueNames.join(", ")
608
487
  : `${groupSummary.uniqueNames.slice(0, 2).join(", ")} +${groupSummary.uniqueNames.length - 2} more` })), groupSummary && groupSummary.errorCount > 0 && (_jsxs("span", { className: "text-feedback-red ml-1 shrink-0 text-[10px] leading-4", children: ["(", groupSummary.errorCount, " error", groupSummary.errorCount !== 1 ? "s" : "", ")"] })), _jsx("div", { className: "ml-auto flex h-4 w-4 shrink-0 items-center justify-center", children: groupHasFailedToolCall || allToolCallsCompleted ? (_jsx(ToolCallStatusIcon, { failed: groupHasFailedToolCall })) : (_jsx(Spinner, { size: "xs" })) })] })), _jsx("div", { className: userToggled
609
488
  ? "grid transition-[grid-template-rows] duration-200 ease-out"
610
489
  : "grid", style: {
611
- gridTemplateRows: isGroupExpandedForRender ? "1fr" : "0fr",
612
- }, "aria-hidden": !isGroupExpandedForRender, children: _jsx("div", { className: "overflow-hidden", children: _jsx("div", { className: "ml-4", children: toolCalls.map((originalToolCall, toolIndex) => {
490
+ gridTemplateRows: isGroupExpanded ? "1fr" : "0fr",
491
+ }, "aria-hidden": !isGroupExpanded, children: _jsx("div", { className: "overflow-hidden", children: _jsx("div", { className: "ml-4", children: toolCalls.map((originalToolCall, toolIndex) => {
613
492
  const toolCall = normalizeToolCall(originalToolCall);
614
493
  const toolResult = toolCall.function?.result;
615
494
  const isAgentToolCall = "isCompleted" in originalToolCall;
@@ -630,20 +509,11 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
630
509
  originalToolCall.isStreaming === true;
631
510
  // Use the approval info from the backend
632
511
  const finalApprovalInfo = approvalInfo;
633
- const toolCallIdForApproval = "toolCallId" in originalToolCall
634
- ? originalToolCall.toolCallId
635
- : toolCall.id;
636
512
  // Check if this tool call has been approved/rejected (look for status indicators in function name)
637
513
  // The AgentTerminal adds " (approved)" or " (rejected)" or " (pending approval)" to the functionName field
638
514
  const originalFunctionName = ("functionName" in originalToolCall
639
515
  ? originalToolCall.functionName
640
516
  : toolCall?.function?.name) || "";
641
- const baseFunctionName = originalFunctionName
642
- .replace(" (approved)", "")
643
- .replace(" (rejected)", "")
644
- .replace(" (pending approval)", "")
645
- .trim()
646
- .toLowerCase();
647
517
  const isApproved = originalFunctionName.includes("(approved)");
648
518
  const isRejected = originalFunctionName.includes("(rejected)");
649
519
  // Treat only approved/rejected as final; pending should still show buttons
@@ -655,7 +525,6 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
655
525
  (isAwaitingApproval || isStreaming || !finished);
656
526
  // Debug logging removed for performance
657
527
  const isExpanded = openPopovers[popoverKey] || false;
658
- const toolCallMessageId = originalToolCall.messageId || toolCall.messageId || messageId;
659
528
  return (_jsxs("div", { children: [_jsxs("div", { className: "group text-neutral-grey-50 hover:bg-neutral-grey-5/60 hover:text-neutral-grey-100 flex cursor-pointer items-center gap-1.5 rounded-md px-1 py-1 text-xs transition-all", onClick: () => {
660
529
  setOpenPopovers((prev) => ({
661
530
  ...prev,
@@ -673,112 +542,8 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
673
542
  .replace(" (rejected)", "")
674
543
  .replace(" (pending approval)", ""), toolCall.function?.error &&
675
544
  !isRejected &&
676
- !isPruned && (_jsx("span", { className: "text-feedback-red ml-1 leading-4", children: "(error)" })), isPruned && (_jsxs("span", { className: "rounded-badge bg-neutral-grey-5 badge-pad-sm text-2xs text-neutral-grey-100 ml-2 inline-flex items-center gap-1 font-medium", children: [_jsx("span", { children: "\u2702" }), " Pruned"] })), finalApprovalInfo && isRejected && (_jsxs("span", { className: "rounded-badge bg-feedback-red-light badge-pad-sm text-2xs text-feedback-red ml-2 inline-flex items-center gap-1 font-medium", children: [_jsx("span", { children: "\u2717" }), " Rejected"] }))] }), finalApprovalInfo?.summary && (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "text-neutral-grey-50 min-w-0 flex-1 cursor-help truncate text-xs leading-4 italic", children: finalApprovalInfo.summary }) }), _jsx(TooltipContent, { side: "top", className: "max-w-md", children: finalApprovalInfo.summary })] })), _jsxs("div", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [!isCompleted &&
677
- finalApprovalInfo &&
678
- !hasApprovalStatus && (_jsx(ApprovalDialog, { toolCallId: toolCallIdForApproval, finalApprovalInfo: finalApprovalInfo, isAgentToolCall: isAgentToolCall, originalToolCall: originalToolCall, toolCall: toolCall, messageId: toolCallMessageId, agentId: agentId, readOnly: readOnly })), toolCallMeta &&
545
+ !isPruned && (_jsx("span", { className: "text-feedback-red ml-1 leading-4", children: "(error)" })), isPruned && (_jsxs("span", { className: "rounded-badge bg-neutral-grey-5 badge-pad-sm text-2xs text-neutral-grey-100 ml-2 inline-flex items-center gap-1 font-medium", children: [_jsx("span", { children: "\u2702" }), " Pruned"] })), finalApprovalInfo && isRejected && (_jsxs("span", { className: "rounded-badge bg-feedback-red-light badge-pad-sm text-2xs text-feedback-red ml-2 inline-flex items-center gap-1 font-medium", children: [_jsx("span", { children: "\u2717" }), " Rejected"] }))] }), finalApprovalInfo?.summary && (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "text-neutral-grey-50 min-w-0 flex-1 cursor-help truncate text-xs leading-4 italic", children: finalApprovalInfo.summary }) }), _jsx(TooltipContent, { side: "top", className: "max-w-md", children: finalApprovalInfo.summary })] })), _jsxs("div", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [toolCallMeta &&
679
546
  (toolCallMeta.tooltip ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "text-neutral-grey-50 cursor-help text-[10px] leading-4", children: toolCallMeta.display }) }), _jsx(TooltipContent, { side: "top", children: toolCallMeta.tooltip })] })) : (_jsx("span", { className: "text-neutral-grey-50 text-[10px] leading-4", children: toolCallMeta.display }))), _jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center transition-all", children: hasFailed ? (_jsx(ToolCallStatusIcon, { failed: true })) : showPendingStatus ? (_jsx(Spinner, { size: "xs" })) : (_jsx(ToolCallStatusIcon, { failed: false })) })] })] })] }), _jsx(AnimatedToolCallDetails, { isExpanded: isExpanded, children: _jsx(ToolCallDetails, { toolCall: toolCall, result: toolResult }) })] }, toolCallKey));
680
- }) }) }) }), (() => {
681
- if (!hasPendingApprovalsInGroup)
682
- return null;
683
- const totalPending = allPendingApprovals.length;
684
- const isPlural = totalPending !== 1;
685
- const uniqueRisks = Array.from(new Set(allPendingApprovals.map((p) => p.riskLevel || undefined)));
686
- const singleRisk = uniqueRisks.length === 1 ? uniqueRisks[0] : undefined;
687
- const showRiskBadge = singleRisk === "high";
688
- // Hide autonomous switch if any pending tool call in the group is a delete
689
- const hideAutonomousSwitch = toolCalls.some((tc) => {
690
- if (!tc.requiresApproval)
691
- return false;
692
- const name = ("functionName" in tc
693
- ? tc.functionName
694
- : normalizeToolCall(tc).function?.name) || "";
695
- const base = name
696
- .replace(" (approved)", "")
697
- .replace(" (rejected)", "")
698
- .replace(" (pending approval)", "")
699
- .trim()
700
- .toLowerCase();
701
- return base === "delete-item" || base === "delete-items";
702
- });
703
- const isApproving = batchRiskAction === "approve";
704
- const isRejecting = batchRiskAction === "reject";
705
- const isBusy = batchRiskAction !== null || isSwitchingMode;
706
- const countSuffix = isPlural ? ` All (${totalPending})` : "";
707
- return (_jsxs("div", { className: "mt-2 flex flex-col gap-2 p-2", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [showRiskBadge && (_jsx("span", { className: "rounded-badge bg-feedback-red-light badge-pad-sm text-2xs text-feedback-red ring-feedback-red inline-flex shrink-0 items-center font-medium ring-1 ring-inset", children: singleRisk })), _jsxs("span", { className: "text-neutral-grey-50 truncate text-xs", children: [totalPending, " action", isPlural ? "s" : "", " awaiting approval"] })] }), _jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsxs(Button, { size: "sm", "data-testid": "agent-approve-all-button", disabled: isBusy || readOnly, onClick: handleApproveAllPending, title: readOnly ? "Read-only access" : undefined, className: "bg-feedback-green hover:bg-feedback-green h-7 gap-1.5 px-2.5 text-xs text-white shadow-xs", children: [isApproving ? (_jsx(Spinner, { size: "xs" })) : (_jsx(Check, { size: 12, strokeWidth: 2.5 })), "Approve", countSuffix] }), _jsxs(Button, { size: "sm", variant: "outline", "data-testid": "agent-reject-all-button", disabled: isBusy || readOnly, onClick: handleRejectAllPending, title: readOnly ? "Read-only access" : undefined, className: "border-feedback-red text-feedback-red hover:border-feedback-red hover:bg-feedback-red-light hover:text-feedback-red h-7 gap-1.5 bg-white px-2.5 text-xs", children: [isRejecting ? (_jsx(Spinner, { size: "xs" })) : (_jsx(X, { size: 12, strokeWidth: 2.5 })), "Reject", countSuffix] }), !hideAutonomousSwitch && (_jsxs(Button, { size: "sm", variant: "ghost", disabled: isBusy || readOnly, onClick: handleSwitchToAutonomous, title: readOnly
708
- ? "Read-only access"
709
- : "Stop asking for approval and let the agent run autonomously", className: "text-neutral-grey-50 hover:text-neutral-grey-100 ml-auto h-7 gap-1.5 px-2 text-xs", children: [isSwitchingMode ? (_jsx(Spinner, { size: "xs" })) : (_jsx(Zap, { size: 12, strokeWidth: 2 })), isSwitchingMode ? "Switching" : "Autonomous"] }))] })] }));
710
- })()] }));
711
- }
712
- function ApprovalDialog({ toolCallId, finalApprovalInfo, isAgentToolCall, originalToolCall, toolCall, messageId, agentId, readOnly = false, }) {
713
- const [isCreatingAllowance, setIsCreatingAllowance] = useState(false);
714
- const getActualMessageId = () => {
715
- return isAgentToolCall
716
- ? originalToolCall.dbMessageId || originalToolCall.messageId
717
- : messageId;
718
- };
719
- const dispatchApprovalResolved = (actualMessageId, approved) => {
720
- const ev = new CustomEvent("agent:toolApprovalResolved", {
721
- detail: {
722
- agentId,
723
- messageId: actualMessageId,
724
- toolCallId: toolCall.id,
725
- approved,
726
- },
727
- });
728
- window.dispatchEvent(ev);
729
- };
730
- const approveCurrentToolCall = async () => {
731
- if (readOnly)
732
- return;
733
- const actualMessageId = getActualMessageId();
734
- if (!agentId) {
735
- console.error("Cannot approve tool call: agentId is missing");
736
- return;
737
- }
738
- if (!actualMessageId) {
739
- console.error("Cannot approve tool call: messageId is missing");
740
- return;
741
- }
742
- await approveToolCall({
743
- agentId,
744
- messageId: actualMessageId,
745
- toolCallId: toolCall.id,
746
- });
747
- dispatchApprovalResolved(actualMessageId, true);
748
- };
749
- const allowableScope = finalApprovalInfo.allowableScope;
750
- const showAllowInScopeButton = !!agentId &&
751
- allowableScope?.operationType === "delete" &&
752
- !!allowableScope.parentItemId &&
753
- !!allowableScope.parentItemPath;
754
- const riskLevel = finalApprovalInfo.riskLevel;
755
- return (_jsxs(_Fragment, { children: [riskLevel === "high" && (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "bg-feedback-red-light badge-pad-sm text-feedback-red shrink-0 cursor-help rounded text-[10px] font-medium", children: riskLevel }) }), _jsxs(TooltipContent, { side: "top", className: "max-w-xs", children: [_jsxs("div", { className: "font-medium", children: ["Risk: ", riskLevel.toUpperCase()] }), _jsx("div", { className: "mt-0.5 font-normal opacity-90", children: finalApprovalInfo.summary })] })] })), showAllowInScopeButton && (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("button", { type: "button", "aria-label": isCreatingAllowance
756
- ? "Allowing..."
757
- : `Allow deletes in ${allowableScope?.parentItemPath}`, disabled: isCreatingAllowance || readOnly, className: "text-neutral-grey-50 hover:bg-neutral-grey-5 hover:text-neutral-grey-100 flex size-5 shrink-0 items-center justify-center rounded disabled:cursor-not-allowed disabled:opacity-60", onClick: async (e) => {
758
- e.stopPropagation();
759
- if (readOnly)
760
- return;
761
- if (!agentId || !allowableScope?.parentItemId)
762
- return;
763
- setIsCreatingAllowance(true);
764
- try {
765
- await createOperationAllowance({
766
- agentId,
767
- itemId: allowableScope.parentItemId,
768
- operationType: "delete",
769
- scopeType: "itemSubtree",
770
- });
771
- await approveCurrentToolCall();
772
- }
773
- catch (error) {
774
- console.error("Failed to create operation allowance:", error);
775
- alert(`Failed to allow deletes in scope: ${error?.message || "Unknown error"}`);
776
- }
777
- finally {
778
- setIsCreatingAllowance(false);
779
- }
780
- }, children: _jsx(ShieldCheck, { className: "size-3" }) }) }), _jsx(TooltipContent, { side: "top", children: isCreatingAllowance
781
- ? "Allowing..."
782
- : `Allow deletes in ${allowableScope?.parentItemPath}` })] }))] }));
547
+ }) }) }) })] }));
783
548
  }
784
549
  //# sourceMappingURL=ToolCallDisplay.js.map