@parhelia/core 0.1.11007 → 0.1.11014
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/ui/PlaceholderInput.d.ts +3 -1
- package/dist/components/ui/PlaceholderInput.js +11 -6
- package/dist/components/ui/PlaceholderInput.js.map +1 -1
- package/dist/components/ui/PlaceholderItemSelector.js +4 -4
- package/dist/components/ui/PlaceholderItemSelector.js.map +1 -1
- package/dist/editor/PictureEditor.d.ts +2 -1
- package/dist/editor/PictureEditor.js +5 -1
- package/dist/editor/PictureEditor.js.map +1 -1
- package/dist/editor/ai/AgentDocumentList.js +1 -1
- package/dist/editor/ai/AgentDocumentList.js.map +1 -1
- package/dist/editor/ai/AgentTerminal.js +44 -18
- package/dist/editor/ai/AgentTerminal.js.map +1 -1
- package/dist/editor/ai/ToolCallDisplay.d.ts +3 -0
- package/dist/editor/ai/ToolCallDisplay.js +18 -10
- package/dist/editor/ai/ToolCallDisplay.js.map +1 -1
- package/dist/editor/ai/types.d.ts +3 -0
- package/dist/editor/control-center/ControlCenterMenu.js +8 -1
- package/dist/editor/control-center/ControlCenterMenu.js.map +1 -1
- package/dist/editor/control-center/IndexOverview.js +214 -130
- package/dist/editor/control-center/IndexOverview.js.map +1 -1
- package/dist/editor/control-center/Setup.js +38 -5
- package/dist/editor/control-center/Setup.js.map +1 -1
- package/dist/editor/control-center/Status.js +8 -1
- package/dist/editor/control-center/Status.js.map +1 -1
- package/dist/editor/control-center/setup-steps/SetupOverview.d.ts +1 -1
- package/dist/editor/control-center/setup-steps/SetupOverview.js +1 -1
- package/dist/editor/media-selector/TreeSelector.js +1 -1
- package/dist/editor/media-selector/TreeSelector.js.map +1 -1
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js +10 -1
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js.map +1 -1
- package/dist/editor/services/indexService.d.ts +1 -0
- package/dist/editor/services/indexService.js +3 -0
- package/dist/editor/services/indexService.js.map +1 -1
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/splash-screen/ParheliaAssistantChat.js +1 -1
- package/dist/splash-screen/ParheliaAssistantChat.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/package.json +1 -1
|
@@ -36,6 +36,8 @@ type PlaceholderInputProps = {
|
|
|
36
36
|
onCancel?: () => void;
|
|
37
37
|
className?: string;
|
|
38
38
|
showButtons?: boolean;
|
|
39
|
+
buttonsClassName?: string;
|
|
40
|
+
onFilledChange?: (allFilled: boolean) => void;
|
|
39
41
|
};
|
|
40
|
-
export declare function PlaceholderInput({ text, onComplete, onCancel, className, showButtons, }: PlaceholderInputProps): import("react/jsx-runtime").JSX.Element;
|
|
42
|
+
export declare function PlaceholderInput({ text, onComplete, onCancel, className, showButtons, buttonsClassName, onFilledChange, }: PlaceholderInputProps): import("react/jsx-runtime").JSX.Element;
|
|
41
43
|
export {};
|
|
@@ -45,7 +45,7 @@ function parsePlaceholders(text) {
|
|
|
45
45
|
}
|
|
46
46
|
return placeholders;
|
|
47
47
|
}
|
|
48
|
-
export function PlaceholderInput({ text, onComplete, onCancel, className, showButtons = true, }) {
|
|
48
|
+
export function PlaceholderInput({ text, onComplete, onCancel, className, showButtons = true, buttonsClassName, onFilledChange, }) {
|
|
49
49
|
const placeholders = parsePlaceholders(text);
|
|
50
50
|
const [values, setValues] = React.useState({});
|
|
51
51
|
// Create refs for each placeholder using useRef to avoid the null issue
|
|
@@ -59,6 +59,15 @@ export function PlaceholderInput({ text, onComplete, onCancel, className, showBu
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
}, [placeholders.length]);
|
|
62
|
+
// Check if all placeholders are filled
|
|
63
|
+
const allFilled = placeholders.every((_, idx) => {
|
|
64
|
+
const value = values[idx];
|
|
65
|
+
return value !== undefined && value.trim() !== "";
|
|
66
|
+
});
|
|
67
|
+
// Notify parent when filled state changes
|
|
68
|
+
React.useEffect(() => {
|
|
69
|
+
onFilledChange?.(allFilled);
|
|
70
|
+
}, [allFilled, onFilledChange]);
|
|
62
71
|
const handleValueChange = (index, value) => {
|
|
63
72
|
setValues((prev) => ({ ...prev, [index]: value }));
|
|
64
73
|
};
|
|
@@ -151,10 +160,6 @@ export function PlaceholderInput({ text, onComplete, onCancel, className, showBu
|
|
|
151
160
|
if (lastPos < text.length) {
|
|
152
161
|
segments.push(_jsx("span", { className: "whitespace-pre-wrap", children: text.substring(lastPos) }, "text-end"));
|
|
153
162
|
}
|
|
154
|
-
|
|
155
|
-
const value = values[idx];
|
|
156
|
-
return value !== undefined && value.trim() !== "";
|
|
157
|
-
});
|
|
158
|
-
return (_jsxs("div", { className: cn("space-y-2", className), children: [_jsxs("div", { className: cn("relative flex flex-wrap items-baseline gap-1 rounded-lg border border-blue-200 bg-blue-50/50 p-3 text-xs h-[80px] overflow-y-auto", onCancel && "pr-8"), children: [segments, onCancel && (_jsx("button", { onClick: onCancel, className: "absolute right-2 top-2 rounded p-0.5 text-gray-400 hover:bg-blue-100 hover:text-gray-600 transition-colors", title: "Cancel (Esc)", "aria-label": "Cancel", children: _jsx(X, { size: 14, strokeWidth: 2 }) }))] }), showButtons && (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Button, { size: "sm", onClick: handleSubmit, disabled: !allFilled, className: "h-7", children: "Submit" }), onCancel && (_jsx(Button, { size: "sm", variant: "ghost", onClick: onCancel, className: "h-7", children: "Cancel" })), !allFilled && (_jsx("span", { className: "text-xs text-gray-500", children: "Fill all fields (use Tab to navigate)" }))] }))] }));
|
|
163
|
+
return (_jsxs("div", { className: cn("space-y-2", className), children: [_jsxs("div", { className: cn("relative flex h-[80px] flex-wrap items-baseline gap-1 overflow-y-auto rounded-lg border border-blue-200 bg-blue-50/50 p-3 text-xs", onCancel && "pr-8"), children: [segments, onCancel && (_jsx("button", { onClick: onCancel, className: "absolute top-2 right-2 rounded p-0.5 text-gray-400 transition-colors hover:bg-blue-100 hover:text-gray-600", title: "Cancel (Esc)", "aria-label": "Cancel", children: _jsx(X, { size: 14, strokeWidth: 2 }) }))] }), showButtons && (_jsxs("div", { className: cn("flex items-center gap-2", buttonsClassName), children: [_jsx(Button, { size: "sm", onClick: handleSubmit, disabled: !allFilled, className: "h-7", children: "Submit" }), onCancel && (_jsx(Button, { size: "sm", variant: "ghost", onClick: onCancel, className: "h-7", children: "Cancel" })), !allFilled && (_jsx("span", { className: "text-xs text-gray-500", children: "Fill all fields (use Tab to navigate)" }))] }))] }));
|
|
159
164
|
}
|
|
160
165
|
//# sourceMappingURL=PlaceholderInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlaceholderInput.js","sourceRoot":"","sources":["../../../src/components/ui/PlaceholderInput.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"PlaceholderInput.js","sourceRoot":"","sources":["../../../src/components/ui/PlaceholderInput.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AA8CvE,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,YAAY,GAAkB,EAAE,CAAC;IACvC,qDAAqD;IACrD,MAAM,KAAK,GAAG,wBAAwB,CAAC;IACvC,IAAI,KAAK,CAAC;IACV,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3C,+DAA+D;QAC/D,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,kBAAkB,EAAE,CAAC;YACvB,4DAA4D;YAC5D,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,yBAAyB;YAElE,4DAA4D;YAC5D,MAAM,UAAU,GAA2B,EAAE,CAAC;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACpC,IAAI,CAAC,IAAI;oBAAE,SAAS;gBACpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;oBACnB,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBACjD,IAAI,GAAG,EAAE,CAAC;wBACR,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,YAAY,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAE,KAAK;gBACX,IAAI;gBACJ,UAAU;gBACV,KAAK,EAAE,KAAK,EAAE;gBACd,QAAQ,EAAE,KAAK,CAAC,KAAK;gBACrB,MAAM,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM;aACtC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,SAAS,EACT,WAAW,GAAG,IAAI,EAClB,gBAAgB,EAChB,cAAc,GACQ;IACtB,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAA4B,EAAE,CAAC,CAAC;IAE1E,wEAAwE;IACxE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAE3B,EAAE,CAAC,CAAC;IAEP,wCAAwC;IACxC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACxC,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,uCAAuC;IACvC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,0CAA0C;IAC1C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,cAAc,EAAE,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;IAEhC,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,KAAa,EAAE,EAAE;QACzD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,CAAsB,EAAE,KAAa,EAAE,EAAE;QAC9D,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;YACpB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACf,6DAA6D;gBAC7D,MAAM,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;gBAC5B,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;oBACnB,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,2BAA2B;oBAC3B,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;gBACtD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,mDAAmD;gBACnD,MAAM,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;gBAC5B,IAAI,SAAS,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;oBACpC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,4BAA4B;oBAC5B,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;YAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,QAAQ,EAAE,EAAE,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,8DAA8D;QAC9D,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,yDAAyD;QACzD,KAAK,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,WAAW;gBAAE,SAAS;YAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAE9B,4DAA4D;YAC5D,IAAI,cAAc,GAAG,KAAK,CAAC;YAE3B,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvD,qCAAqC;gBACrC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/B,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBACzC,iDAAiD;gBACjD,cAAc,GAAG,IAAI,EAAE,MAAM,IAAI,GAAG,CAAC;YACvC,CAAC;YAED,UAAU;gBACR,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC;oBAC7C,cAAc;oBACd,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;QACD,UAAU,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,qCAAqC;QACrC,OAAO,cAAK,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,YAAG,IAAI,GAAO,CAAC;IAChE,CAAC;IAED,8CAA8C;IAC9C,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE;QACxC,mCAAmC;QACnC,IAAI,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,CAAC;YACnC,QAAQ,CAAC,IAAI,CACX,eAA0B,SAAS,EAAC,qBAAqB,YACtD,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,IADrC,QAAQ,GAAG,EAAE,CAEjB,CACR,CAAC;QACJ,CAAC;QAED,iCAAiC;QACjC,kDAAkD;QAClD,MAAM,UAAU,GAAG,4BAA4B,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtE,MAAM,cAAc,GAAG,UAAU,EAAE,SAAS,CAAC;QAE7C,IAAI,cAAc,EAAE,CAAC;YACnB,QAAQ,CAAC,IAAI,CACX,KAAC,cAAc,IAEb,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,KAAK,CAAC,EAClD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,EACvC,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE;oBACf,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC9B,CAAC,EACD,SAAS,EAAE,GAAG,KAAK,CAAC,IARf,SAAS,GAAG,EAAE,CASnB,CACH,CAAC;QACJ,CAAC;QAED,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,4CAA4C;IAC5C,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CACX,eAAqB,SAAS,EAAC,qBAAqB,YACjD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IADhB,UAAU,CAEb,CACR,CAAC;IACJ,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,aACxC,eACE,SAAS,EAAE,EAAE,CACX,mIAAmI,EACnI,QAAQ,IAAI,MAAM,CACnB,aAEA,QAAQ,EACR,QAAQ,IAAI,CACX,iBACE,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAC,4GAA4G,EACtH,KAAK,EAAC,cAAc,gBACT,QAAQ,YAEnB,KAAC,CAAC,IAAC,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,GAAI,GACxB,CACV,IACG,EACL,WAAW,IAAI,CACd,eAAK,SAAS,EAAE,EAAE,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,aAC7D,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,CAAC,SAAS,EACpB,SAAS,EAAC,KAAK,uBAGR,EACR,QAAQ,IAAI,CACX,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAC,KAAK,uBAGR,CACV,EACA,CAAC,SAAS,IAAI,CACb,eAAM,SAAS,EAAC,uBAAuB,sDAEhC,CACR,IACG,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -11,7 +11,7 @@ import { Splitter } from "../../editor/ui/Splitter";
|
|
|
11
11
|
* Item selector component for placeholder inputs
|
|
12
12
|
* Allows selecting a Sitecore item via search or tree browsing
|
|
13
13
|
*/
|
|
14
|
-
export const PlaceholderItemSelector = ({ placeholder, value, onChange, onKeyDown, inputRef, autoFocus
|
|
14
|
+
export const PlaceholderItemSelector = ({ placeholder, value, onChange, onKeyDown, inputRef, autoFocus }) => {
|
|
15
15
|
const [isOpen, setIsOpen] = React.useState(false);
|
|
16
16
|
const [selectedItem, setSelectedItem] = React.useState(null);
|
|
17
17
|
const [rootItemId, setRootItemId] = React.useState(null);
|
|
@@ -124,13 +124,13 @@ export const PlaceholderItemSelector = ({ placeholder, value, onChange, onKeyDow
|
|
|
124
124
|
const displayValue = selectedItem ? selectedItem.path : "";
|
|
125
125
|
// Don't render until root is resolved
|
|
126
126
|
if (isLoadingRoot || !rootItemId) {
|
|
127
|
-
return (_jsx("div", { ref: inputRef, className: "inline-flex
|
|
127
|
+
return (_jsx("div", { ref: inputRef, className: "inline-flex max-w-[300px] min-w-[150px] items-center gap-1 rounded border border-gray-300 bg-gray-50 px-2 py-0.5 text-xs", children: _jsx("span", { className: "flex-1 text-gray-400", children: "Loading..." }) }));
|
|
128
128
|
}
|
|
129
|
-
return (_jsxs(Popover, { open: isOpen, onOpenChange: setIsOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx("div", { ref: inputRef, tabIndex: 0, onKeyDown: onKeyDown, className: cn("inline-flex
|
|
129
|
+
return (_jsxs(Popover, { open: isOpen, onOpenChange: setIsOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx("div", { ref: inputRef, tabIndex: 0, onKeyDown: onKeyDown, className: cn("inline-flex max-w-[300px] min-w-[150px] cursor-pointer items-center gap-1 rounded border border-blue-400 bg-blue-50 px-2 py-0.5 text-xs transition-all outline-none", "hover:border-blue-500 hover:bg-blue-100", "focus:border-blue-600 focus:bg-blue-100 focus:ring-2 focus:ring-blue-500/30"), children: selectedItem ? (_jsxs(_Fragment, { children: [selectedItem.icon && (_jsx("img", { src: selectedItem.icon, alt: "", className: "h-3 w-3 flex-shrink-0" })), _jsx("span", { className: "flex-1 truncate", children: displayValue }), _jsx("button", { onClick: handleClear, className: "rounded p-0.5 hover:bg-blue-200", title: "Clear selection", children: _jsx(X, { size: 12 }) })] })) : (_jsxs(_Fragment, { children: [_jsx("span", { className: "flex-1 text-blue-400", children: placeholder.name }), _jsx(ChevronDown, { size: 12, className: "text-blue-400" })] })) }) }), _jsx(PopoverContent, { className: "w-[700px] p-0", align: "start", onOpenAutoFocus: (e) => e.preventDefault(), children: _jsx("div", { className: "flex h-[450px]", children: _jsx(Splitter, { direction: "horizontal", localStorageKey: "placeholder-item-selector-split", panels: [
|
|
130
130
|
{
|
|
131
131
|
name: "tree",
|
|
132
132
|
defaultSize: 300,
|
|
133
|
-
content: (_jsx("div", { className: "h-full overflow-auto border-r border-gray-200 p-2", children: _jsx(ContentTree, { rootItemIds: [rootItemId], selectionMode: "single", selectedItemIds: selectedItem ? [selectedItem.id] : [], onSelectionChange: (selection) => {
|
|
133
|
+
content: (_jsx("div", { className: "h-full overflow-auto border-r border-gray-200 p-2", children: _jsx(ContentTree, { hideRootNodes: true, rootItemIds: [rootItemId], selectionMode: "single", selectedItemIds: selectedItem ? [selectedItem.id] : [], onSelectionChange: (selection) => {
|
|
134
134
|
const node = selection[0];
|
|
135
135
|
if (node) {
|
|
136
136
|
handleItemSelected({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlaceholderItemSelector.js","sourceRoot":"","sources":["../../../src/components/ui/PlaceholderItemSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,UAAU,EAAc,MAAM,4BAA4B,CAAC;AACpE,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,
|
|
1
|
+
{"version":3,"file":"PlaceholderItemSelector.js","sourceRoot":"","sources":["../../../src/components/ui/PlaceholderItemSelector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { PictureField } from "./fieldTypes";
|
|
2
|
-
export declare function PictureEditor({ field, variantName, style, forwardScrollevents, isPageEditor, onContextMenu, }: {
|
|
2
|
+
export declare function PictureEditor({ field, variantName, style, forwardScrollevents, isPageEditor, onContextMenu, onDialogOpenChange, }: {
|
|
3
3
|
field: PictureField;
|
|
4
4
|
variantName: string;
|
|
5
5
|
style?: React.CSSProperties;
|
|
6
6
|
forwardScrollevents?: boolean;
|
|
7
7
|
isPageEditor?: boolean;
|
|
8
8
|
onContextMenu?: (e: React.MouseEvent<HTMLDivElement>) => void;
|
|
9
|
+
onDialogOpenChange?: (open: boolean) => void;
|
|
9
10
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -7,12 +7,16 @@ import { FieldActionsOverlay, } from "./FieldActionsOverlay";
|
|
|
7
7
|
import { ImageEditButton } from "./ImageEditButton";
|
|
8
8
|
import { MagicEditImageIcon } from "./ui/Icons";
|
|
9
9
|
import { Settings, Zap } from "lucide-react";
|
|
10
|
-
export function PictureEditor({ field, variantName, style, forwardScrollevents, isPageEditor, onContextMenu, }) {
|
|
10
|
+
export function PictureEditor({ field, variantName, style, forwardScrollevents, isPageEditor, onContextMenu, onDialogOpenChange, }) {
|
|
11
11
|
const [showCropper, setShowCropper] = useState(false);
|
|
12
12
|
const [fieldButtons, setFieldButtons] = useState([]);
|
|
13
13
|
const [variantButtons, setVariantButtons] = useState([]);
|
|
14
14
|
const fieldActionsOverlay = useRef(null);
|
|
15
15
|
const editContext = useEditContext();
|
|
16
|
+
// Notify parent when dialog (cropper) opens/closes
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
onDialogOpenChange?.(showCropper);
|
|
19
|
+
}, [showCropper, onDialogOpenChange]);
|
|
16
20
|
// Load field buttons when component mounts
|
|
17
21
|
useEffect(() => {
|
|
18
22
|
const loadButtons = async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PictureEditor.js","sourceRoot":"","sources":["../../src/editor/PictureEditor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EACL,mBAAmB,GAEpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAc,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,UAAU,aAAa,CAAC,EAC5B,KAAK,EACL,WAAW,EACX,KAAK,EACL,mBAAmB,EACnB,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"PictureEditor.js","sourceRoot":"","sources":["../../src/editor/PictureEditor.tsx"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export function AgentDocumentList({ agentId, maxFileSizeMB = 10, enabled = true,
|
|
|
10
10
|
const [uploading, setUploading] = useState(false);
|
|
11
11
|
const [isDragOver, setIsDragOver] = useState(false);
|
|
12
12
|
const [error, setError] = useState(null);
|
|
13
|
-
const [isExpanded, setIsExpanded] = useState(
|
|
13
|
+
const [isExpanded, setIsExpanded] = useState(false);
|
|
14
14
|
const [viewingDocument, setViewingDocument] = useState(null);
|
|
15
15
|
// Track the last agentId we loaded documents for
|
|
16
16
|
const lastLoadedAgentIdRef = useRef(null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentDocumentList.js","sourceRoot":"","sources":["../../../src/editor/ai/AgentDocumentList.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAK,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAEL,iBAAiB,EACjB,cAAc,EACd,cAAc,GACf,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,WAAW,EACX,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AASpC,MAAM,UAAU,iBAAiB,CAAC,EAChC,OAAO,EACP,aAAa,GAAG,EAAE,EAClB,OAAO,GAAG,IAAI,EACd,SAAS,GACc;IACvB,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAkB,EAAE,CAAC,CAAC;IAChE,gFAAgF;IAChF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"AgentDocumentList.js","sourceRoot":"","sources":["../../../src/editor/ai/AgentDocumentList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import React, { useEffect, useState, useRef, useCallback, useLayoutEffect, ViewTransition, } from "react";
|
|
3
3
|
import { Send, AlertCircle, Loader2, User, Wand2, Square, Mic, MicOff, ChevronDown, ChevronUp, ListTodo, ExternalLink, } from "lucide-react";
|
|
4
|
-
import { DancingDots } from "./DancingDots";
|
|
5
4
|
import { getAgent, startAgent, updateAgentSettings, updateAgentCostLimit, updateAgentContext, cancelAgent, canonicalizeAgentMetadata, getPendingPrompts, } from "../services/agentService";
|
|
6
5
|
import { useEditContext, useFieldsEditContext } from "../client/editContext";
|
|
7
6
|
import { Textarea } from "../../components/ui/textarea";
|
|
@@ -484,6 +483,11 @@ const convertAgentMessagesToAiFormat = (agentMessages) => {
|
|
|
484
483
|
},
|
|
485
484
|
// Pass through approval info if present on the tool call
|
|
486
485
|
requiresApproval: toolCall.requiresApproval,
|
|
486
|
+
// Pass through isCompleted so ToolCallDisplay knows when to hide spinner
|
|
487
|
+
isCompleted: toolCall.isCompleted,
|
|
488
|
+
// Pass through message IDs for approval/rejection events
|
|
489
|
+
messageId: toolCall.messageId,
|
|
490
|
+
dbMessageId: toolCall.dbMessageId,
|
|
487
491
|
}))
|
|
488
492
|
: [],
|
|
489
493
|
};
|
|
@@ -507,6 +511,7 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
507
511
|
const [isConnecting, setIsConnecting] = useState(false);
|
|
508
512
|
const [isSubmitting, setIsSubmitting] = useState(false);
|
|
509
513
|
const [activePlaceholderInput, setActivePlaceholderInput] = useState(null);
|
|
514
|
+
const [allPlaceholdersFilled, setAllPlaceholdersFilled] = useState(false);
|
|
510
515
|
const [agentMetadata, setAgentMetadata] = useState(null);
|
|
511
516
|
// Generate a stable clientSessionId per component instance for stream deduplication
|
|
512
517
|
const clientSessionIdRef = useRef(null);
|
|
@@ -546,17 +551,12 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
546
551
|
const waiting = isWaitingRef.current;
|
|
547
552
|
const streaming = hasActiveStreaming();
|
|
548
553
|
const pendingApprovals = hasPendingApprovals();
|
|
549
|
-
// Check if agent is waiting for approval
|
|
550
|
-
const currentAgent = agentRef.current;
|
|
551
|
-
const isWaitingForApproval = currentAgent?.status === "waitingForApproval" ||
|
|
552
|
-
currentAgent?.status === 2;
|
|
553
554
|
// Don't show dots if there are pending approvals (waiting for user action)
|
|
554
|
-
// or if the agent status is waitingForApproval
|
|
555
555
|
if (!waiting && !streaming) {
|
|
556
556
|
setShowDots(false);
|
|
557
557
|
return;
|
|
558
558
|
}
|
|
559
|
-
if (pendingApprovals
|
|
559
|
+
if (pendingApprovals) {
|
|
560
560
|
setShowDots(false);
|
|
561
561
|
return;
|
|
562
562
|
}
|
|
@@ -567,12 +567,7 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
567
567
|
const stillWaiting = isWaitingRef.current;
|
|
568
568
|
const stillStreaming = hasActiveStreaming();
|
|
569
569
|
const stillPendingApprovals = hasPendingApprovals();
|
|
570
|
-
|
|
571
|
-
const stillWaitingForApproval = stillCurrentAgent?.status === "waitingForApproval" ||
|
|
572
|
-
stillCurrentAgent?.status === 2;
|
|
573
|
-
setShowDots((stillWaiting || stillStreaming) &&
|
|
574
|
-
!stillPendingApprovals &&
|
|
575
|
-
!stillWaitingForApproval);
|
|
570
|
+
setShowDots((stillWaiting || stillStreaming) && !stillPendingApprovals);
|
|
576
571
|
}, 100);
|
|
577
572
|
}, [hasActiveStreaming, hasPendingApprovals]);
|
|
578
573
|
const [resolvedPageName, setResolvedPageName] = useState(undefined);
|
|
@@ -1243,6 +1238,20 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
1243
1238
|
messagesRef.current = updated;
|
|
1244
1239
|
return updated;
|
|
1245
1240
|
});
|
|
1241
|
+
// After approval/rejection, check if there are any remaining pending approvals
|
|
1242
|
+
// Only set waiting state if all approvals have been resolved
|
|
1243
|
+
const stillHasPendingApprovals = messagesRef.current.some((m) => (m.toolCalls || []).some((tc) => {
|
|
1244
|
+
const hasApprovalMetadata = !!tc.requiresApproval && tc.isCompleted === false;
|
|
1245
|
+
const hasPendingSuffix = (tc.functionName || "").includes("(pending approval)");
|
|
1246
|
+
return hasApprovalMetadata || hasPendingSuffix;
|
|
1247
|
+
}));
|
|
1248
|
+
if (!stillHasPendingApprovals) {
|
|
1249
|
+
// All approvals resolved - agent will continue processing
|
|
1250
|
+
// Set waiting state and show dots to indicate ongoing activity
|
|
1251
|
+
setIsWaitingForResponse(true);
|
|
1252
|
+
isWaitingRef.current = true;
|
|
1253
|
+
resetDotsTimer();
|
|
1254
|
+
}
|
|
1246
1255
|
}
|
|
1247
1256
|
catch (err) {
|
|
1248
1257
|
console.error("❌ Error handling approval resolution:", err);
|
|
@@ -1250,7 +1259,7 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
1250
1259
|
};
|
|
1251
1260
|
window.addEventListener("agent:toolApprovalResolved", onApprovalResolved);
|
|
1252
1261
|
return () => window.removeEventListener("agent:toolApprovalResolved", onApprovalResolved);
|
|
1253
|
-
}, []);
|
|
1262
|
+
}, [resetDotsTimer]);
|
|
1254
1263
|
// Load agent data and messages
|
|
1255
1264
|
const loadAgent = useCallback(async () => {
|
|
1256
1265
|
try {
|
|
@@ -2799,10 +2808,14 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
2799
2808
|
sendQuickMessage(text);
|
|
2800
2809
|
} }, groupIndex));
|
|
2801
2810
|
}
|
|
2802
|
-
}) }), messages.length > 0 &&
|
|
2811
|
+
}) }), messages.length > 0 && !hasActiveStreaming() && (_jsx("div", { className: showDots ? "visible" : "invisible", children: _jsxs("div", { className: "flex gap-3 p-4", children: [_jsx("div", { className: "flex-shrink-0", children: activeProfile?.svgIcon ? (_jsx("div", { className: "flex h-6 w-6 items-center justify-center text-gray-500 [&>svg]:h-full [&>svg]:w-full", dangerouslySetInnerHTML: {
|
|
2812
|
+
__html: activeProfile.svgIcon,
|
|
2813
|
+
} })) : (_jsx(SecretAgentIcon, { size: 24, strokeWidth: 1, className: "text-gray-500" })) }), _jsx("div", { className: "flex min-w-0 flex-1 items-center", children: _jsxs("div", { className: "flex items-center gap-1", children: [_jsx("div", { className: "h-1 w-1 animate-bounce rounded-full bg-gray-400 [animation-delay:-0.3s]" }), _jsx("div", { className: "h-1 w-1 animate-bounce rounded-full bg-gray-400 [animation-delay:-0.15s]" }), _jsx("div", { className: "h-1 w-1 animate-bounce rounded-full bg-gray-400" })] }) })] }) })), renderCostLimitBanner(), _jsx("div", { ref: messagesEndRef })] }), !hideContext && renderContextInfoBar(), !hideContext && agent?.id && activeProfile && (_jsx(AgentDocumentList, { agentId: agent.id, maxFileSizeMB: activeProfile.maxDocumentSizeMB ?? 10, enabled: activeProfile.enableDocumentUpload ?? false, profileId: activeProfile.id }, `${agent.id}-${agent.updatedDate || ""}-${activeProfile.id}`)), !hideContext && (_jsx(TodoListPanel, { messages: messages, agentMetadata: agentMetadata })), queuedPrompts.length > 0 && (_jsx("div", { className: "border-t border-gray-200 bg-amber-50/50", children: _jsxs("div", { className: "px-4 pt-3 pb-2", children: [_jsxs("div", { className: "mb-2 flex items-center gap-2", children: [_jsx("div", { className: "h-2 w-2 animate-pulse rounded-full bg-amber-500" }), _jsxs("span", { className: "text-xs font-semibold text-amber-900", children: ["Queued Messages (", queuedPrompts.length, ")"] })] }), _jsx("div", { className: "space-y-2", children: queuedPrompts.map((qp) => (_jsx("div", { className: "rounded-md border border-amber-200 bg-white p-2.5 text-xs", children: _jsx("div", { className: "flex items-start justify-between gap-2", children: _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "mb-1 flex items-center gap-1.5", children: qp.sourceAgentName ? (_jsxs(_Fragment, { children: [_jsxs("span", { className: "font-medium text-gray-700", children: ["From ", qp.sourceAgentName] }), qp.priority > 5 && (_jsx("span", { className: "rounded bg-red-100 px-1.5 py-0.5 text-[10px] font-medium text-red-700", children: "High Priority" }))] })) : (_jsx("span", { className: "font-medium text-gray-700", children: "From User" })) }), _jsx("div", { className: "break-words whitespace-pre-wrap text-gray-600", children: qp.prompt }), qp.createdDate && (_jsx("div", { className: "mt-1.5 text-[10px] text-gray-400", children: formatTime(new Date(qp.createdDate)) }))] }) }) }, qp.id))) })] }) })), _jsxs("div", { className: "border-t border-gray-200 p-4", children: [activePlaceholderInput ? (
|
|
2803
2814
|
// Placeholder Input (from quick actions)
|
|
2804
|
-
|
|
2815
|
+
// Show buttons when hideBottomControls is true (e.g., splash screen) since normal submit area is hidden
|
|
2816
|
+
_jsx(PlaceholderInput, { text: activePlaceholderInput.text, showButtons: hideBottomControls, buttonsClassName: hideBottomControls ? "justify-end" : "", onFilledChange: setAllPlaceholdersFilled, onComplete: (filledText) => {
|
|
2805
2817
|
setActivePlaceholderInput(null);
|
|
2818
|
+
setAllPlaceholdersFilled(false);
|
|
2806
2819
|
if (activePlaceholderInput.behavior === "compose") {
|
|
2807
2820
|
setPrompt(filledText);
|
|
2808
2821
|
setInputPlaceholder("Review and edit, then press Enter to send");
|
|
@@ -2828,10 +2841,13 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
2828
2841
|
}
|
|
2829
2842
|
}, onCancel: () => {
|
|
2830
2843
|
setActivePlaceholderInput(null);
|
|
2844
|
+
setAllPlaceholdersFilled(false);
|
|
2831
2845
|
} })) : prompt && /\{([^}]+)\}|<([^>]+)>/.test(prompt) ? (
|
|
2832
2846
|
// Template mode: show PlaceholderInput when prompt contains placeholders
|
|
2833
|
-
|
|
2847
|
+
// Show buttons when hideBottomControls is true (e.g., splash screen) since normal submit area is hidden
|
|
2848
|
+
_jsx(PlaceholderInput, { text: prompt, showButtons: hideBottomControls, buttonsClassName: hideBottomControls ? "justify-end" : "", onFilledChange: setAllPlaceholdersFilled, onComplete: (filledText) => {
|
|
2834
2849
|
setPrompt(filledText);
|
|
2850
|
+
setAllPlaceholdersFilled(false);
|
|
2835
2851
|
// Auto-submit after filling placeholders
|
|
2836
2852
|
if (filledText.trim()) {
|
|
2837
2853
|
if (isExecuting) {
|
|
@@ -2844,9 +2860,14 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
2844
2860
|
}
|
|
2845
2861
|
}, onCancel: () => {
|
|
2846
2862
|
setPrompt("");
|
|
2863
|
+
setAllPlaceholdersFilled(false);
|
|
2847
2864
|
setInputPlaceholder("Type your message... (Enter to send, Shift+Enter or Ctrl+Enter for new line)");
|
|
2848
2865
|
} })) : (_jsx("div", { className: "flex items-stretch gap-2", children: _jsx(Textarea, { ref: textareaRef, value: prompt, onChange: (e) => {
|
|
2849
2866
|
setPrompt(e.target.value);
|
|
2867
|
+
// Reset placeholder filled state when prompt changes
|
|
2868
|
+
if (!/\{([^}]+)\}|<([^>]+)>/.test(e.target.value)) {
|
|
2869
|
+
setAllPlaceholdersFilled(false);
|
|
2870
|
+
}
|
|
2850
2871
|
// Reset history index when user starts typing
|
|
2851
2872
|
if (currentHistoryIndex !== -1) {
|
|
2852
2873
|
setCurrentHistoryIndex(-1);
|
|
@@ -2963,7 +2984,12 @@ export function AgentTerminal({ agentStub, initialMetadata, profiles, isActive =
|
|
|
2963
2984
|
setShowPredefined(false);
|
|
2964
2985
|
if (textareaRef.current)
|
|
2965
2986
|
textareaRef.current.focus();
|
|
2966
|
-
}, children: p.title }, index))) }) })] })) : null] }), _jsxs("div", { className: "flex items-center gap-1 self-end", children: [isVoiceSupported ? (_jsx(Button, { onClick: toggleVoice, size: "sm", className: "h-5.5 w-5.5 cursor-pointer rounded-full", title: isListening ? "Stop voice input" : "Start voice input", "aria-label": isListening ? "Stop voice input" : "Start voice input", "aria-pressed": isListening, children: isListening ? (_jsx(MicOff, { className: "size-3", strokeWidth: 1 })) : (_jsx(Mic, { className: "size-3", strokeWidth: 1 })) })) : null, _jsx(Button, { onClick: isExecuting ? handleStop : handleSubmit, disabled: !isExecuting &&
|
|
2987
|
+
}, children: p.title }, index))) }) })] })) : null] }), _jsxs("div", { className: "flex items-center gap-1 self-end", children: [isVoiceSupported ? (_jsx(Button, { onClick: toggleVoice, size: "sm", className: "h-5.5 w-5.5 cursor-pointer rounded-full", title: isListening ? "Stop voice input" : "Start voice input", "aria-label": isListening ? "Stop voice input" : "Start voice input", "aria-pressed": isListening, children: isListening ? (_jsx(MicOff, { className: "size-3", strokeWidth: 1 })) : (_jsx(Mic, { className: "size-3", strokeWidth: 1 })) })) : null, _jsx(Button, { onClick: isExecuting ? handleStop : handleSubmit, disabled: !isExecuting &&
|
|
2988
|
+
((!prompt.trim() && !activePlaceholderInput) ||
|
|
2989
|
+
(!!prompt &&
|
|
2990
|
+
/\{([^}]+)\}|<([^>]+)>/.test(prompt) &&
|
|
2991
|
+
!allPlaceholdersFilled) ||
|
|
2992
|
+
(!!activePlaceholderInput && !allPlaceholdersFilled)), size: "sm", className: "h-5.5 w-5.5 cursor-pointer rounded-full", title: isExecuting ? "Stop" : "Send", "aria-label": isExecuting ? "Stop" : "Send", "data-testid": "agent-send-stop-button", "data-executing": isExecuting ? "true" : "false", children: isExecuting ? (_jsx(Square, { className: "size-3", strokeWidth: 1 })) : (_jsx(Send, { className: "size-3", strokeWidth: 1 })) })] })] }), _jsxs("div", { className: "mt-1 flex items-center gap-2 text-[10px] text-gray-500", children: [_jsx(AgentCostDisplay, { totalTokens: liveTotals
|
|
2967
2993
|
? {
|
|
2968
2994
|
input: liveTotals.input,
|
|
2969
2995
|
output: liveTotals.output,
|