@alpaca-editor/core 1.0.4026 → 1.0.4030
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.
- package/dist/components/ActionButton.js +2 -2
- package/dist/components/ActionButton.js.map +1 -1
- package/dist/components/SimpleLanguageSelector.js +3 -1
- package/dist/components/SimpleLanguageSelector.js.map +1 -1
- package/dist/components/ui/button.d.ts +1 -1
- package/dist/config/config.js +1 -1
- package/dist/config/config.js.map +1 -1
- package/dist/config/types.d.ts +1 -1
- package/dist/editor/ContextMenu.js +0 -1
- package/dist/editor/ContextMenu.js.map +1 -1
- package/dist/editor/Editor.js +9 -3
- package/dist/editor/Editor.js.map +1 -1
- package/dist/editor/FieldListField.js +16 -24
- package/dist/editor/FieldListField.js.map +1 -1
- package/dist/editor/ImageEditButton.js +1 -1
- package/dist/editor/ImageEditButton.js.map +1 -1
- package/dist/editor/ImageEditor.js +1 -1
- package/dist/editor/ImageEditor.js.map +1 -1
- package/dist/editor/MainLayout.js +2 -2
- package/dist/editor/MainLayout.js.map +1 -1
- package/dist/editor/Terminal.js +1 -1
- package/dist/editor/Terminal.js.map +1 -1
- package/dist/editor/Titlebar.js +0 -1
- package/dist/editor/Titlebar.js.map +1 -1
- package/dist/editor/ai/AgentCostDisplay.d.ts +26 -0
- package/dist/editor/ai/AgentCostDisplay.js +65 -0
- package/dist/editor/ai/AgentCostDisplay.js.map +1 -0
- package/dist/editor/ai/Agents.js +83 -29
- package/dist/editor/ai/Agents.js.map +1 -1
- package/dist/editor/ai/AiPromptPopover.d.ts +7 -0
- package/dist/editor/ai/AiPromptPopover.js +111 -0
- package/dist/editor/ai/AiPromptPopover.js.map +1 -0
- package/dist/editor/ai/AiResponseMessage.d.ts +1 -0
- package/dist/editor/ai/AiResponseMessage.js +104 -18
- package/dist/editor/ai/AiResponseMessage.js.map +1 -1
- package/dist/editor/ai/AiTerminal.d.ts +18 -2
- package/dist/editor/ai/AiTerminal.js +423 -63
- package/dist/editor/ai/AiTerminal.js.map +1 -1
- package/dist/editor/ai/EditorAiTerminal.d.ts +2 -1
- package/dist/editor/ai/EditorAiTerminal.js +2 -2
- package/dist/editor/ai/EditorAiTerminal.js.map +1 -1
- package/dist/editor/ai/editorAiContext.d.ts +0 -1
- package/dist/editor/ai/editorAiContext.js +0 -2
- package/dist/editor/ai/editorAiContext.js.map +1 -1
- package/dist/editor/client/EditorClient.d.ts +3 -2
- package/dist/editor/client/EditorClient.js +326 -68
- package/dist/editor/client/EditorClient.js.map +1 -1
- package/dist/editor/client/editContext.d.ts +6 -4
- package/dist/editor/client/editContext.js.map +1 -1
- package/dist/editor/client/fieldModificationStore.d.ts +19 -0
- package/dist/editor/client/fieldModificationStore.js +125 -0
- package/dist/editor/client/fieldModificationStore.js.map +1 -0
- package/dist/editor/client/itemsRepository.d.ts +1 -1
- package/dist/editor/client/itemsRepository.js +38 -28
- package/dist/editor/client/itemsRepository.js.map +1 -1
- package/dist/editor/client/operations.d.ts +1 -0
- package/dist/editor/client/operations.js +39 -31
- package/dist/editor/client/operations.js.map +1 -1
- package/dist/editor/commands/componentCommands.js +5 -3
- package/dist/editor/commands/componentCommands.js.map +1 -1
- package/dist/editor/commands/itemCommands.js.map +1 -1
- package/dist/editor/component-designer/aiContext.js +0 -2
- package/dist/editor/component-designer/aiContext.js.map +1 -1
- package/dist/editor/field-types/DropLinkEditor.js +1 -1
- package/dist/editor/field-types/DropLinkEditor.js.map +1 -1
- package/dist/editor/field-types/MultiLineText.js +5 -7
- package/dist/editor/field-types/MultiLineText.js.map +1 -1
- package/dist/editor/field-types/RichTextEditorComponent.js +5 -7
- package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
- package/dist/editor/field-types/SingleLineText.js +5 -7
- package/dist/editor/field-types/SingleLineText.js.map +1 -1
- package/dist/editor/hooks/useEditorSettings.d.ts +17 -0
- package/dist/editor/hooks/useEditorSettings.js +61 -0
- package/dist/editor/hooks/useEditorSettings.js.map +1 -0
- package/dist/editor/menubar/ItemActionsMenu.js +2 -2
- package/dist/editor/menubar/ItemActionsMenu.js.map +1 -1
- package/dist/editor/menubar/PageSelector.js +1 -1
- package/dist/editor/menubar/PageSelector.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/EditControls.js +1 -1
- package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/InsertControls.js +1 -1
- package/dist/editor/menubar/toolbar-sections/InsertControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js +1 -1
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js +1 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js.map +1 -1
- package/dist/editor/page-editor-chrome/FieldEditedIndicators.js +4 -3
- package/dist/editor/page-editor-chrome/FieldEditedIndicators.js.map +1 -1
- package/dist/editor/page-editor-chrome/FrameMenu.js +9 -1
- package/dist/editor/page-editor-chrome/FrameMenu.js.map +1 -1
- package/dist/editor/page-editor-chrome/useInlineAICompletion.js +0 -1
- package/dist/editor/page-editor-chrome/useInlineAICompletion.js.map +1 -1
- package/dist/editor/page-viewer/EditorForm.js +1 -1
- package/dist/editor/page-viewer/EditorForm.js.map +1 -1
- package/dist/editor/page-viewer/PageViewer.js +9 -8
- package/dist/editor/page-viewer/PageViewer.js.map +1 -1
- package/dist/editor/page-viewer/PageViewerFrame.js +7 -1
- package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
- package/dist/editor/page-viewer/pageViewContext.js +40 -6
- package/dist/editor/page-viewer/pageViewContext.js.map +1 -1
- package/dist/editor/reviews/Comment.js +7 -6
- package/dist/editor/reviews/Comment.js.map +1 -1
- package/dist/editor/services/agentService.d.ts +84 -12
- package/dist/editor/services/agentService.js +256 -15
- package/dist/editor/services/agentService.js.map +1 -1
- package/dist/editor/services/aiService.d.ts +18 -3
- package/dist/editor/services/aiService.js +5 -3
- package/dist/editor/services/aiService.js.map +1 -1
- package/dist/editor/services/contextService.js +0 -1
- package/dist/editor/services/contextService.js.map +1 -1
- package/dist/editor/services/systemService.d.ts +2 -1
- package/dist/editor/services/systemService.js +3 -0
- package/dist/editor/services/systemService.js.map +1 -1
- package/dist/editor/sidebar/ComponentPalette.js +1 -1
- package/dist/editor/sidebar/ComponentPalette.js.map +1 -1
- package/dist/editor/sidebar/EditHistory.js +2 -2
- package/dist/editor/sidebar/EditHistory.js.map +1 -1
- package/dist/editor/sidebar/GraphQL.d.ts +1 -0
- package/dist/editor/sidebar/GraphQL.js +8 -2
- package/dist/editor/sidebar/GraphQL.js.map +1 -1
- package/dist/editor/sidebar/MainContentTree.js +1 -1
- package/dist/editor/sidebar/MainContentTree.js.map +1 -1
- package/dist/editor/sidebar/SEOInfo.js +1 -1
- package/dist/editor/sidebar/SEOInfo.js.map +1 -1
- package/dist/editor/sidebar/ViewSelector.d.ts +4 -1
- package/dist/editor/sidebar/ViewSelector.js +64 -48
- package/dist/editor/sidebar/ViewSelector.js.map +1 -1
- package/dist/editor/ui/PerfectTree.js +2 -11
- package/dist/editor/ui/PerfectTree.js.map +1 -1
- package/dist/editor/ui/SimpleIconButton.d.ts +2 -0
- package/dist/editor/ui/SimpleIconButton.js +8 -4
- package/dist/editor/ui/SimpleIconButton.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/page-wizard/steps/CollectStep.js +1 -1
- package/dist/page-wizard/steps/CollectStep.js.map +1 -1
- package/dist/page-wizard/steps/StructureStep.js +1 -1
- package/dist/page-wizard/steps/StructureStep.js.map +1 -1
- package/dist/page-wizard/steps/TranslateStep.js +233 -18
- package/dist/page-wizard/steps/TranslateStep.js.map +1 -1
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/splash-screen/RecentPages.js +1 -13
- package/dist/splash-screen/RecentPages.js.map +1 -1
- package/dist/splash-screen/SplashScreen.js +1 -1
- package/dist/splash-screen/SplashScreen.js.map +1 -1
- package/dist/styles.css +88 -3
- package/dist/types.d.ts +6 -0
- package/package.json +2 -2
- package/src/components/ActionButton.tsx +3 -2
- package/src/components/SimpleLanguageSelector.tsx +6 -1
- package/src/config/config.tsx +1 -1
- package/src/config/types.ts +1 -1
- package/src/editor/ContextMenu.tsx +0 -3
- package/src/editor/Editor.tsx +11 -3
- package/src/editor/FieldListField.tsx +22 -31
- package/src/editor/ImageEditButton.tsx +1 -0
- package/src/editor/ImageEditor.tsx +1 -0
- package/src/editor/MainLayout.tsx +2 -2
- package/src/editor/Terminal.tsx +1 -1
- package/src/editor/Titlebar.tsx +0 -2
- package/src/editor/ai/AgentCostDisplay.tsx +237 -0
- package/src/editor/ai/Agents.tsx +147 -65
- package/src/editor/ai/AiPromptPopover.tsx +209 -0
- package/src/editor/ai/AiResponseMessage.tsx +232 -45
- package/src/editor/ai/AiTerminal.tsx +559 -88
- package/src/editor/ai/EditorAiTerminal.tsx +3 -0
- package/src/editor/ai/editorAiContext.ts +0 -3
- package/src/editor/client/EditorClient.tsx +409 -117
- package/src/editor/client/editContext.ts +7 -5
- package/src/editor/client/fieldModificationStore.ts +196 -0
- package/src/editor/client/itemsRepository.ts +41 -31
- package/src/editor/client/operations.ts +95 -76
- package/src/editor/commands/componentCommands.tsx +9 -3
- package/src/editor/commands/itemCommands.tsx +0 -1
- package/src/editor/component-designer/aiContext.ts +0 -2
- package/src/editor/field-types/DropLinkEditor.tsx +1 -1
- package/src/editor/field-types/MultiLineText.tsx +9 -9
- package/src/editor/field-types/RichTextEditorComponent.tsx +8 -8
- package/src/editor/field-types/SingleLineText.tsx +9 -9
- package/src/editor/hooks/useEditorSettings.ts +68 -0
- package/src/editor/menubar/ItemActionsMenu.tsx +3 -2
- package/src/editor/menubar/PageSelector.tsx +1 -1
- package/src/editor/menubar/toolbar-sections/EditControls.tsx +1 -0
- package/src/editor/menubar/toolbar-sections/InsertControls.tsx +1 -0
- package/src/editor/menubar/toolbar-sections/UtilityControls.tsx +2 -0
- package/src/editor/menubar/toolbar-sections/ViewportControls.tsx +2 -0
- package/src/editor/page-editor-chrome/FieldEditedIndicators.tsx +4 -3
- package/src/editor/page-editor-chrome/FrameMenu.tsx +10 -1
- package/src/editor/page-editor-chrome/useInlineAICompletion.tsx +0 -1
- package/src/editor/page-viewer/EditorForm.tsx +1 -0
- package/src/editor/page-viewer/PageViewer.tsx +9 -8
- package/src/editor/page-viewer/PageViewerFrame.tsx +7 -1
- package/src/editor/page-viewer/pageViewContext.ts +40 -5
- package/src/editor/reviews/Comment.tsx +7 -7
- package/src/editor/services/agentService.ts +405 -31
- package/src/editor/services/aiService.ts +24 -5
- package/src/editor/services/contextService.ts +0 -1
- package/src/editor/services/systemService.ts +7 -1
- package/src/editor/sidebar/ComponentPalette.tsx +4 -1
- package/src/editor/sidebar/EditHistory.tsx +2 -0
- package/src/editor/sidebar/GraphQL.tsx +19 -7
- package/src/editor/sidebar/MainContentTree.tsx +1 -1
- package/src/editor/sidebar/SEOInfo.tsx +1 -1
- package/src/editor/sidebar/ViewSelector.tsx +80 -64
- package/src/editor/ui/PerfectTree.tsx +2 -18
- package/src/editor/ui/SimpleIconButton.tsx +56 -38
- package/src/index.ts +2 -0
- package/src/page-wizard/steps/CollectStep.tsx +0 -2
- package/src/page-wizard/steps/StructureStep.tsx +3 -0
- package/src/page-wizard/steps/TranslateStep.tsx +473 -62
- package/src/revision.ts +2 -2
- package/src/splash-screen/RecentPages.tsx +0 -14
- package/src/splash-screen/SplashScreen.tsx +3 -2
- package/src/types.ts +7 -0
- package/dist/editor/ai/AiPopup.d.ts +0 -10
- package/dist/editor/ai/AiPopup.js +0 -23
- package/dist/editor/ai/AiPopup.js.map +0 -1
- package/dist/editor/ai/AiToolCall.d.ts +0 -5
- package/dist/editor/ai/AiToolCall.js +0 -28
- package/dist/editor/ai/AiToolCall.js.map +0 -1
- package/src/editor/ai/AiPopup.tsx +0 -59
- package/src/editor/ai/AiToolCall.tsx +0 -71
|
@@ -1,8 +1,48 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState, useEffect } from "react";
|
|
3
|
+
import { JsonView, defaultStyles } from "react-json-view-lite";
|
|
4
|
+
import "react-json-view-lite/dist/index.css";
|
|
3
5
|
import { useEditContext } from "../client/editContext";
|
|
4
|
-
import { Popover, PopoverContent, PopoverTrigger } from "../../components/ui/popover";
|
|
6
|
+
import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/popover";
|
|
5
7
|
import { SimpleTabs } from "../ui/SimpleTabs";
|
|
8
|
+
import { Spinner } from "../ui/Spinner";
|
|
9
|
+
import { SimpleIconButton } from "../ui/SimpleIconButton";
|
|
10
|
+
import { X, FileText, Search, Code, FolderOpen, FileSearch, Trash2, Globe, Brain, CheckSquare, Edit, FileEdit, Wrench, } from "lucide-react";
|
|
11
|
+
// Function to get the appropriate icon for each tool
|
|
12
|
+
const getToolIcon = (toolName) => {
|
|
13
|
+
const iconMap = {
|
|
14
|
+
// Content operations
|
|
15
|
+
"get-content": _jsx(FileText, { strokeWidth: 1, size: 14 }),
|
|
16
|
+
"edit-field": _jsx(Edit, { strokeWidth: 1, size: 14 }),
|
|
17
|
+
"suggest-field-edit": _jsx(Edit, { strokeWidth: 1, size: 14 }),
|
|
18
|
+
// Item operations
|
|
19
|
+
"create-item": _jsx(FileEdit, { strokeWidth: 1, size: 14 }),
|
|
20
|
+
"load-item": _jsx(FileText, { strokeWidth: 1, size: 14 }),
|
|
21
|
+
"get-items": _jsx(FolderOpen, { strokeWidth: 1, size: 14 }),
|
|
22
|
+
"get-children": _jsx(FolderOpen, { strokeWidth: 1, size: 14 }),
|
|
23
|
+
"get-insertoptions": _jsx(FolderOpen, { strokeWidth: 1, size: 14 }),
|
|
24
|
+
// Component operations
|
|
25
|
+
"add-component": _jsx(Code, { strokeWidth: 1, size: 14 }),
|
|
26
|
+
"remove-component": _jsx(Trash2, { strokeWidth: 1, size: 14 }),
|
|
27
|
+
"move-components": _jsx(Edit, { strokeWidth: 1, size: 14 }),
|
|
28
|
+
"get-placeholders": _jsx(Code, { strokeWidth: 1, size: 14 }),
|
|
29
|
+
"get-component-props-and-placeholders": _jsx(Code, { strokeWidth: 1, size: 14 }),
|
|
30
|
+
// Search operations
|
|
31
|
+
"search-content": _jsx(Search, { strokeWidth: 1, size: 14 }),
|
|
32
|
+
"search-images": _jsx(FileSearch, { strokeWidth: 1, size: 14 }),
|
|
33
|
+
"google-search": _jsx(Globe, { strokeWidth: 1, size: 14 }),
|
|
34
|
+
// Image operations
|
|
35
|
+
"edit-image": _jsx(FileEdit, { strokeWidth: 1, size: 14 }),
|
|
36
|
+
"get-picture-description": _jsx(FileText, { strokeWidth: 1, size: 14 }),
|
|
37
|
+
// Comments and suggestions
|
|
38
|
+
"add-comment": _jsx(CheckSquare, { strokeWidth: 1, size: 14 }),
|
|
39
|
+
"get-comments": _jsx(CheckSquare, { strokeWidth: 1, size: 14 }),
|
|
40
|
+
"get-suggestions": _jsx(Brain, { strokeWidth: 1, size: 14 }),
|
|
41
|
+
// Default fallback
|
|
42
|
+
default: _jsx(Wrench, { strokeWidth: 1, size: 14 }),
|
|
43
|
+
};
|
|
44
|
+
return iconMap[toolName] || iconMap.default;
|
|
45
|
+
};
|
|
6
46
|
export function AiResponseMessage({ messages, finished, editOperations, }) {
|
|
7
47
|
const editContext = useEditContext();
|
|
8
48
|
if (!editContext)
|
|
@@ -11,6 +51,8 @@ export function AiResponseMessage({ messages, finished, editOperations, }) {
|
|
|
11
51
|
const [changesRejected, setChangesRejected] = useState(undefined);
|
|
12
52
|
// Store tool calls to preserve them during streaming
|
|
13
53
|
const [preservedToolCalls, setPreservedToolCalls] = useState({});
|
|
54
|
+
// Track popover open state for each tool call
|
|
55
|
+
const [openPopovers, setOpenPopovers] = useState({});
|
|
14
56
|
// Update preserved tool calls when messages change
|
|
15
57
|
useEffect(() => {
|
|
16
58
|
const newPreservedToolCalls = { ...preservedToolCalls };
|
|
@@ -28,12 +70,42 @@ export function AiResponseMessage({ messages, finished, editOperations, }) {
|
|
|
28
70
|
!editContext.editHistory[index]?.canUndo) === undefined;
|
|
29
71
|
// Helper function to render JSON or text
|
|
30
72
|
const renderJsonOrText = (json) => {
|
|
73
|
+
// If it's already an object, use it directly
|
|
74
|
+
if (typeof json === "object" && json !== null) {
|
|
75
|
+
return (_jsx("div", { className: "font-mono text-xs", style: { fontSize: "12px" }, children: _jsx(JsonView, { data: json, shouldExpandNode: (level) => level < 2, style: defaultStyles }) }));
|
|
76
|
+
}
|
|
77
|
+
// Convert to string if not already
|
|
78
|
+
const jsonString = typeof json === "string" ? json : String(json);
|
|
79
|
+
// Try to parse as JSON
|
|
31
80
|
try {
|
|
32
|
-
|
|
33
|
-
|
|
81
|
+
let parsed = JSON.parse(jsonString);
|
|
82
|
+
// If the result is still a string that looks like JSON, parse it again
|
|
83
|
+
if (typeof parsed === "string" &&
|
|
84
|
+
(parsed.startsWith("{") || parsed.startsWith("["))) {
|
|
85
|
+
try {
|
|
86
|
+
parsed = JSON.parse(parsed);
|
|
87
|
+
}
|
|
88
|
+
catch (e2) {
|
|
89
|
+
console.log("Second parse failed, using first result");
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return (_jsx("div", { className: "font-mono text-xs", style: { fontSize: "12px" }, children: _jsx(JsonView, { data: parsed, shouldExpandNode: (level) => level < 2, style: defaultStyles }) }));
|
|
34
93
|
}
|
|
35
94
|
catch (e) {
|
|
36
|
-
|
|
95
|
+
console.log("JSON parse failed:", e, "Trying to handle as string...");
|
|
96
|
+
// Try to handle double-escaped JSON
|
|
97
|
+
try {
|
|
98
|
+
const unescaped = jsonString
|
|
99
|
+
.replace(/\\"/g, '"')
|
|
100
|
+
.replace(/\\\\/g, "\\");
|
|
101
|
+
const parsed = JSON.parse(unescaped);
|
|
102
|
+
return (_jsx("div", { className: "font-mono text-xs", style: { fontSize: "12px" }, children: _jsx(JsonView, { data: parsed, shouldExpandNode: (level) => level < 2, style: defaultStyles }) }));
|
|
103
|
+
}
|
|
104
|
+
catch (e2) {
|
|
105
|
+
console.log("Unescaping also failed:", e2);
|
|
106
|
+
// If all parsing fails, display as plain text
|
|
107
|
+
return (_jsx("div", { className: "font-mono text-xs break-words whitespace-pre-wrap", children: jsonString }));
|
|
108
|
+
}
|
|
37
109
|
}
|
|
38
110
|
};
|
|
39
111
|
// Helper function to create tabs for a tool call
|
|
@@ -42,41 +114,55 @@ export function AiResponseMessage({ messages, finished, editOperations, }) {
|
|
|
42
114
|
{
|
|
43
115
|
id: `input-${toolCall.id}`,
|
|
44
116
|
label: "Input",
|
|
45
|
-
content: (
|
|
117
|
+
content: (_jsx("div", { className: "relative h-full w-full p-2", children: _jsx("div", { className: "absolute inset-2 overflow-auto", children: _jsx("div", { className: "text-xs", children: renderJsonOrText(toolCall.function.arguments) }) }) })),
|
|
46
118
|
},
|
|
47
119
|
];
|
|
48
120
|
if (result) {
|
|
49
121
|
tabs.push({
|
|
50
122
|
id: `output-${toolCall.id}`,
|
|
51
123
|
label: "Output",
|
|
52
|
-
content: (
|
|
124
|
+
content: (_jsx("div", { className: "relative h-full w-full p-2", children: _jsx("div", { className: "absolute inset-2 overflow-y-auto", children: _jsx("div", { className: "text-xs", children: renderJsonOrText(result || "") }) }) })),
|
|
53
125
|
});
|
|
54
126
|
}
|
|
55
127
|
return tabs;
|
|
56
128
|
};
|
|
57
129
|
// Helper function to create tool call popover content
|
|
58
|
-
const ToolCallPopover = ({ toolCall, result }) => {
|
|
130
|
+
const ToolCallPopover = ({ toolCall, result, onClose, }) => {
|
|
59
131
|
const [activeTab, setActiveTab] = useState(0);
|
|
60
|
-
const tabs = createToolCallTabs(toolCall, result);
|
|
61
|
-
return (_jsxs("div", { className: "
|
|
132
|
+
const tabs = createToolCallTabs(toolCall, result || "");
|
|
133
|
+
return (_jsxs("div", { className: "h-[400px]", children: [_jsxs("div", { className: "mb-3 flex items-center justify-between border-b border-gray-200 px-2 pb-1", children: [_jsxs("div", { className: "flex items-center gap-2 text-sm font-semibold text-gray-800", children: [getToolIcon(toolCall?.function?.name || ""), _jsx("span", { children: toolCall.displayName || toolCall.function.name })] }), _jsx(SimpleIconButton, { onClick: onClose, icon: _jsx(X, { strokeWidth: 1, size: 16 }), label: "Close", showTooltip: false, size: "small" })] }), _jsx(SimpleTabs, { tabs: tabs, activeTab: activeTab, setActiveTab: setActiveTab, className: "mb-3 border-b border-gray-200", tabClassName: "text-xs" })] }));
|
|
62
134
|
};
|
|
63
135
|
return (_jsxs("div", { children: [messages
|
|
64
|
-
.filter((x) => x.role !== "tool")
|
|
136
|
+
.filter((x) => x.role !== "tool" && x.role !== "user")
|
|
65
137
|
.map((message, filteredIndex) => {
|
|
66
138
|
// Find the original index of this message in the unfiltered array
|
|
67
|
-
const originalIndex = messages.findIndex(m => m.id === message.id);
|
|
139
|
+
const originalIndex = messages.findIndex((m) => m.id === message.id);
|
|
68
140
|
// Use preserved tool calls if current message has empty tool calls
|
|
69
|
-
const toolCalls =
|
|
141
|
+
const toolCalls = message.tool_calls && message.tool_calls.length > 0
|
|
70
142
|
? message.tool_calls
|
|
71
|
-
:
|
|
72
|
-
return (_jsxs("div", { children: [_jsx("div", { dangerouslySetInnerHTML: {
|
|
143
|
+
: preservedToolCalls[originalIndex] || [];
|
|
144
|
+
return (_jsxs("div", { className: toolCalls.length > 0 ? "mb-2" : "", children: [_jsx("div", { dangerouslySetInnerHTML: {
|
|
73
145
|
__html: message.formattedContent || message.content || "",
|
|
74
|
-
} }), toolCalls.length > 0 && (_jsx("div", { className: "mt-2 flex flex-
|
|
75
|
-
|
|
146
|
+
} }), toolCalls.length > 0 && (_jsx("div", { className: "mt-2 flex flex-col gap-2", children: toolCalls.map((toolCall, toolIndex) => {
|
|
147
|
+
const toolResult = toolCall.function.result;
|
|
148
|
+
const popoverKey = `${originalIndex}-${toolIndex}`;
|
|
149
|
+
return (_jsxs(Popover, { enableIframeClickDetection: false, open: openPopovers[popoverKey] || false, onOpenChange: (open) => {
|
|
150
|
+
setOpenPopovers((prev) => ({
|
|
151
|
+
...prev,
|
|
152
|
+
[popoverKey]: open,
|
|
153
|
+
}));
|
|
154
|
+
}, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs("div", { className: "inline-flex cursor-pointer items-center gap-1 text-xs text-gray-500 hover:text-gray-700", children: [toolResult ? (_jsx("div", { className: "flex items-center", children: getToolIcon(toolCall?.function?.name || "") })) : finished ? (_jsx("div", { className: "flex items-center opacity-50", children: getToolIcon(toolCall?.function?.name || "") })) : (_jsx(Spinner, { size: "xs" })), _jsx("span", { children: toolCall?.displayName ||
|
|
155
|
+
toolCall?.function?.name ||
|
|
156
|
+
"tool call" })] }) }), _jsx(PopoverContent, { className: "w-[400px] p-3", align: "start", side: "bottom", sideOffset: 8, onMouseDown: (e) => e.stopPropagation(), onClick: (e) => e.stopPropagation(), children: _jsx(ToolCallPopover, { toolCall: toolCall, result: toolResult, onClose: () => {
|
|
157
|
+
setOpenPopovers((prev) => ({
|
|
158
|
+
...prev,
|
|
159
|
+
[popoverKey]: false,
|
|
160
|
+
}));
|
|
161
|
+
} }) })] }, toolIndex));
|
|
76
162
|
}) }))] }, filteredIndex));
|
|
77
163
|
}), finished && editOperations.length > 0 && (_jsxs("div", { className: "my-2 flex items-center gap-2", children: [_jsxs("div", { className: "tour-ai-response-message-changes text-xs", children: [editOperations.length, " changes"] }), canReject && !changesRejected && (_jsxs("div", { className: "flex cursor-pointer items-center gap-1 text-xs text-red-500", onClick: async () => {
|
|
78
164
|
await editContext?.operations.undo(editOperations.length);
|
|
79
165
|
setChangesRejected(true);
|
|
80
|
-
}, children: [_jsx(
|
|
166
|
+
}, children: [_jsx(X, { strokeWidth: 1, size: 14 }), " Reject"] })), changesRejected && (_jsx("div", { className: "text-xs text-red-500", children: "rejected" }))] }))] }));
|
|
81
167
|
}
|
|
82
168
|
//# sourceMappingURL=AiResponseMessage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AiResponseMessage.js","sourceRoot":"","sources":["../../../src/editor/ai/AiResponseMessage.tsx"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"AiResponseMessage.js","sourceRoot":"","sources":["../../../src/editor/ai/AiResponseMessage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,14 @@ type Response = {
|
|
|
6
6
|
numOutputTokens: number;
|
|
7
7
|
numCachedTokens: number;
|
|
8
8
|
state: string;
|
|
9
|
+
agentName?: string;
|
|
10
|
+
totalCost?: number;
|
|
11
|
+
totalInputTokenCost?: number;
|
|
12
|
+
totalOutputTokenCost?: number;
|
|
13
|
+
totalCachedTokenCost?: number;
|
|
14
|
+
totalInputTokens?: number;
|
|
15
|
+
totalOutputTokens?: number;
|
|
16
|
+
totalCachedTokens?: number;
|
|
9
17
|
};
|
|
10
18
|
export type ToolCall = {
|
|
11
19
|
id: string;
|
|
@@ -26,20 +34,28 @@ export type Message = {
|
|
|
26
34
|
};
|
|
27
35
|
export type AiContext = {
|
|
28
36
|
promptData: any;
|
|
29
|
-
endpoint: string;
|
|
30
37
|
callback?: (response: Response) => void;
|
|
31
38
|
};
|
|
32
39
|
export type AiTerminalOptions = {
|
|
33
40
|
initialPrompt?: string;
|
|
34
41
|
hiddenSystemPrompt?: string;
|
|
35
42
|
initialMessages?: Message[];
|
|
43
|
+
agentId?: string;
|
|
44
|
+
totalCost?: number;
|
|
45
|
+
totalInputTokenCost?: number;
|
|
46
|
+
totalOutputTokenCost?: number;
|
|
47
|
+
totalCachedTokenCost?: number;
|
|
48
|
+
totalInputTokens?: number;
|
|
49
|
+
totalOutputTokens?: number;
|
|
50
|
+
totalCachedTokens?: number;
|
|
36
51
|
};
|
|
37
|
-
export declare function AiTerminal({ closeButton, createAiContext, defaultProfile, options, }: {
|
|
52
|
+
export declare function AiTerminal({ closeButton, createAiContext, defaultProfile, options, onAgentNameUpdate, }: {
|
|
38
53
|
closeButton?: React.ReactNode;
|
|
39
54
|
createAiContext: ({ editContext }: {
|
|
40
55
|
editContext: any;
|
|
41
56
|
}) => AiContext;
|
|
42
57
|
defaultProfile?: string;
|
|
43
58
|
options?: AiTerminalOptions;
|
|
59
|
+
onAgentNameUpdate?: (name: string) => void;
|
|
44
60
|
}): import("react/jsx-runtime").JSX.Element | null;
|
|
45
61
|
export {};
|