@gooddata/sdk-ui-gen-ai 11.52.0 → 11.53.0-alpha.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 (133) hide show
  1. package/esm/components/GenAIChat.d.ts.map +1 -1
  2. package/esm/components/GenAIChat.js +2 -2
  3. package/esm/components/GenAiStore.d.ts +9 -0
  4. package/esm/components/GenAiStore.d.ts.map +1 -1
  5. package/esm/components/GenAiStore.js +2 -1
  6. package/esm/components/intelligence/GenAiInteractionIntelligence.d.ts +21 -0
  7. package/esm/components/intelligence/GenAiInteractionIntelligence.d.ts.map +1 -0
  8. package/esm/components/intelligence/GenAiInteractionIntelligence.js +57 -0
  9. package/esm/components/intelligence/InteractionIntelligenceTrigger.d.ts +15 -0
  10. package/esm/components/intelligence/InteractionIntelligenceTrigger.d.ts.map +1 -0
  11. package/esm/components/intelligence/InteractionIntelligenceTrigger.js +19 -0
  12. package/esm/components/intelligence/data/categoryDetailRows.d.ts +12 -0
  13. package/esm/components/intelligence/data/categoryDetailRows.d.ts.map +1 -0
  14. package/esm/components/intelligence/data/categoryDetailRows.js +206 -0
  15. package/esm/components/intelligence/data/constants.d.ts +22 -0
  16. package/esm/components/intelligence/data/constants.d.ts.map +1 -0
  17. package/esm/components/intelligence/data/constants.js +27 -0
  18. package/esm/components/intelligence/data/deriveInteractionIntelligenceFromSteps.d.ts +23 -0
  19. package/esm/components/intelligence/data/deriveInteractionIntelligenceFromSteps.d.ts.map +1 -0
  20. package/esm/components/intelligence/data/deriveInteractionIntelligenceFromSteps.js +109 -0
  21. package/esm/components/intelligence/data/mergeDetailRows.d.ts +15 -0
  22. package/esm/components/intelligence/data/mergeDetailRows.d.ts.map +1 -0
  23. package/esm/components/intelligence/data/mergeDetailRows.js +91 -0
  24. package/esm/components/intelligence/data/timeline.d.ts +18 -0
  25. package/esm/components/intelligence/data/timeline.d.ts.map +1 -0
  26. package/esm/components/intelligence/data/timeline.js +40 -0
  27. package/esm/components/intelligence/data/types.d.ts +159 -0
  28. package/esm/components/intelligence/data/types.d.ts.map +1 -0
  29. package/esm/components/intelligence/data/types.js +2 -0
  30. package/esm/components/intelligence/data/useInteractionIntelligenceData.d.ts +9 -0
  31. package/esm/components/intelligence/data/useInteractionIntelligenceData.d.ts.map +1 -0
  32. package/esm/components/intelligence/data/useInteractionIntelligenceData.js +20 -0
  33. package/esm/components/intelligence/data/useInteractionIntelligenceTotals.d.ts +9 -0
  34. package/esm/components/intelligence/data/useInteractionIntelligenceTotals.d.ts.map +1 -0
  35. package/esm/components/intelligence/data/useInteractionIntelligenceTotals.js +20 -0
  36. package/esm/components/intelligence/detail/DetailRowValue.d.ts +10 -0
  37. package/esm/components/intelligence/detail/DetailRowValue.d.ts.map +1 -0
  38. package/esm/components/intelligence/detail/DetailRowValue.js +23 -0
  39. package/esm/components/intelligence/detail/IntelligenceCategoryDetail.d.ts +17 -0
  40. package/esm/components/intelligence/detail/IntelligenceCategoryDetail.d.ts.map +1 -0
  41. package/esm/components/intelligence/detail/IntelligenceCategoryDetail.js +21 -0
  42. package/esm/components/intelligence/detail/IntelligenceDetailHeader.d.ts +12 -0
  43. package/esm/components/intelligence/detail/IntelligenceDetailHeader.d.ts.map +1 -0
  44. package/esm/components/intelligence/detail/IntelligenceDetailHeader.js +19 -0
  45. package/esm/components/intelligence/detail/IntelligenceDetailRows.d.ts +11 -0
  46. package/esm/components/intelligence/detail/IntelligenceDetailRows.d.ts.map +1 -0
  47. package/esm/components/intelligence/detail/IntelligenceDetailRows.js +16 -0
  48. package/esm/components/intelligence/detail/IntelligenceStepCarousel.d.ts +12 -0
  49. package/esm/components/intelligence/detail/IntelligenceStepCarousel.d.ts.map +1 -0
  50. package/esm/components/intelligence/detail/IntelligenceStepCarousel.js +21 -0
  51. package/esm/components/intelligence/format/formatDuration.d.ts +23 -0
  52. package/esm/components/intelligence/format/formatDuration.d.ts.map +1 -0
  53. package/esm/components/intelligence/format/formatDuration.js +38 -0
  54. package/esm/components/intelligence/format/formatTokens.d.ts +8 -0
  55. package/esm/components/intelligence/format/formatTokens.d.ts.map +1 -0
  56. package/esm/components/intelligence/format/formatTokens.js +10 -0
  57. package/esm/components/intelligence/format/resolveMessage.d.ts +9 -0
  58. package/esm/components/intelligence/format/resolveMessage.d.ts.map +1 -0
  59. package/esm/components/intelligence/format/resolveMessage.js +10 -0
  60. package/esm/components/intelligence/intelligenceBem.d.ts +7 -0
  61. package/esm/components/intelligence/intelligenceBem.d.ts.map +1 -0
  62. package/esm/components/intelligence/intelligenceBem.js +8 -0
  63. package/esm/components/intelligence/panel/IconCircle.d.ts +10 -0
  64. package/esm/components/intelligence/panel/IconCircle.d.ts.map +1 -0
  65. package/esm/components/intelligence/panel/IconCircle.js +12 -0
  66. package/esm/components/intelligence/panel/IntelligenceCategoryList.d.ts +13 -0
  67. package/esm/components/intelligence/panel/IntelligenceCategoryList.d.ts.map +1 -0
  68. package/esm/components/intelligence/panel/IntelligenceCategoryList.js +10 -0
  69. package/esm/components/intelligence/panel/IntelligenceCategoryRow.d.ts +14 -0
  70. package/esm/components/intelligence/panel/IntelligenceCategoryRow.d.ts.map +1 -0
  71. package/esm/components/intelligence/panel/IntelligenceCategoryRow.js +19 -0
  72. package/esm/components/intelligence/panel/IntelligenceDurationTokens.d.ts +12 -0
  73. package/esm/components/intelligence/panel/IntelligenceDurationTokens.d.ts.map +1 -0
  74. package/esm/components/intelligence/panel/IntelligenceDurationTokens.js +19 -0
  75. package/esm/components/intelligence/panel/IntelligenceFooter.d.ts +10 -0
  76. package/esm/components/intelligence/panel/IntelligenceFooter.d.ts.map +1 -0
  77. package/esm/components/intelligence/panel/IntelligenceFooter.js +20 -0
  78. package/esm/components/intelligence/panel/IntelligenceHeader.d.ts +8 -0
  79. package/esm/components/intelligence/panel/IntelligenceHeader.d.ts.map +1 -0
  80. package/esm/components/intelligence/panel/IntelligenceHeader.js +15 -0
  81. package/esm/components/intelligence/panel/IntelligenceStepTooltip.d.ts +12 -0
  82. package/esm/components/intelligence/panel/IntelligenceStepTooltip.d.ts.map +1 -0
  83. package/esm/components/intelligence/panel/IntelligenceStepTooltip.js +18 -0
  84. package/esm/components/intelligence/panel/IntelligenceTimeline.d.ts +15 -0
  85. package/esm/components/intelligence/panel/IntelligenceTimeline.d.ts.map +1 -0
  86. package/esm/components/intelligence/panel/IntelligenceTimeline.js +16 -0
  87. package/esm/components/intelligence/panel/TimelineBar.d.ts +19 -0
  88. package/esm/components/intelligence/panel/TimelineBar.d.ts.map +1 -0
  89. package/esm/components/intelligence/panel/TimelineBar.js +34 -0
  90. package/esm/components/messages/AssistantItem.d.ts.map +1 -1
  91. package/esm/components/messages/AssistantItem.js +15 -1
  92. package/esm/components/messages/AssistantItemFeedback.d.ts +6 -1
  93. package/esm/components/messages/AssistantItemFeedback.d.ts.map +1 -1
  94. package/esm/components/messages/AssistantItemFeedback.js +11 -4
  95. package/esm/hooks/useGenAIStore.d.ts +1 -0
  96. package/esm/hooks/useGenAIStore.d.ts.map +1 -1
  97. package/esm/hooks/useGenAIStore.js +3 -3
  98. package/esm/index.d.ts +2 -0
  99. package/esm/index.d.ts.map +1 -1
  100. package/esm/index.js +2 -0
  101. package/esm/localization/bundles/en-US.localization-bundle.d.ts +184 -0
  102. package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  103. package/esm/localization/bundles/en-US.localization-bundle.js +184 -0
  104. package/esm/sdk-ui-gen-ai.d.ts +36 -0
  105. package/esm/store/chatWindow/chatWindowSelectors.d.ts +2 -0
  106. package/esm/store/chatWindow/chatWindowSelectors.d.ts.map +1 -1
  107. package/esm/store/chatWindow/chatWindowSelectors.js +5 -0
  108. package/esm/store/chatWindow/chatWindowSlice.d.ts +7 -1
  109. package/esm/store/chatWindow/chatWindowSlice.d.ts.map +1 -1
  110. package/esm/store/chatWindow/chatWindowSlice.js +3 -1
  111. package/esm/store/messages/messagesSelectors.d.ts +6 -0
  112. package/esm/store/messages/messagesSelectors.d.ts.map +1 -1
  113. package/esm/store/messages/messagesSelectors.js +9 -0
  114. package/esm/store/messages/messagesSlice.d.ts +11 -3
  115. package/esm/store/messages/messagesSlice.d.ts.map +1 -1
  116. package/esm/store/messages/messagesSlice.js +34 -1
  117. package/esm/store/sideEffects/onUserMessage.d.ts.map +1 -1
  118. package/esm/store/sideEffects/onUserMessage.js +40 -6
  119. package/esm/store/store.d.ts +1 -1
  120. package/esm/store/store.d.ts.map +1 -1
  121. package/esm/store/store.js +2 -2
  122. package/esm/types.d.ts +33 -1
  123. package/esm/types.d.ts.map +1 -1
  124. package/package.json +20 -20
  125. package/styles/css/intelligence.css +300 -0
  126. package/styles/css/intelligence.css.map +1 -0
  127. package/styles/css/main.css +304 -1
  128. package/styles/css/main.css.map +1 -1
  129. package/styles/css/messages.css +5 -1
  130. package/styles/css/messages.css.map +1 -1
  131. package/styles/scss/intelligence.scss +328 -0
  132. package/styles/scss/main.scss +1 -0
  133. package/styles/scss/messages.scss +10 -1
package/esm/index.d.ts CHANGED
@@ -12,6 +12,8 @@ export { clearThreadAction, newMessageAction, startNewConversationAction, setCur
12
12
  export { setFullscreenAction, setUserContextAction, setAmbientUserContextAction, } from "./store/chatWindow/chatWindowSlice.js";
13
13
  export { type LinkHandlerEvent, type GenAIAssistantMode } from "./components/ConfigContext.js";
14
14
  export { useGenAiChatAvailability } from "./hooks/useGenAiChatAvailability.js";
15
+ export { GenAiInteractionIntelligence, type IGenAiInteractionIntelligenceProps, } from "./components/intelligence/GenAiInteractionIntelligence.js";
16
+ export { type InteractionIntelligenceMode } from "./components/intelligence/data/types.js";
15
17
  export { DefaultLandingScreen, type LandingScreenProps } from "./components/customized/LandingScreen.js";
16
18
  export { DefaultLandingTitle, DefaultLandingTitleAscent, type ILandingTitleProps, } from "./components/customized/LandingTitle.js";
17
19
  export { DefaultLandingQuestion, type ILandingQuestionProps, } from "./components/customized/LandingQuestion.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/esm/index.js CHANGED
@@ -13,6 +13,8 @@ export { isChatAssistantMessageEvent, isChatUserMessageEvent, isChatClosedEvent,
13
13
  export { clearThreadAction, newMessageAction, startNewConversationAction, setCurrentConversationAction, setSelectedAgentAction, } from "./store/messages/messagesSlice.js";
14
14
  export { setFullscreenAction, setUserContextAction, setAmbientUserContextAction, } from "./store/chatWindow/chatWindowSlice.js";
15
15
  export { useGenAiChatAvailability } from "./hooks/useGenAiChatAvailability.js";
16
+ //interaction intelligence
17
+ export { GenAiInteractionIntelligence, } from "./components/intelligence/GenAiInteractionIntelligence.js";
16
18
  //customization
17
19
  export { DefaultLandingScreen } from "./components/customized/LandingScreen.js";
18
20
  export { DefaultLandingTitle, DefaultLandingTitleAscent, } from "./components/customized/LandingTitle.js";
@@ -779,6 +779,190 @@ export declare const en_US: {
779
779
  text: string;
780
780
  crowdinContext: string;
781
781
  };
782
+ "gd.gen-ai.interactionIntelligence.duration.seconds": {
783
+ text: string;
784
+ crowdinContext: string;
785
+ };
786
+ "gd.gen-ai.interactionIntelligence.duration.minutes": {
787
+ text: string;
788
+ crowdinContext: string;
789
+ };
790
+ "gd.gen-ai.interactionIntelligence.duration.minutesAndSeconds": {
791
+ text: string;
792
+ crowdinContext: string;
793
+ };
794
+ "gd.gen-ai.interactionIntelligence.explain": {
795
+ text: string;
796
+ crowdinContext: string;
797
+ };
798
+ "gd.gen-ai.interactionIntelligence.title": {
799
+ text: string;
800
+ crowdinContext: string;
801
+ };
802
+ "gd.gen-ai.interactionIntelligence.close": {
803
+ text: string;
804
+ crowdinContext: string;
805
+ };
806
+ "gd.gen-ai.interactionIntelligence.back": {
807
+ text: string;
808
+ crowdinContext: string;
809
+ };
810
+ "gd.gen-ai.interactionIntelligence.footer.traceId.label": {
811
+ text: string;
812
+ crowdinContext: string;
813
+ };
814
+ "gd.gen-ai.interactionIntelligence.footer.traceId.tooltip": {
815
+ text: string;
816
+ crowdinContext: string;
817
+ };
818
+ "gd.gen-ai.interactionIntelligence.summary.tokens": {
819
+ text: string;
820
+ crowdinContext: string;
821
+ };
822
+ "gd.gen-ai.interactionIntelligence.pager": {
823
+ text: string;
824
+ crowdinContext: string;
825
+ };
826
+ "gd.gen-ai.interactionIntelligence.pager.previous": {
827
+ text: string;
828
+ crowdinContext: string;
829
+ };
830
+ "gd.gen-ai.interactionIntelligence.pager.next": {
831
+ text: string;
832
+ crowdinContext: string;
833
+ };
834
+ "gd.gen-ai.interactionIntelligence.detail.andMore": {
835
+ text: string;
836
+ crowdinContext: string;
837
+ };
838
+ "gd.gen-ai.interactionIntelligence.tooltip.activity": {
839
+ text: string;
840
+ crowdinContext: string;
841
+ };
842
+ "gd.gen-ai.interactionIntelligence.category.applyMemory": {
843
+ text: string;
844
+ crowdinContext: string;
845
+ };
846
+ "gd.gen-ai.interactionIntelligence.category.catalogSearch": {
847
+ text: string;
848
+ crowdinContext: string;
849
+ };
850
+ "gd.gen-ai.interactionIntelligence.category.knowledgeSearch": {
851
+ text: string;
852
+ crowdinContext: string;
853
+ };
854
+ "gd.gen-ai.interactionIntelligence.category.skillRouting": {
855
+ text: string;
856
+ crowdinContext: string;
857
+ };
858
+ "gd.gen-ai.interactionIntelligence.category.metricQuery": {
859
+ text: string;
860
+ crowdinContext: string;
861
+ };
862
+ "gd.gen-ai.interactionIntelligence.category.composeAnswer": {
863
+ text: string;
864
+ crowdinContext: string;
865
+ };
866
+ "gd.gen-ai.interactionIntelligence.excerpt.found": {
867
+ text: string;
868
+ crowdinContext: string;
869
+ };
870
+ "gd.gen-ai.interactionIntelligence.excerpt.used": {
871
+ text: string;
872
+ crowdinContext: string;
873
+ };
874
+ "gd.gen-ai.interactionIntelligence.excerpt.documents": {
875
+ text: string;
876
+ crowdinContext: string;
877
+ };
878
+ "gd.gen-ai.interactionIntelligence.excerpt.activated": {
879
+ text: string;
880
+ crowdinContext: string;
881
+ };
882
+ "gd.gen-ai.interactionIntelligence.detail.query": {
883
+ text: string;
884
+ crowdinContext: string;
885
+ };
886
+ "gd.gen-ai.interactionIntelligence.detail.documents": {
887
+ text: string;
888
+ crowdinContext: string;
889
+ };
890
+ "gd.gen-ai.interactionIntelligence.detail.bestMatch": {
891
+ text: string;
892
+ crowdinContext: string;
893
+ };
894
+ "gd.gen-ai.interactionIntelligence.detail.available": {
895
+ text: string;
896
+ crowdinContext: string;
897
+ };
898
+ "gd.gen-ai.interactionIntelligence.detail.activated": {
899
+ text: string;
900
+ crowdinContext: string;
901
+ };
902
+ "gd.gen-ai.interactionIntelligence.detail.output": {
903
+ text: string;
904
+ crowdinContext: string;
905
+ };
906
+ "gd.gen-ai.interactionIntelligence.detail.model": {
907
+ text: string;
908
+ crowdinContext: string;
909
+ };
910
+ "gd.gen-ai.interactionIntelligence.detail.suggestedActions": {
911
+ text: string;
912
+ crowdinContext: string;
913
+ };
914
+ "gd.gen-ai.interactionIntelligence.detail.searched": {
915
+ text: string;
916
+ crowdinContext: string;
917
+ };
918
+ "gd.gen-ai.interactionIntelligence.detail.found": {
919
+ text: string;
920
+ crowdinContext: string;
921
+ };
922
+ "gd.gen-ai.interactionIntelligence.detail.used": {
923
+ text: string;
924
+ crowdinContext: string;
925
+ };
926
+ "gd.gen-ai.interactionIntelligence.detail.skillsCount": {
927
+ text: string;
928
+ crowdinContext: string;
929
+ };
930
+ "gd.gen-ai.interactionIntelligence.detail.foundGroup": {
931
+ text: string;
932
+ crowdinContext: string;
933
+ };
934
+ "gd.gen-ai.interactionIntelligence.detail.matchScore": {
935
+ text: string;
936
+ crowdinContext: string;
937
+ };
938
+ "gd.gen-ai.interactionIntelligence.detail.output.text": {
939
+ text: string;
940
+ crowdinContext: string;
941
+ };
942
+ "gd.gen-ai.interactionIntelligence.detail.output.visualization": {
943
+ text: string;
944
+ crowdinContext: string;
945
+ };
946
+ "gd.gen-ai.interactionIntelligence.detail.output.dashboard": {
947
+ text: string;
948
+ crowdinContext: string;
949
+ };
950
+ "gd.gen-ai.interactionIntelligence.detail.output.keyDriverAnalysis": {
951
+ text: string;
952
+ crowdinContext: string;
953
+ };
954
+ "gd.gen-ai.interactionIntelligence.detail.output.whatIf": {
955
+ text: string;
956
+ crowdinContext: string;
957
+ };
958
+ "gd.gen-ai.interactionIntelligence.detail.output.searchResults": {
959
+ text: string;
960
+ crowdinContext: string;
961
+ };
962
+ "gd.gen-ai.interactionIntelligence.detail.output.alertProposal": {
963
+ text: string;
964
+ crowdinContext: string;
965
+ };
782
966
  "drill.kda.from": {
783
967
  text: string;
784
968
  crowdinContext: string;
@@ -1 +1 @@
1
- {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqyBjB,CAAC"}
1
+ {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA69BjB,CAAC"}
@@ -781,6 +781,190 @@ export const en_US = {
781
781
  "text": "m",
782
782
  "crowdinContext": "Unit of time in minutes"
783
783
  },
784
+ "gd.gen-ai.interactionIntelligence.duration.seconds": {
785
+ "text": "{seconds}s",
786
+ "crowdinContext": "Duration in seconds shown next to an Interaction Intelligence step, e.g. '0.2s'"
787
+ },
788
+ "gd.gen-ai.interactionIntelligence.duration.minutes": {
789
+ "text": "{minutes}m",
790
+ "crowdinContext": "Duration in whole minutes shown next to an Interaction Intelligence step, e.g. '1m'"
791
+ },
792
+ "gd.gen-ai.interactionIntelligence.duration.minutesAndSeconds": {
793
+ "text": "{minutes}m {seconds}s",
794
+ "crowdinContext": "Duration in minutes and seconds shown next to an Interaction Intelligence step, e.g. '1m 5s'"
795
+ },
796
+ "gd.gen-ai.interactionIntelligence.explain": {
797
+ "text": "Explain",
798
+ "crowdinContext": "Label of the button that opens the Interaction Intelligence panel for an assistant message"
799
+ },
800
+ "gd.gen-ai.interactionIntelligence.title": {
801
+ "text": "Behind this answer",
802
+ "crowdinContext": "Title of the Interaction Intelligence panel"
803
+ },
804
+ "gd.gen-ai.interactionIntelligence.close": {
805
+ "text": "Close",
806
+ "crowdinContext": "Accessible label for the button that closes the Interaction Intelligence panel"
807
+ },
808
+ "gd.gen-ai.interactionIntelligence.back": {
809
+ "text": "Back",
810
+ "crowdinContext": "Accessible label for the button that returns from a category's detail to the Interaction Intelligence list"
811
+ },
812
+ "gd.gen-ai.interactionIntelligence.footer.traceId.label": {
813
+ "text": "Trace ID:",
814
+ "crowdinContext": "Label preceding the backend trace id of the response, at the bottom of the Interaction Intelligence panel. Also the tooltip's hover/focus trigger"
815
+ },
816
+ "gd.gen-ai.interactionIntelligence.footer.traceId.tooltip": {
817
+ "text": "Trace ID helps us identify, investigate, and resolve issues as quickly as possible. If you decide to contact our support team, provide us with this ID.",
818
+ "crowdinContext": "Tooltip explaining what the Trace ID is for, shown on hover/focus of the '?' icon next to the Trace ID label"
819
+ },
820
+ "gd.gen-ai.interactionIntelligence.summary.tokens": {
821
+ "text": "{count, plural, one {{formattedCount} token} other {{formattedCount} tokens}}",
822
+ "crowdinContext": "Count of tokens used in the Interaction Intelligence summary, e.g. '4K tokens'. {count} drives singular/plural selection; {formattedCount} is the already-formatted (possibly compact, e.g. '4K') number to display — do not reformat it."
823
+ },
824
+ "gd.gen-ai.interactionIntelligence.pager": {
825
+ "text": "<b>{current}</b> of {total}",
826
+ "crowdinContext": "Pager shown at the bottom of a category's detail view, e.g. '2 of 7' with the current number in bold. The <b></b> tags must stay around the {current} placeholder."
827
+ },
828
+ "gd.gen-ai.interactionIntelligence.pager.previous": {
829
+ "text": "Previous activity",
830
+ "crowdinContext": "Accessible label for the button that moves to the previous category in the Interaction Intelligence detail view"
831
+ },
832
+ "gd.gen-ai.interactionIntelligence.pager.next": {
833
+ "text": "Next activity",
834
+ "crowdinContext": "Accessible label for the button that moves to the next category in the Interaction Intelligence detail view"
835
+ },
836
+ "gd.gen-ai.interactionIntelligence.detail.andMore": {
837
+ "text": "... and {count} more",
838
+ "crowdinContext": "Truncation line shown under a list in the Interaction Intelligence detail view when not every item is listed, e.g. '... and 97 more'"
839
+ },
840
+ "gd.gen-ai.interactionIntelligence.tooltip.activity": {
841
+ "text": "Activity",
842
+ "crowdinContext": "Eyebrow label (shown uppercase) above the list of activities that ran within a hovered Interaction Intelligence timeline tile"
843
+ },
844
+ "gd.gen-ai.interactionIntelligence.category.applyMemory": {
845
+ "text": "Apply memory",
846
+ "crowdinContext": "Interaction Intelligence category title for the apply-memory category"
847
+ },
848
+ "gd.gen-ai.interactionIntelligence.category.catalogSearch": {
849
+ "text": "Catalogue search",
850
+ "crowdinContext": "Interaction Intelligence category title for a catalog search category"
851
+ },
852
+ "gd.gen-ai.interactionIntelligence.category.knowledgeSearch": {
853
+ "text": "Knowledge search",
854
+ "crowdinContext": "Interaction Intelligence category title for a knowledge search category"
855
+ },
856
+ "gd.gen-ai.interactionIntelligence.category.skillRouting": {
857
+ "text": "Skill routing",
858
+ "crowdinContext": "Interaction Intelligence category title for a skill routing category"
859
+ },
860
+ "gd.gen-ai.interactionIntelligence.category.metricQuery": {
861
+ "text": "Metric query",
862
+ "crowdinContext": "Interaction Intelligence category title for the metric query category"
863
+ },
864
+ "gd.gen-ai.interactionIntelligence.category.composeAnswer": {
865
+ "text": "Compose answer",
866
+ "crowdinContext": "Interaction Intelligence category title for the answer-composing category"
867
+ },
868
+ "gd.gen-ai.interactionIntelligence.excerpt.found": {
869
+ "text": "{count, plural, one {# found} other {# found}}",
870
+ "crowdinContext": "Excerpt shown on a category's list row summarizing how many catalog objects a search found, e.g. '2 found'"
871
+ },
872
+ "gd.gen-ai.interactionIntelligence.excerpt.used": {
873
+ "text": "{count, plural, one {# used} other {# used}}",
874
+ "crowdinContext": "Excerpt shown on a category's list row summarizing how many catalog matches were used, e.g. '1 used'"
875
+ },
876
+ "gd.gen-ai.interactionIntelligence.excerpt.documents": {
877
+ "text": "{count, plural, one {# document} other {# documents}}",
878
+ "crowdinContext": "Excerpt shown on a category's list row summarizing how many documents a knowledge search returned, e.g. '2 documents'"
879
+ },
880
+ "gd.gen-ai.interactionIntelligence.excerpt.activated": {
881
+ "text": "{count, plural, one {# activated} other {# activated}}",
882
+ "crowdinContext": "Excerpt shown on a category's list row summarizing how many skills were activated by routing, e.g. '2 activated'"
883
+ },
884
+ "gd.gen-ai.interactionIntelligence.detail.query": {
885
+ "text": "Query",
886
+ "crowdinContext": "Interaction Intelligence detail row label for the search keywords/question a category used"
887
+ },
888
+ "gd.gen-ai.interactionIntelligence.detail.documents": {
889
+ "text": "Documents",
890
+ "crowdinContext": "Interaction Intelligence detail row label listing the documents a knowledge search returned"
891
+ },
892
+ "gd.gen-ai.interactionIntelligence.detail.bestMatch": {
893
+ "text": "Best match",
894
+ "crowdinContext": "Interaction Intelligence detail row label for a knowledge search's best-matching result"
895
+ },
896
+ "gd.gen-ai.interactionIntelligence.detail.available": {
897
+ "text": "Available",
898
+ "crowdinContext": "Interaction Intelligence detail row label listing the skills available for routing"
899
+ },
900
+ "gd.gen-ai.interactionIntelligence.detail.activated": {
901
+ "text": "Activated",
902
+ "crowdinContext": "Interaction Intelligence detail row label listing the skills activated by routing"
903
+ },
904
+ "gd.gen-ai.interactionIntelligence.detail.output": {
905
+ "text": "Output",
906
+ "crowdinContext": "Interaction Intelligence detail row label for the type of output the turn produced"
907
+ },
908
+ "gd.gen-ai.interactionIntelligence.detail.model": {
909
+ "text": "Model",
910
+ "crowdinContext": "Interaction Intelligence detail row label for the model that composed the answer"
911
+ },
912
+ "gd.gen-ai.interactionIntelligence.detail.suggestedActions": {
913
+ "text": "Suggested actions",
914
+ "crowdinContext": "Interaction Intelligence detail row label for follow-up actions suggested with the answer"
915
+ },
916
+ "gd.gen-ai.interactionIntelligence.detail.searched": {
917
+ "text": "Searched",
918
+ "crowdinContext": "Interaction Intelligence detail row label listing the catalog types a search requested"
919
+ },
920
+ "gd.gen-ai.interactionIntelligence.detail.found": {
921
+ "text": "Found",
922
+ "crowdinContext": "Interaction Intelligence detail row label for the catalog objects a search found, grouped by type"
923
+ },
924
+ "gd.gen-ai.interactionIntelligence.detail.used": {
925
+ "text": "Used",
926
+ "crowdinContext": "Interaction Intelligence detail row label for the catalog matches actually used"
927
+ },
928
+ "gd.gen-ai.interactionIntelligence.detail.skillsCount": {
929
+ "text": "{count, plural, one {# skill} other {# skills}}",
930
+ "crowdinContext": "Count line above the 'Available' skills list in the Interaction Intelligence detail view, e.g. '4 skills'"
931
+ },
932
+ "gd.gen-ai.interactionIntelligence.detail.foundGroup": {
933
+ "text": "{count} {objectType}",
934
+ "crowdinContext": "Count line above one group of catalog objects a search found, e.g. '2 metric'. {objectType} is a catalog type name coming from the backend (e.g. 'metric', 'fact') and is not translated."
935
+ },
936
+ "gd.gen-ai.interactionIntelligence.detail.matchScore": {
937
+ "text": "({percent}% match)",
938
+ "crowdinContext": "Relevance score shown dimmed after a matched item in the Interaction Intelligence detail view, e.g. '(89% match)'"
939
+ },
940
+ "gd.gen-ai.interactionIntelligence.detail.output.text": {
941
+ "text": "Text answer",
942
+ "crowdinContext": "Interaction Intelligence 'Output' row value when the turn produced a plain text answer"
943
+ },
944
+ "gd.gen-ai.interactionIntelligence.detail.output.visualization": {
945
+ "text": "Visualization",
946
+ "crowdinContext": "Interaction Intelligence 'Output' row value when the turn produced a visualization"
947
+ },
948
+ "gd.gen-ai.interactionIntelligence.detail.output.dashboard": {
949
+ "text": "Dashboard",
950
+ "crowdinContext": "Interaction Intelligence 'Output' row value when the turn produced a dashboard"
951
+ },
952
+ "gd.gen-ai.interactionIntelligence.detail.output.keyDriverAnalysis": {
953
+ "text": "Key driver analysis",
954
+ "crowdinContext": "Interaction Intelligence 'Output' row value when the turn produced a key driver analysis"
955
+ },
956
+ "gd.gen-ai.interactionIntelligence.detail.output.whatIf": {
957
+ "text": "What-if scenario",
958
+ "crowdinContext": "Interaction Intelligence 'Output' row value when the turn produced a what-if scenario"
959
+ },
960
+ "gd.gen-ai.interactionIntelligence.detail.output.searchResults": {
961
+ "text": "Search results",
962
+ "crowdinContext": "Interaction Intelligence 'Output' row value when the turn produced search results"
963
+ },
964
+ "gd.gen-ai.interactionIntelligence.detail.output.alertProposal": {
965
+ "text": "Alert proposal",
966
+ "crowdinContext": "Interaction Intelligence 'Output' row value when the turn produced an alert proposal"
967
+ },
784
968
  "drill.kda.from": {
785
969
  "text": "from",
786
970
  "crowdinContext": "Key driver analysis drill from label, must be lowercase"
@@ -507,6 +507,14 @@ export declare type GenAIConversationsProps = Omit<GenAiStoreProps, "children">
507
507
  className?: string;
508
508
  };
509
509
 
510
+ /**
511
+ * The Interaction Intelligence panel: a single timeline of the processing steps behind one
512
+ * assistant response, with a list view and a per-category detail view. Loads its own data on
513
+ * mount and owns which view/category is currently shown.
514
+ * @public
515
+ */
516
+ export declare function GenAiInteractionIntelligence({ responseId, onClose, initialMode, initialCategory }: IGenAiInteractionIntelligenceProps): JSX.Element | null;
517
+
510
518
  /**
511
519
  * Provides the Gen AI store to the application.
512
520
  * @public
@@ -595,6 +603,15 @@ export declare type GenAiStoreProps = {
595
603
  * @internal
596
604
  */
597
605
  isPreview?: boolean;
606
+ /**
607
+ * Enables the Interaction Intelligence panel on assistant messages. Agent builder
608
+ * passes `true`; regular assistants leave this off. Also requires
609
+ * `settings.enableGenAiInteractionIntelligence` to be enabled — both must be true for the
610
+ * panel to be usable.
611
+ *
612
+ * @internal
613
+ */
614
+ allowInteractionIntelligence?: boolean;
598
615
  };
599
616
 
600
617
  /**
@@ -668,6 +685,19 @@ export declare type IChatConversationSystemContent = {
668
685
  type: "system";
669
686
  };
670
687
 
688
+ /**
689
+ * Props for the {@link GenAiInteractionIntelligence} component.
690
+ * @public
691
+ */
692
+ export declare interface IGenAiInteractionIntelligenceProps {
693
+ responseId: string;
694
+ onClose: () => void;
695
+ /** Lets a consumer render directly into a specific category's detail view. */
696
+ initialMode?: InteractionIntelligenceMode;
697
+ /** Category id to open when `initialMode === "detail"`. Falls back to list mode if unknown. */
698
+ initialCategory?: string;
699
+ }
700
+
671
701
  /**
672
702
  * @beta
673
703
  */
@@ -695,6 +725,12 @@ export declare interface ILandingTitleProps {
695
725
  children: ReactNode;
696
726
  }
697
727
 
728
+ /**
729
+ * The modes the panel can render: the full list/timeline view or a single category's detail view.
730
+ * @public
731
+ */
732
+ export declare type InteractionIntelligenceMode = "list" | "detail";
733
+
698
734
  /**
699
735
  * Type guard for the ChatAgentChangeEvent.
700
736
  * @public
@@ -12,6 +12,8 @@ export declare const agentSwitchingEnabledSelector: (state: RootState) => boolea
12
12
  export declare const contextSetupEnabledSelector: (state: RootState) => boolean;
13
13
  export declare const reasoningEffortEnabledSelector: (state: RootState) => boolean;
14
14
  export declare const agentSwitchingActiveSelector: (state: RootState) => boolean;
15
+ export declare const allowInteractionIntelligenceSelector: (state: RootState) => boolean;
16
+ export declare const interactionIntelligenceEnabledSelector: (state: RootState) => boolean;
15
17
  export declare const objectTypesSelector: (state: RootState) => GenAIObjectType[] | undefined;
16
18
  export declare const allowedRelationshipTypesSelector: (state: RootState) => IAllowedRelationshipType[] | undefined;
17
19
  export declare const tagsSelector: (state: RootState) => {
@@ -1 +1 @@
1
- {"version":3,"file":"chatWindowSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAEzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,eAAO,MAAM,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGxD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,aAAa,GAAG,SAGxE,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,GAAG,SAG7E,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGjE,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAG/D,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlE,CAAC;AAKF,eAAO,MAAM,4BAA4B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAIhE,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,eAAe,EAAE,GAAG,SAG3E,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,wBAAwB,EAAE,GAAG,SACZ,CAAC;AAEvF,eAAO,MAAM,YAAY,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK;IAC7C,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClC,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CAMpC,CAAC;AAEH,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,WAAW,EAKnE,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,cAAc,GAAG,SAG9E,CAAC;AAEF,eAAO,MAAM,kCAAkC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGhF,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,iBAAiB,GAAG,SAG3E,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,iBAAiB,GAAG,SAG9E,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAe5D,CAAC"}
1
+ {"version":3,"file":"chatWindowSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAEzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,eAAO,MAAM,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGxD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,aAAa,GAAG,SAGxE,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,GAAG,SAG7E,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGjE,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAG/D,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlE,CAAC;AAKF,eAAO,MAAM,4BAA4B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAIhE,CAAC;AAEF,eAAO,MAAM,oCAAoC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGxE,CAAC;AAKF,eAAO,MAAM,sCAAsC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAK1E,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,eAAe,EAAE,GAAG,SAG3E,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,wBAAwB,EAAE,GAAG,SACZ,CAAC;AAEvF,eAAO,MAAM,YAAY,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK;IAC7C,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClC,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CAMpC,CAAC;AAEH,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,WAAW,EAKnE,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,cAAc,GAAG,SAG9E,CAAC;AAEF,eAAO,MAAM,kCAAkC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGhF,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,iBAAiB,GAAG,SAG3E,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,iBAAiB,GAAG,SAG9E,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAe5D,CAAC"}
@@ -16,6 +16,11 @@ export const reasoningEffortEnabledSelector = createSelector(settingsSelector, (
16
16
  // mode: the assistant is pinned to the single preview agent being built, so the switcher stays
17
17
  // hidden and the legacy input is used.
18
18
  export const agentSwitchingActiveSelector = createSelector(agentSwitchingEnabledSelector, isPreviewSelector, (agentSwitchingEnabled, isPreview) => agentSwitchingEnabled && !isPreview);
19
+ export const allowInteractionIntelligenceSelector = createSelector(chatWindowSliceSelector, (state) => state.allowInteractionIntelligence === true);
20
+ // Whether the Interaction Intelligence panel is enabled in the current chat context.
21
+ // Requires both the plug-in instance to allow it (agent builder passes `allowInteractionIntelligence`)
22
+ // and the workspace-level feature flag to be on.
23
+ export const interactionIntelligenceEnabledSelector = createSelector(allowInteractionIntelligenceSelector, settingsSelector, (allowInteractionIntelligence, settings) => allowInteractionIntelligence && settings?.["enableGenAiInteractionIntelligence"] === true);
19
24
  export const objectTypesSelector = createSelector(chatWindowSliceSelector, (state) => state.objectTypes);
20
25
  export const allowedRelationshipTypesSelector = createSelector(chatWindowSliceSelector, (state) => state.allowedRelationshipTypes);
21
26
  export const tagsSelector = createSelector(chatWindowSliceSelector, (state) => {
@@ -61,10 +61,16 @@ type ChatWindowSliceState = {
61
61
  * is pinned to that single agent, so agent switching is not applicable.
62
62
  */
63
63
  isPreview?: boolean;
64
+ /**
65
+ * Whether the plug-in instance allows the Interaction Intelligence panel. Combined with
66
+ * `settings.enableGenAiInteractionIntelligence` — both must be true for the panel to show.
67
+ */
68
+ allowInteractionIntelligence?: boolean;
64
69
  };
65
70
  export declare const chatWindowSliceName = "chatWindow";
66
- export declare const getInitialChatWindowState: ({ isPreview, }?: {
71
+ export declare const getInitialChatWindowState: ({ isPreview, allowInteractionIntelligence, }?: {
67
72
  isPreview?: boolean | undefined;
73
+ allowInteractionIntelligence?: boolean | undefined;
68
74
  }) => ChatWindowSliceState;
69
75
  export declare const chatWindowSliceReducer: Reducer<ChatWindowSliceState>;
70
76
  export declare const setOpenAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
@@ -1 +1 @@
1
- {"version":3,"file":"chatWindowSlice.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSlice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,OAAO,EAAe,MAAM,kBAAkB,CAAC;AAEjF,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAKjE,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG7E,KAAK,oBAAoB,GAAG;IACxB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B;;OAEG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC;;OAEG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;OAEG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACtD;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAmBhD,eAAO,MAAM,yBAAyB;;0BAOpC,CAAC;AA0IH,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,oBAAoB,CAA2B,CAAC;AAC7F,eAAO,MACH,aAAa;;gCACb,gBAAgB;;mCAChB,qBAAqB;;wCACrB,iBAAiB;;oCACjB,qBAAqB;;wCACrB,0BAA0B;;6CAC1B,mCAAmC;;sDACnC,oBAAoB;;uCACpB,aAAa;;;gCACb,sBAAsB,+HACtB,iCAAiC;;oDACjC,0BAA0B;;;;;;;;6CAC1B,yBAAyB;;4CACzB,4BAA4B;;+CAC5B,kBAAkB;;;AAClB;;;GAGG;AACH,mBAAmB;;;AACnB;;GAEG;AACH,2BAA2B;;;AAC3B;;GAEG;AACH,oBAAoB;;;qCACG,CAAC"}
1
+ {"version":3,"file":"chatWindowSlice.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSlice.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,OAAO,EAAe,MAAM,kBAAkB,CAAC;AAEjF,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAKjE,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG7E,KAAK,oBAAoB,GAAG;IACxB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B;;OAEG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC;;OAEG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;OAEG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACtD;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAoBhD,eAAO,MAAM,yBAAyB;;;0BAUpC,CAAC;AA0IH,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,oBAAoB,CAA2B,CAAC;AAC7F,eAAO,MACH,aAAa;;gCACb,gBAAgB;;mCAChB,qBAAqB;;wCACrB,iBAAiB;;oCACjB,qBAAqB;;wCACrB,0BAA0B;;6CAC1B,mCAAmC;;sDACnC,oBAAoB;;uCACpB,aAAa;;;gCACb,sBAAsB,+HACtB,iCAAiC;;oDACjC,0BAA0B;;;;;;;;6CAC1B,yBAAyB;;4CACzB,4BAA4B;;+CAC5B,kBAAkB;;;AAClB;;;GAGG;AACH,mBAAmB;;;AACnB;;GAEG;AACH,2BAA2B;;;AAC3B;;GAEG;AACH,oBAAoB;;;qCACG,CAAC"}
@@ -20,10 +20,12 @@ const initialState = {
20
20
  active: undefined,
21
21
  },
22
22
  isPreview: undefined,
23
+ allowInteractionIntelligence: undefined,
23
24
  };
24
- export const getInitialChatWindowState = ({ isPreview, } = {}) => ({
25
+ export const getInitialChatWindowState = ({ isPreview, allowInteractionIntelligence, } = {}) => ({
25
26
  ...initialState,
26
27
  isPreview,
28
+ allowInteractionIntelligence,
27
29
  });
28
30
  const chatWindowSlice = createSlice({
29
31
  name: chatWindowSliceName,
@@ -1,5 +1,6 @@
1
1
  import { type GenAIChatEffort } from "@gooddata/sdk-model";
2
2
  import { type IChatConversationLocal, type IChatConversationLocalItem, type Message } from "../../model.js";
3
+ import { type IChatConversationResponseTrace } from "../../types.js";
3
4
  import { type RootState } from "../types.js";
4
5
  export declare const messagesSelector: (state: RootState) => Message[];
5
6
  export declare const loadedSelector: (state: RootState) => boolean;
@@ -15,6 +16,11 @@ export declare const globalErrorSelector: (state: RootState) => Record<string, u
15
16
  export declare const threadIdSelector: (state: RootState) => string | undefined;
16
17
  export declare const conversationMessagesSelector: (state: RootState) => IChatConversationLocalItem[];
17
18
  export declare const conversationMessagesByIdSelector: (state: RootState, conversationId?: string) => IChatConversationLocalItem[];
19
+ /**
20
+ * The "Interaction Intelligence" trace of one response of the current conversation. Empty until the
21
+ * turn's steps have streamed in.
22
+ */
23
+ export declare const interactionTraceByResponseIdSelector: (state: RootState, responseId: string) => IChatConversationResponseTrace;
18
24
  export declare const conversationSelector: (state: RootState) => IChatConversationLocal | undefined;
19
25
  export declare const selectedAgentIdSelector: (state: RootState) => string | undefined;
20
26
  export declare const selectedEffortSelector: (state: RootState) => GenAIChatEffort;
@@ -1 +1 @@
1
- {"version":3,"file":"messagesSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/messages/messagesSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,0BAA0B,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5G,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,EAG3D,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGjE,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OASvD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAC/B,KAAK,EAAE,SAAS,KACf,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,SAS1D,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;aAIgD,CAAC;AAExF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAGjF,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAG7D,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,0BAA0B,EAIrF,CAAC;AAEP,eAAO,MAAM,gCAAgC,EAAE,CAC3C,KAAK,EAAE,SAAS,EAChB,cAAc,CAAC,EAAE,MAAM,KACtB,0BAA0B,EAU9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,GAAG,SAGjF,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAGpE,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,eAQ1D,CAAC;AAEF,eAAO,MAAM,0BAA0B,iFACqE,CAAC;AAE7G,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAiE,CAAC;AAE7F,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGrE,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,CACnC,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,MAAM,KACrB,sBAAsB,GAAG,SAI7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,EAAE,GAAG,SACZ,CAAC;AAE1E,eAAO,MAAM,2BAA2B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAG/D,CAAC"}
1
+ {"version":3,"file":"messagesSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/messages/messagesSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,KAAK,sBAAsB,EAAE,KAAK,0BAA0B,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5G,OAAO,EAAE,KAAK,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,EAG3D,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGrD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGjE,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OASvD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAC/B,KAAK,EAAE,SAAS,KACf,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,SAS1D,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;aAIgD,CAAC;AAExF,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAGjF,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAG7D,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,0BAA0B,EAIrF,CAAC;AAEP,eAAO,MAAM,gCAAgC,EAAE,CAC3C,KAAK,EAAE,SAAS,EAChB,cAAc,CAAC,EAAE,MAAM,KACtB,0BAA0B,EAU9B,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,oCAAoC,EAAE,CAC/C,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,KACjB,8BAMJ,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,GAAG,SAGjF,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,GAAG,SAGpE,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,eAQ1D,CAAC;AAEF,eAAO,MAAM,0BAA0B,iFACqE,CAAC;AAE7G,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAiE,CAAC;AAE7F,eAAO,MAAM,uBAAuB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GAAG,SAGrE,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,CACnC,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,MAAM,KACrB,sBAAsB,GAAG,SAI7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,sBAAsB,EAAE,GAAG,SACZ,CAAC;AAE1E,eAAO,MAAM,2BAA2B,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAG/D,CAAC"}
@@ -35,6 +35,15 @@ export const conversationMessagesByIdSelector = createSelector([messagesSliceSel
35
35
  }
36
36
  return data.order.map((id) => data.items[id]);
37
37
  });
38
+ const EMPTY_TRACE = { steps: [], detailsByStepId: {} };
39
+ /**
40
+ * The "Interaction Intelligence" trace of one response of the current conversation. Empty until the
41
+ * turn's steps have streamed in.
42
+ */
43
+ export const interactionTraceByResponseIdSelector = createSelector([messagesSliceSelector, (_state, responseId) => responseId], (state, responseId) => {
44
+ const data = state.conversationsData[state.currentConversation?.localId ?? ""];
45
+ return data?.interactionTrace?.[responseId] ?? EMPTY_TRACE;
46
+ });
38
47
  export const conversationSelector = createSelector(messagesSliceSelector, (state) => state.currentConversation);
39
48
  export const selectedAgentIdSelector = createSelector(messagesSliceSelector, (state) => state.selectedAgentId);
40
49
  export const selectedEffortSelector = createSelector(messagesSliceSelector, (state) => {
@@ -1,8 +1,8 @@
1
1
  import { type Reducer } from "@reduxjs/toolkit";
2
- import { type IChatConversationItem } from "@gooddata/sdk-backend-spi";
2
+ import { type IChatConversationInteractionStep, type IChatConversationItem } from "@gooddata/sdk-backend-spi";
3
3
  import { type GenAIChatEffort, type GenAIChatInteractionUserFeedback } from "@gooddata/sdk-model";
4
4
  import { type AssistantMessage, type Contents, type GenAIAgent, type IChatConversationErrorContent, type IChatConversationLocal, type IChatConversationLocalContent, type IChatConversationLocalItem, type Message, type UserMessage } from "../../model.js";
5
- import { type StoredConversation } from "../../types.js";
5
+ import { type IChatConversationTracedAction, type StoredConversation } from "../../types.js";
6
6
  type MessagesSliceState = {
7
7
  /**
8
8
  * A verbose mode defines how much information is shown in the chat.
@@ -174,7 +174,15 @@ export declare const loadThreadAction: import("@reduxjs/toolkit").ActionCreatorW
174
174
  }, "messages/saveVisualisationRenderStatusSuccessAction">, visualizationErrorAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
175
175
  errorType: "BAD_REQUEST" | "CANCELLED" | "CLUSTERING_NOT_RECEIVED" | "DATA_TOO_LARGE_TO_COMPUTE" | "DATA_TOO_LARGE_TO_DISPLAY" | "DYNAMIC_SCRIPT_LOAD_ERROR" | "FORECAST_NOT_RECEIVED" | "GEO_AREA_MISSING" | "GEO_LOCATION_MISSING" | "GEO_MAPBOX_TOKEN_MISSING" | "HEADERS_TOO_LARGE" | "NEGATIVE_VALUES" | "NOT_FOUND" | "NO_DATA" | "PROTECTED_REPORT" | "RESULT_CACHE_MISSING" | "TIMEOUT_ERROR" | "UNAUTHORIZED" | "UNKNOWN_ERROR" | "VISUALIZATION_CLASS_UNKNOWN";
176
176
  errorMessage?: string | undefined;
177
- }, "messages/visualizationErrorAction">, applyPendingAgentSwitchAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
177
+ }, "messages/visualizationErrorAction">, appendInteractionStepAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
178
+ conversationId: string;
179
+ step: IChatConversationInteractionStep;
180
+ }, "messages/appendInteractionStepAction">, appendTracedActionAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
181
+ conversationId: string;
182
+ responseId: string;
183
+ stepId: string;
184
+ action: IChatConversationTracedAction;
185
+ }, "messages/appendTracedActionAction">, applyPendingAgentSwitchAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
178
186
  conversationLocalId: string;
179
187
  beforeItemLocalId?: string | undefined;
180
188
  }, "messages/applyPendingAgentSwitchAction">, revertAgentSwitchAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{