@gooddata/sdk-ui-dashboard 10.10.0-alpha.34 → 10.10.0-alpha.36

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 (76) hide show
  1. package/esm/__version.d.ts +1 -1
  2. package/esm/__version.js +1 -1
  3. package/esm/_staging/sharedHooks/useFiltersNamings.d.ts +7 -0
  4. package/esm/_staging/sharedHooks/useFiltersNamings.d.ts.map +1 -0
  5. package/esm/_staging/sharedHooks/useFiltersNamings.js +70 -0
  6. package/esm/_staging/sharedHooks/useFiltersNamings.js.map +1 -0
  7. package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.d.ts.map +1 -1
  8. package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.js +3 -4
  9. package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.js.map +1 -1
  10. package/esm/presentation/localization/bundles/en-US.json +75 -20
  11. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts +0 -7
  12. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
  13. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +31 -47
  14. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js.map +1 -1
  15. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/DestinationSelect/DestinationSelect.d.ts.map +1 -1
  16. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/DestinationSelect/DestinationSelect.js +2 -2
  17. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/DestinationSelect/DestinationSelect.js.map +1 -1
  18. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.d.ts +0 -1
  19. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.d.ts.map +1 -1
  20. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.js +0 -1
  21. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.js.map +1 -1
  22. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.d.ts +1 -1
  23. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.d.ts.map +1 -1
  24. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.js +5 -68
  25. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.js.map +1 -1
  26. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts +0 -7
  27. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts.map +1 -1
  28. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js +0 -17
  29. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js.map +1 -1
  30. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.d.ts +6 -2
  31. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.d.ts.map +1 -1
  32. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.js +32 -10
  33. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.js.map +1 -1
  34. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.d.ts.map +1 -1
  35. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.js +2 -2
  36. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.js.map +1 -1
  37. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts.map +1 -1
  38. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js +28 -4
  39. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js.map +1 -1
  40. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/constants.d.ts +30 -6
  41. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/constants.d.ts.map +1 -1
  42. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/constants.js +73 -1
  43. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/constants.js.map +1 -1
  44. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.js +2 -2
  45. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.js.map +1 -1
  46. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts +2 -1
  47. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts.map +1 -1
  48. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js +10 -41
  49. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js.map +1 -1
  50. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useOperators.d.ts +9 -0
  51. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useOperators.d.ts.map +1 -0
  52. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useOperators.js +22 -0
  53. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useOperators.js.map +1 -0
  54. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/messages.d.ts +30 -0
  55. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/messages.d.ts.map +1 -1
  56. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/messages.js +30 -0
  57. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/messages.js.map +1 -1
  58. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts +16 -5
  59. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts.map +1 -1
  60. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js +221 -9
  61. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js.map +1 -1
  62. package/package.json +15 -15
  63. package/styles/css/alerting.css +17 -0
  64. package/styles/css/alerting.css.map +1 -1
  65. package/styles/css/dashboard.css +2 -1
  66. package/styles/css/dashboard.css.map +1 -1
  67. package/styles/css/main.css +19 -1
  68. package/styles/css/main.css.map +1 -1
  69. package/styles/css/notifications_channels_dialog.css +2 -1
  70. package/styles/css/notifications_channels_dialog.css.map +1 -1
  71. package/styles/scss/alerting.scss +17 -0
  72. package/styles/scss/notifications_channels_dialog.scss +2 -3
  73. package/esm/presentation/alerting/DefaultAlertingDialog/operator.d.ts +0 -4
  74. package/esm/presentation/alerting/DefaultAlertingDialog/operator.d.ts.map +0 -1
  75. package/esm/presentation/alerting/DefaultAlertingDialog/operator.js +0 -31
  76. package/esm/presentation/alerting/DefaultAlertingDialog/operator.js.map +0 -1
@@ -1,15 +1,28 @@
1
1
  import { messages } from "./messages.js";
2
- export const LOADING_MASK_HEIGHT = 100;
3
2
  export const COMPARISON_OPERATOR_LESS_THAN = "LESS_THAN";
4
3
  export const COMPARISON_OPERATOR_LESS_THAN_OR_EQUAL_TO = "LESS_THAN_OR_EQUAL_TO";
5
4
  export const COMPARISON_OPERATOR_GREATER_THAN = "GREATER_THAN";
6
5
  export const COMPARISON_OPERATOR_GREATER_THAN_OR_EQUAL_TO = "GREATER_THAN_OR_EQUAL_TO";
6
+ export const RELATIVE_OPERATOR_INCREASE_BY = "INCREASES_BY";
7
+ export const RELATIVE_OPERATOR_DECREASE_BY = "DECREASES_BY";
8
+ export const RELATIVE_OPERATOR_CHANGES_BY = "CHANGES_BY";
9
+ export const ARITHMETIC_OPERATOR_DIFFERENCE = "DIFFERENCE";
10
+ export const ARITHMETIC_OPERATOR_CHANGE = "CHANGE";
7
11
  export const COMPARISON_OPERATORS = {
8
12
  COMPARISON_OPERATOR_LESS_THAN,
9
13
  COMPARISON_OPERATOR_LESS_THAN_OR_EQUAL_TO,
10
14
  COMPARISON_OPERATOR_GREATER_THAN,
11
15
  COMPARISON_OPERATOR_GREATER_THAN_OR_EQUAL_TO,
12
16
  };
17
+ export const RELATIVE_OPERATORS = {
18
+ RELATIVE_OPERATOR_INCREASE_BY,
19
+ RELATIVE_OPERATOR_DECREASE_BY,
20
+ RELATIVE_OPERATOR_CHANGES_BY,
21
+ };
22
+ export const ARITHMETIC_OPERATORS = {
23
+ ARITHMETIC_OPERATOR_DIFFERENCE,
24
+ ARITHMETIC_OPERATOR_CHANGE,
25
+ };
13
26
  export const COMPARISON_OPERATOR_OPTIONS = [
14
27
  {
15
28
  title: messages.comparisonOperatorGreaterThan.id,
@@ -32,6 +45,65 @@ export const COMPARISON_OPERATOR_OPTIONS = [
32
45
  id: COMPARISON_OPERATORS.COMPARISON_OPERATOR_LESS_THAN_OR_EQUAL_TO,
33
46
  },
34
47
  ];
48
+ export const RELATIVE_CHANGE_OPERATOR_OPTIONS = [
49
+ {
50
+ title: messages.comparisonOperatorChangeIncreasesBy.id,
51
+ icon: "gd-icon-increases-by",
52
+ id: `${ARITHMETIC_OPERATORS.ARITHMETIC_OPERATOR_CHANGE}.${RELATIVE_OPERATORS.RELATIVE_OPERATOR_INCREASE_BY}`,
53
+ },
54
+ {
55
+ title: messages.comparisonOperatorChangeDecreasesBy.id,
56
+ icon: "gd-icon-decreases-by",
57
+ id: `${ARITHMETIC_OPERATORS.ARITHMETIC_OPERATOR_CHANGE}.${RELATIVE_OPERATORS.RELATIVE_OPERATOR_DECREASE_BY}`,
58
+ },
59
+ {
60
+ title: messages.comparisonOperatorChangeChangesBy.id,
61
+ icon: "gd-icon-changes-by",
62
+ id: `${ARITHMETIC_OPERATORS.ARITHMETIC_OPERATOR_CHANGE}.${RELATIVE_OPERATORS.RELATIVE_OPERATOR_CHANGES_BY}`,
63
+ },
64
+ ];
65
+ export const RELATIVE_DIFFERENCE_OPERATOR_OPTIONS = [
66
+ {
67
+ title: messages.comparisonOperatorDifferenceIncreasesBy.id,
68
+ icon: "gd-icon-increases-by",
69
+ id: `${ARITHMETIC_OPERATORS.ARITHMETIC_OPERATOR_DIFFERENCE}.${RELATIVE_OPERATORS.RELATIVE_OPERATOR_INCREASE_BY}`,
70
+ },
71
+ {
72
+ title: messages.comparisonOperatorDifferenceDecreasesBy.id,
73
+ icon: "gd-icon-decreases-by",
74
+ id: `${ARITHMETIC_OPERATORS.ARITHMETIC_OPERATOR_DIFFERENCE}.${RELATIVE_OPERATORS.RELATIVE_OPERATOR_DECREASE_BY}`,
75
+ },
76
+ {
77
+ title: messages.comparisonOperatorDifferenceChangesBy.id,
78
+ icon: "gd-icon-changes-by",
79
+ id: `${ARITHMETIC_OPERATORS.ARITHMETIC_OPERATOR_DIFFERENCE}.${RELATIVE_OPERATORS.RELATIVE_OPERATOR_CHANGES_BY}`,
80
+ },
81
+ ];
82
+ export const OPERATORS = [
83
+ ...COMPARISON_OPERATOR_OPTIONS,
84
+ ...RELATIVE_CHANGE_OPERATOR_OPTIONS,
85
+ ...RELATIVE_DIFFERENCE_OPERATOR_OPTIONS,
86
+ ];
87
+ export const CHANGE_HEADER = {
88
+ title: messages.comparisonOperatorChangeHeader.id,
89
+ type: "header",
90
+ icon: "",
91
+ id: "",
92
+ info: messages.comparisonOperatorChangeHeaderInfo.id,
93
+ };
94
+ export const DIFFERENCE_HEADER = {
95
+ title: messages.comparisonOperatorDifferenceHeader.id,
96
+ type: "header",
97
+ icon: "",
98
+ id: "",
99
+ info: messages.comparisonOperatorDifferenceHeaderInfo.id,
100
+ };
101
+ export const SEPARATOR = {
102
+ type: "separator",
103
+ title: "",
104
+ icon: "",
105
+ id: "",
106
+ };
35
107
  export const DROPDOWN_ITEM_HEIGHT = 28;
36
108
  export const DROPDOWN_SEPARATOR_ITEM_HEIGHT = 10;
37
109
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/constants.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEvC,MAAM,CAAC,MAAM,6BAA6B,GAAG,WAAW,CAAC;AACzD,MAAM,CAAC,MAAM,yCAAyC,GAAG,uBAAuB,CAAC;AACjF,MAAM,CAAC,MAAM,gCAAgC,GAAG,cAAc,CAAC;AAC/D,MAAM,CAAC,MAAM,4CAA4C,GAAG,0BAA0B,CAAC;AAEvF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,6BAA6B;IAC7B,yCAAyC;IACzC,gCAAgC;IAChC,4CAA4C;CACtC,CAAC;AAEX,MAAM,CAAC,MAAM,2BAA2B,GAIlC;IACF;QACI,KAAK,EAAE,QAAQ,CAAC,6BAA6B,CAAC,EAAE;QAChD,IAAI,EAAE,sBAAsB;QAC5B,EAAE,EAAE,oBAAoB,CAAC,gCAAgC;KAC5D;IACD;QACI,KAAK,EAAE,QAAQ,CAAC,qCAAqC,CAAC,EAAE;QACxD,IAAI,EAAE,+BAA+B;QACrC,EAAE,EAAE,oBAAoB,CAAC,4CAA4C;KACxE;IACD;QACI,KAAK,EAAE,QAAQ,CAAC,0BAA0B,CAAC,EAAE;QAC7C,IAAI,EAAE,mBAAmB;QACzB,EAAE,EAAE,oBAAoB,CAAC,6BAA6B;KACzD;IACD;QACI,KAAK,EAAE,QAAQ,CAAC,kCAAkC,CAAC,EAAE;QACrD,IAAI,EAAE,4BAA4B;QAClC,EAAE,EAAE,oBAAoB,CAAC,yCAAyC;KACrE;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/constants.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  // (C) 2024 GoodData Corporation
2
2
  import { selectInsightByWidgetRef, selectWidgetByRef, useDashboardSelector, } from "../../../../../../model/index.js";
3
- import { getSupportedInsightMeasuresByInsight } from "../utils.js";
3
+ import { getAlertMeasure, getSupportedInsightMeasuresByInsight } from "../utils.js";
4
4
  export const useAlertValidation = (alert, isNewAlert) => {
5
5
  const widgetLocalId = alert.metadata?.widget;
6
6
  const widgetRef = widgetLocalId ? { identifier: widgetLocalId } : undefined;
7
- const selectedMeasure = alert.alert?.condition.left;
7
+ const selectedMeasure = getAlertMeasure(alert.alert);
8
8
  const widget = useDashboardSelector(selectWidgetByRef(widgetRef));
9
9
  const insight = useDashboardSelector(selectInsightByWidgetRef(widget?.ref));
10
10
  const supportedMeasures = getSupportedInsightMeasuresByInsight(insight);
@@ -1 +1 @@
1
- {"version":3,"file":"useAlertValidation.js","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EACH,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,GACvB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAKnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,KAAgC,EAChC,UAAoB,EACqD,EAAE;IAC3E,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC7C,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,MAAM,eAAe,GAAG,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC;IAEpD,MAAM,MAAM,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5E,MAAM,iBAAiB,GAAG,oCAAoC,CAAC,OAAO,CAAC,CAAC;IAExE,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,IAAI,CAChD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,KAAK,eAAe,CAC3E,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,qBAAqB,CAAC,CAAC;IAElE,IAAI,gBAAgB,GAAsC,SAAS,CAAC;IACpE,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,gBAAgB,GAAG,eAAe,CAAC;IACvC,CAAC;SAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAChC,gBAAgB,GAAG,eAAe,CAAC;IACvC,CAAC;IAED,OAAO;QACH,OAAO;QACP,gBAAgB;KACnB,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"useAlertValidation.js","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EACH,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,GACvB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAKpF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,KAAgC,EAChC,UAAoB,EACqD,EAAE;IAC3E,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC7C,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,MAAM,eAAe,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAErD,MAAM,MAAM,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5E,MAAM,iBAAiB,GAAG,oCAAoC,CAAC,OAAO,CAAC,CAAC;IAExE,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,IAAI,CAChD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,KAAK,eAAe,CAC3E,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,qBAAqB,CAAC,CAAC;IAElE,IAAI,gBAAgB,GAAsC,SAAS,CAAC;IACpE,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,gBAAgB,GAAG,eAAe,CAAC;IACvC,CAAC;SAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAChC,gBAAgB,GAAG,eAAe,CAAC;IACvC,CAAC;IAED,OAAO;QACH,OAAO;QACP,gBAAgB;KACnB,CAAC;AACN,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { IAlertComparisonOperator, IAutomationMetadataObject, IAutomationMetadataObjectDefinition } from "@gooddata/sdk-model";
1
+ import { IAlertComparisonOperator, IAlertRelativeArithmeticOperator, IAlertRelativeOperator, IAutomationMetadataObject, IAutomationMetadataObjectDefinition } from "@gooddata/sdk-model";
2
2
  import { AlertMetric } from "../../../types.js";
3
3
  export interface IUseEditAlertProps {
4
4
  alert: IAutomationMetadataObject;
@@ -10,6 +10,7 @@ export declare const useEditAlert: ({ alert, onCreate, onUpdate }: IUseEditAlert
10
10
  updatedAlert: IAutomationMetadataObject;
11
11
  canSubmit: boolean;
12
12
  changeComparisonOperator: (comparisonOperator: IAlertComparisonOperator) => void;
13
+ changeRelativeOperator: (relativeOperator: IAlertRelativeOperator, arithmeticOperator: IAlertRelativeArithmeticOperator) => void;
13
14
  changeMeasure: (measure: AlertMetric) => void;
14
15
  changeValue: (value: number) => void;
15
16
  changeDestination: (destinationId: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useEditAlert.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,wBAAwB,EACxB,yBAAyB,EACzB,mCAAmC,EACtC,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,yBAAyB,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mCAAmC,KAAK,IAAI,CAAC;IAChE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;CACzD;AAED,eAAO,MAAM,YAAY,kCAAmC,kBAAkB;;;;mDAsBpB,wBAAwB;6BAlB9C,WAAW;yBA+Bf,MAAM;uCAaQ,MAAM;;oCAWT,yBAAyB;;;;CAsCnE,CAAC"}
1
+ {"version":3,"file":"useEditAlert.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EACtB,yBAAyB,EACzB,mCAAmC,EACtC,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,yBAAyB,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mCAAmC,KAAK,IAAI,CAAC;IAChE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;CACzD;AAED,eAAO,MAAM,YAAY,kCAAmC,kBAAkB;;;;mDAQpB,wBAAwB;+CAKxD,sBAAsB,sBACpB,gCAAgC;6BAVxB,WAAW;yBAiBf,MAAM;uCAIQ,MAAM;;oCAQT,yBAAyB;;;;CAuCnE,CAAC"}
@@ -1,56 +1,24 @@
1
1
  // (C) 2022-2024 GoodData Corporation
2
2
  import { useState } from "react";
3
3
  import isEqual from "lodash/isEqual.js";
4
- import { getMeasureTitle } from "../utils.js";
4
+ import { isAlertValueDefined, transformAlertByComparisonOperator, transformAlertByDestination, transformAlertByMetric, transformAlertByRelativeOperator, transformAlertByValue, } from "../utils.js";
5
5
  export const useEditAlert = ({ alert, onCreate, onUpdate }) => {
6
6
  const [viewMode, setViewMode] = useState("edit");
7
7
  const [updatedAlert, setUpdatedAlert] = useState(alert);
8
8
  const changeMeasure = (measure) => {
9
- setUpdatedAlert((alert) => ({
10
- ...alert,
11
- title: getMeasureTitle(measure.measure) ?? "",
12
- alert: {
13
- ...alert.alert,
14
- condition: {
15
- ...alert.alert.condition,
16
- left: measure.measure.measure.localIdentifier,
17
- },
18
- execution: {
19
- ...alert.alert.execution,
20
- measures: [measure.measure],
21
- },
22
- },
23
- }));
9
+ setUpdatedAlert((alert) => transformAlertByMetric(alert, measure));
24
10
  };
25
11
  const changeComparisonOperator = (comparisonOperator) => {
26
- setUpdatedAlert((alert) => ({
27
- ...alert,
28
- alert: {
29
- ...alert.alert,
30
- condition: {
31
- ...alert.alert.condition,
32
- operator: comparisonOperator,
33
- },
34
- },
35
- }));
12
+ setUpdatedAlert((alert) => transformAlertByComparisonOperator(alert, comparisonOperator));
13
+ };
14
+ const changeRelativeOperator = (relativeOperator, arithmeticOperator) => {
15
+ setUpdatedAlert((alert) => transformAlertByRelativeOperator(alert, relativeOperator, arithmeticOperator));
36
16
  };
37
17
  const changeValue = (value) => {
38
- setUpdatedAlert((alert) => ({
39
- ...alert,
40
- alert: {
41
- ...alert.alert,
42
- condition: {
43
- ...alert.alert.condition,
44
- right: value,
45
- },
46
- },
47
- }));
18
+ setUpdatedAlert((alert) => transformAlertByValue(alert, value));
48
19
  };
49
20
  const changeDestination = (destinationId) => {
50
- setUpdatedAlert((alert) => ({
51
- ...alert,
52
- notificationChannel: destinationId,
53
- }));
21
+ setUpdatedAlert((alert) => transformAlertByDestination(alert, destinationId));
54
22
  };
55
23
  const configureAlert = () => {
56
24
  setViewMode("configuration");
@@ -68,7 +36,7 @@ export const useEditAlert = ({ alert, onCreate, onUpdate }) => {
68
36
  const updateAlert = () => {
69
37
  onUpdate?.(updatedAlert);
70
38
  };
71
- const isValueDefined = typeof updatedAlert.alert?.condition.right !== "undefined";
39
+ const isValueDefined = isAlertValueDefined(updatedAlert.alert);
72
40
  const isAlertChanged = !isEqual(updatedAlert, alert);
73
41
  const canSubmit = isValueDefined && isAlertChanged;
74
42
  return {
@@ -77,6 +45,7 @@ export const useEditAlert = ({ alert, onCreate, onUpdate }) => {
77
45
  canSubmit,
78
46
  //
79
47
  changeComparisonOperator,
48
+ changeRelativeOperator,
80
49
  changeMeasure,
81
50
  changeValue,
82
51
  changeDestination,
@@ -1 +1 @@
1
- {"version":3,"file":"useEditAlert.js","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useEditAlert.js","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAQjC,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,EACH,mBAAmB,EACnB,kCAAkC,EAClC,2BAA2B,EAC3B,sBAAsB,EACtB,gCAAgC,EAChC,qBAAqB,GACxB,MAAM,aAAa,CAAC;AASrB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAsB,EAAE,EAAE;IAC9E,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA2B,MAAM,CAAC,CAAC;IAC3E,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAA4B,KAAK,CAAC,CAAC;IAEnF,MAAM,aAAa,GAAG,CAAC,OAAoB,EAAE,EAAE;QAC3C,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAAC,kBAA4C,EAAE,EAAE;QAC9E,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kCAAkC,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC9F,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,CAC3B,gBAAwC,EACxC,kBAAoD,EACtD,EAAE;QACA,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CACtB,gCAAgC,CAAC,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAChF,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,EAAE;QAClC,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,aAAqB,EAAE,EAAE;QAChD,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,2BAA2B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;IAClF,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,GAAG,EAAE;QACxB,WAAW,CAAC,eAAe,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,CAAC,KAAgC,EAAE,EAAE;QAChE,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,wBAAwB,EAAE,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,GAAG,EAAE;QAClC,WAAW,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,QAAQ,EAAE,CAAC,YAAyC,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,mBAAmB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,cAAc,IAAI,cAAc,CAAC;IAEnD,OAAO;QACH,QAAQ;QACR,YAAY;QACZ,SAAS;QACT,EAAE;QACF,wBAAwB;QACxB,sBAAsB;QACtB,aAAa;QACb,WAAW;QACX,iBAAiB;QACjB,EAAE;QACF,cAAc;QACd,sBAAsB;QACtB,wBAAwB;QACxB,EAAE;QACF,WAAW;QACX,WAAW;KACd,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { AlertMetric } from "../../../types.js";
2
+ export declare function useOperators(measure: AlertMetric | undefined): {
3
+ title: string;
4
+ icon: string;
5
+ id: any;
6
+ type?: import("@gooddata/sdk-ui-kit").SingleSelectListItemType | undefined;
7
+ info?: string | undefined;
8
+ }[];
9
+ //# sourceMappingURL=useOperators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOperators.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useOperators.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA6B,MAAM,mBAAmB,CAAC;AAU3E,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS;;;;;;IAqB5D"}
@@ -0,0 +1,22 @@
1
+ // (C) 2024 GoodData Corporation
2
+ import { useMemo } from "react";
3
+ import { AlertMetricComparatorType } from "../../../types.js";
4
+ import { COMPARISON_OPERATOR_OPTIONS, RELATIVE_CHANGE_OPERATOR_OPTIONS, RELATIVE_DIFFERENCE_OPERATOR_OPTIONS, CHANGE_HEADER, DIFFERENCE_HEADER, SEPARATOR, } from "../constants.js";
5
+ export function useOperators(measure) {
6
+ return useMemo(() => {
7
+ if (measure?.comparators.find((a) => a.comparator === AlertMetricComparatorType.PreviousPeriod ||
8
+ a.comparator === AlertMetricComparatorType.SamePeriodPreviousYear)) {
9
+ return [
10
+ ...COMPARISON_OPERATOR_OPTIONS,
11
+ SEPARATOR,
12
+ CHANGE_HEADER,
13
+ ...RELATIVE_CHANGE_OPERATOR_OPTIONS,
14
+ SEPARATOR,
15
+ DIFFERENCE_HEADER,
16
+ ...RELATIVE_DIFFERENCE_OPERATOR_OPTIONS,
17
+ ];
18
+ }
19
+ return COMPARISON_OPERATOR_OPTIONS;
20
+ }, [measure]);
21
+ }
22
+ //# sourceMappingURL=useOperators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOperators.js","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useOperators.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAe,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EACH,2BAA2B,EAC3B,gCAAgC,EAChC,oCAAoC,EACpC,aAAa,EACb,iBAAiB,EACjB,SAAS,GACZ,MAAM,iBAAiB,CAAC;AAEzB,MAAM,UAAU,YAAY,CAAC,OAAgC;IACzD,OAAO,OAAO,CAAC,GAAG,EAAE;QAChB,IACI,OAAO,EAAE,WAAW,CAAC,IAAI,CACrB,CAAC,CAAC,EAAE,EAAE,CACF,CAAC,CAAC,UAAU,KAAK,yBAAyB,CAAC,cAAc;YACzD,CAAC,CAAC,UAAU,KAAK,yBAAyB,CAAC,sBAAsB,CACxE,EACH,CAAC;YACC,OAAO;gBACH,GAAG,2BAA2B;gBAC9B,SAAS;gBACT,aAAa;gBACb,GAAG,gCAAgC;gBACnC,SAAS;gBACT,iBAAiB;gBACjB,GAAG,oCAAoC;aAC1C,CAAC;QACN,CAAC;QACD,OAAO,2BAA2B,CAAC;IACvC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -23,6 +23,36 @@ export declare const messages: {
23
23
  comparisonOperatorGreaterThanOrEquals: {
24
24
  id: string;
25
25
  };
26
+ comparisonOperatorChangeHeader: {
27
+ id: string;
28
+ };
29
+ comparisonOperatorChangeHeaderInfo: {
30
+ id: string;
31
+ };
32
+ comparisonOperatorChangeIncreasesBy: {
33
+ id: string;
34
+ };
35
+ comparisonOperatorChangeDecreasesBy: {
36
+ id: string;
37
+ };
38
+ comparisonOperatorChangeChangesBy: {
39
+ id: string;
40
+ };
41
+ comparisonOperatorDifferenceHeader: {
42
+ id: string;
43
+ };
44
+ comparisonOperatorDifferenceHeaderInfo: {
45
+ id: string;
46
+ };
47
+ comparisonOperatorDifferenceIncreasesBy: {
48
+ id: string;
49
+ };
50
+ comparisonOperatorDifferenceDecreasesBy: {
51
+ id: string;
52
+ };
53
+ comparisonOperatorDifferenceChangesBy: {
54
+ id: string;
55
+ };
26
56
  alertTriggerModeAlways: {
27
57
  id: string;
28
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/messages.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDnB,CAAC"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/messages.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqFnB,CAAC"}
@@ -25,6 +25,36 @@ export const messages = defineMessages({
25
25
  comparisonOperatorGreaterThanOrEquals: {
26
26
  id: "insightAlert.config.comparisonOperator.greaterThanOrEquals",
27
27
  },
28
+ comparisonOperatorChangeHeader: {
29
+ id: "insightAlert.config.changeOperator.header",
30
+ },
31
+ comparisonOperatorChangeHeaderInfo: {
32
+ id: "insightAlert.config.changeOperator.header.info",
33
+ },
34
+ comparisonOperatorChangeIncreasesBy: {
35
+ id: "insightAlert.config.changeOperator.increasesBy",
36
+ },
37
+ comparisonOperatorChangeDecreasesBy: {
38
+ id: "insightAlert.config.changeOperator.decreasesBy",
39
+ },
40
+ comparisonOperatorChangeChangesBy: {
41
+ id: "insightAlert.config.changeOperator.changesBy",
42
+ },
43
+ comparisonOperatorDifferenceHeader: {
44
+ id: "insightAlert.config.differenceOperator.header",
45
+ },
46
+ comparisonOperatorDifferenceHeaderInfo: {
47
+ id: "insightAlert.config.differenceOperator.header.info",
48
+ },
49
+ comparisonOperatorDifferenceIncreasesBy: {
50
+ id: "insightAlert.config.differenceOperator.increasesBy",
51
+ },
52
+ comparisonOperatorDifferenceDecreasesBy: {
53
+ id: "insightAlert.config.differenceOperator.decreasesBy",
54
+ },
55
+ comparisonOperatorDifferenceChangesBy: {
56
+ id: "insightAlert.config.differenceOperator.changesBy",
57
+ },
28
58
  alertTriggerModeAlways: {
29
59
  id: "insightAlert.config.triggerMode.always",
30
60
  },
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/messages.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,CAAC,MAAM,QAAQ,GAAG,cAAc,CAAC;IACnC,eAAe,EAAE;QACb,EAAE,EAAE,iCAAiC;KACxC;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,kCAAkC;KACzC;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,0BAA0B,EAAE;QACxB,EAAE,EAAE,iDAAiD;KACxD;IACD,kCAAkC,EAAE;QAChC,EAAE,EAAE,yDAAyD;KAChE;IACD,6BAA6B,EAAE;QAC3B,EAAE,EAAE,oDAAoD;KAC3D;IACD,qCAAqC,EAAE;QACnC,EAAE,EAAE,4DAA4D;KACnE;IACD,sBAAsB,EAAE;QACpB,EAAE,EAAE,wCAAwC;KAC/C;IACD,oBAAoB,EAAE;QAClB,EAAE,EAAE,sCAAsC;KAC7C;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,oCAAoC;KAC3C;IACD,eAAe,EAAE;QACb,EAAE,EAAE,iCAAiC;KACxC;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,oCAAoC;KAC3C;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,oCAAoC;KAC3C;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,cAAc,EAAE;QACZ,EAAE,EAAE,gCAAgC;KACvC;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,kCAAkC;KACzC;CACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/messages.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,CAAC,MAAM,QAAQ,GAAG,cAAc,CAAC;IACnC,eAAe,EAAE;QACb,EAAE,EAAE,iCAAiC;KACxC;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,kCAAkC;KACzC;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,0BAA0B,EAAE;QACxB,EAAE,EAAE,iDAAiD;KACxD;IACD,kCAAkC,EAAE;QAChC,EAAE,EAAE,yDAAyD;KAChE;IACD,6BAA6B,EAAE;QAC3B,EAAE,EAAE,oDAAoD;KAC3D;IACD,qCAAqC,EAAE;QACnC,EAAE,EAAE,4DAA4D;KACnE;IACD,8BAA8B,EAAE;QAC5B,EAAE,EAAE,2CAA2C;KAClD;IACD,kCAAkC,EAAE;QAChC,EAAE,EAAE,gDAAgD;KACvD;IACD,mCAAmC,EAAE;QACjC,EAAE,EAAE,gDAAgD;KACvD;IACD,mCAAmC,EAAE;QACjC,EAAE,EAAE,gDAAgD;KACvD;IACD,iCAAiC,EAAE;QAC/B,EAAE,EAAE,8CAA8C;KACrD;IACD,kCAAkC,EAAE;QAChC,EAAE,EAAE,+CAA+C;KACtD;IACD,sCAAsC,EAAE;QACpC,EAAE,EAAE,oDAAoD;KAC3D;IACD,uCAAuC,EAAE;QACrC,EAAE,EAAE,oDAAoD;KAC3D;IACD,uCAAuC,EAAE;QACrC,EAAE,EAAE,oDAAoD;KAC3D;IACD,qCAAqC,EAAE;QACnC,EAAE,EAAE,kDAAkD;KACzD;IACD,sBAAsB,EAAE;QACpB,EAAE,EAAE,wCAAwC;KAC/C;IACD,oBAAoB,EAAE;QAClB,EAAE,EAAE,sCAAsC;KAC7C;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,oCAAoC;KAC3C;IACD,eAAe,EAAE;QACb,EAAE,EAAE,iCAAiC;KACxC;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,oCAAoC;KAC3C;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,oCAAoC;KAC3C;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,mCAAmC;KAC1C;IACD,cAAc,EAAE;QACZ,EAAE,EAAE,gCAAgC;KACvC;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,kCAAkC;KACzC;CACJ,CAAC,CAAC"}
@@ -1,18 +1,29 @@
1
- import { IAlertComparisonOperator, IAutomationMetadataObjectDefinition, IFilter, IInsight, IMeasure } from "@gooddata/sdk-model";
1
+ import { IAlertComparisonOperator, IAlertRelativeArithmeticOperator, IAlertRelativeOperator, IAutomationAlert, IAutomationMetadataObject, IAutomationMetadataObjectDefinition, IFilter, IInsight, IMeasure } from "@gooddata/sdk-model";
2
2
  import { IntlShape } from "react-intl";
3
3
  import { AlertMetric } from "../../types.js";
4
4
  /**
5
5
  * @internal
6
6
  */
7
7
  export declare const getMeasureTitle: (measure: IMeasure) => string | undefined;
8
- /**
9
- * @internal
10
- */
11
- export declare const getComparisonOperatorTitle: (operator: IAlertComparisonOperator, intl: IntlShape) => string;
8
+ export declare const getOperatorTitle: (intl: IntlShape, alert?: IAutomationAlert) => string;
12
9
  /**
13
10
  * @internal
14
11
  */
15
12
  export declare const createDefaultAlert: (filters: IFilter[], measure: AlertMetric, notificationChannelId: string, comparisonOperator?: IAlertComparisonOperator) => IAutomationMetadataObjectDefinition;
16
13
  export declare const getSupportedInsightMeasuresByInsight: (insight: IInsight | null | undefined) => AlertMetric[];
17
14
  export declare const isSupportedInsightVisType: (insight: IInsight | null | undefined) => boolean;
15
+ export declare function getValueSuffix(alert?: IAutomationAlert): string | undefined;
16
+ export declare function isChangeOperator(alert?: IAutomationAlert): boolean;
17
+ export declare function isDifferenceOperator(alert?: IAutomationAlert): boolean;
18
+ export declare function isChangeOrDifferenceOperator(alert?: IAutomationAlert): boolean;
19
+ export declare function isAlertValueDefined(alert?: IAutomationAlert): boolean;
20
+ export declare function getAlertThreshold(alert?: IAutomationAlert): number | undefined;
21
+ export declare function getAlertMeasure(alert?: IAutomationAlert): string | undefined;
22
+ export declare function getAlertCompareOperator(alert?: IAutomationAlert): IAlertComparisonOperator | undefined;
23
+ export declare function getAlertRelativeOperator(alert?: IAutomationAlert): [IAlertRelativeOperator, IAlertRelativeArithmeticOperator] | undefined;
24
+ export declare function transformAlertByMetric(alert: IAutomationMetadataObject, measure: AlertMetric): IAutomationMetadataObject;
25
+ export declare function transformAlertByComparisonOperator(alert: IAutomationMetadataObject, comparisonOperator: IAlertComparisonOperator): IAutomationMetadataObject;
26
+ export declare function transformAlertByRelativeOperator(alert: IAutomationMetadataObject, relativeOperator: IAlertRelativeOperator, arithmeticOperator: IAlertRelativeArithmeticOperator): IAutomationMetadataObject;
27
+ export declare function transformAlertByValue(alert: IAutomationMetadataObject, value: number): IAutomationMetadataObject;
28
+ export declare function transformAlertByDestination(alert: IAutomationMetadataObject, notificationChannel: string): IAutomationMetadataObject;
18
29
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,wBAAwB,EACxB,mCAAmC,EAEnC,OAAO,EACP,QAAQ,EACR,QAAQ,EAWX,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,eAAe,YAAa,QAAQ,uBAEhD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,aAAc,wBAAwB,QAAQ,SAAS,KAAG,MAWhG,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,YAClB,OAAO,EAAE,WACT,WAAW,yBACG,MAAM,uBACT,wBAAwB,KAC7C,mCAsBF,CAAC;AAyBF,eAAO,MAAM,oCAAoC,YAAa,QAAQ,GAAG,IAAI,GAAG,SAAS,KAAG,WAAW,EAkDtG,CAAC;AAEF,eAAO,MAAM,yBAAyB,YAAa,QAAQ,GAAG,IAAI,GAAG,SAAS,KAAG,OAiBhF,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EACtB,gBAAgB,EAIhB,yBAAyB,EACzB,mCAAmC,EAEnC,OAAO,EACP,QAAQ,EACR,QAAQ,EAWX,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AAKxE;;GAEG;AACH,eAAO,MAAM,eAAe,YAAa,QAAQ,uBAEhD,CAAC;AAEF,eAAO,MAAM,gBAAgB,SAAU,SAAS,UAAU,gBAAgB,WAQzE,CAAC;AA4CF;;GAEG;AACH,eAAO,MAAM,kBAAkB,YAClB,OAAO,EAAE,WACT,WAAW,yBACG,MAAM,uBACT,wBAAwB,KAC7C,mCAsBF,CAAC;AAyBF,eAAO,MAAM,oCAAoC,YAAa,QAAQ,GAAG,IAAI,GAAG,SAAS,KAAG,WAAW,EAkDtG,CAAC;AAEF,eAAO,MAAM,yBAAyB,YAAa,QAAQ,GAAG,IAAI,GAAG,SAAS,KAAG,OAiBhF,CAAC;AAuDF,wBAAgB,cAAc,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAQ3E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAKlE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAKtE;AAED,wBAAgB,4BAA4B,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAE9E;AAED,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAKrE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAK9E;AAED,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAK5E;AAED,wBAAgB,uBAAuB,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,wBAAwB,GAAG,SAAS,CAKtG;AAED,wBAAgB,wBAAwB,CACpC,KAAK,CAAC,EAAE,gBAAgB,GACzB,CAAC,sBAAsB,EAAE,gCAAgC,CAAC,GAAG,SAAS,CAKxE;AAID,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,yBAAyB,EAChC,OAAO,EAAE,WAAW,GACrB,yBAAyB,CA8C3B;AAED,wBAAgB,kCAAkC,CAC9C,KAAK,EAAE,yBAAyB,EAChC,kBAAkB,EAAE,wBAAwB,GAC7C,yBAAyB,CAY3B;AAED,wBAAgB,gCAAgC,CAC5C,KAAK,EAAE,yBAAyB,EAChC,gBAAgB,EAAE,sBAAsB,EACxC,kBAAkB,EAAE,gCAAgC,GACrD,yBAAyB,CAgB3B;AAED,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,yBAAyB,EAChC,KAAK,EAAE,MAAM,GACd,yBAAyB,CAuB3B;AAED,wBAAgB,2BAA2B,CACvC,KAAK,EAAE,yBAAyB,EAChC,mBAAmB,EAAE,MAAM,GAC5B,yBAAyB,CAK3B"}