@gooddata/sdk-ui-gen-ai 10.16.0-alpha.2 → 10.16.0-alpha.20
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.
- package/NOTICE +74 -24
- package/esm/components/GenAIChat.d.ts +3 -3
- package/esm/components/GenAIChat.d.ts.map +1 -1
- package/esm/components/GenAIChat.js +3 -3
- package/esm/components/GenAIChat.js.map +1 -1
- package/esm/components/GenAIChatDialog.d.ts +2 -2
- package/esm/components/GenAIChatDialog.d.ts.map +1 -1
- package/esm/components/GenAIChatDialog.js +19 -4
- package/esm/components/GenAIChatDialog.js.map +1 -1
- package/esm/components/GenAIChatOverlay.d.ts +4 -2
- package/esm/components/GenAIChatOverlay.d.ts.map +1 -1
- package/esm/components/GenAIChatOverlay.js +9 -9
- package/esm/components/GenAIChatOverlay.js.map +1 -1
- package/esm/components/GenAIChatWrapper.d.ts +1 -0
- package/esm/components/GenAIChatWrapper.d.ts.map +1 -1
- package/esm/components/GenAIChatWrapper.js +2 -2
- package/esm/components/GenAIChatWrapper.js.map +1 -1
- package/esm/components/Input.d.ts +1 -0
- package/esm/components/Input.d.ts.map +1 -1
- package/esm/components/Input.js +5 -2
- package/esm/components/Input.js.map +1 -1
- package/esm/components/messages/AssistantMessage.d.ts.map +1 -1
- package/esm/components/messages/AssistantMessage.js +5 -2
- package/esm/components/messages/AssistantMessage.js.map +1 -1
- package/esm/components/messages/contents/VisualizationContents.js +12 -2
- package/esm/components/messages/contents/VisualizationContents.js.map +1 -1
- package/esm/components/messages/contents/useExecution.js +2 -2
- package/esm/components/messages/contents/useExecution.js.map +1 -1
- package/esm/hooks/useGenAIStore.d.ts +15 -4
- package/esm/hooks/useGenAIStore.d.ts.map +1 -1
- package/esm/hooks/useGenAIStore.js +15 -5
- package/esm/hooks/useGenAIStore.js.map +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/esm/model.d.ts +1 -1
- package/esm/model.d.ts.map +1 -1
- package/esm/model.js +2 -2
- package/esm/model.js.map +1 -1
- package/esm/sdk-ui-gen-ai.d.ts +120 -2
- package/esm/store/chatWindow/chatWindowSelectors.d.ts +4 -0
- package/esm/store/chatWindow/chatWindowSelectors.d.ts.map +1 -0
- package/esm/store/chatWindow/chatWindowSelectors.js +7 -0
- package/esm/store/chatWindow/chatWindowSelectors.js.map +1 -0
- package/esm/store/chatWindow/chatWindowSlice.d.ts +19 -0
- package/esm/store/chatWindow/chatWindowSlice.d.ts.map +1 -0
- package/esm/store/chatWindow/chatWindowSlice.js +22 -0
- package/esm/store/chatWindow/chatWindowSlice.js.map +1 -0
- package/esm/store/events.d.ts +109 -0
- package/esm/store/events.d.ts.map +1 -0
- package/esm/store/events.js +57 -0
- package/esm/store/events.js.map +1 -0
- package/esm/store/index.d.ts +2 -0
- package/esm/store/index.d.ts.map +1 -1
- package/esm/store/index.js +2 -0
- package/esm/store/index.js.map +1 -1
- package/esm/store/messages/messagesSelectors.d.ts +1 -0
- package/esm/store/messages/messagesSelectors.d.ts.map +1 -1
- package/esm/store/messages/messagesSelectors.js +1 -0
- package/esm/store/messages/messagesSelectors.js.map +1 -1
- package/esm/store/messages/messagesSlice.d.ts +7 -0
- package/esm/store/messages/messagesSlice.d.ts.map +1 -1
- package/esm/store/messages/messagesSlice.js +26 -3
- package/esm/store/messages/messagesSlice.js.map +1 -1
- package/esm/store/sideEffects/converters/interactionsToMessages.d.ts.map +1 -1
- package/esm/store/sideEffects/converters/interactionsToMessages.js +1 -1
- package/esm/store/sideEffects/converters/interactionsToMessages.js.map +1 -1
- package/esm/store/sideEffects/index.d.ts +1 -1
- package/esm/store/sideEffects/index.d.ts.map +1 -1
- package/esm/store/sideEffects/index.js +3 -1
- package/esm/store/sideEffects/index.js.map +1 -1
- package/esm/store/sideEffects/onEvent.d.ts +2 -0
- package/esm/store/sideEffects/onEvent.d.ts.map +1 -0
- package/esm/store/sideEffects/onEvent.js +92 -0
- package/esm/store/sideEffects/onEvent.js.map +1 -0
- package/esm/store/sideEffects/onThreadLoad.d.ts +1 -0
- package/esm/store/sideEffects/onThreadLoad.d.ts.map +1 -1
- package/esm/store/sideEffects/onThreadLoad.js +4 -1
- package/esm/store/sideEffects/onThreadLoad.js.map +1 -1
- package/esm/store/store.d.ts +15 -4
- package/esm/store/store.d.ts.map +1 -1
- package/esm/store/store.js +5 -6
- package/esm/store/store.js.map +1 -1
- package/esm/store/types.d.ts +2 -0
- package/esm/store/types.d.ts.map +1 -1
- package/esm/store/types.js +1 -0
- package/esm/store/types.js.map +1 -1
- package/package.json +12 -12
- package/styles/css/main.css +21 -5
- package/styles/css/main.css.map +1 -1
- package/styles/css/messages.css +19 -3
- package/styles/css/messages.css.map +1 -1
- package/styles/scss/main.scss +8 -2
- package/styles/scss/messages.scss +22 -3
|
@@ -32,7 +32,7 @@ export const VisualizationContentsComponent = ({ content, useMarkdown, }) => {
|
|
|
32
32
|
return assertNever(visualization.visualizationType);
|
|
33
33
|
}
|
|
34
34
|
})())),
|
|
35
|
-
React.createElement("div", { className: "gd-gen-ai-
|
|
35
|
+
React.createElement("div", { className: "gd-gen-ai-chat__visualization__title" },
|
|
36
36
|
React.createElement(MarkdownComponent, { allowMarkdown: useMarkdown }, visualization.title)))) : null));
|
|
37
37
|
};
|
|
38
38
|
const assertNever = (value) => {
|
|
@@ -41,12 +41,22 @@ const assertNever = (value) => {
|
|
|
41
41
|
const renderBarChart = (metrics, dimensions, filters) => (React.createElement(BarChart, { height: 300, measures: metrics, viewBy: [dimensions[0], dimensions[1]].filter(Boolean), stackBy: metrics.length <= 1 ? dimensions[2] : undefined, config: {
|
|
42
42
|
// Better visibility with stacked bars if there are multiple metrics and dimensions
|
|
43
43
|
stackMeasures: metrics.length > 1 && dimensions.length === 2,
|
|
44
|
+
legend: {
|
|
45
|
+
responsive: "autoPositionWithPopup",
|
|
46
|
+
},
|
|
44
47
|
}, filters: filters }));
|
|
45
48
|
const renderColumnChart = (metrics, dimensions, filters) => (React.createElement(ColumnChart, { height: 300, measures: metrics, viewBy: [dimensions[0], dimensions[1]].filter(Boolean), stackBy: metrics.length <= 1 ? dimensions[2] : undefined, config: {
|
|
46
49
|
// Better visibility with stacked bars if there are multiple metrics and dimensions
|
|
47
50
|
stackMeasures: metrics.length > 1 && dimensions.length === 2,
|
|
51
|
+
legend: {
|
|
52
|
+
responsive: "autoPositionWithPopup",
|
|
53
|
+
},
|
|
48
54
|
}, filters: filters }));
|
|
49
|
-
const renderLineChart = (metrics, dimensions, filters) => (React.createElement(LineChart, { height: 300, measures: metrics, trendBy: dimensions[0], segmentBy: metrics.length <= 1 ? dimensions[1] : undefined, filters: filters
|
|
55
|
+
const renderLineChart = (metrics, dimensions, filters) => (React.createElement(LineChart, { height: 300, measures: metrics, trendBy: dimensions[0], segmentBy: metrics.length <= 1 ? dimensions[1] : undefined, filters: filters, config: {
|
|
56
|
+
legend: {
|
|
57
|
+
responsive: "autoPositionWithPopup",
|
|
58
|
+
},
|
|
59
|
+
} }));
|
|
50
60
|
const renderPieChart = (metrics, dimensions, filters) => (React.createElement(PieChart, { height: 300, measures: metrics, viewBy: metrics.length <= 1 ? dimensions[0] : undefined, filters: filters }));
|
|
51
61
|
const renderTable = (metrics, dimensions, filters) => (React.createElement(PivotTable, { measures: metrics, rows: dimensions, filters: filters }));
|
|
52
62
|
const renderHeadline = (metrics, _dimensions, filters) => (React.createElement(Headline, { height: 300, primaryMeasure: metrics[0], secondaryMeasures: [metrics[1], metrics[2]].filter(Boolean), filters: filters }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VisualizationContents.js","sourceRoot":"","sources":["../../../../src/components/messages/contents/VisualizationContents.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAE/F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAOlD,MAAM,CAAC,MAAM,8BAA8B,GAAyC,CAAC,EACjF,OAAO,EACP,WAAW,GACd,EAAE,EAAE;IACD,MAAM,SAAS,GAAG,EAAE,CAChB,mCAAmC,EACnC,kDAAkD,CACrD,CAAC;IACF,MAAM,aAAa,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IAErE,OAAO,CACH,6BAAK,SAAS,EAAE,SAAS;QACrB,oBAAC,iBAAiB,IAAC,aAAa,EAAE,WAAW,IAAG,OAAO,CAAC,IAAI,CAAqB;QAChF,aAAa,CAAC,CAAC,CAAC,CACb,6BAAK,SAAS,EAAC,+BAA+B;YAC1C,6BAAK,SAAS,EAAC,wCAAwC;gBACnD,oBAAC,0BAA0B,QACtB,CAAC,GAAG,EAAE;oBACH,QAAQ,aAAa,CAAC,iBAAiB,EAAE,CAAC;wBACtC,KAAK,KAAK;4BACN,OAAO,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACxD,KAAK,QAAQ;4BACT,OAAO,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBAC3D,KAAK,MAAM;4BACP,OAAO,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACzD,KAAK,KAAK;4BACN,OAAO,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACxD,KAAK,OAAO;4BACR,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACrD,KAAK,UAAU;4BACX,OAAO,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACxD;4BACI,OAAO,WAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBAC5D,CAAC;gBACL,CAAC,CAAC,EAAE,CACqB,CAC3B;YACN,6BAAK,SAAS,EAAC,
|
|
1
|
+
{"version":3,"file":"VisualizationContents.js","sourceRoot":"","sources":["../../../../src/components/messages/contents/VisualizationContents.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAE/F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAOlD,MAAM,CAAC,MAAM,8BAA8B,GAAyC,CAAC,EACjF,OAAO,EACP,WAAW,GACd,EAAE,EAAE;IACD,MAAM,SAAS,GAAG,EAAE,CAChB,mCAAmC,EACnC,kDAAkD,CACrD,CAAC;IACF,MAAM,aAAa,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;IAErE,OAAO,CACH,6BAAK,SAAS,EAAE,SAAS;QACrB,oBAAC,iBAAiB,IAAC,aAAa,EAAE,WAAW,IAAG,OAAO,CAAC,IAAI,CAAqB;QAChF,aAAa,CAAC,CAAC,CAAC,CACb,6BAAK,SAAS,EAAC,+BAA+B;YAC1C,6BAAK,SAAS,EAAC,wCAAwC;gBACnD,oBAAC,0BAA0B,QACtB,CAAC,GAAG,EAAE;oBACH,QAAQ,aAAa,CAAC,iBAAiB,EAAE,CAAC;wBACtC,KAAK,KAAK;4BACN,OAAO,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACxD,KAAK,QAAQ;4BACT,OAAO,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBAC3D,KAAK,MAAM;4BACP,OAAO,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACzD,KAAK,KAAK;4BACN,OAAO,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACxD,KAAK,OAAO;4BACR,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACrD,KAAK,UAAU;4BACX,OAAO,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;wBACxD;4BACI,OAAO,WAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBAC5D,CAAC;gBACL,CAAC,CAAC,EAAE,CACqB,CAC3B;YACN,6BAAK,SAAS,EAAC,sCAAsC;gBACjD,oBAAC,iBAAiB,IAAC,aAAa,EAAE,WAAW,IACxC,aAAa,CAAC,KAAK,CACJ,CAClB,CACJ,CACT,CAAC,CAAC,CAAC,IAAI,CACN,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAY,EAAS,EAAE;IACxC,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,KAAK,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,OAAmB,EAAE,UAAwB,EAAE,OAAkB,EAAE,EAAE,CAAC,CAC1F,oBAAC,QAAQ,IACL,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EACtD,OAAO,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EACxD,MAAM,EAAE;QACJ,mFAAmF;QACnF,aAAa,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAC5D,MAAM,EAAE;YACJ,UAAU,EAAE,uBAAuB;SACtC;KACJ,EACD,OAAO,EAAE,OAAO,GAClB,CACL,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,OAAmB,EAAE,UAAwB,EAAE,OAAkB,EAAE,EAAE,CAAC,CAC7F,oBAAC,WAAW,IACR,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EACtD,OAAO,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EACxD,MAAM,EAAE;QACJ,mFAAmF;QACnF,aAAa,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAC5D,MAAM,EAAE;YACJ,UAAU,EAAE,uBAAuB;SACtC;KACJ,EACD,OAAO,EAAE,OAAO,GAClB,CACL,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,OAAmB,EAAE,UAAwB,EAAE,OAAkB,EAAE,EAAE,CAAC,CAC3F,oBAAC,SAAS,IACN,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EACtB,SAAS,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAC1D,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE;QACJ,MAAM,EAAE;YACJ,UAAU,EAAE,uBAAuB;SACtC;KACJ,GACH,CACL,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,OAAmB,EAAE,UAAwB,EAAE,OAAkB,EAAE,EAAE,CAAC,CAC1F,oBAAC,QAAQ,IACL,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EACvD,OAAO,EAAE,OAAO,GAClB,CACL,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,OAAmB,EAAE,UAAwB,EAAE,OAAkB,EAAE,EAAE,CAAC,CACvF,oBAAC,UAAU,IAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAI,CACxE,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,OAAmB,EAAE,WAAyB,EAAE,OAAkB,EAAE,EAAE,CAAC,CAC3F,oBAAC,QAAQ,IACL,MAAM,EAAE,GAAG,EACX,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,EAC1B,iBAAiB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAC3D,OAAO,EAAE,OAAO,GAClB,CACL,CAAC"}
|
|
@@ -28,10 +28,10 @@ export const useExecution = (vis) => {
|
|
|
28
28
|
};
|
|
29
29
|
const convertFilter = (data) => {
|
|
30
30
|
if (isPositiveAttributeFilter(data)) {
|
|
31
|
-
return newPositiveAttributeFilter(data.using, data.include);
|
|
31
|
+
return newPositiveAttributeFilter(data.using, { values: data.include });
|
|
32
32
|
}
|
|
33
33
|
if (isNegativeAttributeFilter(data)) {
|
|
34
|
-
return newNegativeAttributeFilter(data.using, data.exclude);
|
|
34
|
+
return newNegativeAttributeFilter(data.using, { values: data.exclude });
|
|
35
35
|
}
|
|
36
36
|
if (isRelativeDateFilter(data)) {
|
|
37
37
|
return newRelativeDateFilter(data.using, granularityMap[data.granularity], data.from, data.to);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExecution.js","sourceRoot":"","sources":["../../../../src/components/messages/contents/useExecution.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,KAAK,EAEL,YAAY,EACZ,UAAU,EAGV,0BAA0B,EAC1B,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,GAQxB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAyB,EAAE,EAAE;IACtD,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACtB,MAAM,UAAU,GAAG,GAAG,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7E,MAAM,OAAO,GACT,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACrB,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gBACd,KAAK,MAAM;oBACP,OAAO,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;wBAC1C,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;4BACjB,OAAO,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,WAAW,EAAwB,CAAC,CAAC;wBAC7E,CAAC;wBAED,OAAO,CAAC,CAAC;oBACb,CAAC,CAAC,CAAC;gBACP,KAAK,QAAQ;oBACT,OAAO,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC/C,KAAK,WAAW;oBACZ,OAAO,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,CAAC;QACL,CAAC,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO;YACH,OAAO;YACP,UAAU;YACV,OAAO,EAAG,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,OAAO,CAAe,IAAI,EAAE;SACjF,CAAC;IACN,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAiB,EAAmB,EAAE;IACzD,IAAI,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO,0BAA0B,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"useExecution.js","sourceRoot":"","sources":["../../../../src/components/messages/contents/useExecution.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,34 @@
|
|
|
1
1
|
import { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
|
|
2
|
-
import {
|
|
3
|
-
export declare const useGenAIStore: (backend: IAnalyticalBackend, workspace: string,
|
|
2
|
+
import { ChatEventHandler, EventDispatcher } from "../store/events.js";
|
|
3
|
+
export declare const useGenAIStore: (backend: IAnalyticalBackend, workspace: string, eventHandlers?: ChatEventHandler[]) => import("@reduxjs/toolkit/dist/configureStore.js").ToolkitStore<{
|
|
4
4
|
messages: {
|
|
5
5
|
verbose: boolean;
|
|
6
|
-
messages: Record<string, Message>;
|
|
6
|
+
messages: Record<string, import("../model.js").Message>;
|
|
7
7
|
messageOrder: string[];
|
|
8
8
|
globalError?: string | undefined;
|
|
9
9
|
asyncProcess?: "loading" | "clearing" | "evaluating" | undefined;
|
|
10
|
+
threadId?: string | undefined;
|
|
11
|
+
};
|
|
12
|
+
chatWindow: {
|
|
13
|
+
isOpen: boolean;
|
|
14
|
+
isFullscreen: boolean;
|
|
10
15
|
};
|
|
11
16
|
}, import("@reduxjs/toolkit").AnyAction, import("@reduxjs/toolkit").MiddlewareArray<[import("redux-saga").SagaMiddleware<{
|
|
12
17
|
backend: IAnalyticalBackend;
|
|
13
18
|
workspace: string;
|
|
19
|
+
eventDispatcher: EventDispatcher;
|
|
14
20
|
}>, import("@reduxjs/toolkit").ThunkMiddleware<{
|
|
15
21
|
messages: {
|
|
16
22
|
verbose: boolean;
|
|
17
|
-
messages: Record<string, Message>;
|
|
23
|
+
messages: Record<string, import("../model.js").Message>;
|
|
18
24
|
messageOrder: string[];
|
|
19
25
|
globalError?: string | undefined;
|
|
20
26
|
asyncProcess?: "loading" | "clearing" | "evaluating" | undefined;
|
|
27
|
+
threadId?: string | undefined;
|
|
28
|
+
};
|
|
29
|
+
chatWindow: {
|
|
30
|
+
isOpen: boolean;
|
|
31
|
+
isFullscreen: boolean;
|
|
21
32
|
};
|
|
22
33
|
}, import("@reduxjs/toolkit").AnyAction>]>>;
|
|
23
34
|
//# sourceMappingURL=useGenAIStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGenAIStore.d.ts","sourceRoot":"","sources":["../../src/hooks/useGenAIStore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useGenAIStore.d.ts","sourceRoot":"","sources":["../../src/hooks/useGenAIStore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEvE,eAAO,MAAM,aAAa,YACb,kBAAkB,aAChB,MAAM,kBACD,gBAAgB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAoBrC,CAAC"}
|
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
// (C) 2024 GoodData Corporation
|
|
2
2
|
import React from "react";
|
|
3
3
|
import { getStore } from "../store/index.js";
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
import { EventDispatcher } from "../store/events.js";
|
|
5
|
+
export const useGenAIStore = (backend, workspace, eventHandlers) => {
|
|
6
|
+
// Instantiate EventDispatcher. It's a designed to hold a reference to the handlers, so that
|
|
7
|
+
// we don't update the context every time a new array of handlers is passed.
|
|
8
|
+
// Similar to how React handles event listeners.
|
|
9
|
+
const eventDispatcher = React.useMemo(() => new EventDispatcher(), []);
|
|
6
10
|
// Initialize new Redux Store for each instance of GenAI Chat
|
|
7
11
|
// It OK to discard the store when backend or workspace changes
|
|
8
|
-
|
|
9
|
-
return getStore(backend, workspace,
|
|
10
|
-
}, [backend, workspace]);
|
|
12
|
+
const store = React.useMemo(() => {
|
|
13
|
+
return getStore(backend, workspace, eventDispatcher);
|
|
14
|
+
}, [backend, workspace, eventDispatcher]);
|
|
15
|
+
React.useEffect(() => {
|
|
16
|
+
if (eventHandlers) {
|
|
17
|
+
eventDispatcher.setHandlers(eventHandlers);
|
|
18
|
+
}
|
|
19
|
+
}, [eventHandlers, eventDispatcher]);
|
|
20
|
+
return store;
|
|
11
21
|
};
|
|
12
22
|
//# sourceMappingURL=useGenAIStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGenAIStore.js","sourceRoot":"","sources":["../../src/hooks/useGenAIStore.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"useGenAIStore.js","sourceRoot":"","sources":["../../src/hooks/useGenAIStore.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAoB,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEvE,MAAM,CAAC,MAAM,aAAa,GAAG,CACzB,OAA2B,EAC3B,SAAiB,EACjB,aAAkC,EACpC,EAAE;IACA,4FAA4F;IAC5F,4EAA4E;IAC5E,gDAAgD;IAChD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC;IAEvE,6DAA6D;IAC7D,+DAA+D;IAC/D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC7B,OAAO,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IACzD,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;IAE1C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,aAAa,EAAE,CAAC;YAChB,eAAe,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC,EAAE,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;IAErC,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC"}
|
package/esm/index.d.ts
CHANGED
|
@@ -6,4 +6,5 @@
|
|
|
6
6
|
export type { GenAIChatProps } from "./components/GenAIChat.js";
|
|
7
7
|
export { GenAIChat } from "./components/GenAIChat.js";
|
|
8
8
|
export type { Message, BaseMessage, UserMessage, AssistantMessage, Contents, TextContents, SearchContents, RoutingContents, VisualizationContents, ErrorContents, } from "./model.js";
|
|
9
|
+
export { type ChatEventHandler, type BaseEvent, type ChatAssistantMessageEvent, type ChatUserMessageEvent, type ChatClosedEvent, type ChatOpenedEvent, type ChatResetEvent, type ChatFeedbackEvent, type ChatEvent, isChatAssistantMessageEvent, isChatUserMessageEvent, isChatClosedEvent, isChatOpenedEvent, isChatResetEvent, isChatFeedbackEvent, } from "./store/events.js";
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,YAAY,EACR,OAAO,EACP,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,aAAa,GAChB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,YAAY,EACR,OAAO,EACP,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,aAAa,GAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACtB,MAAM,mBAAmB,CAAC"}
|
package/esm/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
// (C) 2024 GoodData Corporation
|
|
2
2
|
export { GenAIChat } from "./components/GenAIChat.js";
|
|
3
|
+
export { isChatAssistantMessageEvent, isChatUserMessageEvent, isChatClosedEvent, isChatOpenedEvent, isChatResetEvent, isChatFeedbackEvent, } from "./store/events.js";
|
|
3
4
|
//# sourceMappingURL=index.js.map
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAShC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAShC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAatD,OAAO,EAUH,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACtB,MAAM,mBAAmB,CAAC"}
|
package/esm/model.d.ts
CHANGED
|
@@ -139,7 +139,7 @@ export declare const isAssistantMessage: (message?: Message) => message is Assis
|
|
|
139
139
|
* Create a new Assistant message. By default, mark it as incomplete.
|
|
140
140
|
* @alpha
|
|
141
141
|
*/
|
|
142
|
-
export declare const makeAssistantMessage: (content: Contents[], complete?: boolean, id?: number) => AssistantMessage;
|
|
142
|
+
export declare const makeAssistantMessage: (content: Contents[], complete?: boolean, id?: number, feedback?: GenAIChatInteractionUserFeedback) => AssistantMessage;
|
|
143
143
|
/**
|
|
144
144
|
* All messages that can be stored in history.
|
|
145
145
|
* @alpha
|
package/esm/model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
package/esm/model.js
CHANGED
|
@@ -81,13 +81,13 @@ export const isAssistantMessage = (message) => message?.role === "assistant";
|
|
|
81
81
|
* Create a new Assistant message. By default, mark it as incomplete.
|
|
82
82
|
* @alpha
|
|
83
83
|
*/
|
|
84
|
-
export const makeAssistantMessage = (content, complete = false, id) => ({
|
|
84
|
+
export const makeAssistantMessage = (content, complete = false, id, feedback = "NONE") => ({
|
|
85
85
|
id: id,
|
|
86
86
|
localId: uuidv4(),
|
|
87
87
|
role: "assistant",
|
|
88
|
-
feedback: "NONE",
|
|
89
88
|
created: Date.now(),
|
|
90
89
|
cancelled: false,
|
|
90
|
+
feedback,
|
|
91
91
|
complete,
|
|
92
92
|
content,
|
|
93
93
|
});
|
package/esm/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAgBpC;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAkB,EAA4B,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;AAEzG;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAgB,EAAE,CAAC,CAAC;IAC7D,IAAI,EAAE,MAAM;IACZ,IAAI;CACP,CAAC,CAAC;AAWH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAkB,EAA+B,EAAE,CACjF,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;AAEhC;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,OAAgC,EAAmB,EAAE,CAAC,CAAC;IACrG,IAAI,EAAE,SAAS;IACf,IAAI;IACJ,OAAO;CACV,CAAC,CAAC;AAWH;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAkB,EAA8B,EAAE,CAC/E,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC;AAE/B;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,IAAY,EACZ,gBAA6C,EAAE,EACjC,EAAE,CAAC,CAAC;IAClB,IAAI,EAAE,QAAQ;IACd,IAAI;IACJ,aAAa;CAChB,CAAC,CAAC;AAWH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAkB,EAAqC,EAAE,CAC7F,QAAQ,CAAC,IAAI,KAAK,eAAe,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACrC,IAAY,EACZ,wBAA+C,EAAE,EAC5B,EAAE,CAAC,CAAC;IACzB,IAAI,EAAE,eAAe;IACrB,IAAI;IACJ,qBAAqB;CACxB,CAAC,CAAC;AAUH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAkB,EAA6B,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC;AAE5G;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAiB,EAAE,CAAC,CAAC;IAC/D,IAAI,EAAE,OAAO;IACb,IAAI;CACP,CAAC,CAAC;AAiDH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAiB,EAA0B,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK,MAAM,CAAC;AAErG;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAmB,EAAe,EAAE,CAAC,CAAC;IAClE,OAAO,EAAE,MAAM,EAAE;IACjB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;IACnB,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,IAAI;IACd,OAAO;CACV,CAAC,CAAC;AAUH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAiB,EAA+B,EAAE,CACjF,OAAO,EAAE,IAAI,KAAK,WAAW,CAAC;AAElC;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAChC,OAAmB,EACnB,QAAQ,GAAG,KAAK,EAChB,EAAW,
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAgBpC;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAkB,EAA4B,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;AAEzG;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAgB,EAAE,CAAC,CAAC;IAC7D,IAAI,EAAE,MAAM;IACZ,IAAI;CACP,CAAC,CAAC;AAWH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAkB,EAA+B,EAAE,CACjF,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;AAEhC;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,OAAgC,EAAmB,EAAE,CAAC,CAAC;IACrG,IAAI,EAAE,SAAS;IACf,IAAI;IACJ,OAAO;CACV,CAAC,CAAC;AAWH;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAkB,EAA8B,EAAE,CAC/E,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC;AAE/B;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,IAAY,EACZ,gBAA6C,EAAE,EACjC,EAAE,CAAC,CAAC;IAClB,IAAI,EAAE,QAAQ;IACd,IAAI;IACJ,aAAa;CAChB,CAAC,CAAC;AAWH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAkB,EAAqC,EAAE,CAC7F,QAAQ,CAAC,IAAI,KAAK,eAAe,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACrC,IAAY,EACZ,wBAA+C,EAAE,EAC5B,EAAE,CAAC,CAAC;IACzB,IAAI,EAAE,eAAe;IACrB,IAAI;IACJ,qBAAqB;CACxB,CAAC,CAAC;AAUH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAkB,EAA6B,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC;AAE5G;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAiB,EAAE,CAAC,CAAC;IAC/D,IAAI,EAAE,OAAO;IACb,IAAI;CACP,CAAC,CAAC;AAiDH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAiB,EAA0B,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK,MAAM,CAAC;AAErG;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAmB,EAAe,EAAE,CAAC,CAAC;IAClE,OAAO,EAAE,MAAM,EAAE;IACjB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;IACnB,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,IAAI;IACd,OAAO;CACV,CAAC,CAAC;AAUH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAiB,EAA+B,EAAE,CACjF,OAAO,EAAE,IAAI,KAAK,WAAW,CAAC;AAElC;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAChC,OAAmB,EACnB,QAAQ,GAAG,KAAK,EAChB,EAAW,EACX,WAA6C,MAAM,EACnC,EAAE,CAAC,CAAC;IACpB,EAAE,EAAE,EAAE;IACN,OAAO,EAAE,MAAM,EAAE;IACjB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;IACnB,SAAS,EAAE,KAAK;IAChB,QAAQ;IACR,QAAQ;IACR,OAAO;CACV,CAAC,CAAC"}
|
package/esm/sdk-ui-gen-ai.d.ts
CHANGED
|
@@ -19,6 +19,14 @@ export declare type AssistantMessage = BaseMessage & {
|
|
|
19
19
|
feedback: GenAIChatInteractionUserFeedback;
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
+
/**
|
|
23
|
+
* A common event definition for the Chat component.
|
|
24
|
+
* @alpha
|
|
25
|
+
*/
|
|
26
|
+
export declare type BaseEvent = {
|
|
27
|
+
threadId?: string;
|
|
28
|
+
};
|
|
29
|
+
|
|
22
30
|
/**
|
|
23
31
|
* @alpha
|
|
24
32
|
*/
|
|
@@ -49,6 +57,80 @@ export declare type BaseMessage = {
|
|
|
49
57
|
content: Contents[];
|
|
50
58
|
};
|
|
51
59
|
|
|
60
|
+
/**
|
|
61
|
+
* A chat assistant message event.
|
|
62
|
+
* @alpha
|
|
63
|
+
*/
|
|
64
|
+
export declare type ChatAssistantMessageEvent = BaseEvent & {
|
|
65
|
+
type: "chatAssistantMessage";
|
|
66
|
+
interactionId?: number;
|
|
67
|
+
useCase: string;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* A chat window closed event.
|
|
72
|
+
* @alpha
|
|
73
|
+
*/
|
|
74
|
+
export declare type ChatClosedEvent = BaseEvent & {
|
|
75
|
+
type: "chatClosed";
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* A union type for all chat events.
|
|
80
|
+
* @alpha
|
|
81
|
+
*/
|
|
82
|
+
export declare type ChatEvent = ChatOpenedEvent | ChatClosedEvent | ChatResetEvent | ChatUserMessageEvent | ChatAssistantMessageEvent | ChatFeedbackEvent;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* An event handler for the Chat component.
|
|
86
|
+
* @alpha
|
|
87
|
+
*/
|
|
88
|
+
export declare interface ChatEventHandler<TEvent extends ChatEvent = any> {
|
|
89
|
+
/**
|
|
90
|
+
* A guard for a specific event type.
|
|
91
|
+
*/
|
|
92
|
+
eval: (event: ChatEvent) => event is TEvent;
|
|
93
|
+
/**
|
|
94
|
+
* Event handler.
|
|
95
|
+
*/
|
|
96
|
+
handler: (event: TEvent) => void;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* A chat feedback event.
|
|
101
|
+
* @alpha
|
|
102
|
+
*/
|
|
103
|
+
export declare type ChatFeedbackEvent = BaseEvent & {
|
|
104
|
+
type: "chatFeedback";
|
|
105
|
+
interactionId?: number;
|
|
106
|
+
feedback: "POSITIVE" | "NEGATIVE" | "NONE";
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* A chat window opened event.
|
|
111
|
+
* @alpha
|
|
112
|
+
*/
|
|
113
|
+
export declare type ChatOpenedEvent = BaseEvent & {
|
|
114
|
+
type: "chatOpened";
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* A chat conversation clearing event.
|
|
119
|
+
* @alpha
|
|
120
|
+
*/
|
|
121
|
+
export declare type ChatResetEvent = BaseEvent & {
|
|
122
|
+
type: "chatReset";
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* A chat user message event.
|
|
127
|
+
* @alpha
|
|
128
|
+
*/
|
|
129
|
+
export declare type ChatUserMessageEvent = BaseEvent & {
|
|
130
|
+
type: "chatUserMessage";
|
|
131
|
+
question: string;
|
|
132
|
+
};
|
|
133
|
+
|
|
52
134
|
/**
|
|
53
135
|
* @alpha
|
|
54
136
|
*/
|
|
@@ -82,11 +164,47 @@ export declare interface GenAIChatProps {
|
|
|
82
164
|
*/
|
|
83
165
|
workspace?: string;
|
|
84
166
|
/**
|
|
85
|
-
*
|
|
167
|
+
* Event handlers to subscribe to chat events.
|
|
86
168
|
*/
|
|
87
|
-
|
|
169
|
+
eventHandlers?: ChatEventHandler[];
|
|
88
170
|
}
|
|
89
171
|
|
|
172
|
+
/**
|
|
173
|
+
* Type guard for the ChatAssistantMessageEvent.
|
|
174
|
+
* @alpha
|
|
175
|
+
*/
|
|
176
|
+
export declare const isChatAssistantMessageEvent: (event: ChatEvent) => event is ChatAssistantMessageEvent;
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* Type guard for the ChatClosedEvent.
|
|
180
|
+
* @alpha
|
|
181
|
+
*/
|
|
182
|
+
export declare const isChatClosedEvent: (event: ChatEvent) => event is ChatClosedEvent;
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Type guard for the ChatFeedbackEvent.
|
|
186
|
+
* @alpha
|
|
187
|
+
*/
|
|
188
|
+
export declare const isChatFeedbackEvent: (event: ChatEvent) => event is ChatFeedbackEvent;
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* Type guard for the ChatOpenedEvent.
|
|
192
|
+
* @alpha
|
|
193
|
+
*/
|
|
194
|
+
export declare const isChatOpenedEvent: (event: ChatEvent) => event is ChatOpenedEvent;
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* Type guard for the ChatResetEvent.
|
|
198
|
+
* @alpha
|
|
199
|
+
*/
|
|
200
|
+
export declare const isChatResetEvent: (event: ChatEvent) => event is ChatResetEvent;
|
|
201
|
+
|
|
202
|
+
/**
|
|
203
|
+
* Type guard for the ChatUserMessageEvent.
|
|
204
|
+
* @alpha
|
|
205
|
+
*/
|
|
206
|
+
export declare const isChatUserMessageEvent: (event: ChatEvent) => event is ChatUserMessageEvent;
|
|
207
|
+
|
|
90
208
|
/**
|
|
91
209
|
* All messages that can be stored in history.
|
|
92
210
|
* @alpha
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatWindowSelectors.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSelectors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,eAAO,MAAM,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGlD,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAGxD,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// (C) 2024 GoodData Corporation
|
|
2
|
+
import { createSelector } from "@reduxjs/toolkit";
|
|
3
|
+
import { chatWindowSliceName } from "./chatWindowSlice.js";
|
|
4
|
+
const chatWindowSliceSelector = (state) => state[chatWindowSliceName];
|
|
5
|
+
export const isOpenSelector = createSelector(chatWindowSliceSelector, (state) => state.isOpen);
|
|
6
|
+
export const isFullscreenSelector = createSelector(chatWindowSliceSelector, (state) => state.isFullscreen);
|
|
7
|
+
//# sourceMappingURL=chatWindowSelectors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatWindowSelectors.js","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSelectors.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,uBAAuB,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAEjF,MAAM,CAAC,MAAM,cAAc,GAAkC,cAAc,CACvE,uBAAuB,EACvB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAC1B,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAkC,cAAc,CAC7E,uBAAuB,EACvB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAChC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
type ChatWindowSliceState = {
|
|
2
|
+
/**
|
|
3
|
+
* Defines if the chat window is open.
|
|
4
|
+
*/
|
|
5
|
+
isOpen: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Defines if the chat window is in fullscreen mode.
|
|
8
|
+
*/
|
|
9
|
+
isFullscreen: boolean;
|
|
10
|
+
};
|
|
11
|
+
export declare const chatWindowSliceName = "chatWindow";
|
|
12
|
+
export declare const chatWindowSliceReducer: import("@reduxjs/toolkit").Reducer<ChatWindowSliceState>;
|
|
13
|
+
export declare const setOpenAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
14
|
+
isOpen: boolean;
|
|
15
|
+
}, "chatWindow/setOpenAction">, setFullscreenAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
16
|
+
isFullscreen: boolean;
|
|
17
|
+
}, "chatWindow/setFullscreenAction">;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=chatWindowSlice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatWindowSlice.d.ts","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSlice.ts"],"names":[],"mappings":"AAGA,KAAK,oBAAoB,GAAG;IACxB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAuBhD,eAAO,MAAM,sBAAsB,0DAA0B,CAAC;AAC9D,eAAO,MAAQ,aAAa;YAboD,OAAO;gCAazD,mBAAmB;kBARwB,OAAO;oCAQH,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// (C) 2024 GoodData Corporation
|
|
2
|
+
import { createSlice } from "@reduxjs/toolkit";
|
|
3
|
+
export const chatWindowSliceName = "chatWindow";
|
|
4
|
+
const initialState = {
|
|
5
|
+
isOpen: false,
|
|
6
|
+
isFullscreen: false,
|
|
7
|
+
};
|
|
8
|
+
const chatWindowSlice = createSlice({
|
|
9
|
+
name: chatWindowSliceName,
|
|
10
|
+
initialState,
|
|
11
|
+
reducers: {
|
|
12
|
+
setOpenAction: (state, { payload: { isOpen } }) => {
|
|
13
|
+
state.isOpen = isOpen;
|
|
14
|
+
},
|
|
15
|
+
setFullscreenAction: (state, { payload: { isFullscreen } }) => {
|
|
16
|
+
state.isFullscreen = isFullscreen;
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
export const chatWindowSliceReducer = chatWindowSlice.reducer;
|
|
21
|
+
export const { setOpenAction, setFullscreenAction } = chatWindowSlice.actions;
|
|
22
|
+
//# sourceMappingURL=chatWindowSlice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatWindowSlice.js","sourceRoot":"","sources":["../../../src/store/chatWindow/chatWindowSlice.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,EAAE,WAAW,EAAiB,MAAM,kBAAkB,CAAC;AAa9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAEhD,MAAM,YAAY,GAAyB;IACvC,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,KAAK;CACtB,CAAC;AAEF,MAAM,eAAe,GAAG,WAAW,CAAC;IAChC,IAAI,EAAE,mBAAmB;IACzB,YAAY;IACZ,QAAQ,EAAE;QACN,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAsC,EAAE,EAAE;YAClF,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAC1B,CAAC;QACD,mBAAmB,EAAE,CACjB,KAAK,EACL,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,EAA4C,EACzE,EAAE;YACA,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;QACtC,CAAC;KACJ;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,eAAe,CAAC,OAAO,CAAC;AAC9D,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A common event definition for the Chat component.
|
|
3
|
+
* @alpha
|
|
4
|
+
*/
|
|
5
|
+
export type BaseEvent = {
|
|
6
|
+
threadId?: string;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* A chat window opened event.
|
|
10
|
+
* @alpha
|
|
11
|
+
*/
|
|
12
|
+
export type ChatOpenedEvent = BaseEvent & {
|
|
13
|
+
type: "chatOpened";
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Type guard for the ChatOpenedEvent.
|
|
17
|
+
* @alpha
|
|
18
|
+
*/
|
|
19
|
+
export declare const isChatOpenedEvent: (event: ChatEvent) => event is ChatOpenedEvent;
|
|
20
|
+
/**
|
|
21
|
+
* A chat window closed event.
|
|
22
|
+
* @alpha
|
|
23
|
+
*/
|
|
24
|
+
export type ChatClosedEvent = BaseEvent & {
|
|
25
|
+
type: "chatClosed";
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Type guard for the ChatClosedEvent.
|
|
29
|
+
* @alpha
|
|
30
|
+
*/
|
|
31
|
+
export declare const isChatClosedEvent: (event: ChatEvent) => event is ChatClosedEvent;
|
|
32
|
+
/**
|
|
33
|
+
* A chat conversation clearing event.
|
|
34
|
+
* @alpha
|
|
35
|
+
*/
|
|
36
|
+
export type ChatResetEvent = BaseEvent & {
|
|
37
|
+
type: "chatReset";
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Type guard for the ChatResetEvent.
|
|
41
|
+
* @alpha
|
|
42
|
+
*/
|
|
43
|
+
export declare const isChatResetEvent: (event: ChatEvent) => event is ChatResetEvent;
|
|
44
|
+
/**
|
|
45
|
+
* A chat user message event.
|
|
46
|
+
* @alpha
|
|
47
|
+
*/
|
|
48
|
+
export type ChatUserMessageEvent = BaseEvent & {
|
|
49
|
+
type: "chatUserMessage";
|
|
50
|
+
question: string;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Type guard for the ChatUserMessageEvent.
|
|
54
|
+
* @alpha
|
|
55
|
+
*/
|
|
56
|
+
export declare const isChatUserMessageEvent: (event: ChatEvent) => event is ChatUserMessageEvent;
|
|
57
|
+
/**
|
|
58
|
+
* A chat assistant message event.
|
|
59
|
+
* @alpha
|
|
60
|
+
*/
|
|
61
|
+
export type ChatAssistantMessageEvent = BaseEvent & {
|
|
62
|
+
type: "chatAssistantMessage";
|
|
63
|
+
interactionId?: number;
|
|
64
|
+
useCase: string;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Type guard for the ChatAssistantMessageEvent.
|
|
68
|
+
* @alpha
|
|
69
|
+
*/
|
|
70
|
+
export declare const isChatAssistantMessageEvent: (event: ChatEvent) => event is ChatAssistantMessageEvent;
|
|
71
|
+
/**
|
|
72
|
+
* A chat feedback event.
|
|
73
|
+
* @alpha
|
|
74
|
+
*/
|
|
75
|
+
export type ChatFeedbackEvent = BaseEvent & {
|
|
76
|
+
type: "chatFeedback";
|
|
77
|
+
interactionId?: number;
|
|
78
|
+
feedback: "POSITIVE" | "NEGATIVE" | "NONE";
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Type guard for the ChatFeedbackEvent.
|
|
82
|
+
* @alpha
|
|
83
|
+
*/
|
|
84
|
+
export declare const isChatFeedbackEvent: (event: ChatEvent) => event is ChatFeedbackEvent;
|
|
85
|
+
/**
|
|
86
|
+
* A union type for all chat events.
|
|
87
|
+
* @alpha
|
|
88
|
+
*/
|
|
89
|
+
export type ChatEvent = ChatOpenedEvent | ChatClosedEvent | ChatResetEvent | ChatUserMessageEvent | ChatAssistantMessageEvent | ChatFeedbackEvent;
|
|
90
|
+
/**
|
|
91
|
+
* An event handler for the Chat component.
|
|
92
|
+
* @alpha
|
|
93
|
+
*/
|
|
94
|
+
export interface ChatEventHandler<TEvent extends ChatEvent = any> {
|
|
95
|
+
/**
|
|
96
|
+
* A guard for a specific event type.
|
|
97
|
+
*/
|
|
98
|
+
eval: (event: ChatEvent) => event is TEvent;
|
|
99
|
+
/**
|
|
100
|
+
* Event handler.
|
|
101
|
+
*/
|
|
102
|
+
handler: (event: TEvent) => void;
|
|
103
|
+
}
|
|
104
|
+
export declare class EventDispatcher {
|
|
105
|
+
private handlers;
|
|
106
|
+
setHandlers(handlers: ChatEventHandler[]): void;
|
|
107
|
+
dispatch(event: ChatEvent): void;
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/store/events.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACtC,IAAI,EAAE,YAAY,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,UAAW,SAAS,6BAEjD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACtC,IAAI,EAAE,YAAY,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,UAAW,SAAS,6BAEjD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG;IACrC,IAAI,EAAE,WAAW,CAAC;CACrB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,UAAW,SAAS,4BAEhD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG;IAC3C,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,UAAW,SAAS,kCAEtD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,SAAS,GAAG;IAChD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,UAAW,SAAS,uCAE3D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG;IACxC,IAAI,EAAE,cAAc,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;CAC9C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,UAAW,SAAS,+BAEnD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,SAAS,GACf,eAAe,GACf,eAAe,GACf,cAAc,GACd,oBAAoB,GACpB,yBAAyB,GACzB,iBAAiB,CAAC;AAExB;;;GAGG;AACH,MAAM,WAAW,gBAAgB,CAAC,MAAM,SAAS,SAAS,GAAG,GAAG;IAC5D;;OAEG;IACH,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,KAAK,IAAI,MAAM,CAAC;IAC5C;;OAEG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,qBAAa,eAAe;IACxB,OAAO,CAAC,QAAQ,CAA0B;IAEnC,WAAW,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAI/C,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAO1C"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// (C) 2024 GoodData Corporation
|
|
2
|
+
/**
|
|
3
|
+
* Type guard for the ChatOpenedEvent.
|
|
4
|
+
* @alpha
|
|
5
|
+
*/
|
|
6
|
+
export const isChatOpenedEvent = (event) => {
|
|
7
|
+
return event.type === "chatOpened";
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Type guard for the ChatClosedEvent.
|
|
11
|
+
* @alpha
|
|
12
|
+
*/
|
|
13
|
+
export const isChatClosedEvent = (event) => {
|
|
14
|
+
return event.type === "chatClosed";
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Type guard for the ChatResetEvent.
|
|
18
|
+
* @alpha
|
|
19
|
+
*/
|
|
20
|
+
export const isChatResetEvent = (event) => {
|
|
21
|
+
return event.type === "chatReset";
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Type guard for the ChatUserMessageEvent.
|
|
25
|
+
* @alpha
|
|
26
|
+
*/
|
|
27
|
+
export const isChatUserMessageEvent = (event) => {
|
|
28
|
+
return event.type === "chatUserMessage";
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Type guard for the ChatAssistantMessageEvent.
|
|
32
|
+
* @alpha
|
|
33
|
+
*/
|
|
34
|
+
export const isChatAssistantMessageEvent = (event) => {
|
|
35
|
+
return event.type === "chatAssistantMessage";
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Type guard for the ChatFeedbackEvent.
|
|
39
|
+
* @alpha
|
|
40
|
+
*/
|
|
41
|
+
export const isChatFeedbackEvent = (event) => {
|
|
42
|
+
return event.type === "chatFeedback";
|
|
43
|
+
};
|
|
44
|
+
export class EventDispatcher {
|
|
45
|
+
handlers = [];
|
|
46
|
+
setHandlers(handlers) {
|
|
47
|
+
this.handlers = handlers;
|
|
48
|
+
}
|
|
49
|
+
dispatch(event) {
|
|
50
|
+
this.handlers.forEach((handler) => {
|
|
51
|
+
if (handler.eval(event)) {
|
|
52
|
+
handler.handler(event);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=events.js.map
|