@gooddata/sdk-ui-gen-ai 11.43.0-alpha.1 → 11.43.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 (26) hide show
  1. package/NOTICE +3 -3
  2. package/esm/components/messages/AgentChangeItem.js +1 -1
  3. package/esm/components/messages/ConversationItemContents.d.ts.map +1 -1
  4. package/esm/components/messages/ConversationItemContents.js +4 -1
  5. package/esm/components/messages/conversationContents/ConversationVisualisation.d.ts +1 -1
  6. package/esm/components/messages/conversationContents/ConversationVisualisation.d.ts.map +1 -1
  7. package/esm/components/messages/conversationContents/ConversationVisualisation.js +4 -30
  8. package/esm/components/messages/conversationContents/ConversationVisualizationContent.d.ts +11 -2
  9. package/esm/components/messages/conversationContents/ConversationVisualizationContent.d.ts.map +1 -1
  10. package/esm/components/messages/conversationContents/SaveVisualizationDialog.d.ts +11 -2
  11. package/esm/components/messages/conversationContents/SaveVisualizationDialog.d.ts.map +1 -1
  12. package/esm/components/messages/conversationContents/useExecution.d.ts +1 -1
  13. package/esm/components/messages/conversationContents/useExecution.d.ts.map +1 -1
  14. package/esm/components/messages/conversationContents/utils/changeAnalysisDrills.d.ts +4 -0
  15. package/esm/components/messages/conversationContents/utils/changeAnalysisDrills.d.ts.map +1 -0
  16. package/esm/components/messages/conversationContents/utils/changeAnalysisDrills.js +32 -0
  17. package/esm/localization/bundles/en-US.localization-bundle.d.ts +4 -0
  18. package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  19. package/esm/localization/bundles/en-US.localization-bundle.js +4 -0
  20. package/esm/store/messages/messagesSlice.js +2 -2
  21. package/esm/store/sideEffects/onVisualizationSave.d.ts.map +1 -1
  22. package/esm/store/sideEffects/onVisualizationSave.js +6 -5
  23. package/esm/types.d.ts +1 -1
  24. package/esm/types.d.ts.map +1 -1
  25. package/esm/whatIf/whatIfMapping.js +1 -1
  26. package/package.json +20 -20
package/NOTICE CHANGED
@@ -7,9 +7,9 @@
7
7
 
8
8
  The following 3rd-party software packages may be used by or distributed with gooddata-ui-sdk. Any information relevant to third-party vendors listed below are collected using common, reasonable means.
9
9
 
10
- Date generated: 2026-6-18
10
+ Date generated: 2026-6-19
11
11
 
12
- Revision ID: 9a7112d1a258858d38a40b99546f85cdc462e845
12
+ Revision ID: 3fa6914b6550194ce069d8f1ab41a8a22d3bf58a
13
13
 
14
14
  ================================================================================
15
15
  ================================================================================
@@ -38519,4 +38519,4 @@ POSSIBILITY OF SUCH DAMAGE.
38519
38519
  --------------------------------------------------------------------------------
38520
38520
  --------------------------------------------------------------------------------
38521
38521
 
38522
- Report Generated by FOSSA on 2026-6-18
38522
+ Report Generated by FOSSA on 2026-6-19
@@ -11,6 +11,6 @@ export function AgentChangeItem({ message }) {
11
11
  return null;
12
12
  }
13
13
  return (_jsxs("div", { className: "gd-gen-ai-chat__messages__agent-change", children: [
14
- _jsx("div", { className: "gd-gen-ai-chat__messages__agent-change__line" }), _jsx("div", { className: "gd-gen-ai-chat__messages__agent-change__label", children: _jsx(FormattedMessage, { id: "gd.gen-ai.agent.switched", values: { title: agent.title } }) }), _jsx("div", { className: "gd-gen-ai-chat__messages__agent-change__line" })
14
+ _jsx("div", { className: "gd-gen-ai-chat__messages__agent-change__line" }), _jsx("div", { className: "gd-gen-ai-chat__messages__agent-change__label", "data-testid": "agent_change_label", children: _jsx(FormattedMessage, { id: "gd.gen-ai.agent.switched", values: { title: agent.title } }) }), _jsx("div", { className: "gd-gen-ai-chat__messages__agent-change__line" })
15
15
  ] }));
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationItemContents.d.ts","sourceRoot":"","sources":["../../../src/components/messages/ConversationItemContents.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGH,KAAK,0BAA0B,EAE/B,KAAK,iBAAiB,EACzB,MAAM,gBAAgB,CAAC;AAcxB,KAAK,6BAA6B,GAAG;IACjC,OAAO,EAAE,0BAA0B,CAAC;IACpC,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,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,6BAA6B,kDAwHzG"}
1
+ {"version":3,"file":"ConversationItemContents.d.ts","sourceRoot":"","sources":["../../../src/components/messages/ConversationItemContents.tsx"],"names":[],"mappings":"AAIA,OAAO,EAGH,KAAK,0BAA0B,EAE/B,KAAK,iBAAiB,EACzB,MAAM,gBAAgB,CAAC;AAcxB,KAAK,6BAA6B,GAAG;IACjC,OAAO,EAAE,0BAA0B,CAAC;IACpC,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,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,6BAA6B,kDA6HzG"}
@@ -1,4 +1,6 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2024-2026 GoodData Corporation
3
+ import { useIntl } from "react-intl";
2
4
  import { loadWhatIfScenarios } from "../../whatIf/whatIfMapping.js";
3
5
  import { ConversationAlertProposalContent } from "./conversationContents/ConversationAlertProposalContent.js";
4
6
  import { ConversationErrorContent } from "./conversationContents/ConversationErrorContent.js";
@@ -11,6 +13,7 @@ import { ConversationToolResultContent } from "./conversationContents/Conversati
11
13
  import { ConversationVisualizationContent } from "./conversationContents/ConversationVisualizationContent.js";
12
14
  import { ConversationWhatIfContent } from "./conversationContents/ConversationWhatIfContent.js";
13
15
  export function ConversationItemContents({ message, references, isLoading }) {
16
+ const intl = useIntl();
14
17
  const content = message.content;
15
18
  if (content.type === "error") {
16
19
  return (_jsx(ConversationErrorContent, { useMarkdown: true, message: content.message, traceId: content.traceId, code: content.code, reason: content.reason, isLoading: isLoading }));
@@ -31,7 +34,7 @@ export function ConversationItemContents({ message, references, isLoading }) {
31
34
  return (_jsx(ConversationAlertProposalContent, { message: message, part: part, alertProposal: part.alertProposal, objects: [...(part.objects ?? []), ...references] }, index));
32
35
  }
33
36
  if (part.type === "visualization" && !whatIf) {
34
- return (_jsx(ConversationVisualizationContent, { message: message, part: part, visualization: part.visualization }, index));
37
+ return part.visualization ? (_jsx(ConversationVisualizationContent, { message: message, part: part, visualization: part.visualization }, index)) : (_jsx("div", { className: "gd-gen-ai-chat__messages__content--error", children: intl.formatMessage({ id: "gd.gen-ai.visualization.unavailable" }) }, index));
35
38
  }
36
39
  if (part.type === "searchResults") {
37
40
  return (_jsx(ConversationSearchContent, { results: part.searchResults, relationships: part.relationships, keywords: part.keywords }, index));
@@ -5,7 +5,7 @@ import { type IDashboardKeyDriverCombinationItem } from "@gooddata/sdk-ui-dashbo
5
5
  import { type IChatConversationLocalItem } from "../../../model.js";
6
6
  export type ConversationVisualisationProps = {
7
7
  message: IChatConversationLocalItem;
8
- visualization: IChatConversationVisualisationContent["visualization"];
8
+ visualization: NonNullable<IChatConversationVisualisationContent["visualization"]>;
9
9
  colorPalette?: IColorPalette;
10
10
  execConfig?: IExecutionConfig;
11
11
  agGridToken?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationVisualisation.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationVisualisation.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAGH,KAAK,aAAa,EAElB,KAAK,gBAAgB,EASxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEH,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAKnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,KAAK,kCAAkC,EAE1C,MAAM,4BAA4B,CAAC;AAiBpC,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAuBpE,MAAM,MAAM,8BAA8B,GAAG;IACzC,OAAO,EAAE,0BAA0B,CAAC;IACpC,aAAa,EAAE,qCAAqC,CAAC,eAAe,CAAC,CAAC;IACtE,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,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,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,4BAA4B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACtC,OAAO,EACP,YAAY,EACZ,aAAa,EACb,UAAU,EACV,WAAW,EACX,OAAO,EACP,oBAAoB,EACpB,YAAY,EACZ,cAAqB,EACrB,oBAA4B,EAC5B,mBAA0B,EAC1B,4BAAoC,EACvC,EAAE,8BAA8B,2CAwQhC"}
1
+ {"version":3,"file":"ConversationVisualisation.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationVisualisation.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAEH,KAAK,aAAa,EAElB,KAAK,gBAAgB,EAOxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEH,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAInB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACH,KAAK,kCAAkC,EAE1C,MAAM,4BAA4B,CAAC;AAiBpC,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAwBpE,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,gBAAgB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,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,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,4BAA4B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACtC,OAAO,EACP,YAAY,EACZ,aAAa,EACb,UAAU,EACV,WAAW,EACX,OAAO,EACP,oBAAoB,EACpB,YAAY,EACZ,cAAqB,EACrB,oBAA4B,EAC5B,mBAA0B,EAC1B,4BAAoC,EACvC,EAAE,8BAA8B,2CAqPhC"}
@@ -3,7 +3,7 @@ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
3
3
  import { useCallback, useMemo } from "react";
4
4
  import { useIntl } from "react-intl";
5
5
  import { useDispatch } from "react-redux";
6
- import { isAttribute, isMeasure, isMeasureDescriptor, } from "@gooddata/sdk-model";
6
+ import { isAttribute, isMeasure, } from "@gooddata/sdk-model";
7
7
  import { BarChart, ColumnChart, Headline, LineChart, PieChart, ScatterPlot } from "@gooddata/sdk-ui-charts";
8
8
  import { getKdaKeyDriverCombinations, } from "@gooddata/sdk-ui-dashboard";
9
9
  import { PivotTable } from "@gooddata/sdk-ui-pivot";
@@ -15,6 +15,7 @@ import { mapVisualizationForecastToBackendConfig, mapVisualizationForecastToChar
15
15
  import { saveVisualisationRenderStatusAction, visualizationErrorAction, } from "../../../store/messages/messagesSlice.js";
16
16
  import { getHeadlineComparison } from "../../../utils.js";
17
17
  import { useExecution } from "./useExecution.js";
18
+ import { changeAnalysisDrills } from "./utils/changeAnalysisDrills.js";
18
19
  const VIS_HEIGHT = 250;
19
20
  const visualizationTooltipOptions = {
20
21
  tooltip: {
@@ -34,27 +35,8 @@ export function ConversationVisualisation({ message, colorPalette, visualization
34
35
  const { filters, sorts, buckets } = useExecution(visualization);
35
36
  const bucketsData = useBucketData(buckets);
36
37
  const drillableItems = useMemo(() => {
37
- if (visualization && enableChangeAnalysis && enableDrilling) {
38
- if (visualization.insight.visualizationUrl === "local:table") {
39
- return visualization.insight.buckets
40
- .map((bucket) => {
41
- return bucket.items.map(headerPredicate);
42
- })
43
- .flat();
44
- }
45
- return visualization.insight.buckets
46
- .map((bucket) => {
47
- return bucket.items.map((attr) => {
48
- if (isAttribute(attr)) {
49
- return attr.attribute.displayForm;
50
- }
51
- return undefined;
52
- });
53
- })
54
- .flat()
55
- .filter(Boolean);
56
- }
57
- return undefined;
38
+ const items = [...changeAnalysisDrills(visualization, enableDrilling, enableChangeAnalysis)];
39
+ return items.length ? items : undefined;
58
40
  }, [enableChangeAnalysis, visualization, enableDrilling]);
59
41
  const handleSdkError = useCallback((error) => {
60
42
  if (!visualization) {
@@ -264,14 +246,6 @@ const renderHeadline = (locale, theme, buckets, filters, colorPalette, onError,
264
246
  colorPalette,
265
247
  }, drillableItems: props.drillableItems, onDrill: onDrill, onError: onError, onExportReady: onSuccess, execConfig: props.execConfig }) }));
266
248
  };
267
- function headerPredicate(m) {
268
- return (header) => {
269
- if (isMeasureDescriptor(header) && isMeasure(m)) {
270
- return header.measureHeaderItem.localIdentifier === m.measure.localIdentifier;
271
- }
272
- return false;
273
- };
274
- }
275
249
  function useBucketData(buckets) {
276
250
  return useMemo(() => {
277
251
  const metrics = buckets.find((b) => b.localIdentifier === "measures")?.items.filter(isMeasure) ?? [];
@@ -7,7 +7,7 @@ export type ConversationVisualizationContentProps = {
7
7
  message: IChatConversationLocalItem;
8
8
  part: IChatConversationMultipartLocalPart;
9
9
  scenario?: IWhatIfRenderableScenario;
10
- visualization: IChatConversationVisualisationContent["visualization"];
10
+ visualization: NonNullable<IChatConversationVisualisationContent["visualization"]>;
11
11
  colorPalette?: IColorPalette;
12
12
  className?: string;
13
13
  agGridToken?: string;
@@ -26,7 +26,16 @@ export declare const ConversationVisualizationContent: import("react-redux").Con
26
26
  message: IChatConversationLocalItem;
27
27
  part: IChatConversationMultipartLocalPart;
28
28
  scenario?: IWhatIfRenderableScenario | undefined;
29
- visualization: import("@gooddata/sdk-model").IInsight;
29
+ visualization: import("@gooddata/sdk-model").IInsightDefinition & {
30
+ insight: import("@gooddata/sdk-model").IAuditableDates & import("@gooddata/sdk-model").IAuditableUsers & {
31
+ identifier: string;
32
+ uri: string;
33
+ ref: import("@gooddata/sdk-model").ObjRef;
34
+ isLocked?: boolean | undefined;
35
+ isHidden?: boolean | undefined;
36
+ certification?: import("@gooddata/sdk-model").IObjectCertification | undefined;
37
+ };
38
+ };
30
39
  className?: string | undefined;
31
40
  }>;
32
41
  export {};
@@ -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;AACvF,OAAO,EAAE,KAAK,aAAa,EAAgD,MAAM,qBAAqB,CAAC;AAwBvG,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAM9G,OAAO,EAEH,0BAA0B,EAC7B,MAAM,8CAA8C,CAAC;AAGtD,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAwBlF,MAAM,MAAM,qCAAqC,GAAG;IAChD,OAAO,EAAE,0BAA0B,CAAC;IACpC,IAAI,EAAE,mCAAmC,CAAC;IAC1C,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,aAAa,EAAE,qCAAqC,CAAC,eAAe,CAAC,CAAC;IACtE,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxD,oBAAoB,CAAC,EAAE,OAAO,0BAA0B,CAAC;IACzD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,4BAA4B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,iBAAS,oCAAoC,CAAC,EAC1C,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,EAC/B,EAAE,qCAAqC,2CAmGvC;AAmlBD,eAAO,MAAM,gCAAgC;;;;;;;;EAGN,CAAC"}
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;AACvF,OAAO,EAAE,KAAK,aAAa,EAAgD,MAAM,qBAAqB,CAAC;AAwBvG,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAM9G,OAAO,EAEH,0BAA0B,EAC7B,MAAM,8CAA8C,CAAC;AAGtD,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAwBlF,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,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxD,oBAAoB,CAAC,EAAE,OAAO,0BAA0B,CAAC;IACzD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,4BAA4B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,iBAAS,oCAAoC,CAAC,EAC1C,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,EAC/B,EAAE,qCAAqC,2CAmGvC;AAmlBD,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;EAGN,CAAC"}
@@ -4,7 +4,7 @@ import { saveVisualizationAction, savedVisualizationAction } from "../../../stor
4
4
  export type SaveVisualizationDialogProps = {
5
5
  message: IChatConversationLocalItem;
6
6
  part: IChatConversationMultipartLocalPart;
7
- visualization: IChatConversationVisualisationContent["visualization"];
7
+ visualization: NonNullable<IChatConversationVisualisationContent["visualization"]>;
8
8
  type: "save" | "explore";
9
9
  onClose: () => void;
10
10
  };
@@ -18,7 +18,16 @@ export declare const SaveVisualizationDialog: import("react-redux").ConnectedCom
18
18
  store?: import("redux").Store<any, import("redux").UnknownAction, unknown> | undefined;
19
19
  message: IChatConversationLocalItem;
20
20
  part: IChatConversationMultipartLocalPart;
21
- visualization: import("@gooddata/sdk-model").IInsight;
21
+ visualization: import("@gooddata/sdk-model").IInsightDefinition & {
22
+ insight: import("@gooddata/sdk-model").IAuditableDates & import("@gooddata/sdk-model").IAuditableUsers & {
23
+ identifier: string;
24
+ uri: string;
25
+ ref: import("@gooddata/sdk-model").ObjRef;
26
+ isLocked?: boolean | undefined;
27
+ isHidden?: boolean | undefined;
28
+ certification?: import("@gooddata/sdk-model").IObjectCertification | undefined;
29
+ };
30
+ };
22
31
  type: "explore" | "save";
23
32
  onClose: () => void;
24
33
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"SaveVisualizationDialog.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/SaveVisualizationDialog.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AAGvF,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAC9G,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAE7G,MAAM,MAAM,4BAA4B,GAAG;IACvC,OAAO,EAAE,0BAA0B,CAAC;IACpC,IAAI,EAAE,mCAAmC,CAAC;IAC1C,aAAa,EAAE,qCAAqC,CAAC,eAAe,CAAC,CAAC;IACtE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IAC/C,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IACxD,wBAAwB,EAAE,OAAO,wBAAwB,CAAC;CAC7D,CAAC;AAEF,iBAAS,2BAA2B,CAAC,EACjC,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,aAAa,EACb,OAAO,EACP,uBAAuB,EACvB,wBAAwB,EAC3B,EAAE,4BAA4B,GAAG,oCAAoC,2CAkDrE;AA8DD,eAAO,MAAM,uBAAuB;;;;;;;;EAAiE,CAAC"}
1
+ {"version":3,"file":"SaveVisualizationDialog.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/SaveVisualizationDialog.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AAGvF,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAC9G,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAE7G,MAAM,MAAM,4BAA4B,GAAG;IACvC,OAAO,EAAE,0BAA0B,CAAC;IACpC,IAAI,EAAE,mCAAmC,CAAC;IAC1C,aAAa,EAAE,WAAW,CAAC,qCAAqC,CAAC,eAAe,CAAC,CAAC,CAAC;IACnF,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IAC/C,uBAAuB,EAAE,OAAO,uBAAuB,CAAC;IACxD,wBAAwB,EAAE,OAAO,wBAAwB,CAAC;CAC7D,CAAC;AAEF,iBAAS,2BAA2B,CAAC,EACjC,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,aAAa,EACb,OAAO,EACP,uBAAuB,EACvB,wBAAwB,EAC3B,EAAE,4BAA4B,GAAG,oCAAoC,2CAkDrE;AA8DD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;EAAiE,CAAC"}
@@ -4,5 +4,5 @@ export interface IExecution {
4
4
  filters: IFilter[];
5
5
  sorts: ISortItem[];
6
6
  }
7
- export declare const useExecution: (visualisation?: import("@gooddata/sdk-model").IInsight | undefined) => IExecution;
7
+ export declare const useExecution: (visualisation?: import("@gooddata/sdk-model").IInsight | null | undefined) => IExecution;
8
8
  //# sourceMappingURL=useExecution.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useExecution.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/useExecution.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,oFAiBxB,CAAC"}
1
+ {"version":3,"file":"useExecution.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/useExecution.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,2FAiBxB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type IChatConversationVisualisationContent } from "@gooddata/sdk-backend-spi";
2
+ import { type IHeaderPredicate } from "@gooddata/sdk-ui";
3
+ export declare function changeAnalysisDrills(visualization: IChatConversationVisualisationContent["visualization"] | undefined, enableDrilling: boolean, enableChangeAnalysis: boolean): IHeaderPredicate[];
4
+ //# sourceMappingURL=changeAnalysisDrills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changeAnalysisDrills.d.ts","sourceRoot":"","sources":["../../../../../src/components/messages/conversationContents/utils/changeAnalysisDrills.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AAEvF,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,wBAAgB,oBAAoB,CAChC,aAAa,EAAE,qCAAqC,CAAC,eAAe,CAAC,GAAG,SAAS,EACjF,cAAc,EAAE,OAAO,EACvB,oBAAoB,EAAE,OAAO,sBAuBhC"}
@@ -0,0 +1,32 @@
1
+ // (C) 2026 GoodData Corporation
2
+ import { isMeasure, isMeasureDescriptor } from "@gooddata/sdk-model";
3
+ export function changeAnalysisDrills(visualization, enableDrilling, enableChangeAnalysis) {
4
+ if (visualization?.insight && enableChangeAnalysis && enableDrilling) {
5
+ const disableKeyDriveAnalysisOn = (visualization.insight.properties?.["controls"]
6
+ ?.disableKeyDriveAnalysisOn ?? {});
7
+ return visualization.insight.buckets
8
+ .flatMap((bucket) => {
9
+ return bucket.items.map((item) => {
10
+ if (isMeasure(item)) {
11
+ //NOTE: If KDA is disabled for this measure
12
+ // do not return a drill predicate to disable drilling
13
+ if (disableKeyDriveAnalysisOn[item.measure.localIdentifier]) {
14
+ return undefined;
15
+ }
16
+ return headerPredicate(item);
17
+ }
18
+ return undefined;
19
+ });
20
+ })
21
+ .filter((p) => !!p);
22
+ }
23
+ return [];
24
+ }
25
+ function headerPredicate(m) {
26
+ return (header) => {
27
+ if (isMeasureDescriptor(header) && isMeasure(m)) {
28
+ return header.measureHeaderItem.localIdentifier === m.measure.localIdentifier;
29
+ }
30
+ return false;
31
+ };
32
+ }
@@ -95,6 +95,10 @@ export declare const en_US: {
95
95
  text: string;
96
96
  crowdinContext: string;
97
97
  };
98
+ "gd.gen-ai.visualization.unavailable": {
99
+ text: string;
100
+ crowdinContext: string;
101
+ };
98
102
  "gd.gen-ai.permission-error": {
99
103
  text: string;
100
104
  crowdinContext: string;
@@ -1 +1 @@
1
- {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAisBjB,CAAC"}
1
+ {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqsBjB,CAAC"}
@@ -97,6 +97,10 @@ export const en_US = {
97
97
  "text": "<b>Data too large.</b> Ask for reduce a data by applying filters.",
98
98
  "crowdinContext": "Error message when data is too large"
99
99
  },
100
+ "gd.gen-ai.visualization.unavailable": {
101
+ "text": "Visualization could not be displayed.",
102
+ "crowdinContext": "Message shown in place of a chart when the requested visualization is not available to display"
103
+ },
100
104
  "gd.gen-ai.permission-error": {
101
105
  "text": "Insufficient permissions",
102
106
  "crowdinContext": "Error message when user does not have sufficient permissions to access the chatbot"
@@ -629,7 +629,7 @@ const messagesSlice = createSlice({
629
629
  const visualization = assistantMessage.content.parts
630
630
  .filter((filter) => filter.type === "visualization")
631
631
  .find((content) => content.visualization?.insight.identifier === payload.visualizationId);
632
- if (visualization) {
632
+ if (visualization?.visualization) {
633
633
  visualization.visualization.insight.title = payload.visualizationTitle;
634
634
  visualization.saving = {
635
635
  started: true,
@@ -698,7 +698,7 @@ const messagesSlice = createSlice({
698
698
  const visualization = assistantMessage.content.parts
699
699
  .filter((filter) => filter.type === "visualization")
700
700
  .find((content) => content.visualization?.insight.identifier === payload.visualizationId);
701
- if (visualization) {
701
+ if (visualization?.visualization) {
702
702
  visualization.saving = {
703
703
  started: true,
704
704
  completed: true,
@@ -1 +1 @@
1
- {"version":3,"file":"onVisualizationSave.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/onVisualizationSave.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAGH,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAG1B,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAEH,KAAK,0BAA0B,EAE/B,KAAK,OAAO,EAEf,MAAM,gBAAgB,CAAC;AASxB,wBAAiB,mBAAmB,CAAC,EACjC,OAAO,EACV,EAAE,aAAa,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA6GD;AAoGD,eAAO,MAAM,cAAc,+FA0C1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,+FAoC5B,CAAC"}
1
+ {"version":3,"file":"onVisualizationSave.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/onVisualizationSave.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAGH,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAG1B,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAEH,KAAK,0BAA0B,EAE/B,KAAK,OAAO,EAEf,MAAM,gBAAgB,CAAC;AASxB,wBAAiB,mBAAmB,CAAC,EACjC,OAAO,EACV,EAAE,aAAa,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA8GD;AAoGD,eAAO,MAAM,cAAc,+FA0C1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,+FAoC5B,CAAC"}
@@ -24,14 +24,15 @@ export function* onVisualizationSave({ payload, }) {
24
24
  }
25
25
  const visualizationContent = assistantMessage.content.parts
26
26
  .filter((filter) => filter.type === "visualization")
27
- .find((content) => content.visualization.insight.identifier === payload.visualizationId);
28
- if (!visualizationContent) {
27
+ .find((content) => content.visualization?.insight.identifier === payload.visualizationId);
28
+ if (!visualizationContent?.visualization) {
29
29
  return;
30
30
  }
31
+ const sourceVisualization = visualizationContent.visualization;
31
32
  const savedVisualization = yield call(backend.workspace(workspace).insights().createInsight, {
32
- ...visualizationContent.visualization,
33
+ ...sourceVisualization,
33
34
  insight: {
34
- ...visualizationContent.visualization.insight,
35
+ ...sourceVisualization.insight,
35
36
  title: payload.visualizationTitle,
36
37
  },
37
38
  });
@@ -40,7 +41,7 @@ export function* onVisualizationSave({ payload, }) {
40
41
  .genAI()
41
42
  .getChatConversations()
42
43
  .getConversationThread(conversation.id);
43
- yield call(resave.resaveVisualisation.bind(resave), visualizationContent.visualization.insight.identifier, savedVisualization.insight.identifier);
44
+ yield call(resave.resaveVisualisation.bind(resave), sourceVisualization.insight.identifier, savedVisualization.insight.identifier);
44
45
  yield put(saveVisualizationSuccessAction({
45
46
  visualizationId: payload.visualizationId,
46
47
  assistantMessageId: payload.assistantMessageId,
package/esm/types.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { type IChatConversationVisualisationContent } from "@gooddata/sdk-backend-spi";
2
2
  import { type IGenAIVisualization } from "@gooddata/sdk-model";
3
3
  import { type IChatConversationLocalItem } from "./model.js";
4
- export type Config = IGenAIVisualization["config"] | IChatConversationVisualisationContent["visualization"]["insight"]["properties"]["controls"];
4
+ export type Config = IGenAIVisualization["config"] | NonNullable<IChatConversationVisualisationContent["visualization"]>["insight"]["properties"]["controls"];
5
5
  export type StoredConversation = {
6
6
  /**
7
7
  * A record containing chat conversation items indexed by string keys.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,MAAM,MAAM,GACZ,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,qCAAqC,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,CAAC;AAElG,MAAM,MAAM,kBAAkB,GAAG;IAC7B;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAClD;;;OAGG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IACnE;;;OAGG;IACH,kBAAkB,CAAC,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;KACvC,CAAC;CACL,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,MAAM,MAAM,GACZ,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,WAAW,CACP,qCAAqC,CAAC,eAAe,CAAC,CACzD,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,CAAC;AAE7C,MAAM,MAAM,kBAAkB,GAAG;IAC7B;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAClD;;;OAGG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IACnE;;;OAGG;IACH,kBAAkB,CAAC,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;KACvC,CAAC;CACL,CAAC"}
@@ -57,7 +57,7 @@ export function loadWhatIfScenarios(content) {
57
57
  }
58
58
  // Search for visualizations
59
59
  const visualisation = content.parts?.find((p) => p.type === "visualization");
60
- if (!visualisation) {
60
+ if (!visualisation?.visualization) {
61
61
  return undefined;
62
62
  }
63
63
  const scenarios = [];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-gen-ai",
3
- "version": "11.43.0-alpha.1",
3
+ "version": "11.43.0-alpha.2",
4
4
  "description": "GoodData GenAI SDK",
5
5
  "license": "MIT",
6
6
  "author": "GoodData Corporation",
@@ -56,18 +56,18 @@
56
56
  "reselect": "5.1.1",
57
57
  "tslib": "2.8.1",
58
58
  "uuid": "11.1.1",
59
- "@gooddata/sdk-backend-spi": "11.43.0-alpha.1",
60
- "@gooddata/api-client-tiger": "11.43.0-alpha.1",
61
- "@gooddata/sdk-model": "11.43.0-alpha.1",
62
- "@gooddata/sdk-ui": "11.43.0-alpha.1",
63
- "@gooddata/sdk-ui-charts": "11.43.0-alpha.1",
64
- "@gooddata/sdk-ui-dashboard": "11.43.0-alpha.1",
65
- "@gooddata/sdk-ui-filters": "11.43.0-alpha.1",
66
- "@gooddata/sdk-ui-semantic-search": "11.43.0-alpha.1",
67
- "@gooddata/sdk-ui-kit": "11.43.0-alpha.1",
68
- "@gooddata/sdk-ui-theme-provider": "11.43.0-alpha.1",
69
- "@gooddata/util": "11.43.0-alpha.1",
70
- "@gooddata/sdk-ui-pivot": "11.43.0-alpha.1"
59
+ "@gooddata/api-client-tiger": "11.43.0-alpha.2",
60
+ "@gooddata/sdk-ui": "11.43.0-alpha.2",
61
+ "@gooddata/sdk-backend-spi": "11.43.0-alpha.2",
62
+ "@gooddata/sdk-ui-charts": "11.43.0-alpha.2",
63
+ "@gooddata/sdk-model": "11.43.0-alpha.2",
64
+ "@gooddata/sdk-ui-dashboard": "11.43.0-alpha.2",
65
+ "@gooddata/sdk-ui-filters": "11.43.0-alpha.2",
66
+ "@gooddata/sdk-ui-kit": "11.43.0-alpha.2",
67
+ "@gooddata/sdk-ui-semantic-search": "11.43.0-alpha.2",
68
+ "@gooddata/sdk-ui-theme-provider": "11.43.0-alpha.2",
69
+ "@gooddata/sdk-ui-pivot": "11.43.0-alpha.2",
70
+ "@gooddata/util": "11.43.0-alpha.2"
71
71
  },
72
72
  "devDependencies": {
73
73
  "@microsoft/api-documenter": "^7.17.0",
@@ -110,13 +110,13 @@
110
110
  "typescript": "5.9.3",
111
111
  "vitest": "4.1.8",
112
112
  "vitest-dom": "0.1.1",
113
- "@gooddata/i18n-toolkit": "11.43.0-alpha.1",
114
- "@gooddata/reference-workspace": "11.43.0-alpha.1",
115
- "@gooddata/sdk-ui-theme-provider": "11.43.0-alpha.1",
116
- "@gooddata/sdk-backend-mockingbird": "11.43.0-alpha.1",
117
- "@gooddata/eslint-config": "11.43.0-alpha.1",
118
- "@gooddata/stylelint-config": "11.43.0-alpha.1",
119
- "@gooddata/oxlint-config": "11.43.0-alpha.1"
113
+ "@gooddata/eslint-config": "11.43.0-alpha.2",
114
+ "@gooddata/i18n-toolkit": "11.43.0-alpha.2",
115
+ "@gooddata/reference-workspace": "11.43.0-alpha.2",
116
+ "@gooddata/oxlint-config": "11.43.0-alpha.2",
117
+ "@gooddata/sdk-ui-theme-provider": "11.43.0-alpha.2",
118
+ "@gooddata/stylelint-config": "11.43.0-alpha.2",
119
+ "@gooddata/sdk-backend-mockingbird": "11.43.0-alpha.2"
120
120
  },
121
121
  "peerDependencies": {
122
122
  "react": "^18.0.0 || ^19.0.0",