@gooddata/sdk-ui-gen-ai 10.13.0-alpha.2 → 10.13.0-alpha.21

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 (222) hide show
  1. package/NOTICE +37 -3
  2. package/esm/components/EmptyState.d.ts +3 -3
  3. package/esm/components/EmptyState.d.ts.map +1 -1
  4. package/esm/components/EmptyState.js +10 -8
  5. package/esm/components/EmptyState.js.map +1 -1
  6. package/esm/components/ErrorBoundary.d.ts +11 -3
  7. package/esm/components/ErrorBoundary.d.ts.map +1 -1
  8. package/esm/components/ErrorBoundary.js +26 -7
  9. package/esm/components/ErrorBoundary.js.map +1 -1
  10. package/esm/components/GenAIChatOverlay.d.ts +3 -3
  11. package/esm/components/GenAIChatOverlay.d.ts.map +1 -1
  12. package/esm/components/GenAIChatOverlay.js +4 -4
  13. package/esm/components/GenAIChatOverlay.js.map +1 -1
  14. package/esm/components/GenAIChatWrapper.d.ts +7 -5
  15. package/esm/components/GenAIChatWrapper.d.ts.map +1 -1
  16. package/esm/components/GenAIChatWrapper.js +14 -1
  17. package/esm/components/GenAIChatWrapper.js.map +1 -1
  18. package/esm/components/GlobalError.d.ts +6 -15
  19. package/esm/components/GlobalError.d.ts.map +1 -1
  20. package/esm/components/GlobalError.js +12 -18
  21. package/esm/components/GlobalError.js.map +1 -1
  22. package/esm/components/Input.d.ts +2 -1
  23. package/esm/components/Input.d.ts.map +1 -1
  24. package/esm/components/Input.js +15 -13
  25. package/esm/components/Input.js.map +1 -1
  26. package/esm/components/Messages.d.ts +3 -3
  27. package/esm/components/Messages.d.ts.map +1 -1
  28. package/esm/components/Messages.js +21 -33
  29. package/esm/components/Messages.js.map +1 -1
  30. package/esm/components/messages/AgentIcon.d.ts.map +1 -1
  31. package/esm/components/messages/AgentIcon.js +10 -4
  32. package/esm/components/messages/AgentIcon.js.map +1 -1
  33. package/esm/components/messages/AssistantMessage.d.ts +8 -0
  34. package/esm/components/messages/AssistantMessage.d.ts.map +1 -0
  35. package/esm/components/messages/AssistantMessage.js +14 -0
  36. package/esm/components/messages/AssistantMessage.js.map +1 -0
  37. package/esm/components/messages/MessageContents.d.ts +11 -0
  38. package/esm/components/messages/MessageContents.d.ts.map +1 -0
  39. package/esm/components/messages/MessageContents.js +37 -0
  40. package/esm/components/messages/MessageContents.js.map +1 -0
  41. package/esm/components/messages/UserMessage.d.ts +8 -0
  42. package/esm/components/messages/UserMessage.d.ts.map +1 -0
  43. package/esm/components/messages/UserMessage.js +10 -0
  44. package/esm/components/messages/UserMessage.js.map +1 -0
  45. package/esm/components/messages/contents/ErrorContents.d.ts +8 -0
  46. package/esm/components/messages/contents/ErrorContents.d.ts.map +1 -0
  47. package/esm/components/messages/contents/ErrorContents.js +10 -0
  48. package/esm/components/messages/contents/ErrorContents.js.map +1 -0
  49. package/esm/components/messages/contents/Markdown.d.ts +8 -0
  50. package/esm/components/messages/contents/Markdown.d.ts.map +1 -0
  51. package/esm/components/messages/contents/Markdown.js +18 -0
  52. package/esm/components/messages/contents/Markdown.js.map +1 -0
  53. package/esm/components/messages/contents/RoutingContents.d.ts +8 -0
  54. package/esm/components/messages/contents/RoutingContents.d.ts.map +1 -0
  55. package/esm/components/messages/contents/RoutingContents.js +10 -0
  56. package/esm/components/messages/contents/RoutingContents.js.map +1 -0
  57. package/esm/components/messages/contents/SearchContents.d.ts +8 -0
  58. package/esm/components/messages/contents/SearchContents.d.ts.map +1 -0
  59. package/esm/components/messages/contents/SearchContents.js +14 -0
  60. package/esm/components/messages/contents/SearchContents.js.map +1 -0
  61. package/esm/components/messages/contents/TextContents.d.ts +8 -0
  62. package/esm/components/messages/contents/TextContents.d.ts.map +1 -0
  63. package/esm/components/messages/contents/TextContents.js +10 -0
  64. package/esm/components/messages/contents/TextContents.js.map +1 -0
  65. package/esm/components/messages/contents/VisualizationContents.d.ts +8 -0
  66. package/esm/components/messages/contents/VisualizationContents.d.ts.map +1 -0
  67. package/esm/components/messages/contents/VisualizationContents.js +53 -0
  68. package/esm/components/messages/contents/VisualizationContents.js.map +1 -0
  69. package/esm/components/messages/contents/VisualizationErrorBoundary.d.ts +10 -0
  70. package/esm/components/messages/contents/VisualizationErrorBoundary.d.ts.map +1 -0
  71. package/esm/components/messages/contents/VisualizationErrorBoundary.js +22 -0
  72. package/esm/components/messages/contents/VisualizationErrorBoundary.js.map +1 -0
  73. package/esm/components/messages/contents/replaceLinks.d.ts +3 -0
  74. package/esm/components/messages/contents/replaceLinks.d.ts.map +1 -0
  75. package/esm/components/messages/contents/replaceLinks.js +30 -0
  76. package/esm/components/messages/contents/replaceLinks.js.map +1 -0
  77. package/esm/components/messages/contents/useExecution.d.ts +6 -0
  78. package/esm/components/messages/contents/useExecution.d.ts.map +1 -0
  79. package/esm/components/messages/{useExecution.js → contents/useExecution.js} +9 -4
  80. package/esm/components/messages/contents/useExecution.js.map +1 -0
  81. package/esm/components/messages/index.d.ts +2 -4
  82. package/esm/components/messages/index.d.ts.map +1 -1
  83. package/esm/components/messages/index.js +2 -4
  84. package/esm/components/messages/index.js.map +1 -1
  85. package/esm/hooks/useGenAIStore.d.ts +8 -10
  86. package/esm/hooks/useGenAIStore.d.ts.map +1 -1
  87. package/esm/index.d.ts +1 -1
  88. package/esm/index.d.ts.map +1 -1
  89. package/esm/localization/bundles/de-DE.json +22 -1
  90. package/esm/localization/bundles/en-AU.json +22 -1
  91. package/esm/localization/bundles/en-GB.json +22 -1
  92. package/esm/localization/bundles/en-US.json +11 -11
  93. package/esm/localization/bundles/es-419.json +22 -1
  94. package/esm/localization/bundles/es-ES.json +22 -1
  95. package/esm/localization/bundles/fi-FI.json +22 -1
  96. package/esm/localization/bundles/fr-CA.json +22 -1
  97. package/esm/localization/bundles/fr-FR.json +22 -1
  98. package/esm/localization/bundles/it-IT.json +22 -1
  99. package/esm/localization/bundles/ja-JP.json +22 -1
  100. package/esm/localization/bundles/nl-NL.json +22 -1
  101. package/esm/localization/bundles/pt-BR.json +22 -1
  102. package/esm/localization/bundles/pt-PT.json +22 -1
  103. package/esm/localization/bundles/zh-HK.json +22 -1
  104. package/esm/localization/bundles/zh-Hans.json +22 -1
  105. package/esm/localization/bundles/zh-Hant.json +22 -1
  106. package/esm/model.d.ts +70 -53
  107. package/esm/model.d.ts.map +1 -1
  108. package/esm/model.js +46 -43
  109. package/esm/model.js.map +1 -1
  110. package/esm/sdk-ui-gen-ai.d.ts +59 -46
  111. package/esm/store/index.d.ts +2 -4
  112. package/esm/store/index.d.ts.map +1 -1
  113. package/esm/store/index.js +2 -4
  114. package/esm/store/index.js.map +1 -1
  115. package/esm/store/messages/messagesSelectors.d.ts +6 -3
  116. package/esm/store/messages/messagesSelectors.d.ts.map +1 -1
  117. package/esm/store/messages/messagesSelectors.js +6 -12
  118. package/esm/store/messages/messagesSelectors.js.map +1 -1
  119. package/esm/store/messages/messagesSlice.d.ts +48 -4
  120. package/esm/store/messages/messagesSlice.d.ts.map +1 -1
  121. package/esm/store/messages/messagesSlice.js +85 -23
  122. package/esm/store/messages/messagesSlice.js.map +1 -1
  123. package/esm/store/sideEffects/converters/interactionsToMessages.d.ts +9 -0
  124. package/esm/store/sideEffects/converters/interactionsToMessages.d.ts.map +1 -0
  125. package/esm/store/sideEffects/converters/interactionsToMessages.js +36 -0
  126. package/esm/store/sideEffects/converters/interactionsToMessages.js.map +1 -0
  127. package/esm/store/sideEffects/index.d.ts.map +1 -1
  128. package/esm/store/sideEffects/index.js +10 -5
  129. package/esm/store/sideEffects/index.js.map +1 -1
  130. package/esm/store/sideEffects/onThreadClear.d.ts +18 -0
  131. package/esm/store/sideEffects/onThreadClear.d.ts.map +1 -0
  132. package/esm/store/sideEffects/onThreadClear.js +31 -0
  133. package/esm/store/sideEffects/onThreadClear.js.map +1 -0
  134. package/esm/store/sideEffects/onThreadLoad.d.ts +20 -0
  135. package/esm/store/sideEffects/onThreadLoad.d.ts.map +1 -0
  136. package/esm/store/sideEffects/onThreadLoad.js +41 -0
  137. package/esm/store/sideEffects/onThreadLoad.js.map +1 -0
  138. package/esm/store/sideEffects/onUserMessage.d.ts +20 -0
  139. package/esm/store/sideEffects/onUserMessage.d.ts.map +1 -0
  140. package/esm/store/sideEffects/onUserMessage.js +52 -0
  141. package/esm/store/sideEffects/onUserMessage.js.map +1 -0
  142. package/esm/store/sideEffects/threadPolling.d.ts +16 -0
  143. package/esm/store/sideEffects/threadPolling.d.ts.map +1 -0
  144. package/esm/store/sideEffects/threadPolling.js +86 -0
  145. package/esm/store/sideEffects/threadPolling.js.map +1 -0
  146. package/esm/store/store.d.ts +8 -10
  147. package/esm/store/store.d.ts.map +1 -1
  148. package/esm/store/store.js +2 -4
  149. package/esm/store/store.js.map +1 -1
  150. package/esm/store/types.d.ts +0 -2
  151. package/esm/store/types.d.ts.map +1 -1
  152. package/esm/store/types.js +0 -1
  153. package/esm/store/types.js.map +1 -1
  154. package/package.json +15 -12
  155. package/styles/css/main.css +68 -43
  156. package/styles/css/main.css.map +1 -1
  157. package/styles/css/messages.css +55 -26
  158. package/styles/css/messages.css.map +1 -1
  159. package/styles/scss/main.scss +24 -6
  160. package/styles/scss/messages.scss +126 -97
  161. package/esm/components/messages/AgentState.d.ts +0 -3
  162. package/esm/components/messages/AgentState.d.ts.map +0 -1
  163. package/esm/components/messages/AgentState.js +0 -12
  164. package/esm/components/messages/AgentState.js.map +0 -1
  165. package/esm/components/messages/AssistantCancelledMessage.d.ts +0 -8
  166. package/esm/components/messages/AssistantCancelledMessage.d.ts.map +0 -1
  167. package/esm/components/messages/AssistantCancelledMessage.js +0 -12
  168. package/esm/components/messages/AssistantCancelledMessage.js.map +0 -1
  169. package/esm/components/messages/AssistantErrorMessage.d.ts +0 -11
  170. package/esm/components/messages/AssistantErrorMessage.d.ts.map +0 -1
  171. package/esm/components/messages/AssistantErrorMessage.js +0 -14
  172. package/esm/components/messages/AssistantErrorMessage.js.map +0 -1
  173. package/esm/components/messages/AssistantSearchCreateMessage.d.ts +0 -8
  174. package/esm/components/messages/AssistantSearchCreateMessage.d.ts.map +0 -1
  175. package/esm/components/messages/AssistantSearchCreateMessage.js +0 -16
  176. package/esm/components/messages/AssistantSearchCreateMessage.js.map +0 -1
  177. package/esm/components/messages/AssistantTextMessage.d.ts +0 -8
  178. package/esm/components/messages/AssistantTextMessage.d.ts.map +0 -1
  179. package/esm/components/messages/AssistantTextMessage.js +0 -10
  180. package/esm/components/messages/AssistantTextMessage.js.map +0 -1
  181. package/esm/components/messages/FoundObjects.d.ts +0 -8
  182. package/esm/components/messages/FoundObjects.d.ts.map +0 -1
  183. package/esm/components/messages/FoundObjects.js +0 -28
  184. package/esm/components/messages/FoundObjects.js.map +0 -1
  185. package/esm/components/messages/SystemMessage.d.ts +0 -8
  186. package/esm/components/messages/SystemMessage.d.ts.map +0 -1
  187. package/esm/components/messages/SystemMessage.js +0 -7
  188. package/esm/components/messages/SystemMessage.js.map +0 -1
  189. package/esm/components/messages/UserTextMessage.d.ts +0 -8
  190. package/esm/components/messages/UserTextMessage.d.ts.map +0 -1
  191. package/esm/components/messages/UserTextMessage.js +0 -10
  192. package/esm/components/messages/UserTextMessage.js.map +0 -1
  193. package/esm/components/messages/Visualization.d.ts +0 -8
  194. package/esm/components/messages/Visualization.d.ts.map +0 -1
  195. package/esm/components/messages/Visualization.js +0 -39
  196. package/esm/components/messages/Visualization.js.map +0 -1
  197. package/esm/components/messages/useExecution.d.ts +0 -6
  198. package/esm/components/messages/useExecution.d.ts.map +0 -1
  199. package/esm/components/messages/useExecution.js.map +0 -1
  200. package/esm/store/agent/agentSelectors.d.ts +0 -3
  201. package/esm/store/agent/agentSelectors.d.ts.map +0 -1
  202. package/esm/store/agent/agentSelectors.js +0 -6
  203. package/esm/store/agent/agentSelectors.js.map +0 -1
  204. package/esm/store/agent/agentSlice.d.ts +0 -8
  205. package/esm/store/agent/agentSlice.d.ts.map +0 -1
  206. package/esm/store/agent/agentSlice.js +0 -21
  207. package/esm/store/agent/agentSlice.js.map +0 -1
  208. package/esm/store/sideEffects/converters/evalToMessage.d.ts +0 -7
  209. package/esm/store/sideEffects/converters/evalToMessage.d.ts.map +0 -1
  210. package/esm/store/sideEffects/converters/evalToMessage.js +0 -14
  211. package/esm/store/sideEffects/converters/evalToMessage.js.map +0 -1
  212. package/esm/store/sideEffects/converters/messagesToHistory.d.ts +0 -4
  213. package/esm/store/sideEffects/converters/messagesToHistory.d.ts.map +0 -1
  214. package/esm/store/sideEffects/converters/messagesToHistory.js +0 -83
  215. package/esm/store/sideEffects/converters/messagesToHistory.js.map +0 -1
  216. package/esm/store/sideEffects/onNewMessage.d.ts +0 -13
  217. package/esm/store/sideEffects/onNewMessage.d.ts.map +0 -1
  218. package/esm/store/sideEffects/onNewMessage.js +0 -81
  219. package/esm/store/sideEffects/onNewMessage.js.map +0 -1
  220. package/styles/css/agentState.css +0 -29
  221. package/styles/css/agentState.css.map +0 -1
  222. package/styles/scss/agentState.scss +0 -31
@@ -4,7 +4,6 @@
4
4
  @use "input";
5
5
  @use "variables" as variables;
6
6
  @use "messages";
7
- @use "agentState";
8
7
  @use "agentIcon";
9
8
  @use "window";
10
9
 
@@ -26,17 +25,36 @@
26
25
  }
27
26
 
28
27
  &__global_error {
29
- padding: 4.5px 12px;
30
- border-radius: 3px;
31
- background: kit-variables.$gd-palette-error-dimmed;
32
28
  margin: variables.$y-spacing variables.$x-spacing;
29
+ display: flex;
30
+ flex-direction: column;
31
+ gap: 15px;
33
32
 
34
- p {
35
- color: kit-variables.$gd-palette-error-base;
33
+ &__buttons {
34
+ display: flex;
35
+ flex-direction: row;
36
+ justify-content: center;
37
+ gap: 15px;
36
38
  }
37
39
 
38
40
  &__details {
39
41
  padding: 6px;
42
+ border: 1px solid kit-variables.$gd-border-color;
43
+ border-radius: 3px;
44
+ background: kit-variables.$gd-color-light;
45
+ }
46
+
47
+ &__details pre {
48
+ margin: 0;
49
+ color: kit-variables.$gd-color-link;
50
+ font-size: 12px;
51
+ font-weight: 400;
52
+ line-height: 18px;
53
+ padding: 0;
54
+ resize: none;
55
+ tab-size: 2;
56
+ text-align: left;
57
+ white-space: pre-wrap;
40
58
  }
41
59
  }
42
60
  }
@@ -13,127 +13,144 @@
13
13
  // Use padding on the right to prevent the scrollbar from overlapping the content
14
14
  margin: variables.$y-spacing 0 0 variables.$x-spacing;
15
15
  padding-right: variables.$x-spacing;
16
+ }
16
17
 
17
- &__scroll {
18
- display: flex;
19
- flex-direction: column;
20
- gap: 15px;
21
- }
18
+ .gd-gen-ai-chat__messages__scroll {
19
+ display: flex;
20
+ flex-direction: column;
21
+ gap: 15px;
22
+ }
22
23
 
23
- &__message {
24
- display: flex;
24
+ .gd-gen-ai-chat__messages__message {
25
+ display: flex;
26
+ }
25
27
 
26
- &--user {
27
- $tail-height: 7px;
28
- $tail-width: 10px;
29
-
30
- max-width: 80%;
31
- background-color: kit-variables.$gd-palette-primary-base;
32
- border-radius: 3px 3px 0 3px;
33
- padding: 4.5px 12px;
34
- position: relative;
35
- align-self: flex-end;
36
- margin-bottom: 29px;
37
- animation: gd-gen-ai-message-in 0.3s ease-out;
38
-
39
- &::after {
40
- content: "";
41
- position: absolute;
42
- bottom: -$tail-height;
43
- right: 0;
44
- border: 0 solid transparent;
45
- border-top: $tail-height solid kit-variables.$gd-palette-primary-base;
46
- border-left-width: $tail-width;
47
- width: 0;
48
- height: 0;
49
- }
50
-
51
- .gd-gen-ai-chat__messages__contents {
52
- color: kit-variables.$gd-color-white;
53
- }
54
-
55
- &--cancelled {
56
- background-color: kit-variables.$gd-palette-primary-base-t80;
57
- }
58
-
59
- &--cancelled::after {
60
- border-top-color: kit-variables.$gd-palette-primary-base-t80;
61
- }
28
+ .gd-gen-ai-chat__messages__message--user {
29
+ .gd-gen-ai-chat__messages__content--text {
30
+ $tail-height: 7px;
31
+ $tail-width: 10px;
32
+
33
+ max-width: 80%;
34
+ background-color: kit-variables.$gd-palette-primary-base;
35
+ border-radius: 3px 3px 0 3px;
36
+ padding: 4.5px 12px;
37
+ position: relative;
38
+ align-self: flex-end;
39
+ margin-bottom: 15px;
40
+ animation: gd-gen-ai-message-in 0.3s ease-out;
41
+
42
+ &::after {
43
+ content: "";
44
+ position: absolute;
45
+ bottom: -$tail-height;
46
+ right: 0;
47
+ border: 0 solid transparent;
48
+ border-top: $tail-height solid kit-variables.$gd-palette-primary-base;
49
+ border-left-width: $tail-width;
50
+ width: 0;
51
+ height: 0;
62
52
  }
63
53
 
64
- &--assistant {
65
- display: flex;
66
- flex-direction: row;
67
- gap: 10px;
68
- align-items: flex-start;
69
- margin-bottom: 39px;
70
-
71
- &--cancelled .gd-gen-ai-chat__messages__contents {
72
- color: kit-variables.$gd-color-disabled;
73
- }
54
+ & p {
55
+ color: kit-variables.$gd-color-white;
74
56
  }
57
+ }
75
58
 
76
- &--error .gd-gen-ai-chat__messages__contents {
77
- flex: unset;
78
- padding: 4.5px 12px;
79
- border-radius: 3px;
80
- background: kit-variables.$gd-palette-error-dimmed;
81
- color: kit-variables.$gd-palette-error-base;
82
- }
59
+ &.gd-gen-ai-chat__messages__message--cancelled .gd-gen-ai-chat__messages__content--text {
60
+ color: kit-variables.$gd-color-white;
61
+ background-color: kit-variables.$gd-palette-primary-base-t80;
62
+ }
83
63
 
84
- &__found_objects ul {
85
- margin: 0;
86
- }
64
+ &.gd-gen-ai-chat__messages__message--cancelled .gd-gen-ai-chat__messages__content--text::after {
65
+ border-top-color: kit-variables.$gd-palette-primary-base-t80;
87
66
  }
67
+ }
68
+
69
+ .gd-gen-ai-chat__messages__message--assistant {
70
+ display: flex;
71
+ flex-direction: row;
72
+ gap: 10px;
73
+ align-items: flex-start;
74
+ margin-bottom: 39px;
75
+ }
76
+
77
+ .gd-gen-ai-chat__messages__contents {
78
+ flex: 1;
79
+ padding: 4.5px 0;
80
+ display: flex;
81
+ flex-direction: column;
82
+ gap: 15px;
83
+ }
88
84
 
89
- &__contents {
90
- flex: 1;
91
- padding: 4.5px 0;
85
+ .gd-gen-ai-chat__messages__content--error {
86
+ flex: unset;
87
+ padding: 4.5px 12px;
88
+ border-radius: 3px;
89
+ background: kit-variables.$gd-palette-error-dimmed;
90
+ color: kit-variables.$gd-palette-error-base;
91
+ }
92
+
93
+ .gd-gen-ai-chat__messages__message--cancelled .gd-gen-ai-chat__messages__content {
94
+ &,
95
+ & p,
96
+ & a,
97
+ & a:hover,
98
+ & a:active,
99
+ & a:visited {
100
+ color: kit-variables.$gd-color-disabled;
92
101
  }
102
+ }
93
103
 
94
- &__empty {
95
- display: flex;
96
- flex-direction: column;
97
- align-items: flex-start;
104
+ .gd-gen-ai-chat__loading {
105
+ animation: gd-gen-ai-message-loading 3s infinite linear;
106
+ }
98
107
 
99
- &__h1--accent {
100
- color: kit-variables.$gd-palette-primary-base;
101
- }
108
+ .gd-gen-ai-chat__visualization {
109
+ margin: 10px 0;
110
+ padding: 10px;
111
+ border: 1px solid kit-variables.$is-focused-background;
112
+ background: kit-variables.$gd-color-white;
113
+ border-radius: 8px;
102
114
 
103
- & .gd-button {
104
- margin-top: 2em;
115
+ &__wrapper {
116
+ height: 250px;
117
+ }
105
118
 
106
- & + .gd-button {
107
- margin-top: 1em;
108
- margin-left: 0;
109
- }
110
- }
119
+ &__title {
120
+ text-align: center;
121
+ }
122
+ }
111
123
 
112
- & .gd-button-text {
113
- display: flex;
114
- align-items: center;
115
- line-height: 20px;
116
- gap: 10px;
117
- }
124
+ .gd-gen-ai-chat__messages__empty {
125
+ display: flex;
126
+ flex-direction: column;
127
+ align-items: flex-start;
128
+
129
+ &__h1--accent {
130
+ color: kit-variables.$gd-palette-primary-base;
118
131
  }
119
132
 
120
- &__visualization {
121
- margin: 10px 0;
122
- padding: 10px;
123
- border: 1px solid kit-variables.$is-focused-background;
124
- background: kit-variables.$gd-color-white;
125
- border-radius: 8px;
133
+ & .gd-button {
134
+ margin-top: 2em;
126
135
 
127
- &__wrapper {
128
- height: 250px;
136
+ & + .gd-button {
137
+ margin-top: 1em;
138
+ margin-left: 0;
129
139
  }
140
+ }
130
141
 
131
- &__title {
132
- text-align: center;
133
- }
142
+ & .gd-button-text {
143
+ display: flex;
144
+ align-items: center;
145
+ line-height: 20px;
146
+ gap: 10px;
134
147
  }
135
148
  }
136
149
 
150
+ .gd-gen-ai-chat__messages__content .gd-hyperlink {
151
+ display: inline;
152
+ }
153
+
137
154
  @keyframes gd-gen-ai-message-in {
138
155
  0% {
139
156
  opacity: 0;
@@ -144,3 +161,15 @@
144
161
  transform: translateY(0);
145
162
  }
146
163
  }
164
+
165
+ @keyframes gd-gen-ai-message-loading {
166
+ 0% {
167
+ opacity: 1;
168
+ }
169
+ 50% {
170
+ opacity: 0.3;
171
+ }
172
+ 100% {
173
+ opacity: 1;
174
+ }
175
+ }
@@ -1,3 +0,0 @@
1
- import React from "react";
2
- export declare const AgentState: React.FC;
3
- //# sourceMappingURL=AgentState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AgentState.d.ts","sourceRoot":"","sources":["../../../src/components/messages/AgentState.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAS9B,CAAC"}
@@ -1,12 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { AgentIcon } from "./AgentIcon.js";
4
- import { Typography } from "@gooddata/sdk-ui-kit";
5
- import { FormattedMessage } from "react-intl";
6
- export const AgentState = () => {
7
- return (React.createElement("div", { className: "gd-gen-ai-chat__agent_state" },
8
- React.createElement(AgentIcon, { loading: true }),
9
- React.createElement(Typography, { className: "gd-gen-ai-chat__agent_state__status", tagName: "p" },
10
- React.createElement(FormattedMessage, { id: "gd.gen-ai.state.in-progress" }))));
11
- };
12
- //# sourceMappingURL=AgentState.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AgentState.js","sourceRoot":"","sources":["../../../src/components/messages/AgentState.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,UAAU,GAAa,GAAG,EAAE;IACrC,OAAO,CACH,6BAAK,SAAS,EAAC,6BAA6B;QACxC,oBAAC,SAAS,IAAC,OAAO,SAAG;QACrB,oBAAC,UAAU,IAAC,SAAS,EAAC,qCAAqC,EAAC,OAAO,EAAC,GAAG;YACnE,oBAAC,gBAAgB,IAAC,EAAE,EAAC,6BAA6B,GAAG,CAC5C,CACX,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { AssistantCancelledMessage } from "../../model.js";
3
- type AssistantCancelledMessageProps = {
4
- message: AssistantCancelledMessage;
5
- };
6
- export declare const AssistantCancelledMessageComponent: React.FC<AssistantCancelledMessageProps>;
7
- export {};
8
- //# sourceMappingURL=AssistantCancelledMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantCancelledMessage.d.ts","sourceRoot":"","sources":["../../../src/components/messages/AssistantCancelledMessage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAK3D,KAAK,8BAA8B,GAAG;IAClC,OAAO,EAAE,yBAAyB,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,kCAAkC,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CASvF,CAAC"}
@@ -1,12 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { Typography } from "@gooddata/sdk-ui-kit";
4
- import { AgentIcon } from "./AgentIcon.js";
5
- import { FormattedMessage } from "react-intl";
6
- export const AssistantCancelledMessageComponent = () => {
7
- return (React.createElement("div", { className: "gd-gen-ai-chat__messages__message gd-gen-ai-chat__messages__message--assistant gd-gen-ai-chat__messages__message--assistant--cancelled" },
8
- React.createElement(AgentIcon, { cancelled: true }),
9
- React.createElement(Typography, { tagName: "p", className: "gd-gen-ai-chat__messages__contents" },
10
- React.createElement(FormattedMessage, { id: "gd.gen-ai.state.cancelled" }))));
11
- };
12
- //# sourceMappingURL=AssistantCancelledMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantCancelledMessage.js","sourceRoot":"","sources":["../../../src/components/messages/AssistantCancelledMessage.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAM9C,MAAM,CAAC,MAAM,kCAAkC,GAA6C,GAAG,EAAE;IAC7F,OAAO,CACH,6BAAK,SAAS,EAAC,wIAAwI;QACnJ,oBAAC,SAAS,IAAC,SAAS,SAAG;QACvB,oBAAC,UAAU,IAAC,OAAO,EAAC,GAAG,EAAC,SAAS,EAAC,oCAAoC;YAClE,oBAAC,gBAAgB,IAAC,EAAE,EAAC,2BAA2B,GAAG,CAC1C,CACX,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- import React from "react";
2
- import { AssistantErrorMessage } from "../../model.js";
3
- import { WrappedComponentProps } from "react-intl";
4
- type AssistantErrorMessageProps = {
5
- message: AssistantErrorMessage;
6
- };
7
- export declare const AssistantErrorMessageComponent: React.FC<import("react-intl").WithIntlProps<AssistantErrorMessageProps & WrappedComponentProps>> & {
8
- WrappedComponent: React.ComponentType<AssistantErrorMessageProps & WrappedComponentProps>;
9
- };
10
- export {};
11
- //# sourceMappingURL=AssistantErrorMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantErrorMessage.d.ts","sourceRoot":"","sources":["../../../src/components/messages/AssistantErrorMessage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAIvD,OAAO,EAAc,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/D,KAAK,0BAA0B,GAAG;IAC9B,OAAO,EAAE,qBAAqB,CAAC;CAClC,CAAC;AAmBF,eAAO,MAAM,8BAA8B;;CAAkD,CAAC"}
@@ -1,14 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { AgentIcon } from "./AgentIcon.js";
4
- import { Typography } from "@gooddata/sdk-ui-kit";
5
- import { FoundObjects } from "./FoundObjects.js";
6
- import { injectIntl } from "react-intl";
7
- const AssistantErrorMessageInnerComponent = ({ message, intl, }) => {
8
- return (React.createElement("div", { className: "gd-gen-ai-chat__messages__message gd-gen-ai-chat__messages__message--assistant gd-gen-ai-chat__messages__message--error" },
9
- React.createElement(AgentIcon, { error: true }),
10
- React.createElement(Typography, { tagName: "p", className: "gd-gen-ai-chat__messages__contents" }, message.content.error ?? intl.formatMessage({ id: "gd.gen-ai.invalid-question" })),
11
- React.createElement(FoundObjects, { foundObjects: message.content.foundObjects })));
12
- };
13
- export const AssistantErrorMessageComponent = injectIntl(AssistantErrorMessageInnerComponent);
14
- //# sourceMappingURL=AssistantErrorMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantErrorMessage.js","sourceRoot":"","sources":["../../../src/components/messages/AssistantErrorMessage.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAyB,MAAM,YAAY,CAAC;AAM/D,MAAM,mCAAmC,GAAiE,CAAC,EACvG,OAAO,EACP,IAAI,GACP,EAAE,EAAE;IACD,OAAO,CACH,6BAAK,SAAS,EAAC,yHAAyH;QACpI,oBAAC,SAAS,IAAC,KAAK,SAAG;QACnB,oBAAC,UAAU,IAAC,OAAO,EAAC,GAAG,EAAC,SAAS,EAAC,oCAAoC,IACjE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,4BAA4B,EAAE,CAAC,CACzE;QAGb,oBAAC,YAAY,IAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,GAAI,CAC1D,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,UAAU,CAAC,mCAAmC,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { AssistantSearchCreateMessage } from "../../model.js";
3
- type AssistantSearchCreateMessageProps = {
4
- message: AssistantSearchCreateMessage;
5
- };
6
- export declare const AssistantSearchCreateMessageComponent: React.FC<AssistantSearchCreateMessageProps>;
7
- export {};
8
- //# sourceMappingURL=AssistantSearchCreateMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantSearchCreateMessage.d.ts","sourceRoot":"","sources":["../../../src/components/messages/AssistantSearchCreateMessage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAM9D,KAAK,iCAAiC,GAAG;IACrC,OAAO,EAAE,4BAA4B,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,qCAAqC,EAAE,KAAK,CAAC,EAAE,CAAC,iCAAiC,CAuB7F,CAAC"}
@@ -1,16 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { AgentIcon } from "./AgentIcon.js";
4
- import { Typography } from "@gooddata/sdk-ui-kit";
5
- import { Visualization } from "./Visualization.js";
6
- import { FoundObjects } from "./FoundObjects.js";
7
- export const AssistantSearchCreateMessageComponent = ({ message, }) => {
8
- const firstVisualization = message.content.createdVisualizations?.objects?.[0];
9
- return (React.createElement("div", { className: "gd-gen-ai-chat__messages__message gd-gen-ai-chat__messages__message--assistant" },
10
- React.createElement(AgentIcon, null),
11
- React.createElement("div", { className: "gd-gen-ai-chat__messages__contents" },
12
- message.content.createdVisualizations?.reasoning ? (React.createElement(Typography, { tagName: "p" }, message.content.createdVisualizations.reasoning)) : null,
13
- firstVisualization ? React.createElement(Visualization, { definition: firstVisualization }) : null,
14
- React.createElement(FoundObjects, { foundObjects: message.content.foundObjects }))));
15
- };
16
- //# sourceMappingURL=AssistantSearchCreateMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantSearchCreateMessage.js","sourceRoot":"","sources":["../../../src/components/messages/AssistantSearchCreateMessage.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAMjD,MAAM,CAAC,MAAM,qCAAqC,GAAgD,CAAC,EAC/F,OAAO,GACV,EAAE,EAAE;IACD,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAE/E,OAAO,CACH,6BAAK,SAAS,EAAC,gFAAgF;QAC3F,oBAAC,SAAS,OAAG;QAEb,6BAAK,SAAS,EAAC,oCAAoC;YAE9C,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC,CAAC,CAChD,oBAAC,UAAU,IAAC,OAAO,EAAC,GAAG,IAAE,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAc,CACzF,CAAC,CAAC,CAAC,IAAI;YAGP,kBAAkB,CAAC,CAAC,CAAC,oBAAC,aAAa,IAAC,UAAU,EAAE,kBAAkB,GAAI,CAAC,CAAC,CAAC,IAAI;YAG9E,oBAAC,YAAY,IAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,GAAI,CAC1D,CACJ,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { AssistantTextMessage } from "../../model.js";
3
- type AssistantTextMessageProps = {
4
- message: AssistantTextMessage;
5
- };
6
- export declare const AssistantTextMessageComponent: React.FC<AssistantTextMessageProps>;
7
- export {};
8
- //# sourceMappingURL=AssistantTextMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantTextMessage.d.ts","sourceRoot":"","sources":["../../../src/components/messages/AssistantTextMessage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAItD,KAAK,yBAAyB,GAAG;IAC7B,OAAO,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAS7E,CAAC"}
@@ -1,10 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { AgentIcon } from "./AgentIcon.js";
4
- import { Typography } from "@gooddata/sdk-ui-kit";
5
- export const AssistantTextMessageComponent = ({ message }) => {
6
- return (React.createElement("div", { className: "gd-gen-ai-chat__messages__message gd-gen-ai-chat__messages__message--assistant" },
7
- React.createElement(AgentIcon, null),
8
- React.createElement(Typography, { tagName: "p", className: "gd-gen-ai-chat__messages__contents" }, message.content.text)));
9
- };
10
- //# sourceMappingURL=AssistantTextMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantTextMessage.js","sourceRoot":"","sources":["../../../src/components/messages/AssistantTextMessage.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAMlD,MAAM,CAAC,MAAM,6BAA6B,GAAwC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAC9F,OAAO,CACH,6BAAK,SAAS,EAAC,gFAAgF;QAC3F,oBAAC,SAAS,OAAG;QACb,oBAAC,UAAU,IAAC,OAAO,EAAC,GAAG,EAAC,SAAS,EAAC,oCAAoC,IACjE,OAAO,CAAC,OAAO,CAAC,IAAI,CACZ,CACX,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { GenAIChatFoundObjects } from "@gooddata/sdk-model";
3
- type FoundObjectsProps = {
4
- foundObjects?: GenAIChatFoundObjects;
5
- };
6
- export declare const FoundObjects: React.FC<FoundObjectsProps>;
7
- export {};
8
- //# sourceMappingURL=FoundObjects.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FoundObjects.d.ts","sourceRoot":"","sources":["../../../src/components/messages/FoundObjects.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAA6B,MAAM,qBAAqB,CAAC;AAEvF,KAAK,iBAAiB,GAAG;IACrB,YAAY,CAAC,EAAE,qBAAqB,CAAC;CACxC,CAAC;AAIF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAsBpD,CAAC"}
@@ -1,28 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { Hyperlink, Typography } from "@gooddata/sdk-ui-kit";
4
- const SUPPORTED_OBJECT_TYPES = ["visualization", "dashboard"];
5
- export const FoundObjects = ({ foundObjects }) => {
6
- const first5FoundObjects = React.useMemo(() => {
7
- return foundObjects?.objects?.filter((obj) => SUPPORTED_OBJECT_TYPES.includes(obj.type)).slice(0, 5);
8
- }, [foundObjects?.objects]);
9
- const foundObjectsReasoning = foundObjects?.reasoning;
10
- if (!first5FoundObjects) {
11
- return null;
12
- }
13
- return (React.createElement("div", { className: "gd-gen-ai-chat__messages__message__found_objects" },
14
- React.createElement(Typography, { tagName: "p" }, foundObjectsReasoning),
15
- React.createElement("ul", null, first5FoundObjects.map((obj) => (React.createElement("li", { key: obj.id },
16
- React.createElement(Hyperlink, { href: getFoundObjectLink(obj), text: obj.title })))))));
17
- };
18
- const getFoundObjectLink = (obj) => {
19
- switch (obj.type) {
20
- case "visualization":
21
- return `/analyze/#/${obj.workspaceId}/${obj.id}/edit`;
22
- case "dashboard":
23
- return `/dashboards/#/workspace/${obj.workspaceId}/dashboard/${obj.id}`;
24
- default:
25
- throw new Error(`Unsupported object type ${obj.type}`);
26
- }
27
- };
28
- //# sourceMappingURL=FoundObjects.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FoundObjects.js","sourceRoot":"","sources":["../../../src/components/messages/FoundObjects.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAO7D,MAAM,sBAAsB,GAAG,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;AAE9D,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;IAC1E,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC1C,OAAO,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,sBAAsB,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzG,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5B,MAAM,qBAAqB,GAAG,YAAY,EAAE,SAAS,CAAC;IAEtD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CACH,6BAAK,SAAS,EAAC,kDAAkD;QAC7D,oBAAC,UAAU,IAAC,OAAO,EAAC,GAAG,IAAE,qBAAqB,CAAc;QAC5D,gCACK,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAC7B,4BAAI,GAAG,EAAE,GAAG,CAAC,EAAE;YACX,oBAAC,SAAS,IAAC,IAAI,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,GAAI,CAC5D,CACR,CAAC,CACD,CACH,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,GAA8B,EAAE,EAAE;IAC1D,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,eAAe;YAChB,OAAO,cAAc,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC;QAC1D,KAAK,WAAW;YACZ,OAAO,2BAA2B,GAAG,CAAC,WAAW,cAAc,GAAG,CAAC,EAAE,EAAE,CAAC;QAC5E;YACI,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;AACL,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { SystemMessage } from "../../model.js";
3
- type SystemMessageProps = {
4
- message: SystemMessage;
5
- };
6
- export declare const SystemMessageComponent: React.FC<SystemMessageProps>;
7
- export {};
8
- //# sourceMappingURL=SystemMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SystemMessage.d.ts","sourceRoot":"","sources":["../../../src/components/messages/SystemMessage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,KAAK,kBAAkB,GAAG;IACtB,OAAO,EAAE,aAAa,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAM/D,CAAC"}
@@ -1,7 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- export const SystemMessageComponent = ({ message }) => {
4
- return (React.createElement("div", { className: "gd-gen-ai-chat__messages__message mgd-gen-ai-chat__messages__message--system" },
5
- React.createElement("div", { className: "gd-gen-ai-chat__messages__contents" }, message.content.text)));
6
- };
7
- //# sourceMappingURL=SystemMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SystemMessage.js","sourceRoot":"","sources":["../../../src/components/messages/SystemMessage.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,MAAM,CAAC,MAAM,sBAAsB,GAAiC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IAChF,OAAO,CACH,6BAAK,SAAS,EAAC,8EAA8E;QACzF,6BAAK,SAAS,EAAC,oCAAoC,IAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAO,CAC9E,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { UserTextMessage } from "../../model.js";
3
- type UserTextMessageProps = {
4
- message: UserTextMessage;
5
- };
6
- export declare const UserTextMessageComponent: React.FC<UserTextMessageProps>;
7
- export {};
8
- //# sourceMappingURL=UserTextMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UserTextMessage.d.ts","sourceRoot":"","sources":["../../../src/components/messages/UserTextMessage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAIjD,KAAK,oBAAoB,GAAG;IACxB,OAAO,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAcnE,CAAC"}
@@ -1,10 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { Typography } from "@gooddata/sdk-ui-kit";
4
- import cx from "classnames";
5
- export const UserTextMessageComponent = ({ message }) => {
6
- const classNames = cx("gd-gen-ai-chat__messages__message", "gd-gen-ai-chat__messages__message--user", message.content.cancelled && "gd-gen-ai-chat__messages__message--user--cancelled");
7
- return (React.createElement("div", { className: classNames },
8
- React.createElement(Typography, { tagName: "p", className: "gd-gen-ai-chat__messages__contents" }, message.content.text)));
9
- };
10
- //# sourceMappingURL=UserTextMessage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UserTextMessage.js","sourceRoot":"","sources":["../../../src/components/messages/UserTextMessage.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,MAAM,YAAY,CAAC;AAM5B,MAAM,CAAC,MAAM,wBAAwB,GAAmC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACpF,MAAM,UAAU,GAAG,EAAE,CACjB,mCAAmC,EACnC,yCAAyC,EACzC,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,oDAAoD,CACpF,CAAC;IAEF,OAAO,CACH,6BAAK,SAAS,EAAE,UAAU;QACtB,oBAAC,UAAU,IAAC,OAAO,EAAC,GAAG,EAAC,SAAS,EAAC,oCAAoC,IACjE,OAAO,CAAC,OAAO,CAAC,IAAI,CACZ,CACX,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import React from "react";
2
- import { GenAIChatCreatedVisualization } from "@gooddata/sdk-model";
3
- type VisualizationProps = {
4
- definition: GenAIChatCreatedVisualization;
5
- };
6
- export declare const Visualization: React.FC<VisualizationProps>;
7
- export {};
8
- //# sourceMappingURL=Visualization.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Visualization.d.ts","sourceRoot":"","sources":["../../../src/components/messages/Visualization.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAMpE,KAAK,kBAAkB,GAAG;IACtB,UAAU,EAAE,6BAA6B,CAAC;CAC7C,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAuEtD,CAAC"}
@@ -1,39 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import React from "react";
3
- import { BarChart, ColumnChart, Headline, LineChart, PieChart } from "@gooddata/sdk-ui-charts";
4
- import { PivotTable } from "@gooddata/sdk-ui-pivot";
5
- import { Typography } from "@gooddata/sdk-ui-kit";
6
- import { useExecution } from "./useExecution.js";
7
- export const Visualization = ({ definition }) => {
8
- const { metrics, dimensions } = useExecution(definition);
9
- return (React.createElement("div", { className: "gd-gen-ai-chat__messages__visualization" },
10
- React.createElement("div", { className: "gd-gen-ai-chat__messages__visualization__wrapper" }, (() => {
11
- switch (definition.visualizationType) {
12
- case "BAR":
13
- return (React.createElement(BarChart, { height: 300, measures: metrics, viewBy: [dimensions[0], dimensions[1]].filter(Boolean), stackBy: metrics.length <= 1 ? dimensions[2] : undefined, config: {
14
- // Better visibility with stacked bars if there are multiple metrics and dimensions
15
- stackMeasures: metrics.length > 1 && dimensions.length === 2,
16
- } }));
17
- case "COLUMN":
18
- return (React.createElement(ColumnChart, { height: 300, measures: metrics, viewBy: [dimensions[0], dimensions[1]].filter(Boolean), stackBy: metrics.length <= 1 ? dimensions[2] : undefined, config: {
19
- // Better visibility with stacked bars if there are multiple metrics and dimensions
20
- stackMeasures: metrics.length > 1 && dimensions.length === 2,
21
- } }));
22
- case "LINE":
23
- return (React.createElement(LineChart, { height: 300, measures: metrics, trendBy: dimensions[0], segmentBy: metrics.length <= 1 ? dimensions[1] : undefined }));
24
- case "PIE":
25
- return (React.createElement(PieChart, { height: 300, measures: metrics, viewBy: metrics.length <= 1 ? dimensions[0] : undefined }));
26
- case "TABLE":
27
- return React.createElement(PivotTable, { measures: metrics, rows: dimensions });
28
- case "HEADLINE":
29
- return (React.createElement(Headline, { height: 300, primaryMeasure: metrics[0], secondaryMeasures: [metrics[1], metrics[2]].filter(Boolean) }));
30
- default:
31
- return assertNever(definition.visualizationType);
32
- }
33
- })()),
34
- React.createElement(Typography, { tagName: "p", className: "gd-gen-ai-chat__messages__visualization__title" }, definition.title)));
35
- };
36
- const assertNever = (value) => {
37
- throw new Error("Unknown visualization type: " + value);
38
- };
39
- //# sourceMappingURL=Visualization.js.map