@gooddata/sdk-ui-dashboard 10.13.0-alpha.3 → 10.13.0-alpha.30
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 +37 -3
- package/esm/__version.d.ts +1 -1
- package/esm/__version.d.ts.map +1 -1
- package/esm/__version.js +1 -1
- package/esm/__version.js.map +1 -1
- package/esm/model/commandHandlers/filterContext/filterViewHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/filterViewHandler.js +8 -1
- package/esm/model/commandHandlers/filterContext/filterViewHandler.js.map +1 -1
- package/esm/model/events/userInteraction.d.ts +17 -2
- package/esm/model/events/userInteraction.d.ts.map +1 -1
- package/esm/model/events/userInteraction.js.map +1 -1
- package/esm/model/react/useDashboardUserInteraction.d.ts +2 -1
- package/esm/model/react/useDashboardUserInteraction.d.ts.map +1 -1
- package/esm/model/react/useDashboardUserInteraction.js +4 -0
- package/esm/model/react/useDashboardUserInteraction.js.map +1 -1
- package/esm/model/store/config/configSelectors.d.ts +6 -0
- package/esm/model/store/config/configSelectors.d.ts.map +1 -1
- package/esm/model/store/config/configSelectors.js +11 -3
- package/esm/model/store/config/configSelectors.js.map +1 -1
- package/esm/model/store/index.d.ts +1 -1
- package/esm/model/store/index.d.ts.map +1 -1
- package/esm/model/store/index.js +1 -1
- package/esm/model/store/index.js.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +3 -3
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialog.d.ts.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialog.js +3 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialog.js.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.d.ts.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.js +3 -2
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/Alert.js.map +1 -1
- package/esm/presentation/dragAndDrop/draggableWidget/AddVisualizationSwitcherWidgetButton.d.ts.map +1 -1
- package/esm/presentation/dragAndDrop/draggableWidget/AddVisualizationSwitcherWidgetButton.js +11 -8
- package/esm/presentation/dragAndDrop/draggableWidget/AddVisualizationSwitcherWidgetButton.js.map +1 -1
- package/esm/presentation/dragAndDrop/draggableWidget/EmptyDashboardDropZone.d.ts.map +1 -1
- package/esm/presentation/dragAndDrop/draggableWidget/EmptyDashboardDropZone.js +2 -5
- package/esm/presentation/dragAndDrop/draggableWidget/EmptyDashboardDropZone.js.map +1 -1
- package/esm/presentation/filterBar/filterBar/filterViews/FilterViews.d.ts.map +1 -1
- package/esm/presentation/filterBar/filterBar/filterViews/FilterViews.js +21 -8
- package/esm/presentation/filterBar/filterBar/filterViews/FilterViews.js.map +1 -1
- package/esm/presentation/layout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.d.ts.map +1 -1
- package/esm/presentation/layout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.js +5 -2
- package/esm/presentation/layout/DefaultDashboardLayoutRenderer/EditableHeader/SectionHeaderEditable.js.map +1 -1
- package/esm/presentation/localization/bundles/de-DE.json +7 -1
- package/esm/presentation/localization/bundles/en-AU.json +7 -1
- package/esm/presentation/localization/bundles/en-GB.json +7 -1
- package/esm/presentation/localization/bundles/en-US.json +8 -3
- package/esm/presentation/localization/bundles/es-419.json +7 -1
- package/esm/presentation/localization/bundles/es-ES.json +7 -1
- package/esm/presentation/localization/bundles/fi-FI.json +7 -1
- package/esm/presentation/localization/bundles/fr-CA.json +7 -1
- package/esm/presentation/localization/bundles/fr-FR.json +7 -1
- package/esm/presentation/localization/bundles/it-IT.json +7 -1
- package/esm/presentation/localization/bundles/ja-JP.json +7 -1
- package/esm/presentation/localization/bundles/nl-NL.json +7 -1
- package/esm/presentation/localization/bundles/pt-BR.json +7 -1
- package/esm/presentation/localization/bundles/pt-PT.json +7 -1
- package/esm/presentation/localization/bundles/zh-HK.json +7 -1
- package/esm/presentation/localization/bundles/zh-Hans.json +7 -1
- package/esm/presentation/localization/bundles/zh-Hant.json +7 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +6 -6
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentItems.d.ts +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentItems.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentItems.js +4 -4
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentItems.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.d.ts +4 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js +2 -2
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.d.ts +4 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.js +16 -7
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.d.ts +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.js +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/constants.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js +7 -4
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js +3 -2
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js.map +1 -1
- package/esm/presentation/topBar/menuButton/DefaultMenuButton.d.ts.map +1 -1
- package/esm/presentation/topBar/menuButton/DefaultMenuButton.js +6 -2
- package/esm/presentation/topBar/menuButton/DefaultMenuButton.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.js +11 -7
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.js +9 -5
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.js +4 -3
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts +3 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.js +2 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts +3 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js +10 -6
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.js +2 -3
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts +7 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js +41 -7
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts +2 -0
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js +10 -5
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts +8 -7
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js +106 -52
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/utils.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlerts.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlerts.js +3 -3
- package/esm/presentation/widget/insight/configuration/InsightAlerts.js.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/ViewModeDashboardVisualizationSwitcher.d.ts.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/ViewModeDashboardVisualizationSwitcher.js +1 -8
- package/esm/presentation/widget/visualizationSwitcher/ViewModeDashboardVisualizationSwitcher.js.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.d.ts.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.js +4 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.js.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/ToolbarTop.d.ts.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/ToolbarTop.js +6 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/ToolbarTop.js.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/VisualizationsPage.d.ts.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/VisualizationsPage.js +3 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/VisualizationsPage.js.map +1 -1
- package/esm/presentation/widget/widget/VisualizationSwitcherWidget/VisualizationSwitcherNavigationHeader.js +1 -1
- package/esm/presentation/widget/widget/VisualizationSwitcherWidget/VisualizationSwitcherNavigationHeader.js.map +1 -1
- package/esm/sdk-ui-dashboard.d.ts +28 -2
- package/package.json +15 -15
- package/styles/css/alerting.css +11 -0
- package/styles/css/alerting.css.map +1 -1
- package/styles/css/dashboard.css +52 -47
- package/styles/css/dashboard.css.map +1 -1
- package/styles/css/dragAndDrop.css +3 -0
- package/styles/css/dragAndDrop.css.map +1 -1
- package/styles/css/filterBar.css +4 -0
- package/styles/css/filterBar.css.map +1 -1
- package/styles/css/main.css +83 -50
- package/styles/css/main.css.map +1 -1
- package/styles/css/scheduled_mail_recipients.css +52 -47
- package/styles/css/scheduled_mail_recipients.css.map +1 -1
- package/styles/css/visualizationSwitcherHeader.css +1 -0
- package/styles/css/visualizationSwitcherHeader.css.map +1 -1
- package/styles/css/visualizationSwitcherToolbar.css +11 -2
- package/styles/css/visualizationSwitcherToolbar.css.map +1 -1
- package/styles/scss/alerting.scss +13 -0
- package/styles/scss/dragAndDrop.scss +5 -1
- package/styles/scss/filterBar.scss +7 -0
- package/styles/scss/scheduled_mail_recipients.scss +63 -58
- package/styles/scss/visualizationSwitcherHeader.scss +1 -0
- package/styles/scss/visualizationSwitcherToolbar.scss +13 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultScheduledEmailManagementDialog.js","sourceRoot":"","sources":["../../../../src/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGxF,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAG1F,OAAO,EACH,iBAAiB,EACjB,+BAA+B,EAC/B,qCAAqC,EACrC,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"DefaultScheduledEmailManagementDialog.js","sourceRoot":"","sources":["../../../../src/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultMenuButton.d.ts","sourceRoot":"","sources":["../../../../src/presentation/topBar/menuButton/DefaultMenuButton.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"DefaultMenuButton.d.ts","sourceRoot":"","sources":["../../../../src/presentation/topBar/menuButton/DefaultMenuButton.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAM9C;;GAEG;AACH,eAAO,MAAM,iBAAiB,UAAW,gBAAgB,KAAG,WAAW,GAAG,IA4HzE,CAAC"}
|
|
@@ -3,6 +3,7 @@ import React, { useCallback, useMemo, useState } from "react";
|
|
|
3
3
|
import cx from "classnames";
|
|
4
4
|
import { Bubble, BubbleHoverTrigger, Button, ItemsWrapper, Overlay, SingleSelectListItem, } from "@gooddata/sdk-ui-kit";
|
|
5
5
|
import { useIntl } from "react-intl";
|
|
6
|
+
import { v4 as uuid } from "uuid";
|
|
6
7
|
const ALIGN_POINTS_TOOLTIP = [{ align: "bc tr" }, { align: "cl cr" }];
|
|
7
8
|
const overlayAlignPoints = [{ align: "br tr" }];
|
|
8
9
|
const bubbleAlignPoints = [{ align: "cl tr" }];
|
|
@@ -14,6 +15,9 @@ export const DefaultMenuButton = (props) => {
|
|
|
14
15
|
const [isOpen, setIsOpen] = useState(false);
|
|
15
16
|
const intl = useIntl();
|
|
16
17
|
const tooltipText = intl.formatMessage({ id: "controlButtons.options.tooltip" });
|
|
18
|
+
// generate unique anchor class name to open dropdown next to the correct button if app uses multiple
|
|
19
|
+
// dashboard components
|
|
20
|
+
const dropdownAnchorClassName = useMemo(() => `dash-header-options-anchor-${uuid()}`, []);
|
|
17
21
|
const onMenuButtonClick = useCallback(() => {
|
|
18
22
|
setIsOpen((prevIsOpen) => !prevIsOpen);
|
|
19
23
|
}, []);
|
|
@@ -26,7 +30,7 @@ export const DefaultMenuButton = (props) => {
|
|
|
26
30
|
return null;
|
|
27
31
|
}
|
|
28
32
|
const renderMenuItems = () => {
|
|
29
|
-
return (React.createElement(Overlay, { key: "topBarMenuButton", alignTo:
|
|
33
|
+
return (React.createElement(Overlay, { key: "topBarMenuButton", alignTo: `.${dropdownAnchorClassName}`, alignPoints: overlayAlignPoints, className: "gd-header-menu-overlay", closeOnMouseDrag: true, closeOnOutsideClick: true, onClose: onMenuButtonClick },
|
|
30
34
|
React.createElement(ItemsWrapper, { smallItemsSpacing: true }, visibleMenuItems.map((menuItem) => {
|
|
31
35
|
if (menuItem.type === "separator") {
|
|
32
36
|
return (React.createElement(SingleSelectListItem, { key: menuItem.itemId, type: menuItem.type, className: menuItem.className }));
|
|
@@ -55,7 +59,7 @@ export const DefaultMenuButton = (props) => {
|
|
|
55
59
|
};
|
|
56
60
|
return (React.createElement(React.Fragment, null,
|
|
57
61
|
React.createElement(BubbleHoverTrigger, { className: "dash-header-options-wrapper", showDelay: 100 },
|
|
58
|
-
React.createElement(Button, { onClick: onMenuButtonClick, value: "\u22EF", className: "gd-button-primary dash-header-options-button s-header-options-button gd-button", ariaLabel: tooltipText }),
|
|
62
|
+
React.createElement(Button, { onClick: onMenuButtonClick, value: "\u22EF", className: cx("gd-button-primary dash-header-options-button s-header-options-button gd-button", dropdownAnchorClassName), ariaLabel: tooltipText }),
|
|
59
63
|
!isOpen ? (React.createElement(Bubble, { alignTo: "gd-button-primary dash-header-options-button", alignPoints: ALIGN_POINTS_TOOLTIP }, tooltipText)) : null),
|
|
60
64
|
isOpen ? renderMenuItems() : null));
|
|
61
65
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultMenuButton.js","sourceRoot":"","sources":["../../../../src/presentation/topBar/menuButton/DefaultMenuButton.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACH,MAAM,EACN,kBAAkB,EAClB,MAAM,EAEN,YAAY,EACZ,OAAO,EACP,oBAAoB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"DefaultMenuButton.js","sourceRoot":"","sources":["../../../../src/presentation/topBar/menuButton/DefaultMenuButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertComparisonOperatorSelect.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"AlertComparisonOperatorSelect.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.tsx"],"names":[],"mappings":"AACA,OAAO,KAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,EAAgD,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACzG,OAAO,EACH,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EACzB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAK7C,MAAM,WAAW,mCAAmC;IAChD,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,0BAA0B,EAAE,wBAAwB,GAAG,SAAS,CAAC;IACjE,wBAAwB,EAAE,CAAC,sBAAsB,EAAE,gCAAgC,CAAC,GAAG,SAAS,CAAC;IACjG,0BAA0B,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,wBAAwB,KAAK,IAAI,CAAC;IACxG,wBAAwB,EAAE,CACtB,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,sBAAsB,EACxC,0BAA0B,EAAE,gCAAgC,KAC3D,IAAI,CAAC;IACV,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,eAAO,MAAM,6BAA6B,UAAW,mCAAmC,6BAgIvF,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// (C) 2024 GoodData Corporation
|
|
2
|
-
import React from "react";
|
|
2
|
+
import React, { useRef } from "react";
|
|
3
3
|
import { Dropdown, Button, List, SingleSelectListItem } from "@gooddata/sdk-ui-kit";
|
|
4
4
|
import cx from "classnames";
|
|
5
5
|
import { FormattedMessage, useIntl } from "react-intl";
|
|
@@ -14,19 +14,23 @@ export const AlertComparisonOperatorSelect = (props) => {
|
|
|
14
14
|
? OPERATORS.find((option) => option.id === `${selectedRelativeOperator[1]}.${selectedRelativeOperator[0]}`)
|
|
15
15
|
: undefined;
|
|
16
16
|
const intl = useIntl();
|
|
17
|
+
const ref = useRef(null);
|
|
17
18
|
const operators = useOperators(props.measure);
|
|
18
19
|
if (!measure) {
|
|
19
20
|
return null;
|
|
20
21
|
}
|
|
21
22
|
return (React.createElement("div", { className: "gd-alert-comparison-operator-select" },
|
|
22
23
|
React.createElement(Dropdown, { overlayPositionType: overlayPositionType, renderButton: ({ isOpen, toggleDropdown }) => {
|
|
23
|
-
return (React.createElement(
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
return (React.createElement("div", { ref: (item) => {
|
|
25
|
+
ref.current = item;
|
|
26
|
+
} },
|
|
27
|
+
React.createElement(Button, { className: cx("gd-alert-comparison-operator-select__button s-alert-operator-select", {
|
|
28
|
+
"is-active": isOpen,
|
|
29
|
+
}), size: "small", variant: "secondary", iconLeft: selectedComparisonItem?.icon ?? selectedRelativeItem?.icon, iconRight: `gd-icon-navigate${isOpen ? "up" : "down"}`, onClick: toggleDropdown }, intl.formatMessage({
|
|
30
|
+
id: selectedComparisonItem?.title ?? selectedRelativeItem?.title,
|
|
31
|
+
}))));
|
|
28
32
|
}, renderBody: ({ closeDropdown }) => {
|
|
29
|
-
return (React.createElement(List, { className: "gd-alert-comparison-operator-select__list s-alert-operator-select-list", items: operators, itemHeightGetter: (idx) => operators[idx].type === "separator"
|
|
33
|
+
return (React.createElement(List, { width: ref.current?.offsetWidth, className: "gd-alert-comparison-operator-select__list s-alert-operator-select-list", items: operators, itemHeightGetter: (idx) => operators[idx].type === "separator"
|
|
30
34
|
? DROPDOWN_SEPARATOR_ITEM_HEIGHT
|
|
31
35
|
: DROPDOWN_ITEM_HEIGHT, renderItem: (prop) => {
|
|
32
36
|
return (React.createElement(SingleSelectListItem, { key: prop.rowIndex, type: prop.item.type, icon: prop.item.icon ? (React.createElement("div", { className: cx("gd-alert-comparison-operator-select__icon", prop.item.icon) })) : undefined, title: prop.item.title
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertComparisonOperatorSelect.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AlertComparisonOperatorSelect.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertComparisonOperatorSelect.tsx"],"names":[],"mappings":"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"}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertMeasureSelect.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"AlertMeasureSelect.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.tsx"],"names":[],"mappings":"AACA,OAAO,KAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,EAAgD,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAMzG,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,WAAW,uBAAuB;IACpC,eAAe,EAAE,WAAW,GAAG,SAAS,CAAC;IACzC,eAAe,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAChD,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAID,eAAO,MAAM,kBAAkB,yEAK5B,uBAAuB,sBA0DzB,CAAC"}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// (C) 2019-2024 GoodData Corporation
|
|
2
|
-
import React from "react";
|
|
2
|
+
import React, { useRef } from "react";
|
|
3
3
|
import { Dropdown, Button, List, SingleSelectListItem } from "@gooddata/sdk-ui-kit";
|
|
4
4
|
import cx from "classnames";
|
|
5
5
|
import { useIntl } from "react-intl";
|
|
@@ -8,16 +8,20 @@ import { DROPDOWN_ITEM_HEIGHT } from "./constants.js";
|
|
|
8
8
|
const measureIcon = React.createElement("div", { className: "gd-alert-measure-select__icon gd-icon-metric" });
|
|
9
9
|
export const AlertMeasureSelect = ({ selectedMeasure, onMeasureChange, measures, overlayPositionType, }) => {
|
|
10
10
|
const intl = useIntl();
|
|
11
|
+
const ref = useRef(null);
|
|
11
12
|
const selectedMeasureTitle = selectedMeasure
|
|
12
13
|
? getMeasureTitle(selectedMeasure.measure)
|
|
13
14
|
: intl.formatMessage({ id: "insightAlert.config.selectMetric" });
|
|
14
15
|
return (React.createElement("div", { className: "gd-alert-measure-select" },
|
|
15
16
|
React.createElement(Dropdown, { overlayPositionType: overlayPositionType, renderButton: ({ isOpen, toggleDropdown }) => {
|
|
16
|
-
return (React.createElement(
|
|
17
|
-
|
|
18
|
-
}
|
|
17
|
+
return (React.createElement("div", { ref: (item) => {
|
|
18
|
+
ref.current = item;
|
|
19
|
+
} },
|
|
20
|
+
React.createElement(Button, { className: cx("gd-alert-measure-select__button s-alert-measure-select", {
|
|
21
|
+
"is-active": isOpen,
|
|
22
|
+
}), size: "small", variant: "secondary", iconLeft: selectedMeasure ? "gd-icon-metric" : undefined, iconRight: `gd-icon-navigate${isOpen ? "up" : "down"}`, onClick: toggleDropdown }, selectedMeasureTitle)));
|
|
19
23
|
}, renderBody: ({ closeDropdown }) => {
|
|
20
|
-
return (React.createElement(List, { className: "gd-alert-measure-select__list s-alert-measure-select-list", items: measures, itemHeight: DROPDOWN_ITEM_HEIGHT, renderItem: (i) => (React.createElement(SingleSelectListItem, { key: i.rowIndex, icon: measureIcon, title: getMeasureTitle(i.item.measure), isSelected: i.item.measure === selectedMeasure?.measure, onClick: () => {
|
|
24
|
+
return (React.createElement(List, { width: ref.current?.offsetWidth, className: "gd-alert-measure-select__list s-alert-measure-select-list", items: measures, itemHeight: DROPDOWN_ITEM_HEIGHT, renderItem: (i) => (React.createElement(SingleSelectListItem, { key: i.rowIndex, icon: measureIcon, title: getMeasureTitle(i.item.measure), isSelected: i.item.measure === selectedMeasure?.measure, onClick: () => {
|
|
21
25
|
onMeasureChange(i.item);
|
|
22
26
|
closeDropdown();
|
|
23
27
|
} })) }));
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertMeasureSelect.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AlertMeasureSelect.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertMeasureSelect.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAuB,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAUtD,MAAM,WAAW,GAAG,6BAAK,SAAS,EAAC,8CAA8C,GAAG,CAAC;AAErF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAC/B,eAAe,EACf,eAAe,EACf,QAAQ,EACR,mBAAmB,GACG,EAAE,EAAE;IAC1B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IAC7C,MAAM,oBAAoB,GAAG,eAAe;QACxC,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,kCAAkC,EAAE,CAAC,CAAC;IAErE,OAAO,CACH,6BAAK,SAAS,EAAC,yBAAyB;QACpC,oBAAC,QAAQ,IACL,mBAAmB,EAAE,mBAAmB,EACxC,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE;gBACzC,OAAO,CACH,6BACI,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;wBACV,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;oBACvB,CAAC;oBAED,oBAAC,MAAM,IACH,SAAS,EAAE,EAAE,CAAC,wDAAwD,EAAE;4BACpE,WAAW,EAAE,MAAM;yBACtB,CAAC,EACF,IAAI,EAAC,OAAO,EACZ,OAAO,EAAC,WAAW,EACnB,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,EACxD,SAAS,EAAE,mBAAmB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EACtD,OAAO,EAAE,cAAc,IAEtB,oBAAoB,CAChB,CACP,CACT,CAAC;YACN,CAAC,EACD,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE;gBAC9B,OAAO,CACH,oBAAC,IAAI,IACD,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,WAAW,EAC/B,SAAS,EAAC,2DAA2D,EACrE,KAAK,EAAE,QAAQ,EACf,UAAU,EAAE,oBAAoB,EAChC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CACf,oBAAC,oBAAoB,IACjB,GAAG,EAAE,CAAC,CAAC,QAAQ,EACf,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EACtC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,eAAe,EAAE,OAAO,EACvD,OAAO,EAAE,GAAG,EAAE;4BACV,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;4BACxB,aAAa,EAAE,CAAC;wBACpB,CAAC,GACH,CACL,GACH,CACL,CAAC;YACN,CAAC,GACH,CACA,CACT,CAAC;AACN,CAAC,CAAC"}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertsListItem.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAchE,UAAU,oBAAoB;IAC1B,KAAK,EAAE,yBAAyB,CAAC;IACjC,WAAW,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACxD,YAAY,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACzD,aAAa,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAC1D,aAAa,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;CAC7D;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,
|
|
1
|
+
{"version":3,"file":"AlertsListItem.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAchE,UAAU,oBAAoB;IAC1B,KAAK,EAAE,yBAAyB,CAAC;IACjC,WAAW,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACxD,YAAY,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACzD,aAAa,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAC1D,aAAa,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;CAC7D;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA0DzD,CAAC"}
|
|
@@ -5,7 +5,7 @@ import { useTheme } from "@gooddata/sdk-ui-theme-provider";
|
|
|
5
5
|
import { Icon } from "@gooddata/sdk-ui-kit";
|
|
6
6
|
import cx from "classnames";
|
|
7
7
|
import { AlertActionsDropdown } from "./AlertActionsDropdown.js";
|
|
8
|
-
import { getAlertThreshold, getOperatorTitle } from "./utils.js";
|
|
8
|
+
import { getAlertThreshold, getOperatorTitle, getValueSuffix } from "./utils.js";
|
|
9
9
|
import { gdColorNegative } from "../../../../constants/colors.js";
|
|
10
10
|
import { useAlertValidation } from "./hooks/useAlertValidation.js";
|
|
11
11
|
import { selectCanManageWorkspace, selectCurrentUser, useDashboardSelector, } from "../../../../../model/index.js";
|
|
@@ -13,7 +13,8 @@ export const AlertsListItem = ({ alert, onEditAlert, onPauseAlert, onDeleteAlert
|
|
|
13
13
|
const theme = useTheme();
|
|
14
14
|
const intl = useIntl();
|
|
15
15
|
const isPaused = alert.alert?.trigger?.state === "PAUSED";
|
|
16
|
-
const
|
|
16
|
+
const valueSuffix = getValueSuffix(alert.alert) ?? "";
|
|
17
|
+
const description = `${getOperatorTitle(intl, alert.alert)} ${getAlertThreshold(alert.alert)}${valueSuffix}`;
|
|
17
18
|
const { isValid } = useAlertValidation(alert);
|
|
18
19
|
const currentUser = useDashboardSelector(selectCurrentUser);
|
|
19
20
|
const canManageWorkspace = useDashboardSelector(selectCanManageWorkspace);
|
|
@@ -22,7 +23,7 @@ export const AlertsListItem = ({ alert, onEditAlert, onPauseAlert, onDeleteAlert
|
|
|
22
23
|
React.createElement("div", { className: "gd-alerts-list-item__content s-alert-list-item" },
|
|
23
24
|
React.createElement("div", { className: cx("gd-alerts-list-item__icon", {
|
|
24
25
|
"gd-alerts-list-item__icon-invalid": !isValid,
|
|
25
|
-
}) }, !isValid ? (React.createElement(Icon.Warning, { color: theme?.palette?.error?.base ?? gdColorNegative })) : isPaused ? (React.createElement(Icon.AlertPaused,
|
|
26
|
+
}) }, !isValid ? (React.createElement(Icon.Warning, { color: theme?.palette?.error?.base ?? gdColorNegative })) : isPaused ? (React.createElement(Icon.AlertPaused, { width: 13, height: 13 })) : (React.createElement(Icon.Alert, { width: 11, height: 13 }))),
|
|
26
27
|
React.createElement("div", { className: "gd-alerts-list-item__details" },
|
|
27
28
|
React.createElement("div", { className: "gd-alerts-list-item__title" }, alert.title),
|
|
28
29
|
React.createElement("div", { className: "gd-alerts-list-item__description" }, description))),
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertsListItem.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"AlertsListItem.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/AlertsListItem.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { IAutomationMetadataObjectDefinition, ICatalogMeasure, INotificationChannelMetadataObject } from "@gooddata/sdk-model";
|
|
2
|
+
import { IAutomationMetadataObjectDefinition, ICatalogMeasure, INotificationChannelMetadataObject, IWorkspaceUser } from "@gooddata/sdk-model";
|
|
3
3
|
import { AlertMetric } from "../../types.js";
|
|
4
4
|
interface ICreateAlertProps {
|
|
5
5
|
alert: IAutomationMetadataObjectDefinition | null;
|
|
@@ -7,9 +7,11 @@ interface ICreateAlertProps {
|
|
|
7
7
|
onCancel: () => void;
|
|
8
8
|
onCreate?: (alert: IAutomationMetadataObjectDefinition) => void;
|
|
9
9
|
destinations: INotificationChannelMetadataObject[];
|
|
10
|
+
users: IWorkspaceUser[];
|
|
10
11
|
hasAlerts: boolean;
|
|
11
12
|
measures: AlertMetric[];
|
|
12
13
|
maxAutomationsReached: boolean;
|
|
14
|
+
maxAutomationsRecipients: number;
|
|
13
15
|
catalogMeasures: ICatalogMeasure[];
|
|
14
16
|
}
|
|
15
17
|
export declare const CreateAlert: React.FC<ICreateAlertProps>;
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateAlert.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEH,mCAAmC,EACnC,eAAe,EACf,kCAAkC,
|
|
1
|
+
{"version":3,"file":"CreateAlert.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEH,mCAAmC,EACnC,eAAe,EACf,kCAAkC,EAClC,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C,UAAU,iBAAiB;IACvB,KAAK,EAAE,mCAAmC,GAAG,IAAI,CAAC;IAClD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mCAAmC,KAAK,IAAI,CAAC;IAChE,YAAY,EAAE,kCAAkC,EAAE,CAAC;IACnD,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,wBAAwB,EAAE,MAAM,CAAC;IACjC,eAAe,EAAE,eAAe,EAAE,CAAC;CACtC;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA6BnD,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// (C) 2022-2024 GoodData Corporation
|
|
2
2
|
import React from "react";
|
|
3
3
|
import { EditAlert } from "./EditAlert.js";
|
|
4
|
-
export const CreateAlert = ({ alert, onClose, onCancel, onCreate, destinations, hasAlerts, measures, maxAutomationsReached, catalogMeasures, }) => {
|
|
5
|
-
return (React.createElement(EditAlert, { alert: alert, onClose: onClose, onCancel: onCancel, onCreate: onCreate, isNewAlert: true, destinations: destinations, hasAlerts: hasAlerts, measures: measures, maxAutomationsReached: maxAutomationsReached, catalogMeasures: catalogMeasures }));
|
|
4
|
+
export const CreateAlert = ({ alert, onClose, onCancel, onCreate, destinations, users, hasAlerts, measures, maxAutomationsReached, maxAutomationsRecipients, catalogMeasures, }) => {
|
|
5
|
+
return (React.createElement(EditAlert, { alert: alert, onClose: onClose, onCancel: onCancel, onCreate: onCreate, isNewAlert: true, destinations: destinations, users: users, hasAlerts: hasAlerts, measures: measures, maxAutomationsReached: maxAutomationsReached, maxAutomationsRecipients: maxAutomationsRecipients, catalogMeasures: catalogMeasures }));
|
|
6
6
|
};
|
|
7
7
|
//# sourceMappingURL=CreateAlert.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateAlert.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"CreateAlert.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAgB3C,MAAM,CAAC,MAAM,WAAW,GAAgC,CAAC,EACrD,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,SAAS,EACT,QAAQ,EACR,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,GAClB,EAAE,EAAE;IACD,OAAO,CACH,oBAAC,SAAS,IACN,KAAK,EAAE,KAAkC,EACzC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,UAAU,QACV,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,qBAAqB,EAAE,qBAAqB,EAC5C,wBAAwB,EAAE,wBAAwB,EAClD,eAAe,EAAE,eAAe,GAClC,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { IAutomationMetadataObject, IAutomationMetadataObjectDefinition, ICatalogMeasure, INotificationChannelMetadataObject } from "@gooddata/sdk-model";
|
|
2
|
+
import { IAutomationMetadataObject, IAutomationMetadataObjectDefinition, ICatalogMeasure, INotificationChannelMetadataObject, IWorkspaceUser } from "@gooddata/sdk-model";
|
|
3
3
|
import { OverlayPositionType } from "@gooddata/sdk-ui-kit";
|
|
4
4
|
import { AlertMetric } from "../../types.js";
|
|
5
5
|
interface IEditAlertProps {
|
|
@@ -7,6 +7,7 @@ interface IEditAlertProps {
|
|
|
7
7
|
isNewAlert?: boolean;
|
|
8
8
|
hasAlerts: boolean;
|
|
9
9
|
destinations: INotificationChannelMetadataObject[];
|
|
10
|
+
users: IWorkspaceUser[];
|
|
10
11
|
measures: AlertMetric[];
|
|
11
12
|
catalogMeasures: ICatalogMeasure[];
|
|
12
13
|
onClose: () => void;
|
|
@@ -14,6 +15,7 @@ interface IEditAlertProps {
|
|
|
14
15
|
onCreate?: (alert: IAutomationMetadataObjectDefinition) => void;
|
|
15
16
|
onUpdate?: (alert: IAutomationMetadataObject) => void;
|
|
16
17
|
maxAutomationsReached?: boolean;
|
|
18
|
+
maxAutomationsRecipients: number;
|
|
17
19
|
overlayPositionType?: OverlayPositionType;
|
|
18
20
|
}
|
|
19
21
|
export declare const EditAlert: React.FC<IEditAlertProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditAlert.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,yBAAyB,EACzB,mCAAmC,EACnC,eAAe,EACf,kCAAkC,
|
|
1
|
+
{"version":3,"file":"EditAlert.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACH,yBAAyB,EACzB,mCAAmC,EACnC,eAAe,EACf,kCAAkC,EAClC,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAMH,mBAAmB,EACtB,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EAAE,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AA4BxE,UAAU,eAAe;IACrB,KAAK,EAAE,yBAAyB,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,kCAAkC,EAAE,CAAC;IACnD,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mCAAmC,KAAK,IAAI,CAAC;IAChE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACtD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,wBAAwB,EAAE,MAAM,CAAC;IACjC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAyN/C,CAAC"}
|
|
@@ -11,6 +11,7 @@ import { defineMessages, FormattedMessage, useIntl } from "react-intl";
|
|
|
11
11
|
import { AlertMetricComparatorType } from "../../types.js";
|
|
12
12
|
import { useAlertValidation } from "./hooks/useAlertValidation.js";
|
|
13
13
|
import { getAlertCompareOperator, getAlertMeasure, getAlertRelativeOperator, getAlertThreshold, getValueSuffix, isChangeOrDifferenceOperator, } from "./utils.js";
|
|
14
|
+
import { RecipientsSelect } from "../../../../scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js";
|
|
14
15
|
const TOOLTIP_ALIGN_POINTS = [{ align: "cl cr" }, { align: "cr cl" }];
|
|
15
16
|
const messages = defineMessages({
|
|
16
17
|
invalidDefault: {
|
|
@@ -24,23 +25,24 @@ const invalidMessagesObj = {
|
|
|
24
25
|
missingMetric: messages.invalidDefault,
|
|
25
26
|
missingWidget: messages.invalidWidget,
|
|
26
27
|
};
|
|
27
|
-
export const EditAlert = ({ alert, isNewAlert, hasAlerts, destinations, measures, onClose, onCancel, onCreate, onUpdate, maxAutomationsReached = false, overlayPositionType, catalogMeasures, }) => {
|
|
28
|
-
const { viewMode, updatedAlert, canSubmit,
|
|
28
|
+
export const EditAlert = ({ alert, isNewAlert, hasAlerts, destinations, users, measures, onClose, onCancel, onCreate, onUpdate, maxAutomationsReached = false, maxAutomationsRecipients, overlayPositionType, catalogMeasures, }) => {
|
|
29
|
+
const { viewMode, updatedAlert, canSubmit, showRecipientsSelect, warningMessage,
|
|
29
30
|
//
|
|
30
|
-
changeComparisonOperator, changeRelativeOperator, changeMeasure, changeValue, changeDestination,
|
|
31
|
+
changeComparisonOperator, changeRelativeOperator, changeMeasure, changeValue, changeDestination, changeRecipients,
|
|
31
32
|
//
|
|
32
33
|
configureAlert, saveAlertConfiguration, cancelAlertConfiguration,
|
|
33
34
|
//
|
|
34
35
|
createAlert, updateAlert, } = useEditAlert({
|
|
36
|
+
metrics: measures,
|
|
35
37
|
alert,
|
|
36
38
|
onCreate,
|
|
37
39
|
onUpdate,
|
|
38
40
|
catalogMeasures,
|
|
41
|
+
destinations,
|
|
39
42
|
});
|
|
40
43
|
const intl = useIntl();
|
|
41
44
|
const disableCreateButtonDueToLimits = isNewAlert && maxAutomationsReached;
|
|
42
|
-
const
|
|
43
|
-
const selectedMeasure = measures.find((measure) => measure.measure.measure.localIdentifier === selectedMeasureIdentifier);
|
|
45
|
+
const selectedMeasure = getAlertMeasure(measures, updatedAlert.alert);
|
|
44
46
|
const { isValid, invalidityReason } = useAlertValidation(alert, isNewAlert);
|
|
45
47
|
const filters = alert.alert?.execution?.filters ?? [];
|
|
46
48
|
return viewMode === "edit" ? (React.createElement(DashboardInsightSubmenuContainer, { title: isNewAlert
|
|
@@ -73,7 +75,9 @@ export const EditAlert = ({ alert, isNewAlert, hasAlerts, destinations, measures
|
|
|
73
75
|
React.createElement(FormattedMessage, { id: "insightAlert.config.compare_with" }),
|
|
74
76
|
" ",
|
|
75
77
|
React.createElement(FormattedMessage, { id: "insightAlert.config.compare_with_pp" }))) : null,
|
|
76
|
-
destinations.length > 1 && (React.createElement(AlertDestinationSelect, { selectedDestination: updatedAlert.notificationChannel, onDestinationChange: changeDestination, destinations: destinations, overlayPositionType: overlayPositionType }))
|
|
78
|
+
destinations.length > 1 && (React.createElement(AlertDestinationSelect, { selectedDestination: updatedAlert.notificationChannel, onDestinationChange: changeDestination, destinations: destinations, overlayPositionType: overlayPositionType })),
|
|
79
|
+
showRecipientsSelect ? (React.createElement(RecipientsSelect, { users: users, value: updatedAlert.recipients ?? [], originalValue: alert.recipients || [], onChange: changeRecipients, allowEmptySelection: true, maxRecipients: maxAutomationsRecipients, className: "gd-edit-alert__recipients" })) : null),
|
|
80
|
+
warningMessage ? React.createElement(Message, { type: "warning" }, warningMessage) : null,
|
|
77
81
|
!isValid ? (React.createElement(Message, { type: "error" },
|
|
78
82
|
React.createElement(FormattedMessage, { id: invalidMessagesObj[invalidityReason].id }))) : null),
|
|
79
83
|
React.createElement("div", { className: "gd-edit-alert__buttons" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditAlert.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"EditAlert.js","sourceRoot":"","sources":["../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAlertValidation.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,MAAM,qBAAqB,GAAG,eAAe,GAAG,eAAe,CAAC;AAEtE,eAAO,MAAM,kBAAkB,UACpB,yBAAyB,eACnB,OAAO;aACV,OAAO;sBAAoB,qBAAqB,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"useAlertValidation.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,MAAM,qBAAqB,GAAG,eAAe,GAAG,eAAe,CAAC;AAEtE,eAAO,MAAM,kBAAkB,UACpB,yBAAyB,eACnB,OAAO;aACV,OAAO;sBAAoB,qBAAqB,GAAG,SAAS;CAsBzE,CAAC"}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useAlertValidation.js
CHANGED
|
@@ -4,12 +4,11 @@ import { getAlertMeasure, getSupportedInsightMeasuresByInsight } from "../utils.
|
|
|
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 = getAlertMeasure(alert.alert);
|
|
8
7
|
const widget = useDashboardSelector(selectWidgetByRef(widgetRef));
|
|
9
8
|
const insight = useDashboardSelector(selectInsightByWidgetRef(widget?.ref));
|
|
10
9
|
const supportedMeasures = getSupportedInsightMeasuresByInsight(insight);
|
|
11
|
-
const selectedMeasureExists = supportedMeasures
|
|
12
|
-
const isValid = isNewAlert || (!!widget && selectedMeasureExists);
|
|
10
|
+
const selectedMeasureExists = getAlertMeasure(supportedMeasures, alert.alert);
|
|
11
|
+
const isValid = isNewAlert || Boolean(!!widget && selectedMeasureExists);
|
|
13
12
|
let invalidityReason = undefined;
|
|
14
13
|
if (!widget) {
|
|
15
14
|
invalidityReason = "missingWidget";
|
|
@@ -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,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;
|
|
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;IAE5E,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;IACxE,MAAM,qBAAqB,GAAG,eAAe,CAAC,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAE9E,MAAM,OAAO,GAAG,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,qBAAqB,CAAC,CAAC;IAEzE,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"}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts
CHANGED
|
@@ -1,20 +1,25 @@
|
|
|
1
|
-
import { IAlertComparisonOperator, IAlertRelativeArithmeticOperator, IAlertRelativeOperator, IAutomationMetadataObject, IAutomationMetadataObjectDefinition, ICatalogMeasure } from "@gooddata/sdk-model";
|
|
1
|
+
import { IAlertComparisonOperator, IAlertRelativeArithmeticOperator, IAlertRelativeOperator, IAutomationMetadataObject, IAutomationMetadataObjectDefinition, IAutomationRecipient, ICatalogMeasure, INotificationChannelMetadataObject } from "@gooddata/sdk-model";
|
|
2
2
|
import { AlertMetric } from "../../../types.js";
|
|
3
3
|
export interface IUseEditAlertProps {
|
|
4
|
+
metrics: AlertMetric[];
|
|
4
5
|
alert: IAutomationMetadataObject;
|
|
5
6
|
catalogMeasures: ICatalogMeasure[];
|
|
7
|
+
destinations: INotificationChannelMetadataObject[];
|
|
6
8
|
onCreate?: (alert: IAutomationMetadataObjectDefinition) => void;
|
|
7
9
|
onUpdate?: (alert: IAutomationMetadataObject) => void;
|
|
8
10
|
}
|
|
9
|
-
export declare const useEditAlert: ({ alert, onCreate, onUpdate, catalogMeasures }: IUseEditAlertProps) => {
|
|
11
|
+
export declare const useEditAlert: ({ metrics, alert, onCreate, onUpdate, catalogMeasures, destinations, }: IUseEditAlertProps) => {
|
|
10
12
|
viewMode: "configuration" | "edit";
|
|
11
13
|
updatedAlert: IAutomationMetadataObject;
|
|
12
14
|
canSubmit: boolean;
|
|
15
|
+
showRecipientsSelect: boolean;
|
|
16
|
+
warningMessage: string | undefined;
|
|
13
17
|
changeComparisonOperator: (measure: AlertMetric, comparisonOperator: IAlertComparisonOperator) => void;
|
|
14
18
|
changeRelativeOperator: (measure: AlertMetric, relativeOperator: IAlertRelativeOperator, arithmeticOperator: IAlertRelativeArithmeticOperator) => void;
|
|
15
19
|
changeMeasure: (measure: AlertMetric) => void;
|
|
16
20
|
changeValue: (value: number) => void;
|
|
17
21
|
changeDestination: (destinationId: string) => void;
|
|
22
|
+
changeRecipients: (recipients: IAutomationRecipient[]) => void;
|
|
18
23
|
configureAlert: () => void;
|
|
19
24
|
saveAlertConfiguration: (alert: IAutomationMetadataObject) => void;
|
|
20
25
|
cancelAlertConfiguration: () => void;
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEditAlert.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useEditAlert.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EACtB,yBAAyB,EACzB,mCAAmC,EACnC,oBAAoB,EACpB,eAAe,EACf,kCAAkC,EACrC,MAAM,qBAAqB,CAAC;AAW7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIhD,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,KAAK,EAAE,yBAAyB,CAAC;IACjC,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,YAAY,EAAE,kCAAkC,EAAE,CAAC;IACnD,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,2EAOtB,kBAAkB;;;;;;wCAgB0B,WAAW,sBAAsB,wBAAwB;sCAOvF,WAAW,oBACF,sBAAsB,sBACpB,gCAAgC;6BAbxB,WAAW;yBA2Bf,MAAM;uCAIQ,MAAM;mCA2BV,oBAAoB,EAAE;;oCAWrB,yBAAyB;;;;CA2CnE,CAAC"}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js
CHANGED
|
@@ -1,24 +1,54 @@
|
|
|
1
1
|
// (C) 2022-2024 GoodData Corporation
|
|
2
2
|
import { useState } from "react";
|
|
3
|
+
import { useIntl } from "react-intl";
|
|
3
4
|
import isEqual from "lodash/isEqual.js";
|
|
4
|
-
import { isAlertValueDefined, transformAlertByComparisonOperator, transformAlertByDestination, transformAlertByMetric, transformAlertByRelativeOperator, transformAlertByValue, } from "../utils.js";
|
|
5
|
-
|
|
5
|
+
import { isAlertRecipientsValid, isAlertValueDefined, transformAlertByComparisonOperator, transformAlertByDestination, transformAlertByMetric, transformAlertByRelativeOperator, transformAlertByValue, } from "../utils.js";
|
|
6
|
+
import { selectCurrentUser, useDashboardSelector } from "../../../../../../model/index.js";
|
|
7
|
+
import { convertUserToAutomationRecipient } from "../../../../../../_staging/automation/index.js";
|
|
8
|
+
export const useEditAlert = ({ metrics, alert, onCreate, onUpdate, catalogMeasures, destinations, }) => {
|
|
6
9
|
const [viewMode, setViewMode] = useState("edit");
|
|
7
10
|
const [updatedAlert, setUpdatedAlert] = useState(alert);
|
|
11
|
+
const [warningMessage, setWarningMessage] = useState(undefined);
|
|
12
|
+
const currentUser = useDashboardSelector(selectCurrentUser);
|
|
13
|
+
const intl = useIntl();
|
|
14
|
+
const selectedDestination = destinations.find((destination) => destination.id === updatedAlert.notificationChannel);
|
|
15
|
+
const showRecipientsSelect = selectedDestination?.allowedRecipients !== "CREATOR";
|
|
8
16
|
const changeMeasure = (measure) => {
|
|
9
|
-
setUpdatedAlert((alert) => transformAlertByMetric(alert, measure, catalogMeasures));
|
|
17
|
+
setUpdatedAlert((alert) => transformAlertByMetric(metrics, alert, measure, catalogMeasures));
|
|
10
18
|
};
|
|
11
19
|
const changeComparisonOperator = (measure, comparisonOperator) => {
|
|
12
|
-
setUpdatedAlert((alert) => transformAlertByComparisonOperator(alert, measure, comparisonOperator));
|
|
20
|
+
setUpdatedAlert((alert) => transformAlertByComparisonOperator(metrics, alert, measure, comparisonOperator));
|
|
13
21
|
};
|
|
14
22
|
const changeRelativeOperator = (measure, relativeOperator, arithmeticOperator) => {
|
|
15
|
-
setUpdatedAlert((alert) => transformAlertByRelativeOperator(alert, measure, relativeOperator, arithmeticOperator, catalogMeasures));
|
|
23
|
+
setUpdatedAlert((alert) => transformAlertByRelativeOperator(metrics, alert, measure, relativeOperator, arithmeticOperator, catalogMeasures));
|
|
16
24
|
};
|
|
17
25
|
const changeValue = (value) => {
|
|
18
26
|
setUpdatedAlert((alert) => transformAlertByValue(alert, value));
|
|
19
27
|
};
|
|
20
28
|
const changeDestination = (destinationId) => {
|
|
21
|
-
|
|
29
|
+
const previousDestination = destinations.find((channel) => alert.notificationChannel === channel.id);
|
|
30
|
+
const selectedDestination = destinations.find((channel) => destinationId === channel.id);
|
|
31
|
+
/**
|
|
32
|
+
* When allowed recipients are changed from "ALL" to "CREATOR", show warning message
|
|
33
|
+
*/
|
|
34
|
+
const showWarningMessage = selectedDestination?.allowedRecipients === "CREATOR" &&
|
|
35
|
+
previousDestination?.allowedRecipients !== "CREATOR";
|
|
36
|
+
setWarningMessage(showWarningMessage
|
|
37
|
+
? intl.formatMessage({ id: "insightAlert.config.warning.destination" })
|
|
38
|
+
: undefined);
|
|
39
|
+
/**
|
|
40
|
+
* Reset recipients when new notification channel only allows the author/creator
|
|
41
|
+
*/
|
|
42
|
+
const updatedRecipients = selectedDestination?.allowedRecipients === "CREATOR"
|
|
43
|
+
? [convertUserToAutomationRecipient(currentUser)]
|
|
44
|
+
: undefined;
|
|
45
|
+
setUpdatedAlert((alert) => transformAlertByDestination(alert, destinationId, updatedRecipients));
|
|
46
|
+
};
|
|
47
|
+
const changeRecipients = (recipients) => {
|
|
48
|
+
setUpdatedAlert((alert) => ({
|
|
49
|
+
...alert,
|
|
50
|
+
recipients,
|
|
51
|
+
}));
|
|
22
52
|
};
|
|
23
53
|
const configureAlert = () => {
|
|
24
54
|
setViewMode("configuration");
|
|
@@ -37,18 +67,22 @@ export const useEditAlert = ({ alert, onCreate, onUpdate, catalogMeasures }) =>
|
|
|
37
67
|
onUpdate?.(updatedAlert);
|
|
38
68
|
};
|
|
39
69
|
const isValueDefined = isAlertValueDefined(updatedAlert.alert);
|
|
70
|
+
const isRecipientsValid = isAlertRecipientsValid(updatedAlert);
|
|
40
71
|
const isAlertChanged = !isEqual(updatedAlert, alert);
|
|
41
|
-
const canSubmit = isValueDefined && isAlertChanged;
|
|
72
|
+
const canSubmit = isValueDefined && isAlertChanged && isRecipientsValid;
|
|
42
73
|
return {
|
|
43
74
|
viewMode,
|
|
44
75
|
updatedAlert,
|
|
45
76
|
canSubmit,
|
|
77
|
+
showRecipientsSelect,
|
|
78
|
+
warningMessage,
|
|
46
79
|
//
|
|
47
80
|
changeComparisonOperator,
|
|
48
81
|
changeRelativeOperator,
|
|
49
82
|
changeMeasure,
|
|
50
83
|
changeValue,
|
|
51
84
|
changeDestination,
|
|
85
|
+
changeRecipients,
|
|
52
86
|
//
|
|
53
87
|
configureAlert,
|
|
54
88
|
saveAlertConfiguration,
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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;
|
|
1
|
+
{"version":3,"file":"useEditAlert.js","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"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"}
|