@gooddata/sdk-ui-gen-ai 10.15.0-alpha.9 → 10.15.0

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 (52) hide show
  1. package/NOTICE +133 -21
  2. package/esm/components/Input.d.ts.map +1 -1
  3. package/esm/components/Input.js +14 -3
  4. package/esm/components/Input.js.map +1 -1
  5. package/esm/components/messages/AgentIcon.d.ts +1 -1
  6. package/esm/components/messages/AgentIcon.d.ts.map +1 -1
  7. package/esm/components/messages/AgentIcon.js +4 -4
  8. package/esm/components/messages/AgentIcon.js.map +1 -1
  9. package/esm/components/messages/AssistantMessage.d.ts +8 -1
  10. package/esm/components/messages/AssistantMessage.d.ts.map +1 -1
  11. package/esm/components/messages/AssistantMessage.js +30 -3
  12. package/esm/components/messages/AssistantMessage.js.map +1 -1
  13. package/esm/components/messages/contents/VisualizationContents.js +15 -15
  14. package/esm/components/messages/contents/VisualizationContents.js.map +1 -1
  15. package/esm/components/messages/contents/useExecution.d.ts +2 -1
  16. package/esm/components/messages/contents/useExecution.d.ts.map +1 -1
  17. package/esm/components/messages/contents/useExecution.js +51 -1
  18. package/esm/components/messages/contents/useExecution.js.map +1 -1
  19. package/esm/localization/bundles/en-US.json +10 -0
  20. package/esm/model.d.ts +2 -1
  21. package/esm/model.d.ts.map +1 -1
  22. package/esm/model.js +1 -0
  23. package/esm/model.js.map +1 -1
  24. package/esm/sdk-ui-gen-ai.d.ts +2 -0
  25. package/esm/store/index.d.ts +1 -1
  26. package/esm/store/index.d.ts.map +1 -1
  27. package/esm/store/index.js +1 -1
  28. package/esm/store/index.js.map +1 -1
  29. package/esm/store/messages/messagesSlice.d.ts +11 -6
  30. package/esm/store/messages/messagesSlice.d.ts.map +1 -1
  31. package/esm/store/messages/messagesSlice.js +27 -22
  32. package/esm/store/messages/messagesSlice.js.map +1 -1
  33. package/esm/store/sideEffects/index.js +3 -3
  34. package/esm/store/sideEffects/index.js.map +1 -1
  35. package/esm/store/sideEffects/onUserFeedback.d.ts +14 -0
  36. package/esm/store/sideEffects/onUserFeedback.d.ts.map +1 -0
  37. package/esm/store/sideEffects/onUserFeedback.js +26 -0
  38. package/esm/store/sideEffects/onUserFeedback.js.map +1 -0
  39. package/esm/store/sideEffects/onUserMessage.d.ts +10 -5
  40. package/esm/store/sideEffects/onUserMessage.d.ts.map +1 -1
  41. package/esm/store/sideEffects/onUserMessage.js +51 -19
  42. package/esm/store/sideEffects/onUserMessage.js.map +1 -1
  43. package/package.json +12 -12
  44. package/styles/css/main.css +44 -1
  45. package/styles/css/main.css.map +1 -1
  46. package/styles/css/messages.css +44 -1
  47. package/styles/css/messages.css.map +1 -1
  48. package/styles/scss/messages.scss +50 -1
  49. package/esm/store/sideEffects/threadPolling.d.ts +0 -16
  50. package/esm/store/sideEffects/threadPolling.d.ts.map +0 -1
  51. package/esm/store/sideEffects/threadPolling.js +0 -86
  52. package/esm/store/sideEffects/threadPolling.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-gen-ai",
3
- "version": "10.15.0-alpha.9",
3
+ "version": "10.15.0",
4
4
  "description": "GoodData GenAI SDK",
5
5
  "repository": {
6
6
  "type": "git",
@@ -45,14 +45,14 @@
45
45
  "uuid": "^8.3.2",
46
46
  "react-loading-skeleton": "^3.4.0",
47
47
  "react-markdown": "^9.0.1",
48
- "@gooddata/api-client-tiger": "10.15.0-alpha.9",
49
- "@gooddata/sdk-backend-spi": "10.15.0-alpha.9",
50
- "@gooddata/sdk-ui": "10.15.0-alpha.9",
51
- "@gooddata/sdk-model": "10.15.0-alpha.9",
52
- "@gooddata/sdk-ui-pivot": "10.15.0-alpha.9",
53
- "@gooddata/sdk-ui-charts": "10.15.0-alpha.9",
54
- "@gooddata/util": "10.15.0-alpha.9",
55
- "@gooddata/sdk-ui-kit": "10.15.0-alpha.9"
48
+ "@gooddata/api-client-tiger": "10.15.0",
49
+ "@gooddata/sdk-ui": "10.15.0",
50
+ "@gooddata/sdk-backend-spi": "10.15.0",
51
+ "@gooddata/sdk-model": "10.15.0",
52
+ "@gooddata/sdk-ui-charts": "10.15.0",
53
+ "@gooddata/sdk-ui-pivot": "10.15.0",
54
+ "@gooddata/util": "10.15.0",
55
+ "@gooddata/sdk-ui-kit": "10.15.0"
56
56
  },
57
57
  "peerDependencies": {
58
58
  "react": "^16.10.0 || ^17.0.0 || ^18.0.0",
@@ -101,9 +101,9 @@
101
101
  "vitest-dom": "0.1.1",
102
102
  "@types/react-native-listener": "~1.1.3",
103
103
  "@types/uuid": "^8.3.4",
104
- "@gooddata/reference-workspace": "10.15.0-alpha.9",
105
- "@gooddata/i18n-toolkit": "10.15.0-alpha.9",
106
- "@gooddata/sdk-backend-mockingbird": "10.15.0-alpha.9"
104
+ "@gooddata/reference-workspace": "10.15.0",
105
+ "@gooddata/i18n-toolkit": "10.15.0",
106
+ "@gooddata/sdk-backend-mockingbird": "10.15.0"
107
107
  },
108
108
  "scripts": {
109
109
  "clean": "rm -rf ci dist esm coverage *.log styles/css tsconfig.tsbuildinfo",
@@ -215,6 +215,49 @@
215
215
  display: flex;
216
216
  }
217
217
 
218
+ .gd-gen-ai-chat__messages__message__contents_wrap {
219
+ display: flex;
220
+ flex-direction: column;
221
+ gap: 5px;
222
+ }
223
+
224
+ .gd-gen-ai-chat__messages__feedback {
225
+ display: flex;
226
+ flex-direction: row;
227
+ gap: 10px;
228
+ visibility: hidden;
229
+ opacity: 0;
230
+ height: 20px;
231
+ }
232
+
233
+ .gd-gen-ai-chat__messages__message:last-child .gd-gen-ai-chat__messages__feedback,
234
+ .gd-gen-ai-chat__messages__message:hover .gd-gen-ai-chat__messages__feedback {
235
+ visibility: visible;
236
+ opacity: 1;
237
+ transition: opacity 0.2s;
238
+ }
239
+
240
+ .gd-gen-ai-chat__messages__feedback__button {
241
+ background: none;
242
+ border: none;
243
+ outline: none;
244
+ cursor: pointer;
245
+ }
246
+ .gd-gen-ai-chat__messages__feedback__button path {
247
+ opacity: 0.8;
248
+ transition: opacity 0.2s, fill 0.2s;
249
+ }
250
+ .gd-gen-ai-chat__messages__feedback__button:hover path {
251
+ fill: var(--gd-palette-primary-base, #14b2e2);
252
+ opacity: 1;
253
+ }
254
+ .gd-gen-ai-chat__messages__feedback__button--positive path, .gd-gen-ai-chat__messages__feedback__button--positive:hover path {
255
+ fill: var(--gd-palette-success-base, #00c18d);
256
+ }
257
+ .gd-gen-ai-chat__messages__feedback__button--negative path, .gd-gen-ai-chat__messages__feedback__button--negative:hover path {
258
+ fill: var(--gd-palette-error-base, #e54d42);
259
+ }
260
+
218
261
  .gd-gen-ai-chat__messages__message--user .gd-gen-ai-chat__messages__content--text {
219
262
  max-width: 80%;
220
263
  background-color: var(--gd-palette-primary-base, #14b2e2);
@@ -252,7 +295,7 @@
252
295
  flex-direction: row;
253
296
  gap: 10px;
254
297
  align-items: flex-start;
255
- margin-bottom: 39px;
298
+ margin-bottom: 19px;
256
299
  }
257
300
 
258
301
  .gd-gen-ai-chat__messages__contents {
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../node_modules/react-loading-skeleton/dist/skeleton.css","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/Form/_mixins.scss","../scss/input.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss","../scss/messages.scss","../scss/variables.scss","../scss/agentIcon.scss","../scss/window.scss","../scss/main.scss"],"names":[],"mappings":"AAAA;EACE;IACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAMA;EAEA;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;;ACuEJ;AA4DA;AClLA;AAAA;AAAA;ACIA;EACI;EACA;;AAEA;EDWA;EACA;EACA;EACA;EACA;EACA;EACA,OECY;EFAZ,YEba;EFcb;EACA,aE8Dc;EF7Dd;EDkCA,0BChC2B;EDiC3B,6BCjC2B;EDkC3B,qBClC2B;EDsC3B,0BCtCgC;EDuChC,6BCvCgC;EDwChC,qBCxCgC;ED4ChC,iCC5CuC;ED6CvC,oCC7CuC;ED8CvC,4BC9CuC;EDrBvC;EAQI;EEMA;EACA;EACA;EACA;EACA;EACA;;AFmHJ;EEhIQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AF+HrD;EEpIQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AFmIrD;EExIQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AFuIrD;EE5IQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AAUjD;EAKI,cCmGiB;;AHSzB;EE/GY,OCXA;;AH8HZ;EEnHY,OCXA;;AHkIZ;EEvHY,OCXA;;AHsIZ;EE3HY,OCXA;;ADiBR;EFrBA;EE0BI;EACA,cCRc;;ADad;EFhCJ;EEoCQ,OCrCI;EDsCJ,cC+EO;ED9EP,kBCzCC;;AD8Cb;EFEA,0BEDmC;EFEnC,6BEFmC;EFGnC,qBEHmC;EFOnC,0BEPwC;EFQxC,6BERwC;EFSxC,qBETwC;EFaxC,iCEb+C;EFc/C,oCEd+C;EFe/C,4BEf+C;EAE3C;EACA;EACA;EACA;EACA;;AAEA;EAEI,MClDI;;ADqDR;EAEI,MCxCc;;AD2ClB;EAEI;;AAEA;AAAA;AAAA;EAEI,MCrEI;;AD2EZ;AAAA;EAEI,MCzDc;;AD4DlB;EAEI;;AAEA;AAAA;AAAA;EAEI,MCtFI;;;ACbpB;EACI;EACA;EAGA;EACA,eCZQ;;;ADeZ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAIA;EAII;EACA,kBDQkB;ECPlB;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA,mBAlBS;EAmBT;EACA;;AAGJ;EACI,ODrCK;;ACyCb;EACI,OD1CS;EC2CT,kBDZsB;;ACe1B;EACI,kBDhBsB;;;ACoB9B;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA,YD5BsB;EC6BtB,OD/BoB;;;ACmCpB;EAMI,OD9EY;;;ACkFpB;EACI;;;AAGJ;EACI;EACA;EACA;EACA,YD9Fa;EC+Fb;;AAEA;EACI;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;;AAEA;EACI,ODxFkB;;AC2FtB;EACI;;AAEA;EACI;EACA;;AAIR;EACI;EACA;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;AAIR;EACI;IACI;;EAEJ;IACI;;EAEJ;IACI;;;AE7JR;EACI;EACA;EACA;;AAEA;EACI,MHuBoB;;AGpBxB;EACI;EACA;EACA;;AAGJ;EACI,MHUkB;;AGNlB;EACI;;AAGJ;EAGI;;AAEA;EACI;;AAMR;EACI;;AAKJ;EACI;EACA;EACA;EACA;;AAKJ;EACI,MHhDK;;AGmDT;EACI,MHlDQ;;AGuDZ;EACI,YHpCc;;AGsClB;EACI,YAvEuB;;AAyE3B;EACI,YHnCkB;;;AGwC9B;EACI;IACI;;EAEJ;IACI;;;AAIR;EACI;IACI;;EAEJ;IACI;;EAEJ;IACI;;;AAIR;EACI;IACI,MHnEoB;;EGqExB;IACI,MHzEkB;;EG2EtB;IACI,MHzEoB;;;AG6E5B;EACI;IACI;;EAEJ;IACI,MHlEkB;;EGoEtB;IACI;;;ACzHR;EACI;EACA;EACA,kBJQa;EIPb;EACA;EAEA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA,kBJRU;;AIWd;EACI;EACA;;AAEA;EACI;EACA,MJ9BI;;AIiCR;EACI;;AAEA;EACI,MJ1CI;;AI8CZ;EACI;EACA;;AAIA;EACI,MJhBQ;;AIsBZ;EACI,MJxCU;;AI4ClB;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA,YJ/EI;EIgFJ;EACA,OJ9FK;EI+FL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EAEI;;;AClHZ;EACI;EACA;EACA;EACA,KHXQ;EGYR;EACA;EACA;EACA,kBLCa;;AKCb;EACI;EACA,OLCe;EKAf;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA,YLzBK;;AK4BT;EACI;EACA,OLvBI;EKwBJ;EACA;EACA;EACA;EACA;EACA;EACA;EACA","file":"main.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../../node_modules/react-loading-skeleton/dist/skeleton.css","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/Form/_mixins.scss","../scss/input.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss","../scss/messages.scss","../scss/variables.scss","../scss/agentIcon.scss","../scss/window.scss","../scss/main.scss"],"names":[],"mappings":"AAAA;EACE;IACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAMA;EAEA;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;;ACuEJ;AA4DA;AClLA;AAAA;AAAA;ACIA;EACI;EACA;;AAEA;EDWA;EACA;EACA;EACA;EACA;EACA;EACA,OECY;EFAZ,YEba;EFcb;EACA,aE8Dc;EF7Dd;EDkCA,0BChC2B;EDiC3B,6BCjC2B;EDkC3B,qBClC2B;EDsC3B,0BCtCgC;EDuChC,6BCvCgC;EDwChC,qBCxCgC;ED4ChC,iCC5CuC;ED6CvC,oCC7CuC;ED8CvC,4BC9CuC;EDrBvC;EAQI;EEMA;EACA;EACA;EACA;EACA;EACA;;AFmHJ;EEhIQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AF+HrD;EEpIQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AFmIrD;EExIQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AFuIrD;EE5IQ;EF+CR,0BE1CuC;EF2CvC,6BE3CuC;EF4CvC,qBE5CuC;EFgDvC,0BEhD8C;EFiD9C,6BEjD8C;EFkD9C,qBElD8C;EFsD9C,iCEtDqD;EFuDrD,oCEvDqD;EFwDrD,4BExDqD;;AAUjD;EAKI,cCmGiB;;AHSzB;EE/GY,OCXA;;AH8HZ;EEnHY,OCXA;;AHkIZ;EEvHY,OCXA;;AHsIZ;EE3HY,OCXA;;ADiBR;EFrBA;EE0BI;EACA,cCRc;;ADad;EFhCJ;EEoCQ,OCrCI;EDsCJ,cC+EO;ED9EP,kBCzCC;;AD8Cb;EFEA,0BEDmC;EFEnC,6BEFmC;EFGnC,qBEHmC;EFOnC,0BEPwC;EFQxC,6BERwC;EFSxC,qBETwC;EFaxC,iCEb+C;EFc/C,oCEd+C;EFe/C,4BEf+C;EAE3C;EACA;EACA;EACA;EACA;;AAEA;EAEI,MClDI;;ADqDR;EAEI,MCxCc;;AD2ClB;EAEI;;AAEA;AAAA;AAAA;EAEI,MCrEI;;AD2EZ;AAAA;EAEI,MCzDc;;AD4DlB;EAEI;;AAEA;AAAA;AAAA;EAEI,MCtFI;;;ACbpB;EACI;EACA;EAGA;EACA,eCZQ;;;ADeZ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;AAAA;EAEI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI,MDpBkB;ECqBlB;;AAGJ;EAEI,MDDkB;;ACItB;EAEI,MDdgB;;;ACmBpB;EAII;EACA,kBDzCkB;EC0ClB;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA,mBAlBS;EAmBT;EACA;;AAGJ;EACI,ODtFK;;AC0Fb;EACI,OD3FS;EC4FT,kBD7DsB;;ACgE1B;EACI,kBDjEsB;;;ACqE9B;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA,YD7EsB;EC8EtB,ODhFoB;;;ACoFpB;EAMI,OD/HY;;;ACmIpB;EACI;;;AAGJ;EACI;EACA;EACA;EACA,YD/Ia;ECgJb;;AAEA;EACI;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;;AAEA;EACI,ODzIkB;;AC4ItB;EACI;;AAEA;EACI;EACA;;AAIR;EACI;EACA;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;AAIR;EACI;IACI;;EAEJ;IACI;;EAEJ;IACI;;;AE9MR;EACI;EACA;EACA;;AAEA;EACI,MHuBoB;;AGpBxB;EACI;EACA;EACA;;AAGJ;EACI,MHUkB;;AGNlB;EACI;;AAGJ;EAGI;;AAEA;EACI;;AAMR;EACI;;AAKJ;EACI;EACA;EACA;EACA;;AAKJ;EACI,MHhDK;;AGmDT;EACI,MHlDQ;;AGuDZ;EACI,YHpCc;;AGsClB;EACI,YAvEuB;;AAyE3B;EACI,YHnCkB;;;AGwC9B;EACI;IACI;;EAEJ;IACI;;;AAIR;EACI;IACI;;EAEJ;IACI;;EAEJ;IACI;;;AAIR;EACI;IACI,MHnEoB;;EGqExB;IACI,MHzEkB;;EG2EtB;IACI,MHzEoB;;;AG6E5B;EACI;IACI;;EAEJ;IACI,MHlEkB;;EGoEtB;IACI;;;ACzHR;EACI;EACA;EACA,kBJQa;EIPb;EACA;EAEA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA,kBJRU;;AIWd;EACI;EACA;;AAEA;EACI;EACA,MJ9BI;;AIiCR;EACI;;AAEA;EACI,MJ1CI;;AI8CZ;EACI;EACA;;AAIA;EACI,MJhBQ;;AIsBZ;EACI,MJxCU;;AI4ClB;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA,YJ/EI;EIgFJ;EACA,OJ9FK;EI+FL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EAEI;;;AClHZ;EACI;EACA;EACA;EACA,KHXQ;EGYR;EACA;EACA;EACA,kBLCa;;AKCb;EACI;EACA,OLCe;EKAf;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA,YLzBK;;AK4BT;EACI;EACA,OLvBI;EKwBJ;EACA;EACA;EACA;EACA;EACA;EACA;EACA","file":"main.css"}
@@ -20,6 +20,49 @@
20
20
  display: flex;
21
21
  }
22
22
 
23
+ .gd-gen-ai-chat__messages__message__contents_wrap {
24
+ display: flex;
25
+ flex-direction: column;
26
+ gap: 5px;
27
+ }
28
+
29
+ .gd-gen-ai-chat__messages__feedback {
30
+ display: flex;
31
+ flex-direction: row;
32
+ gap: 10px;
33
+ visibility: hidden;
34
+ opacity: 0;
35
+ height: 20px;
36
+ }
37
+
38
+ .gd-gen-ai-chat__messages__message:last-child .gd-gen-ai-chat__messages__feedback,
39
+ .gd-gen-ai-chat__messages__message:hover .gd-gen-ai-chat__messages__feedback {
40
+ visibility: visible;
41
+ opacity: 1;
42
+ transition: opacity 0.2s;
43
+ }
44
+
45
+ .gd-gen-ai-chat__messages__feedback__button {
46
+ background: none;
47
+ border: none;
48
+ outline: none;
49
+ cursor: pointer;
50
+ }
51
+ .gd-gen-ai-chat__messages__feedback__button path {
52
+ opacity: 0.8;
53
+ transition: opacity 0.2s, fill 0.2s;
54
+ }
55
+ .gd-gen-ai-chat__messages__feedback__button:hover path {
56
+ fill: var(--gd-palette-primary-base, #14b2e2);
57
+ opacity: 1;
58
+ }
59
+ .gd-gen-ai-chat__messages__feedback__button--positive path, .gd-gen-ai-chat__messages__feedback__button--positive:hover path {
60
+ fill: var(--gd-palette-success-base, #00c18d);
61
+ }
62
+ .gd-gen-ai-chat__messages__feedback__button--negative path, .gd-gen-ai-chat__messages__feedback__button--negative:hover path {
63
+ fill: var(--gd-palette-error-base, #e54d42);
64
+ }
65
+
23
66
  .gd-gen-ai-chat__messages__message--user .gd-gen-ai-chat__messages__content--text {
24
67
  max-width: 80%;
25
68
  background-color: var(--gd-palette-primary-base, #14b2e2);
@@ -57,7 +100,7 @@
57
100
  flex-direction: row;
58
101
  gap: 10px;
59
102
  align-items: flex-start;
60
- margin-bottom: 39px;
103
+ margin-bottom: 19px;
61
104
  }
62
105
 
63
106
  .gd-gen-ai-chat__messages__contents {
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../node_modules/@gooddata/sdk-ui-kit/styles/scss/mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/Form/_mixins.scss","../scss/messages.scss","../scss/variables.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss"],"names":[],"mappings":"AA0HA;AA4DA;AClLA;AAAA;AAAA;ACIA;EACI;EACA;EAGA;EACA,eCZQ;;;ADeZ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAIA;EAII;EACA,kBEQkB;EFPlB;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA,mBAlBS;EAmBT;EACA;;AAGJ;EACI,OErCK;;AFyCb;EACI,OE1CS;EF2CT,kBEZsB;;AFe1B;EACI,kBEhBsB;;;AFoB9B;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA,YE5BsB;EF6BtB,OE/BoB;;;AFmCpB;EAMI,OE9EY;;;AFkFpB;EACI;;;AAGJ;EACI;EACA;EACA;EACA,YE9Fa;EF+Fb;;AAEA;EACI;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;;AAEA;EACI,OExFkB;;AF2FtB;EACI;;AAEA;EACI;EACA;;AAIR;EACI;EACA;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;AAIR;EACI;IACI;;EAEJ;IACI;;EAEJ;IACI","file":"messages.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../../node_modules/@gooddata/sdk-ui-kit/styles/scss/mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/Form/_mixins.scss","../scss/messages.scss","../scss/variables.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss"],"names":[],"mappings":"AA0HA;AA4DA;AClLA;AAAA;AAAA;ACIA;EACI;EACA;EAGA;EACA,eCZQ;;;ADeZ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;AAAA;EAEI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI,MEpBkB;EFqBlB;;AAGJ;EAEI,MEDkB;;AFItB;EAEI,MEdgB;;;AFmBpB;EAII;EACA,kBEzCkB;EF0ClB;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA,mBAlBS;EAmBT;EACA;;AAGJ;EACI,OEtFK;;AF0Fb;EACI,OE3FS;EF4FT,kBE7DsB;;AFgE1B;EACI,kBEjEsB;;;AFqE9B;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA,YE7EsB;EF8EtB,OEhFoB;;;AFoFpB;EAMI,OE/HY;;;AFmIpB;EACI;;;AAGJ;EACI;EACA;EACA;EACA,YE/Ia;EFgJb;;AAEA;EACI;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;;AAEA;EACI,OEzIkB;;AF4ItB;EACI;;AAEA;EACI;EACA;;AAIR;EACI;EACA;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;IACI;IACA;;EAEJ;IACI;IACA;;;AAIR;EACI;IACI;;EAEJ;IACI;;EAEJ;IACI","file":"messages.css"}
@@ -25,6 +25,55 @@
25
25
  display: flex;
26
26
  }
27
27
 
28
+ .gd-gen-ai-chat__messages__message__contents_wrap {
29
+ display: flex;
30
+ flex-direction: column;
31
+ gap: 5px;
32
+ }
33
+
34
+ .gd-gen-ai-chat__messages__feedback {
35
+ display: flex;
36
+ flex-direction: row;
37
+ gap: 10px;
38
+ visibility: hidden;
39
+ opacity: 0;
40
+ height: 20px;
41
+ }
42
+
43
+ .gd-gen-ai-chat__messages__message:last-child .gd-gen-ai-chat__messages__feedback,
44
+ .gd-gen-ai-chat__messages__message:hover .gd-gen-ai-chat__messages__feedback {
45
+ visibility: visible;
46
+ opacity: 1;
47
+ transition: opacity 0.2s;
48
+ }
49
+
50
+ .gd-gen-ai-chat__messages__feedback__button {
51
+ background: none;
52
+ border: none;
53
+ outline: none;
54
+ cursor: pointer;
55
+
56
+ & path {
57
+ opacity: 0.8;
58
+ transition: opacity 0.2s, fill 0.2s;
59
+ }
60
+
61
+ &:hover path {
62
+ fill: kit-variables.$gd-palette-primary-base;
63
+ opacity: 1;
64
+ }
65
+
66
+ &--positive path,
67
+ &--positive:hover path {
68
+ fill: kit-variables.$gd-palette-success-base;
69
+ }
70
+
71
+ &--negative path,
72
+ &--negative:hover path {
73
+ fill: kit-variables.$gd-palette-error-base;
74
+ }
75
+ }
76
+
28
77
  .gd-gen-ai-chat__messages__message--user {
29
78
  .gd-gen-ai-chat__messages__content--text {
30
79
  $tail-height: 7px;
@@ -71,7 +120,7 @@
71
120
  flex-direction: row;
72
121
  gap: 10px;
73
122
  align-items: flex-start;
74
- margin-bottom: 39px;
123
+ margin-bottom: 19px;
75
124
  }
76
125
 
77
126
  .gd-gen-ai-chat__messages__contents {
@@ -1,16 +0,0 @@
1
- import { PayloadAction } from "@reduxjs/toolkit";
2
- import { AssistantMessage } from "../../model.js";
3
- /**
4
- * Load thread history and put it to the store.
5
- * @internal
6
- */
7
- export declare function threadPolling({ payload: { message } }: PayloadAction<{
8
- message: AssistantMessage;
9
- }>): Generator<import("redux-saga/effects").SelectEffect | import("redux-saga/effects").GetContextEffect | import("redux-saga/effects").PutEffect<{
10
- payload: {
11
- error: string;
12
- assistantMessageId: string;
13
- };
14
- type: "messages/evaluateMessageErrorAction";
15
- }> | import("redux-saga/effects").RaceEffect<import("redux-saga/effects").TakeEffect | import("redux-saga/effects").CallEffect<boolean>>, void, never>;
16
- //# sourceMappingURL=threadPolling.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"threadPolling.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/threadPolling.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD;;;GAGG;AACH,wBAAiB,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,CAAC;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAAC;;;;;;uJA4BpG"}
@@ -1,86 +0,0 @@
1
- // (C) 2024 GoodData Corporation
2
- import { call, cancelled, getContext, race, take, delay, put, select } from "redux-saga/effects";
3
- import { cancelAsyncAction, evaluateMessageErrorAction, evaluateMessagePollingAction, newMessageAction, } from "../messages/messagesSlice.js";
4
- import { processContents } from "./converters/interactionsToMessages.js";
5
- import { lastMessageIdSelector } from "../messages/messagesSelectors.js";
6
- /**
7
- * Load thread history and put it to the store.
8
- * @internal
9
- */
10
- export function* threadPolling({ payload: { message } }) {
11
- // Get the last known thread id
12
- const lastInteractionId = yield select(lastMessageIdSelector);
13
- // Retrieve backend from context and prepare the chat thread service
14
- const backend = yield getContext("backend");
15
- const workspace = yield getContext("workspace");
16
- const chatThread = backend.workspace(workspace).genAI().getChatThread();
17
- const [pollingComplete] = yield race([
18
- call(fetchChatHistoryPolling, message, chatThread, lastInteractionId),
19
- // Any of the following actions will cancel the polling
20
- delay(30000),
21
- take(cancelAsyncAction.type),
22
- take(evaluateMessageErrorAction.type),
23
- take(newMessageAction.type),
24
- ]);
25
- // This will be implemented differently in production
26
- // So, it's OK to have this error not in l18n
27
- if (!pollingComplete) {
28
- yield put(evaluateMessageErrorAction({
29
- assistantMessageId: message.localId,
30
- error: "Timeout: It took too long to get the response from the server.",
31
- }));
32
- }
33
- }
34
- function* fetchChatHistoryPolling(message, preparedChatThread, lastInteractionId) {
35
- // The internal loop, each iteration is a single poll
36
- while (true) {
37
- try {
38
- // Delay to avoid overwhelming the server
39
- yield delay(1000);
40
- // Make the server request
41
- const results = yield call(doTheCall, preparedChatThread, lastInteractionId);
42
- if ((results?.interactions?.length ?? 0) > 1) {
43
- // Server feeds do not have stable IDs at the moment, it's hard to
44
- // merge the results. We have to make an assumption that a single
45
- // evaluation is running at a time.
46
- console.warn("Unexpected interactions", results);
47
- return true;
48
- }
49
- const interaction = results?.interactions?.[0];
50
- if (interaction) {
51
- // Update the store with new content
52
- yield put(evaluateMessagePollingAction({
53
- contents: processContents(interaction),
54
- interactionId: interaction.chatHistoryInteractionId,
55
- complete: interaction.interactionFinished,
56
- localId: message.localId,
57
- }));
58
- if (interaction.interactionFinished) {
59
- // Polling is done, exit the loop
60
- return true;
61
- }
62
- }
63
- }
64
- catch (e) {
65
- const isCancelled = yield cancelled();
66
- if (isCancelled) {
67
- // Polling is done, exit the loop
68
- return true;
69
- }
70
- }
71
- }
72
- }
73
- function* doTheCall(preparedChatThread, nextInteraction) {
74
- const controller = new AbortController();
75
- try {
76
- const results = yield call(preparedChatThread.loadHistory.bind(preparedChatThread), nextInteraction, { signal: controller.signal });
77
- return results;
78
- }
79
- finally {
80
- const isCancelled = yield cancelled();
81
- if (isCancelled) {
82
- controller.abort();
83
- }
84
- }
85
- }
86
- //# sourceMappingURL=threadPolling.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"threadPolling.js","sourceRoot":"","sources":["../../../src/store/sideEffects/threadPolling.ts"],"names":[],"mappings":"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"}