@stack-spot/ai-chat-widget 2.9.0 → 2.11.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/CHANGELOG.md +15 -0
- package/dist/app-metadata.json +3 -3
- package/dist/chat-interceptors/quick-commands.d.ts.map +1 -1
- package/dist/chat-interceptors/quick-commands.js +14 -5
- package/dist/chat-interceptors/quick-commands.js.map +1 -1
- package/dist/components/Selector/index.d.ts +11 -2
- package/dist/components/Selector/index.d.ts.map +1 -1
- package/dist/components/Selector/index.js +18 -17
- package/dist/components/Selector/index.js.map +1 -1
- package/dist/components/form/DescribedCheckboxGroup.d.ts +3 -1
- package/dist/components/form/DescribedCheckboxGroup.d.ts.map +1 -1
- package/dist/components/form/DescribedCheckboxGroup.js +31 -19
- package/dist/components/form/DescribedCheckboxGroup.js.map +1 -1
- package/dist/views/Agents/AgentsTab.js.map +1 -1
- package/dist/views/KnowledgeSources.d.ts.map +1 -1
- package/dist/views/KnowledgeSources.js +31 -17
- package/dist/views/KnowledgeSources.js.map +1 -1
- package/dist/views/MessageInput/AgentSelector.d.ts.map +1 -1
- package/dist/views/MessageInput/AgentSelector.js +8 -6
- package/dist/views/MessageInput/AgentSelector.js.map +1 -1
- package/dist/views/MessageInput/QuickCommandSelector.d.ts.map +1 -1
- package/dist/views/MessageInput/QuickCommandSelector.js +12 -8
- package/dist/views/MessageInput/QuickCommandSelector.js.map +1 -1
- package/package.json +2 -2
- package/src/app-metadata.json +3 -3
- package/src/chat-interceptors/quick-commands.ts +14 -5
- package/src/components/Selector/index.tsx +46 -33
- package/src/components/form/DescribedCheckboxGroup.tsx +61 -35
- package/src/views/Agents/AgentsTab.tsx +5 -5
- package/src/views/KnowledgeSources.tsx +59 -36
- package/src/views/MessageInput/AgentSelector.tsx +10 -8
- package/src/views/MessageInput/QuickCommandSelector.tsx +33 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnowledgeSources.js","sourceRoot":"","sources":["../../src/views/KnowledgeSources.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAO,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AACvE,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"KnowledgeSources.js","sourceRoot":"","sources":["../../src/views/KnowledgeSources.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentSelector.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/AgentSelector.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AgentSelector.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/AgentSelector.tsx"],"names":[],"mappings":"AA0BA,eAAO,MAAM,aAAa,0BAA2B;IACnD,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;CACnE,4CA8DA,CAAA"}
|
|
@@ -34,16 +34,18 @@ export const AgentSelector = ({ inputRef, isTrial }) => {
|
|
|
34
34
|
inputRef.current.value = newValue;
|
|
35
35
|
inputRef.current.focus();
|
|
36
36
|
}, [chat, inputRef]);
|
|
37
|
-
const getAgents = () => {
|
|
37
|
+
const getAgents = ({ filter, visibility }) => {
|
|
38
38
|
if (spotId) {
|
|
39
|
-
return workspaceAiClient.getAgentFromWorkspaceAi.useQuery({
|
|
39
|
+
return { data: workspaceAiClient.getAgentFromWorkspaceAi.useQuery({
|
|
40
|
+
workspaceId: spotId, name: filter
|
|
41
|
+
}) };
|
|
40
42
|
}
|
|
41
43
|
if (isTrial) {
|
|
42
|
-
return agentToolsClient.allAgents.useQuery({ visibilities:
|
|
44
|
+
return { data: agentToolsClient.allAgents.useQuery({ visibilities: visibility, filter }) };
|
|
43
45
|
}
|
|
44
|
-
return agentToolsClient.allAgents.useQuery({
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
return { data: agentToolsClient.allAgents.useQuery({
|
|
47
|
+
visibilities: visibility, filter,
|
|
48
|
+
}) };
|
|
47
49
|
};
|
|
48
50
|
return _jsx(Selector, { inputRef: inputRef, favorite: { useFavorites, onAddFavorite, onRemoveFavorite }, selectorConfig: {
|
|
49
51
|
resourceName: 'Agent',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentSelector.js","sourceRoot":"","sources":["../../../src/views/MessageInput/AgentSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,EAA4B,gBAAgB,
|
|
1
|
+
{"version":3,"file":"AgentSelector.js","sourceRoot":"","sources":["../../../src/views/MessageInput/AgentSelector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuickCommandSelector.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/QuickCommandSelector.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,oBAAoB,0BAC/B;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"QuickCommandSelector.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/QuickCommandSelector.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,oBAAoB,0BAC/B;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAA;CAAE,4CA6HxF,CAAA"}
|
|
@@ -9,7 +9,6 @@ export const QuickCommandSelector = ({ inputRef, isTrial }) => {
|
|
|
9
9
|
const chat = useCurrentChat();
|
|
10
10
|
const isQuickCommandEnabled = useCurrentChatState('features').quickCommands;
|
|
11
11
|
const spotId = useWidgetState('features')?.workspaceId;
|
|
12
|
-
const useFavorites = () => aiClient.allQuickCommands.useQuery({ visibility: 'favorite' });
|
|
13
12
|
const [addFavorite, pendingAddFav] = aiClient.addFavoriteQuickCommand.useMutation();
|
|
14
13
|
const [removeFavorite, pendingRemoveFav] = aiClient.removeFavoriteQuickCommand.useMutation();
|
|
15
14
|
const addFavoriteQc = async (idOrSlug) => {
|
|
@@ -68,22 +67,27 @@ export const QuickCommandSelector = ({ inputRef, isTrial }) => {
|
|
|
68
67
|
inputRef.current.value = newValue;
|
|
69
68
|
inputRef.current.focus();
|
|
70
69
|
}, [chat, inputRef]);
|
|
71
|
-
const getQuickCommands = () => {
|
|
70
|
+
const getQuickCommands = ({ filter, visibility }) => {
|
|
72
71
|
if (spotId) {
|
|
73
|
-
return workspaceAiClient.getQCFromWorkspaceAi.useQuery({ workspaceId: spotId });
|
|
72
|
+
return { data: workspaceAiClient.getQCFromWorkspaceAi.useQuery({ workspaceId: spotId, name: filter }) };
|
|
74
73
|
}
|
|
75
|
-
const quickCommands = aiClient.
|
|
74
|
+
const [quickCommands, { fetchNextPage, hasNextPage }] = aiClient.allQuickCommandsV3.useInfiniteQuery({
|
|
75
|
+
order: 'a-to-z',
|
|
76
|
+
visibilityList: visibility,
|
|
77
|
+
name: filter,
|
|
78
|
+
page: 1, size: 20,
|
|
79
|
+
});
|
|
76
80
|
const quickCommandsFiltered = quickCommands.filter((qc) => qc.visibility_level.toLowerCase() !== 'workspace');
|
|
77
81
|
const workspaceQuickCommands = workspaceAiClient.workspacesContentsByType.useQuery({
|
|
78
82
|
contentType: 'quick_command',
|
|
79
83
|
});
|
|
80
84
|
const workspaceQuickCommandsWithWorkspaceName = workspaceQuickCommands.flatMap(({ qcs, space_name }) => qcs?.map((qc) => ({ ...qc, spaceName: space_name })));
|
|
81
|
-
|
|
85
|
+
const filteredWorkspaceQuickCommand = filter ? workspaceQuickCommandsWithWorkspaceName?.filter((qc) => qc.name?.toLowerCase().includes(filter)) : workspaceQuickCommandsWithWorkspaceName;
|
|
86
|
+
const data = !visibility ? [...quickCommandsFiltered, ...filteredWorkspaceQuickCommand] : (visibility.includes('workspace') ? filteredWorkspaceQuickCommand : quickCommandsFiltered);
|
|
87
|
+
return { data, fetchNextPage: fetchNextPage, hasNextPage };
|
|
82
88
|
};
|
|
83
89
|
const QuickCommandItem = ({ slug, description, spaceName }) => _jsxs(_Fragment, { children: [_jsx("p", { className: "selector-description", children: spaceName }), _jsxs("p", { className: "selector-title", children: ["/", slug?.toUpperCase()] }), _jsx("p", { className: "selector-description", children: description })] });
|
|
84
|
-
return _jsx(Selector, { inputRef: inputRef, favorite: {
|
|
85
|
-
useFavorites, onAddFavorite, onRemoveFavorite, favoriteIsSlug: true,
|
|
86
|
-
}, selectorConfig: {
|
|
90
|
+
return _jsx(Selector, { inputRef: inputRef, favorite: { onAddFavorite, onRemoveFavorite, favoriteIsSlug: true }, selectorConfig: {
|
|
87
91
|
resourceName: 'Quick Command',
|
|
88
92
|
shortcut: '/',
|
|
89
93
|
icon: _jsx(Icon, { icon: "QuickCommand" }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuickCommandSelector.js","sourceRoot":"","sources":["../../../src/views/MessageInput/QuickCommandSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAC/C,OAAO,
|
|
1
|
+
{"version":3,"file":"QuickCommandSelector.js","sourceRoot":"","sources":["../../../src/views/MessageInput/QuickCommandSelector.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stack-spot/ai-chat-widget",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"@citric/core": "^6.4.0",
|
|
17
17
|
"@stack-spot/portal-components": "^2.27.3",
|
|
18
18
|
"@citric/icons": "^5.13.0",
|
|
19
|
-
"@stack-spot/portal-network": "0.212.
|
|
19
|
+
"@stack-spot/portal-network": "0.212.4",
|
|
20
20
|
"@citric/ui": "^6.10.2",
|
|
21
21
|
"@stack-spot/portal-translate": "^2.1.0",
|
|
22
22
|
"lodash": "^4.17.0",
|
package/src/app-metadata.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stack-spot/ai-chat-widget",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"date": "
|
|
3
|
+
"version": "2.11.0",
|
|
4
|
+
"date": "Wed Jan 07 2026 14:53:42 GMT+0000 (Coordinated Universal Time)",
|
|
5
5
|
"dependencies": [
|
|
6
6
|
{
|
|
7
7
|
"name": "@stack-spot/app-metadata",
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
},
|
|
122
122
|
{
|
|
123
123
|
"name": "@stack-spot/portal-network",
|
|
124
|
-
"version": "0.212.
|
|
124
|
+
"version": "0.212.4(@stack-spot/auth@6.1.0)(@stack-spot/opa@2.5.0(@stack-spot/auth@6.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@stack-spot/portal-translate@2.1.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@tanstack/react-query@5.59.16(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)"
|
|
125
125
|
},
|
|
126
126
|
{
|
|
127
127
|
"name": "@stack-spot/portal-theme",
|
|
@@ -370,7 +370,14 @@ export function createQuickCommandInterceptor(widget: WidgetState, getEditor: ()
|
|
|
370
370
|
}
|
|
371
371
|
|
|
372
372
|
if (ctx.qc.use_selected_code && (!code && ctx.context.upload_ids?.length === 0)) {
|
|
373
|
-
|
|
373
|
+
widget.set('panel', 'editor')
|
|
374
|
+
ctx.chat.pushMessage(new ChatEntry({
|
|
375
|
+
agentType: 'bot',
|
|
376
|
+
type: 'text',
|
|
377
|
+
agent: ctx.chat.get('agent'),
|
|
378
|
+
content: t.requiresSelection,
|
|
379
|
+
}))
|
|
380
|
+
return
|
|
374
381
|
}
|
|
375
382
|
manageConversationContext(ctx)
|
|
376
383
|
await computeCustomInputs(ctx)
|
|
@@ -458,8 +465,10 @@ export function createQuickCommandInterceptor(widget: WidgetState, getEditor: ()
|
|
|
458
465
|
const start = new Date().getTime()
|
|
459
466
|
try {
|
|
460
467
|
const result = await runQuickCommand(ctx)
|
|
461
|
-
|
|
462
|
-
|
|
468
|
+
if (result) {
|
|
469
|
+
outputResult(ctx, result)
|
|
470
|
+
registerAnalyticsEvent(ctx, '200', start)
|
|
471
|
+
}
|
|
463
472
|
} catch (error: any) {
|
|
464
473
|
let message = error.message || `${error}`
|
|
465
474
|
if (error instanceof AbortedError || error instanceof CancelledError) message = t.aborted
|
|
@@ -483,14 +492,14 @@ export function createQuickCommandInterceptor(widget: WidgetState, getEditor: ()
|
|
|
483
492
|
|
|
484
493
|
const dictionary = {
|
|
485
494
|
en: {
|
|
486
|
-
requiresSelection: '
|
|
495
|
+
requiresSelection: 'Select the code in the editor next to it for this quick command to interact with it.',
|
|
487
496
|
startQuestioning: 'To execute the Quick Command "$0", I\'ll need you to provide some information. Some may be mandatory, and others optional. Let\'s get started.',
|
|
488
497
|
progress: 'Running step "$0" from Quick Command "$1".',
|
|
489
498
|
aborted: 'The quick command execution aborted by the user.',
|
|
490
499
|
notFound: 'There\'s no quick command with the provided name. If you don\'t wish to run a command, prefix the first "/" with a "\\".',
|
|
491
500
|
},
|
|
492
501
|
pt: {
|
|
493
|
-
requiresSelection: '
|
|
502
|
+
requiresSelection: 'Selecione o código no editor ao lado para que este quick command possa interagir com ele.',
|
|
494
503
|
startQuestioning: 'Para executar o Quick Command "$0", vou precisar que você providencie algumas explicações. Algumas são obrigatórias e outras opcionais. Vamos começar.',
|
|
495
504
|
progress: 'Executando step "$0" do Quick Command "$1".',
|
|
496
505
|
aborted: 'A execução do quick command foi abortada pelo usuário.',
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import { FallbackBoundary, IconLink, Text } from '@stack-spot/citric-react'
|
|
2
2
|
import { useKeyboardControls } from '@stack-spot/portal-components'
|
|
3
|
+
import { InfiniteScroll } from '@stack-spot/portal-components/InfiniteScroll'
|
|
3
4
|
import { AgentVisibilityLevel } from '@stack-spot/portal-network'
|
|
5
|
+
import { VisibilityLevelEnum } from '@stack-spot/portal-network/api/ai'
|
|
4
6
|
import { Dictionary, interpolate, useTranslate } from '@stack-spot/portal-translate'
|
|
5
7
|
import React, { FC, useCallback, useEffect, useMemo, useRef, useState } from 'react'
|
|
8
|
+
import { debounce } from 'lodash'
|
|
6
9
|
import { useCurrentChatState, useWidgetState } from '../../context/hooks'
|
|
7
10
|
import { getUrlToStackSpotAI } from '../../utils/url'
|
|
8
11
|
import { ButtonFavorite } from '../ButtonFavorite'
|
|
9
12
|
import { Fading } from '../Fading'
|
|
10
13
|
import { SelectorBox } from './styled'
|
|
11
14
|
|
|
12
|
-
type SectionVisibility = AgentVisibilityLevel
|
|
15
|
+
type SectionVisibility = AgentVisibilityLevel | VisibilityLevelEnum
|
|
13
16
|
type SelectorShortcut = '/' | '@'
|
|
14
17
|
|
|
15
18
|
interface Item {
|
|
@@ -53,6 +56,12 @@ interface ContentProps<T> {
|
|
|
53
56
|
favorite?: Favorite<T>,
|
|
54
57
|
}
|
|
55
58
|
|
|
59
|
+
interface PropsUseData<T> {
|
|
60
|
+
data: T[],
|
|
61
|
+
fetchNextPage?: () => void,
|
|
62
|
+
hasNextPage?: boolean,
|
|
63
|
+
}
|
|
64
|
+
|
|
56
65
|
interface SelectorConfig<T> {
|
|
57
66
|
resourceName: string,
|
|
58
67
|
shortcut: SelectorShortcut,
|
|
@@ -71,7 +80,7 @@ interface SelectorConfig<T> {
|
|
|
71
80
|
*
|
|
72
81
|
* @returns the data to render in the selector.
|
|
73
82
|
*/
|
|
74
|
-
useData: () => T
|
|
83
|
+
useData: (props: {filter?: string, visibility?: SectionVisibility[]}) => PropsUseData<T>,
|
|
75
84
|
}
|
|
76
85
|
|
|
77
86
|
interface SelectorProps<T> {
|
|
@@ -114,39 +123,27 @@ const ListItem = <T extends Item>({ item, selectorConfig, onSelect, favorite }:
|
|
|
114
123
|
|
|
115
124
|
const List = <T extends Item>({ selectorConfig, filter, visibility, onSelect, favorite }: ListProps<T>) => {
|
|
116
125
|
const t = useTranslate(dictionary)
|
|
117
|
-
const items = selectorConfig.useData()
|
|
118
|
-
const favorites = favorite?.useFavorites?.()
|
|
119
|
-
const filtered = useMemo(() => {
|
|
120
|
-
if (!filter && !visibility) return [...items]
|
|
121
|
-
const lowerFilter = filter?.toLowerCase() ?? ''
|
|
122
|
-
|
|
123
|
-
if (visibility?.toLowerCase() === 'favorite'){
|
|
124
|
-
return favorites?.filter(item =>
|
|
125
|
-
(item[selectorConfig.searchProp] as string).toLocaleLowerCase().includes(lowerFilter))
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
return items.filter(item =>
|
|
129
|
-
(item[selectorConfig.searchProp] as string).toLocaleLowerCase().includes(lowerFilter) &&
|
|
130
|
-
(!visibility || item?.visibility_level?.toLowerCase() === visibility.toLowerCase()),
|
|
131
|
-
)
|
|
132
|
-
}, [filter, items, visibility, favorites])
|
|
133
|
-
|
|
126
|
+
const { data: items, fetchNextPage, hasNextPage } = selectorConfig.useData({ filter, visibility: visibility ? [visibility] : undefined })
|
|
134
127
|
|
|
135
|
-
if (!items.length) return <Text className="empty" color="light.700">{interpolate(t.noData, selectorConfig.resourceName)}</Text>
|
|
136
|
-
if (!
|
|
137
|
-
<Text className="empty" color="light.700">{interpolate(t.noResults, selectorConfig.resourceName)}</Text>
|
|
128
|
+
if (!items.length && !filter) return <Text className="empty" color="light.700">{interpolate(t.noData, selectorConfig.resourceName)}</Text>
|
|
129
|
+
if (!items?.length) return <Text className="empty" color="light.700">{interpolate(t.noResults, selectorConfig.resourceName)}</Text>
|
|
138
130
|
|
|
139
131
|
return (
|
|
140
|
-
<ul className="selector-list">
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
132
|
+
<ul className="selector-list" id="selector-list">
|
|
133
|
+
<InfiniteScroll scrollableTarget="selector-list"
|
|
134
|
+
dataLength={items?.length ?? 0}
|
|
135
|
+
next={fetchNextPage as any ?? undefined}
|
|
136
|
+
hasMore={hasNextPage ?? false}>
|
|
137
|
+
{items?.map((item, i) => (
|
|
138
|
+
<ListItem
|
|
139
|
+
key={`${item.id}${item.visibility_level}${i}`}
|
|
140
|
+
item={item}
|
|
141
|
+
selectorConfig={selectorConfig}
|
|
142
|
+
onSelect={onSelect}
|
|
143
|
+
favorite={favorite}
|
|
144
|
+
/>
|
|
145
|
+
))}
|
|
146
|
+
</InfiniteScroll>
|
|
150
147
|
</ul>
|
|
151
148
|
)
|
|
152
149
|
}
|
|
@@ -206,9 +203,25 @@ export const Selector = <T, >({ inputRef, selectorConfig, favorite }: SelectorPr
|
|
|
206
203
|
const { shortcut, regex, isEnabled } = selectorConfig
|
|
207
204
|
const [isClosed, setClosed] = useState(false)
|
|
208
205
|
const selectorRef = useRef<HTMLDivElement>(null)
|
|
206
|
+
const [debouncedFilter, setDebouncedFilter] = useState<string | undefined>(undefined)
|
|
209
207
|
const value = useCurrentChatState('nextMessage') ?? ''
|
|
210
208
|
const filter = useMemo(() => value === shortcut || regex.test(value) ? value.substring(1) : undefined, [value])
|
|
211
209
|
const shouldRender = isEnabled && filter !== undefined && !isClosed
|
|
210
|
+
|
|
211
|
+
const debouncedSetFilter = useCallback(
|
|
212
|
+
debounce((filterValue: string | undefined) => {
|
|
213
|
+
setDebouncedFilter(filterValue)
|
|
214
|
+
}, 300),
|
|
215
|
+
[],
|
|
216
|
+
)
|
|
217
|
+
|
|
218
|
+
useEffect(() => {
|
|
219
|
+
debouncedSetFilter(filter)
|
|
220
|
+
return () => {
|
|
221
|
+
debouncedSetFilter.cancel()
|
|
222
|
+
}
|
|
223
|
+
}, [filter, debouncedSetFilter])
|
|
224
|
+
|
|
212
225
|
|
|
213
226
|
// Resets the closed state whenever the message input is cleared
|
|
214
227
|
useEffect(() => {
|
|
@@ -258,7 +271,7 @@ export const Selector = <T, >({ inputRef, selectorConfig, favorite }: SelectorPr
|
|
|
258
271
|
<SelectorContent
|
|
259
272
|
favorite={favorite}
|
|
260
273
|
selectorConfig={selectorConfig}
|
|
261
|
-
filter={
|
|
274
|
+
filter={debouncedFilter}
|
|
262
275
|
onClose={() => setClosed(true)}
|
|
263
276
|
inputRef={inputRef}
|
|
264
277
|
/>
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { Icon } from '@stack-spot/citric-icons'
|
|
2
2
|
import { Accordion, Checkbox, CheckboxGroup, FieldGroup, Input, Row, Text, useCheckboxGroupControls } from '@stack-spot/citric-react'
|
|
3
|
+
import { InfiniteScroll } from '@stack-spot/portal-components/InfiniteScroll'
|
|
3
4
|
import { Dictionary, useTranslate } from '@stack-spot/portal-translate'
|
|
4
|
-
import { difference, uniqBy } from 'lodash'
|
|
5
|
+
import { difference, isEqual, uniqBy } from 'lodash'
|
|
5
6
|
import { useCallback, useEffect, useState } from 'react'
|
|
7
|
+
import styled from 'styled-components'
|
|
6
8
|
import { Labeled } from '../../state/types'
|
|
7
9
|
import { ButtonFavorite, Favorite } from '../ButtonFavorite'
|
|
8
10
|
|
|
@@ -20,8 +22,16 @@ interface Props<T> {
|
|
|
20
22
|
emptyResults: React.ReactNode,
|
|
21
23
|
emptyDataset: React.ReactNode,
|
|
22
24
|
onChange?: (value: T[]) => void,
|
|
25
|
+
fetchNextPage?: () => void,
|
|
26
|
+
hasNextPage?: boolean,
|
|
23
27
|
}
|
|
24
28
|
|
|
29
|
+
const StyledDiv = styled.div`
|
|
30
|
+
&#ks-scrollable {
|
|
31
|
+
overflow: auto;
|
|
32
|
+
}
|
|
33
|
+
`
|
|
34
|
+
|
|
25
35
|
/**
|
|
26
36
|
* Renders a checkbox group where each option has a label and a description.
|
|
27
37
|
* The description in placed under the label and checkbox as an accordion.
|
|
@@ -29,11 +39,12 @@ interface Props<T> {
|
|
|
29
39
|
* Also renders a search input and a select all checkbox.
|
|
30
40
|
*/
|
|
31
41
|
export function DescribedCheckboxGroup<T>(
|
|
32
|
-
{ initialValue, options: opt, data, globalSelection, onChange: change, emptyDataset, emptyResults
|
|
42
|
+
{ initialValue, options: opt, data, globalSelection, onChange: change, emptyDataset, emptyResults,
|
|
43
|
+
fetchNextPage, hasNextPage,
|
|
44
|
+
}: Props<T>,
|
|
33
45
|
) {
|
|
34
46
|
const t = useTranslate(dictionary)
|
|
35
47
|
const [options, setOptions] = useState(opt)
|
|
36
|
-
|
|
37
48
|
useEffect(() => {
|
|
38
49
|
if (controls.value.length === 0 && (initialValue?.length ?? 0) > 0) controls.setValue(initialValue!)
|
|
39
50
|
}, [initialValue])
|
|
@@ -58,7 +69,13 @@ export function DescribedCheckboxGroup<T>(
|
|
|
58
69
|
onChange,
|
|
59
70
|
})
|
|
60
71
|
|
|
61
|
-
|
|
72
|
+
useEffect(() => {
|
|
73
|
+
if (!isEqual(opt, options)) {
|
|
74
|
+
setOptions(opt)
|
|
75
|
+
}
|
|
76
|
+
}, [opt])
|
|
77
|
+
|
|
78
|
+
return options?.length ? <>
|
|
62
79
|
<FieldGroup fullWidth>
|
|
63
80
|
<Icon icon="Search" />
|
|
64
81
|
<Input type="search" value={controls.filter} onChange={controls.setFilter} />
|
|
@@ -68,37 +85,46 @@ export function DescribedCheckboxGroup<T>(
|
|
|
68
85
|
<Checkbox value={controls.isAllSelected} onChange={v => v ? controls.selectAll() : controls.removeSelection()} />
|
|
69
86
|
<Text>{controls.isAllSelected ? t.removeAll : t.selectAll}</Text>
|
|
70
87
|
</Row>
|
|
71
|
-
<
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
88
|
+
<StyledDiv id="ks-scrollable">
|
|
89
|
+
<InfiniteScroll
|
|
90
|
+
scrollableTarget="ks-scrollable"
|
|
91
|
+
dataLength={controls.options.length}
|
|
92
|
+
next={fetchNextPage as any ?? undefined}
|
|
93
|
+
hasMore={hasNextPage ?? false}
|
|
94
|
+
>
|
|
95
|
+
<CheckboxGroup
|
|
96
|
+
options={controls.options}
|
|
97
|
+
value={controls.value}
|
|
98
|
+
onChange={controls.setValue}
|
|
99
|
+
renderKey={controls.renderKey}
|
|
100
|
+
className="option-list"
|
|
101
|
+
renderItem={(checkbox, o) => {
|
|
102
|
+
const { description, idOrSlug, name, listFavorites, onAddFavorite, onRemoveFavorite } = data(o)
|
|
103
|
+
return (
|
|
104
|
+
<Row className={controls.isUnfilteredButChecked(o) ? 'filtered-out' : ''}>
|
|
105
|
+
<Accordion header={btn => <>{checkbox}<Text>{name}</Text>{btn}</>} appearance="card" maxHeight={100}>
|
|
106
|
+
<Text appearance="microtext1" color="light.700" style={{ wordBreak: 'break-all' }}>{description}</Text>
|
|
107
|
+
</Accordion>
|
|
108
|
+
{onAddFavorite && <ButtonFavorite favorite={{
|
|
109
|
+
idOrSlug: idOrSlug,
|
|
110
|
+
listFavorites,
|
|
111
|
+
onAddFavorite: async (...args) => {
|
|
112
|
+
const res = await onAddFavorite(...args)
|
|
113
|
+
setOptions([...options]) // forces options re-rendering
|
|
114
|
+
return res
|
|
115
|
+
},
|
|
116
|
+
onRemoveFavorite: async (...args) => {
|
|
117
|
+
const res = await onRemoveFavorite?.(...args)
|
|
118
|
+
setOptions([...options]) // forces options re-rendering
|
|
119
|
+
return res ?? false
|
|
120
|
+
},
|
|
121
|
+
}} />}
|
|
122
|
+
</Row>
|
|
123
|
+
)
|
|
124
|
+
}}
|
|
125
|
+
/>
|
|
126
|
+
</InfiniteScroll>
|
|
127
|
+
</StyledDiv>
|
|
102
128
|
</> : emptyResults}
|
|
103
129
|
</> : emptyDataset
|
|
104
130
|
}
|
|
@@ -30,7 +30,7 @@ export const AgentsTab = ({ visibility, workspaceId, agent, showSubmitButton = t
|
|
|
30
30
|
const [submitEnabled, setSubmitEnabled] = useState(false)
|
|
31
31
|
const listFavorites = useFavorites()
|
|
32
32
|
const agentDefault = agentToolsClient.agentDefault.useQuery()
|
|
33
|
-
|
|
33
|
+
|
|
34
34
|
const [filter, setFilter] = useState<string | undefined>()
|
|
35
35
|
const [apiFilter, setApiFilter] = useState<string | undefined>()
|
|
36
36
|
const [isPending, startTransition] = useTransition()
|
|
@@ -47,9 +47,9 @@ export const AgentsTab = ({ visibility, workspaceId, agent, showSubmitButton = t
|
|
|
47
47
|
const data = workspaceAiClient.getAgentFromWorkspaceAi.useStatefulQuery({ workspaceId: workspaceId! },
|
|
48
48
|
{ enabled: !!workspaceId })
|
|
49
49
|
const workspaceAgents = data?.[0] as AgentResponseWithBuiltIn[]
|
|
50
|
-
|
|
51
|
-
const [agentsData=[], { fetchNextPage, hasNextPage }] = agentToolsClient.agentsMultipleFilters.useInfiniteQuery({
|
|
52
|
-
filters: {
|
|
50
|
+
|
|
51
|
+
const [agentsData = [], { fetchNextPage, hasNextPage }] = agentToolsClient.agentsMultipleFilters.useInfiniteQuery({
|
|
52
|
+
filters: {
|
|
53
53
|
page: 1,
|
|
54
54
|
size: 20,
|
|
55
55
|
name: apiFilter,
|
|
@@ -78,7 +78,7 @@ export const AgentsTab = ({ visibility, workspaceId, agent, showSubmitButton = t
|
|
|
78
78
|
return <>
|
|
79
79
|
<div className="content">
|
|
80
80
|
<DescribedRadioGroup
|
|
81
|
-
fetchNextPage={fetchNextPage}
|
|
81
|
+
fetchNextPage={fetchNextPage}
|
|
82
82
|
hasNextPage={hasNextPage && !workspaceId}
|
|
83
83
|
options={agents}
|
|
84
84
|
initialValue={initialValue}
|