@alpaca-editor/core 1.0.4172 → 1.0.4174

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 (170) hide show
  1. package/dist/agents-view/AgentsView.d.ts +5 -0
  2. package/dist/agents-view/AgentsView.js +213 -0
  3. package/dist/agents-view/AgentsView.js.map +1 -0
  4. package/dist/components/ui/context-menu.js +4 -4
  5. package/dist/components/ui/context-menu.js.map +1 -1
  6. package/dist/config/config.js +56 -1
  7. package/dist/config/config.js.map +1 -1
  8. package/dist/editor/ConfirmationDialog.js +2 -1
  9. package/dist/editor/ConfirmationDialog.js.map +1 -1
  10. package/dist/editor/ContentTree.d.ts +2 -1
  11. package/dist/editor/ContentTree.js +18 -3
  12. package/dist/editor/ContentTree.js.map +1 -1
  13. package/dist/editor/ContextMenu.js +1 -1
  14. package/dist/editor/ContextMenu.js.map +1 -1
  15. package/dist/editor/FieldList.js +7 -3
  16. package/dist/editor/FieldList.js.map +1 -1
  17. package/dist/editor/FieldListField.d.ts +3 -2
  18. package/dist/editor/FieldListField.js +4 -4
  19. package/dist/editor/FieldListField.js.map +1 -1
  20. package/dist/editor/FieldListFieldWithFallbacks.d.ts +2 -1
  21. package/dist/editor/FieldListFieldWithFallbacks.js +5 -2
  22. package/dist/editor/FieldListFieldWithFallbacks.js.map +1 -1
  23. package/dist/editor/MainLayout.js +1 -1
  24. package/dist/editor/QuickItemSwitcher.d.ts +9 -0
  25. package/dist/editor/QuickItemSwitcher.js +74 -0
  26. package/dist/editor/QuickItemSwitcher.js.map +1 -0
  27. package/dist/editor/ai/AgentCostDisplay.js +7 -11
  28. package/dist/editor/ai/AgentCostDisplay.js.map +1 -1
  29. package/dist/editor/ai/AgentProfilesOverview.d.ts +9 -0
  30. package/dist/editor/ai/AgentProfilesOverview.js +16 -0
  31. package/dist/editor/ai/AgentProfilesOverview.js.map +1 -0
  32. package/dist/editor/ai/AgentTerminal.js +285 -748
  33. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  34. package/dist/editor/ai/Agents.js +112 -54
  35. package/dist/editor/ai/Agents.js.map +1 -1
  36. package/dist/editor/ai/AiResponseMessage.d.ts +2 -1
  37. package/dist/editor/ai/AiResponseMessage.js +4 -2
  38. package/dist/editor/ai/AiResponseMessage.js.map +1 -1
  39. package/dist/editor/ai/ContextInfoBar.js +17 -17
  40. package/dist/editor/ai/useAgentStatus.js +7 -0
  41. package/dist/editor/ai/useAgentStatus.js.map +1 -1
  42. package/dist/editor/client/EditorShell.js +230 -4
  43. package/dist/editor/client/EditorShell.js.map +1 -1
  44. package/dist/editor/client/hooks/useSocketMessageHandler.js +0 -12
  45. package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
  46. package/dist/editor/client/ui/EditorChrome.js +1 -1
  47. package/dist/editor/client/ui/EditorChrome.js.map +1 -1
  48. package/dist/editor/commands/itemCommands.js +1 -0
  49. package/dist/editor/commands/itemCommands.js.map +1 -1
  50. package/dist/editor/control-center/parhelia-setup/Overview.d.ts +1 -0
  51. package/dist/editor/control-center/parhelia-setup/Overview.js +91 -0
  52. package/dist/editor/control-center/parhelia-setup/Overview.js.map +1 -0
  53. package/dist/editor/field-types/AttachmentEditor.js +3 -6
  54. package/dist/editor/field-types/AttachmentEditor.js.map +1 -1
  55. package/dist/editor/field-types/DropLinkEditor.js +2 -2
  56. package/dist/editor/field-types/DropLinkEditor.js.map +1 -1
  57. package/dist/editor/field-types/DropListEditor.js +2 -1
  58. package/dist/editor/field-types/DropListEditor.js.map +1 -1
  59. package/dist/editor/field-types/InternalLinkFieldEditor.js +3 -3
  60. package/dist/editor/field-types/InternalLinkFieldEditor.js.map +1 -1
  61. package/dist/editor/field-types/MultiLineText.d.ts +2 -1
  62. package/dist/editor/field-types/MultiLineText.js +2 -2
  63. package/dist/editor/field-types/MultiLineText.js.map +1 -1
  64. package/dist/editor/field-types/RawEditor.d.ts +2 -1
  65. package/dist/editor/field-types/RawEditor.js +2 -2
  66. package/dist/editor/field-types/RawEditor.js.map +1 -1
  67. package/dist/editor/field-types/SingleLineText.d.ts +2 -1
  68. package/dist/editor/field-types/SingleLineText.js +2 -2
  69. package/dist/editor/field-types/SingleLineText.js.map +1 -1
  70. package/dist/editor/field-types/TreeListEditor.js +9 -7
  71. package/dist/editor/field-types/TreeListEditor.js.map +1 -1
  72. package/dist/editor/media-selector/MediaFolderBrowser.js +68 -7
  73. package/dist/editor/media-selector/MediaFolderBrowser.js.map +1 -1
  74. package/dist/editor/media-selector/TreeSelector.js +1 -1
  75. package/dist/editor/media-selector/TreeSelector.js.map +1 -1
  76. package/dist/editor/menubar/ActiveUsers.js +2 -2
  77. package/dist/editor/menubar/FavoritesControls.js +2 -2
  78. package/dist/editor/menubar/FavoritesControls.js.map +1 -1
  79. package/dist/editor/page-editor-chrome/FrameMenu.js +10 -1
  80. package/dist/editor/page-editor-chrome/FrameMenu.js.map +1 -1
  81. package/dist/editor/page-viewer/pageModelSkeletonBuilder.js +14 -0
  82. package/dist/editor/page-viewer/pageModelSkeletonBuilder.js.map +1 -1
  83. package/dist/editor/services/agentService.d.ts +21 -3
  84. package/dist/editor/services/agentService.js +24 -8
  85. package/dist/editor/services/agentService.js.map +1 -1
  86. package/dist/editor/services/aiService.d.ts +6 -1
  87. package/dist/editor/services/aiService.js +36 -5
  88. package/dist/editor/services/aiService.js.map +1 -1
  89. package/dist/editor/services/contentService.d.ts +1 -1
  90. package/dist/editor/services/contentService.js +4 -2
  91. package/dist/editor/services/contentService.js.map +1 -1
  92. package/dist/editor/services/editService.d.ts +5 -1
  93. package/dist/editor/services/editService.js +1 -1
  94. package/dist/editor/services/editService.js.map +1 -1
  95. package/dist/editor/services/setupService.d.ts +21 -0
  96. package/dist/editor/services/setupService.js +10 -0
  97. package/dist/editor/services/setupService.js.map +1 -0
  98. package/dist/editor/sidebar/ComponentTree.js +15 -1
  99. package/dist/editor/sidebar/ComponentTree.js.map +1 -1
  100. package/dist/editor/sidebar/SidebarView.js +1 -1
  101. package/dist/editor/sidebar/SidebarView.js.map +1 -1
  102. package/dist/editor/ui/ItemSearch.d.ts +1 -0
  103. package/dist/editor/ui/ItemSearch.js +2 -2
  104. package/dist/editor/ui/ItemSearch.js.map +1 -1
  105. package/dist/editor/ui/PerfectTree.d.ts +5 -1
  106. package/dist/editor/ui/PerfectTree.js +308 -29
  107. package/dist/editor/ui/PerfectTree.js.map +1 -1
  108. package/dist/editor/utils/keyboardNavigation.d.ts +2 -0
  109. package/dist/editor/utils/keyboardNavigation.js +80 -2
  110. package/dist/editor/utils/keyboardNavigation.js.map +1 -1
  111. package/dist/editor/views/SingleEditView.js +6 -4
  112. package/dist/editor/views/SingleEditView.js.map +1 -1
  113. package/dist/revision.d.ts +2 -2
  114. package/dist/revision.js +2 -2
  115. package/dist/splash-screen/SplashScreen.js +78 -4
  116. package/dist/splash-screen/SplashScreen.js.map +1 -1
  117. package/dist/styles.css +157 -23
  118. package/dist/types.d.ts +13 -0
  119. package/package.json +1 -1
  120. package/src/agents-view/AgentsView.tsx +431 -0
  121. package/src/components/ui/context-menu.tsx +4 -4
  122. package/src/config/config.tsx +61 -0
  123. package/src/editor/ConfirmationDialog.tsx +42 -10
  124. package/src/editor/ContentTree.tsx +20 -1
  125. package/src/editor/ContextMenu.tsx +4 -1
  126. package/src/editor/FieldList.tsx +10 -4
  127. package/src/editor/FieldListField.tsx +7 -0
  128. package/src/editor/FieldListFieldWithFallbacks.tsx +10 -0
  129. package/src/editor/MainLayout.tsx +1 -1
  130. package/src/editor/QuickItemSwitcher.tsx +217 -0
  131. package/src/editor/ai/AgentCostDisplay.tsx +59 -60
  132. package/src/editor/ai/AgentProfilesOverview.tsx +81 -0
  133. package/src/editor/ai/AgentTerminal.tsx +321 -775
  134. package/src/editor/ai/Agents.tsx +157 -91
  135. package/src/editor/ai/AiResponseMessage.tsx +12 -1
  136. package/src/editor/ai/ContextInfoBar.tsx +17 -17
  137. package/src/editor/ai/useAgentStatus.ts +6 -0
  138. package/src/editor/client/EditorShell.tsx +288 -3
  139. package/src/editor/client/hooks/useSocketMessageHandler.ts +0 -15
  140. package/src/editor/client/ui/EditorChrome.tsx +1 -1
  141. package/src/editor/commands/itemCommands.tsx +1 -0
  142. package/src/editor/control-center/parhelia-setup/Overview.tsx +184 -0
  143. package/src/editor/field-types/AttachmentEditor.tsx +13 -50
  144. package/src/editor/field-types/DropLinkEditor.tsx +2 -2
  145. package/src/editor/field-types/DropListEditor.tsx +2 -1
  146. package/src/editor/field-types/InternalLinkFieldEditor.tsx +3 -3
  147. package/src/editor/field-types/MultiLineText.tsx +3 -0
  148. package/src/editor/field-types/RawEditor.tsx +3 -0
  149. package/src/editor/field-types/SingleLineText.tsx +3 -0
  150. package/src/editor/field-types/TreeListEditor.tsx +32 -24
  151. package/src/editor/media-selector/MediaFolderBrowser.tsx +93 -9
  152. package/src/editor/media-selector/TreeSelector.tsx +1 -0
  153. package/src/editor/menubar/ActiveUsers.tsx +2 -2
  154. package/src/editor/menubar/FavoritesControls.tsx +5 -5
  155. package/src/editor/page-editor-chrome/FrameMenu.tsx +10 -1
  156. package/src/editor/page-viewer/pageModelSkeletonBuilder.ts +17 -0
  157. package/src/editor/services/agentService.ts +46 -11
  158. package/src/editor/services/aiService.ts +48 -7
  159. package/src/editor/services/contentService.ts +4 -1
  160. package/src/editor/services/editService.ts +8 -3
  161. package/src/editor/services/setupService.ts +35 -0
  162. package/src/editor/sidebar/ComponentTree.tsx +16 -1
  163. package/src/editor/sidebar/SidebarView.tsx +1 -1
  164. package/src/editor/ui/ItemSearch.tsx +3 -1
  165. package/src/editor/ui/PerfectTree.tsx +393 -42
  166. package/src/editor/utils/keyboardNavigation.ts +97 -1
  167. package/src/editor/views/SingleEditView.tsx +27 -13
  168. package/src/revision.ts +2 -2
  169. package/src/splash-screen/SplashScreen.tsx +134 -2
  170. package/src/types.ts +15 -0
@@ -8,6 +8,7 @@ export function AgentCostDisplay({ className = "", response, totalTokens, costLi
8
8
  const costPopoverRef = useRef(null);
9
9
  const editorSettings = useEditorSettings();
10
10
  const currency = editorSettings?.currency || "USD";
11
+ const limit = costLimit != null ? Number(costLimit) : null;
11
12
  // Handle click outside for cost popover
12
13
  useEffect(() => {
13
14
  function handleClickOutside(event) {
@@ -61,13 +62,11 @@ export function AgentCostDisplay({ className = "", response, totalTokens, costLi
61
62
  (totalTokens.input > 0 || totalTokens.output > 0 || totalTokens.cached > 0);
62
63
  const hasCostData = (response && response.totalCost && response.totalCost > 0) ||
63
64
  (totalTokens && totalTokens.totalCost && totalTokens.totalCost > 0);
64
- if (!hasTokenData && !hasTotalData && !hasCostData) {
65
+ if (!hasTokenData && !hasTotalData && !hasCostData && !(limit && limit > 0)) {
65
66
  return null;
66
67
  }
67
68
  // Calculate percentage of limit used
68
- const percentUsed = costLimit && costLimit > 0
69
- ? Math.min((displayTotalCost / costLimit) * 100, 100)
70
- : null;
69
+ const percentUsed = limit && limit > 0 ? Math.min((displayTotalCost / limit) * 100, 100) : null;
71
70
  // Determine color based on usage
72
71
  const getColorClass = () => {
73
72
  if (!percentUsed)
@@ -80,18 +79,15 @@ export function AgentCostDisplay({ className = "", response, totalTokens, costLi
80
79
  return "text-yellow-600";
81
80
  return "text-gray-400";
82
81
  };
83
- return (_jsx("div", { className: `relative ${className}`, ref: costPopoverRef, "data-testid": "agent-cost-display", children: _jsxs(Popover, { open: showCostPopover, onOpenChange: setShowCostPopover, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs("div", { className: `cursor-pointer text-right hover:text-gray-600 ${getColorClass()}`, style: { fontSize: "10px" }, onClick: () => setShowCostPopover(!showCostPopover), "data-testid": "agent-cost-display-trigger", children: ["Total Cost: ", displayTotalCost.toFixed(2), " ", currency, costLimit &&
84
- costLimit > 0 &&
85
- ` / ${costLimit.toFixed(2)} ${currency}`] }) }), _jsx(PopoverContent, { className: "w-80 p-4", align: "end", side: "bottom", "data-testid": "agent-cost-display-popover", children: _jsxs("div", { className: "space-y-4", children: [_jsx("div", { className: "border-b pb-2", children: _jsxs("h4", { className: "flex items-center justify-between text-sm font-semibold", children: [_jsx("div", { children: "Cost Breakdown" }), _jsxs("span", { className: "text-sm font-semibold", children: [displayTotalCost.toFixed(2), " ", currency, costLimit && costLimit > 0 && (_jsxs("span", { className: "ml-1 text-xs text-gray-500", children: ["/ ", costLimit.toFixed(2), " ", currency] }))] })] }) }), costLimit && costLimit > 0 && (_jsxs("div", { className: "rounded-md bg-gray-50 p-3", children: [_jsxs("div", { className: "mb-2 flex items-center justify-between text-xs", children: [_jsx("span", { className: "font-medium text-gray-700", children: "Cost Limit Usage" }), _jsxs("span", { className: `font-semibold ${getColorClass()}`, children: [percentUsed?.toFixed(1), "%"] })] }), _jsx("div", { className: "h-2 w-full overflow-hidden rounded-full bg-gray-200", children: _jsx("div", { className: `h-full transition-all ${percentUsed && percentUsed >= 100
82
+ return (_jsx("div", { className: `relative ${className}`, ref: costPopoverRef, "data-testid": "agent-cost-display", children: _jsxs(Popover, { open: showCostPopover, onOpenChange: setShowCostPopover, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs("div", { className: `cursor-pointer text-right hover:text-gray-600 ${getColorClass()}`, style: { fontSize: "10px" }, onClick: () => setShowCostPopover(!showCostPopover), "data-testid": "agent-cost-display-trigger", children: ["Total Cost: ", displayTotalCost.toFixed(2), " ", currency, limit && limit > 0 && ` / ${limit.toFixed(2)} ${currency}`] }) }), _jsx(PopoverContent, { className: "w-80 p-4", align: "end", side: "bottom", "data-testid": "agent-cost-display-popover", children: _jsxs("div", { className: "space-y-4", children: [_jsx("div", { className: "border-b pb-2", children: _jsxs("h4", { className: "flex items-center justify-between text-sm font-semibold", children: [_jsx("div", { children: "Cost Breakdown" }), _jsxs("span", { className: "text-sm font-semibold", children: [displayTotalCost.toFixed(2), " ", currency, limit && limit > 0 && (_jsxs("span", { className: "ml-1 text-xs text-gray-500", children: ["/ ", limit.toFixed(2), " ", currency] }))] })] }) }), limit && limit > 0 && (_jsxs("div", { className: "rounded-md bg-gray-50 p-3", children: [_jsxs("div", { className: "mb-2 flex items-center justify-between text-xs", children: [_jsx("span", { className: "font-medium text-gray-700", children: "Cost Limit Usage" }), _jsxs("span", { className: `font-semibold ${getColorClass()}`, children: [percentUsed?.toFixed(1), "%"] })] }), _jsx("div", { className: "h-2 w-full overflow-hidden rounded-full bg-gray-200", children: _jsx("div", { className: `h-full transition-all ${percentUsed && percentUsed >= 100
86
83
  ? "bg-red-500"
87
84
  : percentUsed && percentUsed >= 80
88
85
  ? "bg-orange-500"
89
86
  : percentUsed && percentUsed >= 60
90
87
  ? "bg-yellow-500"
91
- : "bg-blue-500"}`, style: { width: `${Math.min(percentUsed || 0, 100)}%` } }) }), percentUsed && percentUsed >= 90 && (_jsx("p", { className: "mt-2 text-xs text-gray-600", children: percentUsed >= 100
88
+ : "bg-blue-500"}`, style: { width: `${Math.min(percentUsed || 0, 100)}%` } }) }), percentUsed != null && percentUsed >= 90 && (_jsx("p", { className: "mt-2 text-xs text-gray-600", children: percentUsed >= 100
92
89
  ? "Cost limit reached. Execution will stop on next API call."
93
- : "Approaching cost limit. Consider extending if needed." }))] })), _jsx("div", { className: "space-y-3", children: (hasTotalData || hasTokenData) && (_jsx(_Fragment, { children: _jsx("div", { className: "space-y-2", children: hasTotalData ? (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Input tokens:" }), _jsxs("span", { className: "text-xs", children: [totalTokens.input.toLocaleString(), " (", totalTokens.inputCost.toFixed(2), " ", currency, ")"] })] }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Output tokens:" }), _jsxs("span", { className: "text-xs", children: [totalTokens.output.toLocaleString(), " (", totalTokens.outputCost.toFixed(2), " ", currency, ")"] })] }), totalTokens.cached > 0 && (_jsxs("div", { className: "flex items-center justify-between", "data-testid": "cached-tokens-row", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cached tokens:" }), _jsxs("span", { className: "text-xs", "data-testid": "cached-tokens-value", children: [totalTokens.cached.toLocaleString(), " (", totalTokens.cachedCost.toFixed(2), " ", currency, ")"] })] })), totalTokens.cacheWrite > 0 && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cache write tokens:" }), _jsxs("span", { className: "text-xs", children: [totalTokens.cacheWrite.toLocaleString(), " (", (totalTokens.cacheWriteCost ?? 0).toFixed(2), " ", currency, ")"] })] }))] })) : (response &&
94
- currentCost && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Input tokens:" }), _jsxs("span", { className: "text-xs", children: [response.numInputTokens.toLocaleString(), "(", currentCost.inputCost.toFixed(2), " ", currency, ")"] })] }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Output tokens:" }), _jsxs("span", { className: "text-xs", children: [response.numOutputTokens.toLocaleString(), "(", currentCost.outputCost.toFixed(2), " ", currency, ")"] })] }), response.numCachedTokens > 0 && (_jsxs("div", { className: "flex items-center justify-between", "data-testid": "cached-tokens-row", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cached tokens:" }), _jsxs("span", { className: "text-xs", "data-testid": "cached-tokens-value", children: [response.numCachedTokens.toLocaleString(), "(", currentCost.cachedCost.toFixed(2), " ", currency, ")"] })] })), response.numCacheWriteTokens &&
95
- response.numCacheWriteTokens > 0 && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cache write tokens:" }), _jsxs("span", { className: "text-xs", children: [response.numCacheWriteTokens.toLocaleString(), "(", currentCost.cacheWriteCost.toFixed(2), " ", currency, ")"] })] })), _jsx("div", { className: "mt-2 text-xs text-gray-400", children: "* Estimated costs based on typical Claude 3.5 pricing" })] }))) }) })) })] }) })] }) }));
90
+ : "Approaching cost limit. Consider extending if needed." }))] })), _jsx("div", { className: "space-y-3", children: (hasTotalData || hasTokenData) && (_jsx(_Fragment, { children: _jsx("div", { className: "space-y-2", children: hasTotalData ? (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Input tokens:" }), _jsxs("span", { className: "text-xs", children: [totalTokens.input.toLocaleString(), " (", totalTokens.inputCost.toFixed(2), " ", currency, ")"] })] }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Output tokens:" }), _jsxs("span", { className: "text-xs", children: [totalTokens.output.toLocaleString(), " (", totalTokens.outputCost.toFixed(2), " ", currency, ")"] })] }), totalTokens.cached > 0 && (_jsxs("div", { className: "flex items-center justify-between", "data-testid": "cached-tokens-row", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cached tokens:" }), _jsxs("span", { className: "text-xs", "data-testid": "cached-tokens-value", children: [totalTokens.cached.toLocaleString(), " (", totalTokens.cachedCost.toFixed(2), " ", currency, ")"] })] })), totalTokens.cacheWrite > 0 && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cache write tokens:" }), _jsxs("span", { className: "text-xs", children: [totalTokens.cacheWrite.toLocaleString(), " (", (totalTokens.cacheWriteCost ?? 0).toFixed(2), " ", currency, ")"] })] }))] })) : (_jsx(_Fragment, { children: response && currentCost && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Input tokens:" }), _jsxs("span", { className: "text-xs", children: [response.numInputTokens.toLocaleString(), "(", currentCost.inputCost.toFixed(2), " ", currency, ")"] })] }), _jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Output tokens:" }), _jsxs("span", { className: "text-xs", children: [response.numOutputTokens.toLocaleString(), "(", currentCost.outputCost.toFixed(2), " ", currency, ")"] })] }), response.numCachedTokens > 0 && (_jsxs("div", { className: "flex items-center justify-between", "data-testid": "cached-tokens-row", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cached tokens:" }), _jsxs("span", { className: "text-xs", "data-testid": "cached-tokens-value", children: [response.numCachedTokens.toLocaleString(), "(", currentCost.cachedCost.toFixed(2), " ", currency, ")"] })] })), response.numCacheWriteTokens &&
91
+ response.numCacheWriteTokens > 0 && (_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs text-gray-500", children: "Cache write tokens:" }), _jsxs("span", { className: "text-xs", children: [response.numCacheWriteTokens.toLocaleString(), "(", currentCost.cacheWriteCost.toFixed(2), " ", currency, ")"] })] })), _jsx("div", { className: "mt-2 text-xs text-gray-400", children: "* Estimated costs based on typical Claude 3.5 pricing" })] })) })) }) })) })] }) })] }) }));
96
92
  }
97
93
  //# sourceMappingURL=AgentCostDisplay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AgentCostDisplay.js","sourceRoot":"","sources":["../../../src/editor/ai/AgentCostDisplay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentCostDisplay.js","sourceRoot":"","sources":["../../../src/editor/ai/AgentCostDisplay.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { AiProfile } from "../services/aiService";
3
+ interface AgentProfilesOverviewProps {
4
+ profiles: AiProfile[];
5
+ onSelectProfile: (profileId: string) => void;
6
+ className?: string;
7
+ }
8
+ export declare const AgentProfilesOverview: React.FC<AgentProfilesOverviewProps>;
9
+ export {};
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from "../../lib/utils";
3
+ import { Bot } from "lucide-react";
4
+ export const AgentProfilesOverview = ({ profiles, onSelectProfile, className, }) => {
5
+ // Filter out hidden profiles
6
+ const visibleProfiles = profiles.filter((profile) => !profile.hiddenFromOverview);
7
+ if (visibleProfiles.length === 0) {
8
+ return (_jsx("div", { className: cn("text-center text-xs text-gray-500", className), children: "No agent profiles available" }));
9
+ }
10
+ return (_jsx("div", { className: cn("grid grid-cols-[repeat(auto-fit,minmax(min(200px,100%),1fr))] gap-3", className), children: visibleProfiles.map((profile) => {
11
+ const displayTitle = profile.displayTitle || profile.name;
12
+ const description = profile.description || "";
13
+ return (_jsxs("button", { onClick: () => onSelectProfile(profile.id), className: "group flex flex-col gap-3 rounded-lg border border-gray-200 bg-white p-4 text-left transition-all hover:border-blue-300 hover:shadow-md focus:border-blue-500 focus:ring-2 focus:ring-blue-500 focus:ring-offset-1 focus:outline-none", "data-testid": "agent-profile-card", "data-profile-id": profile.id, children: [_jsx("div", { className: "flex items-center justify-center", children: profile.svgIcon ? (_jsx("div", { className: "flex h-12 w-12 items-center justify-center transition-transform group-hover:scale-110 [&>svg]:h-full [&>svg]:w-full", dangerouslySetInnerHTML: { __html: profile.svgIcon } })) : (_jsx(Bot, { className: "h-12 w-12 text-gray-400 transition-transform group-hover:scale-110 group-hover:text-blue-500", strokeWidth: 1 })) }), _jsx("h3", { className: "text-sm font-semibold text-gray-900", children: displayTitle }), description && (_jsx("p", { className: "line-clamp-3 text-xs text-gray-500", children: description }))] }, profile.id));
14
+ }) }));
15
+ };
16
+ //# sourceMappingURL=AgentProfilesOverview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentProfilesOverview.js","sourceRoot":"","sources":["../../../src/editor/ai/AgentProfilesOverview.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAQnC,MAAM,CAAC,MAAM,qBAAqB,GAAyC,CAAC,EAC1E,QAAQ,EACR,eAAe,EACf,SAAS,GACV,EAAE,EAAE;IACH,6BAA6B;IAC7B,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CACrC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CACzC,CAAC;IAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,mCAAmC,EAAE,SAAS,CAAC,4CAE5D,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cACE,SAAS,EAAE,EAAE,CACX,qEAAqE,EACrE,SAAS,CACV,YAEA,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;YAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;YAE9C,OAAO,CACL,kBAEE,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,EAC1C,SAAS,EAAC,uOAAuO,iBACrO,oBAAoB,qBACf,OAAO,CAAC,EAAE,aAG3B,cAAK,SAAS,EAAC,kCAAkC,YAC9C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CACjB,cACE,SAAS,EAAC,qHAAqH,EAC/H,uBAAuB,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,GACpD,CACH,CAAC,CAAC,CAAC,CACF,KAAC,GAAG,IACF,SAAS,EAAC,8FAA8F,EACxG,WAAW,EAAE,CAAC,GACd,CACH,GACG,EAGN,aAAI,SAAS,EAAC,qCAAqC,YAChD,YAAY,GACV,EAGJ,WAAW,IAAI,CACd,YAAG,SAAS,EAAC,oCAAoC,YAC9C,WAAW,GACV,CACL,KA/BI,OAAO,CAAC,EAAE,CAgCR,CACV,CAAC;QACJ,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC"}