@gooddata/sdk-ui-gen-ai 11.59.0-alpha.0 → 11.59.0-alpha.2

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.
Files changed (49) hide show
  1. package/NOTICE +48 -48
  2. package/esm/components/GenAIChat.d.ts.map +1 -1
  3. package/esm/components/GenAIChat.js +2 -1
  4. package/esm/components/GenAIStandaloneInput.d.ts.map +1 -1
  5. package/esm/components/GenAIStandaloneInput.js +2 -1
  6. package/esm/components/GenAiStore.d.ts +6 -0
  7. package/esm/components/GenAiStore.d.ts.map +1 -1
  8. package/esm/components/GenAiStore.js +2 -1
  9. package/esm/components/completion/plugins/rehype-references.d.ts.map +1 -1
  10. package/esm/components/completion/plugins/rehype-references.js +34 -23
  11. package/esm/hooks/useGenAIStore.d.ts +2 -0
  12. package/esm/hooks/useGenAIStore.d.ts.map +1 -1
  13. package/esm/hooks/useGenAIStore.js +11 -3
  14. package/esm/index.d.ts +1 -0
  15. package/esm/index.d.ts.map +1 -1
  16. package/esm/sdk-ui-gen-ai.d.ts +10 -0
  17. package/esm/store/chatWindow/chatWindowSelectors.d.ts +1 -0
  18. package/esm/store/chatWindow/chatWindowSelectors.d.ts.map +1 -1
  19. package/esm/store/chatWindow/chatWindowSelectors.js +3 -0
  20. package/esm/store/chatWindow/chatWindowSlice.d.ts +5 -1
  21. package/esm/store/chatWindow/chatWindowSlice.d.ts.map +1 -1
  22. package/esm/store/chatWindow/chatWindowSlice.js +6 -1
  23. package/esm/store/messages/messagesSelectors.d.ts +4 -0
  24. package/esm/store/messages/messagesSelectors.d.ts.map +1 -1
  25. package/esm/store/messages/messagesSelectors.js +3 -0
  26. package/esm/store/messages/messagesSlice.d.ts +6 -2
  27. package/esm/store/messages/messagesSlice.d.ts.map +1 -1
  28. package/esm/store/messages/messagesSlice.js +6 -7
  29. package/esm/store/sideEffects/index.d.ts +2 -1
  30. package/esm/store/sideEffects/index.d.ts.map +1 -1
  31. package/esm/store/sideEffects/index.js +15 -5
  32. package/esm/store/sideEffects/loadAgents.d.ts +12 -1
  33. package/esm/store/sideEffects/loadAgents.d.ts.map +1 -1
  34. package/esm/store/sideEffects/loadAgents.js +18 -2
  35. package/esm/store/sideEffects/loadCatalogItems.d.ts +13 -2
  36. package/esm/store/sideEffects/loadCatalogItems.d.ts.map +1 -1
  37. package/esm/store/sideEffects/loadCatalogItems.js +19 -3
  38. package/esm/store/store.d.ts +2 -1
  39. package/esm/store/store.d.ts.map +1 -1
  40. package/esm/store/store.js +2 -2
  41. package/esm/tsdoc-metadata.json +1 -1
  42. package/esm/types.d.ts +4 -0
  43. package/esm/types.d.ts.map +1 -1
  44. package/package.json +23 -23
  45. package/styles/css/main.css +62 -0
  46. package/styles/css/main.css.map +1 -1
  47. package/styles/css/messages.css +20 -0
  48. package/styles/css/messages.css.map +1 -1
  49. package/styles/scss/messages.scss +17 -0
@@ -1,6 +1,7 @@
1
1
  // (C) 2022-2026 GoodData Corporation
2
2
  import cx from "classnames";
3
3
  import { PLACEHOLDER_START, getPlaceholderRegex } from "./reference-placeholder.js";
4
+ const VERBATIM_TAG_NAMES = ["code", "pre"];
4
5
  /**
5
6
  * `tokens` must be the `tokens` array `extractReferences()` returned for the same
6
7
  * Markdown text — placeholders are resolved by looking up their embedded index in it.
@@ -51,55 +52,65 @@ export function rehypeReferences(references, tokens) {
51
52
  };
52
53
  };
53
54
  }
54
- function iterateTree(node, references, tokens, callbacks) {
55
+ function iterateTree(node, references, tokens, callbacks, verbatim = false) {
55
56
  if (node.type === "text") {
56
57
  const value = node.value;
57
58
  if (!value.includes(PLACEHOLDER_START)) {
58
59
  return [node];
59
60
  }
60
- const res = iterateReferenceMatch(value, references, tokens, (ref) => {
61
- return callbacks.onTextNodeReference(node, ref);
62
- });
63
- if (res.length) {
64
- return res;
65
- }
66
- node.value = restoreUnresolvedPlaceholders(value, tokens);
67
- return [node];
61
+ return splitTextNode(node, references, tokens, callbacks.onTextNodeReference, verbatim);
68
62
  }
63
+ const inVerbatim = verbatim || VERBATIM_TAG_NAMES.includes(node.tagName);
69
64
  if (node.children) {
70
65
  node.children = node.children.reduce((acc, child) => {
71
- return [...acc, ...iterateTree(child, references, tokens, callbacks)];
66
+ return [...acc, ...iterateTree(child, references, tokens, callbacks, inVerbatim)];
72
67
  }, []);
73
68
  return [node];
74
69
  }
75
70
  return [node];
76
71
  }
77
72
  /**
78
- * Replaces any placeholder occurrences left in a text node (i.e. ones that did not
79
- * resolve to a reference chip) with their original `{type/id}` token text, so the
73
+ * Replaces placeholder occurrences with their original `{type/id}` token text, so the
80
74
  * output never leaks a raw placeholder sentinel (an invisible PUA-wrapped digit)
81
75
  * as visible text.
82
76
  */
83
- function restoreUnresolvedPlaceholders(value, tokens) {
77
+ function restorePlaceholders(value, tokens) {
84
78
  return value.replace(getPlaceholderRegex(), (match, indexStr) => {
85
79
  const originalToken = tokens[Number(indexStr)];
86
80
  return originalToken ?? match;
87
81
  });
88
82
  }
89
- function iterateReferenceMatch(value, references, tokens, onMatch) {
90
- const items = [];
83
+ function splitTextNode(text, references, tokens, onTextNodeReference, verbatim) {
84
+ const nodes = [];
91
85
  const regex = getPlaceholderRegex();
92
- let match = regex.exec(value);
86
+ let lastIndex = 0;
87
+ const pushText = (value) => {
88
+ if (value) {
89
+ const textNode = { ...text, value: restorePlaceholders(value, tokens) };
90
+ nodes.push(textNode);
91
+ }
92
+ };
93
+ let match = regex.exec(text.value);
93
94
  while (match) {
94
95
  const originalToken = tokens[Number(match[1])];
95
- if (originalToken) {
96
- const [type, id] = originalToken.slice(1, -1).split("/");
97
- const ref = references.find((ref) => ref.id === id && ref.type === type);
98
- if (ref) {
99
- items.push(...onMatch(ref));
96
+ const ref = resolveReference(originalToken, references);
97
+ if (ref) {
98
+ pushText(text.value.slice(lastIndex, match.index));
99
+ nodes.push(...onTextNodeReference(text, ref));
100
+ if (verbatim) {
101
+ pushText(` ${originalToken}`);
100
102
  }
103
+ lastIndex = match.index + match[0].length;
101
104
  }
102
- match = regex.exec(value);
105
+ match = regex.exec(text.value);
106
+ }
107
+ pushText(text.value.slice(lastIndex));
108
+ return nodes;
109
+ }
110
+ function resolveReference(originalToken, references) {
111
+ if (!originalToken) {
112
+ return undefined;
103
113
  }
104
- return items;
114
+ const [type, id] = originalToken.slice(1, -1).split("/");
115
+ return references.find((ref) => ref.id === id && ref.type === type);
105
116
  }
@@ -3,6 +3,7 @@ import { type IAnalyticalBackend, type IUserWorkspaceSettings } from "@gooddata/
3
3
  import { type CatalogItem, type GenAIObjectType, type IColorPalette, type IInsight, type IListedDashboard } from "@gooddata/sdk-model";
4
4
  import type { GenAIAssistantMode, LinkHandlerEvent } from "../components/ConfigContext.js";
5
5
  import { type ChatEventHandler } from "../store/events.js";
6
+ import { type GenAIInitializeOnStart } from "../types.js";
6
7
  export declare const useGenAIStore: (backend: IAnalyticalBackend, workspace: string, opts: {
7
8
  eventHandlers?: ChatEventHandler[];
8
9
  colorPalette?: IColorPalette;
@@ -14,6 +15,7 @@ export declare const useGenAIStore: (backend: IAnalyticalBackend, workspace: str
14
15
  dashboards?: IListedDashboard[];
15
16
  visualizations?: IInsight[];
16
17
  isPreview?: boolean;
18
+ initializeOnStart?: GenAIInitializeOnStart;
17
19
  allowInteractionIntelligence?: boolean;
18
20
  onLinkClick?: (linkClickEvent: LinkHandlerEvent) => string | undefined;
19
21
  allowNativeLinks?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useGenAIStore.d.ts","sourceRoot":"","sources":["../../src/hooks/useGenAIStore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACjG,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EAGxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAW3F,OAAO,EAAE,KAAK,gBAAgB,EAAmB,MAAM,oBAAoB,CAAC;AAK5E,eAAO,MAAM,aAAa,YACb,kBAAkB,aAChB,MAAM,QACX;IACF,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,IAAI,CAAC,EAAE,kBAAkB,CAAC;CAC7B,KACF,aA2IF,CAAC"}
1
+ {"version":3,"file":"useGenAIStore.d.ts","sourceRoot":"","sources":["../../src/hooks/useGenAIStore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACjG,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EAGxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAW3F,OAAO,EAAE,KAAK,gBAAgB,EAAmB,MAAM,oBAAoB,CAAC;AAG5E,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAG1D,eAAO,MAAM,aAAa,YACb,kBAAkB,aAChB,MAAM,QACX;IACF,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,IAAI,CAAC,EAAE,kBAAkB,CAAC;CAC7B,KACF,aAqJF,CAAC"}
@@ -7,7 +7,7 @@ import { OptionsDispatcher } from "../store/options.js";
7
7
  import { getStore } from "../store/store.js";
8
8
  import { toContextListItem } from "../utils.js";
9
9
  export const useGenAIStore = (backend, workspace, opts) => {
10
- const { eventHandlers, colorPalette, settings, objectTypes, includeTags, excludeTags, catalogItems, dashboards, visualizations, isPreview, allowInteractionIntelligence, onLinkClick, allowNativeLinks, mode, } = opts;
10
+ const { eventHandlers, colorPalette, settings, objectTypes, includeTags, excludeTags, catalogItems, dashboards, visualizations, isPreview, initializeOnStart, allowInteractionIntelligence, onLinkClick, allowNativeLinks, mode, } = opts;
11
11
  // Instantiate EventDispatcher. It's a designed to hold a reference to the handlers, so that
12
12
  // we don't update the context every time a new array of handlers is passed.
13
13
  // Similar to how React handles event listeners.
@@ -17,8 +17,16 @@ export const useGenAIStore = (backend, workspace, opts) => {
17
17
  // Initialize new Redux Store for each instance of GenAI Chat
18
18
  // It OK to discard the store when backend or workspace changes
19
19
  const store = useMemo(() => {
20
- return getStore(backend, workspace, eventDispatcher, optionsDispatcher, isPreview, allowInteractionIntelligence);
21
- }, [backend, workspace, eventDispatcher, optionsDispatcher, isPreview, allowInteractionIntelligence]);
20
+ return getStore(backend, workspace, eventDispatcher, optionsDispatcher, isPreview, allowInteractionIntelligence, initializeOnStart);
21
+ }, [
22
+ backend,
23
+ workspace,
24
+ eventDispatcher,
25
+ optionsDispatcher,
26
+ isPreview,
27
+ allowInteractionIntelligence,
28
+ initializeOnStart,
29
+ ]);
22
30
  useEffect(() => {
23
31
  if (colorPalette) {
24
32
  optionsDispatcher.setColorPalette(colorPalette);
package/esm/index.d.ts CHANGED
@@ -4,6 +4,7 @@
4
4
  * @beta
5
5
  */
6
6
  export { GenAIChat, GenAIAssistant, type GenAIChatProps, type GenAIAssistantProps, } from "./components/GenAIChat.js";
7
+ export { type GenAIInitializeOnStart } from "./types.js";
7
8
  export { GenAIConversations, type GenAIConversationsProps } from "./components/GenAiConversations.js";
8
9
  export { GenAiStore, type GenAiStoreProps } from "./components/GenAiStore.js";
9
10
  export { makeUserItem, makeAssistantItem, type TextContentObject, type IChatConversationLocalContent, type IChatConversationLocalItem, type IChatConversationErrorContent, type IChatConversationMultipartLocalPart, type IChatConversationLocal, type IChatConversationSystemContent, type GenAIAgent, } from "./model.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -628,6 +628,11 @@ export declare type GenAIConversationsProps = Omit<GenAiStoreProps, "children">
628
628
  slots?: IGenAIAssistantSlots;
629
629
  };
630
630
 
631
+ /**
632
+ * @internal
633
+ */
634
+ export declare type GenAIInitializeOnStart = ("catalogItems" | "agents")[];
635
+
631
636
  /**
632
637
  * The Interaction Intelligence panel: a single timeline of the processing steps behind one
633
638
  * assistant response, with a list view and a per-category detail view. Loads its own data on
@@ -747,6 +752,11 @@ export declare type GenAiStoreProps = {
747
752
  * @internal
748
753
  */
749
754
  allowInteractionIntelligence?: boolean;
755
+ /**
756
+ * @internal
757
+ * Whether to load the Gen AI store on start.
758
+ */
759
+ initializeOnStart?: GenAIInitializeOnStart;
750
760
  };
751
761
 
752
762
  /**
@@ -23,6 +23,7 @@ export declare const tagsSelector: (state: RootState) => {
23
23
  excludeTags: string[] | undefined;
24
24
  };
25
25
  export declare const catalogItemsSelector: (state: RootState) => CatalogItem[];
26
+ export declare const catalogItemsStateSelector: (state: RootState) => RootState["chatWindow"]["catalogItemsState"];
26
27
  export declare const contextObjectsSelector: (state: RootState) => ContextObjectsState;
27
28
  export declare const contextObjectsSearchSelector: (state: RootState) => string;
28
29
  export declare const inputValueSelector: (state: RootState) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"chatWindowSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSelectors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatWindowSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSelectors.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,9 @@ export const tagsSelector = createSelector(chatWindowSliceSelector, (state) => {
34
34
  export const catalogItemsSelector = createSelector(chatWindowSliceSelector, (state) => {
35
35
  return state.catalogItems ?? [];
36
36
  });
37
+ export const catalogItemsStateSelector = createSelector(chatWindowSliceSelector, (state) => {
38
+ return state.catalogItemsState;
39
+ });
37
40
  export const contextObjectsSelector = createSelector(chatWindowSliceSelector, (state) => state.contextObjects);
38
41
  export const contextObjectsSearchSelector = createSelector(chatWindowSliceSelector, (state) => state.contextObjectsSearch);
39
42
  export const inputValueSelector = createSelector(chatWindowSliceSelector, (state) => state.inputValue);
@@ -40,6 +40,10 @@ type ChatWindowSliceState = {
40
40
  * Catalog items for autocomplete.
41
41
  */
42
42
  catalogItems?: CatalogItem[];
43
+ /**
44
+ * Indicates whether catalog items are loading.
45
+ */
46
+ catalogItemsState: "pending" | "loading" | "loaded";
43
47
  /**
44
48
  * Dashboards and visualizations offered by the context chooser, on top of the ambient ones.
45
49
  */
@@ -104,7 +108,7 @@ export declare const setOpenAction: import("@reduxjs/toolkit").ActionCreatorWith
104
108
  }, "chatWindow/setObjectTypesAction">, setTagsAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
105
109
  includeTags?: string[];
106
110
  excludeTags?: string[];
107
- }, "chatWindow/setTagsAction">, setCatalogItemsActions: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<CatalogItem[] | undefined, "chatWindow/setCatalogItemsActions">, setInputValueAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
111
+ }, "chatWindow/setTagsAction">, setCatalogItemsActions: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<CatalogItem[] | undefined, "chatWindow/setCatalogItemsActions">, setCatalogItemsLoadingAction: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chatWindow/setCatalogItemsLoadingAction">, setInputValueAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
108
112
  value: string;
109
113
  }, "chatWindow/setInputValueAction">, initContextObjectsAction: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chatWindow/initContextObjectsAction">, loadContextObjectsNextPageAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
110
114
  kind: ContextObjectKind;
@@ -1 +1 @@
1
- {"version":3,"file":"chatWindowSlice.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSlice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatWindowSlice.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSlice.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,7 @@ const initialState = {
41
41
  inputValue: "",
42
42
  isPreview: undefined,
43
43
  allowInteractionIntelligence: undefined,
44
+ catalogItemsState: "pending",
44
45
  };
45
46
  export const getInitialChatWindowState = ({ isPreview, allowInteractionIntelligence, } = {}) => ({
46
47
  ...initialState,
@@ -86,6 +87,10 @@ const chatWindowSlice = createSlice({
86
87
  },
87
88
  setCatalogItemsActions: (state, { payload }) => {
88
89
  state.catalogItems = payload;
90
+ state.catalogItemsState = "loaded";
91
+ },
92
+ setCatalogItemsLoadingAction: (state) => {
93
+ state.catalogItemsState = "loading";
89
94
  },
90
95
  setInputValueAction: (state, { payload: { value } }) => {
91
96
  state.inputValue = value;
@@ -187,7 +192,7 @@ const chatWindowSlice = createSlice({
187
192
  },
188
193
  });
189
194
  export const chatWindowSliceReducer = chatWindowSlice.reducer;
190
- export const { setOpenAction, setHistoryAction, setColorPaletteAction, setSettingsAction, copyToClipboardAction, setKeyDriverAnalysisAction, setKeyDriverAnalysisMinimizedAction, setObjectTypesAction, setTagsAction, setCatalogItemsActions, setInputValueAction, initContextObjectsAction, loadContextObjectsNextPageAction, setContextObjectsAction, setContextObjectsSearchAction, contextObjectsLoadingAction, contextObjectsPageLoadedAction, contextObjectsLoadFailedAction, setAllowedRelationshipTypesAction, onDefinitionReceivedAction, addContextReferenceAction, removeContextReferenceAction, selectedContextReferencesAction, setIsPreviewAction,
195
+ export const { setOpenAction, setHistoryAction, setColorPaletteAction, setSettingsAction, copyToClipboardAction, setKeyDriverAnalysisAction, setKeyDriverAnalysisMinimizedAction, setObjectTypesAction, setTagsAction, setCatalogItemsActions, setCatalogItemsLoadingAction, setInputValueAction, initContextObjectsAction, loadContextObjectsNextPageAction, setContextObjectsAction, setContextObjectsSearchAction, contextObjectsLoadingAction, contextObjectsPageLoadedAction, contextObjectsLoadFailedAction, setAllowedRelationshipTypesAction, onDefinitionReceivedAction, addContextReferenceAction, removeContextReferenceAction, selectedContextReferencesAction, setIsPreviewAction,
191
196
  /**
192
197
  * Switches the assistant between the docked and the fullscreen layout.
193
198
  * @public
@@ -11,6 +11,7 @@ declare const messagesSliceSelector: (state: RootState) => {
11
11
  selectedAgentId: string | undefined;
12
12
  selectedEffort: GenAIChatEffort;
13
13
  agents: import("../../model.js").GenAIAgent[] | undefined;
14
+ agentsState: "pending" | "loading" | "loaded";
14
15
  conversationsData: Record<string, import("../../types.js").StoredConversation>;
15
16
  globalError?: Record<string, unknown>;
16
17
  threadId?: string;
@@ -26,6 +27,7 @@ export declare const pendingAgentSwitchSelector: (state: RootState, conversation
26
27
  } | undefined;
27
28
  export declare const globalErrorSelector: (state: RootState) => Record<string, unknown> | null;
28
29
  export declare const threadIdSelector: (state: RootState) => string | undefined;
30
+ export declare const agentsStateSelector: (state: RootState) => RootState["messages"]["agentsState"];
29
31
  export declare const conversationMessagesSelector: (state: RootState) => IChatConversationLocalItem[];
30
32
  export declare const conversationMessagesByIdSelector: (state: RootState, conversationId?: string) => IChatConversationLocalItem[];
31
33
  /**
@@ -51,6 +53,7 @@ export declare const agentsSelector: ((state: RootState) => import("../../model.
51
53
  selectedAgentId: string | undefined;
52
54
  selectedEffort: GenAIChatEffort;
53
55
  agents: import("../../model.js").GenAIAgent[] | undefined;
56
+ agentsState: "pending" | "loading" | "loaded";
54
57
  conversationsData: Record<string, import("../../types.js").StoredConversation>;
55
58
  globalError?: Record<string, unknown>;
56
59
  threadId?: string;
@@ -65,6 +68,7 @@ export declare const agentsSelector: ((state: RootState) => import("../../model.
65
68
  selectedAgentId: string | undefined;
66
69
  selectedEffort: GenAIChatEffort;
67
70
  agents: import("../../model.js").GenAIAgent[] | undefined;
71
+ agentsState: "pending" | "loading" | "loaded";
68
72
  conversationsData: Record<string, import("../../types.js").StoredConversation>;
69
73
  globalError?: Record<string, unknown>;
70
74
  threadId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"messagesSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/messages/messagesSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EAAE,KAAK,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAI7C,QAAA,MAAM,qBAAqB,UAAW,SAAS;;;;;;;;;;;;;CAA6B,CAAC;AAE7E,eAAO,MAAM,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAMvD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAC/B,KAAK,EAAE,SAAS,KACf,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,SAS1D,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAC5B,SAAS,uBACK,MAAM,KAC5B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,SACyB,CAAC;AAExF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAGjF,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAG7D,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,0BAA0B,EAIrF,CAAC;AAEP,eAAO,MAAM,gCAAgC,EAAE,CAC3C,KAAK,EAAE,SAAS,EAChB,cAAc,CAAC,EAAE,MAAM,KACtB,0BAA0B,EAU9B,CAAC;AAQF;;;GAGG;AACH,eAAO,MAAM,oCAAoC,EAAE,CAC/C,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,KACjB,8BAMJ,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,GAAG,SAGjF,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAGpE,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,eAQ1D,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAAW,SAAS,wBAAwB,MAAM,KAAG,eACgB,CAAC;AAE7G,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAiE,CAAC;AAE7F,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGrE,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,CACnC,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,MAAM,KACrB,sBAAsB,GAAG,SAI7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,EAAE,GAAG,SACZ,CAAC;AAE1E,eAAO,MAAM,2BAA2B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAG/D,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAGnD,CAAC"}
1
+ {"version":3,"file":"messagesSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/messages/messagesSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC9F,OAAO,EAAE,KAAK,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAI7C,QAAA,MAAM,qBAAqB,UAAW,SAAS;;;;;;;;;;;;;;CAA6B,CAAC;AAE7E,eAAO,MAAM,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAMvD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAC/B,KAAK,EAAE,SAAS,KACf,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,SAS1D,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAC5B,SAAS,uBACK,MAAM,KAC5B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,SACyB,CAAC;AAExF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAGjF,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAG7D,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC,aAAa,CAK1F,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,0BAA0B,EAIrF,CAAC;AAEP,eAAO,MAAM,gCAAgC,EAAE,CAC3C,KAAK,EAAE,SAAS,EAChB,cAAc,CAAC,EAAE,MAAM,KACtB,0BAA0B,EAU9B,CAAC;AAQF;;;GAGG;AACH,eAAO,MAAM,oCAAoC,EAAE,CAC/C,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,KACjB,8BAMJ,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,GAAG,SAGjF,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAGpE,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,eAQ1D,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAAW,SAAS,wBAAwB,MAAM,KAAG,eACgB,CAAC;AAE7G,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAiE,CAAC;AAE7F,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGrE,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,CACnC,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,MAAM,KACrB,sBAAsB,GAAG,SAI7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,EAAE,GAAG,SACZ,CAAC;AAE1E,eAAO,MAAM,2BAA2B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAG/D,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAGnD,CAAC"}
@@ -19,6 +19,9 @@ export const asyncProcessSelector = createSelector(messagesSliceSelector, (state
19
19
  export const pendingAgentSwitchSelector = (state, conversationLocalId) => state[messagesSliceName].conversationsData[conversationLocalId]?.pendingAgentSwitch;
20
20
  export const globalErrorSelector = createSelector(messagesSliceSelector, (state) => state.globalError ?? null);
21
21
  export const threadIdSelector = createSelector(messagesSliceSelector, (state) => state.threadId);
22
+ export const agentsStateSelector = createSelector(messagesSliceSelector, (state) => {
23
+ return state.agentsState;
24
+ });
22
25
  export const conversationMessagesSelector = createSelector(messagesSliceSelector, (state) => {
23
26
  const data = state.conversationsData[state.currentConversation?.localId ?? ""];
24
27
  return data?.order.map((id) => data.items[id]) ?? [];
@@ -40,6 +40,10 @@ type MessagesSliceState = {
40
40
  * Undefined means the agent list has not been evaluated yet.
41
41
  */
42
42
  agents: GenAIAgent[] | undefined;
43
+ /**
44
+ * Loading state of the agents.
45
+ */
46
+ agentsState: "pending" | "loading" | "loaded";
43
47
  /**
44
48
  * Conversation data
45
49
  */
@@ -73,7 +77,7 @@ export declare const loadThreadAction: import("@reduxjs/toolkit").ActionCreatorW
73
77
  threadId?: string;
74
78
  }, "messages/loadConversationSuccessAction">, clearThreadErrorAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
75
79
  error: Error;
76
- }, "messages/clearThreadErrorAction">, clearThreadSuccessAction: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"messages/clearThreadSuccessAction">, clearConversationSuccessAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
80
+ }, "messages/clearThreadErrorAction">, clearConversationSuccessAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
77
81
  conversation: IChatConversationLocal;
78
82
  threadId: string;
79
83
  }, "messages/clearConversationSuccessAction">, evaluateConversationTitleAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
@@ -174,7 +178,7 @@ export declare const loadThreadAction: import("@reduxjs/toolkit").ActionCreatorW
174
178
  conversationLocalId: string;
175
179
  }, "messages/revertAgentSwitchAction">, setAgentsAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
176
180
  agents: GenAIAgent[] | undefined;
177
- }, "messages/setAgentsAction">, pinConversationAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
181
+ }, "messages/setAgentsAction">, setAgentsLoadingAction: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"messages/setAgentsLoadingAction">, pinConversationAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
178
182
  conversation: IChatConversationLocal;
179
183
  pinned: boolean;
180
184
  }, "messages/pinConversationAction">, pinConversationSuccessAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
@@ -1 +1 @@
1
- {"version":3,"file":"messagesSlice.d.ts","sourceRoot":"","sources":["../../../src/store/messages/messagesSlice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messagesSlice.d.ts","sourceRoot":"","sources":["../../../src/store/messages/messagesSlice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,OAAO,EAAe,MAAM,kBAAkB,CAAC;AAEjF,OAAO,EAAE,KAAK,gCAAgC,EAAE,KAAK,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC9G,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,gCAAgC,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIrD,OAAO,EACH,KAAK,UAAU,EACf,KAAK,6BAA6B,EAClC,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,0BAA0B,EAIlC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEH,KAAK,6BAA6B,EAClC,KAAK,kBAAkB,EAC1B,MAAM,gBAAgB,CAAC;AAQxB,KAAK,kBAAkB,GAAG;IACtB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,aAAa,EAAE,sBAAsB,EAAE,GAAG,SAAS,CAAC;IACpD;;OAEG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,mBAAmB,EAAE,sBAAsB,GAAG,SAAS,CAAC;IACxD;;OAEG;IACH,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC;;;OAGG;IACH,cAAc,EAAE,eAAe,CAAC;IAChC;;;OAGG;IACH,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACjC;;OAEG;IACH,WAAW,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC9C;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAEtD;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,cAAc,sBAAsB,CAAC;AAClD,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAinC5C,eAAO,MAAM,oBAAoB,EAAE,OAAO,CAAC,kBAAkB,CAAyB,CAAC;AACvF,eAAO,MACH,gBAAgB,uFAChB,qBAAqB;WAl7B6D,KAAK;sCAm7BvF,8BAA8B;mBAz6BH,sBAAsB,EAAE;+CA06BnD,6BAA6B;yBAh6BI,sBAAsB;wBACvB,0BAA0B,EAAE;eACrC,MAAM;8CA+5B7B,sBAAsB;WA54B6D,KAAK;uCA64BxF,8BAA8B;kBAp4BW,sBAAsB;cAAY,MAAM;+CAq4BjF,+BAA+B;kBAvvBL,sBAAsB;qBACnB,OAAO;YAChB,MAAM;gDAsvB1B,qBAAqB;aAz1BA,0BAA0B;qBAClB,MAAM;sCAy1BnC,0BAA0B;WAt0BP,MAAM;wBACO,MAAM;qBACT,MAAM;2CAq0BnC,8BAA8B;WAzyBX,qBAAqB;cAClB,6BAA6B,GAAG,6BAA6B;wBACnD,MAAM;oBACV,MAAM;qBACL,MAAM;+CAsyBnC,2BAA2B;mBApuBA,MAAM;kBACP,sBAAsB;aAC3B,qBAAqB;oBACd,OAAO;oBACP,MAAM;qBACL,MAAM;4CAguBnC,6BAA6B;wBAxsBG,MAAM;qBACT,MAAM;gBACX,OAAO;8CAusB/B,iBAAiB;YA9qBuC,0BAA0B,EAAE;kCA+qBpF,gBAAgB;aAxqBiE,OAAO;iCAyqBxF,oBAAoB;WA1b6D,KAAK;qCA2btF,iBAAiB,wFACjB,8BAA8B;0BA7ZsD,MAAM;+CA8Z1F,eAAe;wBA5XiB,MAAM;cAChB,gCAAgC;uBACvB,MAAM;gCA2XrC,oBAAoB;wBAlWY,MAAM;qBACT,MAAM;WAChB,MAAM;qCAiWzB,uBAAuB;qBAtUM,MAAM;wBACH,MAAM;wBACN,MAAM;aACjB,OAAO;wCAoU5B,wBAAwB;qBApSK,MAAM;wBACH,MAAM;yCAoStC,4BAA4B;WAxQT;QACH,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACnB;qBACgB,MAAM;wBACH,MAAM;qBACT,MAAM;6CAmQnC,8BAA8B;qBApOD,MAAM;wBACH,MAAM;0BACJ,MAAM;qBACX,MAAM;aACd,OAAO;+CAiO5B,mCAAmC;qBApMN,MAAM;wBACH,MAAM;YAClB,YAAY,GAAG,kBAAkB,GAAG,sBAAsB,GAAG,SAAS,GAAG,YAAY;oDAmMzG,0CAA0C;qBA3Lb,MAAM;wBACH,MAAM;YAClB,YAAY,GAAG,kBAAkB,GAAG,sBAAsB,GAAG,SAAS,GAAG,YAAY;2DA0LzG,wBAAwB;eAhKD,YAAY;mBACR,MAAM;yCAgKjC,2BAA2B;oBA3kBC,MAAM;UAChB,gCAAgC;4CA2kBlD,wBAAwB;oBAtjBI,MAAM;gBACV,MAAM;YACV,MAAM;YACN,6BAA6B;yCAojBjD,0BAA0B;oBAliBE,MAAM;gBACV,MAAM;YACV,6BAA6B;2CAiiBjD,6BAA6B;yBAjhB6B,MAAM;wBAAsB,MAAM;8CAkhB5F,uBAAuB;qBAvfM,MAAM,GAAG,SAAS;mBACpB,MAAM;yBACA,MAAM;wCAsfvC,eAAe;YAldmD,UAAU,EAAE,GAAG,SAAS;gCAmd1F,sBAAsB,6FACtB,qBAAqB;kBAjKK,sBAAsB;YAC5B,OAAO;sCAiK3B,4BAA4B;kBA5JuB,sBAAsB;YAAU,OAAO;6CA6J1F,4BAA4B;kBAvIa,sBAAsB;WAAS,KAAK;aAAW,OAAO;6CAwI/F,wBAAwB;kBAnHE,sBAAsB;WAC7B,MAAM;yCAmHzB,+BAA+B;kBA9GoB,sBAAsB;WAAS,MAAM;gDA+GxF,+BAA+B;kBAzFU,sBAAsB;WAAS,KAAK;YAAU,MAAM;gDA0F7F,wBAAwB;kBAxEqD,sBAAsB;yCAyEnG,6BAA6B;kBArEsB,sBAAsB;8CAsEzE,+BAA+B;kBAzDgB,sBAAsB;gDA0DrE,+BAA+B;kBAtDoB,sBAAsB;WAAS,KAAK;gDAuDvF,gBAAgB;wBA1agB,MAAM;iCA2atC,YAAY;AACZ;;GAEG;AACH,sBAAsB;aA3pBD,MAAM,GAAG,SAAS;sBACT,MAAM,GAAG,SAAS;sBAClB,OAAO;;AA0pBrC;;GAEG;AACH,uBAAuB;YAnnBmD,eAAe;;AAonBzF;;GAEG;AACH,4BAA4B;kBA/rBuB,sBAAsB;;AAgsBzE;;GAEG;AACH,0BAA0B;AAC1B;;GAEG;AACH,iBAAiB;AACjB;;GAEG;AACH,gBAAgB,8GACK,CAAC"}
@@ -29,6 +29,7 @@ const initialState = {
29
29
  agents: undefined,
30
30
  conversationsData: {},
31
31
  refocus: 0,
32
+ agentsState: "pending",
32
33
  };
33
34
  const setNormalizedConversations = (state, conversations) => {
34
35
  const originalConversations = state.conversations ?? [];
@@ -173,12 +174,6 @@ const messagesSlice = createSlice({
173
174
  const data = getConversationData(state.conversationsData, state.currentConversation?.localId);
174
175
  delete data?.asyncProcess;
175
176
  },
176
- clearThreadSuccessAction: (state) => {
177
- state.loaded = false;
178
- delete state.globalError;
179
- const data = getConversationData(state.conversationsData, state.currentConversation?.localId);
180
- delete data?.asyncProcess;
181
- },
182
177
  clearConversationSuccessAction: (state, { payload: { conversation, threadId }, }) => {
183
178
  state.conversations = [conversation, ...(state.conversations ?? [])];
184
179
  state.currentConversation = conversation;
@@ -488,6 +483,10 @@ const messagesSlice = createSlice({
488
483
  },
489
484
  setAgentsAction: (state, { payload }) => {
490
485
  state.agents = payload.agents;
486
+ state.agentsState = "loaded";
487
+ },
488
+ setAgentsLoadingAction: (state) => {
489
+ state.agentsState = "loading";
491
490
  },
492
491
  setGlobalErrorAction: (state, { payload: { error } }) => {
493
492
  state.globalError = errorToObject(error);
@@ -713,7 +712,7 @@ const messagesSlice = createSlice({
713
712
  });
714
713
  const errorToObject = (error) => Object.fromEntries(Object.getOwnPropertyNames(error).map((key) => [key, error[key]]));
715
714
  export const messagesSliceReducer = messagesSlice.reducer;
716
- export const { loadThreadAction, loadThreadErrorAction, loadConversationsSuccessAction, loadConversationSuccessAction, clearThreadErrorAction, clearThreadSuccessAction, clearConversationSuccessAction, evaluateConversationTitleAction, evaluateMessageAction, evaluateMessageErrorAction, evaluateMessageStreamingAction, evaluateMessageUpdateAction, evaluateMessageCompleteAction, setMessagesAction, setVerboseAction, setGlobalErrorAction, cancelAsyncAction, clearConversationLoadingAction, setUserFeedback, setUserFeedbackError, saveVisualizationAction, savedVisualizationAction, saveVisualizationErrorAction, saveVisualizationSuccessAction, saveVisualisationRenderStatusAction, saveVisualisationRenderStatusSuccessAction, visualizationErrorAction, appendInteractionStepAction, appendTracedActionAction, appendResponseDetailAction, applyPendingAgentSwitchAction, revertAgentSwitchAction, setAgentsAction, pinConversationAction, pinConversationSuccessAction, pinConversationFailureAction, renameConversationAction, renameConversationSuccessAction, renameConversationFailureAction, deleteConversationAction, deleteConversationStartAction, deleteConversationSuccessAction, deleteConversationFailureAction, filledFormAction, refocusInput,
715
+ export const { loadThreadAction, loadThreadErrorAction, loadConversationsSuccessAction, loadConversationSuccessAction, clearThreadErrorAction, clearConversationSuccessAction, evaluateConversationTitleAction, evaluateMessageAction, evaluateMessageErrorAction, evaluateMessageStreamingAction, evaluateMessageUpdateAction, evaluateMessageCompleteAction, setMessagesAction, setVerboseAction, setGlobalErrorAction, cancelAsyncAction, clearConversationLoadingAction, setUserFeedback, setUserFeedbackError, saveVisualizationAction, savedVisualizationAction, saveVisualizationErrorAction, saveVisualizationSuccessAction, saveVisualisationRenderStatusAction, saveVisualisationRenderStatusSuccessAction, visualizationErrorAction, appendInteractionStepAction, appendTracedActionAction, appendResponseDetailAction, applyPendingAgentSwitchAction, revertAgentSwitchAction, setAgentsAction, setAgentsLoadingAction, pinConversationAction, pinConversationSuccessAction, pinConversationFailureAction, renameConversationAction, renameConversationSuccessAction, renameConversationFailureAction, deleteConversationAction, deleteConversationStartAction, deleteConversationSuccessAction, deleteConversationFailureAction, filledFormAction, refocusInput,
717
716
  /**
718
717
  * @public
719
718
  */
@@ -1,6 +1,7 @@
1
+ import { type GenAIInitializeOnStart } from "../../types.js";
1
2
  /**
2
3
  * One saga to rule them all.
3
4
  * @internal
4
5
  */
5
- export declare function rootSaga(): Generator<import("redux-saga/effects").CallEffect<void> | import("redux-saga/effects").ForkEffect<void>, void, unknown>;
6
+ export declare function rootSaga(initializeOnStart: GenAIInitializeOnStart): Generator<import("redux-saga/effects").CallEffect<void> | import("redux-saga/effects").ForkEffect<void>, void, unknown>;
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/index.ts"],"names":[],"mappings":"AAoDA;;;GAGG;AACH,wBAAiB,QAAQ,4HAgCxB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAiD7D;;;GAGG;AACH,wBAAiB,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,2HA2ClE"}
@@ -3,8 +3,8 @@ import { call, fork, takeEvery, takeLatest, takeLeading } from "redux-saga/effec
3
3
  import { initContextObjectsAction, loadContextObjectsNextPageAction, setContextObjectsSearchAction, setOpenAction, } from "../chatWindow/chatWindowSlice.js";
4
4
  import { clearThreadAction, deleteConversationAction, evaluateMessageCompleteAction, evaluateMessageUpdateAction, loadThreadAction, newMessageAction, pinConversationAction, renameConversationAction, saveVisualisationRenderStatusAction, saveVisualizationAction, saveVisualizationSuccessAction, setCurrentConversationAction, setUserFeedback, setVerboseAction, } from "../messages/messagesSlice.js";
5
5
  import { onConversationActivity } from "./conversationSession.js";
6
- import { loadAgents } from "./loadAgents.js";
7
- import { loadCatalogItems } from "./loadCatalogItems.js";
6
+ import { loadAgents, loadAgentsInternal } from "./loadAgents.js";
7
+ import { loadCatalogItems, loadCatalogItemsInternal } from "./loadCatalogItems.js";
8
8
  import { loadColorPalette } from "./loadColorPalette.js";
9
9
  import { initContextObjects, loadContextObjectsNextPage, reloadContextObjects, } from "./loadContextObjects.js";
10
10
  import { loadSettings } from "./loadSettings.js";
@@ -26,7 +26,9 @@ import { onVisualizationSuccessSave } from "./onVisualizationSuccessSave.js";
26
26
  * One saga to rule them all.
27
27
  * @internal
28
28
  */
29
- export function* rootSaga() {
29
+ export function* rootSaga(initializeOnStart) {
30
+ const initialLoadAgents = initializeOnStart.includes("agents");
31
+ const initialLoadCatalogItems = initializeOnStart.includes("catalogItems");
30
32
  yield takeLatest(loadThreadAction.type, onThreadLoad);
31
33
  yield takeLatest(clearThreadAction.type, onThreadClear);
32
34
  // Re-sync the active conversation with the backend when the chat is (re)opened so that
@@ -50,9 +52,17 @@ export function* rootSaga() {
50
52
  //others
51
53
  yield takeEvery(setVerboseAction.type, onVerboseStore);
52
54
  yield takeEvery([newMessageAction.type, evaluateMessageCompleteAction.type, setCurrentConversationAction.type], onConversationActivity);
55
+ yield takeLeading(setOpenAction.type, loadAgents);
56
+ yield takeLeading(setOpenAction.type, loadCatalogItems);
53
57
  yield fork(onEvent);
58
+ //load data
54
59
  yield call(loadColorPalette);
55
60
  yield call(loadSettings);
56
- yield call(loadAgents);
57
- yield call(loadCatalogItems);
61
+ // this can be long running, so we want to run it as fork
62
+ if (initialLoadAgents) {
63
+ yield fork(loadAgentsInternal);
64
+ }
65
+ if (initialLoadCatalogItems) {
66
+ yield fork(loadCatalogItemsInternal);
67
+ }
58
68
  }
@@ -1,10 +1,21 @@
1
+ import type { PayloadAction } from "@reduxjs/toolkit";
1
2
  import { type IAgent } from "@gooddata/sdk-model";
2
3
  import { type GenAIAgent } from "../../model.js";
3
4
  /**
4
5
  * Load enabled agents from the backend.
5
6
  * @internal
6
7
  */
7
- export declare function loadAgents(): Generator<import("redux-saga/effects").CallEffect<IAgent[]> | import("redux-saga/effects").GetContextEffect | import("redux-saga/effects").PutEffect<{
8
+ export declare function loadAgents({ payload: { isOpen } }: PayloadAction<{
9
+ isOpen: boolean;
10
+ }>): Generator<import("redux-saga/effects").CallEffect<void>, void, unknown>;
11
+ /**
12
+ * Load enabled agents from the backend.
13
+ * @internal
14
+ */
15
+ export declare function loadAgentsInternal(): Generator<import("redux-saga/effects").CallEffect<IAgent[]> | import("redux-saga/effects").GetContextEffect | import("redux-saga/effects").PutEffect<{
16
+ payload: undefined;
17
+ type: "messages/setAgentsLoadingAction";
18
+ }> | import("redux-saga/effects").PutEffect<{
8
19
  payload: {
9
20
  agents: GenAIAgent[] | undefined;
10
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"loadAgents.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/loadAgents.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,MAAM,EAAmB,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIjD;;;GAGG;AACH,wBAAiB,UAAU;;;;;6DAgC1B"}
1
+ {"version":3,"file":"loadAgents.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/loadAgents.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAItD,OAAO,EAAE,KAAK,MAAM,EAAmB,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMjD;;;GAGG;AACH,wBAAiB,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,CAAC;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,2EAMtF;AAED;;;GAGG;AACH,wBAAiB,kBAAkB;;;;;;;;6DAuClC"}
@@ -2,17 +2,33 @@
2
2
  import { call, getContext, put, select } from "redux-saga/effects";
3
3
  import { isIdentifierRef } from "@gooddata/sdk-model";
4
4
  import { agentSwitchingActiveSelector } from "../chatWindow/chatWindowSelectors.js";
5
- import { setAgentsAction } from "../messages/messagesSlice.js";
5
+ import { agentsStateSelector } from "../messages/messagesSelectors.js";
6
+ import { setAgentsAction, setAgentsLoadingAction } from "../messages/messagesSlice.js";
6
7
  /**
7
8
  * Load enabled agents from the backend.
8
9
  * @internal
9
10
  */
10
- export function* loadAgents() {
11
+ export function* loadAgents({ payload: { isOpen } }) {
12
+ if (!isOpen) {
13
+ return;
14
+ }
15
+ yield call(loadAgentsInternal);
16
+ }
17
+ /**
18
+ * Load enabled agents from the backend.
19
+ * @internal
20
+ */
21
+ export function* loadAgentsInternal() {
11
22
  const agentSwitchingActive = yield select(agentSwitchingActiveSelector);
12
23
  if (!agentSwitchingActive) {
13
24
  return;
14
25
  }
26
+ const state = yield select(agentsStateSelector);
27
+ if (state === "loaded" || state === "loading") {
28
+ return;
29
+ }
15
30
  try {
31
+ yield put(setAgentsLoadingAction());
16
32
  const backend = yield getContext("backend");
17
33
  const workspace = yield getContext("workspace");
18
34
  const query = backend
@@ -1,11 +1,22 @@
1
+ import type { PayloadAction } from "@reduxjs/toolkit";
1
2
  import { type IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
2
3
  import { type OptionsDispatcher } from "../options.js";
3
4
  /**
4
5
  * Load catalog items palette from the backend.
5
6
  * @internal
6
7
  */
7
- export declare function loadCatalogItems(): Generator<import("redux-saga/effects").CallEffect<import("@gooddata/sdk-backend-spi").IWorkspaceCatalog> | import("redux-saga/effects").GetContextEffect | import("redux-saga/effects").PutEffect<{
8
+ export declare function loadCatalogItems({ payload: { isOpen } }: PayloadAction<{
9
+ isOpen: boolean;
10
+ }>): Generator<import("redux-saga/effects").CallEffect<void>, void, unknown>;
11
+ /**
12
+ * Load catalog items palette from the backend.
13
+ * @internal
14
+ */
15
+ export declare function loadCatalogItemsInternal(): Generator<import("redux-saga/effects").CallEffect<import("@gooddata/sdk-backend-spi").IWorkspaceCatalog> | import("redux-saga/effects").GetContextEffect | import("redux-saga/effects").PutEffect<{
16
+ payload: undefined;
17
+ type: "chatWindow/setCatalogItemsLoadingAction";
18
+ }> | import("redux-saga/effects").PutEffect<{
8
19
  payload: import("@gooddata/sdk-model").CatalogItem[] | undefined;
9
20
  type: "chatWindow/setCatalogItemsActions";
10
- }>, void, OptionsDispatcher & IAnalyticalBackend & string & import("@gooddata/sdk-backend-spi").IWorkspaceCatalog>;
21
+ }> | import("redux-saga/effects").SelectEffect, void, (OptionsDispatcher & ("loaded" | "loading" | "pending")) & IAnalyticalBackend & string & import("@gooddata/sdk-backend-spi").IWorkspaceCatalog>;
11
22
  //# sourceMappingURL=loadCatalogItems.d.ts.map