@gooddata/sdk-ui-dashboard 11.55.0-alpha.1 → 11.55.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE +26793 -68204
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/index.d.ts +23 -3
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +20 -0
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js +1 -1
- package/esm/model/store/config/configSelectors.js +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts +10 -3
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +24 -59
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogAttribute.d.ts +13 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogAttribute.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertAttributeSelect.js → DefaultAlertingDialogAttribute.js} +12 -3
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogComparisonOperator.d.ts +13 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogComparisonOperator.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertComparisonOperatorSelect.js → DefaultAlertingDialogComparisonOperator.js} +13 -4
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogComparisonPeriod.d.ts +14 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogComparisonPeriod.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertComparisonPeriodSelect.js → DefaultAlertingDialogComparisonPeriod.js} +16 -6
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogDestination.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogDestination.js +2 -2
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogGranularity.d.ts +12 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogGranularity.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertGranularitySelect.js → DefaultAlertingDialogGranularity.js} +10 -2
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogMeasure.d.ts +12 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogMeasure.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertMeasureSelect.js → DefaultAlertingDialogMeasure.js} +11 -3
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogRecipients.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogRecipients.js +2 -2
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogSensitivity.d.ts +12 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogSensitivity.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertSensitivitySelect.js → DefaultAlertingDialogSensitivity.js} +10 -2
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogThreshold.d.ts +12 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogThreshold.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertThresholdInput.js → DefaultAlertingDialogThreshold.js} +9 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogTriggerInterval.d.ts +13 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogTriggerInterval.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertTriggerIntervalSelect.js → DefaultAlertingDialogTriggerInterval.js} +11 -2
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogTriggerMode.d.ts +12 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogTriggerMode.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/{components/AlertTriggerModeSelect.js → DefaultAlertingDialogTriggerMode.js} +10 -2
- package/esm/presentation/automations/alerting/blocks/AlertingDialogAttribute.d.ts +16 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogAttribute.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogAttribute.js +28 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogComparisonOperator.d.ts +22 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogComparisonOperator.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogComparisonOperator.js +31 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogComparisonPeriod.d.ts +18 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogComparisonPeriod.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogComparisonPeriod.js +31 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogFieldLabelWithTooltip.d.ts +11 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogFieldLabelWithTooltip.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogFieldLabelWithTooltip.js +15 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogGranularity.d.ts +15 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogGranularity.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogGranularity.js +33 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogMeasure.d.ts +30 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogMeasure.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogMeasure.js +39 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogSensitivity.d.ts +15 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogSensitivity.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogSensitivity.js +30 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogThreshold.d.ts +21 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogThreshold.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogThreshold.js +36 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogTriggerInterval.d.ts +15 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogTriggerInterval.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogTriggerInterval.js +32 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogTriggerMode.d.ts +15 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogTriggerMode.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogTriggerMode.js +24 -0
- package/esm/presentation/automations/alerting/{DefaultAlertingDialog/hooks → hooks}/useAlertThreshold.d.ts +1 -1
- package/esm/presentation/automations/alerting/hooks/useAlertThreshold.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/{DefaultAlertingDialog/hooks → hooks}/useAlertThreshold.js +1 -1
- package/esm/presentation/automations/alerting/{DefaultAlertingDialog/hooks → hooks}/useThresholdValue.d.ts +1 -1
- package/esm/presentation/automations/alerting/hooks/useThresholdValue.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/{DefaultAlertingDialog/hooks → hooks}/useThresholdValue.js +2 -2
- package/esm/presentation/automations/alerting/state/types.d.ts +2 -2
- package/esm/presentation/automations/alerting/state/types.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/state/useAlertingDialogFieldProps.d.ts +87 -0
- package/esm/presentation/automations/alerting/state/useAlertingDialogFieldProps.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/state/useAlertingDialogFieldProps.js +234 -0
- package/esm/presentation/automations/alerting/types.d.ts +342 -3
- package/esm/presentation/automations/alerting/types.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/utils/getters.d.ts +1 -8
- package/esm/presentation/automations/alerting/utils/getters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/components/AutomationAttributeFilter.js +1 -1
- package/esm/presentation/automations/shared/automationFilters/components/AutomationDateFilter.js +1 -1
- package/esm/presentation/automations/shared/automationFilters/components/AutomationMeasureValueFilter.js +1 -1
- package/esm/presentation/automations/shared/slots/AutomationDialogFormField.d.ts +13 -0
- package/esm/presentation/automations/shared/slots/AutomationDialogFormField.d.ts.map +1 -0
- package/esm/presentation/automations/{alerting/DefaultAlertingDialog/FormField.js → shared/slots/AutomationDialogFormField.js} +10 -1
- package/esm/presentation/automations/shared/slots/types.d.ts +23 -0
- package/esm/presentation/automations/shared/slots/types.d.ts.map +1 -1
- package/esm/sdk-ui-dashboard.d.ts +727 -6
- package/package.json +21 -23
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/FormField.d.ts +0 -8
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/FormField.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertAttributeSelect.d.ts +0 -19
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertAttributeSelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertComparisonOperatorSelect.d.ts +0 -19
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertComparisonOperatorSelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertComparisonPeriodSelect.d.ts +0 -15
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertComparisonPeriodSelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertGranularitySelect.d.ts +0 -12
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertGranularitySelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertMeasureSelect.d.ts +0 -13
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertMeasureSelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertSensitivitySelect.d.ts +0 -11
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertSensitivitySelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertThresholdInput.d.ts +0 -12
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertThresholdInput.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertTriggerIntervalSelect.d.ts +0 -11
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertTriggerIntervalSelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertTriggerModeSelect.d.ts +0 -12
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/components/AlertTriggerModeSelect.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/hooks/useAlertThreshold.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/hooks/useThresholdValue.d.ts.map +0 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogComparisonOperatorProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's comparison-operator field: the dropdown selecting the
|
|
5
|
+
* condition's operator (fixed threshold, change, difference, anomaly detection); renders nothing
|
|
6
|
+
* without a measure. Props-driven — the bare control without its label; reads no dialog context
|
|
7
|
+
* (only `useIntl`). The default dialog and {@link AlertingDialogComparisonOperator} render it with
|
|
8
|
+
* {@link useAlertingDialogComparisonOperatorProps} inside {@link AutomationDialogFormField}.
|
|
9
|
+
*
|
|
10
|
+
* @alpha
|
|
11
|
+
*/
|
|
12
|
+
export declare function DefaultAlertingDialogComparisonOperator(props: IAlertingDialogComparisonOperatorProps): ReactElement | null;
|
|
13
|
+
//# sourceMappingURL=DefaultAlertingDialogComparisonOperator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogComparisonOperator.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogComparisonOperator.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAU,MAAM,OAAO,CAAC;AAazE,OAAO,EAAE,KAAK,sCAAsC,EAAE,MAAM,aAAa,CAAC;AAiB1E;;;;;;;;GAQG;AACH,wBAAgB,uCAAuC,CACnD,KAAK,EAAE,sCAAsC,GAC9C,YAAY,GAAG,IAAI,CA6MrB"}
|
|
@@ -4,10 +4,19 @@ import { useRef } from "react";
|
|
|
4
4
|
import cx from "classnames";
|
|
5
5
|
import { FormattedMessage, useIntl } from "react-intl";
|
|
6
6
|
import { AI_OPERATOR, AI_OPERATORS } from "@gooddata/sdk-ui-ext";
|
|
7
|
-
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox
|
|
8
|
-
import { OPERATORS } from "
|
|
9
|
-
import { useOperators } from "
|
|
10
|
-
|
|
7
|
+
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox } from "@gooddata/sdk-ui-kit";
|
|
8
|
+
import { OPERATORS } from "./constants.js";
|
|
9
|
+
import { useOperators } from "./hooks/useOperators.js";
|
|
10
|
+
/**
|
|
11
|
+
* Default render of the alerting dialog's comparison-operator field: the dropdown selecting the
|
|
12
|
+
* condition's operator (fixed threshold, change, difference, anomaly detection); renders nothing
|
|
13
|
+
* without a measure. Props-driven — the bare control without its label; reads no dialog context
|
|
14
|
+
* (only `useIntl`). The default dialog and {@link AlertingDialogComparisonOperator} render it with
|
|
15
|
+
* {@link useAlertingDialogComparisonOperatorProps} inside {@link AutomationDialogFormField}.
|
|
16
|
+
*
|
|
17
|
+
* @alpha
|
|
18
|
+
*/
|
|
19
|
+
export function DefaultAlertingDialogComparisonOperator(props) {
|
|
11
20
|
const { measure, selectedComparisonOperator, onComparisonOperatorChange, selectedRelativeOperator, onRelativeOperatorChange, selectedAiOperator, onAnomalyDetectionChange, overlayPositionType, id, closeOnParentScroll, enableAnomalyDetectionAlert, } = props;
|
|
12
21
|
const selectedComparisonItem = selectedComparisonOperator
|
|
13
22
|
? OPERATORS.find((option) => option.id === selectedComparisonOperator)
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogComparisonPeriodProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's comparison-period field: the dropdown selecting the
|
|
5
|
+
* period a change or difference condition compares against; static text with a single comparator,
|
|
6
|
+
* nothing for other condition types. Props-driven — the bare control without its label; reads no
|
|
7
|
+
* dialog context (only `useIntl`). The default dialog and {@link AlertingDialogComparisonPeriod}
|
|
8
|
+
* render it with {@link useAlertingDialogComparisonPeriodProps} inside
|
|
9
|
+
* {@link AutomationDialogFormField}.
|
|
10
|
+
*
|
|
11
|
+
* @alpha
|
|
12
|
+
*/
|
|
13
|
+
export declare function DefaultAlertingDialogComparisonPeriod({ alert, measure, overlayPositionType, selectedComparison, selectedGranularity, onComparisonChange, id, closeOnParentScroll }: IAlertingDialogComparisonPeriodProps): ReactElement | null;
|
|
14
|
+
//# sourceMappingURL=DefaultAlertingDialogComparisonPeriod.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogComparisonPeriod.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogComparisonPeriod.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAW,MAAM,OAAO,CAAC;AAQ1E,OAAO,EAGH,KAAK,oCAAoC,EAC5C,MAAM,aAAa,CAAC;AAIrB;;;;;;;;;GASG;AACH,wBAAgB,qCAAqC,CAAC,EAClD,KAAK,EACL,OAAO,EACP,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,EAAE,EACF,mBAAmB,EACtB,EAAE,oCAAoC,GAAG,YAAY,GAAG,IAAI,CAqK5D"}
|
|
@@ -3,12 +3,22 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { useMemo } from "react";
|
|
4
4
|
import cx from "classnames";
|
|
5
5
|
import { useIntl } from "react-intl";
|
|
6
|
-
import { DateGranularity
|
|
7
|
-
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox
|
|
8
|
-
import { AlertMetricComparatorType } from "
|
|
9
|
-
import { translateGranularity } from "
|
|
10
|
-
import { isChangeOrDifferenceOperator } from "
|
|
11
|
-
|
|
6
|
+
import { DateGranularity } from "@gooddata/sdk-model";
|
|
7
|
+
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox } from "@gooddata/sdk-ui-kit";
|
|
8
|
+
import { AlertMetricComparatorType, } from "../types.js";
|
|
9
|
+
import { translateGranularity } from "../utils/granularity.js";
|
|
10
|
+
import { isChangeOrDifferenceOperator } from "../utils/guards.js";
|
|
11
|
+
/**
|
|
12
|
+
* Default render of the alerting dialog's comparison-period field: the dropdown selecting the
|
|
13
|
+
* period a change or difference condition compares against; static text with a single comparator,
|
|
14
|
+
* nothing for other condition types. Props-driven — the bare control without its label; reads no
|
|
15
|
+
* dialog context (only `useIntl`). The default dialog and {@link AlertingDialogComparisonPeriod}
|
|
16
|
+
* render it with {@link useAlertingDialogComparisonPeriodProps} inside
|
|
17
|
+
* {@link AutomationDialogFormField}.
|
|
18
|
+
*
|
|
19
|
+
* @alpha
|
|
20
|
+
*/
|
|
21
|
+
export function DefaultAlertingDialogComparisonPeriod({ alert, measure, overlayPositionType, selectedComparison, selectedGranularity, onComparisonChange, id, closeOnParentScroll, }) {
|
|
12
22
|
const intl = useIntl();
|
|
13
23
|
const selectedOperator = useMemo(() => {
|
|
14
24
|
return measure?.comparators.find((a) => a.comparator === selectedComparison &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultAlertingDialogDestination.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogDestination.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogDestination.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogDestination.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAOrF;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,EAC7C,oBAAoB,EACpB,6BAA6B,EAC7B,QAAQ,EACX,EAAE,iCAAiC,2CAgBnC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
// (C) 2026 GoodData Corporation
|
|
3
3
|
import { FormattedMessage } from "react-intl";
|
|
4
|
+
import { AutomationDialogFormField } from "../../shared/slots/AutomationDialogFormField.js";
|
|
4
5
|
import { AlertDestinationSelect } from "./components/AlertDestinationSelect.js";
|
|
5
|
-
import { FormField } from "./FormField.js";
|
|
6
6
|
const OVERLAY_POSITION_TYPE = "sameAsTarget";
|
|
7
7
|
const CLOSE_ON_PARENT_SCROLL = true;
|
|
8
8
|
/**
|
|
@@ -14,5 +14,5 @@ const CLOSE_ON_PARENT_SCROLL = true;
|
|
|
14
14
|
* @alpha
|
|
15
15
|
*/
|
|
16
16
|
export function DefaultAlertingDialogDestination({ notificationChannels, selectedNotificationChannelId, onChange, }) {
|
|
17
|
-
return (_jsx(
|
|
17
|
+
return (_jsx(AutomationDialogFormField, { label: _jsx(FormattedMessage, { id: "insightAlert.config.action" }), htmlFor: "alert.destination", children: _jsx(AlertDestinationSelect, { id: "alert.destination", selectedDestination: selectedNotificationChannelId, onDestinationChange: onChange, destinations: notificationChannels, overlayPositionType: OVERLAY_POSITION_TYPE, closeOnParentScroll: CLOSE_ON_PARENT_SCROLL }) }));
|
|
18
18
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogGranularityProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's granularity field: the dropdown selecting the
|
|
5
|
+
* anomaly-detection granularity. Props-driven — the bare control without its label; reads no
|
|
6
|
+
* dialog context (only `useIntl`). The default dialog and {@link AlertingDialogGranularity} render
|
|
7
|
+
* it with {@link useAlertingDialogGranularityProps} inside {@link AutomationDialogFormField}.
|
|
8
|
+
*
|
|
9
|
+
* @alpha
|
|
10
|
+
*/
|
|
11
|
+
export declare function DefaultAlertingDialogGranularity({ id, allowHourlyRecurrence, selectedGranularity, onGranularityChange, overlayPositionType, closeOnParentScroll }: IAlertingDialogGranularityProps): ReactElement;
|
|
12
|
+
//# sourceMappingURL=DefaultAlertingDialogGranularity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogGranularity.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogGranularity.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAcjE,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAkCnE;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,EAC7C,EAAE,EACF,qBAAqB,EACrB,mBAA4B,EAC5B,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACtB,EAAE,+BAA+B,GAAG,YAAY,CA6EhD"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import cx from "classnames";
|
|
3
3
|
import { useIntl } from "react-intl";
|
|
4
4
|
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox, } from "@gooddata/sdk-ui-kit";
|
|
5
|
-
import { messages } from "
|
|
5
|
+
import { messages } from "./messages.js";
|
|
6
6
|
const options = [
|
|
7
7
|
{
|
|
8
8
|
title: messages.alertGranularityHour.id,
|
|
@@ -29,7 +29,15 @@ const options = [
|
|
|
29
29
|
id: "YEAR",
|
|
30
30
|
},
|
|
31
31
|
];
|
|
32
|
-
|
|
32
|
+
/**
|
|
33
|
+
* Default render of the alerting dialog's granularity field: the dropdown selecting the
|
|
34
|
+
* anomaly-detection granularity. Props-driven — the bare control without its label; reads no
|
|
35
|
+
* dialog context (only `useIntl`). The default dialog and {@link AlertingDialogGranularity} render
|
|
36
|
+
* it with {@link useAlertingDialogGranularityProps} inside {@link AutomationDialogFormField}.
|
|
37
|
+
*
|
|
38
|
+
* @alpha
|
|
39
|
+
*/
|
|
40
|
+
export function DefaultAlertingDialogGranularity({ id, allowHourlyRecurrence, selectedGranularity = "WEEK", onGranularityChange, overlayPositionType, closeOnParentScroll, }) {
|
|
33
41
|
const usableOptions = options.filter((o) => {
|
|
34
42
|
if (!allowHourlyRecurrence) {
|
|
35
43
|
return o.id !== "HOUR";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogMeasureProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's measure field: the dropdown selecting the measure the
|
|
5
|
+
* condition targets. Props-driven — the bare control without its label; reads no dialog context
|
|
6
|
+
* (only `useIntl`). The default dialog and {@link AlertingDialogMeasure} render it with
|
|
7
|
+
* {@link useAlertingDialogMeasureProps} inside {@link AutomationDialogFormField}.
|
|
8
|
+
*
|
|
9
|
+
* @alpha
|
|
10
|
+
*/
|
|
11
|
+
export declare function DefaultAlertingDialogMeasure({ id, disabled, selectedMeasure, onMeasureChange, measures, overlayPositionType, closeOnParentScroll }: IAlertingDialogMeasureProps): ReactElement;
|
|
12
|
+
//# sourceMappingURL=DefaultAlertingDialogMeasure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogMeasure.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogMeasure.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAU,MAAM,OAAO,CAAC;AAOzE,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAK/D;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,EACzC,EAAE,EACF,QAAQ,EACR,eAAe,EACf,eAAe,EACf,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACtB,EAAE,2BAA2B,GAAG,YAAY,CA8E5C"}
|
|
@@ -3,10 +3,18 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { useRef } from "react";
|
|
4
4
|
import cx from "classnames";
|
|
5
5
|
import { useIntl } from "react-intl";
|
|
6
|
-
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox
|
|
7
|
-
import { getMeasureTitle } from "
|
|
6
|
+
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox } from "@gooddata/sdk-ui-kit";
|
|
7
|
+
import { getMeasureTitle } from "../utils/getters.js";
|
|
8
8
|
const measureIcon = _jsx("div", { className: "gd-alert-measure-select__icon gd-icon-metric" });
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Default render of the alerting dialog's measure field: the dropdown selecting the measure the
|
|
11
|
+
* condition targets. Props-driven — the bare control without its label; reads no dialog context
|
|
12
|
+
* (only `useIntl`). The default dialog and {@link AlertingDialogMeasure} render it with
|
|
13
|
+
* {@link useAlertingDialogMeasureProps} inside {@link AutomationDialogFormField}.
|
|
14
|
+
*
|
|
15
|
+
* @alpha
|
|
16
|
+
*/
|
|
17
|
+
export function DefaultAlertingDialogMeasure({ id, disabled, selectedMeasure, onMeasureChange, measures, overlayPositionType, closeOnParentScroll, }) {
|
|
10
18
|
const intl = useIntl();
|
|
11
19
|
const ref = useRef(null);
|
|
12
20
|
const selectedMeasureTitle = selectedMeasure
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultAlertingDialogRecipients.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogRecipients.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogRecipients.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogRecipients.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AAEpF;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,gCAAgC,2CAUtF"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
// (C) 2026 GoodData Corporation
|
|
3
3
|
import { FormattedMessage } from "react-intl";
|
|
4
4
|
import { RecipientsSelect } from "../../scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js";
|
|
5
|
-
import {
|
|
5
|
+
import { AutomationDialogFormField } from "../../shared/slots/AutomationDialogFormField.js";
|
|
6
6
|
/**
|
|
7
7
|
* Default render of the alerting dialog's recipients region: the recipients select in a form-field
|
|
8
8
|
* row; the row carries the label, so the select's own label is off. Props-driven — reads no context.
|
|
@@ -12,5 +12,5 @@ import { FormField } from "./FormField.js";
|
|
|
12
12
|
* @alpha
|
|
13
13
|
*/
|
|
14
14
|
export function DefaultAlertingDialogRecipients(props) {
|
|
15
|
-
return (_jsx(
|
|
15
|
+
return (_jsx(AutomationDialogFormField, { label: _jsx(FormattedMessage, { id: "insightAlert.config.recipients" }), htmlFor: "alert.recipients", fullWidth: true, children: _jsx(RecipientsSelect, { id: "alert.recipients", showLabel: false, ...props }) }));
|
|
16
16
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogSensitivityProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's sensitivity field: the dropdown selecting the
|
|
5
|
+
* anomaly-detection sensitivity. Props-driven — the bare control without its label; reads no
|
|
6
|
+
* dialog context (only `useIntl`). The default dialog and {@link AlertingDialogSensitivity} render
|
|
7
|
+
* it with {@link useAlertingDialogSensitivityProps} inside {@link AutomationDialogFormField}.
|
|
8
|
+
*
|
|
9
|
+
* @alpha
|
|
10
|
+
*/
|
|
11
|
+
export declare function DefaultAlertingDialogSensitivity({ id, selectedSensitivity, onSensitivityChange, overlayPositionType, closeOnParentScroll }: IAlertingDialogSensitivityProps): ReactElement;
|
|
12
|
+
//# sourceMappingURL=DefaultAlertingDialogSensitivity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogSensitivity.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogSensitivity.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAcjE,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAsBnE;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,EAC7C,EAAE,EACF,mBAA8B,EAC9B,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACtB,EAAE,+BAA+B,GAAG,YAAY,CAuEhD"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import cx from "classnames";
|
|
3
3
|
import { useIntl } from "react-intl";
|
|
4
4
|
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox, } from "@gooddata/sdk-ui-kit";
|
|
5
|
-
import { messages } from "
|
|
5
|
+
import { messages } from "./messages.js";
|
|
6
6
|
const options = [
|
|
7
7
|
{
|
|
8
8
|
title: messages.alertSensitivityLow.id,
|
|
@@ -17,7 +17,15 @@ const options = [
|
|
|
17
17
|
id: "HIGH",
|
|
18
18
|
},
|
|
19
19
|
];
|
|
20
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Default render of the alerting dialog's sensitivity field: the dropdown selecting the
|
|
22
|
+
* anomaly-detection sensitivity. Props-driven — the bare control without its label; reads no
|
|
23
|
+
* dialog context (only `useIntl`). The default dialog and {@link AlertingDialogSensitivity} render
|
|
24
|
+
* it with {@link useAlertingDialogSensitivityProps} inside {@link AutomationDialogFormField}.
|
|
25
|
+
*
|
|
26
|
+
* @alpha
|
|
27
|
+
*/
|
|
28
|
+
export function DefaultAlertingDialogSensitivity({ id, selectedSensitivity = "MEDIUM", onSensitivityChange, overlayPositionType, closeOnParentScroll, }) {
|
|
21
29
|
const selectedOption = options.find((o) => o.id === selectedSensitivity);
|
|
22
30
|
const intl = useIntl();
|
|
23
31
|
return (_jsx("div", { className: "gd-alert-sensitivity-select", children: _jsx(Dropdown, { closeOnParentScroll: closeOnParentScroll, overlayPositionType: overlayPositionType, autofocusOnOpen: true, renderButton: ({ isOpen, toggleDropdown, buttonRef, dropdownId }) => {
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogThresholdProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's threshold field: the numeric input for the threshold,
|
|
5
|
+
* with its unit suffix and validation message. Props-driven — the bare control without its label;
|
|
6
|
+
* reads no dialog context (only `useIntl`). The default dialog and {@link AlertingDialogThreshold}
|
|
7
|
+
* render it with {@link useAlertingDialogThresholdProps} inside {@link AutomationDialogFormField}.
|
|
8
|
+
*
|
|
9
|
+
* @alpha
|
|
10
|
+
*/
|
|
11
|
+
export declare function DefaultAlertingDialogThreshold({ id, value, onChange, onBlur, suffix, errorMessage }: IAlertingDialogThresholdProps): ReactElement;
|
|
12
|
+
//# sourceMappingURL=DefaultAlertingDialogThreshold.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogThreshold.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogThreshold.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAM1C,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAEjE;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,EAC3C,EAAE,EACF,KAAK,EACL,QAAQ,EACR,MAAM,EACN,MAAM,EACN,YAAY,EACf,EAAE,6BAA6B,GAAG,YAAY,CAmC9C"}
|
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useIntl } from "react-intl";
|
|
3
3
|
import { Input } from "@gooddata/sdk-ui-kit";
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Default render of the alerting dialog's threshold field: the numeric input for the threshold,
|
|
6
|
+
* with its unit suffix and validation message. Props-driven — the bare control without its label;
|
|
7
|
+
* reads no dialog context (only `useIntl`). The default dialog and {@link AlertingDialogThreshold}
|
|
8
|
+
* render it with {@link useAlertingDialogThresholdProps} inside {@link AutomationDialogFormField}.
|
|
9
|
+
*
|
|
10
|
+
* @alpha
|
|
11
|
+
*/
|
|
12
|
+
export function DefaultAlertingDialogThreshold({ id, value, onChange, onBlur, suffix, errorMessage, }) {
|
|
5
13
|
const intl = useIntl();
|
|
6
14
|
const hasError = !!errorMessage;
|
|
7
15
|
const errorId = `${id}-error`;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogTriggerIntervalProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's trigger-interval field: the dropdown selecting the
|
|
5
|
+
* interval of a once-per-interval trigger. Props-driven — the bare control without its label;
|
|
6
|
+
* reads no dialog context (only `useIntl`). The default dialog and
|
|
7
|
+
* {@link AlertingDialogTriggerInterval} render it with {@link useAlertingDialogTriggerIntervalProps}
|
|
8
|
+
* inside {@link AutomationDialogFormField}.
|
|
9
|
+
*
|
|
10
|
+
* @alpha
|
|
11
|
+
*/
|
|
12
|
+
export declare function DefaultAlertingDialogTriggerInterval({ id, selectedTriggerInterval, onTriggerIntervalChange, overlayPositionType, closeOnParentScroll }: IAlertingDialogTriggerIntervalProps): ReactElement;
|
|
13
|
+
//# sourceMappingURL=DefaultAlertingDialogTriggerInterval.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogTriggerInterval.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogTriggerInterval.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAcjE,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,aAAa,CAAC;AA8BvE;;;;;;;;GAQG;AACH,wBAAgB,oCAAoC,CAAC,EACjD,EAAE,EACF,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACtB,EAAE,mCAAmC,GAAG,YAAY,CAqEpD"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import cx from "classnames";
|
|
3
3
|
import { useIntl } from "react-intl";
|
|
4
4
|
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox, } from "@gooddata/sdk-ui-kit";
|
|
5
|
-
import { messages } from "
|
|
5
|
+
import { messages } from "./messages.js";
|
|
6
6
|
const options = [
|
|
7
7
|
{
|
|
8
8
|
title: messages.alertTriggerIntervalDay.id,
|
|
@@ -25,7 +25,16 @@ const options = [
|
|
|
25
25
|
id: "YEAR",
|
|
26
26
|
},
|
|
27
27
|
];
|
|
28
|
-
|
|
28
|
+
/**
|
|
29
|
+
* Default render of the alerting dialog's trigger-interval field: the dropdown selecting the
|
|
30
|
+
* interval of a once-per-interval trigger. Props-driven — the bare control without its label;
|
|
31
|
+
* reads no dialog context (only `useIntl`). The default dialog and
|
|
32
|
+
* {@link AlertingDialogTriggerInterval} render it with {@link useAlertingDialogTriggerIntervalProps}
|
|
33
|
+
* inside {@link AutomationDialogFormField}.
|
|
34
|
+
*
|
|
35
|
+
* @alpha
|
|
36
|
+
*/
|
|
37
|
+
export function DefaultAlertingDialogTriggerInterval({ id, selectedTriggerInterval, onTriggerIntervalChange, overlayPositionType, closeOnParentScroll, }) {
|
|
29
38
|
const selectedOption = options.find((o) => o.id === selectedTriggerInterval);
|
|
30
39
|
const intl = useIntl();
|
|
31
40
|
return (_jsx("div", { className: "gd-alert-trigger-interval-select", children: _jsx(Dropdown, { closeOnParentScroll: closeOnParentScroll, overlayPositionType: overlayPositionType, autofocusOnOpen: true, renderButton: ({ isOpen, toggleDropdown, buttonRef, dropdownId }) => {
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogTriggerModeProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Default render of the alerting dialog's trigger-mode field: the dropdown selecting when the
|
|
5
|
+
* alert fires. Props-driven — the bare control without its label; reads no dialog context (only
|
|
6
|
+
* `useIntl`). The default dialog and {@link AlertingDialogTriggerMode} render it with
|
|
7
|
+
* {@link useAlertingDialogTriggerModeProps} inside {@link AutomationDialogFormField}.
|
|
8
|
+
*
|
|
9
|
+
* @alpha
|
|
10
|
+
*/
|
|
11
|
+
export declare function DefaultAlertingDialogTriggerMode({ id, selectedTriggerMode, onTriggerModeChange, overlayPositionType, closeOnParentScroll, enableAlertOncePerInterval }: IAlertingDialogTriggerModeProps): ReactElement;
|
|
12
|
+
//# sourceMappingURL=DefaultAlertingDialogTriggerMode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultAlertingDialogTriggerMode.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialogTriggerMode.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAcjE,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAsBnE;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,EAC7C,EAAE,EACF,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC7B,EAAE,+BAA+B,GAAG,YAAY,CAsEhD"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import cx from "classnames";
|
|
3
3
|
import { useIntl } from "react-intl";
|
|
4
4
|
import { Dropdown, DropdownButton, SingleSelectListItem, UiListbox, } from "@gooddata/sdk-ui-kit";
|
|
5
|
-
import { messages } from "
|
|
5
|
+
import { messages } from "./messages.js";
|
|
6
6
|
const options = [
|
|
7
7
|
{
|
|
8
8
|
title: messages.alertTriggerModeAlways.id,
|
|
@@ -17,7 +17,15 @@ const options = [
|
|
|
17
17
|
id: "ONCE_PER_INTERVAL",
|
|
18
18
|
},
|
|
19
19
|
];
|
|
20
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Default render of the alerting dialog's trigger-mode field: the dropdown selecting when the
|
|
22
|
+
* alert fires. Props-driven — the bare control without its label; reads no dialog context (only
|
|
23
|
+
* `useIntl`). The default dialog and {@link AlertingDialogTriggerMode} render it with
|
|
24
|
+
* {@link useAlertingDialogTriggerModeProps} inside {@link AutomationDialogFormField}.
|
|
25
|
+
*
|
|
26
|
+
* @alpha
|
|
27
|
+
*/
|
|
28
|
+
export function DefaultAlertingDialogTriggerMode({ id, selectedTriggerMode, onTriggerModeChange, overlayPositionType, closeOnParentScroll, enableAlertOncePerInterval, }) {
|
|
21
29
|
const selectedOption = options.find((o) => o.id === selectedTriggerMode);
|
|
22
30
|
const intl = useIntl();
|
|
23
31
|
return (_jsx("div", { className: "gd-alert-trigger-mode-select", children: _jsx(Dropdown, { closeOnParentScroll: closeOnParentScroll, overlayPositionType: overlayPositionType, autofocusOnOpen: true, renderButton: ({ isOpen, toggleDropdown, buttonRef, dropdownId }) => {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogAttributeProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* The alerting dialog's attribute field ("For": the attribute value the condition is sliced by),
|
|
5
|
+
* connected to the dialog's state and rendered as a labelled form row.
|
|
6
|
+
*
|
|
7
|
+
* Renders {@link DefaultAlertingDialogAttribute} inside {@link AutomationDialogFormField} with the
|
|
8
|
+
* props of {@link useAlertingDialogAttributeProps}; every prop passed here replaces the hook's
|
|
9
|
+
* value for that prop wholesale. Renders nothing when the insight has no non-date attribute (there
|
|
10
|
+
* is nothing to slice by; the gate reads the `attributes` prop, so an override is honoured), and
|
|
11
|
+
* nothing while `useAlertingDialogContext().isLoading` is true.
|
|
12
|
+
*
|
|
13
|
+
* @alpha
|
|
14
|
+
*/
|
|
15
|
+
export declare function AlertingDialogAttribute(overrides: Partial<IAlertingDialogAttributeProps>): ReactElement;
|
|
16
|
+
//# sourceMappingURL=AlertingDialogAttribute.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AlertingDialogAttribute.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/blocks/AlertingDialogAttribute.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAO1C,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAIjE;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,6BAA6B,CAAC,GAAG,YAAY,CAMvG"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { FormattedMessage } from "react-intl";
|
|
3
|
+
import { AutomationDialogFormField } from "../../shared/slots/AutomationDialogFormField.js";
|
|
4
|
+
import { DefaultAlertingDialogAttribute } from "../DefaultAlertingDialog/DefaultAlertingDialogAttribute.js";
|
|
5
|
+
import { useAlertingDialogAttributeProps } from "../state/useAlertingDialogFieldProps.js";
|
|
6
|
+
import { WhenAlertingDialogLoaded } from "./WhenAlertingDialogLoaded.js";
|
|
7
|
+
/**
|
|
8
|
+
* The alerting dialog's attribute field ("For": the attribute value the condition is sliced by),
|
|
9
|
+
* connected to the dialog's state and rendered as a labelled form row.
|
|
10
|
+
*
|
|
11
|
+
* Renders {@link DefaultAlertingDialogAttribute} inside {@link AutomationDialogFormField} with the
|
|
12
|
+
* props of {@link useAlertingDialogAttributeProps}; every prop passed here replaces the hook's
|
|
13
|
+
* value for that prop wholesale. Renders nothing when the insight has no non-date attribute (there
|
|
14
|
+
* is nothing to slice by; the gate reads the `attributes` prop, so an override is honoured), and
|
|
15
|
+
* nothing while `useAlertingDialogContext().isLoading` is true.
|
|
16
|
+
*
|
|
17
|
+
* @alpha
|
|
18
|
+
*/
|
|
19
|
+
export function AlertingDialogAttribute(overrides) {
|
|
20
|
+
return (_jsx(WhenAlertingDialogLoaded, { children: _jsx(ConnectedAlertingDialogAttribute, { ...overrides }) }));
|
|
21
|
+
}
|
|
22
|
+
function ConnectedAlertingDialogAttribute(overrides) {
|
|
23
|
+
const props = { ...useAlertingDialogAttributeProps(), ...overrides };
|
|
24
|
+
if (!props.attributes.some((attribute) => attribute.type === "attribute")) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return (_jsx(AutomationDialogFormField, { label: _jsx(FormattedMessage, { id: "insightAlert.config.for" }), htmlFor: props.id, children: _jsx(DefaultAlertingDialogAttribute, { ...props }) }));
|
|
28
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogComparisonOperatorProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* The alerting dialog's condition field ("Condition": the operator — fixed threshold, change,
|
|
5
|
+
* difference or anomaly detection), connected to the dialog's state and rendered as a labelled
|
|
6
|
+
* form row.
|
|
7
|
+
*
|
|
8
|
+
* Renders {@link DefaultAlertingDialogComparisonOperator} inside {@link AutomationDialogFormField}
|
|
9
|
+
* with the props of {@link useAlertingDialogComparisonOperatorProps}; every prop passed here
|
|
10
|
+
* replaces the hook's value for that prop wholesale. Pass `enableAnomalyDetectionAlert={false}` to
|
|
11
|
+
* hide the anomaly-detection options. Renders nothing while
|
|
12
|
+
* `useAlertingDialogContext().isLoading` is true.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```tsx
|
|
16
|
+
* <AlertingDialogComparisonOperator enableAnomalyDetectionAlert={false} />
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @alpha
|
|
20
|
+
*/
|
|
21
|
+
export declare function AlertingDialogComparisonOperator(overrides: Partial<IAlertingDialogComparisonOperatorProps>): ReactElement;
|
|
22
|
+
//# sourceMappingURL=AlertingDialogComparisonOperator.d.ts.map
|
package/esm/presentation/automations/alerting/blocks/AlertingDialogComparisonOperator.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AlertingDialogComparisonOperator.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/blocks/AlertingDialogComparisonOperator.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAO1C,OAAO,EAAE,KAAK,sCAAsC,EAAE,MAAM,aAAa,CAAC;AAI1E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gCAAgC,CAC5C,SAAS,EAAE,OAAO,CAAC,sCAAsC,CAAC,GAC3D,YAAY,CAMd"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { FormattedMessage } from "react-intl";
|
|
3
|
+
import { AutomationDialogFormField } from "../../shared/slots/AutomationDialogFormField.js";
|
|
4
|
+
import { DefaultAlertingDialogComparisonOperator } from "../DefaultAlertingDialog/DefaultAlertingDialogComparisonOperator.js";
|
|
5
|
+
import { useAlertingDialogComparisonOperatorProps } from "../state/useAlertingDialogFieldProps.js";
|
|
6
|
+
import { WhenAlertingDialogLoaded } from "./WhenAlertingDialogLoaded.js";
|
|
7
|
+
/**
|
|
8
|
+
* The alerting dialog's condition field ("Condition": the operator — fixed threshold, change,
|
|
9
|
+
* difference or anomaly detection), connected to the dialog's state and rendered as a labelled
|
|
10
|
+
* form row.
|
|
11
|
+
*
|
|
12
|
+
* Renders {@link DefaultAlertingDialogComparisonOperator} inside {@link AutomationDialogFormField}
|
|
13
|
+
* with the props of {@link useAlertingDialogComparisonOperatorProps}; every prop passed here
|
|
14
|
+
* replaces the hook's value for that prop wholesale. Pass `enableAnomalyDetectionAlert={false}` to
|
|
15
|
+
* hide the anomaly-detection options. Renders nothing while
|
|
16
|
+
* `useAlertingDialogContext().isLoading` is true.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```tsx
|
|
20
|
+
* <AlertingDialogComparisonOperator enableAnomalyDetectionAlert={false} />
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @alpha
|
|
24
|
+
*/
|
|
25
|
+
export function AlertingDialogComparisonOperator(overrides) {
|
|
26
|
+
return (_jsx(WhenAlertingDialogLoaded, { children: _jsx(ConnectedAlertingDialogComparisonOperator, { ...overrides }) }));
|
|
27
|
+
}
|
|
28
|
+
function ConnectedAlertingDialogComparisonOperator(overrides) {
|
|
29
|
+
const props = { ...useAlertingDialogComparisonOperatorProps(), ...overrides };
|
|
30
|
+
return (_jsx(AutomationDialogFormField, { label: _jsx(FormattedMessage, { id: "insightAlert.config.condition" }), htmlFor: props.id, children: _jsx(DefaultAlertingDialogComparisonOperator, { ...props }) }));
|
|
31
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type ReactElement } from "react";
|
|
2
|
+
import { type IAlertingDialogComparisonPeriodProps } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* The alerting dialog's comparison-period field ("Compared to": the period a change or difference
|
|
5
|
+
* condition compares against), connected to the dialog's state and rendered as a labelled form
|
|
6
|
+
* row.
|
|
7
|
+
*
|
|
8
|
+
* Renders {@link DefaultAlertingDialogComparisonPeriod} inside {@link AutomationDialogFormField}
|
|
9
|
+
* with the props of {@link useAlertingDialogComparisonPeriodProps}; every prop passed here
|
|
10
|
+
* replaces the hook's value for that prop wholesale. Renders nothing unless the `alert` prop's
|
|
11
|
+
* condition is a change or difference (only those have a comparison period; the gate reads the
|
|
12
|
+
* prop, so an override is honoured), and nothing while `useAlertingDialogContext().isLoading` is
|
|
13
|
+
* true.
|
|
14
|
+
*
|
|
15
|
+
* @alpha
|
|
16
|
+
*/
|
|
17
|
+
export declare function AlertingDialogComparisonPeriod(overrides: Partial<IAlertingDialogComparisonPeriodProps>): ReactElement;
|
|
18
|
+
//# sourceMappingURL=AlertingDialogComparisonPeriod.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AlertingDialogComparisonPeriod.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/blocks/AlertingDialogComparisonPeriod.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAO1C,OAAO,EAAE,KAAK,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAKxE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,8BAA8B,CAC1C,SAAS,EAAE,OAAO,CAAC,oCAAoC,CAAC,GACzD,YAAY,CAMd"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { FormattedMessage } from "react-intl";
|
|
3
|
+
import { AutomationDialogFormField } from "../../shared/slots/AutomationDialogFormField.js";
|
|
4
|
+
import { DefaultAlertingDialogComparisonPeriod } from "../DefaultAlertingDialog/DefaultAlertingDialogComparisonPeriod.js";
|
|
5
|
+
import { useAlertingDialogComparisonPeriodProps } from "../state/useAlertingDialogFieldProps.js";
|
|
6
|
+
import { isChangeOrDifferenceOperator } from "../utils/guards.js";
|
|
7
|
+
import { WhenAlertingDialogLoaded } from "./WhenAlertingDialogLoaded.js";
|
|
8
|
+
/**
|
|
9
|
+
* The alerting dialog's comparison-period field ("Compared to": the period a change or difference
|
|
10
|
+
* condition compares against), connected to the dialog's state and rendered as a labelled form
|
|
11
|
+
* row.
|
|
12
|
+
*
|
|
13
|
+
* Renders {@link DefaultAlertingDialogComparisonPeriod} inside {@link AutomationDialogFormField}
|
|
14
|
+
* with the props of {@link useAlertingDialogComparisonPeriodProps}; every prop passed here
|
|
15
|
+
* replaces the hook's value for that prop wholesale. Renders nothing unless the `alert` prop's
|
|
16
|
+
* condition is a change or difference (only those have a comparison period; the gate reads the
|
|
17
|
+
* prop, so an override is honoured), and nothing while `useAlertingDialogContext().isLoading` is
|
|
18
|
+
* true.
|
|
19
|
+
*
|
|
20
|
+
* @alpha
|
|
21
|
+
*/
|
|
22
|
+
export function AlertingDialogComparisonPeriod(overrides) {
|
|
23
|
+
return (_jsx(WhenAlertingDialogLoaded, { children: _jsx(ConnectedAlertingDialogComparisonPeriod, { ...overrides }) }));
|
|
24
|
+
}
|
|
25
|
+
function ConnectedAlertingDialogComparisonPeriod(overrides) {
|
|
26
|
+
const props = { ...useAlertingDialogComparisonPeriodProps(), ...overrides };
|
|
27
|
+
if (!props.alert || !isChangeOrDifferenceOperator(props.alert.alert)) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
return (_jsx(AutomationDialogFormField, { label: _jsx(FormattedMessage, { id: "insightAlert.config.comparison" }), htmlFor: props.id, children: _jsx(DefaultAlertingDialogComparisonPeriod, { ...props }) }));
|
|
31
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type MessageDescriptor } from "react-intl";
|
|
2
|
+
/**
|
|
3
|
+
* A form-row label with a "?" tooltip after it; the Granularity and TriggerInterval blocks use it.
|
|
4
|
+
*
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export declare function AlertingDialogFieldLabelWithTooltip({ label, tooltip }: {
|
|
8
|
+
label: MessageDescriptor;
|
|
9
|
+
tooltip: MessageDescriptor;
|
|
10
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
//# sourceMappingURL=AlertingDialogFieldLabelWithTooltip.d.ts.map
|
package/esm/presentation/automations/alerting/blocks/AlertingDialogFieldLabelWithTooltip.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AlertingDialogFieldLabelWithTooltip.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/alerting/blocks/AlertingDialogFieldLabelWithTooltip.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAI/E;;;;GAIG;AACH,wBAAgB,mCAAmC,CAAC,EAChD,KAAK,EACL,OAAO,EACV,EAAE;IACC,KAAK,EAAE,iBAAiB,CAAC;IACzB,OAAO,EAAE,iBAAiB,CAAC;CAC9B,2CAuBA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// (C) 2026 GoodData Corporation
|
|
3
|
+
import { FormattedMessage, useIntl } from "react-intl";
|
|
4
|
+
import { UiIconButton, UiTooltip } from "@gooddata/sdk-ui-kit";
|
|
5
|
+
/**
|
|
6
|
+
* A form-row label with a "?" tooltip after it; the Granularity and TriggerInterval blocks use it.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
export function AlertingDialogFieldLabelWithTooltip({ label, tooltip, }) {
|
|
11
|
+
const intl = useIntl();
|
|
12
|
+
return (_jsxs("div", { className: "gd-dashboard-alerting-dialog-form-field__content-container-tooltip", children: [
|
|
13
|
+
_jsx(FormattedMessage, { ...label }), _jsx(UiTooltip, { anchor: _jsx(UiIconButton, { icon: "question", variant: "tertiary", size: "xsmall", accessibilityConfig: { ariaLabel: intl.formatMessage(label) } }), content: _jsx(FormattedMessage, { ...tooltip }), arrowPlacement: "left", optimalPlacement: true, offset: 10, width: 280, triggerBy: ["hover", "click"] })
|
|
14
|
+
] }));
|
|
15
|
+
}
|