@agent-native/toolkit 0.225.2-nightly-20261106152255 → 0.226.0
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/agent-native.eject.json +1 -0
- package/dist/app/agentkit/react/components.d.ts.map +1 -1
- package/dist/app/agentkit/react/components.js +124 -9
- package/dist/app/agentkit/react/components.js.map +1 -1
- package/dist/app/agentkit/react/context.d.ts +1 -1
- package/dist/app/agentkit/react/core-file-storage.d.ts +21 -0
- package/dist/app/agentkit/react/core-file-storage.d.ts.map +1 -0
- package/dist/app/agentkit/react/core-file-storage.js +3 -0
- package/dist/app/agentkit/react/core-file-storage.js.map +1 -0
- package/dist/app/auth/AuthPage.d.ts.map +1 -1
- package/dist/app/auth/AuthPage.js +89 -10
- package/dist/app/auth/AuthPage.js.map +1 -1
- package/dist/app/chat/AgentKitAssistantChat.d.ts.map +1 -1
- package/dist/app/chat/AgentKitAssistantChat.js +39 -58
- package/dist/app/chat/AgentKitAssistantChat.js.map +1 -1
- package/dist/app/chat/MultiTabAssistantChat.d.ts.map +1 -1
- package/dist/app/chat/MultiTabAssistantChat.js +3 -1
- package/dist/app/chat/MultiTabAssistantChat.js.map +1 -1
- package/dist/app/chat/agentkit-chat/root.d.ts.map +1 -1
- package/dist/app/chat/agentkit-chat/root.js +66 -2
- package/dist/app/chat/agentkit-chat/root.js.map +1 -1
- package/dist/app/chat/chat/surface-types.d.ts +1 -0
- package/dist/app/chat/chat/surface-types.d.ts.map +1 -1
- package/dist/app/chat/chat/surface-types.js.map +1 -1
- package/dist/app/chat/composer/runtime-adapters.d.ts.map +1 -1
- package/dist/app/chat/composer/runtime-adapters.js +2 -0
- package/dist/app/chat/composer/runtime-adapters.js.map +1 -1
- package/dist/app/chat/composer/use-agentkit-capabilities.d.ts +3 -1
- package/dist/app/chat/composer/use-agentkit-capabilities.d.ts.map +1 -1
- package/dist/app/chat/composer/use-agentkit-capabilities.js +11 -11
- package/dist/app/chat/composer/use-agentkit-capabilities.js.map +1 -1
- package/dist/app/chat/composer/use-workspace-composer-menu.d.ts +3 -0
- package/dist/app/chat/composer/use-workspace-composer-menu.d.ts.map +1 -0
- package/dist/app/chat/composer/use-workspace-composer-menu.js +80 -0
- package/dist/app/chat/composer/use-workspace-composer-menu.js.map +1 -0
- package/dist/app/chat/index.d.ts +1 -0
- package/dist/app/chat/index.d.ts.map +1 -1
- package/dist/app/chat/index.js +1 -0
- package/dist/app/chat/index.js.map +1 -1
- package/dist/app/chat/prepare-prompt-composer-agent-handoff.d.ts +5 -0
- package/dist/app/chat/prepare-prompt-composer-agent-handoff.d.ts.map +1 -0
- package/dist/app/chat/prepare-prompt-composer-agent-handoff.js +108 -0
- package/dist/app/chat/prepare-prompt-composer-agent-handoff.js.map +1 -0
- package/dist/app/i18n/catalogs/ar-SA.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/ar-SA.js +6 -1
- package/dist/app/i18n/catalogs/ar-SA.js.map +1 -1
- package/dist/app/i18n/catalogs/de-DE.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/de-DE.js +6 -1
- package/dist/app/i18n/catalogs/de-DE.js.map +1 -1
- package/dist/app/i18n/catalogs/en-US.d.ts +6 -1
- package/dist/app/i18n/catalogs/en-US.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/en-US.js +6 -1
- package/dist/app/i18n/catalogs/en-US.js.map +1 -1
- package/dist/app/i18n/catalogs/es-ES.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/es-ES.js +6 -1
- package/dist/app/i18n/catalogs/es-ES.js.map +1 -1
- package/dist/app/i18n/catalogs/fr-FR.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/fr-FR.js +6 -1
- package/dist/app/i18n/catalogs/fr-FR.js.map +1 -1
- package/dist/app/i18n/catalogs/hi-IN.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/hi-IN.js +6 -1
- package/dist/app/i18n/catalogs/hi-IN.js.map +1 -1
- package/dist/app/i18n/catalogs/ja-JP.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/ja-JP.js +6 -1
- package/dist/app/i18n/catalogs/ja-JP.js.map +1 -1
- package/dist/app/i18n/catalogs/ko-KR.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/ko-KR.js +6 -1
- package/dist/app/i18n/catalogs/ko-KR.js.map +1 -1
- package/dist/app/i18n/catalogs/pt-BR.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/pt-BR.js +6 -1
- package/dist/app/i18n/catalogs/pt-BR.js.map +1 -1
- package/dist/app/i18n/catalogs/zh-CN.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/zh-CN.js +6 -1
- package/dist/app/i18n/catalogs/zh-CN.js.map +1 -1
- package/dist/app/i18n/catalogs/zh-TW.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/zh-TW.js +6 -1
- package/dist/app/i18n/catalogs/zh-TW.js.map +1 -1
- package/dist/app/resources/McpIntegrationDialog.d.ts +3 -1
- package/dist/app/resources/McpIntegrationDialog.d.ts.map +1 -1
- package/dist/app/resources/McpIntegrationDialog.js +2 -2
- package/dist/app/resources/McpIntegrationDialog.js.map +1 -1
- package/dist/app/settings/useBuilderStatus.d.ts.map +1 -1
- package/dist/app/settings/useBuilderStatus.js +119 -40
- package/dist/app/settings/useBuilderStatus.js.map +1 -1
- package/dist/composer/ComposerContextMenu.d.ts +36 -2
- package/dist/composer/ComposerContextMenu.d.ts.map +1 -1
- package/dist/composer/ComposerContextMenu.js +108 -40
- package/dist/composer/ComposerContextMenu.js.map +1 -1
- package/dist/composer/ComposerContextPickerDialog.d.ts.map +1 -1
- package/dist/composer/ComposerContextPickerDialog.js +63 -26
- package/dist/composer/ComposerContextPickerDialog.js.map +1 -1
- package/dist/composer/ComposerPlusMenu.d.ts +5 -3
- package/dist/composer/ComposerPlusMenu.d.ts.map +1 -1
- package/dist/composer/ComposerPlusMenu.js +166 -121
- package/dist/composer/ComposerPlusMenu.js.map +1 -1
- package/dist/composer/MentionItemMedia.d.ts.map +1 -1
- package/dist/composer/MentionItemMedia.js +3 -1
- package/dist/composer/MentionItemMedia.js.map +1 -1
- package/dist/composer/PromptComposer.d.ts +1 -0
- package/dist/composer/PromptComposer.d.ts.map +1 -1
- package/dist/composer/PromptComposer.js +1 -0
- package/dist/composer/PromptComposer.js.map +1 -1
- package/dist/composer/TiptapComposer.d.ts.map +1 -1
- package/dist/composer/TiptapComposer.js +117 -50
- package/dist/composer/TiptapComposer.js.map +1 -1
- package/dist/composer/index.d.ts +1 -0
- package/dist/composer/index.d.ts.map +1 -1
- package/dist/composer/runtime-adapters.d.ts +15 -0
- package/dist/composer/runtime-adapters.d.ts.map +1 -1
- package/dist/composer/runtime-adapters.js.map +1 -1
- package/dist/composer/use-composer-panel-placement.d.ts.map +1 -1
- package/dist/composer/use-composer-panel-placement.js +2 -4
- package/dist/composer/use-composer-panel-placement.js.map +1 -1
- package/dist/composer/use-mention-search.d.ts +7 -0
- package/dist/composer/use-mention-search.d.ts.map +1 -1
- package/dist/composer/use-mention-search.js +86 -19
- package/dist/composer/use-mention-search.js.map +1 -1
- package/dist/composer/useComposerContextPicker.d.ts +5 -1
- package/dist/composer/useComposerContextPicker.d.ts.map +1 -1
- package/dist/composer/useComposerContextPicker.js +18 -4
- package/dist/composer/useComposerContextPicker.js.map +1 -1
- package/package.json +4 -4
- package/src/app/agentkit/react/components.tsx +158 -11
- package/src/app/agentkit/react/composer-context.spec.tsx +180 -0
- package/src/app/agentkit/react/core-file-storage.tsx +14 -0
- package/src/app/auth/AuthPage.interaction.spec.tsx +143 -0
- package/src/app/auth/AuthPage.tsx +159 -13
- package/src/app/chat/AgentKitAssistantChat.spec.tsx +65 -3
- package/src/app/chat/AgentKitAssistantChat.tsx +57 -65
- package/src/app/chat/MultiTabAssistantChat.spec.tsx +21 -0
- package/src/app/chat/MultiTabAssistantChat.tsx +4 -0
- package/src/app/chat/agentkit-chat/root.tsx +91 -8
- package/src/app/chat/chat/surface-types.ts +1 -0
- package/src/app/chat/composer/runtime-adapters.tsx +2 -0
- package/src/app/chat/composer/use-agentkit-capabilities.hardening.spec.tsx +26 -1
- package/src/app/chat/composer/use-agentkit-capabilities.ts +11 -11
- package/src/app/chat/composer/use-agentkit-integration-menu.spec.tsx +2 -4
- package/src/app/chat/composer/use-workspace-composer-menu.spec.tsx +174 -0
- package/src/app/chat/composer/use-workspace-composer-menu.tsx +122 -0
- package/src/app/chat/index.ts +1 -0
- package/src/app/chat/prepare-prompt-composer-agent-handoff.spec.ts +162 -0
- package/src/app/chat/prepare-prompt-composer-agent-handoff.ts +134 -0
- package/src/app/i18n/catalogs/ar-SA.ts +6 -1
- package/src/app/i18n/catalogs/de-DE.ts +6 -1
- package/src/app/i18n/catalogs/en-US.ts +6 -1
- package/src/app/i18n/catalogs/es-ES.ts +6 -1
- package/src/app/i18n/catalogs/fr-FR.ts +6 -1
- package/src/app/i18n/catalogs/hi-IN.ts +6 -1
- package/src/app/i18n/catalogs/ja-JP.ts +6 -1
- package/src/app/i18n/catalogs/ko-KR.ts +6 -1
- package/src/app/i18n/catalogs/pt-BR.ts +6 -1
- package/src/app/i18n/catalogs/zh-CN.ts +6 -1
- package/src/app/i18n/catalogs/zh-TW.ts +6 -1
- package/src/app/resources/McpIntegrationDialog.tsx +5 -0
- package/src/app/settings/useBuilderStatus.spec.tsx +229 -13
- package/src/app/settings/useBuilderStatus.ts +145 -47
- package/src/composer/ComposerContextMenu.spec.tsx +95 -32
- package/src/composer/ComposerContextMenu.tsx +284 -73
- package/src/composer/ComposerContextPicker.spec.tsx +13 -14
- package/src/composer/ComposerContextPickerDialog.spec.tsx +40 -3
- package/src/composer/ComposerContextPickerDialog.tsx +158 -24
- package/src/composer/ComposerPlusMenu.parity.spec.tsx +442 -62
- package/src/composer/ComposerPlusMenu.tsx +322 -237
- package/src/composer/MentionItemMedia.tsx +3 -0
- package/src/composer/PromptComposer.context.spec.tsx +253 -82
- package/src/composer/PromptComposer.tsx +2 -0
- package/src/composer/TiptapComposer.spec.ts +6 -8
- package/src/composer/TiptapComposer.tsx +148 -55
- package/src/composer/index.ts +5 -0
- package/src/composer/runtime-adapters.tsx +18 -0
- package/src/composer/use-composer-panel-placement.ts +2 -4
- package/src/composer/use-mention-search.spec.tsx +99 -1
- package/src/composer/use-mention-search.ts +101 -24
- package/src/composer/useComposerContextPicker.ts +25 -5
|
@@ -5,6 +5,13 @@ import { TemplateLibraryGrid } from "../app-shell/TemplateLibraryGrid.js";
|
|
|
5
5
|
import { Alert, AlertDescription } from "../ui/alert.js";
|
|
6
6
|
import { Button } from "../ui/button.js";
|
|
7
7
|
import { Checkbox } from "../ui/checkbox.js";
|
|
8
|
+
import {
|
|
9
|
+
Command,
|
|
10
|
+
CommandInput,
|
|
11
|
+
CommandList,
|
|
12
|
+
CommandGroup,
|
|
13
|
+
CommandItem,
|
|
14
|
+
} from "../ui/command.js";
|
|
8
15
|
import {
|
|
9
16
|
Dialog,
|
|
10
17
|
DialogContent,
|
|
@@ -46,8 +53,10 @@ export function ComposerContextPickerDialog({
|
|
|
46
53
|
const [search, setSearch] = useState(location.search);
|
|
47
54
|
const [searchDebouncing, setSearchDebouncing] = useState(false);
|
|
48
55
|
const remoteGallery = gallery && Boolean(config.load);
|
|
56
|
+
const remoteSearch =
|
|
57
|
+
Boolean(config.load) && (gallery || presentation?.mode === "action");
|
|
49
58
|
const searchPending =
|
|
50
|
-
|
|
59
|
+
remoteSearch && (search !== location.search || searchDebouncing);
|
|
51
60
|
const [touched, setTouched] = useState(false);
|
|
52
61
|
useEffect(() => {
|
|
53
62
|
input.current?.focus();
|
|
@@ -72,6 +81,153 @@ export function ComposerContextPickerDialog({
|
|
|
72
81
|
!searchPending &&
|
|
73
82
|
!selecting &&
|
|
74
83
|
!error;
|
|
84
|
+
const changeSearch = (value: string) => {
|
|
85
|
+
setSearch(value);
|
|
86
|
+
if (searchDebounce.current) clearTimeout(searchDebounce.current);
|
|
87
|
+
if (remoteSearch) {
|
|
88
|
+
setSearchDebouncing(true);
|
|
89
|
+
searchDebounce.current = setTimeout(() => {
|
|
90
|
+
searchDebounce.current = null;
|
|
91
|
+
setSearchDebouncing(false);
|
|
92
|
+
if (value === location.search) return;
|
|
93
|
+
picker.cursors.current = [undefined];
|
|
94
|
+
picker.move({
|
|
95
|
+
search: value,
|
|
96
|
+
page: 1,
|
|
97
|
+
...(location.url === undefined ? {} : { url: location.url }),
|
|
98
|
+
});
|
|
99
|
+
}, 200);
|
|
100
|
+
} else {
|
|
101
|
+
picker.cursors.current = [undefined];
|
|
102
|
+
picker.move({
|
|
103
|
+
search: value,
|
|
104
|
+
page: 1,
|
|
105
|
+
...(location.url === undefined ? {} : { url: location.url }),
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
if (presentation?.mode === "action") {
|
|
110
|
+
const groups = new Map<string, typeof items>();
|
|
111
|
+
for (const item of items) {
|
|
112
|
+
const group = item.group ?? "";
|
|
113
|
+
groups.set(group, [...(groups.get(group) ?? []), item]);
|
|
114
|
+
}
|
|
115
|
+
return (
|
|
116
|
+
<Dialog
|
|
117
|
+
open
|
|
118
|
+
onOpenChange={(open) => {
|
|
119
|
+
if (!open) onClose();
|
|
120
|
+
}}
|
|
121
|
+
>
|
|
122
|
+
<DialogContent
|
|
123
|
+
aria-describedby={undefined}
|
|
124
|
+
closeLabel={t("agentChat.common.close", { defaultValue: "Close" })}
|
|
125
|
+
onCloseAutoFocus={(event) => {
|
|
126
|
+
event.preventDefault();
|
|
127
|
+
onRestoreFocus();
|
|
128
|
+
}}
|
|
129
|
+
>
|
|
130
|
+
<DialogHeader>
|
|
131
|
+
<DialogTitle>{title}</DialogTitle>
|
|
132
|
+
</DialogHeader>
|
|
133
|
+
<Command
|
|
134
|
+
shouldFilter={false}
|
|
135
|
+
className="[&_[cmdk-group-heading]]:text-foreground"
|
|
136
|
+
>
|
|
137
|
+
{config.searchable !== false && (
|
|
138
|
+
<CommandInput
|
|
139
|
+
aria-label={config.searchPlaceholder}
|
|
140
|
+
placeholder={config.searchPlaceholder}
|
|
141
|
+
value={remoteSearch ? search : location.search}
|
|
142
|
+
onValueChange={changeSearch}
|
|
143
|
+
/>
|
|
144
|
+
)}
|
|
145
|
+
<div
|
|
146
|
+
role="status"
|
|
147
|
+
aria-live="polite"
|
|
148
|
+
className={
|
|
149
|
+
loading || searchPending || (!error && !items.length)
|
|
150
|
+
? "p-3 text-foreground"
|
|
151
|
+
: "sr-only"
|
|
152
|
+
}
|
|
153
|
+
>
|
|
154
|
+
{loading || searchPending
|
|
155
|
+
? t("agentChat.composer.contextPending", {
|
|
156
|
+
defaultValue: "Loading context…",
|
|
157
|
+
})
|
|
158
|
+
: !error && !items.length
|
|
159
|
+
? (config.emptyMessage ??
|
|
160
|
+
t("agentChat.mentions.noResults", {
|
|
161
|
+
defaultValue: "No results found",
|
|
162
|
+
}))
|
|
163
|
+
: ""}
|
|
164
|
+
</div>
|
|
165
|
+
<CommandList aria-label={title}>
|
|
166
|
+
{loading || searchPending ? null : error ? (
|
|
167
|
+
<div role="alert" className="p-3 text-destructive">
|
|
168
|
+
{error}
|
|
169
|
+
</div>
|
|
170
|
+
) : !items.length ? null : (
|
|
171
|
+
Array.from(groups)
|
|
172
|
+
.sort(([left], [right]) => left.localeCompare(right))
|
|
173
|
+
.map(([group, entries]) => (
|
|
174
|
+
<CommandGroup
|
|
175
|
+
key={group}
|
|
176
|
+
heading={
|
|
177
|
+
group ? t(group, { defaultValue: group }) : undefined
|
|
178
|
+
}
|
|
179
|
+
>
|
|
180
|
+
{entries.map((item) => (
|
|
181
|
+
<CommandItem
|
|
182
|
+
key={item.id}
|
|
183
|
+
value={item.id}
|
|
184
|
+
disabled={item.disabled || selecting}
|
|
185
|
+
onSelect={() => {
|
|
186
|
+
void picker.select(item);
|
|
187
|
+
}}
|
|
188
|
+
className="min-h-8 gap-2"
|
|
189
|
+
>
|
|
190
|
+
{item.icon}
|
|
191
|
+
<span>{item.title}</span>
|
|
192
|
+
</CommandItem>
|
|
193
|
+
))}
|
|
194
|
+
</CommandGroup>
|
|
195
|
+
))
|
|
196
|
+
)}
|
|
197
|
+
</CommandList>
|
|
198
|
+
</Command>
|
|
199
|
+
{error && picker.retry && (
|
|
200
|
+
<Button variant="outline" onClick={picker.retry}>
|
|
201
|
+
{t("agentChat.common.retry", { defaultValue: "Retry" })}
|
|
202
|
+
</Button>
|
|
203
|
+
)}
|
|
204
|
+
{config.footerAction && (
|
|
205
|
+
<DialogFooter>
|
|
206
|
+
{config.footerAction.renderLink ? (
|
|
207
|
+
<Button
|
|
208
|
+
asChild
|
|
209
|
+
variant="outline"
|
|
210
|
+
disabled={config.footerAction.disabled}
|
|
211
|
+
>
|
|
212
|
+
{config.footerAction.renderLink(config.footerAction.label)}
|
|
213
|
+
</Button>
|
|
214
|
+
) : (
|
|
215
|
+
<Button
|
|
216
|
+
variant="outline"
|
|
217
|
+
disabled={config.footerAction.disabled || selecting}
|
|
218
|
+
onClick={() => {
|
|
219
|
+
void picker.select("footer");
|
|
220
|
+
}}
|
|
221
|
+
>
|
|
222
|
+
{config.footerAction.label}
|
|
223
|
+
</Button>
|
|
224
|
+
)}
|
|
225
|
+
</DialogFooter>
|
|
226
|
+
)}
|
|
227
|
+
</DialogContent>
|
|
228
|
+
</Dialog>
|
|
229
|
+
);
|
|
230
|
+
}
|
|
75
231
|
return (
|
|
76
232
|
<Dialog
|
|
77
233
|
open
|
|
@@ -146,29 +302,7 @@ export function ComposerContextPickerDialog({
|
|
|
146
302
|
aria-label={config.searchPlaceholder}
|
|
147
303
|
placeholder={config.searchPlaceholder}
|
|
148
304
|
value={remoteGallery ? search : location.search}
|
|
149
|
-
onChange={(event) =>
|
|
150
|
-
const value = event.target.value;
|
|
151
|
-
setSearch(value);
|
|
152
|
-
if (searchDebounce.current)
|
|
153
|
-
clearTimeout(searchDebounce.current);
|
|
154
|
-
if (remoteGallery) {
|
|
155
|
-
setSearchDebouncing(true);
|
|
156
|
-
searchDebounce.current = setTimeout(() => {
|
|
157
|
-
searchDebounce.current = null;
|
|
158
|
-
setSearchDebouncing(false);
|
|
159
|
-
if (value === location.search) return;
|
|
160
|
-
picker.cursors.current = [undefined];
|
|
161
|
-
picker.move({
|
|
162
|
-
search: value,
|
|
163
|
-
page: 1,
|
|
164
|
-
url: location.url,
|
|
165
|
-
});
|
|
166
|
-
}, 200);
|
|
167
|
-
} else {
|
|
168
|
-
picker.cursors.current = [undefined];
|
|
169
|
-
picker.move({ search: value, page: 1, url: location.url });
|
|
170
|
-
}
|
|
171
|
-
}}
|
|
305
|
+
onChange={(event) => changeSearch(event.target.value)}
|
|
172
306
|
/>
|
|
173
307
|
{gallery ? (
|
|
174
308
|
<div className="agent-context-reference-gallery max-h-96 overflow-y-auto p-1">
|