@gooddata/sdk-ui-dashboard 11.54.0-alpha.4 → 11.54.0-alpha.6
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 +93513 -17188
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/_staging/automation/index.d.ts +6 -0
- package/esm/_staging/automation/index.d.ts.map +1 -1
- package/esm/_staging/automation/index.js +7 -0
- package/esm/index.d.ts +3 -2
- package/esm/index.d.ts.map +1 -1
- package/esm/model/DashboardTester.d.ts +150 -0
- package/esm/model/DashboardTester.d.ts.map +1 -0
- package/esm/model/DashboardTester.js +208 -0
- package/esm/model/commandHandlers/dashboard/common/parameterHydration.d.ts +7 -0
- package/esm/model/commandHandlers/dashboard/common/parameterHydration.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/parameterHydration.js +17 -1
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js +27 -1
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadAutomationTimezone.d.ts +9 -0
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadAutomationTimezone.d.ts.map +1 -0
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadAutomationTimezone.js +27 -0
- package/esm/model/commandHandlers/filterContext/filterViewHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/filterViewHandler.js +7 -7
- package/esm/model/commandHandlers/timezone/changeDashboardTimezoneOverrideHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/timezone/changeDashboardTimezoneOverrideHandler.js +2 -11
- package/esm/model/commands/timezone.d.ts +10 -2
- package/esm/model/commands/timezone.d.ts.map +1 -1
- package/esm/model/commands/timezone.js +5 -2
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogDestination.d.ts +6 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogDestination.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogDestination.js +13 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogRecipients.d.ts +7 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogRecipients.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogRecipients.js +12 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +61 -22
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/FormField.d.ts +8 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/FormField.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/FormField.js +8 -0
- package/esm/presentation/automations/alerting/types.d.ts +72 -4
- package/esm/presentation/automations/alerting/types.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +60 -15
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentSettings.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentSettings.js +2 -3
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.d.ts +1 -5
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js +2 -2
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.d.ts +0 -4
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogDestination.d.ts +6 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogDestination.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogDestination.js +10 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogRecipients.d.ts +6 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogRecipients.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogRecipients.js +8 -0
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailExportSettings.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailExportSettings.js +10 -8
- package/esm/presentation/automations/scheduledEmail/state/useScheduledExportAttachments.d.ts +2 -2
- package/esm/presentation/automations/scheduledEmail/state/useScheduledExportAttachments.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/state/useScheduledExportAttachments.js +3 -4
- package/esm/presentation/automations/scheduledEmail/types.d.ts +86 -6
- package/esm/presentation/automations/scheduledEmail/types.d.ts.map +1 -1
- package/esm/presentation/automations/shared/slots/AutomationDialogActionBar.d.ts +25 -0
- package/esm/presentation/automations/shared/slots/AutomationDialogActionBar.d.ts.map +1 -0
- package/esm/presentation/automations/shared/slots/AutomationDialogActionBar.js +22 -0
- package/esm/presentation/automations/shared/slots/types.d.ts +120 -27
- package/esm/presentation/automations/shared/slots/types.d.ts.map +1 -1
- package/esm/presentation/dashboardContexts/ExportCsvDialogContext.d.ts +1 -2
- package/esm/presentation/dashboardContexts/ExportCsvDialogContext.d.ts.map +1 -1
- package/esm/presentation/dialogs/ExportCsvDialog.d.ts +0 -1
- package/esm/presentation/dialogs/ExportCsvDialog.d.ts.map +1 -1
- package/esm/presentation/dialogs/ExportCsvDialog.js +2 -2
- package/esm/presentation/dialogs/ExportCsvDialogProvider.d.ts.map +1 -1
- package/esm/presentation/dialogs/ExportCsvDialogProvider.js +1 -1
- package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +12 -15
- package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +0 -60
- package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/en-US.localization-bundle.js +0 -60
- package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/es-419.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +10 -15
- package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +12 -17
- package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +12 -15
- package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +16 -19
- package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +16 -19
- package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +12 -15
- package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +14 -17
- package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +12 -15
- package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +14 -17
- package/esm/presentation/widget/common/useInsightExport.d.ts.map +1 -1
- package/esm/presentation/widget/common/useInsightExport.js +2 -4
- package/esm/sdk-ui-dashboard.d.ts +289 -35
- package/package.json +21 -21
- package/styles/css/main.css +369 -0
- package/styles/css/main.css.map +1 -1
- package/esm/_staging/dateFilterConfig/fixtures.d.ts +0 -10
- package/esm/_staging/dateFilterConfig/fixtures.d.ts.map +0 -1
- package/esm/_staging/dateFilterConfig/fixtures.js +0 -60
- package/esm/model/commandHandlers/filterContext/filterViewParameters.d.ts +0 -8
- package/esm/model/commandHandlers/filterContext/filterViewParameters.d.ts.map +0 -1
- package/esm/model/commandHandlers/filterContext/filterViewParameters.js +0 -9
- package/esm/plugins/customizationApis/fixtures/TestingDashboardCustomizationLogger.d.ts +0 -16
- package/esm/plugins/customizationApis/fixtures/TestingDashboardCustomizationLogger.d.ts.map +0 -1
- package/esm/plugins/customizationApis/fixtures/TestingDashboardCustomizationLogger.js +0 -30
- package/esm/presentation/automations/alerting/DefaultAlertingManagementDialog/components/AlertDropdown.d.ts +0 -3
- package/esm/presentation/automations/alerting/DefaultAlertingManagementDialog/components/AlertDropdown.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingManagementDialog/components/AlertDropdown.js +0 -46
- package/esm/presentation/automations/alerting/DefaultAlertingManagementDialog/components/PauseAlertRunner.d.ts +0 -11
- package/esm/presentation/automations/alerting/DefaultAlertingManagementDialog/components/PauseAlertRunner.d.ts.map +0 -1
- package/esm/presentation/automations/alerting/DefaultAlertingManagementDialog/components/PauseAlertRunner.js +0 -31
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.d.ts +0 -19
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.d.ts.map +0 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.js +0 -28
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.d.ts +0 -13
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.d.ts.map +0 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.js +0 -56
- package/esm/presentation/dashboard/components/DashboardMainContent.d.ts +0 -3
- package/esm/presentation/dashboard/components/DashboardMainContent.d.ts.map +0 -1
- package/esm/presentation/dashboard/components/DashboardMainContent.js +0 -39
- package/esm/presentation/dragAndDrop/draggableWidget/DraggableKpiCreatePanelItem.d.ts +0 -16
- package/esm/presentation/dragAndDrop/draggableWidget/DraggableKpiCreatePanelItem.d.ts.map +0 -1
- package/esm/presentation/dragAndDrop/draggableWidget/DraggableKpiCreatePanelItem.js +0 -17
- package/esm/presentation/dragAndDrop/draggableWidget/KpiDraggingComponent.d.ts +0 -3
- package/esm/presentation/dragAndDrop/draggableWidget/KpiDraggingComponent.d.ts.map +0 -1
- package/esm/presentation/dragAndDrop/draggableWidget/KpiDraggingComponent.js +0 -9
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/DeleteButton.d.ts +0 -6
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/DeleteButton.d.ts.map +0 -1
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/DeleteButton.js +0 -10
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/common/DropdownControls.d.ts +0 -8
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/common/DropdownControls.d.ts.map +0 -1
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/common/DropdownControls.js +0 -14
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/configuration/ConfigurationButton.d.ts +0 -6
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/configuration/ConfigurationButton.d.ts.map +0 -1
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/configuration/ConfigurationButton.js +0 -8
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormButton.d.ts +0 -8
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormButton.d.ts.map +0 -1
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormButton.js +0 -10
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormDropdown.d.ts +0 -8
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormDropdown.d.ts.map +0 -1
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormDropdown.js +0 -33
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormItem.d.ts +0 -8
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormItem.d.ts.map +0 -1
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/displayFormDropdown/DisplayFormItem.js +0 -33
- package/esm/presentation/widget/common/configuration/AttributeFilterConfiguration.d.ts +0 -7
- package/esm/presentation/widget/common/configuration/AttributeFilterConfiguration.d.ts.map +0 -1
- package/esm/presentation/widget/common/configuration/AttributeFilterConfiguration.js +0 -39
- package/esm/presentation/widget/common/useWidgetBrokenAlertsQuery.d.ts +0 -9
- package/esm/presentation/widget/common/useWidgetBrokenAlertsQuery.d.ts.map +0 -1
- package/esm/presentation/widget/common/useWidgetBrokenAlertsQuery.js +0 -26
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelector.d.ts +0 -7
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelector.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelector.js +0 -37
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorBody.d.ts +0 -8
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorBody.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorBody.js +0 -15
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorItem.d.ts +0 -7
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorItem.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorItem.js +0 -8
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorList.d.ts +0 -7
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorList.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/DrillMeasureSelector/DrillMeasureSelectorList.js +0 -5
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertTitle.d.ts +0 -12
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertTitle.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/AlertTitle.js +0 -12
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts +0 -25
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/CreateAlert.js +0 -5
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts +0 -29
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js +0 -137
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlertConfiguration.d.ts +0 -11
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlertConfiguration.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlertConfiguration.js +0 -42
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts +0 -48
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js +0 -171
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useWidgetAutomationFilters.d.ts +0 -4
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useWidgetAutomationFilters.d.ts.map +0 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useWidgetAutomationFilters.js +0 -46
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlertConfiguration.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
// (C) 2022-2026 GoodData Corporation
|
|
3
|
-
import { useState } from "react";
|
|
4
|
-
import { FormattedMessage } from "react-intl";
|
|
5
|
-
import { Bubble, BubbleHoverTrigger, Button, IconQuestionMark, } from "@gooddata/sdk-ui-kit";
|
|
6
|
-
import { useTheme } from "@gooddata/sdk-ui-theme-provider";
|
|
7
|
-
import { AlertTriggerModeSelect } from "../../../../automations/alerting/DefaultAlertingDialog/components/AlertTriggerModeSelect.js";
|
|
8
|
-
import { gdColorStateBlank } from "../../../../constants/colors.js";
|
|
9
|
-
const TOOLTIP_ALIGN_POINTS = [
|
|
10
|
-
{ align: "cr cl", offset: { x: 0, y: -1 } },
|
|
11
|
-
{ align: "cl cr", offset: { x: 0, y: -1 } },
|
|
12
|
-
];
|
|
13
|
-
export function EditAlertConfiguration({ alert, onCancel, onUpdate, overlayPositionType, }) {
|
|
14
|
-
const [updatedAlert, setUpdatedAlert] = useState(alert);
|
|
15
|
-
const canSubmit = updatedAlert.alert?.trigger.mode !== alert.alert?.trigger.mode;
|
|
16
|
-
const theme = useTheme();
|
|
17
|
-
const accessibilityValue = "alert.configuration.trigger";
|
|
18
|
-
return (_jsxs("div", { className: "gd-edit-alert-configuration", children: [
|
|
19
|
-
_jsxs("div", { className: "gd-edit-alert-configuration__form", children: [
|
|
20
|
-
_jsxs("label", { htmlFor: accessibilityValue, className: "gd-edit-alert-configuration__trigger-label", children: [
|
|
21
|
-
_jsx(FormattedMessage, { id: "insightAlert.config.trigger" }), _jsxs(BubbleHoverTrigger, { children: [
|
|
22
|
-
_jsx(IconQuestionMark, { className: "gd-edit-alert-configuration__trigger-label-icon", color: theme?.palette?.complementary?.c6 ?? gdColorStateBlank, width: 14, height: 14 }), _jsx(Bubble, { alignPoints: TOOLTIP_ALIGN_POINTS, children: _jsx(FormattedMessage, { id: "insightAlert.config.trigger.tooltip" }) })
|
|
23
|
-
] })
|
|
24
|
-
] }), _jsx("div", { className: "gd-edit-alert-configuration__trigger-select", children: _jsx(AlertTriggerModeSelect, { id: accessibilityValue, selectedTriggerMode: updatedAlert.alert?.trigger.mode ?? "ALWAYS", onTriggerModeChange: (triggerMode) => {
|
|
25
|
-
setUpdatedAlert({
|
|
26
|
-
...updatedAlert,
|
|
27
|
-
alert: {
|
|
28
|
-
...updatedAlert.alert,
|
|
29
|
-
trigger: {
|
|
30
|
-
...updatedAlert.alert.trigger,
|
|
31
|
-
mode: triggerMode,
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
}, overlayPositionType: overlayPositionType }) })
|
|
36
|
-
] }), _jsx("div", { className: "gd-edit-alert-configuration__buttons", children: _jsxs("div", { children: [
|
|
37
|
-
_jsx(Button, { variant: "secondary", size: "small", onClick: () => {
|
|
38
|
-
onCancel();
|
|
39
|
-
}, children: _jsx(FormattedMessage, { id: "cancel" }) }), _jsx(Button, { intent: "action", size: "small", disabled: !canSubmit, onClick: () => onUpdate(updatedAlert), children: _jsx(FormattedMessage, { id: "save" }) })
|
|
40
|
-
] }) })
|
|
41
|
-
] }));
|
|
42
|
-
}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { type DateAttributeGranularity, type IAlertAnomalyDetectionGranularity, type IAlertAnomalyDetectionSensitivity, type IAlertComparisonOperator, type IAlertRelativeArithmeticOperator, type IAlertRelativeOperator, type IAutomationMetadataObject, type IAutomationMetadataObjectDefinition, type IAutomationRecipient, type ICatalogAttribute, type ICatalogDateDataset, type INotificationChannelIdentifier, type INotificationChannelMetadataObject, type ISeparators } from "@gooddata/sdk-model";
|
|
2
|
-
import { type IMeasureFormatMap } from "../../../../../automations/alerting/DefaultAlertingDialog/utils/getters.js";
|
|
3
|
-
import { type AlertAttribute, type AlertMetric, type AlertMetricComparatorType } from "../../../../../automations/alerting/types.js";
|
|
4
|
-
export interface IUseEditAlertProps {
|
|
5
|
-
metrics: AlertMetric[];
|
|
6
|
-
attributes: AlertAttribute[];
|
|
7
|
-
alert: IAutomationMetadataObject;
|
|
8
|
-
measureFormatMap: IMeasureFormatMap;
|
|
9
|
-
catalogAttributes: ICatalogAttribute[];
|
|
10
|
-
catalogDateDatasets: ICatalogDateDataset[];
|
|
11
|
-
destinations: INotificationChannelIdentifier[] | INotificationChannelMetadataObject[];
|
|
12
|
-
separators?: ISeparators;
|
|
13
|
-
onCreate?: (alert: IAutomationMetadataObjectDefinition) => void;
|
|
14
|
-
onUpdate?: (alert: IAutomationMetadataObject) => void;
|
|
15
|
-
}
|
|
16
|
-
export declare const useEditAlert: ({ metrics, attributes, alert, onCreate, onUpdate, measureFormatMap, destinations, separators, }: IUseEditAlertProps) => {
|
|
17
|
-
defaultUser: IAutomationRecipient;
|
|
18
|
-
viewMode: "configuration" | "edit";
|
|
19
|
-
updatedAlert: IAutomationMetadataObject;
|
|
20
|
-
canSubmit: boolean | undefined;
|
|
21
|
-
allowOnlyLoggedUserRecipients: boolean;
|
|
22
|
-
allowExternalRecipients: boolean;
|
|
23
|
-
warningMessage: string | undefined;
|
|
24
|
-
allowHourlyRecurrence: boolean;
|
|
25
|
-
enableAnomalyDetectionAlert: boolean;
|
|
26
|
-
changeComparisonOperator: (measure: AlertMetric, comparisonOperator: IAlertComparisonOperator) => void;
|
|
27
|
-
changeAnomalyDetection: (measure: AlertMetric) => void;
|
|
28
|
-
changeRelativeOperator: (measure: AlertMetric, relativeOperator: IAlertRelativeOperator, arithmeticOperator: IAlertRelativeArithmeticOperator) => void;
|
|
29
|
-
changeMeasure: (measure: AlertMetric) => void;
|
|
30
|
-
changeAttribute: (attribute: AlertAttribute | undefined, value: {
|
|
31
|
-
title: string;
|
|
32
|
-
value: string;
|
|
33
|
-
name: string;
|
|
34
|
-
} | undefined) => void;
|
|
35
|
-
changeValue: (value: number) => void;
|
|
36
|
-
changeTitle: (value: string | undefined) => void;
|
|
37
|
-
changeDestination: (destinationId: string) => void;
|
|
38
|
-
changeComparisonType: (measure: AlertMetric | undefined, relativeOperator: [IAlertRelativeOperator, IAlertRelativeArithmeticOperator] | undefined, comparisonType: AlertMetricComparatorType, granularity?: DateAttributeGranularity | undefined) => void;
|
|
39
|
-
changeRecipients: (recipients: IAutomationRecipient[]) => void;
|
|
40
|
-
changeSensitivity: (value: IAlertAnomalyDetectionSensitivity) => void;
|
|
41
|
-
changeGranularity: (measure: AlertMetric | undefined, value: IAlertAnomalyDetectionGranularity) => void;
|
|
42
|
-
configureAlert: () => void;
|
|
43
|
-
saveAlertConfiguration: (alert: IAutomationMetadataObject) => void;
|
|
44
|
-
cancelAlertConfiguration: () => void;
|
|
45
|
-
createAlert: () => void;
|
|
46
|
-
updateAlert: () => void;
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=useEditAlert.d.ts.map
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useEditAlert.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.ts"],"names":[],"mappings":"AAOA,OAAO,EACH,KAAK,wBAAwB,EAC7B,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,wBAAwB,EAC7B,KAAK,gCAAgC,EACrC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,mCAAmC,EACxC,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,8BAA8B,EACnC,KAAK,kCAAkC,EACvC,KAAK,WAAW,EAInB,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EACH,KAAK,iBAAiB,EAEzB,MAAM,4EAA4E,CAAC;AAiBpF,OAAO,EACH,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,yBAAyB,EACjC,MAAM,8CAA8C,CAAC;AAMtD,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,KAAK,EAAE,yBAAyB,CAAC;IACjC,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,mBAAmB,EAAE,mBAAmB,EAAE,CAAC;IAC3C,YAAY,EAAE,8BAA8B,EAAE,GAAG,kCAAkC,EAAE,CAAC;IACtF,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoRxB,CAAC"}
|
package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useEditAlert.js
DELETED
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
// (C) 2022-2026 GoodData Corporation
|
|
2
|
-
import { useCallback, useState } from "react";
|
|
3
|
-
import { isEqual } from "lodash-es";
|
|
4
|
-
import { useIntl } from "react-intl";
|
|
5
|
-
import { isAutomationExternalUserRecipient, isAutomationUnknownUserRecipient, isAutomationUserRecipient, } from "@gooddata/sdk-model";
|
|
6
|
-
import { useDashboardSelector } from "../../../../../../model/react/DashboardStoreProvider.js";
|
|
7
|
-
import { selectEnableAnomalyDetectionAlert, selectTimezone, selectWeekStart, } from "../../../../../../model/store/config/configSelectors.js";
|
|
8
|
-
import { selectEntitlementMinimumRecurrenceMinutes } from "../../../../../../model/store/entitlements/entitlementsSelectors.js";
|
|
9
|
-
import { selectEffectiveDashboardTimezone } from "../../../../../../model/store/meta/metaSelectors.js";
|
|
10
|
-
import { selectCanUseAiAssistant } from "../../../../../../model/store/permissions/permissionsSelectors.js";
|
|
11
|
-
import { selectCurrentUser } from "../../../../../../model/store/user/userSelectors.js";
|
|
12
|
-
import { getDescription, } from "../../../../../automations/alerting/DefaultAlertingDialog/utils/getters.js";
|
|
13
|
-
import { isAlertRecipientsValid, isAlertValueDefined, } from "../../../../../automations/alerting/DefaultAlertingDialog/utils/guards.js";
|
|
14
|
-
import { transformAlertByAnomalyDetection, transformAlertByAttribute, transformAlertByComparisonOperator, transformAlertByDestination, transformAlertByGranularity, transformAlertByMetric, transformAlertByRelativeOperator, transformAlertBySensitivity, transformAlertByTitle, transformAlertByValue, } from "../../../../../automations/alerting/DefaultAlertingDialog/utils/transformation.js";
|
|
15
|
-
import { isEmail } from "../../../../../automations/scheduledEmail/utils/validate.js";
|
|
16
|
-
import { convertUserToAutomationRecipient } from "../../../../../automations/shared/utils/automationUtils.js";
|
|
17
|
-
const DEFAULT_MIN_RECURRENCE_MINUTES = "60";
|
|
18
|
-
export const useEditAlert = ({ metrics, attributes, alert, onCreate, onUpdate, measureFormatMap, destinations, separators, }) => {
|
|
19
|
-
const [viewMode, setViewMode] = useState("edit");
|
|
20
|
-
const [updatedAlert, setUpdatedAlert] = useState(alert);
|
|
21
|
-
const [warningMessage, setWarningMessage] = useState(undefined);
|
|
22
|
-
const currentUser = useDashboardSelector(selectCurrentUser);
|
|
23
|
-
const enableAnomalyDetectionAlert = useDashboardSelector(selectEnableAnomalyDetectionAlert);
|
|
24
|
-
const enableAiAssistant = useDashboardSelector(selectCanUseAiAssistant);
|
|
25
|
-
const weekStart = useDashboardSelector(selectWeekStart);
|
|
26
|
-
// the custom dashboard timezone (view-mode override or dashboard configuration) wins over
|
|
27
|
-
// the workspace setting for the alert comparison-window computation
|
|
28
|
-
const workspaceTimezone = useDashboardSelector(selectTimezone);
|
|
29
|
-
const customTimezone = useDashboardSelector(selectEffectiveDashboardTimezone);
|
|
30
|
-
const timezone = customTimezone ?? workspaceTimezone;
|
|
31
|
-
const intl = useIntl();
|
|
32
|
-
const minimumRecurrenceMinutesEntitlement = useDashboardSelector(selectEntitlementMinimumRecurrenceMinutes);
|
|
33
|
-
const allowHourlyRecurrence = parseInt(minimumRecurrenceMinutesEntitlement?.value ?? DEFAULT_MIN_RECURRENCE_MINUTES, 10) === 60;
|
|
34
|
-
const selectedDestination = destinations.find((destination) => destination.id === updatedAlert.notificationChannel);
|
|
35
|
-
const defaultUser = convertUserToAutomationRecipient(currentUser);
|
|
36
|
-
const allowExternalRecipients = selectedDestination?.allowedRecipients === "external";
|
|
37
|
-
const allowOnlyLoggedUserRecipients = selectedDestination?.allowedRecipients === "creator";
|
|
38
|
-
const changeMeasure = useCallback((measure) => {
|
|
39
|
-
setUpdatedAlert((alert) => transformAlertByMetric(metrics, alert, measure, measureFormatMap, weekStart, timezone));
|
|
40
|
-
}, [measureFormatMap, metrics, weekStart, timezone]);
|
|
41
|
-
const changeAttribute = useCallback((attribute, value) => {
|
|
42
|
-
setUpdatedAlert((alert) => transformAlertByAttribute(attributes, alert, attribute, value));
|
|
43
|
-
}, [attributes]);
|
|
44
|
-
const changeComparisonOperator = useCallback((measure, comparisonOperator) => {
|
|
45
|
-
setUpdatedAlert((alert) => transformAlertByComparisonOperator(metrics, alert, measure, comparisonOperator));
|
|
46
|
-
}, [metrics]);
|
|
47
|
-
const changeAnomalyDetection = useCallback((measure) => {
|
|
48
|
-
setUpdatedAlert((alert) => transformAlertByAnomalyDetection(metrics, alert, measure, weekStart, timezone));
|
|
49
|
-
}, [metrics, weekStart, timezone]);
|
|
50
|
-
const changeRelativeOperator = useCallback((measure, relativeOperator, arithmeticOperator) => {
|
|
51
|
-
setUpdatedAlert((alert) => transformAlertByRelativeOperator(metrics, alert, measure, relativeOperator, arithmeticOperator, measureFormatMap));
|
|
52
|
-
}, [measureFormatMap, metrics]);
|
|
53
|
-
const changeValue = useCallback((value) => {
|
|
54
|
-
setUpdatedAlert((alert) => transformAlertByValue(alert, value));
|
|
55
|
-
}, []);
|
|
56
|
-
const changeTitle = useCallback((value) => {
|
|
57
|
-
setUpdatedAlert((alert) => transformAlertByTitle(alert, value));
|
|
58
|
-
}, []);
|
|
59
|
-
const changeSensitivity = useCallback((value) => {
|
|
60
|
-
setUpdatedAlert((alert) => transformAlertBySensitivity(alert, value));
|
|
61
|
-
}, []);
|
|
62
|
-
const changeGranularity = useCallback((measure, value) => {
|
|
63
|
-
if (!measure) {
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
setUpdatedAlert((alert) => transformAlertByGranularity(metrics, alert, measure, value, weekStart));
|
|
67
|
-
}, [metrics, weekStart]);
|
|
68
|
-
const changeDestination = useCallback((destinationId) => {
|
|
69
|
-
const previousDestination = destinations.find((channel) => alert.notificationChannel === channel.id);
|
|
70
|
-
const selectedDestination = destinations.find((channel) => destinationId === channel.id);
|
|
71
|
-
/**
|
|
72
|
-
* When allowed recipients are changed from "ALL" to "CREATOR", show warning message
|
|
73
|
-
*/
|
|
74
|
-
const showWarningMessage = selectedDestination?.allowedRecipients === "creator" &&
|
|
75
|
-
previousDestination?.allowedRecipients !== "creator";
|
|
76
|
-
setWarningMessage(showWarningMessage
|
|
77
|
-
? intl.formatMessage({ id: "insightAlert.config.warning.destination" })
|
|
78
|
-
: undefined);
|
|
79
|
-
/**
|
|
80
|
-
* Reset recipients when new notification channel only allows the author/creator
|
|
81
|
-
*/
|
|
82
|
-
const updatedRecipients = selectedDestination?.allowedRecipients === "creator"
|
|
83
|
-
? [convertUserToAutomationRecipient(currentUser)]
|
|
84
|
-
: undefined;
|
|
85
|
-
setUpdatedAlert((alert) => transformAlertByDestination(alert, destinationId, updatedRecipients));
|
|
86
|
-
}, [alert.notificationChannel, currentUser, destinations, intl]);
|
|
87
|
-
const changeComparisonType = useCallback((measure, relativeOperator, comparisonType, granularity) => {
|
|
88
|
-
if (!measure || !relativeOperator || !relativeOperator) {
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
const [relativeOperatorValue, arithmeticOperator] = relativeOperator;
|
|
92
|
-
setUpdatedAlert((alert) => transformAlertByRelativeOperator(metrics, alert, measure, relativeOperatorValue, arithmeticOperator, measureFormatMap, comparisonType, granularity));
|
|
93
|
-
}, [measureFormatMap, metrics]);
|
|
94
|
-
const changeRecipients = useCallback((recipients) => {
|
|
95
|
-
setUpdatedAlert((alert) => ({
|
|
96
|
-
...alert,
|
|
97
|
-
recipients,
|
|
98
|
-
}));
|
|
99
|
-
}, []);
|
|
100
|
-
const configureAlert = useCallback(() => {
|
|
101
|
-
setViewMode("configuration");
|
|
102
|
-
}, []);
|
|
103
|
-
const cancelAlertConfiguration = useCallback(() => {
|
|
104
|
-
setViewMode("edit");
|
|
105
|
-
}, []);
|
|
106
|
-
const saveAlertConfiguration = useCallback((alert) => {
|
|
107
|
-
setUpdatedAlert(alert);
|
|
108
|
-
cancelAlertConfiguration();
|
|
109
|
-
}, [cancelAlertConfiguration]);
|
|
110
|
-
const createAlert = useCallback(() => {
|
|
111
|
-
const title = updatedAlert.title || getDescription(intl, metrics, updatedAlert, separators);
|
|
112
|
-
onCreate?.({
|
|
113
|
-
...updatedAlert,
|
|
114
|
-
title,
|
|
115
|
-
});
|
|
116
|
-
}, [intl, metrics, onCreate, separators, updatedAlert]);
|
|
117
|
-
const updateAlert = useCallback(() => {
|
|
118
|
-
const title = updatedAlert.title || getDescription(intl, metrics, updatedAlert, separators);
|
|
119
|
-
onUpdate?.({
|
|
120
|
-
...updatedAlert,
|
|
121
|
-
title,
|
|
122
|
-
});
|
|
123
|
-
}, [intl, metrics, onUpdate, separators, updatedAlert]);
|
|
124
|
-
const isValueDefined = isAlertValueDefined(updatedAlert.alert);
|
|
125
|
-
const isRecipientsValid = isAlertRecipientsValid(updatedAlert);
|
|
126
|
-
const isExternalRecipientsValid = allowExternalRecipients
|
|
127
|
-
? true
|
|
128
|
-
: !updatedAlert.recipients?.some(isAutomationExternalUserRecipient);
|
|
129
|
-
const hasNoUnknownRecipients = !updatedAlert.recipients?.some(isAutomationUnknownUserRecipient);
|
|
130
|
-
const isAlertChanged = !isEqual(updatedAlert, alert);
|
|
131
|
-
const areEmailsValid = selectedDestination?.destinationType === "smtp"
|
|
132
|
-
? updatedAlert.recipients?.every((v) => isAutomationUserRecipient(v) ? isEmail(v.email ?? "") : true)
|
|
133
|
-
: true;
|
|
134
|
-
const canSubmit = isValueDefined &&
|
|
135
|
-
isAlertChanged &&
|
|
136
|
-
isRecipientsValid &&
|
|
137
|
-
areEmailsValid &&
|
|
138
|
-
isExternalRecipientsValid &&
|
|
139
|
-
hasNoUnknownRecipients;
|
|
140
|
-
return {
|
|
141
|
-
defaultUser,
|
|
142
|
-
viewMode,
|
|
143
|
-
updatedAlert,
|
|
144
|
-
canSubmit,
|
|
145
|
-
allowOnlyLoggedUserRecipients,
|
|
146
|
-
allowExternalRecipients,
|
|
147
|
-
warningMessage,
|
|
148
|
-
allowHourlyRecurrence,
|
|
149
|
-
enableAnomalyDetectionAlert: enableAnomalyDetectionAlert && enableAiAssistant,
|
|
150
|
-
//
|
|
151
|
-
changeComparisonOperator,
|
|
152
|
-
changeAnomalyDetection,
|
|
153
|
-
changeRelativeOperator,
|
|
154
|
-
changeMeasure,
|
|
155
|
-
changeAttribute,
|
|
156
|
-
changeValue,
|
|
157
|
-
changeTitle,
|
|
158
|
-
changeDestination,
|
|
159
|
-
changeComparisonType,
|
|
160
|
-
changeRecipients,
|
|
161
|
-
changeSensitivity,
|
|
162
|
-
changeGranularity,
|
|
163
|
-
//
|
|
164
|
-
configureAlert,
|
|
165
|
-
saveAlertConfiguration,
|
|
166
|
-
cancelAlertConfiguration,
|
|
167
|
-
//
|
|
168
|
-
createAlert,
|
|
169
|
-
updateAlert,
|
|
170
|
-
};
|
|
171
|
-
};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { type IFilter, type IInsightDefinition } from "@gooddata/sdk-model";
|
|
2
|
-
import { type FilterableDashboardWidget } from "../../../../../../model/types/layoutTypes.js";
|
|
3
|
-
export declare function useWidgetAutomationFilters(widget?: FilterableDashboardWidget, insight?: IInsightDefinition): import("../../../../../../index.js").QueryProcessingState<IFilter[]>;
|
|
4
|
-
//# sourceMappingURL=useWidgetAutomationFilters.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useWidgetAutomationFilters.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useWidgetAutomationFilters.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,kBAAkB,EAK1B,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AAE9F,wBAAgB,0BAA0B,CAAC,MAAM,CAAC,EAAE,yBAAyB,EAAE,OAAO,CAAC,EAAE,kBAAkB,wEAmB1G"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
// (C) 2026 GoodData Corporation
|
|
2
|
-
import { useMemo } from "react";
|
|
3
|
-
import { filterIsEmpty, filterLocalIdentifier, isAttributeFilter, isNoopAllTimeDateFilter, } from "@gooddata/sdk-model";
|
|
4
|
-
import { useDashboardSelector } from "../../../../../../model/react/DashboardStoreProvider.js";
|
|
5
|
-
import { useWidgetFilters } from "../../../../../../model/react/useWidgetFilters.js";
|
|
6
|
-
import { selectCrossFilteringItems } from "../../../../../../model/store/drill/drillSelectors.js";
|
|
7
|
-
export function useWidgetAutomationFilters(widget, insight) {
|
|
8
|
-
const widgetFiltersQuery = useWidgetFilters(widget, insight);
|
|
9
|
-
const crossFilteringItems = useDashboardSelector(selectCrossFilteringItems);
|
|
10
|
-
return useMemo(() => {
|
|
11
|
-
const { result: widgetFilters, status: widgetFiltersStatus } = widgetFiltersQuery;
|
|
12
|
-
const sanitizedWidgetFilters = widgetFilters
|
|
13
|
-
? sanitizeWidgetFilters(widgetFilters, crossFilteringItems)
|
|
14
|
-
: undefined;
|
|
15
|
-
if (widgetFiltersStatus === "success" && sanitizedWidgetFilters) {
|
|
16
|
-
return {
|
|
17
|
-
...widgetFiltersQuery,
|
|
18
|
-
result: sanitizedWidgetFilters,
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
return widgetFiltersQuery;
|
|
22
|
-
}, [crossFilteringItems, widgetFiltersQuery]);
|
|
23
|
-
}
|
|
24
|
-
function sanitizeWidgetFilters(filters, crossFilteringItems) {
|
|
25
|
-
const withoutCrossFiltering = removeCrossFilteringFilters(filters, crossFilteringItems);
|
|
26
|
-
const withoutAllTimeDateFilters = removeAllTimeDateFilters(withoutCrossFiltering);
|
|
27
|
-
return removeEmptyAttributeFilters(withoutAllTimeDateFilters);
|
|
28
|
-
}
|
|
29
|
-
function removeCrossFilteringFilters(filters, crossFilteringItems) {
|
|
30
|
-
const crossFilteringFilterLocalIdentifiers = new Set(crossFilteringItems.flatMap((c) => c.filterLocalIdentifiers));
|
|
31
|
-
return filters.filter((filter) => {
|
|
32
|
-
const filterLocalId = filterLocalIdentifier(filter);
|
|
33
|
-
return filterLocalId ? !crossFilteringFilterLocalIdentifiers.has(filterLocalId) : true;
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
function removeEmptyAttributeFilters(filters) {
|
|
37
|
-
return filters.filter((filter) => {
|
|
38
|
-
if (isAttributeFilter(filter)) {
|
|
39
|
-
return !filterIsEmpty(filter);
|
|
40
|
-
}
|
|
41
|
-
return true;
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
function removeAllTimeDateFilters(filters) {
|
|
45
|
-
return filters.filter((filter) => !isNoopAllTimeDateFilter(filter));
|
|
46
|
-
}
|