@gooddata/sdk-ui-gen-ai 11.43.0-alpha.0 → 11.43.0-alpha.2
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 +130 -130
- package/esm/components/messages/AgentChangeItem.js +1 -1
- package/esm/components/messages/ConversationItemContents.d.ts.map +1 -1
- package/esm/components/messages/ConversationItemContents.js +4 -1
- package/esm/components/messages/conversationContents/ConversationAlertProposalContent.d.ts +1 -1
- package/esm/components/messages/conversationContents/ConversationAlertProposalContent.d.ts.map +1 -1
- package/esm/components/messages/conversationContents/ConversationAlertProposalContent.js +171 -26
- package/esm/components/messages/conversationContents/ConversationVisualisation.d.ts +1 -1
- package/esm/components/messages/conversationContents/ConversationVisualisation.d.ts.map +1 -1
- package/esm/components/messages/conversationContents/ConversationVisualisation.js +4 -30
- package/esm/components/messages/conversationContents/ConversationVisualizationContent.d.ts +11 -2
- package/esm/components/messages/conversationContents/ConversationVisualizationContent.d.ts.map +1 -1
- package/esm/components/messages/conversationContents/SaveVisualizationDialog.d.ts +11 -2
- package/esm/components/messages/conversationContents/SaveVisualizationDialog.d.ts.map +1 -1
- package/esm/components/messages/conversationContents/useExecution.d.ts +1 -1
- package/esm/components/messages/conversationContents/useExecution.d.ts.map +1 -1
- package/esm/components/messages/conversationContents/utils/changeAnalysisDrills.d.ts +4 -0
- package/esm/components/messages/conversationContents/utils/changeAnalysisDrills.d.ts.map +1 -0
- package/esm/components/messages/conversationContents/utils/changeAnalysisDrills.js +32 -0
- package/esm/localization/bundles/en-US.localization-bundle.d.ts +66 -14
- package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/localization/bundles/en-US.localization-bundle.js +87 -35
- package/esm/store/messages/messagesSlice.js +2 -2
- package/esm/store/sideEffects/onUserMessage.d.ts.map +1 -1
- package/esm/store/sideEffects/onUserMessage.js +8 -1
- package/esm/store/sideEffects/onVisualizationSave.d.ts.map +1 -1
- package/esm/store/sideEffects/onVisualizationSave.js +6 -5
- package/esm/tsdoc-metadata.json +1 -1
- package/esm/types.d.ts +1 -1
- package/esm/types.d.ts.map +1 -1
- package/esm/whatIf/whatIfMapping.js +1 -1
- package/package.json +20 -20
- package/styles/css/main.css +18 -0
- package/styles/css/main.css.map +1 -1
- package/styles/css/messages.css +18 -0
- package/styles/css/messages.css.map +1 -1
- package/styles/scss/messages.scss +22 -0
|
@@ -95,6 +95,10 @@ export declare const en_US: {
|
|
|
95
95
|
text: string;
|
|
96
96
|
crowdinContext: string;
|
|
97
97
|
};
|
|
98
|
+
"gd.gen-ai.visualization.unavailable": {
|
|
99
|
+
text: string;
|
|
100
|
+
crowdinContext: string;
|
|
101
|
+
};
|
|
98
102
|
"gd.gen-ai.permission-error": {
|
|
99
103
|
text: string;
|
|
100
104
|
crowdinContext: string;
|
|
@@ -267,59 +271,107 @@ export declare const en_US: {
|
|
|
267
271
|
text: string;
|
|
268
272
|
crowdinContext: string;
|
|
269
273
|
};
|
|
270
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
274
|
+
"gd.gen-ai.alert-proposal.summary.date": {
|
|
271
275
|
text: string;
|
|
272
276
|
crowdinContext: string;
|
|
273
277
|
};
|
|
274
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
278
|
+
"gd.gen-ai.alert-proposal.summary.notification-channel": {
|
|
275
279
|
text: string;
|
|
276
280
|
crowdinContext: string;
|
|
277
281
|
};
|
|
278
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
282
|
+
"gd.gen-ai.alert-proposal.summary.dashboard": {
|
|
279
283
|
text: string;
|
|
280
284
|
crowdinContext: string;
|
|
281
285
|
};
|
|
282
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
286
|
+
"gd.gen-ai.alert-proposal.summary.recipients": {
|
|
283
287
|
text: string;
|
|
284
288
|
crowdinContext: string;
|
|
285
289
|
};
|
|
286
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
290
|
+
"gd.gen-ai.alert-proposal.summary.condition-comparison": {
|
|
287
291
|
text: string;
|
|
288
292
|
crowdinContext: string;
|
|
289
293
|
};
|
|
290
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
294
|
+
"gd.gen-ai.alert-proposal.summary.condition-relative": {
|
|
291
295
|
text: string;
|
|
292
296
|
crowdinContext: string;
|
|
293
297
|
};
|
|
294
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
298
|
+
"gd.gen-ai.alert-proposal.summary.condition-anomalyDetection": {
|
|
295
299
|
text: string;
|
|
296
300
|
crowdinContext: string;
|
|
297
301
|
};
|
|
298
|
-
"
|
|
302
|
+
"sdk.ui.genAi.alertProposal.operator.lessThan": {
|
|
299
303
|
text: string;
|
|
300
304
|
crowdinContext: string;
|
|
301
305
|
};
|
|
302
|
-
"
|
|
306
|
+
"sdk.ui.genAi.alertProposal.operator.lessThanOrEqualTo": {
|
|
303
307
|
text: string;
|
|
304
308
|
crowdinContext: string;
|
|
305
309
|
};
|
|
306
|
-
"
|
|
310
|
+
"sdk.ui.genAi.alertProposal.operator.greaterThan": {
|
|
307
311
|
text: string;
|
|
308
312
|
crowdinContext: string;
|
|
309
313
|
};
|
|
310
|
-
"
|
|
314
|
+
"sdk.ui.genAi.alertProposal.operator.greaterThanOrEqualTo": {
|
|
311
315
|
text: string;
|
|
312
316
|
crowdinContext: string;
|
|
313
317
|
};
|
|
314
|
-
"
|
|
318
|
+
"sdk.ui.genAi.alertProposal.operator.equalTo": {
|
|
315
319
|
text: string;
|
|
316
320
|
crowdinContext: string;
|
|
317
321
|
};
|
|
318
|
-
"
|
|
322
|
+
"sdk.ui.genAi.alertProposal.operator.increasesBy": {
|
|
319
323
|
text: string;
|
|
320
324
|
crowdinContext: string;
|
|
321
325
|
};
|
|
322
|
-
"
|
|
326
|
+
"sdk.ui.genAi.alertProposal.operator.decreasesBy": {
|
|
327
|
+
text: string;
|
|
328
|
+
crowdinContext: string;
|
|
329
|
+
};
|
|
330
|
+
"sdk.ui.genAi.alertProposal.operator.changesBy": {
|
|
331
|
+
text: string;
|
|
332
|
+
crowdinContext: string;
|
|
333
|
+
};
|
|
334
|
+
"sdk.ui.genAi.alertProposal.operator.change": {
|
|
335
|
+
text: string;
|
|
336
|
+
crowdinContext: string;
|
|
337
|
+
};
|
|
338
|
+
"sdk.ui.genAi.alertProposal.operator.difference": {
|
|
339
|
+
text: string;
|
|
340
|
+
crowdinContext: string;
|
|
341
|
+
};
|
|
342
|
+
"sdk.ui.genAi.alertProposal.granularity.hour": {
|
|
343
|
+
text: string;
|
|
344
|
+
crowdinContext: string;
|
|
345
|
+
};
|
|
346
|
+
"sdk.ui.genAi.alertProposal.granularity.day": {
|
|
347
|
+
text: string;
|
|
348
|
+
crowdinContext: string;
|
|
349
|
+
};
|
|
350
|
+
"sdk.ui.genAi.alertProposal.granularity.week": {
|
|
351
|
+
text: string;
|
|
352
|
+
crowdinContext: string;
|
|
353
|
+
};
|
|
354
|
+
"sdk.ui.genAi.alertProposal.granularity.month": {
|
|
355
|
+
text: string;
|
|
356
|
+
crowdinContext: string;
|
|
357
|
+
};
|
|
358
|
+
"sdk.ui.genAi.alertProposal.granularity.quarter": {
|
|
359
|
+
text: string;
|
|
360
|
+
crowdinContext: string;
|
|
361
|
+
};
|
|
362
|
+
"sdk.ui.genAi.alertProposal.granularity.year": {
|
|
363
|
+
text: string;
|
|
364
|
+
crowdinContext: string;
|
|
365
|
+
};
|
|
366
|
+
"sdk.ui.genAi.alertProposal.senstivity.low": {
|
|
367
|
+
text: string;
|
|
368
|
+
crowdinContext: string;
|
|
369
|
+
};
|
|
370
|
+
"sdk.ui.genAi.alertProposal.senstivity.medium": {
|
|
371
|
+
text: string;
|
|
372
|
+
crowdinContext: string;
|
|
373
|
+
};
|
|
374
|
+
"sdk.ui.genAi.alertProposal.senstivity.high": {
|
|
323
375
|
text: string;
|
|
324
376
|
crowdinContext: string;
|
|
325
377
|
};
|
|
@@ -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
|
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqsBjB,CAAC"}
|
|
@@ -97,6 +97,10 @@ export const en_US = {
|
|
|
97
97
|
"text": "<b>Data too large.</b> Ask for reduce a data by applying filters.",
|
|
98
98
|
"crowdinContext": "Error message when data is too large"
|
|
99
99
|
},
|
|
100
|
+
"gd.gen-ai.visualization.unavailable": {
|
|
101
|
+
"text": "Visualization could not be displayed.",
|
|
102
|
+
"crowdinContext": "Message shown in place of a chart when the requested visualization is not available to display"
|
|
103
|
+
},
|
|
100
104
|
"gd.gen-ai.permission-error": {
|
|
101
105
|
"text": "Insufficient permissions",
|
|
102
106
|
"crowdinContext": "Error message when user does not have sufficient permissions to access the chatbot"
|
|
@@ -269,14 +273,6 @@ export const en_US = {
|
|
|
269
273
|
"text": "Filters",
|
|
270
274
|
"crowdinContext": "Filters for alert in alert proposal dialog."
|
|
271
275
|
},
|
|
272
|
-
"gd.gen-ai.alert-proposal.summary.metric": {
|
|
273
|
-
"text": "Metric",
|
|
274
|
-
"crowdinContext": "Metric for alert in alert proposal dialog."
|
|
275
|
-
},
|
|
276
|
-
"gd.gen-ai.alert-proposal.summary.metric-compared": {
|
|
277
|
-
"text": "Compared to",
|
|
278
|
-
"crowdinContext": "Compared to metric for alert in alert proposal dialog."
|
|
279
|
-
},
|
|
280
276
|
"gd.gen-ai.alert-proposal.summary.date": {
|
|
281
277
|
"text": "Date",
|
|
282
278
|
"crowdinContext": "Date dataset for alert in alert proposal dialog."
|
|
@@ -289,41 +285,97 @@ export const en_US = {
|
|
|
289
285
|
"text": "Dashboard",
|
|
290
286
|
"crowdinContext": "Dashboard for alert in alert proposal dialog."
|
|
291
287
|
},
|
|
292
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
293
|
-
"text": "
|
|
294
|
-
"crowdinContext": "
|
|
288
|
+
"gd.gen-ai.alert-proposal.summary.recipients": {
|
|
289
|
+
"text": "Recipients",
|
|
290
|
+
"crowdinContext": "Recipients for alert in alert proposal dialog."
|
|
295
291
|
},
|
|
296
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
297
|
-
"text": "
|
|
298
|
-
"crowdinContext": "
|
|
292
|
+
"gd.gen-ai.alert-proposal.summary.condition-comparison": {
|
|
293
|
+
"text": "Comparison",
|
|
294
|
+
"crowdinContext": "Comparison for alert in alert proposal dialog."
|
|
299
295
|
},
|
|
300
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
301
|
-
"text": "
|
|
302
|
-
"crowdinContext": "
|
|
296
|
+
"gd.gen-ai.alert-proposal.summary.condition-relative": {
|
|
297
|
+
"text": "Relative",
|
|
298
|
+
"crowdinContext": "Relative for alert in alert proposal dialog."
|
|
303
299
|
},
|
|
304
|
-
"gd.gen-ai.alert-proposal.summary.
|
|
305
|
-
"text": "
|
|
306
|
-
"crowdinContext": "
|
|
300
|
+
"gd.gen-ai.alert-proposal.summary.condition-anomalyDetection": {
|
|
301
|
+
"text": "Anomaly Detection",
|
|
302
|
+
"crowdinContext": "Anomaly Detection for alert in alert proposal dialog."
|
|
307
303
|
},
|
|
308
|
-
"
|
|
309
|
-
"text": "
|
|
310
|
-
"crowdinContext": "
|
|
304
|
+
"sdk.ui.genAi.alertProposal.operator.lessThan": {
|
|
305
|
+
"text": "<",
|
|
306
|
+
"crowdinContext": "Less than operator for alert in alert proposal dialog."
|
|
311
307
|
},
|
|
312
|
-
"
|
|
313
|
-
"text": "
|
|
314
|
-
"crowdinContext": "
|
|
308
|
+
"sdk.ui.genAi.alertProposal.operator.lessThanOrEqualTo": {
|
|
309
|
+
"text": "<=",
|
|
310
|
+
"crowdinContext": "Less than or equal to operator for alert in alert proposal dialog."
|
|
315
311
|
},
|
|
316
|
-
"
|
|
317
|
-
"text": "
|
|
318
|
-
"crowdinContext": "
|
|
312
|
+
"sdk.ui.genAi.alertProposal.operator.greaterThan": {
|
|
313
|
+
"text": ">",
|
|
314
|
+
"crowdinContext": "Greater than operator for alert in alert proposal dialog."
|
|
319
315
|
},
|
|
320
|
-
"
|
|
321
|
-
"text": "
|
|
322
|
-
"crowdinContext": "
|
|
316
|
+
"sdk.ui.genAi.alertProposal.operator.greaterThanOrEqualTo": {
|
|
317
|
+
"text": ">=",
|
|
318
|
+
"crowdinContext": "Greater than or equal to operator for alert in alert proposal dialog."
|
|
323
319
|
},
|
|
324
|
-
"
|
|
325
|
-
"text": "
|
|
326
|
-
"crowdinContext": "
|
|
320
|
+
"sdk.ui.genAi.alertProposal.operator.equalTo": {
|
|
321
|
+
"text": "=",
|
|
322
|
+
"crowdinContext": "Equal to operator for alert in alert proposal dialog."
|
|
323
|
+
},
|
|
324
|
+
"sdk.ui.genAi.alertProposal.operator.increasesBy": {
|
|
325
|
+
"text": "increases by",
|
|
326
|
+
"crowdinContext": "Increases by operator for alert in alert proposal dialog."
|
|
327
|
+
},
|
|
328
|
+
"sdk.ui.genAi.alertProposal.operator.decreasesBy": {
|
|
329
|
+
"text": "decreases by",
|
|
330
|
+
"crowdinContext": "Decreases by operator for alert in alert proposal dialog."
|
|
331
|
+
},
|
|
332
|
+
"sdk.ui.genAi.alertProposal.operator.changesBy": {
|
|
333
|
+
"text": "changes by",
|
|
334
|
+
"crowdinContext": "Changes by operator for alert in alert proposal dialog."
|
|
335
|
+
},
|
|
336
|
+
"sdk.ui.genAi.alertProposal.operator.change": {
|
|
337
|
+
"text": "-",
|
|
338
|
+
"crowdinContext": "Changes by operator for alert in alert proposal dialog."
|
|
339
|
+
},
|
|
340
|
+
"sdk.ui.genAi.alertProposal.operator.difference": {
|
|
341
|
+
"text": "%",
|
|
342
|
+
"crowdinContext": "Changes by operator for alert in alert proposal dialog."
|
|
343
|
+
},
|
|
344
|
+
"sdk.ui.genAi.alertProposal.granularity.hour": {
|
|
345
|
+
"text": "on <b>hourly</b> basis",
|
|
346
|
+
"crowdinContext": "Hour granularity for alert in alert proposal dialog."
|
|
347
|
+
},
|
|
348
|
+
"sdk.ui.genAi.alertProposal.granularity.day": {
|
|
349
|
+
"text": "on <b>daily</b> basis",
|
|
350
|
+
"crowdinContext": "Day granularity for alert in alert proposal dialog."
|
|
351
|
+
},
|
|
352
|
+
"sdk.ui.genAi.alertProposal.granularity.week": {
|
|
353
|
+
"text": "on <b>weekly</b> basis",
|
|
354
|
+
"crowdinContext": "Week granularity for alert in alert proposal dialog."
|
|
355
|
+
},
|
|
356
|
+
"sdk.ui.genAi.alertProposal.granularity.month": {
|
|
357
|
+
"text": "on <b>monthly</b> basis",
|
|
358
|
+
"crowdinContext": "Month granularity for alert in alert proposal dialog."
|
|
359
|
+
},
|
|
360
|
+
"sdk.ui.genAi.alertProposal.granularity.quarter": {
|
|
361
|
+
"text": "on <b>quarterly</b> basis",
|
|
362
|
+
"crowdinContext": "Quarter granularity for alert in alert proposal dialog."
|
|
363
|
+
},
|
|
364
|
+
"sdk.ui.genAi.alertProposal.granularity.year": {
|
|
365
|
+
"text": "on <b>yearly</b> basis",
|
|
366
|
+
"crowdinContext": "Year granularity for alert in alert proposal dialog."
|
|
367
|
+
},
|
|
368
|
+
"sdk.ui.genAi.alertProposal.senstivity.low": {
|
|
369
|
+
"text": "with <b>low</b> sensitivity",
|
|
370
|
+
"crowdinContext": "Low sensitivity for alert in alert proposal dialog."
|
|
371
|
+
},
|
|
372
|
+
"sdk.ui.genAi.alertProposal.senstivity.medium": {
|
|
373
|
+
"text": "with <b>medium</b> sensitivity",
|
|
374
|
+
"crowdinContext": "Medium sensitivity for alert in alert proposal dialog."
|
|
375
|
+
},
|
|
376
|
+
"sdk.ui.genAi.alertProposal.senstivity.high": {
|
|
377
|
+
"text": "with <b>high</b> sensitivity",
|
|
378
|
+
"crowdinContext": "High sensitivity for alert in alert proposal dialog."
|
|
327
379
|
},
|
|
328
380
|
"gd.gen-ai.alert-proposal.summary.trigger": {
|
|
329
381
|
"text": "Trigger",
|
|
@@ -629,7 +629,7 @@ const messagesSlice = createSlice({
|
|
|
629
629
|
const visualization = assistantMessage.content.parts
|
|
630
630
|
.filter((filter) => filter.type === "visualization")
|
|
631
631
|
.find((content) => content.visualization?.insight.identifier === payload.visualizationId);
|
|
632
|
-
if (visualization) {
|
|
632
|
+
if (visualization?.visualization) {
|
|
633
633
|
visualization.visualization.insight.title = payload.visualizationTitle;
|
|
634
634
|
visualization.saving = {
|
|
635
635
|
started: true,
|
|
@@ -698,7 +698,7 @@ const messagesSlice = createSlice({
|
|
|
698
698
|
const visualization = assistantMessage.content.parts
|
|
699
699
|
.filter((filter) => filter.type === "visualization")
|
|
700
700
|
.find((content) => content.visualization?.insight.identifier === payload.visualizationId);
|
|
701
|
-
if (visualization) {
|
|
701
|
+
if (visualization?.visualization) {
|
|
702
702
|
visualization.saving = {
|
|
703
703
|
started: true,
|
|
704
704
|
completed: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onUserMessage.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/onUserMessage.ts"],"names":[],"mappings":"AAIA,OAAO,EAEH,KAAK,iBAAiB,EASzB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAOlC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"onUserMessage.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/onUserMessage.ts"],"names":[],"mappings":"AAIA,OAAO,EAEH,KAAK,iBAAiB,EASzB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAOlC,MAAM,gBAAgB,CAAC;AAkBxB,OAAO,EAOH,KAAK,gBAAgB,EAGxB,MAAM,8BAA8B,CAAC;AAMtC;;;GAGG;AACH,wBAAiB,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oJAmB9E"}
|
|
@@ -3,7 +3,7 @@ import { call, cancel, cancelled, getContext, put, select } from "redux-saga/eff
|
|
|
3
3
|
import { isChatConversationError, isChatConversationItem, } from "@gooddata/sdk-backend-spi";
|
|
4
4
|
import { isChatConversationLocalItem, isTextContents, isUserMessage, makeAssistantItem, makeAssistantMessage, } from "../../model.js";
|
|
5
5
|
import { generateTitleFromQuestion } from "../../utils.js";
|
|
6
|
-
import { agentSwitchingActiveSelector, allowedRelationshipTypesSelector, objectTypesSelector, settingsSelector, userContextSelector, } from "../chatWindow/chatWindowSelectors.js";
|
|
6
|
+
import { agentSwitchingActiveSelector, allowedRelationshipTypesSelector, objectTypesSelector, settingsSelector, tagsSelector, userContextSelector, } from "../chatWindow/chatWindowSelectors.js";
|
|
7
7
|
import { clearUserContextAction } from "../chatWindow/chatWindowSlice.js";
|
|
8
8
|
import { conversationMessagesByIdSelector, conversationSelector, messagesSelector, pendingAgentSwitchSelector, selectedAgentIdSelector, } from "../messages/messagesSelectors.js";
|
|
9
9
|
import { applyPendingAgentSwitchAction, evaluateMessageAction, evaluateMessageCompleteAction, evaluateMessageErrorAction, evaluateMessageStreamingAction, evaluateMessageUpdateAction, revertAgentSwitchAction, setCurrentConversationAction, } from "../messages/messagesSlice.js";
|
|
@@ -321,6 +321,7 @@ function* evaluateUserConversationMessage(conversation, userMessage, assistantMe
|
|
|
321
321
|
let reader = undefined;
|
|
322
322
|
const settings = yield select(settingsSelector);
|
|
323
323
|
const objectTypes = yield select(objectTypesSelector);
|
|
324
|
+
const { includeTags, excludeTags } = yield select(tagsSelector);
|
|
324
325
|
const allowedRelationshipTypes = yield select(allowedRelationshipTypesSelector);
|
|
325
326
|
const userContext = yield select(userContextSelector);
|
|
326
327
|
// Clear user context immediately — it is a one-shot value
|
|
@@ -332,6 +333,12 @@ function* evaluateUserConversationMessage(conversation, userMessage, assistantMe
|
|
|
332
333
|
let queryBuilder = preparedChatThread
|
|
333
334
|
.withSearchLimit(Number(settings?.["aiChatSearchLimit"]) || 5)
|
|
334
335
|
.withObjectTypes(objectTypes);
|
|
336
|
+
if (excludeTags) {
|
|
337
|
+
queryBuilder = queryBuilder.withExcludeTags(excludeTags);
|
|
338
|
+
}
|
|
339
|
+
if (includeTags) {
|
|
340
|
+
queryBuilder = queryBuilder.withIncludeTags(includeTags);
|
|
341
|
+
}
|
|
335
342
|
if (allowedRelationshipTypes?.length) {
|
|
336
343
|
queryBuilder = queryBuilder.withAllowedRelationshipTypes(allowedRelationshipTypes);
|
|
337
344
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onVisualizationSave.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/onVisualizationSave.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAGH,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAG1B,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAEH,KAAK,0BAA0B,EAE/B,KAAK,OAAO,EAEf,MAAM,gBAAgB,CAAC;AASxB,wBAAiB,mBAAmB,CAAC,EACjC,OAAO,EACV,EAAE,aAAa,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"onVisualizationSave.d.ts","sourceRoot":"","sources":["../../../src/store/sideEffects/onVisualizationSave.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAGH,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAG1B,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAEH,KAAK,0BAA0B,EAE/B,KAAK,OAAO,EAEf,MAAM,gBAAgB,CAAC;AASxB,wBAAiB,mBAAmB,CAAC,EACjC,OAAO,EACV,EAAE,aAAa,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CACpB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA8GD;AAoGD,eAAO,MAAM,cAAc,+FA0C1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,+FAoC5B,CAAC"}
|
|
@@ -24,14 +24,15 @@ export function* onVisualizationSave({ payload, }) {
|
|
|
24
24
|
}
|
|
25
25
|
const visualizationContent = assistantMessage.content.parts
|
|
26
26
|
.filter((filter) => filter.type === "visualization")
|
|
27
|
-
.find((content) => content.visualization
|
|
28
|
-
if (!visualizationContent) {
|
|
27
|
+
.find((content) => content.visualization?.insight.identifier === payload.visualizationId);
|
|
28
|
+
if (!visualizationContent?.visualization) {
|
|
29
29
|
return;
|
|
30
30
|
}
|
|
31
|
+
const sourceVisualization = visualizationContent.visualization;
|
|
31
32
|
const savedVisualization = yield call(backend.workspace(workspace).insights().createInsight, {
|
|
32
|
-
...
|
|
33
|
+
...sourceVisualization,
|
|
33
34
|
insight: {
|
|
34
|
-
...
|
|
35
|
+
...sourceVisualization.insight,
|
|
35
36
|
title: payload.visualizationTitle,
|
|
36
37
|
},
|
|
37
38
|
});
|
|
@@ -40,7 +41,7 @@ export function* onVisualizationSave({ payload, }) {
|
|
|
40
41
|
.genAI()
|
|
41
42
|
.getChatConversations()
|
|
42
43
|
.getConversationThread(conversation.id);
|
|
43
|
-
yield call(resave.resaveVisualisation.bind(resave),
|
|
44
|
+
yield call(resave.resaveVisualisation.bind(resave), sourceVisualization.insight.identifier, savedVisualization.insight.identifier);
|
|
44
45
|
yield put(saveVisualizationSuccessAction({
|
|
45
46
|
visualizationId: payload.visualizationId,
|
|
46
47
|
assistantMessageId: payload.assistantMessageId,
|
package/esm/tsdoc-metadata.json
CHANGED
package/esm/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type IChatConversationVisualisationContent } from "@gooddata/sdk-backend-spi";
|
|
2
2
|
import { type IGenAIVisualization } from "@gooddata/sdk-model";
|
|
3
3
|
import { type IChatConversationLocalItem } from "./model.js";
|
|
4
|
-
export type Config = IGenAIVisualization["config"] | IChatConversationVisualisationContent["visualization"]["insight"]["properties"]["controls"];
|
|
4
|
+
export type Config = IGenAIVisualization["config"] | NonNullable<IChatConversationVisualisationContent["visualization"]>["insight"]["properties"]["controls"];
|
|
5
5
|
export type StoredConversation = {
|
|
6
6
|
/**
|
|
7
7
|
* A record containing chat conversation items indexed by string keys.
|
package/esm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,MAAM,MAAM,GACZ,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,qCAAqC,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,MAAM,MAAM,GACZ,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,WAAW,CACP,qCAAqC,CAAC,eAAe,CAAC,CACzD,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,CAAC;AAE7C,MAAM,MAAM,kBAAkB,GAAG;IAC7B;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAClD;;;OAGG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IACnE;;;OAGG;IACH,kBAAkB,CAAC,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;KACvC,CAAC;CACL,CAAC"}
|
|
@@ -57,7 +57,7 @@ export function loadWhatIfScenarios(content) {
|
|
|
57
57
|
}
|
|
58
58
|
// Search for visualizations
|
|
59
59
|
const visualisation = content.parts?.find((p) => p.type === "visualization");
|
|
60
|
-
if (!visualisation) {
|
|
60
|
+
if (!visualisation?.visualization) {
|
|
61
61
|
return undefined;
|
|
62
62
|
}
|
|
63
63
|
const scenarios = [];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-ui-gen-ai",
|
|
3
|
-
"version": "11.43.0-alpha.
|
|
3
|
+
"version": "11.43.0-alpha.2",
|
|
4
4
|
"description": "GoodData GenAI SDK",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "GoodData Corporation",
|
|
@@ -56,18 +56,18 @@
|
|
|
56
56
|
"reselect": "5.1.1",
|
|
57
57
|
"tslib": "2.8.1",
|
|
58
58
|
"uuid": "11.1.1",
|
|
59
|
-
"@gooddata/api-client-tiger": "11.43.0-alpha.
|
|
60
|
-
"@gooddata/sdk-
|
|
61
|
-
"@gooddata/sdk-
|
|
62
|
-
"@gooddata/sdk-
|
|
63
|
-
"@gooddata/sdk-
|
|
64
|
-
"@gooddata/sdk-ui-dashboard": "11.43.0-alpha.
|
|
65
|
-
"@gooddata/sdk-ui-filters": "11.43.0-alpha.
|
|
66
|
-
"@gooddata/sdk-ui-kit": "11.43.0-alpha.
|
|
67
|
-
"@gooddata/sdk-ui-
|
|
68
|
-
"@gooddata/sdk-ui-
|
|
69
|
-
"@gooddata/
|
|
70
|
-
"@gooddata/
|
|
59
|
+
"@gooddata/api-client-tiger": "11.43.0-alpha.2",
|
|
60
|
+
"@gooddata/sdk-ui": "11.43.0-alpha.2",
|
|
61
|
+
"@gooddata/sdk-backend-spi": "11.43.0-alpha.2",
|
|
62
|
+
"@gooddata/sdk-ui-charts": "11.43.0-alpha.2",
|
|
63
|
+
"@gooddata/sdk-model": "11.43.0-alpha.2",
|
|
64
|
+
"@gooddata/sdk-ui-dashboard": "11.43.0-alpha.2",
|
|
65
|
+
"@gooddata/sdk-ui-filters": "11.43.0-alpha.2",
|
|
66
|
+
"@gooddata/sdk-ui-kit": "11.43.0-alpha.2",
|
|
67
|
+
"@gooddata/sdk-ui-semantic-search": "11.43.0-alpha.2",
|
|
68
|
+
"@gooddata/sdk-ui-theme-provider": "11.43.0-alpha.2",
|
|
69
|
+
"@gooddata/sdk-ui-pivot": "11.43.0-alpha.2",
|
|
70
|
+
"@gooddata/util": "11.43.0-alpha.2"
|
|
71
71
|
},
|
|
72
72
|
"devDependencies": {
|
|
73
73
|
"@microsoft/api-documenter": "^7.17.0",
|
|
@@ -110,13 +110,13 @@
|
|
|
110
110
|
"typescript": "5.9.3",
|
|
111
111
|
"vitest": "4.1.8",
|
|
112
112
|
"vitest-dom": "0.1.1",
|
|
113
|
-
"@gooddata/eslint-config": "11.43.0-alpha.
|
|
114
|
-
"@gooddata/i18n-toolkit": "11.43.0-alpha.
|
|
115
|
-
"@gooddata/reference-workspace": "11.43.0-alpha.
|
|
116
|
-
"@gooddata/oxlint-config": "11.43.0-alpha.
|
|
117
|
-
"@gooddata/sdk-
|
|
118
|
-
"@gooddata/stylelint-config": "11.43.0-alpha.
|
|
119
|
-
"@gooddata/sdk-
|
|
113
|
+
"@gooddata/eslint-config": "11.43.0-alpha.2",
|
|
114
|
+
"@gooddata/i18n-toolkit": "11.43.0-alpha.2",
|
|
115
|
+
"@gooddata/reference-workspace": "11.43.0-alpha.2",
|
|
116
|
+
"@gooddata/oxlint-config": "11.43.0-alpha.2",
|
|
117
|
+
"@gooddata/sdk-ui-theme-provider": "11.43.0-alpha.2",
|
|
118
|
+
"@gooddata/stylelint-config": "11.43.0-alpha.2",
|
|
119
|
+
"@gooddata/sdk-backend-mockingbird": "11.43.0-alpha.2"
|
|
120
120
|
},
|
|
121
121
|
"peerDependencies": {
|
|
122
122
|
"react": "^18.0.0 || ^19.0.0",
|
package/styles/css/main.css
CHANGED
|
@@ -14303,6 +14303,24 @@ body.gd-kda-dialog-opened .highcharts-tooltip-container {
|
|
|
14303
14303
|
display: inline;
|
|
14304
14304
|
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
14305
14305
|
}
|
|
14306
|
+
.gd-gen-ai-chat__conversation__item__content--alertProposal .gd-gen-ai-chat__conversation__item__content-alertProposal-condition {
|
|
14307
|
+
display: flex;
|
|
14308
|
+
flex-direction: row;
|
|
14309
|
+
gap: 5px;
|
|
14310
|
+
align-items: center;
|
|
14311
|
+
align-self: center;
|
|
14312
|
+
}
|
|
14313
|
+
.gd-gen-ai-chat__conversation__item__content--alertProposal .gd-gen-ai-chat__conversation__item__content-alertProposal-condition .alertProposal-operand-number {
|
|
14314
|
+
font-weight: bold;
|
|
14315
|
+
}
|
|
14316
|
+
.gd-gen-ai-chat__conversation__item__content--alertProposal .gd-gen-ai-chat__conversation__item__content-alertProposal-anomaly {
|
|
14317
|
+
display: block;
|
|
14318
|
+
padding: 5px 15px 0 15px;
|
|
14319
|
+
text-align: center;
|
|
14320
|
+
}
|
|
14321
|
+
.gd-gen-ai-chat__conversation__item__content--alertProposal .gd-gen-ai-chat__conversation__item__content-alertProposal-anomaly .alertProposal-operand {
|
|
14322
|
+
display: inline-block;
|
|
14323
|
+
}
|
|
14306
14324
|
.gd-gen-ai-chat__conversation__item__content--kda__button {
|
|
14307
14325
|
margin-top: 15px;
|
|
14308
14326
|
display: flex;
|