@stack-spot/ai-chat-widget 2.3.2 → 2.4.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 +8 -0
- package/dist/app-metadata.json +6 -6
- package/dist/chat-interceptors/quick-commands.d.ts.map +1 -1
- package/dist/chat-interceptors/quick-commands.js +8 -3
- package/dist/chat-interceptors/quick-commands.js.map +1 -1
- package/dist/state/ChatState.d.ts +4 -0
- package/dist/state/ChatState.d.ts.map +1 -1
- package/dist/state/ChatState.js.map +1 -1
- package/dist/utils/chat.d.ts.map +1 -1
- package/dist/utils/chat.js +1 -0
- package/dist/utils/chat.js.map +1 -1
- package/dist/utils/knowledge-source.d.ts +2 -2
- package/dist/views/MessageInput/ButtonBar.d.ts.map +1 -1
- package/dist/views/MessageInput/ButtonBar.js +2 -1
- package/dist/views/MessageInput/ButtonBar.js.map +1 -1
- package/dist/views/MessageInput/ModelSwitcher/index.d.ts +2 -0
- package/dist/views/MessageInput/ModelSwitcher/index.d.ts.map +1 -0
- package/dist/views/MessageInput/ModelSwitcher/index.js +25 -0
- package/dist/views/MessageInput/ModelSwitcher/index.js.map +1 -0
- package/dist/views/MessageInput/ModelSwitcher/utils.d.ts +30 -0
- package/dist/views/MessageInput/ModelSwitcher/utils.d.ts.map +1 -0
- package/dist/views/MessageInput/ModelSwitcher/utils.js +91 -0
- package/dist/views/MessageInput/ModelSwitcher/utils.js.map +1 -0
- package/dist/views/MessageInput/dictionary.d.ts +1 -1
- package/dist/views/MessageInput/dictionary.d.ts.map +1 -1
- package/dist/views/MessageInput/dictionary.js +6 -0
- package/dist/views/MessageInput/dictionary.js.map +1 -1
- package/dist/views/MessageInput/styled.d.ts +12 -0
- package/dist/views/MessageInput/styled.d.ts.map +1 -1
- package/dist/views/MessageInput/styled.js +35 -0
- package/dist/views/MessageInput/styled.js.map +1 -1
- package/package.json +4 -4
- package/src/app-metadata.json +6 -6
- package/src/chat-interceptors/quick-commands.ts +10 -3
- package/src/state/ChatState.ts +4 -0
- package/src/utils/chat.ts +1 -0
- package/src/utils/knowledge-source.ts +2 -2
- package/src/views/MessageInput/ButtonBar.tsx +2 -0
- package/src/views/MessageInput/ModelSwitcher/index.tsx +68 -0
- package/src/views/MessageInput/ModelSwitcher/utils.tsx +143 -0
- package/src/views/MessageInput/dictionary.ts +6 -0
- package/src/views/MessageInput/styled.ts +37 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [2.4.0](https://github.com/stack-spot/portal-ai-chat-widget/compare/ai-chat-widget@v2.3.2...ai-chat-widget@v2.4.0) (2025-11-06)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* Feat 1571 select for llm ([#336](https://github.com/stack-spot/portal-ai-chat-widget/issues/336)) ([ad77e47](https://github.com/stack-spot/portal-ai-chat-widget/commit/ad77e47d8ed6a1470b8c5fc532d0bda6565ab1b5))
|
|
9
|
+
* Support on error on prompt ([#373](https://github.com/stack-spot/portal-ai-chat-widget/issues/373)) ([d8b13d1](https://github.com/stack-spot/portal-ai-chat-widget/commit/d8b13d18980ef4f0331d6c9ff84ad61062568f6c))
|
|
10
|
+
|
|
3
11
|
## [2.3.2](https://github.com/stack-spot/portal-ai-chat-widget/compare/ai-chat-widget@v2.3.1...ai-chat-widget@v2.3.2) (2025-11-03)
|
|
4
12
|
|
|
5
13
|
|
package/dist/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.4.0",
|
|
4
|
+
"date": "Thu Nov 06 2025 20:51:36 GMT+0000 (Coordinated Universal Time)",
|
|
5
5
|
"dependencies": [
|
|
6
6
|
{
|
|
7
7
|
"name": "@stack-spot/app-metadata",
|
|
@@ -109,19 +109,19 @@
|
|
|
109
109
|
},
|
|
110
110
|
{
|
|
111
111
|
"name": "@stack-spot/citric-icons",
|
|
112
|
-
"version": "0.2.
|
|
112
|
+
"version": "0.2.5"
|
|
113
113
|
},
|
|
114
114
|
{
|
|
115
115
|
"name": "@stack-spot/citric-react",
|
|
116
|
-
"version": "0.36.0(@stack-spot/citric-icons@0.2.
|
|
116
|
+
"version": "0.36.0(@stack-spot/citric-icons@0.2.5)(@stack-spot/portal-theme@1.2.1(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(styled-components@6.1.10(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))(lodash@4.17.21)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)"
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
"name": "@stack-spot/portal-components",
|
|
120
|
-
"version": "2.
|
|
120
|
+
"version": "2.27.3(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@citric/icons@5.13.0(react@18.2.0))(@citric/ui@6.10.2(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@citric/icons@5.13.0(react@18.2.0))(lodash@4.17.21)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@stack-spot/portal-theme@1.2.1(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(styled-components@6.1.10(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))(@types/react@18.3.11)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)"
|
|
121
121
|
},
|
|
122
122
|
{
|
|
123
123
|
"name": "@stack-spot/portal-network",
|
|
124
|
-
"version": "0.
|
|
124
|
+
"version": "0.195.1(@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",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-commands.d.ts","sourceRoot":"","sources":["../../src/chat-interceptors/quick-commands.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAI3C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAyBlD;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"quick-commands.d.ts","sourceRoot":"","sources":["../../src/chat-interceptors/quick-commands.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAI3C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAyBlD;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,MAAM,GAAG,SAAS,WA6U7D,SAAS,QAAQ,SAAS,UAAU,WAAW,gCAwC9F"}
|
|
@@ -197,9 +197,14 @@ export function createQuickCommandInterceptor(widget, getEditor) {
|
|
|
197
197
|
const currentStep = qc.steps?.[currentIndex];
|
|
198
198
|
await (currentStep.type === 'FETCH' ? runFetchStep(ctx, currentIndex) : runLLMStep(ctx, currentIndex));
|
|
199
199
|
let nextIndex = currentIndex + 1;
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
200
|
+
let nextStepSlug = currentStep.next_step_slug;
|
|
201
|
+
const stepResult = ctx.resultMap[currentStep.slug];
|
|
202
|
+
if (stepResult && typeof stepResult !== 'string' && 'answer_status' in stepResult && !!stepResult.answer_status?.next_step_slug) {
|
|
203
|
+
nextStepSlug = stepResult.answer_status.next_step_slug;
|
|
204
|
+
}
|
|
205
|
+
if (nextStepSlug) {
|
|
206
|
+
nextIndex = nextStepSlug === 'end' ?
|
|
207
|
+
qc.steps.length : qc.steps?.findIndex((step) => step.slug === nextStepSlug);
|
|
203
208
|
}
|
|
204
209
|
await runStepsRecursively(nextIndex, progress, ctx, iteration);
|
|
205
210
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-commands.js","sourceRoot":"","sources":["../../src/chat-interceptors/quick-commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"quick-commands.js","sourceRoot":"","sources":["../../src/chat-interceptors/quick-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,6 +54,10 @@ export interface ChatPropertiesWithOptionalFeatures {
|
|
|
54
54
|
* If a feature is marked as false, it's disabled, otherwise it's enabled.
|
|
55
55
|
*/
|
|
56
56
|
features?: Partial<ChatFeatures>;
|
|
57
|
+
/**
|
|
58
|
+
* The current LLM (Large Language Model) being used for this chat.
|
|
59
|
+
*/
|
|
60
|
+
selected_model_id?: string;
|
|
57
61
|
}
|
|
58
62
|
export interface ChatProperties extends ChatPropertiesWithOptionalFeatures {
|
|
59
63
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatState.d.ts","sourceRoot":"","sources":["../../src/state/ChatState.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAA2B,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE/C,MAAM,WAAW,kCAAkC;IACjD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatState.d.ts","sourceRoot":"","sources":["../../src/state/ChatState.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAA2B,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE/C,MAAM,WAAW,kCAAkC;IACjD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACjC;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAe,SAAQ,kCAAkC;IACxE;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,KAAK,oBAAoB,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,IAAI,CAAA;AAEvD,MAAM,MAAM,kBAAkB,GAAG,CAC/B,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,KACnD,OAAO,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,CAAA;AAErE,UAAU,OAAO;IACf;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,OAAO,EAAE,kCAAkC,CAAC;IAC5C;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACpC;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,eAAe,CAAC,cAAc,CAAC;IAC5D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD;;OAEG;IACH,iBAAiB,mBAAyB;IAC1C;;OAEG;IACH,OAAO,CAAC,SAAS,CAAwB;IACzC;;OAEG;IACH,QAAQ,CAAC,aAAa,gBAAmG;IACzH,QAAQ,EAAE,OAAO,CAAA;gBAEL,EAAE,EAAE,EAAE,OAAO,EAAE,OAAY,EAAE,YAAiB,EAAE,QAAgB,EAAE,EAAE,OAAO;IAQvF,OAAO,CAAC,oBAAoB;YAId,eAAe;IAe7B;;;OAGG;IACH,WAAW,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE;IAOnC;;;OAGG;IACH,UAAU,CAAC,QAAQ,SAAI;IAKvB;;OAEG;IACH,WAAW;IAIX;;;;OAIG;IACH,gBAAgB,CAAC,QAAQ,EAAE,oBAAoB;IAO/C;;OAEG;IACH,KAAK;IAKL;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM;CAUhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatState.js","sourceRoot":"","sources":["../../src/state/ChatState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAgB,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAE7D,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"ChatState.js","sourceRoot":"","sources":["../../src/state/ChatState.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/chat.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/utils/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAG9C;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/utils/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAG9C;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAgB3G"}
|
package/dist/utils/chat.js
CHANGED
|
@@ -22,6 +22,7 @@ export function buildConversationContext(state, message) {
|
|
|
22
22
|
platform: 'web-widget',
|
|
23
23
|
platform_version: navigator.userAgent,
|
|
24
24
|
stackspot_ai_version: appData.version,
|
|
25
|
+
selected_model_id: state.get('selected_model_id'),
|
|
25
26
|
};
|
|
26
27
|
}
|
|
27
28
|
//# sourceMappingURL=chat.js.map
|
package/dist/utils/chat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/utils/chat.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,sBAAsB,CAAA;AAG1C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAgB,EAAE,OAAmB;IAC5E,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE;QACrC,eAAe,EAAE,KAAK,CAAC,EAAE;QACzB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE;QAChC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;QACjG,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAClE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE;QAChC,cAAc,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;QAC3C,EAAE,EAAE,SAAS,CAAC,SAAS;QACvB,QAAQ,EAAE,YAAY;QACtB,gBAAgB,EAAE,SAAS,CAAC,SAAS;QACrC,oBAAoB,EAAE,OAAO,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/utils/chat.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,sBAAsB,CAAA;AAG1C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAgB,EAAE,OAAmB;IAC5E,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE;QACrC,eAAe,EAAE,KAAK,CAAC,EAAE;QACzB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE;QAChC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;QACjG,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAClE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE;QAChC,cAAc,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO;QAC3C,EAAE,EAAE,SAAS,CAAC,SAAS;QACvB,QAAQ,EAAE,YAAY;QACtB,gBAAgB,EAAE,SAAS,CAAC,SAAS;QACrC,oBAAoB,EAAE,OAAO,CAAC,OAAO;QACrC,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC;KAClD,CAAA;AACH,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DocumentResponse, SourceKnowledgeSource,
|
|
1
|
+
import { DocumentResponse, SourceKnowledgeSource, SourceProjectFile3, SourceStackAi } from '@stack-spot/portal-network/api/ai';
|
|
2
2
|
import { KnowledgeSource } from '../state/ChatEntry.js';
|
|
3
3
|
/**
|
|
4
4
|
* Extracts the important part of a KS document to show for the user.
|
|
@@ -15,5 +15,5 @@ export declare function extractCodeFromKSDocument(document: DocumentResponse): {
|
|
|
15
15
|
* @param sources a list with sources of any kind.
|
|
16
16
|
* @returns a list of knowledge sources in the format expected by the chat.
|
|
17
17
|
*/
|
|
18
|
-
export declare function genericSourcesToKnowledgeSources(sources: (SourceStackAi | SourceKnowledgeSource |
|
|
18
|
+
export declare function genericSourcesToKnowledgeSources(sources: (SourceStackAi | SourceKnowledgeSource | SourceProjectFile3)[] | undefined): KnowledgeSource[] | undefined;
|
|
19
19
|
//# sourceMappingURL=knowledge-source.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBar.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/ButtonBar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ButtonBar.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/ButtonBar.tsx"],"names":[],"mappings":"AAOA,UAAU,iBAAiB;IACzB;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,0BAA2B,iBAAiB,4CAsCjE,CAAA"}
|
|
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { IconButton, Row } from '@stack-spot/citric-react';
|
|
3
3
|
import { useCurrentChat, useCurrentChatState, useWidget } from '../../context/hooks.js';
|
|
4
4
|
import { useMessageInputDictionary } from './dictionary.js';
|
|
5
|
+
import { ModelSwitcher } from './ModelSwitcher/index.js';
|
|
5
6
|
import { SelectContent } from './SelectContent.js';
|
|
6
7
|
import { SelectionBarWrapper } from './styled.js';
|
|
7
8
|
export const ButtonBar = ({ onSend, isLoading }) => {
|
|
@@ -9,6 +10,6 @@ export const ButtonBar = ({ onSend, isLoading }) => {
|
|
|
9
10
|
const chat = useCurrentChat();
|
|
10
11
|
const widget = useWidget();
|
|
11
12
|
const features = useCurrentChatState('features');
|
|
12
|
-
return (_jsxs(SelectionBarWrapper, { className: "button-group", children: [_jsxs(Row, { center: false, gap: "4px", children: [_jsx(SelectContent, {}), features.editor && (_jsx(IconButton, { icon: "Code", appearance: "square", "aria-label": t.code, title: t.code, onClick: () => widget.set('panel', 'editor') }))] }), isLoading ? (_jsx(IconButton, { icon: "Stop", appearance: "square", colorScheme: "inverse", "aria-label": t.cancel, onClick: () => chat.abort(), className: "send", title: t.cancel })) : (_jsx(IconButton, { icon: "ArrowUp", appearance: "square", colorScheme: "inverse", "aria-label": t.send, onClick: onSend, className: "send", title: t.send }))] }));
|
|
13
|
+
return (_jsxs(SelectionBarWrapper, { className: "button-group", children: [_jsxs(Row, { center: false, gap: "4px", children: [_jsx(SelectContent, {}), features.editor && (_jsx(IconButton, { icon: "Code", appearance: "square", "aria-label": t.code, title: t.code, onClick: () => widget.set('panel', 'editor') }))] }), _jsx(ModelSwitcher, {}), isLoading ? (_jsx(IconButton, { icon: "Stop", appearance: "square", colorScheme: "inverse", "aria-label": t.cancel, onClick: () => chat.abort(), className: "send", title: t.cancel })) : (_jsx(IconButton, { icon: "ArrowUp", appearance: "square", colorScheme: "inverse", "aria-label": t.send, onClick: onSend, className: "send", title: t.send }))] }));
|
|
13
14
|
};
|
|
14
15
|
//# sourceMappingURL=ButtonBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonBar.js","sourceRoot":"","sources":["../../../src/views/MessageInput/ButtonBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAa9C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAqB,EAAE,EAAE;IACpE,MAAM,CAAC,GAAG,yBAAyB,EAAE,CAAA;IACrC,MAAM,IAAI,GAAG,cAAc,EAAE,CAAA;IAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,QAAQ,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAA;IAEhD,OAAO,CACL,MAAC,mBAAmB,IAAC,SAAS,EAAC,cAAc,aAC3C,MAAC,GAAG,IAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAC,KAAK,aAC3B,KAAC,aAAa,KAAG,EAChB,QAAQ,CAAC,MAAM,IAAI,CAClB,KAAC,UAAU,IAAC,IAAI,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,gBAAa,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAI,CAChI,IACG,
|
|
1
|
+
{"version":3,"file":"ButtonBar.js","sourceRoot":"","sources":["../../../src/views/MessageInput/ButtonBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAa9C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAqB,EAAE,EAAE;IACpE,MAAM,CAAC,GAAG,yBAAyB,EAAE,CAAA;IACrC,MAAM,IAAI,GAAG,cAAc,EAAE,CAAA;IAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,QAAQ,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAA;IAEhD,OAAO,CACL,MAAC,mBAAmB,IAAC,SAAS,EAAC,cAAc,aAC3C,MAAC,GAAG,IAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAC,KAAK,aAC3B,KAAC,aAAa,KAAG,EAChB,QAAQ,CAAC,MAAM,IAAI,CAClB,KAAC,UAAU,IAAC,IAAI,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,gBAAa,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAI,CAChI,IACG,EACN,KAAC,aAAa,KAAG,EAChB,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,UAAU,IACT,IAAI,EAAC,MAAM,EACX,UAAU,EAAC,QAAQ,EACnB,WAAW,EAAC,SAAS,gBACT,CAAC,CAAC,MAAM,EACpB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAC3B,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE,CAAC,CAAC,MAAM,GACf,CACH,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IACT,IAAI,EAAC,SAAS,EACd,UAAU,EAAC,QAAQ,EACnB,WAAW,EAAC,SAAS,gBACT,CAAC,CAAC,IAAI,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE,CAAC,CAAC,IAAI,GACb,CACH,IACmB,CACvB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/MessageInput/ModelSwitcher/index.tsx"],"names":[],"mappings":"AAWA,eAAO,MAAM,aAAa,+CAwDzB,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { AsyncContent, Button, Column, FieldGroup, Icon, Input, Row } from '@stack-spot/citric-react';
|
|
3
|
+
import { SelectionList } from '@stack-spot/portal-components/SelectionList';
|
|
4
|
+
import { agentToolsClient, genAiInferenceClient } from '@stack-spot/portal-network';
|
|
5
|
+
import { useMemo, useState } from 'react';
|
|
6
|
+
import { useCurrentChat, useCurrentChatState } from '../../../context/hooks.js';
|
|
7
|
+
import { useMessageInputDictionary } from '../dictionary.js';
|
|
8
|
+
import { RowWrapperStyled, stylesModelSwitcher } from '../styled.js';
|
|
9
|
+
import { getListModelsData, handleFilterTypeModel, providerIcon } from './utils.js';
|
|
10
|
+
export const ModelSwitcher = () => {
|
|
11
|
+
const t = useMessageInputDictionary();
|
|
12
|
+
const agentCurrentChat = useCurrentChatState('agent');
|
|
13
|
+
const chat = useCurrentChat();
|
|
14
|
+
const [filter, setFilter] = useState('');
|
|
15
|
+
const [visibleMenu, setVisibleMenu] = useState(false);
|
|
16
|
+
const [agentData, isLoadingAgentData] = agentToolsClient.agent.useStatefulQuery({ agentId: agentCurrentChat?.id || '' });
|
|
17
|
+
const [models, isLoadingModels] = genAiInferenceClient.listModels.useStatefulQuery({ pageSize: 999, active: true });
|
|
18
|
+
const { modelName, modelProviderType, listItemsData } = getListModelsData(chat, setVisibleMenu, agentData, models);
|
|
19
|
+
const data = useMemo(() => {
|
|
20
|
+
const items = listItemsData ?? [];
|
|
21
|
+
return handleFilterTypeModel(items, t, filter);
|
|
22
|
+
}, [agentCurrentChat?.id, listItemsData, filter]);
|
|
23
|
+
return (_jsxs(RowWrapperStyled, { children: [_jsx(AsyncContent, { loading: isLoadingAgentData && isLoadingModels, children: _jsxs(Button, { className: "button-select-model", colorScheme: "light", size: "sm", "aria-label": t.agent, title: t.agent, onClick: () => setVisibleMenu(state => !state), children: [_jsx(Icon, { icon: providerIcon[modelProviderType], group: modelProviderType === 'stackspot' ? 'outline' : 'social' }), modelName, _jsx(Icon, { icon: "ChevronDown", group: "fill", size: "sm" })] }) }), _jsx(SelectionList, { id: "menuModelSwitcher", items: data || [], visible: visibleMenu, onHide: () => setVisibleMenu(false), showListAsCard: true, style: stylesModelSwitcher.selection, before: _jsxs(Column, { children: [_jsxs(FieldGroup, { fullWidth: true, style: { marginTop: '8px' }, children: [_jsx(Icon, { icon: "Search" }), _jsx(Input, { type: "search", value: filter, onChange: (value) => (setFilter(value)) })] }), !data.length ? _jsx(Row, { m: "16px 8px", children: t.nothingFound }) : undefined] }) })] }));
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/MessageInput/ModelSwitcher/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { CitricIconOutline, CitricIconSocial } from '@stack-spot/citric-icons';
|
|
2
|
+
import { AgentModel } from '@stack-spot/portal-network/api/agent-tools';
|
|
3
|
+
import { PaginatedResponseLlmModelsResponse } from '@stack-spot/portal-network/api/genAiInference';
|
|
4
|
+
import { Dispatch, ReactElement } from 'react';
|
|
5
|
+
import { ChatState } from '../../../state/ChatState.js';
|
|
6
|
+
export interface ItemProps {
|
|
7
|
+
active?: boolean;
|
|
8
|
+
label?: string;
|
|
9
|
+
icon?: ReactElement;
|
|
10
|
+
self_hosted?: boolean;
|
|
11
|
+
onClick?: VoidFunction;
|
|
12
|
+
}
|
|
13
|
+
export declare const providerIcon: Record<string, CitricIconSocial | CitricIconOutline>;
|
|
14
|
+
export declare function getListModelsData(chat: ChatState, setVisibleMenu: Dispatch<React.SetStateAction<boolean>>, agent?: AgentModel, models?: PaginatedResponseLlmModelsResponse): {
|
|
15
|
+
modelName: string | null | undefined;
|
|
16
|
+
modelProviderType: string | undefined;
|
|
17
|
+
listItemsData: ItemProps[] | {
|
|
18
|
+
active: boolean;
|
|
19
|
+
label: string;
|
|
20
|
+
icon: import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
self_hosted: boolean;
|
|
22
|
+
onClick: () => void;
|
|
23
|
+
}[];
|
|
24
|
+
};
|
|
25
|
+
export declare function handleFilterTypeModel(items: ItemProps[], t: Record<string, string>, filter?: string): {
|
|
26
|
+
type: string;
|
|
27
|
+
label: string;
|
|
28
|
+
children: ItemProps[];
|
|
29
|
+
}[];
|
|
30
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/views/MessageInput/ModelSwitcher/utils.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAA;AACvE,OAAO,EAAqB,kCAAkC,EAAE,MAAM,+CAA+C,CAAA;AAErH,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,MAAM,WAAW,SAAS;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAEH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,iBAAiB,CAQ7E,CAAA;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EACvD,KAAK,CAAC,EAAE,UAAU,EAClB,MAAM,CAAC,EAAE,kCAAkC;;;;;;;;;;EA2C5C;AAiCD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM;;;;IAoCnG"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { IconBox } from '@stack-spot/citric-react';
|
|
3
|
+
import { theme } from '@stack-spot/portal-theme';
|
|
4
|
+
export const providerIcon = {
|
|
5
|
+
openai: 'OpenAI',
|
|
6
|
+
bedrock: 'AWSBedrock',
|
|
7
|
+
azure: 'Azure',
|
|
8
|
+
stackspot: 'StackSpot',
|
|
9
|
+
gemini: 'Gemini',
|
|
10
|
+
deepseek: 'DeepSeek',
|
|
11
|
+
anthropic: 'Anthropic',
|
|
12
|
+
};
|
|
13
|
+
export function getListModelsData(chat, setVisibleMenu, agent, models) {
|
|
14
|
+
const chatSelectedModelId = chat.get('selected_model_id');
|
|
15
|
+
const listModelsToShow = agent?.visibility_level !== 'built_in' && !!agent?.model_id ?
|
|
16
|
+
models?.items.filter((model) => agent?.available_llm_models?.find((modelAvailable) => modelAvailable.model_id === model.id)) :
|
|
17
|
+
models?.items;
|
|
18
|
+
const modelAvailableDefault = agent?.available_llm_models?.find((model) => (model.is_default || model.model_id === agent.model_id));
|
|
19
|
+
const modelListData = parseModelList(chat, setVisibleMenu, listModelsToShow, modelAvailableDefault?.model_id);
|
|
20
|
+
if (agent?.visibility_level === 'built_in' || !agent?.model_id) {
|
|
21
|
+
const modelDefaultProviderType = models?.items.find((modelAccount) => chatSelectedModelId ? modelAccount.id === chatSelectedModelId :
|
|
22
|
+
modelAccount.resources.find((resource) => resource.is_default))?.model_configuration.provider.provider_type;
|
|
23
|
+
const modelDefaultActive = modelListData.find((model) => model?.active);
|
|
24
|
+
return { modelName: modelDefaultActive?.label, modelProviderType: modelDefaultProviderType, listItemsData: modelListData };
|
|
25
|
+
}
|
|
26
|
+
const modelAccount = models?.items.find((modelAccount) => modelAccount.id === (chatSelectedModelId || agent.model_id));
|
|
27
|
+
const modelProviderType = modelAccount?.model_configuration.provider.provider_type;
|
|
28
|
+
const modelSelectedName = modelAccount?.display_name || modelAvailableDefault?.model_name || agent?.model_name;
|
|
29
|
+
const listItemsData = modelListData && modelListData?.length > 0 ? modelListData :
|
|
30
|
+
[{
|
|
31
|
+
active: true,
|
|
32
|
+
label: modelSelectedName || '',
|
|
33
|
+
icon: _jsx(IconBox, { icon: providerIcon[modelProviderType || 'stackspot'], appearance: "square", group: modelProviderType === 'stackspot' ? 'outline' : 'social' }),
|
|
34
|
+
self_hosted: modelAccount?.self_hosted || false,
|
|
35
|
+
onClick: () => {
|
|
36
|
+
chat.set('selected_model_id', modelAvailableDefault?.model_id);
|
|
37
|
+
setVisibleMenu(false);
|
|
38
|
+
},
|
|
39
|
+
}];
|
|
40
|
+
return { modelName: modelSelectedName, modelProviderType, listItemsData };
|
|
41
|
+
}
|
|
42
|
+
function parseModelList(chat, setVisibleMenu, listModel, modelAvailableDefaultId) {
|
|
43
|
+
const data = Array();
|
|
44
|
+
const chatModelId = chat.get('selected_model_id');
|
|
45
|
+
listModel?.forEach((model) => {
|
|
46
|
+
data.push({
|
|
47
|
+
active: chatModelId ? chatModelId === model.id : modelAvailableDefaultId === model.id ||
|
|
48
|
+
model.resources?.some((resource) => resource.is_default && resource.name === 'agents'),
|
|
49
|
+
label: model?.display_name || 'LLM',
|
|
50
|
+
icon: _jsx(IconBox, { style: { backgroundColor: theme.color.light[300] }, appearance: "square", icon: providerIcon[model.model_configuration.provider.provider_type], group: model.model_configuration.provider.provider_type === 'stackspot' ? 'outline' : 'social' }),
|
|
51
|
+
self_hosted: model.self_hosted,
|
|
52
|
+
onClick: () => {
|
|
53
|
+
chat.set('selected_model_id', model.id);
|
|
54
|
+
setVisibleMenu(false);
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
return data;
|
|
59
|
+
}
|
|
60
|
+
export function handleFilterTypeModel(items, t, filter) {
|
|
61
|
+
const filterLower = filter?.toLocaleLowerCase();
|
|
62
|
+
const filteredItens = items.filter((item) => filterLower ? item?.label?.toLocaleLowerCase().includes(filterLower) : item);
|
|
63
|
+
const { selfHosted, hosted } = filteredItens.reduce((acc, model) => {
|
|
64
|
+
if (model?.self_hosted) {
|
|
65
|
+
acc.selfHosted.push(model);
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
acc.hosted.push(model);
|
|
69
|
+
}
|
|
70
|
+
return acc;
|
|
71
|
+
}, { selfHosted: [], hosted: [] });
|
|
72
|
+
const sections = [
|
|
73
|
+
{
|
|
74
|
+
label: t.hosted,
|
|
75
|
+
children: hosted,
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
label: t.selfHosted,
|
|
79
|
+
children: selfHosted,
|
|
80
|
+
},
|
|
81
|
+
];
|
|
82
|
+
const filteredByHavingItens = sections
|
|
83
|
+
.filter(section => section.children.length > 0)
|
|
84
|
+
.map(section => ({
|
|
85
|
+
type: 'section',
|
|
86
|
+
label: section.label,
|
|
87
|
+
children: section.children,
|
|
88
|
+
}));
|
|
89
|
+
return filteredByHavingItens;
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/views/MessageInput/ModelSwitcher/utils.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const useMessageInputDictionary: () => Record<"stack" | "knowledgeSource" | "agent" | "upload" | "cancel" | "code" | "placeholder" | "remove" | "selected" | "send" | "collapse" | "expand" | "spot" | "typing" | "removeConfig" | "removeStack" | "removeWorkspace" | "removeKS" | "removeSelection" | "uploadSizeError" | "uploadItemLimitError" | "uploadError" | "uploadDragging" | "uploadDragDropTitle" | "uploadDragDropDescription" | "unknownUploadError" | "cantSendBecauseOfUploadError" | "cantSendBecauseOfUploadProgress" | "cantSendBecauseOfEmptyContent" | "cantSendBecausePromptMaxLength" | "chatAgent" | "uploadSuccessStatus" | "chatViewMenu", string>;
|
|
1
|
+
export declare const useMessageInputDictionary: () => Record<"stack" | "knowledgeSource" | "agent" | "upload" | "cancel" | "code" | "placeholder" | "remove" | "selected" | "send" | "collapse" | "expand" | "spot" | "typing" | "removeConfig" | "removeStack" | "removeWorkspace" | "removeKS" | "removeSelection" | "uploadSizeError" | "uploadItemLimitError" | "uploadError" | "uploadDragging" | "uploadDragDropTitle" | "uploadDragDropDescription" | "unknownUploadError" | "cantSendBecauseOfUploadError" | "cantSendBecauseOfUploadProgress" | "cantSendBecauseOfEmptyContent" | "cantSendBecausePromptMaxLength" | "chatAgent" | "uploadSuccessStatus" | "chatViewMenu" | "nothingFound" | "hosted" | "selfHosted", string>;
|
|
2
2
|
//# sourceMappingURL=dictionary.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dictionary.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/dictionary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dictionary.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/dictionary.ts"],"names":[],"mappings":"AAiFA,eAAO,MAAM,yBAAyB,wpBAAiC,CAAA"}
|
|
@@ -34,6 +34,9 @@ const dictionary = {
|
|
|
34
34
|
chatAgent: 'Agents',
|
|
35
35
|
uploadSuccessStatus: 'File sent successfully',
|
|
36
36
|
chatViewMenu: 'Chat options menu',
|
|
37
|
+
nothingFound: 'Nothing Found',
|
|
38
|
+
hosted: 'Hosted',
|
|
39
|
+
selfHosted: 'Self Hosted',
|
|
37
40
|
},
|
|
38
41
|
pt: {
|
|
39
42
|
stack: 'Selecionar stack',
|
|
@@ -69,6 +72,9 @@ const dictionary = {
|
|
|
69
72
|
chatAgent: 'Agentes',
|
|
70
73
|
uploadSuccessStatus: 'Arquivo anexado com sucesso',
|
|
71
74
|
chatViewMenu: 'Menu de opções do chat',
|
|
75
|
+
nothingFound: 'Nada encontrado',
|
|
76
|
+
hosted: 'Hospedado',
|
|
77
|
+
selfHosted: 'Auto-hospedado',
|
|
72
78
|
},
|
|
73
79
|
};
|
|
74
80
|
export const useMessageInputDictionary = () => useTranslate(dictionary);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dictionary.js","sourceRoot":"","sources":["../../../src/views/MessageInput/dictionary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAEvE,MAAM,UAAU,GAAG;IACjB,EAAE,EAAE;QACF,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,0BAA0B;QAC3C,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,gDAAgD;QAC7D,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE,QAAQ;QAChB,YAAY,EAAE,8BAA8B;QAC5C,WAAW,EAAE,8BAA8B;QAC3C,eAAe,EAAE,6BAA6B;QAC9C,QAAQ,EAAE,kCAAkC;QAC5C,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,+BAA+B;QAChD,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,gBAAgB;QACxB,QAAQ,EAAE,kBAAkB;QAC5B,eAAe,EAAE,wFAAwF;QACzG,oBAAoB,EAAE,6FAA6F;QACnH,WAAW,EAAE,kDAAkD;QAC/D,cAAc,EAAE,8BAA8B;QAC9C,mBAAmB,EAAE,sBAAsB;QAC3C,yBAAyB,EAAE,iDAAiD;QAC5E,kBAAkB,EAAE,8CAA8C;QAClE,4BAA4B,EAAE,yIAAyI;QACvK,+BAA+B,EAAE,8IAA8I;QAC/K,6BAA6B,EAAE,0EAA0E;QACzG,8BAA8B,EAAE,mFAAmF;QACnH,SAAS,EAAE,QAAQ;QACnB,mBAAmB,EAAE,wBAAwB;QAC7C,YAAY,EAAE,mBAAmB;
|
|
1
|
+
{"version":3,"file":"dictionary.js","sourceRoot":"","sources":["../../../src/views/MessageInput/dictionary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAEvE,MAAM,UAAU,GAAG;IACjB,EAAE,EAAE;QACF,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,aAAa;QACnB,eAAe,EAAE,0BAA0B;QAC3C,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,gDAAgD;QAC7D,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE,QAAQ;QAChB,YAAY,EAAE,8BAA8B;QAC5C,WAAW,EAAE,8BAA8B;QAC3C,eAAe,EAAE,6BAA6B;QAC9C,QAAQ,EAAE,kCAAkC;QAC5C,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,+BAA+B;QAChD,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,gBAAgB;QACxB,QAAQ,EAAE,kBAAkB;QAC5B,eAAe,EAAE,wFAAwF;QACzG,oBAAoB,EAAE,6FAA6F;QACnH,WAAW,EAAE,kDAAkD;QAC/D,cAAc,EAAE,8BAA8B;QAC9C,mBAAmB,EAAE,sBAAsB;QAC3C,yBAAyB,EAAE,iDAAiD;QAC5E,kBAAkB,EAAE,8CAA8C;QAClE,4BAA4B,EAAE,yIAAyI;QACvK,+BAA+B,EAAE,8IAA8I;QAC/K,6BAA6B,EAAE,0EAA0E;QACzG,8BAA8B,EAAE,mFAAmF;QACnH,SAAS,EAAE,QAAQ;QACnB,mBAAmB,EAAE,wBAAwB;QAC7C,YAAY,EAAE,mBAAmB;QACjC,YAAY,EAAE,eAAe;QAC7B,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,aAAa;KAC1B;IACD,EAAE,EAAE;QACF,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,wBAAwB;QAC9B,IAAI,EAAE,iBAAiB;QACvB,eAAe,EAAE,8BAA8B;QAC/C,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,uDAAuD;QACpE,MAAM,EAAE,wBAAwB;QAChC,MAAM,EAAE,UAAU;QAClB,YAAY,EAAE,gCAAgC;QAC9C,WAAW,EAAE,6BAA6B;QAC1C,eAAe,EAAE,4BAA4B;QAC7C,QAAQ,EAAE,qCAAqC;QAC/C,QAAQ,EAAE,aAAa;QACvB,eAAe,EAAE,4BAA4B;QAC7C,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,gBAAgB;QACxB,MAAM,EAAE,gBAAgB;QACxB,QAAQ,EAAE,iBAAiB;QAC3B,eAAe,EAAE,+FAA+F;QAChH,oBAAoB,EAAE,wHAAwH;QAC9I,WAAW,EAAE,2CAA2C;QACxD,cAAc,EAAE,wCAAwC;QACxD,mBAAmB,EAAE,0BAA0B;QAC/C,yBAAyB,EAAE,yDAAyD;QACpF,kBAAkB,EAAE,wCAAwC;QAC5D,4BAA4B,EAAE,4JAA4J;QAC1L,+BAA+B,EAAE,iJAAiJ;QAClL,6BAA6B,EAAE,6FAA6F;QAC5H,8BAA8B,EAAE,2FAA2F;QAC3H,SAAS,EAAE,SAAS;QACpB,mBAAmB,EAAE,6BAA6B;QAClD,YAAY,EAAE,wBAAwB;QACtC,YAAY,EAAE,iBAAiB;QAC/B,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,gBAAgB;KAC7B;CACmB,CAAA;AAEtB,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA"}
|
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
export declare const MIN_INPUT_HEIGHT = 24;
|
|
2
2
|
export declare const SelectionBarWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
3
3
|
export declare const MessageInputBox: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
4
|
+
export declare const stylesModelSwitcher: {
|
|
5
|
+
selection: {
|
|
6
|
+
minHeight: string;
|
|
7
|
+
position: string;
|
|
8
|
+
bottom: string;
|
|
9
|
+
right: string;
|
|
10
|
+
margin: string;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export declare const RowWrapperStyled: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").FastOmit<Omit<import("styled-components/dist/types").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import("@citric/core/dist/Flex.js").Props> & import("@citric/core/dist/Flex.js").Props, "ref"> & {
|
|
14
|
+
ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
15
|
+
}, never>> & string;
|
|
4
16
|
//# sourceMappingURL=styled.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/styled.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../src/views/MessageInput/styled.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,gBAAgB,KAAK,CAAA;AAElC,eAAO,MAAM,mBAAmB,wOAyC/B,CAAA;AAED,eAAO,MAAM,eAAe,wOA2P3B,CAAA;AAED,eAAO,MAAM,mBAAmB;;;;;;;;CAQ/B,CAAA;AAED,eAAO,MAAM,gBAAgB;;mBAwB5B,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Flex } from '@citric/core';
|
|
1
2
|
import { theme } from '@stack-spot/portal-theme';
|
|
2
3
|
import { styled } from 'styled-components';
|
|
3
4
|
const CONTEXT_BAR_HEIGHT = 38;
|
|
@@ -299,4 +300,38 @@ export const MessageInputBox = styled.div `
|
|
|
299
300
|
}
|
|
300
301
|
}
|
|
301
302
|
`;
|
|
303
|
+
export const stylesModelSwitcher = {
|
|
304
|
+
selection: {
|
|
305
|
+
minHeight: '300px',
|
|
306
|
+
position: 'absolute',
|
|
307
|
+
bottom: 'calc(100% + 10px)',
|
|
308
|
+
right: '0',
|
|
309
|
+
margin: '0',
|
|
310
|
+
},
|
|
311
|
+
};
|
|
312
|
+
export const RowWrapperStyled = styled(Flex) `
|
|
313
|
+
width: 100%;
|
|
314
|
+
justify-content: end;
|
|
315
|
+
margin-right: 4px;
|
|
316
|
+
ul {
|
|
317
|
+
margin: 0;
|
|
318
|
+
}
|
|
319
|
+
.button-select-model {
|
|
320
|
+
border-radius: 15px !important;
|
|
321
|
+
}
|
|
322
|
+
#menuModelSwitcher {
|
|
323
|
+
background-color: ${theme.color.light[500]};
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
.selection-list-content {
|
|
327
|
+
.action :hover {
|
|
328
|
+
cursor: pointer;
|
|
329
|
+
background-color: ${theme.color.light[600]};
|
|
330
|
+
}
|
|
331
|
+
ul :hover {
|
|
332
|
+
background-color: transparent;
|
|
333
|
+
cursor: default;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
`;
|
|
302
337
|
//# sourceMappingURL=styled.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.js","sourceRoot":"","sources":["../../../src/views/MessageInput/styled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,MAAM,kBAAkB,GAAG,EAAE,CAAA;AAC7B,MAAM,wBAAwB,GAAG,CAAC,CAAA;AAClC,MAAM,iBAAiB,GAAG,EAAE,CAAA;AAC5B,MAAM,uBAAuB,GAAG,CAAC,CAAA;AACjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAElC,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;sBAKvB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;wBAcpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;0BAgBpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;0BAGtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;CAG/C,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAsCf,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0B1B,kBAAkB,GAAG,wBAAwB;wBAC3C,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA2BpB,iBAAiB,GAAG,uBAAuB;wBACzC,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;0BA0Bf,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;0BAEtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;wBAOxB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAuEhB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;8BACtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;gCAQpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;oBAOlC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY;;;;;;;;;;;;;;;;;;;8BAmBpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;cAStC,gBAAgB;;;;;;;;CAQ7B,CAAA"}
|
|
1
|
+
{"version":3,"file":"styled.js","sourceRoot":"","sources":["../../../src/views/MessageInput/styled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,MAAM,kBAAkB,GAAG,EAAE,CAAA;AAC7B,MAAM,wBAAwB,GAAG,CAAC,CAAA;AAClC,MAAM,iBAAiB,GAAG,EAAE,CAAA;AAC5B,MAAM,uBAAuB,GAAG,CAAC,CAAA;AACjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAElC,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;sBAKvB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;wBAcpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;0BAgBpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;0BAGtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;CAG/C,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAsCf,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0B1B,kBAAkB,GAAG,wBAAwB;wBAC3C,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA2BpB,iBAAiB,GAAG,uBAAuB;wBACzC,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;0BA0Bf,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;0BAEtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;wBAOxB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAuEhB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;8BACtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;gCAQpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;oBAOlC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY;;;;;;;;;;;;;;;;;;;8BAmBpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;;;cAStC,gBAAgB;;;;;;;;CAQ7B,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS,EAAE;QACT,SAAS,EAAE,OAAO;QAClB,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,mBAAmB;QAC3B,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;KACZ;CACF,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;;;;;;;;;;;wBAWpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;0BAMpB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;;;;;;CAO/C,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stack-spot/ai-chat-widget",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
},
|
|
12
12
|
"peerDependencies": {
|
|
13
13
|
"@stack-spot/citric-react": "^0.36.0",
|
|
14
|
-
"@stack-spot/citric-icons": "^0.2.
|
|
14
|
+
"@stack-spot/citric-icons": "^0.2.5",
|
|
15
15
|
"@stack-spot/portal-theme": "^1.2.1",
|
|
16
16
|
"@citric/core": "^6.4.0",
|
|
17
|
-
"@stack-spot/portal-components": "^2.
|
|
17
|
+
"@stack-spot/portal-components": "^2.27.3",
|
|
18
18
|
"@citric/icons": "^5.13.0",
|
|
19
|
-
"@stack-spot/portal-network": "0.
|
|
19
|
+
"@stack-spot/portal-network": "0.195.1",
|
|
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.4.0",
|
|
4
|
+
"date": "Thu Nov 06 2025 20:51:36 GMT+0000 (Coordinated Universal Time)",
|
|
5
5
|
"dependencies": [
|
|
6
6
|
{
|
|
7
7
|
"name": "@stack-spot/app-metadata",
|
|
@@ -109,19 +109,19 @@
|
|
|
109
109
|
},
|
|
110
110
|
{
|
|
111
111
|
"name": "@stack-spot/citric-icons",
|
|
112
|
-
"version": "0.2.
|
|
112
|
+
"version": "0.2.5"
|
|
113
113
|
},
|
|
114
114
|
{
|
|
115
115
|
"name": "@stack-spot/citric-react",
|
|
116
|
-
"version": "0.36.0(@stack-spot/citric-icons@0.2.
|
|
116
|
+
"version": "0.36.0(@stack-spot/citric-icons@0.2.5)(@stack-spot/portal-theme@1.2.1(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(styled-components@6.1.10(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))(lodash@4.17.21)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)"
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
"name": "@stack-spot/portal-components",
|
|
120
|
-
"version": "2.
|
|
120
|
+
"version": "2.27.3(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@citric/icons@5.13.0(react@18.2.0))(@citric/ui@6.10.2(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@citric/icons@5.13.0(react@18.2.0))(lodash@4.17.21)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@stack-spot/portal-theme@1.2.1(@citric/core@6.4.0(lodash@4.17.21)(react@18.2.0)(styled-components@6.1.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(styled-components@6.1.10(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))(@types/react@18.3.11)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)"
|
|
121
121
|
},
|
|
122
122
|
{
|
|
123
123
|
"name": "@stack-spot/portal-network",
|
|
124
|
-
"version": "0.
|
|
124
|
+
"version": "0.195.1(@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",
|
|
@@ -245,9 +245,16 @@ export function createQuickCommandInterceptor(widget: WidgetState, getEditor: ()
|
|
|
245
245
|
await (currentStep.type === 'FETCH' ? runFetchStep(ctx, currentIndex) : runLLMStep(ctx, currentIndex))
|
|
246
246
|
|
|
247
247
|
let nextIndex = currentIndex + 1
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
248
|
+
|
|
249
|
+
let nextStepSlug = currentStep.next_step_slug
|
|
250
|
+
const stepResult = ctx.resultMap[currentStep.slug]
|
|
251
|
+
if (stepResult && typeof stepResult !== 'string' && 'answer_status' in stepResult && !!stepResult.answer_status?.next_step_slug) {
|
|
252
|
+
nextStepSlug = stepResult.answer_status.next_step_slug
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
if (nextStepSlug) {
|
|
256
|
+
nextIndex =nextStepSlug === 'end' ?
|
|
257
|
+
qc.steps.length : qc.steps?.findIndex((step) => step.slug === nextStepSlug)
|
|
251
258
|
}
|
|
252
259
|
await runStepsRecursively(nextIndex, progress, ctx, iteration)
|
|
253
260
|
}
|
package/src/state/ChatState.ts
CHANGED
|
@@ -59,6 +59,10 @@ export interface ChatPropertiesWithOptionalFeatures {
|
|
|
59
59
|
* If a feature is marked as false, it's disabled, otherwise it's enabled.
|
|
60
60
|
*/
|
|
61
61
|
features?: Partial<ChatFeatures>,
|
|
62
|
+
/**
|
|
63
|
+
* The current LLM (Large Language Model) being used for this chat.
|
|
64
|
+
*/
|
|
65
|
+
selected_model_id?: string,
|
|
62
66
|
}
|
|
63
67
|
|
|
64
68
|
export interface ChatProperties extends ChatPropertiesWithOptionalFeatures {
|
package/src/utils/chat.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DocumentResponse, SourceKnowledgeSource,
|
|
1
|
+
import { DocumentResponse, SourceKnowledgeSource, SourceProjectFile3, SourceStackAi } from '@stack-spot/portal-network/api/ai'
|
|
2
2
|
import { KnowledgeSource } from '../state/ChatEntry'
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -60,7 +60,7 @@ export function extractCodeFromKSDocument(document: DocumentResponse): { languag
|
|
|
60
60
|
* @returns a list of knowledge sources in the format expected by the chat.
|
|
61
61
|
*/
|
|
62
62
|
export function genericSourcesToKnowledgeSources(
|
|
63
|
-
sources: (SourceStackAi | SourceKnowledgeSource |
|
|
63
|
+
sources: (SourceStackAi | SourceKnowledgeSource | SourceProjectFile3)[] | undefined,
|
|
64
64
|
): KnowledgeSource[] | undefined {
|
|
65
65
|
return sources?.filter(s => s.type === 'knowledge_source').map(ks => {
|
|
66
66
|
const { document_id: documentId, document_score: documentScore, name, slug } = ks as SourceKnowledgeSource
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IconButton, Row } from '@stack-spot/citric-react'
|
|
2
2
|
import { useCurrentChat, useCurrentChatState, useWidget } from '../../context/hooks'
|
|
3
3
|
import { useMessageInputDictionary } from './dictionary'
|
|
4
|
+
import { ModelSwitcher } from './ModelSwitcher'
|
|
4
5
|
import { SelectContent } from './SelectContent'
|
|
5
6
|
import { SelectionBarWrapper } from './styled'
|
|
6
7
|
|
|
@@ -29,6 +30,7 @@ export const ButtonBar = ({ onSend, isLoading }: SelectionBarProps) => {
|
|
|
29
30
|
<IconButton icon="Code" appearance="square" aria-label={t.code} title={t.code} onClick={() => widget.set('panel', 'editor')} />
|
|
30
31
|
)}
|
|
31
32
|
</Row>
|
|
33
|
+
<ModelSwitcher />
|
|
32
34
|
{isLoading ? (
|
|
33
35
|
<IconButton
|
|
34
36
|
icon="Stop"
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { CitricIconOutline, CitricIconSocial } from '@stack-spot/citric-icons'
|
|
2
|
+
import { AsyncContent, Button, Column, FieldGroup, Icon, Input, Row } from '@stack-spot/citric-react'
|
|
3
|
+
import { SelectionList } from '@stack-spot/portal-components/SelectionList'
|
|
4
|
+
import { agentToolsClient, genAiInferenceClient } from '@stack-spot/portal-network'
|
|
5
|
+
import { useMemo, useState } from 'react'
|
|
6
|
+
import { CSSProperties } from 'styled-components'
|
|
7
|
+
import { useCurrentChat, useCurrentChatState } from '../../../context/hooks'
|
|
8
|
+
import { useMessageInputDictionary } from '../dictionary'
|
|
9
|
+
import { RowWrapperStyled, stylesModelSwitcher } from '../styled'
|
|
10
|
+
import { getListModelsData, handleFilterTypeModel, providerIcon } from './utils'
|
|
11
|
+
|
|
12
|
+
export const ModelSwitcher = () => {
|
|
13
|
+
const t = useMessageInputDictionary()
|
|
14
|
+
const agentCurrentChat = useCurrentChatState('agent')
|
|
15
|
+
const chat = useCurrentChat()
|
|
16
|
+
const [filter, setFilter] = useState('')
|
|
17
|
+
const [visibleMenu, setVisibleMenu] = useState(false)
|
|
18
|
+
const [agentData, isLoadingAgentData] = agentToolsClient.agent.useStatefulQuery({ agentId: agentCurrentChat?.id || '' })
|
|
19
|
+
const [models, isLoadingModels] =
|
|
20
|
+
genAiInferenceClient.listModels.useStatefulQuery({ pageSize: 999, active: true })
|
|
21
|
+
|
|
22
|
+
const { modelName, modelProviderType, listItemsData } =
|
|
23
|
+
getListModelsData(chat, setVisibleMenu, agentData, models)
|
|
24
|
+
|
|
25
|
+
const data = useMemo(() => {
|
|
26
|
+
const items = listItemsData ?? []
|
|
27
|
+
return handleFilterTypeModel(items, t, filter)
|
|
28
|
+
}, [agentCurrentChat?.id, listItemsData, filter])
|
|
29
|
+
|
|
30
|
+
return (
|
|
31
|
+
<RowWrapperStyled>
|
|
32
|
+
<AsyncContent loading={isLoadingAgentData && isLoadingModels}>
|
|
33
|
+
<Button
|
|
34
|
+
className="button-select-model"
|
|
35
|
+
colorScheme="light"
|
|
36
|
+
size="sm"
|
|
37
|
+
aria-label={t.agent}
|
|
38
|
+
title={t.agent}
|
|
39
|
+
onClick={() => setVisibleMenu(state => !state)}
|
|
40
|
+
>
|
|
41
|
+
<Icon
|
|
42
|
+
icon={providerIcon[modelProviderType as CitricIconOutline | CitricIconSocial]}
|
|
43
|
+
group={modelProviderType === 'stackspot' ? 'outline' : 'social'}
|
|
44
|
+
/>
|
|
45
|
+
{modelName}
|
|
46
|
+
<Icon icon="ChevronDown" group="fill" size="sm" />
|
|
47
|
+
</Button>
|
|
48
|
+
</AsyncContent>
|
|
49
|
+
<SelectionList
|
|
50
|
+
id="menuModelSwitcher"
|
|
51
|
+
items={data || []}
|
|
52
|
+
visible={visibleMenu}
|
|
53
|
+
onHide={() => setVisibleMenu(false)}
|
|
54
|
+
showListAsCard
|
|
55
|
+
style={stylesModelSwitcher.selection as CSSProperties}
|
|
56
|
+
before={
|
|
57
|
+
<Column>
|
|
58
|
+
<FieldGroup fullWidth style={{ marginTop: '8px' }}>
|
|
59
|
+
<Icon icon="Search" />
|
|
60
|
+
<Input type="search" value={filter} onChange={(value) => (setFilter(value))} />
|
|
61
|
+
</FieldGroup>
|
|
62
|
+
{!data.length ? <Row m="16px 8px">{t.nothingFound}</Row> : undefined}
|
|
63
|
+
</Column>
|
|
64
|
+
}
|
|
65
|
+
/>
|
|
66
|
+
</RowWrapperStyled>
|
|
67
|
+
)
|
|
68
|
+
}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { CitricIconOutline, CitricIconSocial } from '@stack-spot/citric-icons'
|
|
2
|
+
import { IconBox } from '@stack-spot/citric-react'
|
|
3
|
+
import { AgentModel } from '@stack-spot/portal-network/api/agent-tools'
|
|
4
|
+
import { LlmModelsResponse, PaginatedResponseLlmModelsResponse } from '@stack-spot/portal-network/api/genAiInference'
|
|
5
|
+
import { theme } from '@stack-spot/portal-theme'
|
|
6
|
+
import { Dispatch, ReactElement } from 'react'
|
|
7
|
+
import { ChatState } from '../../../state/ChatState'
|
|
8
|
+
|
|
9
|
+
export interface ItemProps {
|
|
10
|
+
active?: boolean,
|
|
11
|
+
label?: string,
|
|
12
|
+
icon?: ReactElement,
|
|
13
|
+
self_hosted?: boolean,
|
|
14
|
+
onClick?: VoidFunction,
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const providerIcon: Record<string, CitricIconSocial | CitricIconOutline> = {
|
|
18
|
+
openai: 'OpenAI',
|
|
19
|
+
bedrock: 'AWSBedrock',
|
|
20
|
+
azure: 'Azure',
|
|
21
|
+
stackspot: 'StackSpot',
|
|
22
|
+
gemini: 'Gemini',
|
|
23
|
+
deepseek: 'DeepSeek',
|
|
24
|
+
anthropic: 'Anthropic',
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function getListModelsData(
|
|
28
|
+
chat: ChatState,
|
|
29
|
+
setVisibleMenu: Dispatch<React.SetStateAction<boolean>>,
|
|
30
|
+
agent?: AgentModel,
|
|
31
|
+
models?: PaginatedResponseLlmModelsResponse) {
|
|
32
|
+
|
|
33
|
+
const chatSelectedModelId = chat.get('selected_model_id')
|
|
34
|
+
|
|
35
|
+
const listModelsToShow = agent?.visibility_level !== 'built_in' && !!agent?.model_id ?
|
|
36
|
+
models?.items.filter((model) => agent?.available_llm_models?.find((modelAvailable) => modelAvailable.model_id === model.id)) :
|
|
37
|
+
models?.items
|
|
38
|
+
|
|
39
|
+
const modelAvailableDefault = agent?.available_llm_models?.find((model) => (model.is_default || model.model_id === agent.model_id))
|
|
40
|
+
const modelListData = parseModelList(chat, setVisibleMenu, listModelsToShow, modelAvailableDefault?.model_id)
|
|
41
|
+
|
|
42
|
+
if (agent?.visibility_level === 'built_in' || !agent?.model_id) {
|
|
43
|
+
|
|
44
|
+
const modelDefaultProviderType = models?.items.find((modelAccount) =>
|
|
45
|
+
chatSelectedModelId ? modelAccount.id === chatSelectedModelId :
|
|
46
|
+
modelAccount.resources.find((resource) => resource.is_default))?.model_configuration.provider.provider_type
|
|
47
|
+
|
|
48
|
+
const modelDefaultActive = modelListData.find((model) => model?.active)
|
|
49
|
+
|
|
50
|
+
return { modelName: modelDefaultActive?.label, modelProviderType: modelDefaultProviderType, listItemsData: modelListData }
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const modelAccount = models?.items.find((modelAccount) => modelAccount.id === (chatSelectedModelId || agent.model_id))
|
|
54
|
+
const modelProviderType = modelAccount?.model_configuration.provider.provider_type
|
|
55
|
+
const modelSelectedName = modelAccount?.display_name || modelAvailableDefault?.model_name || agent?.model_name
|
|
56
|
+
|
|
57
|
+
const listItemsData =
|
|
58
|
+
modelListData && modelListData?.length > 0 ? modelListData :
|
|
59
|
+
[{
|
|
60
|
+
active: true,
|
|
61
|
+
label: modelSelectedName || '',
|
|
62
|
+
icon: <IconBox icon={providerIcon[modelProviderType || 'stackspot']}
|
|
63
|
+
appearance="square"
|
|
64
|
+
group={modelProviderType === 'stackspot' ? 'outline' : 'social'} />,
|
|
65
|
+
self_hosted: modelAccount?.self_hosted || false,
|
|
66
|
+
onClick: () => {
|
|
67
|
+
chat.set('selected_model_id', modelAvailableDefault?.model_id)
|
|
68
|
+
setVisibleMenu(false)
|
|
69
|
+
},
|
|
70
|
+
}]
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
return { modelName: modelSelectedName, modelProviderType, listItemsData }
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
function parseModelList(
|
|
77
|
+
chat: ChatState,
|
|
78
|
+
setVisibleMenu: Dispatch<React.SetStateAction<boolean>>,
|
|
79
|
+
listModel?: LlmModelsResponse[],
|
|
80
|
+
modelAvailableDefaultId?: string,
|
|
81
|
+
) {
|
|
82
|
+
|
|
83
|
+
const data = Array<ItemProps>()
|
|
84
|
+
const chatModelId = chat.get('selected_model_id')
|
|
85
|
+
|
|
86
|
+
listModel?.forEach((model) => {
|
|
87
|
+
data.push({
|
|
88
|
+
active: chatModelId ? chatModelId === model.id : modelAvailableDefaultId === model.id ||
|
|
89
|
+
model.resources?.some((resource) => resource.is_default && resource.name === 'agents'),
|
|
90
|
+
label: model?.display_name || 'LLM',
|
|
91
|
+
icon: <IconBox
|
|
92
|
+
style={{ backgroundColor: theme.color.light[300] }}
|
|
93
|
+
appearance="square"
|
|
94
|
+
icon={providerIcon[model.model_configuration.provider.provider_type]}
|
|
95
|
+
group={model.model_configuration.provider.provider_type === 'stackspot' ? 'outline' : 'social'}
|
|
96
|
+
/>,
|
|
97
|
+
self_hosted: model.self_hosted,
|
|
98
|
+
onClick: () => {
|
|
99
|
+
chat.set('selected_model_id', model.id)
|
|
100
|
+
setVisibleMenu(false)
|
|
101
|
+
},
|
|
102
|
+
})
|
|
103
|
+
})
|
|
104
|
+
return data
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export function handleFilterTypeModel(items: ItemProps[], t: Record<string, string>, filter?: string) {
|
|
108
|
+
const filterLower = filter?.toLocaleLowerCase()
|
|
109
|
+
const filteredItens = items.filter((item) => filterLower ? item?.label?.toLocaleLowerCase().includes(filterLower) : item)
|
|
110
|
+
|
|
111
|
+
const { selfHosted, hosted } = filteredItens.reduce(
|
|
112
|
+
(acc, model) => {
|
|
113
|
+
if (model?.self_hosted) {
|
|
114
|
+
acc.selfHosted.push(model)
|
|
115
|
+
} else {
|
|
116
|
+
acc.hosted.push(model)
|
|
117
|
+
}
|
|
118
|
+
return acc
|
|
119
|
+
},
|
|
120
|
+
{ selfHosted: [], hosted: [] } as { selfHosted: typeof items, hosted: typeof items },
|
|
121
|
+
)
|
|
122
|
+
|
|
123
|
+
const sections = [
|
|
124
|
+
{
|
|
125
|
+
label: t.hosted,
|
|
126
|
+
children: hosted,
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
label: t.selfHosted,
|
|
130
|
+
children: selfHosted,
|
|
131
|
+
},
|
|
132
|
+
]
|
|
133
|
+
|
|
134
|
+
const filteredByHavingItens = sections
|
|
135
|
+
.filter(section => section.children.length > 0)
|
|
136
|
+
.map(section => ({
|
|
137
|
+
type: 'section',
|
|
138
|
+
label: section.label,
|
|
139
|
+
children: section.children,
|
|
140
|
+
}))
|
|
141
|
+
|
|
142
|
+
return filteredByHavingItens
|
|
143
|
+
}
|
|
@@ -35,6 +35,9 @@ const dictionary = {
|
|
|
35
35
|
chatAgent: 'Agents',
|
|
36
36
|
uploadSuccessStatus: 'File sent successfully',
|
|
37
37
|
chatViewMenu: 'Chat options menu',
|
|
38
|
+
nothingFound: 'Nothing Found',
|
|
39
|
+
hosted: 'Hosted',
|
|
40
|
+
selfHosted: 'Self Hosted',
|
|
38
41
|
},
|
|
39
42
|
pt: {
|
|
40
43
|
stack: 'Selecionar stack',
|
|
@@ -70,6 +73,9 @@ const dictionary = {
|
|
|
70
73
|
chatAgent: 'Agentes',
|
|
71
74
|
uploadSuccessStatus: 'Arquivo anexado com sucesso',
|
|
72
75
|
chatViewMenu: 'Menu de opções do chat',
|
|
76
|
+
nothingFound: 'Nada encontrado',
|
|
77
|
+
hosted: 'Hospedado',
|
|
78
|
+
selfHosted: 'Auto-hospedado',
|
|
73
79
|
},
|
|
74
80
|
} satisfies Dictionary
|
|
75
81
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Flex } from '@citric/core'
|
|
1
2
|
import { theme } from '@stack-spot/portal-theme'
|
|
2
3
|
import { styled } from 'styled-components'
|
|
3
4
|
|
|
@@ -302,3 +303,39 @@ export const MessageInputBox = styled.div`
|
|
|
302
303
|
}
|
|
303
304
|
}
|
|
304
305
|
`
|
|
306
|
+
|
|
307
|
+
export const stylesModelSwitcher = {
|
|
308
|
+
selection: {
|
|
309
|
+
minHeight: '300px',
|
|
310
|
+
position: 'absolute',
|
|
311
|
+
bottom: 'calc(100% + 10px)',
|
|
312
|
+
right: '0',
|
|
313
|
+
margin: '0',
|
|
314
|
+
},
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
export const RowWrapperStyled = styled(Flex)`
|
|
318
|
+
width: 100%;
|
|
319
|
+
justify-content: end;
|
|
320
|
+
margin-right: 4px;
|
|
321
|
+
ul {
|
|
322
|
+
margin: 0;
|
|
323
|
+
}
|
|
324
|
+
.button-select-model {
|
|
325
|
+
border-radius: 15px !important;
|
|
326
|
+
}
|
|
327
|
+
#menuModelSwitcher {
|
|
328
|
+
background-color: ${theme.color.light[500]};
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
.selection-list-content {
|
|
332
|
+
.action :hover {
|
|
333
|
+
cursor: pointer;
|
|
334
|
+
background-color: ${theme.color.light[600]};
|
|
335
|
+
}
|
|
336
|
+
ul :hover {
|
|
337
|
+
background-color: transparent;
|
|
338
|
+
cursor: default;
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
`
|