@gooddata/sdk-ui-gen-ai 11.64.0-alpha.1 → 11.64.0-alpha.3

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 (116) hide show
  1. package/NOTICE +4 -64198
  2. package/esm/components/GenAIChatDialogConnected.d.ts +35 -2
  3. package/esm/components/GenAIChatDialogConnected.d.ts.map +1 -1
  4. package/esm/components/GenAIChatDialogConnected.js +44 -19
  5. package/esm/components/GenAIStandaloneInput.d.ts +3 -3
  6. package/esm/components/GenAIStandaloneInput.d.ts.map +1 -1
  7. package/esm/components/GenAIStandaloneInput.js +6 -2
  8. package/esm/components/messages/AssistantItem.d.ts.map +1 -1
  9. package/esm/components/messages/AssistantItem.js +1 -0
  10. package/esm/components/messages/ConversationItemContents.d.ts.map +1 -1
  11. package/esm/components/messages/ConversationItemContents.js +4 -0
  12. package/esm/components/messages/ItemsGroup.d.ts.map +1 -1
  13. package/esm/components/messages/ItemsGroup.js +1 -0
  14. package/esm/components/messages/contents/ReasoningIcon.d.ts.map +1 -1
  15. package/esm/components/messages/contents/ReasoningIcon.js +1 -0
  16. package/esm/components/messages/conversationContents/ConversationSkillActivatedContent.d.ts +8 -0
  17. package/esm/components/messages/conversationContents/ConversationSkillActivatedContent.d.ts.map +1 -0
  18. package/esm/components/messages/conversationContents/ConversationSkillActivatedContent.js +9 -0
  19. package/esm/components/messages/conversationContents/ConversationVisualisationV2.d.ts.map +1 -1
  20. package/esm/components/messages/conversationContents/ConversationVisualisationV2.js +2 -1
  21. package/esm/components/messages/conversationContents/ConversationVisualizationContent.d.ts.map +1 -1
  22. package/esm/components/messages/conversationContents/ConversationVisualizationContent.js +2 -6
  23. package/esm/components/messages/conversationContents/utils/errors.d.ts +20 -0
  24. package/esm/components/messages/conversationContents/utils/errors.d.ts.map +1 -0
  25. package/esm/components/messages/conversationContents/utils/errors.js +29 -0
  26. package/esm/components/utils/groupUtility.js +3 -2
  27. package/esm/localization/bundles/de-DE.localization-bundle.d.ts +3 -0
  28. package/esm/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  29. package/esm/localization/bundles/de-DE.localization-bundle.js +3 -0
  30. package/esm/localization/bundles/en-AU.localization-bundle.d.ts +3 -0
  31. package/esm/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  32. package/esm/localization/bundles/en-AU.localization-bundle.js +3 -0
  33. package/esm/localization/bundles/en-GB.localization-bundle.d.ts +3 -0
  34. package/esm/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  35. package/esm/localization/bundles/en-GB.localization-bundle.js +3 -0
  36. package/esm/localization/bundles/en-US.localization-bundle.d.ts +4 -0
  37. package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  38. package/esm/localization/bundles/en-US.localization-bundle.js +4 -0
  39. package/esm/localization/bundles/es-419.localization-bundle.d.ts +3 -0
  40. package/esm/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  41. package/esm/localization/bundles/es-419.localization-bundle.js +3 -0
  42. package/esm/localization/bundles/es-ES.localization-bundle.d.ts +3 -0
  43. package/esm/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  44. package/esm/localization/bundles/es-ES.localization-bundle.js +3 -0
  45. package/esm/localization/bundles/fi-FI.localization-bundle.d.ts +3 -0
  46. package/esm/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  47. package/esm/localization/bundles/fi-FI.localization-bundle.js +3 -0
  48. package/esm/localization/bundles/fr-CA.localization-bundle.d.ts +3 -0
  49. package/esm/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  50. package/esm/localization/bundles/fr-CA.localization-bundle.js +3 -0
  51. package/esm/localization/bundles/fr-FR.localization-bundle.d.ts +3 -0
  52. package/esm/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  53. package/esm/localization/bundles/fr-FR.localization-bundle.js +3 -0
  54. package/esm/localization/bundles/id-ID.localization-bundle.d.ts +3 -0
  55. package/esm/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  56. package/esm/localization/bundles/id-ID.localization-bundle.js +3 -0
  57. package/esm/localization/bundles/it-IT.localization-bundle.d.ts +3 -0
  58. package/esm/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  59. package/esm/localization/bundles/it-IT.localization-bundle.js +3 -0
  60. package/esm/localization/bundles/ja-JP.localization-bundle.d.ts +3 -0
  61. package/esm/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  62. package/esm/localization/bundles/ja-JP.localization-bundle.js +3 -0
  63. package/esm/localization/bundles/ko-KR.localization-bundle.d.ts +3 -0
  64. package/esm/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  65. package/esm/localization/bundles/ko-KR.localization-bundle.js +3 -0
  66. package/esm/localization/bundles/nl-NL.localization-bundle.d.ts +3 -0
  67. package/esm/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  68. package/esm/localization/bundles/nl-NL.localization-bundle.js +3 -0
  69. package/esm/localization/bundles/pl-PL.localization-bundle.d.ts +3 -0
  70. package/esm/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  71. package/esm/localization/bundles/pl-PL.localization-bundle.js +3 -0
  72. package/esm/localization/bundles/pt-BR.localization-bundle.d.ts +3 -0
  73. package/esm/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  74. package/esm/localization/bundles/pt-BR.localization-bundle.js +3 -0
  75. package/esm/localization/bundles/pt-PT.localization-bundle.d.ts +3 -0
  76. package/esm/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  77. package/esm/localization/bundles/pt-PT.localization-bundle.js +3 -0
  78. package/esm/localization/bundles/ru-RU.localization-bundle.d.ts +3 -0
  79. package/esm/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  80. package/esm/localization/bundles/ru-RU.localization-bundle.js +3 -0
  81. package/esm/localization/bundles/sl-SI.localization-bundle.d.ts +3 -0
  82. package/esm/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  83. package/esm/localization/bundles/sl-SI.localization-bundle.js +3 -0
  84. package/esm/localization/bundles/th-TH.localization-bundle.d.ts +3 -0
  85. package/esm/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  86. package/esm/localization/bundles/th-TH.localization-bundle.js +3 -0
  87. package/esm/localization/bundles/tr-TR.localization-bundle.d.ts +3 -0
  88. package/esm/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  89. package/esm/localization/bundles/tr-TR.localization-bundle.js +3 -0
  90. package/esm/localization/bundles/uk-UA.localization-bundle.d.ts +3 -0
  91. package/esm/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  92. package/esm/localization/bundles/uk-UA.localization-bundle.js +3 -0
  93. package/esm/localization/bundles/vi-VN.localization-bundle.d.ts +3 -0
  94. package/esm/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  95. package/esm/localization/bundles/vi-VN.localization-bundle.js +3 -0
  96. package/esm/localization/bundles/zh-HK.localization-bundle.d.ts +3 -0
  97. package/esm/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  98. package/esm/localization/bundles/zh-HK.localization-bundle.js +3 -0
  99. package/esm/localization/bundles/zh-Hans.localization-bundle.d.ts +3 -0
  100. package/esm/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  101. package/esm/localization/bundles/zh-Hans.localization-bundle.js +3 -0
  102. package/esm/localization/bundles/zh-Hant.localization-bundle.d.ts +3 -0
  103. package/esm/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  104. package/esm/localization/bundles/zh-Hant.localization-bundle.js +3 -0
  105. package/esm/sdk-ui-gen-ai.d.ts +13 -0
  106. package/esm/store/events.d.ts +14 -1
  107. package/esm/store/events.d.ts.map +1 -1
  108. package/esm/store/sideEffects/onEvent.d.ts +2 -1
  109. package/esm/store/sideEffects/onEvent.d.ts.map +1 -1
  110. package/esm/store/sideEffects/onEvent.js +2 -0
  111. package/package.json +22 -22
  112. package/styles/css/main.css +15 -0
  113. package/styles/css/main.css.map +1 -1
  114. package/styles/css/messages.css +15 -0
  115. package/styles/css/messages.css.map +1 -1
  116. package/styles/scss/messages.scss +18 -0
@@ -1,8 +1,9 @@
1
1
  import { type RefObject } from "react";
2
2
  import { type IAnalyticalBackend, type IUserWorkspaceSettings } from "@gooddata/sdk-backend-spi";
3
- import type { GenAIObjectType, IColorPalette, IGenAIUserContext } from "@gooddata/sdk-model";
3
+ import type { GenAIChatEffort, GenAIObjectType, IColorPalette, IGenAIUserContext } from "@gooddata/sdk-model";
4
4
  import { type ChatAssistantMessageEvent, type ChatClarificationQuestionsEvent, type ChatClosedEvent, type ChatCopyToClipboardEvent, type ChatDefinitionReceivedEvent, type ChatEvent, type ChatFeedbackErrorEvent, type ChatFeedbackEvent, type ChatModeChangeEvent, type ChatOpenedEvent, type ChatResetEvent, type ChatSaveVisualizationErrorEvent, type ChatSaveVisualizationSuccessEvent, type ChatUserMessageEvent } from "../store/events.js";
5
5
  import { type GenAIAssistantDisplayMode, type LinkHandlerEvent } from "./ConfigContext.js";
6
+ import { type GenAIChatDialogProps } from "./GenAIChatDialog.js";
6
7
  import { type IDashboardSaved } from "./hooks/useDashboardSavedSync.js";
7
8
  import { type IPublisherDocumentSaved } from "./hooks/usePublisherDocumentSavedSync.js";
8
9
  /**
@@ -56,6 +57,33 @@ export type GenAIChatConnectedEvent = {
56
57
  payload: ChatClarificationQuestionsEvent;
57
58
  };
58
59
  export declare function toGenAIChatConnectedEvent(event: ChatEvent): GenAIChatConnectedEvent | undefined;
60
+ type Dispatch = Parameters<Required<GenAIChatDialogProps>["onDispatcher"]>[0];
61
+ type SeedAction = Parameters<Dispatch>[0];
62
+ /**
63
+ * What one ask seeds into the chat.
64
+ *
65
+ * @internal
66
+ */
67
+ export type SeedInput = {
68
+ agentId?: string;
69
+ effort?: GenAIChatEffort;
70
+ askedQuestion?: string | null;
71
+ userContext?: IGenAIUserContext;
72
+ replaceUserContext?: boolean;
73
+ appendToChat?: boolean;
74
+ };
75
+ /**
76
+ * Actions that seed the chat for one ask, in dispatch order.
77
+ *
78
+ * @remarks
79
+ * The agent precedes the clear, because the clear saga reads the selection synchronously when it creates
80
+ * the new conversation. The effort applies only to that fresh conversation: it follows the clear and
81
+ * precedes the message, which reads it. Appending to an existing conversation keeps that conversation's
82
+ * own effort.
83
+ *
84
+ * @internal
85
+ */
86
+ export declare function buildSeedActions({ agentId, effort, askedQuestion, userContext, replaceUserContext, appendToChat, }: SeedInput): SeedAction[];
59
87
  /**
60
88
  * Props for {@link GenAIChatDialogConnected}.
61
89
  *
@@ -122,6 +150,10 @@ export interface IGenAIChatDialogConnectedProps {
122
150
  * Agent ID to use for the seeded question. If not provided, the default agent will be used.
123
151
  */
124
152
  agentId?: string;
153
+ /**
154
+ * Reasoning effort for the conversation the seeded question starts. Ignored when appending to the chat.
155
+ */
156
+ effort?: GenAIChatEffort;
125
157
  /** When true, the seeded question is appended to the existing thread instead of clearing it first. */
126
158
  appendToChat?: boolean;
127
159
  /** When true, the user context is replaced instead of merged with the existing one. */
@@ -155,5 +187,6 @@ export interface IGenAIChatDialogConnectedProps {
155
187
  *
156
188
  * @internal
157
189
  */
158
- export declare function GenAIChatDialogConnected({ backend, workspace, locale, canManage, canAnalyze, canFullControl, settings, agentId, isOpen, isDisabled, displayMode, onOpen, onClose, askedQuestion, askSeq, userContext, ambientUserContext, ambientUserContextLoading, publisherDocumentSaved, dashboardSaved, appendToChat, replaceUserContext, includeTags, excludeTags, objectTypes: objectTypesOverride, onEvent, onAnyEvent, dialogPosition, className, colorPalette, allowNativeLinks, onLinkClick, returnFocusTo, }: IGenAIChatDialogConnectedProps): import("react/jsx-runtime").JSX.Element;
190
+ export declare function GenAIChatDialogConnected({ backend, workspace, locale, canManage, canAnalyze, canFullControl, settings, agentId, effort, isOpen, isDisabled, displayMode, onOpen, onClose, askedQuestion, askSeq, userContext, ambientUserContext, ambientUserContextLoading, publisherDocumentSaved, dashboardSaved, appendToChat, replaceUserContext, includeTags, excludeTags, objectTypes: objectTypesOverride, onEvent, onAnyEvent, dialogPosition, className, colorPalette, allowNativeLinks, onLinkClick, returnFocusTo, }: IGenAIChatDialogConnectedProps): import("react/jsx-runtime").JSX.Element;
191
+ export {};
159
192
  //# sourceMappingURL=GenAIChatDialogConnected.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenAIChatDialogConnected.d.ts","sourceRoot":"","sources":["../../src/components/GenAIChatDialogConnected.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GenAIChatDialogConnected.d.ts","sourceRoot":"","sources":["../../src/components/GenAIChatDialogConnected.tsx"],"names":[],"mappings":"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"}
@@ -4,10 +4,11 @@ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
4
4
  import { makeUserItem } from "../model.js";
5
5
  import { setAmbientUserContextAction, setUserContextAction } from "../store/chatWindow/chatWindowSlice.js";
6
6
  import { isChatAssistantMessageEvent, isChatClarificationQuestionsEvent, isChatClosedEvent, isChatCopyToClipboardEvent, isChatDefinitionReceivedEvent, isChatFeedbackErrorEvent, isChatFeedbackEvent, isChatModeChangeEvent, isChatOpenedEvent, isChatResetEvent, isChatSaveVisualizationErrorEvent, isChatSaveVisualizationSuccessEvent, isChatUserMessageEvent, } from "../store/events.js";
7
- import { clearThreadAction, newMessageAction, setSelectedAgentAction, } from "../store/messages/messagesSlice.js";
7
+ import { clearThreadAction, newMessageAction, setSelectedAgentAction, setSelectedEffortAction, } from "../store/messages/messagesSlice.js";
8
8
  import { GenAIChatDialog } from "./GenAIChatDialog.js";
9
9
  import { useDashboardSavedSync } from "./hooks/useDashboardSavedSync.js";
10
10
  import { usePublisherDocumentSavedSync, } from "./hooks/usePublisherDocumentSavedSync.js";
11
+ import { sanitizeEffort } from "./utils/effortSelection.js";
11
12
  export function toGenAIChatConnectedEvent(event) {
12
13
  if (isChatOpenedEvent(event)) {
13
14
  return { name: "opened", payload: event };
@@ -50,6 +51,38 @@ export function toGenAIChatConnectedEvent(event) {
50
51
  }
51
52
  return undefined;
52
53
  }
54
+ /**
55
+ * Actions that seed the chat for one ask, in dispatch order.
56
+ *
57
+ * @remarks
58
+ * The agent precedes the clear, because the clear saga reads the selection synchronously when it creates
59
+ * the new conversation. The effort applies only to that fresh conversation: it follows the clear and
60
+ * precedes the message, which reads it. Appending to an existing conversation keeps that conversation's
61
+ * own effort.
62
+ *
63
+ * @internal
64
+ */
65
+ export function buildSeedActions({ agentId, effort, askedQuestion, userContext, replaceUserContext, appendToChat, }) {
66
+ const actions = [];
67
+ const seeding = Boolean(askedQuestion || userContext);
68
+ if (seeding) {
69
+ actions.push(setSelectedAgentAction({ agentId }));
70
+ }
71
+ if (seeding && !appendToChat) {
72
+ actions.push(clearThreadAction());
73
+ const supported = sanitizeEffort(effort);
74
+ if (supported) {
75
+ actions.push(setSelectedEffortAction({ effort: supported }));
76
+ }
77
+ }
78
+ // Always set (and thereby clear when undefined) so a follow-up ask without context does not
79
+ // inherit the previous ask's user context (LX-2544).
80
+ actions.push(setUserContextAction({ userContext, replaceUserContext }));
81
+ if (askedQuestion) {
82
+ actions.push(newMessageAction(makeUserItem({ type: "text", text: askedQuestion })));
83
+ }
84
+ return actions;
85
+ }
53
86
  /**
54
87
  * A "connected" wrapper over {@link GenAIChatDialog} that centralizes the wiring every consumer otherwise
55
88
  * duplicates: object-type derivation, the dispatcher-based seeding flow (clear thread / set user context), default link handling, and normalizing
@@ -60,7 +93,7 @@ export function toGenAIChatConnectedEvent(event) {
60
93
  *
61
94
  * @internal
62
95
  */
63
- export function GenAIChatDialogConnected({ backend, workspace, locale, canManage, canAnalyze, canFullControl, settings, agentId, isOpen, isDisabled = true, displayMode, onOpen, onClose, askedQuestion, askSeq, userContext, ambientUserContext, ambientUserContextLoading, publisherDocumentSaved, dashboardSaved, appendToChat, replaceUserContext, includeTags, excludeTags, objectTypes: objectTypesOverride, onEvent, onAnyEvent, dialogPosition, className, colorPalette, allowNativeLinks = true, onLinkClick, returnFocusTo, }) {
96
+ export function GenAIChatDialogConnected({ backend, workspace, locale, canManage, canAnalyze, canFullControl, settings, agentId, effort, isOpen, isDisabled = true, displayMode, onOpen, onClose, askedQuestion, askSeq, userContext, ambientUserContext, ambientUserContextLoading, publisherDocumentSaved, dashboardSaved, appendToChat, replaceUserContext, includeTags, excludeTags, objectTypes: objectTypesOverride, onEvent, onAnyEvent, dialogPosition, className, colorPalette, allowNativeLinks = true, onLinkClick, returnFocusTo, }) {
64
97
  const defaultLinkClick = useCallback(({ itemUrl, newTab, preventDefault, type, dashboardStatus, }) => {
65
98
  // NOTE: If dashboard is draft, do nothing for now
66
99
  if (type === "dashboard" && dashboardStatus === "draft") {
@@ -131,26 +164,18 @@ export function GenAIChatDialogConnected({ backend, workspace, locale, canManage
131
164
  return;
132
165
  }
133
166
  lastSeedTokenRef.current = seedToken;
134
- // Agent id override. Must precede the clear so the new conversation is created with
135
- // this agent - the clear saga reads the selection synchronously.
136
- if (userContext || askedQuestion) {
137
- chatDispatcher(setSelectedAgentAction({ agentId }));
138
- }
139
- // Check clean
140
- const clear = (askedQuestion || userContext) && !appendToChat;
141
- if (clear) {
142
- chatDispatcher(clearThreadAction());
143
- }
144
- // Always set (and thereby clear when undefined) so a follow-up ask without context does not
145
- // inherit the previous ask's user context (LX-2544).
146
- chatDispatcher(setUserContextAction({ userContext, replaceUserContext }));
147
- // Ask question
148
- if (askedQuestion) {
149
- chatDispatcher(newMessageAction(makeUserItem({ type: "text", text: askedQuestion })));
150
- }
167
+ buildSeedActions({
168
+ agentId,
169
+ effort,
170
+ askedQuestion,
171
+ userContext,
172
+ replaceUserContext,
173
+ appendToChat,
174
+ }).forEach((action) => chatDispatcher(action));
151
175
  }, [
152
176
  isOpen,
153
177
  agentId,
178
+ effort,
154
179
  chatDispatcher,
155
180
  askedQuestion,
156
181
  askSeq,
@@ -1,4 +1,4 @@
1
- import { type AgentCustomSkill } from "@gooddata/sdk-model";
1
+ import { type AgentCustomSkill, type GenAIChatEffort } from "@gooddata/sdk-model";
2
2
  import { type GenAIAgent } from "../model.js";
3
3
  import type { IGenAIAssistantSlots } from "./customized/types.js";
4
4
  import { type GenAiStoreProps } from "./GenAiStore.js";
@@ -11,9 +11,9 @@ export type GenAIStandaloneInputProps = Omit<GenAiStoreProps, "children"> & {
11
11
  */
12
12
  placeholder?: string;
13
13
  /**
14
- * Callback called when the user submits a message.
14
+ * Callback called when the user submits a message, with the agent and effort picked in the input.
15
15
  */
16
- onStart?: (prompt: string, agentId?: string) => void;
16
+ onStart?: (prompt: string, agentId?: string, effort?: GenAIChatEffort) => void;
17
17
  /**
18
18
  * Callback called when the user sets an agent.
19
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"GenAIStandaloneInput.d.ts","sourceRoot":"","sources":["../../src/components/GenAIStandaloneInput.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAM5D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAYnE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,GAAG;IACxE;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IAChD;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACvC,CAAC;AAqGF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,2CAcpE"}
1
+ {"version":3,"file":"GenAIStandaloneInput.d.ts","sourceRoot":"","sources":["../../src/components/GenAIStandaloneInput.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAMlF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAK9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAYnE;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,GAAG;IACxE;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/E;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IAChD;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACvC,CAAC;AAuGF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,2CAcpE"}
@@ -3,10 +3,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useCallback, useEffect, useMemo, useState } from "react";
4
4
  import cx from "classnames";
5
5
  import { defineMessages, useIntl } from "react-intl";
6
+ import { useSelector } from "react-redux";
6
7
  import { useBackendStrict, useWorkspaceStrict } from "@gooddata/sdk-ui";
7
8
  import { DefaultSyntaxHighlightingInput } from "@gooddata/sdk-ui-kit";
8
9
  import { useGenAIStandaloneInputData } from "../hooks/useGenAIStandaloneInputData.js";
9
10
  import { IntlWrapper } from "../localization/IntlWrapper.js";
11
+ import { selectedEffortSelector } from "../store/messages/messagesSelectors.js";
10
12
  import { useCompletion } from "./completion/useCompletion.js";
11
13
  import { CustomizationProvider } from "./CustomizationProvider.js";
12
14
  import { GenAiChatAgentSwitching } from "./GenAiChatAgentSwitching.js";
@@ -25,6 +27,8 @@ function StandaloneInputContent({ onStart, onAgentSet, onAgentsLoaded, className
25
27
  const [value, setValue] = useState("");
26
28
  const [editorApi, setApi] = useState(null);
27
29
  const { selectedAgentId, agents } = useGenAIStandaloneInputData(requiredSkills);
30
+ // The input's store never has a current conversation, so the pick lives in the global selection.
31
+ const selectedEffort = useSelector(selectedEffortSelector);
28
32
  useDataLoad();
29
33
  useEffect(() => {
30
34
  if (selectedAgentId) {
@@ -46,10 +50,10 @@ function StandaloneInputContent({ onStart, onAgentSet, onAgentsLoaded, className
46
50
  const handleSubmit = useCallback(() => {
47
51
  const trimmed = value.trim();
48
52
  if (trimmed) {
49
- onStart?.(trimmed, selectedAgentId);
53
+ onStart?.(trimmed, selectedAgentId, selectedEffort);
50
54
  setValue("");
51
55
  }
52
- }, [value, selectedAgentId, onStart]);
56
+ }, [value, selectedAgentId, selectedEffort, onStart]);
53
57
  const handleKeyDown = (e) => {
54
58
  if (e.key === "Enter" && !e.shiftKey) {
55
59
  const trimmed = value.trim();
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantItem.d.ts","sourceRoot":"","sources":["../../../src/components/messages/AssistantItem.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAQjE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAOnE,KAAK,kBAAkB,GAAG;IACtB,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,OAAO,EAAE,0BAA0B,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,kBAAkB,kDA0FrF"}
1
+ {"version":3,"file":"AssistantItem.d.ts","sourceRoot":"","sources":["../../../src/components/messages/AssistantItem.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAQjE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAOnE,KAAK,kBAAkB,GAAG;IACtB,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,OAAO,EAAE,0BAA0B,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,kBAAkB,kDA2FrF"}
@@ -41,5 +41,6 @@ export function AssistantItemComponent({ message, groups, isLast }) {
41
41
  const isFilledClarificationQuestion = isClarificationQuestionsItem(message) && message.filled;
42
42
  return (_jsxs("div", { className: classNames, "data-state": messageState, "data-testid": "gen-ai-conversation-assistant-message", children: [_jsx("span", { className: "gd-gen-ai-chat__visually__hidden", children: intl.formatMessage({ id: "gd.gen-ai.message.label.assistant" }) }), _jsx(ReasoningIcon, { content: message.content }), _jsx(ConversationItemContents, { role: "assistant", message: message, groups: groups, references: references, isLoading: messageState === "loading", isLast: isLast }), _jsx(AssistantItemSuggestions, { type: "followUp", message: message, showSuggestions: true, references: references }), _jsxs("div", { className: "gd-gen-ai-chat__conversation__item__actions", children: [group.type === "assistant" &&
43
43
  message.content.type !== "reasoning" &&
44
+ message.content.type !== "skillsActivated" &&
44
45
  !isFilledClarificationQuestion ? (_jsx(FeedbackComponent, { group: group, message: message, isLast: Boolean(isLast), isComplete: Boolean(message.complete), isHidden: Boolean(hasInteractionIntelligenceTrigger && !isLast) })) : null, showInteractionIntelligence ? (_jsx(InteractionIntelligenceTrigger, { totals: interactionIntelligenceTotals, isOpen: isInteractionIntelligenceOpen, onToggle: () => setIsInteractionIntelligenceOpen((current) => !current) })) : null] }), showInteractionIntelligence && isInteractionIntelligenceOpen ? (_jsx(GenAiInteractionIntelligence, { responseId: message.responseId, onClose: () => setIsInteractionIntelligenceOpen(false) })) : null, _jsx(AssistantItemSuggestions, { type: "actions", message: message, showSuggestions: isLast })] }));
45
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationItemContents.d.ts","sourceRoot":"","sources":["../../../src/components/messages/ConversationItemContents.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGH,KAAK,0BAA0B,EAC/B,KAAK,iBAAiB,EACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAMnE,KAAK,6BAA6B,GAAG;IACjC,OAAO,EAAE,0BAA0B,CAAC;IACpC,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,EACrC,OAAO,EACP,MAAM,EACN,UAAU,EACV,SAAS,EACT,MAAM,GACT,EAAE,6BAA6B,kDAwE/B"}
1
+ {"version":3,"file":"ConversationItemContents.d.ts","sourceRoot":"","sources":["../../../src/components/messages/ConversationItemContents.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGH,KAAK,0BAA0B,EAC/B,KAAK,iBAAiB,EACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAOnE,KAAK,6BAA6B,GAAG;IACjC,OAAO,EAAE,0BAA0B,CAAC;IACpC,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,EACrC,OAAO,EACP,MAAM,EACN,UAAU,EACV,SAAS,EACT,MAAM,GACT,EAAE,6BAA6B,kDA4E/B"}
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useCustomization } from "../CustomizationContext.js";
3
3
  import { ConversationClarifyingAnswersContent } from "./conversationContents/ConversationClarifyingAnswersContent.js";
4
+ import { ConversationSkillActivatedContent } from "./conversationContents/ConversationSkillActivatedContent.js";
4
5
  import { ConversationToolCallContent } from "./conversationContents/ConversationToolCallContent.js";
5
6
  import { ConversationToolResultContent } from "./conversationContents/ConversationToolResultContent.js";
6
7
  export function ConversationItemContents({ message, groups, references, isLoading, isLast, }) {
@@ -27,5 +28,8 @@ export function ConversationItemContents({ message, groups, references, isLoadin
27
28
  if (content.type === "toolResult") {
28
29
  return _jsx(ConversationToolResultContent, { result: content.result, isLoading: isLoading });
29
30
  }
31
+ if (content.type === "skillsActivated") {
32
+ return _jsx(ConversationSkillActivatedContent, { skills: content.skills, isLoading: isLoading });
33
+ }
30
34
  return null;
31
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ItemsGroup.d.ts","sourceRoot":"","sources":["../../../src/components/messages/ItemsGroup.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,OAAO,CAAC;AAG1D,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,YAAY,CAAC;AAKrE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,UAAU,gBAAgB;IACtB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CAsB9E;AA4ID,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAqBlE"}
1
+ {"version":3,"file":"ItemsGroup.d.ts","sourceRoot":"","sources":["../../../src/components/messages/ItemsGroup.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,OAAO,CAAC;AAG1D,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,YAAY,CAAC;AAKrE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,UAAU,gBAAgB;IACtB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CAsB9E;AA6ID,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAqBlE"}
@@ -62,6 +62,7 @@ function useReasoningGroup(previousGroup, group) {
62
62
  }
63
63
  case "toolCall":
64
64
  case "toolResult":
65
+ case "skillsActivated":
65
66
  default:
66
67
  break;
67
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReasoningIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/contents/ReasoningIcon.tsx"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,6BAA6B,EAClC,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACtC,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,6BAA6B,GAAG,6BAA6B,GAAG,8BAA8B,CAAC;CAC3G;AAED,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,mBAAmB,2CAkB7D"}
1
+ {"version":3,"file":"ReasoningIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/contents/ReasoningIcon.tsx"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,6BAA6B,EAClC,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACtC,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,6BAA6B,GAAG,6BAA6B,GAAG,8BAA8B,CAAC;CAC3G;AAED,wBAAgB,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,mBAAmB,2CAmB7D"}
@@ -7,6 +7,7 @@ export function ReasoningIcon({ content }) {
7
7
  case "toolCall":
8
8
  case "toolResult":
9
9
  return (_jsx("div", { className: "gd-gen-ai-chat__icon__special", children: _jsx(UiIcon, { type: "code", size: 12 }) }));
10
+ case "skillsActivated":
10
11
  default:
11
12
  return _jsx("div", { className: "gd-gen-ai-chat__icon__point" });
12
13
  }
@@ -0,0 +1,8 @@
1
+ import { type IChatConversationSkillActivatedContent } from "@gooddata/sdk-backend-spi";
2
+ export type ConversationSkillActivatedContentProps = {
3
+ skills: IChatConversationSkillActivatedContent["skills"];
4
+ className?: string;
5
+ isLoading?: boolean;
6
+ };
7
+ export declare function ConversationSkillActivatedContent({ className, skills, }: ConversationSkillActivatedContentProps): import("react/jsx-runtime").JSX.Element;
8
+ //# sourceMappingURL=ConversationSkillActivatedContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConversationSkillActivatedContent.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationSkillActivatedContent.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,sCAAsC,EAAE,MAAM,2BAA2B,CAAC;AAGxF,MAAM,MAAM,sCAAsC,GAAG;IACjD,MAAM,EAAE,sCAAsC,CAAC,QAAQ,CAAC,CAAC;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,iCAAiC,CAAC,EAC9C,SAAS,EACT,MAAM,GACT,EAAE,sCAAsC,2CA2BxC"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // (C) 2024-2026 GoodData Corporation
3
+ import cx from "classnames";
4
+ import { FormattedMessage } from "react-intl";
5
+ import { UiChip } from "@gooddata/sdk-ui-kit";
6
+ export function ConversationSkillActivatedContent({ className, skills, }) {
7
+ const classNames = cx("gd-gen-ai-chat__conversation__item__content", "gd-gen-ai-chat__conversation__item__content--skills", className);
8
+ return (_jsxs("div", { className: classNames, children: [_jsx("div", { className: "gd-gen-ai-chat__conversation__item__content--skills--header", children: _jsx(FormattedMessage, { id: "gd.gen-ai.messages.skills" }) }), _jsx("div", { className: "gd-gen-ai-chat__conversation__item__content--skills--content", children: skills.map((skill, index) => (_jsx(UiChip, { isDisabled: true, label: skill.title, isActionable: false, isDeletable: false, isExpandable: false, isActive: false }, index))) })] }));
9
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationVisualisationV2.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationVisualisationV2.tsx"],"names":[],"mappings":"AAOA,OAAO,EACH,KAAK,qCAAqC,EAC1C,KAAK,sBAAsB,EAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEH,KAAK,aAAa,EAElB,KAAK,gBAAgB,EAGrB,KAAK,WAAW,EAEnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGH,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAInB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,KAAK,kCAAkC,EAE1C,MAAM,4BAA4B,CAAC;AAQpC,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAqEpE,MAAM,MAAM,8BAA8B,GAAG;IACzC,OAAO,EAAE,0BAA0B,CAAC;IACpC,aAAa,EAAE,WAAW,CAAC,qCAAqC,CAAC,eAAe,CAAC,CAAC,CAAC;IACnF,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,YAAY,CAAC,EAAE,CACX,IAAI,EAAE;QACF,aAAa,EAAE,kCAAkC,EAAE,CAAC;QACpD,KAAK,EAAE,WAAW,CAAC;KACtB,GAAG,IAAI,KACP,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,4BAA4B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACtC,OAAO,EACP,YAAY,EACZ,UAAU,EACV,aAAa,EACb,UAAU,EACV,QAAQ,EACR,WAAW,EACX,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,cAAqB,EACrB,oBAA4B,EAC5B,yBAAiC,EACjC,4BAAoC,GACvC,EAAE,8BAA8B,2CAqKhC"}
1
+ {"version":3,"file":"ConversationVisualisationV2.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationVisualisationV2.tsx"],"names":[],"mappings":"AAOA,OAAO,EACH,KAAK,qCAAqC,EAC1C,KAAK,sBAAsB,EAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEH,KAAK,aAAa,EAElB,KAAK,gBAAgB,EAGrB,KAAK,WAAW,EAEnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGH,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAInB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACH,KAAK,kCAAkC,EAE1C,MAAM,4BAA4B,CAAC;AAQpC,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAsEpE,MAAM,MAAM,8BAA8B,GAAG;IACzC,OAAO,EAAE,0BAA0B,CAAC;IACpC,aAAa,EAAE,WAAW,CAAC,qCAAqC,CAAC,eAAe,CAAC,CAAC,CAAC;IACnF,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,YAAY,CAAC,EAAE,CACX,IAAI,EAAE;QACF,aAAa,EAAE,kCAAkC,EAAE,CAAC;QACpD,KAAK,EAAE,WAAW,CAAC;KACtB,GAAG,IAAI,KACP,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,4BAA4B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACtC,OAAO,EACP,YAAY,EACZ,UAAU,EACV,aAAa,EACb,UAAU,EACV,QAAQ,EACR,WAAW,EACX,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,cAAqB,EACrB,oBAA4B,EAC5B,yBAAiC,EACjC,4BAAoC,GACvC,EAAE,8BAA8B,2CAqKhC"}
@@ -15,6 +15,7 @@ import { mapVisualizationForecastToChartConfig } from "../../../forecast/forecas
15
15
  import { saveVisualisationRenderStatusAction, visualizationErrorAction, } from "../../../store/messages/messagesSlice.js";
16
16
  import { storeKdaReturnFocusFromDrillContext } from "../../../utils/kdaReturnFocus.js";
17
17
  import { changeAnalysisDrills } from "./utils/changeAnalysisDrills.js";
18
+ import { isViewableError } from "./utils/errors.js";
18
19
  const visualizationTooltipOptions = {
19
20
  tooltip: {
20
21
  className: "gd-gen-ai-chat__vis_tooltip",
@@ -163,7 +164,7 @@ export function ConversationVisualisation({ message, colorPalette, separators, v
163
164
  }, [onDrillFired, enableSecondGranularities]);
164
165
  const locale = isLocale(intl.locale) ? intl.locale : DefaultLocale;
165
166
  const currentError = renderError?.insight === insight ? renderError.error : undefined;
166
- if (currentError) {
167
+ if (currentError && !isViewableError(currentError)) {
167
168
  return _jsx(VisualizationError, { error: currentError, locale: locale });
168
169
  }
169
170
  return (_jsx(ScopedThemeProvider, { theme: kpiTheme, children: _jsx(InsightRenderer, { insight: insight, locale: locale, settings: settings, colorPalette: colorPalette, config: config, drillableItems: drillableItems, onDrill: handlerDrill, onError: handleSdkError, onLoadingChanged: handleLoadingChanged, onExportReady: handleSuccess, execConfig: execConfig }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationVisualizationContent.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationVisualizationContent.tsx"],"names":[],"mappings":"AAoBA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AA2BvF,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAa9G,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,KAAK,oDAAoD,EAAE,MAAM,2BAA2B,CAAC;AA4BtG,KAAK,wBAAwB,GAAG,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC;AAE9E,wBAAgB,kCAAkC,CAAC,EAC/C,QAAQ,EACR,oBAAoB,EACpB,QAAQ,EACR,SAAS,GACZ,EAAE;IACC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,SAAS,CAAC,EAAE,oDAAoD,CAAC,WAAW,CAAC,CAAC;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB,EAAE,OAAO,CAAC;CACjC,GAAG,wBAAwB,EAAE,CAyB7B;AAED,MAAM,MAAM,qCAAqC,GAAG;IAChD,OAAO,EAAE,0BAA0B,CAAC;IACpC,IAAI,EAAE,mCAAmC,CAAC;IAC1C,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,aAAa,EAAE,WAAW,CAAC,qCAAqC,CAAC,eAAe,CAAC,CAAC,CAAC;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,oDAAoD,CAAC,WAAW,CAAC,CAAC;IAC9E,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACrC,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,EAC7C,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,SAAS,EACT,SAAS,EACT,uBAAuB,GAC1B,EAAE,qCAAqC,2CA6IvC"}
1
+ {"version":3,"file":"ConversationVisualizationContent.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationVisualizationContent.tsx"],"names":[],"mappings":"AAoBA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AA2BvF,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAa9G,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,KAAK,oDAAoD,EAAE,MAAM,2BAA2B,CAAC;AA6BtG,KAAK,wBAAwB,GAAG,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC;AAE9E,wBAAgB,kCAAkC,CAAC,EAC/C,QAAQ,EACR,oBAAoB,EACpB,QAAQ,EACR,SAAS,GACZ,EAAE;IACC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,SAAS,CAAC,EAAE,oDAAoD,CAAC,WAAW,CAAC,CAAC;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB,EAAE,OAAO,CAAC;CACjC,GAAG,wBAAwB,EAAE,CAyB7B;AAED,MAAM,MAAM,qCAAqC,GAAG;IAChD,OAAO,EAAE,0BAA0B,CAAC;IACpC,IAAI,EAAE,mCAAmC,CAAC;IAC1C,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,aAAa,EAAE,WAAW,CAAC,qCAAqC,CAAC,eAAe,CAAC,CAAC,CAAC;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,oDAAoD,CAAC,WAAW,CAAC,CAAC;IAC9E,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACrC,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,EAC7C,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,SAAS,EACT,SAAS,EACT,uBAAuB,GAC1B,EAAE,qCAAqC,2CAsIvC"}
@@ -23,6 +23,7 @@ import { SaveVisualizationDialog } from "./SaveVisualizationDialog.js";
23
23
  import { createKdaDefinitionFromDrill, getDashboardAttributeFilter } from "./useKdaDefinition.js";
24
24
  import { useKdaEnabled } from "./useKdaEnabled.js";
25
25
  import { useInsightSaveCheck } from "./useSaveCheck.js";
26
+ import { isFatalError } from "./utils/errors.js";
26
27
  const MORE_MENU_BUTTON_ID = "gd-gen-ai-chat__conversation__visualization__save__more-menu-button";
27
28
  const overlayAlignPoints = [{ align: "br tr" }];
28
29
  export function getVisibleVisualisationMenuItemIds({ scenario, isVisualisationSaved, hasError, menuItems, }) {
@@ -72,12 +73,7 @@ export function ConversationVisualizationContent({ message, part, scenario, visu
72
73
  const { onCopy, onOpen, onSave } = useHandlers({ visualization, setSaveDialogOpen });
73
74
  const onVisualizationError = useCallback((error) => {
74
75
  // Ignore some specific errors
75
- const isFatal = !(isNegativeValues(error) ||
76
- isNoDataSdkError(error) ||
77
- isDataTooLargeToDisplay(error) ||
78
- isDataTooLargeToCompute(error) ||
79
- isForecastNotReceived(error) ||
80
- isClusteringNotReceived(error));
76
+ const isFatal = isFatalError(error);
81
77
  setVisError({ error, isFatal, visualizationId, isTable });
82
78
  }, [isTable, visualizationId]);
83
79
  const onVisualizationSuccess = useCallback(() => {
@@ -0,0 +1,20 @@
1
+ import { type GoodDataSdkError } from "@gooddata/sdk-ui";
2
+ /**
3
+ * Determines whether the provided error is a fatal error.
4
+ *
5
+ * This function evaluates the given error and checks if it is not one of the known
6
+ * non-fatal error types, such as negative values, no data, data too large to display,
7
+ * data too large to compute, forecast not received, or clustering not received.
8
+ *
9
+ * @param {Error | GoodDataSdkError | null | undefined} error - The error to evaluate.
10
+ * @return {boolean} Returns true if the error is considered fatal, otherwise false.
11
+ */
12
+ export declare function isFatalError(error?: Error | GoodDataSdkError | null): boolean;
13
+ /**
14
+ * Determines if the provided error is viewable, based on specific error conditions.
15
+ *
16
+ * @param {Error | GoodDataSdkError | null | undefined} error - The error object to evaluate. It can be an instance of Error, GoodDataSdkError, null, or undefined.
17
+ * @return {boolean} Returns true if the error is viewable, otherwise false.
18
+ */
19
+ export declare function isViewableError(error?: Error | GoodDataSdkError | null): error is import("@gooddata/sdk-ui").ClusteringNotReceivedSdkError | import("@gooddata/sdk-ui").ForecastNotReceivedSdkError | GoodDataSdkError;
20
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/components/messages/conversationContents/utils/errors.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,gBAAgB,EAOxB,MAAM,kBAAkB,CAAC;AAE1B;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,gBAAgB,GAAG,IAAI,WASnE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,gBAAgB,GAAG,IAAI,iJAEtE"}
@@ -0,0 +1,29 @@
1
+ // (C) 2026 GoodData Corporation
2
+ import { isClusteringNotReceived, isDataTooLargeToCompute, isDataTooLargeToDisplay, isForecastNotReceived, isNegativeValues, isNoDataSdkError, } from "@gooddata/sdk-ui";
3
+ /**
4
+ * Determines whether the provided error is a fatal error.
5
+ *
6
+ * This function evaluates the given error and checks if it is not one of the known
7
+ * non-fatal error types, such as negative values, no data, data too large to display,
8
+ * data too large to compute, forecast not received, or clustering not received.
9
+ *
10
+ * @param {Error | GoodDataSdkError | null | undefined} error - The error to evaluate.
11
+ * @return {boolean} Returns true if the error is considered fatal, otherwise false.
12
+ */
13
+ export function isFatalError(error) {
14
+ return !(isNegativeValues(error) ||
15
+ isNoDataSdkError(error) ||
16
+ isDataTooLargeToDisplay(error) ||
17
+ isDataTooLargeToCompute(error) ||
18
+ isForecastNotReceived(error) ||
19
+ isClusteringNotReceived(error));
20
+ }
21
+ /**
22
+ * Determines if the provided error is viewable, based on specific error conditions.
23
+ *
24
+ * @param {Error | GoodDataSdkError | null | undefined} error - The error object to evaluate. It can be an instance of Error, GoodDataSdkError, null, or undefined.
25
+ * @return {boolean} Returns true if the error is viewable, otherwise false.
26
+ */
27
+ export function isViewableError(error) {
28
+ return isForecastNotReceived(error) || isClusteringNotReceived(error);
29
+ }
@@ -52,8 +52,9 @@ function getMessageType(message) {
52
52
  if (message.role === "system") {
53
53
  return "system";
54
54
  }
55
- if (message.content.type === "reasoning" ||
56
- message.role === "tool" ||
55
+ if (message.role === "tool" ||
56
+ message.content.type === "reasoning" ||
57
+ message.content.type === "skillsActivated" ||
57
58
  message.content.type === "toolCall" ||
58
59
  message.content.type === "toolResult") {
59
60
  return "reasoning";
@@ -29,6 +29,8 @@ export declare const de_DE: {
29
29
  "gd.gen-ai.visualization.unavailable": string;
30
30
  "gd.gen-ai.permission-error": string;
31
31
  "gd.gen-ai.permission-error.description": string;
32
+ "gd.gen-ai.conversationContents.clarifyingAnswers.missing-error": string;
33
+ "gd.gen-ai.conversationContents.clarifyingAnswers.skipped": string;
32
34
  "gd.gen-ai.input-placeholder": string;
33
35
  "gd.gen-ai.input-label": string;
34
36
  "gd.gen-ai.context.add_context": string;
@@ -204,6 +206,7 @@ export declare const de_DE: {
204
206
  "gd.gen-ai.visualisation.menu.button.open_in_analyze": string;
205
207
  "gd.gen-ai.visualisation.menu.button.open_in_analyze.description": string;
206
208
  "gd.gen-ai.visualisation.menu.button.copy_visualisation_link": string;
209
+ "gd.gen-ai.messages.skills": string;
207
210
  "gd.gen-ai.messages.label": string;
208
211
  "gd.gen-ai.message.label.user": string;
209
212
  "gd.gen-ai.message.label.assistant": string;
@@ -1 +1 @@
1
- {"version":3,"file":"de-DE.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/de-DE.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;IACd,wBAAwB;IACxB,oCAAoC;IACpC,uCAAuC;IACvC,yCAAyC;IACzC,oCAAoC;IACpC,4CAA4C;IAC5C,gCAAgC;IAChC,kCAAkC;IAClC,kCAAkC;IAClC,qCAAqC;IACrC,sCAAsC;IACtC,8CAA8C;IAC9C,qCAAqC;IACrC,yBAAyB;IACzB,qCAAqC;IACrC,2CAA2C;IAC3C,uCAAuC;IACvC,8CAA8C;IAC9C,4DAA4D;IAC5D,oCAAoC;IACpC,gDAAgD;IAChD,wDAAwD;IACxD,uCAAuC;IACvC,+CAA+C;IAC/C,wCAAwC;IACxC,0CAA0C;IAC1C,8CAA8C;IAC9C,qCAAqC;IACrC,4BAA4B;IAC5B,wCAAwC;IACxC,6BAA6B;IAC7B,uBAAuB;IACvB,+BAA+B;IAC/B,4BAA4B;IAC5B,sCAAsC;IACtC,uCAAuC;IACvC,2BAA2B;IAC3B,yBAAyB;IACzB,mCAAmC;IACnC,kCAAkC;IAClC,0CAA0C;IAC1C,sCAAsC;IACtC,sCAAsC;IACtC,wCAAwC;IACxC,yCAAyC;IACzC,sCAAsC;IACtC,kCAAkC;IAClC,4BAA4B;IAC5B,wBAAwB;IACxB,kCAAkC;IAClC,sCAAsC;IACtC,oCAAoC;IACpC,kCAAkC;IAClC,mCAAmC;IACnC,kBAAkB;IAClB,0BAA0B;IAC1B,mCAAmC;IACnC,iDAAiD;IACjD,6BAA6B;IAC7B,8CAA8C;IAC9C,0BAA0B;IAC1B,iBAAiB;IACjB,2BAA2B;IAC3B,oCAAoC;IACpC,qBAAqB;IACrB,mCAAmC;IACnC,2BAA2B;IAC3B,gCAAgC;IAChC,uCAAuC;IACvC,8BAA8B;IAC9B,mCAAmC;IACnC,0CAA0C;IAC1C,yBAAyB;IACzB,4BAA4B;IAC5B,gCAAgC;IAChC,wCAAwC;IACxC,4CAA4C;IAC5C,iCAAiC;IACjC,+BAA+B;IAC/B,gCAAgC;IAChC,0CAA0C;IAC1C,gDAAgD;IAChD,+CAA+C;IAC/C,2CAA2C;IAC3C,iCAAiC;IACjC,sBAAsB;IACtB,wBAAwB;IACxB,gCAAgC;IAChC,wCAAwC;IACxC,2CAA2C;IAC3C,mCAAmC;IACnC,iCAAiC;IACjC,gCAAgC;IAChC,0BAA0B;IAC1B,0BAA0B;IAC1B,kCAAkC;IAClC,mCAAmC;IACnC,kCAAkC;IAClC,mCAAmC;IACnC,kCAAkC;IAClC,mCAAmC;IACnC,iCAAiC;IACjC,gCAAgC;IAChC,wCAAwC;IACxC,6CAA6C;IAC7C,0CAA0C;IAC1C,uCAAuC;IACvC,uDAAuD;IACvD,4CAA4C;IAC5C,6CAA6C;IAC7C,uDAAuD;IACvD,qDAAqD;IACrD,6DAA6D;IAC7D,8CAA8C;IAC9C,qCAAqC;IACrC,8CAA8C;IAC9C,uDAAuD;IACvD,iDAAiD;IACjD,0DAA0D;IAC1D,6CAA6C;IAC7C,iDAAiD;IACjD,iDAAiD;IACjD,+CAA+C;IAC/C,4CAA4C;IAC5C,gDAAgD;IAChD,6CAA6C;IAC7C,4CAA4C;IAC5C,6CAA6C;IAC7C,8CAA8C;IAC9C,gDAAgD;IAChD,6CAA6C;IAC7C,2CAA2C;IAC3C,8CAA8C;IAC9C,4CAA4C;IAC5C,+CAA+C;IAC/C,6CAA6C;IAC7C,wDAAwD;IACxD,gDAAgD;IAChD,iDAAiD;IACjD,kDAAkD;IAClD,oDAAoD;IACpD,iDAAiD;IACjD,oCAAoC;IACpC,oCAAoC;IACpC,kCAAkC;IAClC,qCAAqC;IACrC,wCAAwC;IACxC,yCAAyC;IACzC,0CAA0C;IAC1C,+CAA+C;IAC/C,mDAAmD;IACnD,+CAA+C;IAC/C,mDAAmD;IACnD,qCAAqC;IACrC,+BAA+B;IAC/B,+BAA+B;IAC/B,qCAAqC;IACrC,2CAA2C;IAC3C,qCAAqC;IACrC,sCAAsC;IACtC,kCAAkC;IAClC,oCAAoC;IACpC,qCAAqC;IACrC,yCAAyC;IACzC,6CAA6C;IAC7C,+CAA+C;IAC/C,6CAA6C;IAC7C,4CAA4C;IAC5C,8CAA8C;IAC9C,8CAA8C;IAC9C,6CAA6C;IAC7C,6CAA6C;IAC7C,8CAA8C;IAC9C,8CAA8C;IAC9C,uCAAuC;IACvC,0BAA0B;IAC1B,oCAAoC;IACpC,uBAAuB;IACvB,uBAAuB;IACvB,mCAAmC;IACnC,yBAAyB;IACzB,6BAA6B;IAC7B,6BAA6B;IAC7B,mCAAmC;IACnC,2CAA2C;IAC3C,6BAA6B;IAC7B,gCAAgC;IAChC,2BAA2B;IAC3B,kCAAkC;IAClC,+BAA+B;IAC/B,6BAA6B;IAC7B,6BAA6B;IAC7B,gCAAgC;IAChC,4CAA4C;IAC5C,oCAAoC;IACpC,uCAAuC;IACvC,uCAAuC;IACvC,8BAA8B;IAC9B,sCAAsC;IACtC,yCAAyC;IACzC,2DAA2D;IAC3D,+DAA+D;IAC/D,qDAAqD;IACrD,iEAAiE;IACjE,6DAA6D;IAC7D,0BAA0B;IAC1B,8BAA8B;IAC9B,mCAAmC;IACnC,uCAAuC;IACvC,sCAAsC;IACtC,yCAAyC;IACzC,wCAAwC;IACxC,iCAAiC;IACjC,2BAA2B;IAC3B,+BAA+B;IAC/B,mCAAmC;IACnC,6CAA6C;IAC7C,oCAAoC;IACpC,6CAA6C;IAC7C,yBAAyB;IACzB,yBAAyB;IACzB,oDAAoD;IACpD,oDAAoD;IACpD,8DAA8D;IAC9D,2CAA2C;IAC3C,yCAAyC;IACzC,yCAAyC;IACzC,wCAAwC;IACxC,wDAAwD;IACxD,0DAA0D;IAC1D,kDAAkD;IAClD,yCAAyC;IACzC,kDAAkD;IAClD,8CAA8C;IAC9C,kDAAkD;IAClD,oDAAoD;IACpD,wDAAwD;IACxD,0DAA0D;IAC1D,4DAA4D;IAC5D,yDAAyD;IACzD,wDAAwD;IACxD,0DAA0D;IAC1D,iDAAiD;IACjD,gDAAgD;IAChD,qDAAqD;IACrD,qDAAqD;IACrD,oDAAoD;IACpD,gDAAgD;IAChD,oDAAoD;IACpD,oDAAoD;IACpD,oDAAoD;IACpD,oDAAoD;IACpD,iDAAiD;IACjD,gDAAgD;IAChD,2DAA2D;IAC3D,mDAAmD;IACnD,gDAAgD;IAChD,+CAA+C;IAC/C,kDAAkD;IAClD,oDAAoD;IACpD,qDAAqD;IACrD,wDAAwD;IACxD,iDAAiD;IACjD,qDAAqD;IACrD,oDAAoD;IACpD,0DAA0D;IAC1D,yDAAyD;IACzD,wDAAwD;IACxD,sDAAsD;IACtD,qDAAqD;IACrD,qDAAqD;IACrD,sDAAsD;IACtD,+DAA+D;IAC/D,2DAA2D;IAC3D,mEAAmE;IACnE,mEAAmE;IACnE,wDAAwD;IACxD,+DAA+D;IAC/D,+DAA+D;IAC/D,qEAAqE;IACrE,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,oBAAoB;IACpB,qBAAqB;IACrB,wBAAwB;IACxB,qBAAqB;IACrB,oBAAoB;IACpB,qBAAqB;CACxB,CAAC"}
1
+ {"version":3,"file":"de-DE.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/de-DE.localization-bundle.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,8 @@ export const de_DE = {
31
31
  "gd.gen-ai.visualization.unavailable": "Visualisierung konnte nicht angezeigt werden.",
32
32
  "gd.gen-ai.permission-error": "Fehlende Berechtigungen",
33
33
  "gd.gen-ai.permission-error.description": "Sie haben keinen Zugriff auf den Chatbot. Wenden Sie sich an Ihren Administrator, um den Zugriff anzufordern.",
34
+ "gd.gen-ai.conversationContents.clarifyingAnswers.missing-error": "<b>Keine klärenden Fragen gefunden.</b> Versuchen Sie, erneut zu fragen.",
35
+ "gd.gen-ai.conversationContents.clarifyingAnswers.skipped": "[Übersprungen]",
34
36
  "gd.gen-ai.input-placeholder": "Fragen Sie hier…",
35
37
  "gd.gen-ai.input-label": "Stellen Sie Ihre Frage. Geben Sie @ ein, um Vorschläge anzuzeigen.",
36
38
  "gd.gen-ai.context.add_context": "Kontext hinzufügen",
@@ -206,6 +208,7 @@ export const de_DE = {
206
208
  "gd.gen-ai.visualisation.menu.button.open_in_analyze": "In Analyse öffnen",
207
209
  "gd.gen-ai.visualisation.menu.button.open_in_analyze.description": "Dadurch werden Sie aufgefordert, die Visualisierung zu speichern, bevor Sie sie öffnen können.",
208
210
  "gd.gen-ai.visualisation.menu.button.copy_visualisation_link": "Visualisierungslink kopieren",
211
+ "gd.gen-ai.messages.skills": "Skills werden verwendet",
209
212
  "gd.gen-ai.messages.label": "Chat-Nachrichten",
210
213
  "gd.gen-ai.message.label.user": "Benutzer:",
211
214
  "gd.gen-ai.message.label.assistant": "Bot:",
@@ -29,6 +29,8 @@ export declare const en_AU: {
29
29
  "gd.gen-ai.visualization.unavailable": string;
30
30
  "gd.gen-ai.permission-error": string;
31
31
  "gd.gen-ai.permission-error.description": string;
32
+ "gd.gen-ai.conversationContents.clarifyingAnswers.missing-error": string;
33
+ "gd.gen-ai.conversationContents.clarifyingAnswers.skipped": string;
32
34
  "gd.gen-ai.input-placeholder": string;
33
35
  "gd.gen-ai.input-label": string;
34
36
  "gd.gen-ai.context.add_context": string;
@@ -204,6 +206,7 @@ export declare const en_AU: {
204
206
  "gd.gen-ai.visualisation.menu.button.open_in_analyze": string;
205
207
  "gd.gen-ai.visualisation.menu.button.open_in_analyze.description": string;
206
208
  "gd.gen-ai.visualisation.menu.button.copy_visualisation_link": string;
209
+ "gd.gen-ai.messages.skills": string;
207
210
  "gd.gen-ai.messages.label": string;
208
211
  "gd.gen-ai.message.label.user": string;
209
212
  "gd.gen-ai.message.label.assistant": string;
@@ -1 +1 @@
1
- {"version":3,"file":"en-AU.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-AU.localization-bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"en-AU.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-AU.localization-bundle.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,8 @@ export const en_AU = {
31
31
  "gd.gen-ai.visualization.unavailable": "Visualisation could not be displayed.",
32
32
  "gd.gen-ai.permission-error": "Insufficient permissions",
33
33
  "gd.gen-ai.permission-error.description": "You don’t have access to the chatbot. Contact your administrator to request access",
34
+ "gd.gen-ai.conversationContents.clarifyingAnswers.missing-error": "<b>No clarifying questions found.</b> Try asking again.",
35
+ "gd.gen-ai.conversationContents.clarifyingAnswers.skipped": "[Skipped]",
34
36
  "gd.gen-ai.input-placeholder": "Ask here…",
35
37
  "gd.gen-ai.input-label": "Ask your question. Type @ for suggestions.",
36
38
  "gd.gen-ai.context.add_context": "Add context",
@@ -206,6 +208,7 @@ export const en_AU = {
206
208
  "gd.gen-ai.visualisation.menu.button.open_in_analyze": "Open in Analyse",
207
209
  "gd.gen-ai.visualisation.menu.button.open_in_analyze.description": "This will prompt you to save the visualisation before you can open it.",
208
210
  "gd.gen-ai.visualisation.menu.button.copy_visualisation_link": "Copy visualisation link",
211
+ "gd.gen-ai.messages.skills": "Using skills",
209
212
  "gd.gen-ai.messages.label": "Chat messages",
210
213
  "gd.gen-ai.message.label.user": "User",
211
214
  "gd.gen-ai.message.label.assistant": "Bot",
@@ -29,6 +29,8 @@ export declare const en_GB: {
29
29
  "gd.gen-ai.visualization.unavailable": string;
30
30
  "gd.gen-ai.permission-error": string;
31
31
  "gd.gen-ai.permission-error.description": string;
32
+ "gd.gen-ai.conversationContents.clarifyingAnswers.missing-error": string;
33
+ "gd.gen-ai.conversationContents.clarifyingAnswers.skipped": string;
32
34
  "gd.gen-ai.input-placeholder": string;
33
35
  "gd.gen-ai.input-label": string;
34
36
  "gd.gen-ai.context.add_context": string;
@@ -204,6 +206,7 @@ export declare const en_GB: {
204
206
  "gd.gen-ai.visualisation.menu.button.open_in_analyze": string;
205
207
  "gd.gen-ai.visualisation.menu.button.open_in_analyze.description": string;
206
208
  "gd.gen-ai.visualisation.menu.button.copy_visualisation_link": string;
209
+ "gd.gen-ai.messages.skills": string;
207
210
  "gd.gen-ai.messages.label": string;
208
211
  "gd.gen-ai.message.label.user": string;
209
212
  "gd.gen-ai.message.label.assistant": string;