@gooddata/sdk-ui-gen-ai 11.58.0-alpha.2 → 11.58.0-alpha.4

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 (110) hide show
  1. package/NOTICE +8 -8
  2. package/esm/components/ConfigContext.d.ts +1 -1
  3. package/esm/components/ConfigContext.d.ts.map +1 -1
  4. package/esm/components/CustomizationContext.d.ts +2 -1
  5. package/esm/components/CustomizationContext.d.ts.map +1 -1
  6. package/esm/components/CustomizationProvider.d.ts.map +1 -1
  7. package/esm/components/CustomizationProvider.js +10 -0
  8. package/esm/components/GenAIChatDialogConnected.d.ts +4 -1
  9. package/esm/components/GenAIChatDialogConnected.d.ts.map +1 -1
  10. package/esm/components/GenAIChatDialogConnected.js +4 -1
  11. package/esm/components/GenAIChatOverlay.js +1 -1
  12. package/esm/components/customized/ConversationVisualizationContent.d.ts +8 -0
  13. package/esm/components/customized/ConversationVisualizationContent.d.ts.map +1 -0
  14. package/esm/components/customized/ConversationVisualizationContent.js +11 -0
  15. package/esm/components/customized/types.d.ts +50 -1
  16. package/esm/components/customized/types.d.ts.map +1 -1
  17. package/esm/components/messages/contents/CustomHyperlink.d.ts.map +1 -1
  18. package/esm/components/messages/contents/CustomHyperlink.js +3 -0
  19. package/esm/components/messages/conversationContents/ConversationMultipartContent.d.ts.map +1 -1
  20. package/esm/components/messages/conversationContents/ConversationMultipartContent.js +3 -2
  21. package/esm/components/messages/conversationContents/ConversationVisualizationContent.d.ts +10 -1
  22. package/esm/components/messages/conversationContents/ConversationVisualizationContent.d.ts.map +1 -1
  23. package/esm/components/messages/conversationContents/ConversationVisualizationContent.js +77 -67
  24. package/esm/components/messages/conversationContents/ConversationWhatIfContent.d.ts.map +1 -1
  25. package/esm/components/messages/conversationContents/ConversationWhatIfContent.js +3 -2
  26. package/esm/context/dashboard.d.ts.map +1 -1
  27. package/esm/context/dashboard.js +17 -13
  28. package/esm/context/hooks/useDashboardAmbientContext.d.ts.map +1 -1
  29. package/esm/context/hooks/useDashboardAmbientContext.js +5 -2
  30. package/esm/index.d.ts +3 -1
  31. package/esm/index.d.ts.map +1 -1
  32. package/esm/index.js +1 -0
  33. package/esm/localization/bundles/de-DE.localization-bundle.d.ts +1 -3
  34. package/esm/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  35. package/esm/localization/bundles/de-DE.localization-bundle.js +1 -3
  36. package/esm/localization/bundles/en-AU.localization-bundle.d.ts +1 -3
  37. package/esm/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  38. package/esm/localization/bundles/en-AU.localization-bundle.js +1 -3
  39. package/esm/localization/bundles/en-GB.localization-bundle.d.ts +1 -3
  40. package/esm/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  41. package/esm/localization/bundles/en-GB.localization-bundle.js +1 -3
  42. package/esm/localization/bundles/es-419.localization-bundle.d.ts +1 -3
  43. package/esm/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  44. package/esm/localization/bundles/es-419.localization-bundle.js +1 -3
  45. package/esm/localization/bundles/es-ES.localization-bundle.d.ts +1 -3
  46. package/esm/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  47. package/esm/localization/bundles/es-ES.localization-bundle.js +1 -3
  48. package/esm/localization/bundles/fi-FI.localization-bundle.d.ts +1 -3
  49. package/esm/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  50. package/esm/localization/bundles/fi-FI.localization-bundle.js +1 -3
  51. package/esm/localization/bundles/fr-CA.localization-bundle.d.ts +1 -3
  52. package/esm/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  53. package/esm/localization/bundles/fr-CA.localization-bundle.js +1 -3
  54. package/esm/localization/bundles/fr-FR.localization-bundle.d.ts +1 -3
  55. package/esm/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  56. package/esm/localization/bundles/fr-FR.localization-bundle.js +1 -3
  57. package/esm/localization/bundles/id-ID.localization-bundle.d.ts +1 -3
  58. package/esm/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  59. package/esm/localization/bundles/id-ID.localization-bundle.js +1 -3
  60. package/esm/localization/bundles/it-IT.localization-bundle.d.ts +1 -3
  61. package/esm/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  62. package/esm/localization/bundles/it-IT.localization-bundle.js +1 -3
  63. package/esm/localization/bundles/ja-JP.localization-bundle.d.ts +1 -3
  64. package/esm/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  65. package/esm/localization/bundles/ja-JP.localization-bundle.js +1 -3
  66. package/esm/localization/bundles/ko-KR.localization-bundle.d.ts +1 -3
  67. package/esm/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  68. package/esm/localization/bundles/ko-KR.localization-bundle.js +1 -3
  69. package/esm/localization/bundles/nl-NL.localization-bundle.d.ts +1 -3
  70. package/esm/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  71. package/esm/localization/bundles/nl-NL.localization-bundle.js +1 -3
  72. package/esm/localization/bundles/pl-PL.localization-bundle.d.ts +1 -3
  73. package/esm/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  74. package/esm/localization/bundles/pl-PL.localization-bundle.js +1 -3
  75. package/esm/localization/bundles/pt-BR.localization-bundle.d.ts +1 -3
  76. package/esm/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  77. package/esm/localization/bundles/pt-BR.localization-bundle.js +1 -3
  78. package/esm/localization/bundles/pt-PT.localization-bundle.d.ts +1 -3
  79. package/esm/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  80. package/esm/localization/bundles/pt-PT.localization-bundle.js +1 -3
  81. package/esm/localization/bundles/ru-RU.localization-bundle.d.ts +1 -3
  82. package/esm/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  83. package/esm/localization/bundles/ru-RU.localization-bundle.js +1 -3
  84. package/esm/localization/bundles/sl-SI.localization-bundle.d.ts +1 -3
  85. package/esm/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  86. package/esm/localization/bundles/sl-SI.localization-bundle.js +1 -3
  87. package/esm/localization/bundles/th-TH.localization-bundle.d.ts +1 -3
  88. package/esm/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  89. package/esm/localization/bundles/th-TH.localization-bundle.js +1 -3
  90. package/esm/localization/bundles/tr-TR.localization-bundle.d.ts +1 -3
  91. package/esm/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  92. package/esm/localization/bundles/tr-TR.localization-bundle.js +1 -3
  93. package/esm/localization/bundles/uk-UA.localization-bundle.d.ts +1 -3
  94. package/esm/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  95. package/esm/localization/bundles/uk-UA.localization-bundle.js +1 -3
  96. package/esm/localization/bundles/vi-VN.localization-bundle.d.ts +1 -3
  97. package/esm/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  98. package/esm/localization/bundles/vi-VN.localization-bundle.js +1 -3
  99. package/esm/localization/bundles/zh-HK.localization-bundle.d.ts +1 -3
  100. package/esm/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  101. package/esm/localization/bundles/zh-HK.localization-bundle.js +1 -3
  102. package/esm/localization/bundles/zh-Hans.localization-bundle.d.ts +1 -3
  103. package/esm/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  104. package/esm/localization/bundles/zh-Hans.localization-bundle.js +1 -3
  105. package/esm/localization/bundles/zh-Hant.localization-bundle.d.ts +1 -3
  106. package/esm/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  107. package/esm/localization/bundles/zh-Hant.localization-bundle.js +1 -3
  108. package/esm/sdk-ui-gen-ai.d.ts +77 -1
  109. package/esm/whatIf/whatIfMapping.d.ts +1 -1
  110. 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-9-18
10
+ Date generated: 2026-9-21
11
11
 
12
- Revision ID: bfb2e581b6e1acf58a2f5502e648b8864dae2b2f
12
+ Revision ID: d287888cbc82806bcb9866c66ecff9b2ff92c32b
13
13
 
14
14
  ================================================================================
15
15
  ================================================================================
@@ -13663,7 +13663,7 @@ MIT
13663
13663
 
13664
13664
  Authors: 1075746765@qq.com, afc163@gmail.com, scdzwyxst@gmail.com, smith3816@gmail.com, wasd2144@hotmail.com
13665
13665
  Package Manager: NPM
13666
- Project URL: https://www.npmjs.com/package/@rc-component/resize-observer
13666
+ Project URL: https://react-component.github.io/resize-observer
13667
13667
  Package Download URL: https://registry.npmjs.org/@rc-component/resize-observer/-/resize-observer-1.1.2.tgz
13668
13668
  Dependency Path: @rc-component/picker > @rc-component/overflow > @rc-component/resize-observer > @rc-component/picker > @rc-component/resize-observer > @rc-component/picker > @rc-component/trigger > @rc-component/resize-observer
13669
13669
  File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
@@ -21127,7 +21127,7 @@ MIT
21127
21127
 
21128
21128
  Authors: ljharb@gmail.com
21129
21129
  Package Manager: NPM
21130
- Project URL: https://www.npmjs.com/package/call-bind-apply-helpers
21130
+ Project URL: https://github.com/ljharb/call-bind-apply-helpers#readme
21131
21131
  Package Download URL: https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz
21132
21132
  Dependency Path: @formatjs/cli-lib > @formatjs/ts-transformer > json-stable-stringify > call-bind > set-function-length > get-intrinsic > call-bind-apply-helpers > @formatjs/cli-lib > @types/json-stable-stringify > json-stable-stringify > call-bind > set-function-length > get-intrinsic > call-bind-apply-helpers > @formatjs/cli-lib > json-stable-stringify > call-bind > set-function-length > get-intrinsic > call-bind-apply-helpers > axios > form-data > es-set-tostringtag > get-intrinsic > call-bind-apply-helpers > json-stable-stringify > call-bind > call-bind-apply-helpers > json-stable-stringify > call-bind > get-intrinsic > call-bind-apply-helpers > json-stable-stringify > call-bind > get-intrinsic > get-proto > dunder-proto > call-bind-apply-helpers > json-stable-stringify > call-bind > set-function-length > get-intrinsic > call-bind-apply-helpers > json-stable-stringify > call-bound > call-bind-apply-helpers > json-stable-stringify > call-bound > get-intrinsic > call-bind-apply-helpers
21133
21133
  File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
@@ -30212,7 +30212,7 @@ MIT
30212
30212
 
30213
30213
  Authors: ljharb@gmail.com
30214
30214
  Package Manager: NPM
30215
- Project URL: https://www.npmjs.com/package/gopd
30215
+ Project URL: https://github.com/ljharb/gopd#readme
30216
30216
  Package Download URL: https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz
30217
30217
  Dependency Path: @formatjs/cli-lib > @formatjs/ts-transformer > @types/json-stable-stringify > json-stable-stringify > call-bind > set-function-length > gopd > @formatjs/cli-lib > @formatjs/ts-transformer > json-stable-stringify > call-bind > set-function-length > gopd > @formatjs/cli-lib > @types/json-stable-stringify > json-stable-stringify > call-bind > set-function-length > gopd > @formatjs/cli-lib > json-stable-stringify > call-bind > set-function-length > gopd > axios > form-data > es-set-tostringtag > get-intrinsic > gopd > json-stable-stringify > call-bind > get-intrinsic > get-proto > dunder-proto > gopd > json-stable-stringify > call-bind > get-intrinsic > gopd > json-stable-stringify > call-bind > set-function-length > define-data-property > gopd > json-stable-stringify > call-bind > set-function-length > gopd > json-stable-stringify > call-bound > get-intrinsic > gopd
30218
30218
  File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
@@ -38217,7 +38217,7 @@ MIT
38217
38217
 
38218
38218
  Authors: tituswormer@gmail.com
38219
38219
  Package Manager: NPM
38220
- Project URL: https://www.npmjs.com/package/mathml-tag-names
38220
+ Project URL: https://github.com/wooorm/mathml-tag-names#readme
38221
38221
  Package Download URL: https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz
38222
38222
  Dependency Path: stylelint > mathml-tag-names > stylelint-config-standard > stylelint > mathml-tag-names > stylelint-config-standard > stylelint-config-recommended > stylelint > mathml-tag-names > stylelint-order > stylelint > mathml-tag-names > stylelint-plugin-defensive-css > stylelint > mathml-tag-names > stylelint-scss > stylelint > mathml-tag-names
38223
38223
  File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
@@ -43603,7 +43603,7 @@ MIT
43603
43603
 
43604
43604
  Authors: daniel@touchlay.com, npm@joshuakgoldberg.com
43605
43605
  Package Manager: NPM
43606
- Project URL: https://www.npmjs.com/package/node-emoji
43606
+ Project URL: https://github.com/omnidan/node-emoji#readme
43607
43607
  Package Download URL: https://registry.npmjs.org/node-emoji/-/node-emoji-2.2.0.tgz
43608
43608
  Dependency Path: remark-emoji > node-emoji
43609
43609
  File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
@@ -64914,4 +64914,4 @@ File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
64914
64914
  --------------------------------------------------------------------------------
64915
64915
  --------------------------------------------------------------------------------
64916
64916
 
64917
- Report Generated by FOSSA on 2026-9-18
64917
+ Report Generated by FOSSA on 2026-9-21
@@ -12,7 +12,7 @@ export type ConfigContext = {
12
12
  * @public
13
13
  */
14
14
  export type LinkHandlerEvent = {
15
- type: "setting" | GenAIObjectType;
15
+ type: "setting" | "report" | GenAIObjectType;
16
16
  id: string;
17
17
  workspaceId: string;
18
18
  newTab: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigContext.d.ts","sourceRoot":"","sources":["../../src/components/ConfigContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAsC,MAAM,OAAO,CAAC;AAEnF,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE7G,MAAM,MAAM,aAAa,GAAG;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;IACvE,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,SAAS,GAAG,eAAe,CAAC;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACpC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACxC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,YAAY,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAI3D,wBAAgB,cAAc,CAAC,EAC3B,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,GACjB,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAsBlC;AAED,eAAO,MAAM,SAAS,QAAO,aAE5B,CAAC"}
1
+ {"version":3,"file":"ConfigContext.d.ts","sourceRoot":"","sources":["../../src/components/ConfigContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAsC,MAAM,OAAO,CAAC;AAEnF,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE7G,MAAM,MAAM,aAAa,GAAG;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;IACvE,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACpC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACxC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,YAAY,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAI3D,wBAAgB,cAAc,CAAC,EAC3B,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,GACjB,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAsBlC;AAED,eAAO,MAAM,SAAS,QAAO,aAE5B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type ComponentType } from "react";
2
- import { type IGenAIAssistantAgentChooserProps, type IGenAIAssistantAgentItemProps, type IGenAIAssistantAssistantMessageProps, type IGenAIAssistantConversationDateGroupingProps, type IGenAIAssistantConversationDrawerHeaderProps, type IGenAIAssistantConversationFooterProps, type IGenAIAssistantConversationHeaderProps, type IGenAIAssistantConversationItemProps, type IGenAIAssistantFeedbackProps, type IGenAIAssistantFollowUpButtonsProps, type IGenAIAssistantFollowUpQuestionProps, type IGenAIAssistantMessageErrorContentProps, type IGenAIAssistantMessageMultipartContentProps, type IGenAIAssistantMessageReasoningContentProps, type IGenAIAssistantMessageTextContentProps, type IGenAIAssistantSlots, type IGenAIAssistantUserMessageProps } from "./customized/types.js";
2
+ import { type IGenAIAssistantAgentChooserProps, type IGenAIAssistantAgentItemProps, type IGenAIAssistantAssistantMessageProps, type IGenAIAssistantConversationDateGroupingProps, type IGenAIAssistantConversationDrawerHeaderProps, type IGenAIAssistantConversationFooterProps, type IGenAIAssistantConversationHeaderProps, type IGenAIAssistantConversationItemProps, type IGenAIAssistantConversationVisualizationContentProps, type IGenAIAssistantFeedbackProps, type IGenAIAssistantFollowUpButtonsProps, type IGenAIAssistantFollowUpQuestionProps, type IGenAIAssistantMessageErrorContentProps, type IGenAIAssistantMessageMultipartContentProps, type IGenAIAssistantMessageReasoningContentProps, type IGenAIAssistantMessageTextContentProps, type IGenAIAssistantSlots, type IGenAIAssistantUserMessageProps } from "./customized/types.js";
3
3
  /**
4
4
  * @internal
5
5
  */
@@ -18,6 +18,7 @@ export interface IGenAIAssistantComponents {
18
18
  MessageErrorContentComponent: ComponentType<IGenAIAssistantMessageErrorContentProps>;
19
19
  MessageReasoningContentComponent: ComponentType<IGenAIAssistantMessageReasoningContentProps>;
20
20
  MessageMultipartContentComponent: ComponentType<IGenAIAssistantMessageMultipartContentProps>;
21
+ ConversationVisualizationContentComponent: ComponentType<IGenAIAssistantConversationVisualizationContentProps>;
21
22
  FollowUpButtonsComponent: ComponentType<IGenAIAssistantFollowUpButtonsProps>;
22
23
  FollowUpQuestionComponent: ComponentType<IGenAIAssistantFollowUpQuestionProps>;
23
24
  FeedbackComponent: ComponentType<IGenAIAssistantFeedbackProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"CustomizationContext.d.ts","sourceRoot":"","sources":["../../src/components/CustomizationContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAA6B,MAAM,OAAO,CAAC;AAEtE,OAAO,EACH,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,KAAK,oCAAoC,EACzC,KAAK,4CAA4C,EACjD,KAAK,4CAA4C,EACjD,KAAK,sCAAsC,EAC3C,KAAK,sCAAsC,EAC3C,KAAK,oCAAoC,EACzC,KAAK,4BAA4B,EACjC,KAAK,mCAAmC,EACxC,KAAK,oCAAoC,EACzC,KAAK,uCAAuC,EAC5C,KAAK,2CAA2C,EAChD,KAAK,2CAA2C,EAChD,KAAK,sCAAsC,EAC3C,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,EACvC,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,sBAAsB,EAAE,aAAa,CAAC;IACtC,mBAAmB,EAAE,aAAa,CAAC;IACnC,kBAAkB,EAAE,aAAa,CAAC,6BAA6B,CAAC,CAAC;IACjE,yBAAyB,EAAE,aAAa,CAAC,oCAAoC,CAAC,CAAC;IAC/E,iCAAiC,EAAE,aAAa,CAAC,4CAA4C,CAAC,CAAC;IAC/F,2BAA2B,EAAE,aAAa,CAAC,sCAAsC,CAAC,CAAC;IACnF,2BAA2B,EAAE,aAAa,CAAC,sCAAsC,CAAC,CAAC;IACnF,iCAAiC,EAAE,aAAa,CAAC,4CAA4C,CAAC,CAAC;IAC/F,oBAAoB,EAAE,aAAa,CAAC,+BAA+B,CAAC,CAAC;IACrE,yBAAyB,EAAE,aAAa,CAAC,oCAAoC,CAAC,CAAC;IAC/E,2BAA2B,EAAE,aAAa,CAAC,sCAAsC,CAAC,CAAC;IACnF,4BAA4B,EAAE,aAAa,CAAC,uCAAuC,CAAC,CAAC;IACrF,gCAAgC,EAAE,aAAa,CAAC,2CAA2C,CAAC,CAAC;IAC7F,gCAAgC,EAAE,aAAa,CAAC,2CAA2C,CAAC,CAAC;IAC7F,wBAAwB,EAAE,aAAa,CAAC,mCAAmC,CAAC,CAAC;IAC7E,yBAAyB,EAAE,aAAa,CAAC,oCAAoC,CAAC,CAAC;IAC/E,iBAAiB,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;IAC/D,qBAAqB,EAAE,aAAa,CAAC,gCAAgC,CAAC,CAAC;CAC1E;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,UAAU,CAAC,EAAE,yBAAyB,CAAC;CAC1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,+CAE/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB,iCAM5B,CAAC"}
1
+ {"version":3,"file":"CustomizationContext.d.ts","sourceRoot":"","sources":["../../src/components/CustomizationContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAA6B,MAAM,OAAO,CAAC;AAEtE,OAAO,EACH,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,KAAK,oCAAoC,EACzC,KAAK,4CAA4C,EACjD,KAAK,4CAA4C,EACjD,KAAK,sCAAsC,EAC3C,KAAK,sCAAsC,EAC3C,KAAK,oCAAoC,EACzC,KAAK,oDAAoD,EACzD,KAAK,4BAA4B,EACjC,KAAK,mCAAmC,EACxC,KAAK,oCAAoC,EACzC,KAAK,uCAAuC,EAC5C,KAAK,2CAA2C,EAChD,KAAK,2CAA2C,EAChD,KAAK,sCAAsC,EAC3C,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,EACvC,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,sBAAsB,EAAE,aAAa,CAAC;IACtC,mBAAmB,EAAE,aAAa,CAAC;IACnC,kBAAkB,EAAE,aAAa,CAAC,6BAA6B,CAAC,CAAC;IACjE,yBAAyB,EAAE,aAAa,CAAC,oCAAoC,CAAC,CAAC;IAC/E,iCAAiC,EAAE,aAAa,CAAC,4CAA4C,CAAC,CAAC;IAC/F,2BAA2B,EAAE,aAAa,CAAC,sCAAsC,CAAC,CAAC;IACnF,2BAA2B,EAAE,aAAa,CAAC,sCAAsC,CAAC,CAAC;IACnF,iCAAiC,EAAE,aAAa,CAAC,4CAA4C,CAAC,CAAC;IAC/F,oBAAoB,EAAE,aAAa,CAAC,+BAA+B,CAAC,CAAC;IACrE,yBAAyB,EAAE,aAAa,CAAC,oCAAoC,CAAC,CAAC;IAC/E,2BAA2B,EAAE,aAAa,CAAC,sCAAsC,CAAC,CAAC;IACnF,4BAA4B,EAAE,aAAa,CAAC,uCAAuC,CAAC,CAAC;IACrF,gCAAgC,EAAE,aAAa,CAAC,2CAA2C,CAAC,CAAC;IAC7F,gCAAgC,EAAE,aAAa,CAAC,2CAA2C,CAAC,CAAC;IAC7F,yCAAyC,EAAE,aAAa,CAAC,oDAAoD,CAAC,CAAC;IAC/G,wBAAwB,EAAE,aAAa,CAAC,mCAAmC,CAAC,CAAC;IAC7E,yBAAyB,EAAE,aAAa,CAAC,oCAAoC,CAAC,CAAC;IAC/E,iBAAiB,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;IAC/D,qBAAqB,EAAE,aAAa,CAAC,gCAAgC,CAAC,CAAC;CAC1E;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,UAAU,CAAC,EAAE,yBAAyB,CAAC;CAC1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,+CAE/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB,iCAM5B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomizationProvider.d.ts","sourceRoot":"","sources":["../../src/components/CustomizationProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAuB,MAAM,OAAO,CAAC;AAoBpE,OAAO,EAgBH,KAAK,oBAAoB,EAE5B,MAAM,uBAAuB,CAAC;AAI/B,MAAM,MAAM,0BAA0B,GAAG;IACrC,KAAK,CAAC,EAAE,oBAAoB,CAAC;CAChC,CAAC;AAgMF,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,iBAAiB,CAAC,0BAA0B,CAAC,2CAkCvG"}
1
+ {"version":3,"file":"CustomizationProvider.d.ts","sourceRoot":"","sources":["../../src/components/CustomizationProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAuB,MAAM,OAAO,CAAC;AAqBpE,OAAO,EAiBH,KAAK,oBAAoB,EAE5B,MAAM,uBAAuB,CAAC;AAI/B,MAAM,MAAM,0BAA0B,GAAG;IACrC,KAAK,CAAC,EAAE,oBAAoB,CAAC;CAChC,CAAC;AAiNF,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,iBAAiB,CAAC,0BAA0B,CAAC,2CAmCvG"}
@@ -10,6 +10,7 @@ import { DefaultConversationDrawerHeader } from "./customized/ConversationDrawer
10
10
  import { DefaultConversationFooter } from "./customized/ConversationFooter.js";
11
11
  import { DefaultConversationHeader } from "./customized/ConversationHeader.js";
12
12
  import { DefaultConversationItem } from "./customized/ConversationItem.js";
13
+ import { DefaultConversationVisualizationContent } from "./customized/ConversationVisualizationContent.js";
13
14
  import { DefaultDisclaimer } from "./customized/Disclaimer.js";
14
15
  import { DefaultFeedback } from "./customized/Feedback.js";
15
16
  import { DefaultFollowUpButtons } from "./customized/FollowUpButtons.js";
@@ -138,6 +139,14 @@ function MessageMultipartContentSlotRenderer(props) {
138
139
  }
139
140
  return _jsx(DefaultMessageMultipartContent, { ...props });
140
141
  }
142
+ function ConversationVisualizationContentSlotRenderer(props) {
143
+ const { slots } = useContext(customizationContext);
144
+ const ConversationVisualizationContentSlot = slots?.ConversationVisualizationContent;
145
+ if (ConversationVisualizationContentSlot) {
146
+ return (_jsx(ConversationVisualizationContentSlot, { Default: DefaultConversationVisualizationContent, defaultProps: props }));
147
+ }
148
+ return _jsx(DefaultConversationVisualizationContent, { ...props });
149
+ }
141
150
  function FollowUpButtonsSlotRenderer(props) {
142
151
  const { slots } = useContext(customizationContext);
143
152
  const FollowUpButtonsSlot = slots?.FollowUpButtons;
@@ -186,6 +195,7 @@ export function CustomizationProvider({ children, slots }) {
186
195
  MessageErrorContentComponent: MessageErrorContentSlotRenderer,
187
196
  MessageReasoningContentComponent: MessageReasoningContentSlotRenderer,
188
197
  MessageMultipartContentComponent: MessageMultipartContentSlotRenderer,
198
+ ConversationVisualizationContentComponent: ConversationVisualizationContentSlotRenderer,
189
199
  FollowUpButtonsComponent: FollowUpButtonsSlotRenderer,
190
200
  FollowUpQuestionComponent: FollowUpQuestionSlotRenderer,
191
201
  FeedbackComponent: FeedbackSlotRenderer,
@@ -1,7 +1,7 @@
1
1
  import { type RefObject } from "react";
2
2
  import { type IAnalyticalBackend, type IUserWorkspaceSettings } from "@gooddata/sdk-backend-spi";
3
3
  import type { GenAIObjectType, IColorPalette, IGenAIUserContext } from "@gooddata/sdk-model";
4
- import { type ChatAssistantMessageEvent, type ChatClosedEvent, type ChatCopyToClipboardEvent, type ChatDefinitionReceivedEvent, type ChatEvent, type ChatFeedbackErrorEvent, type ChatFeedbackEvent, type ChatOpenedEvent, type ChatResetEvent, type ChatSaveVisualizationErrorEvent, type ChatSaveVisualizationSuccessEvent, type ChatUserMessageEvent } from "../store/events.js";
4
+ import { type ChatAssistantMessageEvent, 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
6
  /**
7
7
  * Discriminated union of GenAI chat events surfaced to a caller via {@link IGenAIChatDialogConnectedProps.onEvent}.
@@ -34,6 +34,9 @@ export type GenAIChatConnectedEvent = {
34
34
  } | {
35
35
  name: "feedback-error";
36
36
  payload: ChatFeedbackErrorEvent;
37
+ } | {
38
+ name: "mode-changed";
39
+ payload: ChatModeChangeEvent;
37
40
  } | {
38
41
  name: "save-visualization-success";
39
42
  payload: ChatSaveVisualizationSuccessEvent;
@@ -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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"}
@@ -3,7 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  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
- import { isChatAssistantMessageEvent, isChatClosedEvent, isChatCopyToClipboardEvent, isChatDefinitionReceivedEvent, isChatFeedbackErrorEvent, isChatFeedbackEvent, isChatOpenedEvent, isChatResetEvent, isChatSaveVisualizationErrorEvent, isChatSaveVisualizationSuccessEvent, isChatUserMessageEvent, } from "../store/events.js";
6
+ import { isChatAssistantMessageEvent, isChatClosedEvent, isChatCopyToClipboardEvent, isChatDefinitionReceivedEvent, isChatFeedbackErrorEvent, isChatFeedbackEvent, isChatModeChangeEvent, isChatOpenedEvent, isChatResetEvent, isChatSaveVisualizationErrorEvent, isChatSaveVisualizationSuccessEvent, isChatUserMessageEvent, } from "../store/events.js";
7
7
  import { clearThreadAction, newMessageAction, setSelectedAgentAction, } from "../store/messages/messagesSlice.js";
8
8
  import { GenAIChatDialog } from "./GenAIChatDialog.js";
9
9
  /**
@@ -75,6 +75,9 @@ export function GenAIChatDialogConnected({ backend, workspace, locale, canManage
75
75
  else if (isChatDefinitionReceivedEvent(event)) {
76
76
  onEvent({ name: "definition-received", payload: event });
77
77
  }
78
+ else if (isChatModeChangeEvent(event)) {
79
+ onEvent({ name: "mode-changed", payload: event });
80
+ }
78
81
  },
79
82
  },
80
83
  ], [onEvent, onAnyEvent]);
@@ -59,7 +59,7 @@ export function GenAIChatOverlay({ onClose, returnFocusTo, dialogPosition, class
59
59
  return () => window.removeEventListener("keydown", onKeyDown);
60
60
  }, [closeOnEscape, onClose]);
61
61
  const Wrapper = useCallback(({ children }) => {
62
- if (displayMode === "modal") {
62
+ if (displayMode === "modal" || isFullscreen) {
63
63
  return (_jsx(Dialog, { isModal: isFullscreen, returnFocusTo: returnFocusTo, returnFocusAfterClose: !!returnFocusTo, alignPoints: [{ align: position }], closeOnEscape: false, submitOnEnterKey: false, closeOnParentScroll: false, closeOnMouseDrag: false, onClose: onClose, className: classNames, accessibilityConfig: {
64
64
  title: intl.formatMessage({ id: "gd.gen-ai.dialog.label" }),
65
65
  isModal: isFullscreen,
@@ -0,0 +1,8 @@
1
+ import { type IGenAIAssistantConversationVisualizationContentProps } from "./types.js";
2
+ /**
3
+ * Default implementation of the ConversationVisualizationContent slot.
4
+ *
5
+ * @alpha
6
+ */
7
+ export declare function DefaultConversationVisualizationContent(props: IGenAIAssistantConversationVisualizationContentProps): import("react/jsx-runtime").JSX.Element;
8
+ //# sourceMappingURL=ConversationVisualizationContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConversationVisualizationContent.d.ts","sourceRoot":"","sources":["../../../src/components/customized/ConversationVisualizationContent.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,oDAAoD,EAAE,MAAM,YAAY,CAAC;AAEvF;;;;GAIG;AACH,wBAAgB,uCAAuC,CACnD,KAAK,EAAE,oDAAoD,2CAG9D"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2024-2026 GoodData Corporation
3
+ import { ConversationVisualizationContent } from "../messages/conversationContents/ConversationVisualizationContent.js";
4
+ /**
5
+ * Default implementation of the ConversationVisualizationContent slot.
6
+ *
7
+ * @alpha
8
+ */
9
+ export function DefaultConversationVisualizationContent(props) {
10
+ return _jsx(ConversationVisualizationContent, { ...props });
11
+ }
@@ -1,8 +1,9 @@
1
1
  import { type ComponentType } from "react";
2
- import { type IChatSuggestion } from "@gooddata/sdk-backend-spi";
2
+ import { type IChatConversationVisualisationContent, type IChatSuggestion } from "@gooddata/sdk-backend-spi";
3
3
  import { type GenAIChatEffort } from "@gooddata/sdk-model";
4
4
  import { type ISlotProps, type IUiMenuGroupItemProps, type IUiMenuInteractiveItemProps, type IUiMenuInteractiveItemWrapperProps, type IUiMenuItem } from "@gooddata/sdk-ui-kit";
5
5
  import { type GenAIAgent, type IChatConversationErrorContent, type IChatConversationLocal, type IChatConversationLocalItem, type IChatConversationMultipartLocalPart, type TextContentObject } from "../../model.js";
6
+ import { type IWhatIfRenderableScenario } from "../../whatIf/whatIfMapping.js";
6
7
  import { type IChatMessagesGroup } from "../utils/groupUtility.js";
7
8
  /**
8
9
  * Properties for the LandingScreen slot.
@@ -215,6 +216,49 @@ export type IGenAIAssistantMessageMultipartContentProps = {
215
216
  */
216
217
  isLast?: boolean;
217
218
  };
219
+ /**
220
+ * Properties for the ConversationVisualizationContent slot.
221
+ * @alpha
222
+ */
223
+ export type IGenAIAssistantConversationVisualizationContentProps = {
224
+ /**
225
+ * The message containing the visualization content.
226
+ */
227
+ message: IChatConversationLocalItem;
228
+ /**
229
+ * The multipart part containing the visualization.
230
+ */
231
+ part: IChatConversationMultipartLocalPart;
232
+ /**
233
+ * The what-if scenario context for this visualization.
234
+ */
235
+ scenario?: IWhatIfRenderableScenario;
236
+ /**
237
+ * The visualization payload to render.
238
+ */
239
+ visualization: NonNullable<IChatConversationVisualisationContent["visualization"]>;
240
+ /**
241
+ * Additional CSS class name.
242
+ */
243
+ className?: string;
244
+ /**
245
+ * Control visibility of the visualization menu items.
246
+ */
247
+ menuItems?: {
248
+ /**
249
+ * Whether the save action is shown in the visualization menu.
250
+ */
251
+ save?: boolean;
252
+ /**
253
+ * Whether the open-in-analyze action is shown in the visualization menu.
254
+ */
255
+ openInAnalyze?: boolean;
256
+ /**
257
+ * Whether the copy-link action is shown in the visualization menu.
258
+ */
259
+ copyLink?: boolean;
260
+ };
261
+ };
218
262
  /**
219
263
  * Properties for the FollowUpButtons slot.
220
264
  * @alpha
@@ -394,6 +438,11 @@ export interface IGenAIAssistantSlots {
394
438
  * Custom React component rendered for multipart content of a message.
395
439
  */
396
440
  MessageMultipartContent?: ComponentType<ISlotProps<IGenAIAssistantMessageMultipartContentProps>>;
441
+ /**
442
+ * @alpha
443
+ * Custom React component rendered for a visualization part in multipart content.
444
+ */
445
+ ConversationVisualizationContent?: ComponentType<ISlotProps<IGenAIAssistantConversationVisualizationContentProps>>;
397
446
  /**
398
447
  * @alpha
399
448
  * Custom React component rendered for follow up buttons of a message.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/customized/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/customized/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomHyperlink.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/contents/CustomHyperlink.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAMxE,MAAM,MAAM,uBAAuB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,oBAAoB,GAAG,uBAAuB,GAAG;IAClD,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACrC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,oBAAoB,oDAmGtF;AAyBD,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,uBAAuB,2CAItE"}
1
+ {"version":3,"file":"CustomHyperlink.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/contents/CustomHyperlink.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAMxE,MAAM,MAAM,uBAAuB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,oBAAoB,GAAG,uBAAuB,GAAG;IAClD,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACrC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,oBAAoB,oDAmGtF;AA4BD,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,uBAAuB,2CAItE"}
@@ -92,6 +92,9 @@ const getItemUrl = (workspaceId, id, objectType, enableShellApplication_analytic
92
92
  : `/dashboards/#/workspace/${workspaceId}/dashboard/${id}`;
93
93
  case "metric":
94
94
  return `/workspace/${workspaceId}/metrics/metric/${id}`;
95
+ case "report":
96
+ // Encoded like the Reports app's own route builder, so an id with a slash stays one segment.
97
+ return `/workspace/${workspaceId}/reports/report/${encodeURIComponent(id)}`;
95
98
  default:
96
99
  return null;
97
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationMultipartContent.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationMultipartContent.tsx"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,0BAA0B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAC;AAY3B,MAAM,MAAM,iCAAiC,GAAG;IAC5C,OAAO,EAAE,0BAA0B,CAAC;IACpC,KAAK,EAAE,mCAAmC,EAAE,CAAC;IAC7C,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,4BAA4B,CAAC,EACzC,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,GACT,EAAE,iCAAiC,2CA8FnC"}
1
+ {"version":3,"file":"ConversationMultipartContent.d.ts","sourceRoot":"","sources":["../../../../src/components/messages/conversationContents/ConversationMultipartContent.tsx"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,0BAA0B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAC;AAY3B,MAAM,MAAM,iCAAiC,GAAG;IAC5C,OAAO,EAAE,0BAA0B,CAAC;IACpC,KAAK,EAAE,mCAAmC,EAAE,CAAC;IAC7C,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,4BAA4B,CAAC,EACzC,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,GACT,EAAE,iCAAiC,2CA+FnC"}
@@ -2,16 +2,17 @@ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
2
  // (C) 2024-2026 GoodData Corporation
3
3
  import { useIntl } from "react-intl";
4
4
  import { loadWhatIfScenarios } from "../../../whatIf/whatIfMapping.js";
5
+ import { useCustomization } from "../../CustomizationContext.js";
5
6
  import { ConversationAlertProposalContent } from "./ConversationAlertProposalContent.js";
6
7
  import { ConversationClarifyingQuestionsContent } from "./ConversationClarifyingQuestionsContent.js";
7
8
  import { ConversationDashboardContent } from "./ConversationDashboardContent.js";
8
9
  import { ConversationKdaContent } from "./ConversationKdaContent.js";
9
10
  import { ConversationSearchContent } from "./ConversationSearchContent.js";
10
11
  import { ConversationTextContent } from "./ConversationTextContent.js";
11
- import { ConversationVisualizationContent } from "./ConversationVisualizationContent.js";
12
12
  import { ConversationWhatIfContent } from "./ConversationWhatIfContent.js";
13
13
  export function ConversationMultipartContent({ message, parts, references, isLast, }) {
14
14
  const intl = useIntl();
15
+ const { ConversationVisualizationContentComponent } = useCustomization();
15
16
  const whatIf = loadWhatIfScenarios(parts);
16
17
  return (_jsx(_Fragment, { children: parts?.map((part, index) => {
17
18
  if (part.type === "text") {
@@ -24,7 +25,7 @@ export function ConversationMultipartContent({ message, parts, references, isLas
24
25
  return (_jsx(ConversationClarifyingQuestionsContent, { useMarkdown: true, message: message, questions: part.questions, objects: [...(part.objects ?? []), ...references], isLast: isLast }, index));
25
26
  }
26
27
  if (part.type === "visualization" && !whatIf) {
27
- return part.visualization ? (_jsx(ConversationVisualizationContent, { message: message, part: part, visualization: part.visualization }, index)) : (_jsx("div", { className: "gd-gen-ai-chat__conversation__item__content--error", children: intl.formatMessage({ id: "gd.gen-ai.visualization.unavailable" }) }, index));
28
+ return part.visualization ? (_jsx(ConversationVisualizationContentComponent, { message: message, part: part, visualization: part.visualization }, index)) : (_jsx("div", { className: "gd-gen-ai-chat__conversation__item__content--error", children: intl.formatMessage({ id: "gd.gen-ai.visualization.unavailable" }) }, index));
28
29
  }
29
30
  if (part.type === "searchResults") {
30
31
  return (_jsx(ConversationSearchContent, { results: part.searchResults, relationships: part.relationships, keywords: part.keywords }, index));
@@ -1,12 +1,21 @@
1
1
  import { type IChatConversationVisualisationContent } from "@gooddata/sdk-backend-spi";
2
2
  import { type IChatConversationLocalItem, type IChatConversationMultipartLocalPart } from "../../../model.js";
3
3
  import { type IWhatIfRenderableScenario } from "../../../whatIf/whatIfMapping.js";
4
+ import { type IGenAIAssistantConversationVisualizationContentProps } from "../../customized/types.js";
5
+ type IVisualisationMenuItemId = "button-save" | "button-open" | "button-copy";
6
+ export declare function getVisibleVisualisationMenuItemIds({ scenario, isVisualisationSaved, menuItems, }: {
7
+ scenario?: IWhatIfRenderableScenario;
8
+ menuItems?: IGenAIAssistantConversationVisualizationContentProps["menuItems"];
9
+ isVisualisationSaved: boolean;
10
+ }): IVisualisationMenuItemId[];
4
11
  export type ConversationVisualizationContentProps = {
5
12
  message: IChatConversationLocalItem;
6
13
  part: IChatConversationMultipartLocalPart;
7
14
  scenario?: IWhatIfRenderableScenario;
8
15
  visualization: NonNullable<IChatConversationVisualisationContent["visualization"]>;
9
16
  className?: string;
17
+ menuItems?: IGenAIAssistantConversationVisualizationContentProps["menuItems"];
10
18
  };
11
- export declare function ConversationVisualizationContent({ message, part, scenario, visualization, className, }: ConversationVisualizationContentProps): import("react/jsx-runtime").JSX.Element;
19
+ export declare function ConversationVisualizationContent({ message, part, scenario, visualization, className, menuItems, }: ConversationVisualizationContentProps): import("react/jsx-runtime").JSX.Element;
20
+ export {};
12
21
  //# sourceMappingURL=ConversationVisualizationContent.d.ts.map
@@ -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;AAyBvF,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAY9G,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,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,EAC7C,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,SAAS,GACZ,EAAE,qCAAqC,2CAoHvC"}
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;AAyBvF,OAAO,EAAE,KAAK,0BAA0B,EAAE,KAAK,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAY9G,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,KAAK,oDAAoD,EAAE,MAAM,2BAA2B,CAAC;AAuBtG,KAAK,wBAAwB,GAAG,aAAa,GAAG,aAAa,GAAG,aAAa,CAAC;AAE9E,wBAAgB,kCAAkC,CAAC,EAC/C,QAAQ,EACR,oBAAoB,EACpB,SAAS,GACZ,EAAE;IACC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,SAAS,CAAC,EAAE,oDAAoD,CAAC,WAAW,CAAC,CAAC;IAC9E,oBAAoB,EAAE,OAAO,CAAC;CACjC,GAAG,wBAAwB,EAAE,CAsB7B;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;CACjF,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,EAC7C,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,SAAS,EACT,SAAS,GACZ,EAAE,qCAAqC,2CAqHvC"}