@gooddata/sdk-ui-dashboard 11.55.0-alpha.2 → 11.55.0-alpha.4
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 +9 -9
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/_staging/automation/index.d.ts +19 -1
- package/esm/_staging/automation/index.d.ts.map +1 -1
- package/esm/_staging/automation/index.js +44 -8
- package/esm/_staging/dashboard/dashboardFilterConverter.d.ts +1 -18
- package/esm/_staging/dashboard/dashboardFilterConverter.d.ts.map +1 -1
- package/esm/_staging/dashboard/dashboardFilterConverter.js +1 -62
- package/esm/_staging/insight/insightWidgetProperties.d.ts +6 -0
- package/esm/_staging/insight/insightWidgetProperties.d.ts.map +1 -0
- package/esm/_staging/insight/insightWidgetProperties.js +32 -0
- package/esm/_staging/sharedHooks/useRichTextFilters.d.ts.map +1 -1
- package/esm/_staging/sharedHooks/useRichTextFilters.js +1 -2
- package/esm/index.d.ts +25 -7
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +22 -4
- package/esm/internal.d.ts +3 -3
- package/esm/internal.d.ts.map +1 -1
- package/esm/internal.js +3 -3
- package/esm/kdaDialog/dialog/hooks/useChangeAnalysis.d.ts.map +1 -1
- package/esm/kdaDialog/dialog/hooks/useChangeAnalysis.js +1 -2
- package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.d.ts.map +1 -1
- package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.js +1 -2
- package/esm/model/commandHandlers/drill/drillToDashboardHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/drill/drillToDashboardHandler.js +1 -2
- package/esm/model/commandHandlers/scheduledEmail/automationParametersRestore.d.ts +11 -5
- package/esm/model/commandHandlers/scheduledEmail/automationParametersRestore.d.ts.map +1 -1
- package/esm/model/commandHandlers/scheduledEmail/automationParametersRestore.js +24 -7
- package/esm/model/commandHandlers/scheduledEmail/csvRawExecutionDefinition.d.ts.map +1 -1
- package/esm/model/commandHandlers/scheduledEmail/csvRawExecutionDefinition.js +1 -2
- package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.js +5 -0
- package/esm/model/commandHandlers/widgets/exportInsightWidgetHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/exportInsightWidgetHandler.js +21 -3
- package/esm/model/commandHandlers/widgets/exportRawInsightWidgetHandler.js +1 -2
- package/esm/model/commands/filters.d.ts +1 -1
- package/esm/model/commands/filters.js +1 -1
- package/esm/model/events/filters.d.ts +6 -6
- package/esm/model/store/tabs/layout/layoutSelectors.d.ts.map +1 -1
- package/esm/model/store/tabs/layout/layoutSelectors.js +1 -2
- package/esm/model/store/tabs/parameters/parametersHelpers.d.ts +10 -22
- package/esm/model/store/tabs/parameters/parametersHelpers.d.ts.map +1 -1
- package/esm/model/store/tabs/parameters/parametersHelpers.js +13 -42
- package/esm/model/store/tabs/parameters/parametersSelectors.d.ts +8 -10
- package/esm/model/store/tabs/parameters/parametersSelectors.d.ts.map +1 -1
- package/esm/model/store/tabs/parameters/parametersSelectors.js +22 -32
- package/esm/presentation/automations/alerting/AlertingManagementDialog.d.ts +4 -0
- package/esm/presentation/automations/alerting/AlertingManagementDialog.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/AlertingManagementDialog.js +6 -2
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts +16 -16
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +34 -109
- package/esm/presentation/automations/alerting/blocks/AlertingDialogFormFieldGroup.d.ts +10 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogFormFieldGroup.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogFormFieldGroup.js +12 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogShell.d.ts +49 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogShell.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/blocks/AlertingDialogShell.js +128 -0
- package/esm/presentation/automations/alerting/blocks/DefaultLoadingAlertingDialog.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/types.d.ts +109 -0
- package/esm/presentation/automations/alerting/types.d.ts.map +1 -1
- package/esm/presentation/automations/connectors/AlertingConnector.d.ts +3 -3
- package/esm/presentation/automations/connectors/AlertingConnector.d.ts.map +1 -1
- package/esm/presentation/automations/connectors/AlertingConnector.js +6 -4
- package/esm/presentation/automations/connectors/ScheduledEmailConnector.d.ts +3 -3
- package/esm/presentation/automations/connectors/ScheduledEmailConnector.d.ts.map +1 -1
- package/esm/presentation/automations/connectors/ScheduledEmailConnector.js +6 -4
- package/esm/presentation/automations/connectors/hooks/useBuildAlertingManagementDialogContext.d.ts.map +1 -1
- package/esm/presentation/automations/connectors/hooks/useBuildAlertingManagementDialogContext.js +7 -0
- package/esm/presentation/automations/contexts/AlertingManagementDialogContext.d.ts +22 -0
- package/esm/presentation/automations/contexts/AlertingManagementDialogContext.d.ts.map +1 -1
- package/esm/presentation/automations/contexts/AlertingManagementDialogContext.js +10 -0
- package/esm/presentation/automations/contexts/AutomationsContext.d.ts +10 -0
- package/esm/presentation/automations/contexts/AutomationsContext.d.ts.map +1 -1
- package/esm/presentation/automations/contexts/AutomationsContext.js +10 -0
- package/esm/presentation/automations/contexts/ScheduledEmailManagementDialogContext.d.ts +10 -0
- package/esm/presentation/automations/contexts/ScheduledEmailManagementDialogContext.d.ts.map +1 -1
- package/esm/presentation/automations/contexts/ScheduledEmailManagementDialogContext.js +10 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts +15 -10
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +45 -198
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts +2 -18
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts +2 -23
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogDashboardAttachments.d.ts +11 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogDashboardAttachments.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogDashboardAttachments.js +12 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogEvaluationMode.d.ts +11 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogEvaluationMode.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogEvaluationMode.js +12 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogMessage.d.ts +11 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogMessage.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogMessage.js +12 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogRecurrence.d.ts +11 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogRecurrence.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogRecurrence.js +12 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogSubject.d.ts +11 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogSubject.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogSubject.js +12 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogWidgetAttachments.d.ts +11 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogWidgetAttachments.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/DefaultScheduledEmailDialogWidgetAttachments.js +12 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/EvaluationModeCheckbox/EvaluationModeCheckbox.d.ts +2 -17
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/EvaluationModeCheckbox/EvaluationModeCheckbox.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/EvaluationModeCheckbox/EvaluationModeCheckbox.js +0 -3
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/MessageForm/MessageForm.d.ts +2 -6
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/MessageForm/MessageForm.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/SubjectForm/SubjectForm.d.ts +2 -10
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/SubjectForm/SubjectForm.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/ScheduledEmailManagementDialog.d.ts +4 -0
- package/esm/presentation/automations/scheduledEmail/ScheduledEmailManagementDialog.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/ScheduledEmailManagementDialog.js +6 -2
- package/esm/presentation/automations/scheduledEmail/blocks/DefaultLoadingScheduledEmailDialog.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogDashboardAttachments.d.ts +16 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogDashboardAttachments.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogDashboardAttachments.js +28 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogEvaluationMode.d.ts +16 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogEvaluationMode.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogEvaluationMode.js +28 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogMessage.d.ts +15 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogMessage.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogMessage.js +27 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogRecurrence.d.ts +16 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogRecurrence.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogRecurrence.js +24 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogShell.d.ts +59 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogShell.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogShell.js +195 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogSubject.d.ts +16 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogSubject.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogSubject.js +29 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogWidgetAttachments.d.ts +16 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogWidgetAttachments.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/blocks/ScheduledEmailDialogWidgetAttachments.js +28 -0
- package/esm/presentation/automations/scheduledEmail/state/useIsInPlatformChannel.d.ts +6 -0
- package/esm/presentation/automations/scheduledEmail/state/useIsInPlatformChannel.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/state/useIsInPlatformChannel.js +13 -0
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailDialogFieldProps.d.ts +73 -0
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailDialogFieldProps.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailDialogFieldProps.js +168 -0
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailSubmitOnEnter.d.ts +30 -0
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailSubmitOnEnter.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailSubmitOnEnter.js +26 -0
- package/esm/presentation/automations/scheduledEmail/types.d.ts +351 -1
- package/esm/presentation/automations/scheduledEmail/types.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/automationParameters.d.ts +8 -4
- package/esm/presentation/automations/shared/automationFilters/automationParameters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/automationParameters.js +30 -13
- package/esm/presentation/automations/shared/automationFilters/components/AutomationParameter.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/components/AutomationParameter.js +1 -4
- package/esm/presentation/automations/shared/automationFilters/hooks/useValidateExistingAutomationFilters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/hooks/useValidateExistingAutomationFilters.js +12 -7
- package/esm/presentation/automations/shared/automationFilters/useAutomationAlertParameters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/useAutomationAlertParameters.js +3 -1
- package/esm/presentation/automations/shared/filters/conversions.d.ts.map +1 -1
- package/esm/presentation/automations/shared/filters/conversions.js +1 -2
- package/esm/presentation/automations/shared/hooks/useWorkspaceUsersSearch.d.ts +51 -0
- package/esm/presentation/automations/shared/hooks/useWorkspaceUsersSearch.d.ts.map +1 -0
- package/esm/presentation/automations/{scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect → shared/hooks}/useWorkspaceUsersSearch.js +13 -0
- package/esm/presentation/dashboard/components/DashboardRenderer.d.ts.map +1 -1
- package/esm/presentation/dashboard/components/DashboardRenderer.js +4 -1
- package/esm/presentation/dashboard/components/DashboardScreenSizeContext.js +1 -1
- package/esm/presentation/dashboard/types.d.ts +32 -2
- package/esm/presentation/dashboard/types.d.ts.map +1 -1
- package/esm/presentation/dashboardContexts/DashboardComponentsContext.d.ts +6 -2
- package/esm/presentation/dashboardContexts/DashboardComponentsContext.d.ts.map +1 -1
- package/esm/presentation/dashboardContexts/DashboardComponentsContext.js +3 -0
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.d.ts.map +1 -1
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.js +1 -2
- package/esm/presentation/filterBar/attributeFilter/AttributeFilterParentFilteringContext.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/AttributeFilterParentFilteringContext.js +1 -2
- package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.js +1 -3
- package/esm/presentation/filterBar/attributeFilter/useParentFilters.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/useParentFilters.js +1 -2
- package/esm/presentation/filterBar/parameterFilter/DashboardParameterFilter.d.ts.map +1 -1
- package/esm/presentation/filterBar/parameterFilter/DashboardParameterFilter.js +12 -8
- package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +91 -91
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/useResolveDashboardInsightProperties.d.ts.map +1 -1
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/useResolveDashboardInsightProperties.js +3 -35
- package/esm/presentation/widget/insightMenu/types.js +1 -1
- package/esm/presentation/widget/richTextMenu/types.d.ts.map +1 -1
- package/esm/presentation/widget/richTextMenu/types.js +2 -1
- package/esm/presentation/widget/widget/DefaultDashboardWidget.d.ts +2 -1
- package/esm/presentation/widget/widget/DefaultDashboardWidget.d.ts.map +1 -1
- package/esm/sdk-ui-dashboard.d.ts +1118 -161
- package/esm/types.d.ts +59 -3
- package/esm/types.d.ts.map +1 -1
- package/esm/types.js +2 -4
- package/package.json +23 -24
- package/styles/scss/dashboard.scss +4 -4
- package/esm/converters/filterConverters.d.ts +0 -93
- package/esm/converters/filterConverters.d.ts.map +0 -1
- package/esm/converters/filterConverters.js +0 -199
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultLoadingAlertingDialog.d.ts.map +0 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultLoadingScheduledEmailDialog.d.ts.map +0 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/useWorkspaceUsersSearch.d.ts +0 -13
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/useWorkspaceUsersSearch.d.ts.map +0 -1
- /package/esm/presentation/automations/alerting/{DefaultAlertingDialog → blocks}/DefaultLoadingAlertingDialog.d.ts +0 -0
- /package/esm/presentation/automations/alerting/{DefaultAlertingDialog → blocks}/DefaultLoadingAlertingDialog.js +0 -0
- /package/esm/presentation/automations/scheduledEmail/{DefaultScheduledEmailDialog → blocks}/DefaultLoadingScheduledEmailDialog.d.ts +0 -0
- /package/esm/presentation/automations/scheduledEmail/{DefaultScheduledEmailDialog → blocks}/DefaultLoadingScheduledEmailDialog.js +0 -0
|
@@ -25,9 +25,13 @@ import { CurrentUserPermissions } from '@gooddata/sdk-ui-kit';
|
|
|
25
25
|
import { DashboardAttachmentType } from '@gooddata/sdk-model';
|
|
26
26
|
import { DashboardAttributeFilterConfigMode } from '@gooddata/sdk-model';
|
|
27
27
|
import { DashboardAttributeFilterItem } from '@gooddata/sdk-model';
|
|
28
|
+
import { dashboardAttributeFilterItemToAttributeFilter } from '@gooddata/sdk-model';
|
|
28
29
|
import { DashboardAttributeFilterSelectionMode } from '@gooddata/sdk-model';
|
|
29
30
|
import { DashboardAttributeFilterSelectionType } from '@gooddata/sdk-model';
|
|
31
|
+
import { dashboardAttributeFilterToAttributeFilter } from '@gooddata/sdk-model';
|
|
30
32
|
import { DashboardDateFilterConfigMode } from '@gooddata/sdk-model';
|
|
33
|
+
import { dashboardDateFilterToDateFilterByDateDataSet } from '@gooddata/sdk-model';
|
|
34
|
+
import { dashboardDateFilterToDateFilterByWidget } from '@gooddata/sdk-model';
|
|
31
35
|
import { DashboardFiltersApplyMode } from '@gooddata/sdk-model';
|
|
32
36
|
import { DashboardParameterMode } from '@gooddata/sdk-model';
|
|
33
37
|
import { DashboardSummaryWorkflowStatus } from '@gooddata/sdk-backend-spi';
|
|
@@ -46,10 +50,14 @@ import { EntityState } from '@reduxjs/toolkit';
|
|
|
46
50
|
import { ExecutionResultLimitType } from '@gooddata/sdk-model';
|
|
47
51
|
import { ExplicitDrill } from '@gooddata/sdk-ui';
|
|
48
52
|
import { FilterContextItem } from '@gooddata/sdk-model';
|
|
53
|
+
import { filterContextItemsToDashboardFiltersByDateDataSet } from '@gooddata/sdk-model';
|
|
54
|
+
import { filterContextItemsToDashboardFiltersByRichTextWidget } from '@gooddata/sdk-model';
|
|
55
|
+
import { filterContextItemsToDashboardFiltersByWidget } from '@gooddata/sdk-model';
|
|
56
|
+
import { filterContextToDashboardFiltersByDateDataSet } from '@gooddata/sdk-model';
|
|
57
|
+
import { filterContextToDashboardFiltersByWidget } from '@gooddata/sdk-model';
|
|
49
58
|
import { FocusEvent as FocusEvent_2 } from 'react';
|
|
50
59
|
import { ForwardRefExoticComponent } from 'react';
|
|
51
60
|
import { GoodDataSdkError } from '@gooddata/sdk-ui';
|
|
52
|
-
import { IAbsoluteDateFilter } from '@gooddata/sdk-model';
|
|
53
61
|
import { IAccessControlAware } from '@gooddata/sdk-model';
|
|
54
62
|
import { IAccessGrantee } from '@gooddata/sdk-model';
|
|
55
63
|
import { IActiveCalendars } from '@gooddata/sdk-model';
|
|
@@ -61,7 +69,6 @@ import { IAlertRelativeOperator } from '@gooddata/sdk-model';
|
|
|
61
69
|
import { IAlertTriggerInterval } from '@gooddata/sdk-model';
|
|
62
70
|
import { IAlertTriggerMode } from '@gooddata/sdk-model';
|
|
63
71
|
import { IAnalyticalBackend } from '@gooddata/sdk-backend-spi';
|
|
64
|
-
import { IArbitraryAttributeFilter } from '@gooddata/sdk-model';
|
|
65
72
|
import { IAttribute } from '@gooddata/sdk-model';
|
|
66
73
|
import { IAttributeDescriptorBody } from '@gooddata/sdk-model';
|
|
67
74
|
import { IAttributeDisplayFormMetadataObject } from '@gooddata/sdk-model';
|
|
@@ -100,6 +107,7 @@ import { IDashboardDefinition } from '@gooddata/sdk-model';
|
|
|
100
107
|
import { IDashboardExportParameter } from '@gooddata/sdk-model';
|
|
101
108
|
import { IDashboardExportPresentationOptions } from '@gooddata/sdk-backend-spi';
|
|
102
109
|
import { IDashboardExportRawOptions } from '@gooddata/sdk-backend-spi';
|
|
110
|
+
import { IDashboardFilter as IDashboardFilter_2 } from '@gooddata/sdk-model';
|
|
103
111
|
import { IDashboardFilterGroup } from '@gooddata/sdk-model';
|
|
104
112
|
import { IDashboardFilterGroupsConfig } from '@gooddata/sdk-model';
|
|
105
113
|
import { IDashboardFilterReference } from '@gooddata/sdk-model';
|
|
@@ -146,10 +154,9 @@ import { IExecutionResult } from '@gooddata/sdk-backend-spi';
|
|
|
146
154
|
import { IExecutionResultLimitBreak } from '@gooddata/sdk-model';
|
|
147
155
|
import { IExportDefinitionVisualizationObjectSettings } from '@gooddata/sdk-model';
|
|
148
156
|
import { IExportResult } from '@gooddata/sdk-backend-spi';
|
|
149
|
-
import
|
|
157
|
+
import { IExportTemplate } from '@gooddata/sdk-model';
|
|
150
158
|
import { IFilter } from '@gooddata/sdk-model';
|
|
151
159
|
import { IFilterableWidget } from '@gooddata/sdk-model';
|
|
152
|
-
import { IFilterContext } from '@gooddata/sdk-model';
|
|
153
160
|
import { IFilterContextDefinition } from '@gooddata/sdk-model';
|
|
154
161
|
import { IHeaderPredicate } from '@gooddata/sdk-ui';
|
|
155
162
|
import { IInsight } from '@gooddata/sdk-model';
|
|
@@ -170,13 +177,11 @@ import { IListedDashboard } from '@gooddata/sdk-model';
|
|
|
170
177
|
import { ILoadingProps } from '@gooddata/sdk-ui';
|
|
171
178
|
import { ILocale } from '@gooddata/sdk-ui';
|
|
172
179
|
import { ILowerBoundedFilter } from '@gooddata/sdk-model';
|
|
173
|
-
import { IMatchAttributeFilter } from '@gooddata/sdk-model';
|
|
174
180
|
import { IMeasure } from '@gooddata/sdk-model';
|
|
175
181
|
import { IMeasureDescriptor } from '@gooddata/sdk-model';
|
|
176
182
|
import { IMeasureMetadataObject } from '@gooddata/sdk-model';
|
|
177
183
|
import { IMeasureValueFilter } from '@gooddata/sdk-model';
|
|
178
184
|
import { IMeasureValueFilterProps } from '@gooddata/sdk-ui-filters';
|
|
179
|
-
import { INegativeAttributeFilter } from '@gooddata/sdk-model';
|
|
180
185
|
import { INotificationChannelIdentifier } from '@gooddata/sdk-model';
|
|
181
186
|
import { INotificationChannelMetadataObject } from '@gooddata/sdk-model';
|
|
182
187
|
import { INotificationChannelMetadataObjectBase } from '@gooddata/sdk-model';
|
|
@@ -185,13 +190,12 @@ import { InsightDrillDefinition } from '@gooddata/sdk-model';
|
|
|
185
190
|
import { IntlShape } from 'react-intl';
|
|
186
191
|
import { IParameterDefinition } from '@gooddata/sdk-model';
|
|
187
192
|
import { IParameterMetadataObject } from '@gooddata/sdk-model';
|
|
188
|
-
import { IPositiveAttributeFilter } from '@gooddata/sdk-model';
|
|
189
193
|
import { IPushData } from '@gooddata/sdk-ui';
|
|
190
194
|
import { IRawExportCustomOverrides } from '@gooddata/sdk-backend-spi';
|
|
191
|
-
import { IRelativeDateFilter } from '@gooddata/sdk-model';
|
|
192
195
|
import { IRenderListItemProps } from '@gooddata/sdk-ui-kit';
|
|
193
196
|
import { IResultWarning } from '@gooddata/sdk-model';
|
|
194
197
|
import { IRichTextWidget } from '@gooddata/sdk-model';
|
|
198
|
+
import { isDashboardFilter as isDashboardFilter_2 } from '@gooddata/sdk-model';
|
|
195
199
|
import { ISeparators } from '@gooddata/sdk-model';
|
|
196
200
|
import { ISettings } from '@gooddata/sdk-model';
|
|
197
201
|
import { IShareDialogInteractionData } from '@gooddata/sdk-ui-kit';
|
|
@@ -199,7 +203,6 @@ import { ISharedObject } from '@gooddata/sdk-ui-kit';
|
|
|
199
203
|
import { ISharingApplyPayload as ISharingApplyPayload_2 } from '@gooddata/sdk-ui-kit';
|
|
200
204
|
import { ISlotProps } from '@gooddata/sdk-ui-kit';
|
|
201
205
|
import { ITableDataAttributeScope } from '@gooddata/sdk-ui';
|
|
202
|
-
import { ITempFilterContext } from '@gooddata/sdk-model';
|
|
203
206
|
import { ITheme } from '@gooddata/sdk-model';
|
|
204
207
|
import type { ITranslations } from '@gooddata/sdk-ui';
|
|
205
208
|
import { IUnavailableDashboardReference } from '@gooddata/sdk-backend-spi';
|
|
@@ -212,6 +215,7 @@ import { IVisualizationSwitcherWidget } from '@gooddata/sdk-model';
|
|
|
212
215
|
import { IWidget } from '@gooddata/sdk-model';
|
|
213
216
|
import { IWidgetDefinition } from '@gooddata/sdk-model';
|
|
214
217
|
import { IWorkspacePermissions } from '@gooddata/sdk-model';
|
|
218
|
+
import { IWorkspaceUser } from '@gooddata/sdk-model';
|
|
215
219
|
import { JSX } from 'react/jsx-runtime';
|
|
216
220
|
import { KeyboardEvent as KeyboardEvent_2 } from 'react';
|
|
217
221
|
import { LocalIdRef } from '@gooddata/sdk-model';
|
|
@@ -671,6 +675,14 @@ export declare function AlertingDialogDestination(overrides: Partial<IAutomation
|
|
|
671
675
|
*/
|
|
672
676
|
export declare function AlertingDialogFilters(overrides: Partial<IAlertingDialogFiltersProps>): JSX.Element;
|
|
673
677
|
|
|
678
|
+
/**
|
|
679
|
+
* A heading with a column of field rows under it — the default alerting dialog's "When" (the condition
|
|
680
|
+
* fields) and "Do" (the action fields) groups. Layout only; reads no dialog context.
|
|
681
|
+
*
|
|
682
|
+
* @alpha
|
|
683
|
+
*/
|
|
684
|
+
export declare function AlertingDialogFormFieldGroup({ label, children }: IAlertingDialogFormFieldGroupProps): ReactElement;
|
|
685
|
+
|
|
674
686
|
/**
|
|
675
687
|
* The alerting dialog's granularity field (the period anomaly detection evaluates over), connected
|
|
676
688
|
* to the dialog's state and rendered as a labelled form row.
|
|
@@ -772,6 +784,53 @@ export declare function AlertingDialogRecipients(overrides: Partial<IAutomationD
|
|
|
772
784
|
*/
|
|
773
785
|
export declare function AlertingDialogSensitivity(overrides: Partial<IAlertingDialogSensitivityProps>): ReactElement;
|
|
774
786
|
|
|
787
|
+
/**
|
|
788
|
+
* The alerting dialog's chrome, connected to the dialog's state: the modal overlay, the dialog frame
|
|
789
|
+
* with the header row (the title input) and the action bar, the scrollable content area around
|
|
790
|
+
* `children`, the dialog's warning and validation messages, the stale-filters confirmation step shown
|
|
791
|
+
* before the dialog when the saved filters no longer match the dashboard, and the delete confirmation
|
|
792
|
+
* reached from the action bar in edit mode. While `useAlertingDialogContext().isLoading` is true it
|
|
793
|
+
* renders the loading skeleton and none of its children.
|
|
794
|
+
*
|
|
795
|
+
* The default dialog is `<AlertingDialogShell>` around the region and field blocks; a custom
|
|
796
|
+
* `AlertingDialogComponent` that keeps this chrome and arranges the blocks differently renders the shell
|
|
797
|
+
* itself. The shell does not own the submit: call {@link useAlertSubmit} and pass its `submit` and
|
|
798
|
+
* `isSaving`, so the footer button and any Enter handler in the body share one instance. Call that hook
|
|
799
|
+
* only once `useAlertingDialogContext().isLoading` is false — the state hooks throw while the dialog
|
|
800
|
+
* loads — and render the shell alone (any `onSubmit`, `isSaving: false`) until then, as the example does.
|
|
801
|
+
*
|
|
802
|
+
* Needs an ambient `IntlProvider`; inside a `Dashboard` the dashboard's provider covers it.
|
|
803
|
+
*
|
|
804
|
+
* @example
|
|
805
|
+
* ```tsx
|
|
806
|
+
* function MyAlertingDialog(props: IAlertingDialogProps) {
|
|
807
|
+
* const { isLoading } = useAlertingDialogContext();
|
|
808
|
+
* // the state hooks throw while the dialog loads; the shell renders the loading skeleton
|
|
809
|
+
* if (isLoading) {
|
|
810
|
+
* return <AlertingDialogShell {...props} onSubmit={() => {}} isSaving={false} />;
|
|
811
|
+
* }
|
|
812
|
+
* return <MyAlertingDialogBody {...props} />;
|
|
813
|
+
* }
|
|
814
|
+
*
|
|
815
|
+
* function MyAlertingDialogBody(props: IAlertingDialogProps) {
|
|
816
|
+
* const { isSaving, submit } = useAlertSubmit(props);
|
|
817
|
+
* return (
|
|
818
|
+
* <AlertingDialogShell {...props} onSubmit={() => void submit()} isSaving={isSaving}>
|
|
819
|
+
* <AlertingDialogFormFieldGroup label="When">
|
|
820
|
+
* <AlertingDialogMeasure />
|
|
821
|
+
* <AlertingDialogComparisonOperator />
|
|
822
|
+
* <AlertingDialogThreshold />
|
|
823
|
+
* </AlertingDialogFormFieldGroup>
|
|
824
|
+
* <AlertingDialogRecipients />
|
|
825
|
+
* </AlertingDialogShell>
|
|
826
|
+
* );
|
|
827
|
+
* }
|
|
828
|
+
* ```
|
|
829
|
+
*
|
|
830
|
+
* @alpha
|
|
831
|
+
*/
|
|
832
|
+
export declare function AlertingDialogShell(props: IAlertingDialogShellProps): ReactElement;
|
|
833
|
+
|
|
775
834
|
/**
|
|
776
835
|
* The alerting dialog's threshold field (the value a fixed-threshold, change or difference
|
|
777
836
|
* condition is compared against), connected to the dialog's state and rendered as a labelled form
|
|
@@ -823,10 +882,26 @@ export declare function AlertingDialogTriggerMode(overrides: Partial<IAlertingDi
|
|
|
823
882
|
export declare type AlertingDisabledReason = "noDestinations" | "oldWidget" | "disabledOnInsight";
|
|
824
883
|
|
|
825
884
|
/**
|
|
885
|
+
* Resolves the management dialog component from DashboardComponentsContext and mounts it inside
|
|
886
|
+
* the resolved context decorator — so a decorated management context is what the dialog (default
|
|
887
|
+
* or replacement) reads.
|
|
888
|
+
*
|
|
826
889
|
* @internal
|
|
827
890
|
*/
|
|
828
891
|
export declare function AlertingManagementDialog(props: IAlertingManagementDialogProps): ReactElement;
|
|
829
892
|
|
|
893
|
+
/**
|
|
894
|
+
* Provides the alerting management dialog context.
|
|
895
|
+
*
|
|
896
|
+
* The dashboard's connector mounts the original value. Exported so a context-decorator
|
|
897
|
+
* component (`CustomAlertingManagementDialogContextDecoratorComponent`) can re-provide a decorated
|
|
898
|
+
* value read from `useAlertingManagementDialogContext()`; it is not a way to run the management
|
|
899
|
+
* dialog outside a dashboard.
|
|
900
|
+
*
|
|
901
|
+
* @alpha
|
|
902
|
+
*/
|
|
903
|
+
export declare const AlertingManagementDialogContextProvider: Provider<IAlertingManagementDialogContextValue | undefined>;
|
|
904
|
+
|
|
830
905
|
/**
|
|
831
906
|
* A measure of the insight the alerting dialog can build a condition on, with the comparisons
|
|
832
907
|
* available for it.
|
|
@@ -933,7 +1008,7 @@ export declare function anyEventHandler(handler: DashboardEventHandler["handler"
|
|
|
933
1008
|
* The {@link ChangeAttributeFilterSelectionPayload}'s `selectionType` and `elements` are derived from the
|
|
934
1009
|
* provided attribute filter.
|
|
935
1010
|
*
|
|
936
|
-
* To convert {@link IDashboardFilter} to {@link @gooddata/sdk-model#IFilter} use {@link dashboardAttributeFilterToAttributeFilter}.
|
|
1011
|
+
* To convert {@link IDashboardFilter} to {@link @gooddata/sdk-model#IFilter} use {@link @gooddata/sdk-model#dashboardAttributeFilterToAttributeFilter}.
|
|
937
1012
|
* Converted filter can be used within the command's payload.
|
|
938
1013
|
*
|
|
939
1014
|
* @param filterLocalId - dashboard attribute filter's local id
|
|
@@ -1116,6 +1191,18 @@ export declare type AutomationInteractionPayload = IUserInteractionPayloadWithDa
|
|
|
1116
1191
|
*/
|
|
1117
1192
|
export declare type AutomationInteractionType = "scheduledExportInitialized" | "scheduledExportCreated" | "alertInitialized" | "alertCreated";
|
|
1118
1193
|
|
|
1194
|
+
/**
|
|
1195
|
+
* Provides the automation dialogs' shared context.
|
|
1196
|
+
*
|
|
1197
|
+
* The dashboard's connectors mount the original value once per tree. Exported so a
|
|
1198
|
+
* context-decorator component (`CustomAutomationsContextDecoratorComponent`) can re-provide a
|
|
1199
|
+
* decorated value read from `useAutomationsContext()`; it is not a way to run the dialogs outside
|
|
1200
|
+
* a dashboard.
|
|
1201
|
+
*
|
|
1202
|
+
* @alpha
|
|
1203
|
+
*/
|
|
1204
|
+
export declare const AutomationsContextProvider: Provider<IAutomationsContextValue | undefined>;
|
|
1205
|
+
|
|
1119
1206
|
/**
|
|
1120
1207
|
* @public
|
|
1121
1208
|
*/
|
|
@@ -2210,6 +2297,12 @@ export declare type CustomAlertingDialogComponent = ComponentType<IAlertingDialo
|
|
|
2210
2297
|
* false, and a decorator that overrides it corrupts the draft seed. Define the decorator
|
|
2211
2298
|
* outside render, or the dialog remounts (and reseeds) on every parent render.
|
|
2212
2299
|
*
|
|
2300
|
+
* The contract: change the data, not what it means — every member keeps its documented meaning.
|
|
2301
|
+
* The dialog does not check the decorated value; when you override a member, everything that
|
|
2302
|
+
* reads it is your responsibility. Spread the value you read (`{ ...ctx, member }`) so the other
|
|
2303
|
+
* members pass through. Wrap functions instead of replacing them. Do not touch members marked as
|
|
2304
|
+
* internal machinery.
|
|
2305
|
+
*
|
|
2213
2306
|
* @alpha
|
|
2214
2307
|
*/
|
|
2215
2308
|
export declare type CustomAlertingDialogContextDecoratorComponent = ComponentType<{
|
|
@@ -2221,6 +2314,106 @@ export declare type CustomAlertingDialogContextDecoratorComponent = ComponentTyp
|
|
|
2221
2314
|
*/
|
|
2222
2315
|
export declare type CustomAlertingManagementDialogComponent = ComponentType<IAlertingManagementDialogProps>;
|
|
2223
2316
|
|
|
2317
|
+
/**
|
|
2318
|
+
* Decorates the data the alerting management dialog reads.
|
|
2319
|
+
*
|
|
2320
|
+
* The dashboard mounts this component between the connector-provided management dialog context and
|
|
2321
|
+
* the resolved management dialog component (default or replacement), so the value it re-provides is
|
|
2322
|
+
* what the dialog reads. Read the current value with `useAlertingManagementDialogContext()`,
|
|
2323
|
+
* decorate the members to adjust, and re-provide via `AlertingManagementDialogContextProvider`:
|
|
2324
|
+
*
|
|
2325
|
+
* @example
|
|
2326
|
+
* ```tsx
|
|
2327
|
+
* function AlertsListDecorator({ children }: { children?: ReactNode }) {
|
|
2328
|
+
* const ctx = useAlertingManagementDialogContext();
|
|
2329
|
+
* const { alerts, loading } = useMySelfFetchedAlerts(ctx.automations);
|
|
2330
|
+
* const decorated = useMemo(
|
|
2331
|
+
* () => ({ ...ctx, automations: alerts, isLoading: ctx.isLoading || loading }),
|
|
2332
|
+
* [ctx, alerts, loading],
|
|
2333
|
+
* );
|
|
2334
|
+
* return (
|
|
2335
|
+
* <AlertingManagementDialogContextProvider value={decorated}>
|
|
2336
|
+
* {children}
|
|
2337
|
+
* </AlertingManagementDialogContextProvider>
|
|
2338
|
+
* );
|
|
2339
|
+
* }
|
|
2340
|
+
* // <Dashboard AlertingManagementDialogContextDecoratorComponent={AlertsListDecorator} />
|
|
2341
|
+
* ```
|
|
2342
|
+
*
|
|
2343
|
+
* The management dialog has no state seeding — it renders from the context on every change, so a
|
|
2344
|
+
* decorator may replace `automations` or extend `isLoading` (as above). Extend `isLoading` only
|
|
2345
|
+
* as `ctx.isLoading || yourOwnLoading`, never force it: forced false shows the list before its
|
|
2346
|
+
* data arrives, forced true hides it forever. `isLoading` here covers the automations load only —
|
|
2347
|
+
* deliberately narrower than the scheduled-email management context's flag. Define the decorator
|
|
2348
|
+
* outside render, or the dialog remounts on every parent render.
|
|
2349
|
+
*
|
|
2350
|
+
* The contract: change the data, not what it means — every member keeps its documented meaning.
|
|
2351
|
+
* The dialog does not check the decorated value; when you override a member, everything that
|
|
2352
|
+
* reads it is your responsibility. Spread the value you read (`{ ...ctx, member }`) so the other
|
|
2353
|
+
* members pass through. Wrap functions instead of replacing them. Do not touch members marked as
|
|
2354
|
+
* internal machinery.
|
|
2355
|
+
*
|
|
2356
|
+
* @alpha
|
|
2357
|
+
*/
|
|
2358
|
+
export declare type CustomAlertingManagementDialogContextDecoratorComponent = ComponentType<{
|
|
2359
|
+
children?: ReactNode;
|
|
2360
|
+
}>;
|
|
2361
|
+
|
|
2362
|
+
/**
|
|
2363
|
+
* Decorates the data the automation dialogs' shared context carries.
|
|
2364
|
+
*
|
|
2365
|
+
* The dashboard mounts this component directly inside each connector-provided automations context
|
|
2366
|
+
* — once in the alerting tree and once in the scheduled-email tree — so the value it re-provides
|
|
2367
|
+
* is what everything in both trees reads: the default dialogs, wholesale replacements, exported
|
|
2368
|
+
* blocks and hooks, and the dialogs' state seeding. A decorator must therefore be tree-agnostic.
|
|
2369
|
+
* Read the current value with `useAutomationsContext()`, decorate the members to adjust, and
|
|
2370
|
+
* re-provide via `AutomationsContextProvider`:
|
|
2371
|
+
*
|
|
2372
|
+
* @example
|
|
2373
|
+
* ```tsx
|
|
2374
|
+
* function GranularityDecorator({ children }: { children?: ReactNode }) {
|
|
2375
|
+
* const ctx = useAutomationsContext();
|
|
2376
|
+
* const decorated = useMemo(
|
|
2377
|
+
* () => ({
|
|
2378
|
+
* ...ctx,
|
|
2379
|
+
* dateFilterConfig: {
|
|
2380
|
+
* ...ctx.dateFilterConfig,
|
|
2381
|
+
* availableGranularities: ctx.dateFilterConfig.availableGranularities.filter(
|
|
2382
|
+
* (g) => g !== "GDC.time.hour",
|
|
2383
|
+
* ),
|
|
2384
|
+
* getGranularitiesForTab: (tabId: string) =>
|
|
2385
|
+
* ctx.dateFilterConfig
|
|
2386
|
+
* .getGranularitiesForTab(tabId)
|
|
2387
|
+
* .filter((g) => g !== "GDC.time.hour"),
|
|
2388
|
+
* },
|
|
2389
|
+
* }),
|
|
2390
|
+
* [ctx],
|
|
2391
|
+
* );
|
|
2392
|
+
* return <AutomationsContextProvider value={decorated}>{children}</AutomationsContextProvider>;
|
|
2393
|
+
* }
|
|
2394
|
+
* // <Dashboard AutomationsContextDecoratorComponent={GranularityDecorator} />
|
|
2395
|
+
* ```
|
|
2396
|
+
*
|
|
2397
|
+
* To constrain the date-filter granularities the dialogs offer, override
|
|
2398
|
+
* `dateFilterConfig.availableGranularities` and `dateFilterConfig.getGranularitiesForTab`
|
|
2399
|
+
* together, as above — the date filter falls back per tab. Components that build this context
|
|
2400
|
+
* themselves (the standalone connected dialogs, the widget-panel alerts list) are not decorated.
|
|
2401
|
+
* Define the decorator outside render, or both dialog trees remount on every parent render.
|
|
2402
|
+
* Both instances mount with the dashboard, not only while a dialog is open — a decorator that
|
|
2403
|
+
* fetches data runs on every dashboard.
|
|
2404
|
+
*
|
|
2405
|
+
* The contract: change the data, not what it means — every member keeps its documented meaning.
|
|
2406
|
+
* The dialog does not check the decorated value; when you override a member, everything that
|
|
2407
|
+
* reads it is your responsibility. Spread the value you read (`{ ...ctx, member }`) so the other
|
|
2408
|
+
* members pass through. Wrap functions instead of replacing them. Do not touch members marked as
|
|
2409
|
+
* internal machinery.
|
|
2410
|
+
*
|
|
2411
|
+
* @alpha
|
|
2412
|
+
*/
|
|
2413
|
+
export declare type CustomAutomationsContextDecoratorComponent = ComponentType<{
|
|
2414
|
+
children?: ReactNode;
|
|
2415
|
+
}>;
|
|
2416
|
+
|
|
2224
2417
|
/**
|
|
2225
2418
|
* @beta
|
|
2226
2419
|
*/
|
|
@@ -2454,6 +2647,12 @@ export declare type CustomScheduledEmailDialogComponent = ComponentType<ISchedul
|
|
|
2454
2647
|
* corrupts the draft seed on every such open, not in an edge case. Define the decorator outside
|
|
2455
2648
|
* render, or the dialog remounts (and reseeds) on every parent render.
|
|
2456
2649
|
*
|
|
2650
|
+
* The contract: change the data, not what it means — every member keeps its documented meaning.
|
|
2651
|
+
* The dialog does not check the decorated value; when you override a member, everything that
|
|
2652
|
+
* reads it is your responsibility. Spread the value you read (`{ ...ctx, member }`) so the other
|
|
2653
|
+
* members pass through. Wrap functions instead of replacing them. Do not touch members marked as
|
|
2654
|
+
* internal machinery.
|
|
2655
|
+
*
|
|
2457
2656
|
* @alpha
|
|
2458
2657
|
*/
|
|
2459
2658
|
export declare type CustomScheduledEmailDialogContextDecoratorComponent = ComponentType<{
|
|
@@ -2465,6 +2664,53 @@ export declare type CustomScheduledEmailDialogContextDecoratorComponent = Compon
|
|
|
2465
2664
|
*/
|
|
2466
2665
|
export declare type CustomScheduledEmailManagementDialogComponent = ComponentType<IScheduledEmailManagementDialogProps>;
|
|
2467
2666
|
|
|
2667
|
+
/**
|
|
2668
|
+
* Decorates the data the scheduled email management dialog reads.
|
|
2669
|
+
*
|
|
2670
|
+
* The dashboard mounts this component between the connector-provided management dialog context and
|
|
2671
|
+
* the resolved management dialog component (default or replacement), so the value it re-provides is
|
|
2672
|
+
* what the dialog reads. Read the current value with `useScheduledEmailManagementDialogContext()`,
|
|
2673
|
+
* decorate the members to adjust, and re-provide via
|
|
2674
|
+
* `ScheduledEmailManagementDialogContextProvider`:
|
|
2675
|
+
*
|
|
2676
|
+
* @example
|
|
2677
|
+
* ```tsx
|
|
2678
|
+
* function SchedulesListDecorator({ children }: { children?: ReactNode }) {
|
|
2679
|
+
* const ctx = useScheduledEmailManagementDialogContext();
|
|
2680
|
+
* const { schedules, loading } = useMySelfFetchedSchedules(ctx.automations);
|
|
2681
|
+
* const decorated = useMemo(
|
|
2682
|
+
* () => ({ ...ctx, automations: schedules, isLoading: ctx.isLoading || loading }),
|
|
2683
|
+
* [ctx, schedules, loading],
|
|
2684
|
+
* );
|
|
2685
|
+
* return (
|
|
2686
|
+
* <ScheduledEmailManagementDialogContextProvider value={decorated}>
|
|
2687
|
+
* {children}
|
|
2688
|
+
* </ScheduledEmailManagementDialogContextProvider>
|
|
2689
|
+
* );
|
|
2690
|
+
* }
|
|
2691
|
+
* // <Dashboard ScheduledEmailManagementDialogContextDecoratorComponent={SchedulesListDecorator} />
|
|
2692
|
+
* ```
|
|
2693
|
+
*
|
|
2694
|
+
* The management dialog has no state seeding — it renders from the context on every change, so a
|
|
2695
|
+
* decorator may replace `automations` or extend `isLoading` (as above). Extend `isLoading` only
|
|
2696
|
+
* as `ctx.isLoading || yourOwnLoading`, never force it: forced false shows the list before its
|
|
2697
|
+
* data arrives, forced true hides it forever. `isLoading` here may also cover a widget-filters
|
|
2698
|
+
* load while a widget-scoped create/edit dialog is open — deliberately broader than the alerting
|
|
2699
|
+
* management context's automations-only flag. Define the decorator outside render, or the dialog
|
|
2700
|
+
* remounts on every parent render.
|
|
2701
|
+
*
|
|
2702
|
+
* The contract: change the data, not what it means — every member keeps its documented meaning.
|
|
2703
|
+
* The dialog does not check the decorated value; when you override a member, everything that
|
|
2704
|
+
* reads it is your responsibility. Spread the value you read (`{ ...ctx, member }`) so the other
|
|
2705
|
+
* members pass through. Wrap functions instead of replacing them. Do not touch members marked as
|
|
2706
|
+
* internal machinery.
|
|
2707
|
+
*
|
|
2708
|
+
* @alpha
|
|
2709
|
+
*/
|
|
2710
|
+
export declare type CustomScheduledEmailManagementDialogContextDecoratorComponent = ComponentType<{
|
|
2711
|
+
children?: ReactNode;
|
|
2712
|
+
}>;
|
|
2713
|
+
|
|
2468
2714
|
/**
|
|
2469
2715
|
* @beta
|
|
2470
2716
|
*/
|
|
@@ -2619,24 +2865,14 @@ export declare type DashboardAttributeFilterItemSelectionReplacedPayload = {
|
|
|
2619
2865
|
readonly filter: DashboardAttributeFilterItem;
|
|
2620
2866
|
};
|
|
2621
2867
|
|
|
2622
|
-
|
|
2623
|
-
* Converts any {@link @gooddata/sdk-model#DashboardAttributeFilterItem} to {@link @gooddata/sdk-model#IAttributeFilter} instance.
|
|
2624
|
-
*
|
|
2625
|
-
* @remarks
|
|
2626
|
-
* Handles all attribute filter types: element-based (positive/negative selection),
|
|
2627
|
-
* arbitrary value filters, and match (text) filters.
|
|
2628
|
-
*
|
|
2629
|
-
* @param filter - dashboard attribute filter item to convert
|
|
2630
|
-
* @public
|
|
2631
|
-
*/
|
|
2632
|
-
export declare function dashboardAttributeFilterItemToAttributeFilter(filter: DashboardAttributeFilterItem): IAttributeFilter;
|
|
2868
|
+
export { dashboardAttributeFilterItemToAttributeFilter }
|
|
2633
2869
|
|
|
2634
2870
|
/**
|
|
2635
2871
|
* This event is emitted after new elements are selected and applied in an attribute filter.
|
|
2636
2872
|
*
|
|
2637
2873
|
* @remarks
|
|
2638
2874
|
*
|
|
2639
|
-
* See also {@link dashboardAttributeFilterToAttributeFilter} convertor – this allows you to convert the `filter`
|
|
2875
|
+
* See also {@link @gooddata/sdk-model#dashboardAttributeFilterToAttributeFilter} convertor – this allows you to convert the `filter`
|
|
2640
2876
|
* in the event payload to an {@link @gooddata/sdk-model#IAttributeFilter} instance you can use with visualizations,
|
|
2641
2877
|
* filter UI components and so on.
|
|
2642
2878
|
*
|
|
@@ -2652,7 +2888,7 @@ export declare type DashboardAttributeFilterSelectionChanged = IDashboardEvent &
|
|
|
2652
2888
|
*
|
|
2653
2889
|
* @remarks
|
|
2654
2890
|
*
|
|
2655
|
-
* See also {@link dashboardAttributeFilterToAttributeFilter} convertor – this allows you to convert the `filter`
|
|
2891
|
+
* See also {@link @gooddata/sdk-model#dashboardAttributeFilterToAttributeFilter} convertor – this allows you to convert the `filter`
|
|
2656
2892
|
* object to an {@link @gooddata/sdk-model#IAttributeFilter} instance you can use with visualizations,
|
|
2657
2893
|
* filter UI components and so on.
|
|
2658
2894
|
*
|
|
@@ -2667,15 +2903,7 @@ export declare type DashboardAttributeFilterSelectionChangedPayload = {
|
|
|
2667
2903
|
readonly filter: IDashboardAttributeFilter;
|
|
2668
2904
|
};
|
|
2669
2905
|
|
|
2670
|
-
|
|
2671
|
-
* Converts {@link @gooddata/sdk-backend-spi#IDashboardAttributeFilter} to {@link @gooddata/sdk-model#IAttributeFilter} instance.
|
|
2672
|
-
*
|
|
2673
|
-
* @param filter - filter context attribute filter to convert
|
|
2674
|
-
* @deprecated Use {@link dashboardAttributeFilterItemToAttributeFilter} instead,
|
|
2675
|
-
* which supports all attribute filter types including text filters.
|
|
2676
|
-
* @public
|
|
2677
|
-
*/
|
|
2678
|
-
export declare function dashboardAttributeFilterToAttributeFilter(filter: IDashboardAttributeFilter): IAttributeFilter;
|
|
2906
|
+
export { dashboardAttributeFilterToAttributeFilter }
|
|
2679
2907
|
|
|
2680
2908
|
/**
|
|
2681
2909
|
* Union type that contains all available built-in dashboard commands.
|
|
@@ -3121,7 +3349,7 @@ export declare type DashboardCopySavedPayload = {
|
|
|
3121
3349
|
*
|
|
3122
3350
|
* @remarks
|
|
3123
3351
|
*
|
|
3124
|
-
* See also {@link dashboardDateFilterToDateFilterByWidget} and {@link dashboardDateFilterToDateFilterByDateDataSet} convertors
|
|
3352
|
+
* See also {@link @gooddata/sdk-model#dashboardDateFilterToDateFilterByWidget} and {@link @gooddata/sdk-model#dashboardDateFilterToDateFilterByDateDataSet} convertors
|
|
3125
3353
|
* – those allow you to convert the `filter` in the event payload to an {@link @gooddata/sdk-model#IDateFilter} instance you can use
|
|
3126
3354
|
* with visualizations, filter UI components and so on.
|
|
3127
3355
|
*
|
|
@@ -3137,7 +3365,7 @@ export declare type DashboardDateFilterSelectionChanged = IDashboardEvent & {
|
|
|
3137
3365
|
*
|
|
3138
3366
|
* @remarks
|
|
3139
3367
|
*
|
|
3140
|
-
* See also {@link dashboardDateFilterToDateFilterByWidget} and {@link dashboardDateFilterToDateFilterByDateDataSet} convertors
|
|
3368
|
+
* See also {@link @gooddata/sdk-model#dashboardDateFilterToDateFilterByWidget} and {@link @gooddata/sdk-model#dashboardDateFilterToDateFilterByDateDataSet} convertors
|
|
3141
3369
|
* – those allow you to convert the `filter` object to an {@link @gooddata/sdk-model#IDateFilter} instance you can use
|
|
3142
3370
|
* with visualizations, filter UI components and so on.
|
|
3143
3371
|
*
|
|
@@ -3154,23 +3382,9 @@ export declare type DashboardDateFilterSelectionChangedPayload = {
|
|
|
3154
3382
|
readonly dateFilterOptionLocalId?: string;
|
|
3155
3383
|
};
|
|
3156
3384
|
|
|
3157
|
-
|
|
3158
|
-
* Converts {@link @gooddata/sdk-backend-spi#IDashboardDateFilter} to {@link @gooddata/sdk-model#IDateFilter} instance.
|
|
3159
|
-
*
|
|
3160
|
-
* @param filter - filter context attribute filter to convert
|
|
3161
|
-
* @param dateDataSet - date data set to define {@link @gooddata/sdk-model#IDateFilter}
|
|
3162
|
-
* @public
|
|
3163
|
-
*/
|
|
3164
|
-
export declare function dashboardDateFilterToDateFilterByDateDataSet(filter: IDashboardDateFilter, dateDataSet: ObjRef): IDateFilter;
|
|
3385
|
+
export { dashboardDateFilterToDateFilterByDateDataSet }
|
|
3165
3386
|
|
|
3166
|
-
|
|
3167
|
-
* Converts {@link @gooddata/sdk-backend-spi#IDashboardDateFilter} to {@link @gooddata/sdk-model#IDateFilter} instance.
|
|
3168
|
-
*
|
|
3169
|
-
* @param filter - filter context attribute filter to convert
|
|
3170
|
-
* @param widget - widget to use to get dateDataSet for date filters
|
|
3171
|
-
* @public
|
|
3172
|
-
*/
|
|
3173
|
-
export declare function dashboardDateFilterToDateFilterByWidget(filter: IDashboardDateFilter, widget?: Partial<IFilterableWidget>): IDateFilter;
|
|
3387
|
+
export { dashboardDateFilterToDateFilterByWidget }
|
|
3174
3388
|
|
|
3175
3389
|
/**
|
|
3176
3390
|
* This event is emitted when a dashboard is deinitialized. The event contains contextual information such as
|
|
@@ -3319,7 +3533,7 @@ export declare type DashboardEventType = "GDC.DASH/EVT.COMMAND.FAILED" | "GDC.DA
|
|
|
3319
3533
|
* This event is emitted as convenience - more granular events describe all the possible
|
|
3320
3534
|
* changes to the dashboard filters and can be used to even source the state of filter context.
|
|
3321
3535
|
*
|
|
3322
|
-
* See also {@link filterContextToDashboardFiltersByWidget} and {@link filterContextToDashboardFiltersByDateDataSet} convertors
|
|
3536
|
+
* See also {@link @gooddata/sdk-model#filterContextToDashboardFiltersByWidget} and {@link @gooddata/sdk-model#filterContextToDashboardFiltersByDateDataSet} convertors
|
|
3323
3537
|
* – those allow you to convert the `filterContext` in the event payload to array of {@link @gooddata/sdk-model#IFilter} instances you can use
|
|
3324
3538
|
* with visualizations, filter UI components and so on.
|
|
3325
3539
|
*
|
|
@@ -3335,7 +3549,7 @@ export declare type DashboardFilterContextChanged = IDashboardEvent & {
|
|
|
3335
3549
|
*
|
|
3336
3550
|
* @remarks
|
|
3337
3551
|
*
|
|
3338
|
-
* See also {@link filterContextToDashboardFiltersByWidget} and {@link filterContextToDashboardFiltersByDateDataSet} convertors
|
|
3552
|
+
* See also {@link @gooddata/sdk-model#filterContextToDashboardFiltersByWidget} and {@link @gooddata/sdk-model#filterContextToDashboardFiltersByDateDataSet} convertors
|
|
3339
3553
|
* – those allow you to convert the `filterContext` object to array of {@link @gooddata/sdk-model#IFilter} instances you can use
|
|
3340
3554
|
* with visualizations, filter UI components and so on.
|
|
3341
3555
|
*
|
|
@@ -4335,27 +4549,27 @@ export declare const DEFAULT_TAB_ID = "defaultTabId";
|
|
|
4335
4549
|
* that is what lets a wholesale replacement receive the same contexts. Rendering this component
|
|
4336
4550
|
* outside those providers throws at runtime.
|
|
4337
4551
|
*
|
|
4338
|
-
* The dialog is
|
|
4339
|
-
*
|
|
4340
|
-
* {@link
|
|
4341
|
-
*
|
|
4342
|
-
* connected field blocks — {@link AlertingDialogMeasure},
|
|
4343
|
-
* {@link AlertingDialogComparisonOperator}, {@link AlertingDialogThreshold},
|
|
4344
|
-
* {@link AlertingDialogComparisonPeriod}, {@link AlertingDialogSensitivity},
|
|
4345
|
-
* {@link
|
|
4346
|
-
* {@link
|
|
4347
|
-
* conditional ones
|
|
4348
|
-
*
|
|
4349
|
-
*
|
|
4350
|
-
*
|
|
4351
|
-
*
|
|
4552
|
+
* The dialog is {@link AlertingDialogShell} — the chrome: overlay, frame, header row, action bar, the
|
|
4553
|
+
* dialog's messages, the stale-filters and delete confirmation steps, the loading skeleton — around the
|
|
4554
|
+
* exported region renders ({@link DefaultAlertingDialogFilters}, {@link DefaultAlertingDialogDestination},
|
|
4555
|
+
* {@link DefaultAlertingDialogRecipients}, fed by {@link useAlertingDialogFiltersProps} and siblings; the
|
|
4556
|
+
* header and action bar are the shell's) and the connected field blocks — {@link AlertingDialogMeasure},
|
|
4557
|
+
* {@link AlertingDialogAttribute}, {@link AlertingDialogComparisonOperator}, {@link AlertingDialogThreshold},
|
|
4558
|
+
* {@link AlertingDialogComparisonPeriod}, {@link AlertingDialogSensitivity}, {@link AlertingDialogGranularity},
|
|
4559
|
+
* {@link AlertingDialogTriggerMode}, {@link AlertingDialogTriggerInterval} — grouped under the "When" and
|
|
4560
|
+
* "Do" headings by {@link AlertingDialogFormFieldGroup}; each field is a labelled
|
|
4561
|
+
* {@link AutomationDialogFormField} row and the conditional ones gate themselves on the draft. A custom
|
|
4562
|
+
* `AlertingDialogComponent` that keeps this chrome but owns the arrangement renders
|
|
4563
|
+
* {@link AlertingDialogShell} around the blocks it wants (see its example); one that owns the chrome too
|
|
4564
|
+
* places the blocks in its own markup and reads or writes the same draft through {@link useAlertDraft} and
|
|
4565
|
+
* {@link useAlertActions}.
|
|
4352
4566
|
*
|
|
4353
4567
|
* Slots render only in the fully rendered dialog: not while the dialog context reports loading,
|
|
4354
4568
|
* and not while the stale-filters confirmation step is shown.
|
|
4355
4569
|
*
|
|
4356
4570
|
* @alpha
|
|
4357
4571
|
*/
|
|
4358
|
-
export declare function DefaultAlertingDialog(props: IDefaultAlertingDialogProps):
|
|
4572
|
+
export declare function DefaultAlertingDialog(props: IDefaultAlertingDialogProps): ReactElement;
|
|
4359
4573
|
|
|
4360
4574
|
/**
|
|
4361
4575
|
* Default render of the alerting dialog's attribute field: the dropdown slicing the condition by an
|
|
@@ -4757,14 +4971,19 @@ export declare function DefaultSaveButton({ isVisible, isEnabled, isSaving, butt
|
|
|
4757
4971
|
* that is what lets a wholesale replacement receive the same contexts. Rendering this component
|
|
4758
4972
|
* outside those providers throws at runtime.
|
|
4759
4973
|
*
|
|
4760
|
-
* The dialog is
|
|
4761
|
-
*
|
|
4762
|
-
*
|
|
4763
|
-
* {@link
|
|
4764
|
-
*
|
|
4765
|
-
*
|
|
4766
|
-
* ({@link
|
|
4767
|
-
*
|
|
4974
|
+
* The dialog is {@link ScheduledEmailDialogShell} — the chrome: overlay, frame, header row, action bar, the
|
|
4975
|
+
* General/Filters tabs, the body's messages, the stale-filters and delete confirmation steps, the loading
|
|
4976
|
+
* skeleton — around the exported region renders ({@link DefaultScheduledEmailDialogDestination},
|
|
4977
|
+
* {@link DefaultScheduledEmailDialogRecipients}, {@link DefaultScheduledEmailDialogTimezone}, fed by
|
|
4978
|
+
* {@link useScheduledEmailDialogDestinationProps} and siblings; the header, action bar and the Filters tab's
|
|
4979
|
+
* {@link DefaultScheduledEmailDialogFilters} are the shell's) and the General-tab field blocks
|
|
4980
|
+
* ({@link ScheduledEmailDialogRecurrence}, {@link ScheduledEmailDialogSubject}, {@link ScheduledEmailDialogMessage},
|
|
4981
|
+
* {@link ScheduledEmailDialogWidgetAttachments}, {@link ScheduledEmailDialogDashboardAttachments},
|
|
4982
|
+
* {@link ScheduledEmailDialogEvaluationMode}). A custom `ScheduledEmailDialogComponent` that keeps this chrome
|
|
4983
|
+
* but owns the arrangement renders {@link ScheduledEmailDialogShell} around the blocks it wants (see its
|
|
4984
|
+
* example); one that owns the chrome too places the blocks ({@link ScheduledEmailDialogFilters} and
|
|
4985
|
+
* siblings) in its own markup and reads or writes the same draft through {@link useScheduledExportDraft}
|
|
4986
|
+
* and {@link useScheduledExportActions}.
|
|
4768
4987
|
*
|
|
4769
4988
|
* Slots render only in the fully rendered dialog: not while the dialog context reports loading,
|
|
4770
4989
|
* and not while the stale-filters confirmation step is shown. The Filters slot additionally
|
|
@@ -4772,7 +4991,16 @@ export declare function DefaultSaveButton({ isVisible, isEnabled, isSaving, butt
|
|
|
4772
4991
|
*
|
|
4773
4992
|
* @alpha
|
|
4774
4993
|
*/
|
|
4775
|
-
export declare function DefaultScheduledEmailDialog(props: IDefaultScheduledEmailDialogProps):
|
|
4994
|
+
export declare function DefaultScheduledEmailDialog(props: IDefaultScheduledEmailDialogProps): ReactElement;
|
|
4995
|
+
|
|
4996
|
+
/**
|
|
4997
|
+
* Default render of the scheduled-export dialog's dashboard-attachments field.
|
|
4998
|
+
* Props-driven — reads no context. The default dialog and {@link ScheduledEmailDialogDashboardAttachments}
|
|
4999
|
+
* render it with {@link useScheduledEmailDialogDashboardAttachmentsProps}.
|
|
5000
|
+
*
|
|
5001
|
+
* @alpha
|
|
5002
|
+
*/
|
|
5003
|
+
export declare function DefaultScheduledEmailDialogDashboardAttachments(props: IScheduledEmailDialogDashboardAttachmentsProps): ReactElement;
|
|
4776
5004
|
|
|
4777
5005
|
/**
|
|
4778
5006
|
* Default render of the scheduled-export dialog's destination region: the notification-channel
|
|
@@ -4784,6 +5012,15 @@ export declare function DefaultScheduledEmailDialog(props: IDefaultScheduledEmai
|
|
|
4784
5012
|
*/
|
|
4785
5013
|
export declare function DefaultScheduledEmailDialogDestination({ notificationChannels, selectedNotificationChannelId, onChange }: IAutomationDialogDestinationProps): JSX.Element;
|
|
4786
5014
|
|
|
5015
|
+
/**
|
|
5016
|
+
* Default render of the scheduled-export dialog's evaluation-mode field.
|
|
5017
|
+
* Props-driven — reads no context. The default dialog and {@link ScheduledEmailDialogEvaluationMode}
|
|
5018
|
+
* render it with {@link useScheduledEmailDialogEvaluationModeProps}.
|
|
5019
|
+
*
|
|
5020
|
+
* @alpha
|
|
5021
|
+
*/
|
|
5022
|
+
export declare function DefaultScheduledEmailDialogEvaluationMode(props: IScheduledEmailDialogEvaluationModeProps): ReactElement;
|
|
5023
|
+
|
|
4787
5024
|
/**
|
|
4788
5025
|
* Default render of the scheduled-export dialog's filters region: the filter and parameter chips of
|
|
4789
5026
|
* the Filters tab, flat or per dashboard tab. The title is hidden and the list always expanded
|
|
@@ -4805,6 +5042,15 @@ export declare function DefaultScheduledEmailDialogFilters(props: IScheduledEmai
|
|
|
4805
5042
|
*/
|
|
4806
5043
|
export declare const DefaultScheduledEmailDialogHeader: ForwardRefExoticComponent<IScheduledEmailDialogHeaderProps & RefAttributes<HTMLInputElement>>;
|
|
4807
5044
|
|
|
5045
|
+
/**
|
|
5046
|
+
* Default render of the scheduled-export dialog's message field.
|
|
5047
|
+
* Props-driven — reads no context. The default dialog and {@link ScheduledEmailDialogMessage}
|
|
5048
|
+
* render it with {@link useScheduledEmailDialogMessageProps}.
|
|
5049
|
+
*
|
|
5050
|
+
* @alpha
|
|
5051
|
+
*/
|
|
5052
|
+
export declare function DefaultScheduledEmailDialogMessage(props: IScheduledEmailDialogMessageProps): ReactElement;
|
|
5053
|
+
|
|
4808
5054
|
/**
|
|
4809
5055
|
* Default render of the scheduled-export dialog's recipients region: the recipients select.
|
|
4810
5056
|
* Props-driven — reads no context. The default dialog and {@link ScheduledEmailDialogRecipients}
|
|
@@ -4815,6 +5061,24 @@ export declare const DefaultScheduledEmailDialogHeader: ForwardRefExoticComponen
|
|
|
4815
5061
|
*/
|
|
4816
5062
|
export declare function DefaultScheduledEmailDialogRecipients(props: IScheduledEmailDialogRecipientsProps): JSX.Element;
|
|
4817
5063
|
|
|
5064
|
+
/**
|
|
5065
|
+
* Default render of the scheduled-export dialog's recurrence field: the recurrence form.
|
|
5066
|
+
* Props-driven — reads no context. The default dialog and {@link ScheduledEmailDialogRecurrence}
|
|
5067
|
+
* render it with {@link useScheduledEmailDialogRecurrenceProps}.
|
|
5068
|
+
*
|
|
5069
|
+
* @alpha
|
|
5070
|
+
*/
|
|
5071
|
+
export declare function DefaultScheduledEmailDialogRecurrence(props: IScheduledEmailDialogRecurrenceProps): ReactElement;
|
|
5072
|
+
|
|
5073
|
+
/**
|
|
5074
|
+
* Default render of the scheduled-export dialog's subject field.
|
|
5075
|
+
* Props-driven — reads no context. The default dialog and {@link ScheduledEmailDialogSubject}
|
|
5076
|
+
* render it with {@link useScheduledEmailDialogSubjectProps}.
|
|
5077
|
+
*
|
|
5078
|
+
* @alpha
|
|
5079
|
+
*/
|
|
5080
|
+
export declare function DefaultScheduledEmailDialogSubject(props: IScheduledEmailDialogSubjectProps): ReactElement;
|
|
5081
|
+
|
|
4818
5082
|
/**
|
|
4819
5083
|
* The "Time zone" section of the scheduled-email dialog's General tab. Unlike the
|
|
4820
5084
|
* dashboard-settings timezone picker, the dropdown offers no browser-detected option — the
|
|
@@ -4831,6 +5095,15 @@ export declare function DefaultScheduledEmailDialogRecipients(props: IScheduledE
|
|
|
4831
5095
|
*/
|
|
4832
5096
|
export declare function DefaultScheduledEmailDialogTimezone({ isWidget, selection, defaultResolvedTimezone, onTimezoneChange }: IScheduledEmailDialogTimezoneProps): JSX.Element;
|
|
4833
5097
|
|
|
5098
|
+
/**
|
|
5099
|
+
* Default render of the scheduled-export dialog's widget-attachments field.
|
|
5100
|
+
* Props-driven — reads no context. The default dialog and {@link ScheduledEmailDialogWidgetAttachments}
|
|
5101
|
+
* render it with {@link useScheduledEmailDialogWidgetAttachmentsProps}.
|
|
5102
|
+
*
|
|
5103
|
+
* @alpha
|
|
5104
|
+
*/
|
|
5105
|
+
export declare function DefaultScheduledEmailDialogWidgetAttachments(props: IScheduledEmailDialogWidgetAttachmentsProps): ReactElement;
|
|
5106
|
+
|
|
4834
5107
|
/**
|
|
4835
5108
|
* @alpha
|
|
4836
5109
|
*/
|
|
@@ -5691,32 +5964,11 @@ export declare type FilterBarMeasureValueFilterIndexed = {
|
|
|
5691
5964
|
*/
|
|
5692
5965
|
export declare type FilterBarRenderingMode = "default" | "hidden";
|
|
5693
5966
|
|
|
5694
|
-
|
|
5695
|
-
* Gets {@link IDashboardFilter} items for filters specified as {@link @gooddata/sdk-backend-spi#FilterContextItem} instances.
|
|
5696
|
-
*
|
|
5697
|
-
* @param filterContextItems - filter context items to get filters for
|
|
5698
|
-
* @param dateDataSet - date data set to define {@link @gooddata/sdk-model#IDateFilter}
|
|
5699
|
-
* @public
|
|
5700
|
-
*/
|
|
5701
|
-
export declare function filterContextItemsToDashboardFiltersByDateDataSet(filterContextItems: FilterContextItem[], dateDataSet: ObjRef): IDashboardFilter[];
|
|
5967
|
+
export { filterContextItemsToDashboardFiltersByDateDataSet }
|
|
5702
5968
|
|
|
5703
|
-
|
|
5704
|
-
* Gets {@link IDashboardFilter} items for filters specified as {@link @gooddata/sdk-backend-spi#FilterContextItem} instances.
|
|
5705
|
-
*
|
|
5706
|
-
* @param filterContextItems - filter context items to get filters for
|
|
5707
|
-
* @param widget - widget to use to get dateDataSet for date filters
|
|
5708
|
-
* @public
|
|
5709
|
-
*/
|
|
5710
|
-
export declare function filterContextItemsToDashboardFiltersByRichTextWidget(filterContextItems: FilterContextItem[], widget?: Partial<IFilterableWidget>): IDashboardFilter[];
|
|
5969
|
+
export { filterContextItemsToDashboardFiltersByRichTextWidget }
|
|
5711
5970
|
|
|
5712
|
-
|
|
5713
|
-
* Gets {@link IDashboardFilter} items for filters specified as {@link @gooddata/sdk-backend-spi#FilterContextItem} instances.
|
|
5714
|
-
*
|
|
5715
|
-
* @param filterContextItems - filter context items to get filters for
|
|
5716
|
-
* @param widget - widget to use to get dateDataSet for date filters
|
|
5717
|
-
* @public
|
|
5718
|
-
*/
|
|
5719
|
-
export declare function filterContextItemsToDashboardFiltersByWidget(filterContextItems: FilterContextItem[], widget?: Partial<IFilterableWidget>): IDashboardFilter[];
|
|
5971
|
+
export { filterContextItemsToDashboardFiltersByWidget }
|
|
5720
5972
|
|
|
5721
5973
|
/**
|
|
5722
5974
|
* @alpha
|
|
@@ -5795,24 +6047,9 @@ export declare type FilterContextState = {
|
|
|
5795
6047
|
defaultFilterOverrides?: FilterContextItem[];
|
|
5796
6048
|
};
|
|
5797
6049
|
|
|
5798
|
-
|
|
5799
|
-
* Gets {@link IDashboardFilter} items for filters specified in given filterContext in relation to the
|
|
5800
|
-
* given dateDataSet.
|
|
5801
|
-
*
|
|
5802
|
-
* @param filterContext - filter context to get filters for
|
|
5803
|
-
* @param dateDataSet - widget to use to get dateDataSet for date filters
|
|
5804
|
-
* @public
|
|
5805
|
-
*/
|
|
5806
|
-
export declare function filterContextToDashboardFiltersByDateDataSet(filterContext: IFilterContextDefinition | IFilterContext | ITempFilterContext | undefined, dateDataSet: ObjRef): IDashboardFilter[];
|
|
6050
|
+
export { filterContextToDashboardFiltersByDateDataSet }
|
|
5807
6051
|
|
|
5808
|
-
|
|
5809
|
-
* Gets {@link IDashboardFilter} items for filters specified in given filterContext in relation to the given widget.
|
|
5810
|
-
*
|
|
5811
|
-
* @param filterContext - filter context to get filters for
|
|
5812
|
-
* @param widget - widget to use to get dateDataSet for date filters
|
|
5813
|
-
* @public
|
|
5814
|
-
*/
|
|
5815
|
-
export declare function filterContextToDashboardFiltersByWidget(filterContext: IFilterContextDefinition | IFilterContext | ITempFilterContext | undefined, widget: IWidgetDefinition): IDashboardFilter[];
|
|
6052
|
+
export { filterContextToDashboardFiltersByWidget }
|
|
5816
6053
|
|
|
5817
6054
|
/**
|
|
5818
6055
|
* @alpha
|
|
@@ -6866,6 +7103,22 @@ export declare interface IAlertingDialogFiltersProps extends IAutomationDialogFi
|
|
|
6866
7103
|
disableDateFilters: boolean;
|
|
6867
7104
|
}
|
|
6868
7105
|
|
|
7106
|
+
/**
|
|
7107
|
+
* Props of {@link AlertingDialogFormFieldGroup}.
|
|
7108
|
+
*
|
|
7109
|
+
* @alpha
|
|
7110
|
+
*/
|
|
7111
|
+
export declare interface IAlertingDialogFormFieldGroupProps {
|
|
7112
|
+
/**
|
|
7113
|
+
* The group heading in the label column — "When" (the condition) and "Do" (the action) in the default dialog.
|
|
7114
|
+
*/
|
|
7115
|
+
label: ReactNode;
|
|
7116
|
+
/**
|
|
7117
|
+
* The field rows of the group — {@link AlertingDialogMeasure} and its siblings.
|
|
7118
|
+
*/
|
|
7119
|
+
children: ReactNode;
|
|
7120
|
+
}
|
|
7121
|
+
|
|
6869
7122
|
/**
|
|
6870
7123
|
* Props of the default alerting dialog's granularity field (anomaly detection).
|
|
6871
7124
|
*
|
|
@@ -7055,6 +7308,51 @@ export declare interface IAlertingDialogSensitivityProps {
|
|
|
7055
7308
|
closeOnParentScroll?: boolean;
|
|
7056
7309
|
}
|
|
7057
7310
|
|
|
7311
|
+
/**
|
|
7312
|
+
* Props of {@link AlertingDialogShell}.
|
|
7313
|
+
*
|
|
7314
|
+
* @alpha
|
|
7315
|
+
*/
|
|
7316
|
+
export declare interface IAlertingDialogShellProps extends Pick<IAlertingDialogProps, "onCancel" | "onDeleteSuccess" | "onDeleteError"> {
|
|
7317
|
+
/**
|
|
7318
|
+
* The dialog's single submit — `submit` of the caller's {@link useAlertSubmit} instance. Drives the
|
|
7319
|
+
* footer's submit button and the Enter key on it. The shell does not own the submit hook, so a
|
|
7320
|
+
* caller's own Enter handler or button can share the same instance. Create the hook instance only
|
|
7321
|
+
* once the dialog context reports `isLoading: false`.
|
|
7322
|
+
*/
|
|
7323
|
+
onSubmit: () => void;
|
|
7324
|
+
/**
|
|
7325
|
+
* `isSaving` of the same {@link useAlertSubmit} instance: disables submit and Delete and shows the
|
|
7326
|
+
* footer's progress indicator.
|
|
7327
|
+
*/
|
|
7328
|
+
isSaving: boolean;
|
|
7329
|
+
/**
|
|
7330
|
+
* Header and action-bar overrides — the Level 1 slot contract ({@link IAlertingDialogSlots.Header},
|
|
7331
|
+
* {@link IAlertingDialogSlots.ActionBar}): each slot receives `{ Default, defaultProps }`, where
|
|
7332
|
+
* `defaultProps` are the shell's live values (the header's `onCancel` and initial-focus `ref`; the
|
|
7333
|
+
* action bar's `onSubmit`, `isSaving`, `onDelete`). Slot components need a stable reference identity —
|
|
7334
|
+
* see {@link @gooddata/sdk-ui-kit#ISlotProps}. The body regions have no slot here: place their blocks
|
|
7335
|
+
* ({@link AlertingDialogFilters} and siblings) as children instead.
|
|
7336
|
+
*/
|
|
7337
|
+
slots?: Pick<IAlertingDialogSlots, "Header" | "ActionBar">;
|
|
7338
|
+
/**
|
|
7339
|
+
* Rendered first inside the dialog's scrollable content area, above `children`.
|
|
7340
|
+
*/
|
|
7341
|
+
topContent?: ReactNode;
|
|
7342
|
+
/**
|
|
7343
|
+
* Rendered last inside the scrollable content area, below `children` and the dialog's warning and
|
|
7344
|
+
* validation messages.
|
|
7345
|
+
*/
|
|
7346
|
+
bottomContent?: ReactNode;
|
|
7347
|
+
/**
|
|
7348
|
+
* The body: the regions and fields, in the caller's order — {@link AlertingDialogFilters},
|
|
7349
|
+
* {@link AlertingDialogFormFieldGroup} with the condition and action blocks, and so on. Not mounted
|
|
7350
|
+
* while `useAlertingDialogContext().isLoading` is true (the shell shows its loading skeleton) or while
|
|
7351
|
+
* the stale-filters confirmation step is shown.
|
|
7352
|
+
*/
|
|
7353
|
+
children?: ReactNode;
|
|
7354
|
+
}
|
|
7355
|
+
|
|
7058
7356
|
/**
|
|
7059
7357
|
* Section-level overrides of the default alerting dialog.
|
|
7060
7358
|
*
|
|
@@ -7226,6 +7524,18 @@ export declare interface IAlertingManagementDialogContextValue {
|
|
|
7226
7524
|
automationsInvalidationId?: number;
|
|
7227
7525
|
isEmbedded: boolean;
|
|
7228
7526
|
enableAccessibilityMode: boolean;
|
|
7527
|
+
/**
|
|
7528
|
+
* Alerts visible in the management dialog, scoped to the current dashboard context.
|
|
7529
|
+
*/
|
|
7530
|
+
automations: IAutomationMetadataObject[];
|
|
7531
|
+
/**
|
|
7532
|
+
* True while the automation list is still loading.
|
|
7533
|
+
*
|
|
7534
|
+
* The automations load only — deliberately narrower than the scheduled-email management
|
|
7535
|
+
* context's flag, which also folds in a widget-filters load that has no bearing on a
|
|
7536
|
+
* management list.
|
|
7537
|
+
*/
|
|
7538
|
+
isLoading: boolean;
|
|
7229
7539
|
getWidgetByRef: (ref: ObjRef | undefined) => IWidget | undefined;
|
|
7230
7540
|
getInsightByWidgetRef: (ref: ObjRef | undefined) => IInsight | undefined;
|
|
7231
7541
|
pauseAlert(alert: IAutomationMetadataObject): Promise<IAutomationMetadataObject>;
|
|
@@ -9917,12 +10227,41 @@ export declare interface IDashboardCustomComponentProps {
|
|
|
9917
10227
|
* @alpha
|
|
9918
10228
|
*/
|
|
9919
10229
|
ScheduledEmailManagementDialogComponent?: CustomScheduledEmailManagementDialogComponent;
|
|
10230
|
+
/**
|
|
10231
|
+
* Specify component to decorate the data the scheduled email management dialog reads.
|
|
10232
|
+
*
|
|
10233
|
+
* Rendered between the connector-provided management dialog context and the resolved
|
|
10234
|
+
* management dialog component; see `CustomScheduledEmailManagementDialogContextDecoratorComponent`
|
|
10235
|
+
* for the contract and an example.
|
|
10236
|
+
*
|
|
10237
|
+
* @alpha
|
|
10238
|
+
*/
|
|
10239
|
+
ScheduledEmailManagementDialogContextDecoratorComponent?: CustomScheduledEmailManagementDialogContextDecoratorComponent;
|
|
9920
10240
|
/**
|
|
9921
10241
|
* Specify component to use for rendering the alerting management dialog.
|
|
9922
10242
|
*
|
|
9923
10243
|
* @alpha
|
|
9924
10244
|
*/
|
|
9925
10245
|
AlertingManagementDialogComponent?: CustomAlertingManagementDialogComponent;
|
|
10246
|
+
/**
|
|
10247
|
+
* Specify component to decorate the data the alerting management dialog reads.
|
|
10248
|
+
*
|
|
10249
|
+
* Rendered between the connector-provided management dialog context and the resolved
|
|
10250
|
+
* management dialog component; see `CustomAlertingManagementDialogContextDecoratorComponent`
|
|
10251
|
+
* for the contract and an example.
|
|
10252
|
+
*
|
|
10253
|
+
* @alpha
|
|
10254
|
+
*/
|
|
10255
|
+
AlertingManagementDialogContextDecoratorComponent?: CustomAlertingManagementDialogContextDecoratorComponent;
|
|
10256
|
+
/**
|
|
10257
|
+
* Specify component to decorate the data the automation dialogs' shared context carries.
|
|
10258
|
+
*
|
|
10259
|
+
* Rendered once per dialog tree, directly inside each connector-provided automations context;
|
|
10260
|
+
* see `CustomAutomationsContextDecoratorComponent` for the contract and an example.
|
|
10261
|
+
*
|
|
10262
|
+
* @alpha
|
|
10263
|
+
*/
|
|
10264
|
+
AutomationsContextDecoratorComponent?: CustomAutomationsContextDecoratorComponent;
|
|
9926
10265
|
/**
|
|
9927
10266
|
* Specify component to use for rendering the alerting dialog.
|
|
9928
10267
|
*
|
|
@@ -11259,9 +11598,10 @@ export declare interface IDashboardExtensionProps extends IDashboardEventing, ID
|
|
|
11259
11598
|
|
|
11260
11599
|
/**
|
|
11261
11600
|
* Supported dashboard filter type.
|
|
11601
|
+
*
|
|
11262
11602
|
* @public
|
|
11263
11603
|
*/
|
|
11264
|
-
export declare type IDashboardFilter =
|
|
11604
|
+
export declare type IDashboardFilter = IDashboardFilter_2;
|
|
11265
11605
|
|
|
11266
11606
|
/**
|
|
11267
11607
|
* This event is emitted after dashboard selection filters have been reset.
|
|
@@ -19013,59 +19353,132 @@ export declare interface IScheduledEmailDialogContextValue {
|
|
|
19013
19353
|
}
|
|
19014
19354
|
|
|
19015
19355
|
/**
|
|
19016
|
-
* Props of the
|
|
19017
|
-
*
|
|
19018
|
-
* @remarks
|
|
19019
|
-
* The region is bimodal: whenever `filtersByTab` is present with more than one tab, the by-tab
|
|
19020
|
-
* members (`filtersByTab` and the `*ByTab` parameter family) drive rendering and the flat
|
|
19021
|
-
* handlers are unused; otherwise the flat members drive it and the by-tab members are unused.
|
|
19022
|
-
* `defaultProps` always carries both families so a wrap stays faithful in either mode.
|
|
19356
|
+
* Props of the scheduled-export dialog's dashboard-attachments field.
|
|
19023
19357
|
*
|
|
19024
19358
|
* @alpha
|
|
19025
19359
|
*/
|
|
19026
|
-
export declare interface
|
|
19360
|
+
export declare interface IScheduledEmailDialogDashboardAttachmentsProps {
|
|
19027
19361
|
/**
|
|
19028
|
-
*
|
|
19029
|
-
* filters.
|
|
19362
|
+
* The selected export formats.
|
|
19030
19363
|
*/
|
|
19031
|
-
|
|
19364
|
+
selectedAttachments: DashboardAttachmentType[];
|
|
19032
19365
|
/**
|
|
19033
|
-
*
|
|
19034
|
-
*
|
|
19035
|
-
*
|
|
19036
|
-
* draft's export definitions out of sync with the toggle.
|
|
19366
|
+
* Dashboard filters the export is scoped to; the control passes them back as the second
|
|
19367
|
+
* argument of every {@link IScheduledEmailDialogDashboardAttachmentsProps.onDashboardAttachmentsChange}
|
|
19368
|
+
* call.
|
|
19037
19369
|
*/
|
|
19038
|
-
|
|
19370
|
+
dashboardFilters?: FilterContextItem[];
|
|
19039
19371
|
/**
|
|
19040
|
-
*
|
|
19041
|
-
*
|
|
19372
|
+
* When true and at least one attachment is selected, the control shows the notice that
|
|
19373
|
+
* exports do not reflect cross-filtering.
|
|
19042
19374
|
*/
|
|
19043
|
-
|
|
19375
|
+
isCrossFiltering: boolean;
|
|
19044
19376
|
/**
|
|
19045
|
-
*
|
|
19046
|
-
*
|
|
19377
|
+
* Replaces the selected dashboard export formats. Called with the complete new selection and
|
|
19378
|
+
* the current {@link IScheduledEmailDialogDashboardAttachmentsProps.dashboardFilters}.
|
|
19047
19379
|
*/
|
|
19048
|
-
|
|
19380
|
+
onDashboardAttachmentsChange: (formats: DashboardAttachmentType[], filters?: FilterContextItem[]) => void;
|
|
19049
19381
|
/**
|
|
19050
|
-
*
|
|
19382
|
+
* XLSX export settings shown in the attachment's settings editor.
|
|
19051
19383
|
*/
|
|
19052
|
-
|
|
19384
|
+
xlsxSettings: IExportDefinitionVisualizationObjectSettings;
|
|
19053
19385
|
/**
|
|
19054
|
-
*
|
|
19386
|
+
* Sets the XLSX export settings.
|
|
19055
19387
|
*/
|
|
19056
|
-
|
|
19388
|
+
onXlsxSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|
|
19057
19389
|
/**
|
|
19058
|
-
*
|
|
19390
|
+
* Whether the slide-based formats (PPTX, PDF slides) are offered; when false they are
|
|
19391
|
+
* excluded from the add-attachment options.
|
|
19059
19392
|
*/
|
|
19060
|
-
|
|
19393
|
+
isSlidesExportEnabled: boolean;
|
|
19061
19394
|
/**
|
|
19062
|
-
*
|
|
19395
|
+
* Export templates offered in the template picker of the slide-based formats.
|
|
19063
19396
|
*/
|
|
19064
|
-
|
|
19397
|
+
exportTemplates?: IExportTemplate[];
|
|
19065
19398
|
/**
|
|
19066
|
-
*
|
|
19399
|
+
* The template chosen per slide-based format; undefined where the default template applies.
|
|
19067
19400
|
*/
|
|
19068
|
-
|
|
19401
|
+
slidesTemplateIds?: {
|
|
19402
|
+
PPTX?: string;
|
|
19403
|
+
PDF_SLIDES?: string;
|
|
19404
|
+
PDF?: string;
|
|
19405
|
+
};
|
|
19406
|
+
/**
|
|
19407
|
+
* Sets the export template of one slide-based format.
|
|
19408
|
+
*/
|
|
19409
|
+
onSlidesTemplateIdChange?: (templateId: string | undefined, format: "PPTX" | "PDF_SLIDES" | "PDF") => void;
|
|
19410
|
+
}
|
|
19411
|
+
|
|
19412
|
+
/**
|
|
19413
|
+
* Props of the scheduled-export dialog's evaluation-mode checkbox.
|
|
19414
|
+
*
|
|
19415
|
+
* @alpha
|
|
19416
|
+
*/
|
|
19417
|
+
export declare interface IScheduledEmailDialogEvaluationModeProps {
|
|
19418
|
+
/**
|
|
19419
|
+
* Whether the evaluation mode is SHARED.
|
|
19420
|
+
*/
|
|
19421
|
+
isShared: boolean;
|
|
19422
|
+
/**
|
|
19423
|
+
* Switches between a shared and a per-recipient evaluation of the export.
|
|
19424
|
+
*/
|
|
19425
|
+
onChange: (isShared: boolean) => void;
|
|
19426
|
+
}
|
|
19427
|
+
|
|
19428
|
+
/**
|
|
19429
|
+
* Props of the default scheduled email dialog's filters region (the Filters tab content).
|
|
19430
|
+
*
|
|
19431
|
+
* @remarks
|
|
19432
|
+
* The region is bimodal: whenever `filtersByTab` is present with more than one tab, the by-tab
|
|
19433
|
+
* members (`filtersByTab` and the `*ByTab` parameter family) drive rendering and the flat
|
|
19434
|
+
* handlers are unused; otherwise the flat members drive it and the by-tab members are unused.
|
|
19435
|
+
* `defaultProps` always carries both families so a wrap stays faithful in either mode.
|
|
19436
|
+
*
|
|
19437
|
+
* @alpha
|
|
19438
|
+
*/
|
|
19439
|
+
export declare interface IScheduledEmailDialogFiltersProps extends IAutomationDialogFiltersProps {
|
|
19440
|
+
/**
|
|
19441
|
+
* Whether the schedule stores its own filters instead of using the latest saved dashboard
|
|
19442
|
+
* filters.
|
|
19443
|
+
*/
|
|
19444
|
+
storeFilters: boolean;
|
|
19445
|
+
/**
|
|
19446
|
+
* Toggles filter (and parameter) persistence. The current filters must be passed back —
|
|
19447
|
+
* flat mode as `(value, selectedFilters, undefined)`, by-tab mode as
|
|
19448
|
+
* `(value, undefined, editedFiltersByTab)`; calling it with the value alone leaves the
|
|
19449
|
+
* draft's export definitions out of sync with the toggle.
|
|
19450
|
+
*/
|
|
19451
|
+
onStoreFiltersChange: (value: boolean, filters?: FilterContextItem[], filtersByTab?: Record<string, FilterContextItem[]>) => void;
|
|
19452
|
+
/**
|
|
19453
|
+
* Whether the schedule targets the whole dashboard (shows the store-filters checkbox)
|
|
19454
|
+
* rather than a single widget.
|
|
19455
|
+
*/
|
|
19456
|
+
isDashboardAutomation: boolean;
|
|
19457
|
+
/**
|
|
19458
|
+
* Filters structured per dashboard tab; when present with more than one tab, the region
|
|
19459
|
+
* renders in by-tab mode.
|
|
19460
|
+
*/
|
|
19461
|
+
filtersByTab?: IAutomationFiltersTab[];
|
|
19462
|
+
/**
|
|
19463
|
+
* Edited filter selection per tab.
|
|
19464
|
+
*/
|
|
19465
|
+
editedFiltersByTab?: Record<string, FilterContextItem[]>;
|
|
19466
|
+
/**
|
|
19467
|
+
* Replaces a tab's filter selection with the complete updated record.
|
|
19468
|
+
*/
|
|
19469
|
+
onFiltersByTabChange?: (filtersByTab: Record<string, FilterContextItem[]>) => void;
|
|
19470
|
+
/**
|
|
19471
|
+
* Parameter chips per tab (by-tab mode).
|
|
19472
|
+
*/
|
|
19473
|
+
parametersByTab?: Record<string, IAutomationParameter[]>;
|
|
19474
|
+
/**
|
|
19475
|
+
* Addable workspace parameters per tab (by-tab mode).
|
|
19476
|
+
*/
|
|
19477
|
+
availableParametersByTab?: Record<string, IAutomationParameter[]>;
|
|
19478
|
+
/**
|
|
19479
|
+
* Called when a parameter is added in a tab section (by-tab mode).
|
|
19480
|
+
*/
|
|
19481
|
+
onParameterAddByTab?: (tabId: string, ref: IdentifierRef) => void;
|
|
19069
19482
|
/**
|
|
19070
19483
|
* Called when a parameter chip's value is edited in a tab section (by-tab mode).
|
|
19071
19484
|
*/
|
|
@@ -19096,6 +19509,22 @@ export declare interface IScheduledEmailDialogHeaderProps extends IAutomationDia
|
|
|
19096
19509
|
onBack?: () => void;
|
|
19097
19510
|
}
|
|
19098
19511
|
|
|
19512
|
+
/**
|
|
19513
|
+
* Props of the scheduled-export dialog's message field.
|
|
19514
|
+
*
|
|
19515
|
+
* @alpha
|
|
19516
|
+
*/
|
|
19517
|
+
export declare interface IScheduledEmailDialogMessageProps {
|
|
19518
|
+
/**
|
|
19519
|
+
* The e-mail message text.
|
|
19520
|
+
*/
|
|
19521
|
+
value: string;
|
|
19522
|
+
/**
|
|
19523
|
+
* Sets the e-mail message; `isValid` is the field's own length verdict.
|
|
19524
|
+
*/
|
|
19525
|
+
onChange: (value: string, isValid: boolean) => void;
|
|
19526
|
+
}
|
|
19527
|
+
|
|
19099
19528
|
/**
|
|
19100
19529
|
* @alpha
|
|
19101
19530
|
*/
|
|
@@ -19232,6 +19661,120 @@ export declare interface IScheduledEmailDialogRecipientsProps extends IAutomatio
|
|
|
19232
19661
|
onKeyDownSubmit: (e: KeyboardEvent_2) => void;
|
|
19233
19662
|
}
|
|
19234
19663
|
|
|
19664
|
+
/**
|
|
19665
|
+
* Props of the scheduled-export dialog's recurrence field.
|
|
19666
|
+
*
|
|
19667
|
+
* @alpha
|
|
19668
|
+
*/
|
|
19669
|
+
export declare interface IScheduledEmailDialogRecurrenceProps {
|
|
19670
|
+
/**
|
|
19671
|
+
* First-run date the cron editor is anchored to.
|
|
19672
|
+
*/
|
|
19673
|
+
startDate: Date;
|
|
19674
|
+
/**
|
|
19675
|
+
* The draft's cron expression.
|
|
19676
|
+
*/
|
|
19677
|
+
cronExpression: string;
|
|
19678
|
+
/**
|
|
19679
|
+
* Human-readable description of the cron expression, when the draft carries one.
|
|
19680
|
+
*/
|
|
19681
|
+
cronDescription?: string;
|
|
19682
|
+
/**
|
|
19683
|
+
* Display-only timezone label shown in the occurrence description.
|
|
19684
|
+
*/
|
|
19685
|
+
timezone: string;
|
|
19686
|
+
/**
|
|
19687
|
+
* Date format used by the first-run date picker.
|
|
19688
|
+
*/
|
|
19689
|
+
dateFormat: string;
|
|
19690
|
+
/**
|
|
19691
|
+
* Locale of the recurrence editor.
|
|
19692
|
+
*/
|
|
19693
|
+
locale: string;
|
|
19694
|
+
/**
|
|
19695
|
+
* First day of the week in the date picker.
|
|
19696
|
+
*/
|
|
19697
|
+
weekStart: WeekStart;
|
|
19698
|
+
/**
|
|
19699
|
+
* Whether the hourly recurrence option is offered.
|
|
19700
|
+
*/
|
|
19701
|
+
allowHourlyRecurrence: boolean;
|
|
19702
|
+
/**
|
|
19703
|
+
* Hides GoodData-specific copy when white-labeled.
|
|
19704
|
+
*/
|
|
19705
|
+
isWhiteLabeled: boolean;
|
|
19706
|
+
/**
|
|
19707
|
+
* Closes the recurrence dropdowns when the dialog body scrolls.
|
|
19708
|
+
*/
|
|
19709
|
+
closeDropdownsOnParentScroll: boolean;
|
|
19710
|
+
/**
|
|
19711
|
+
* Sets the cron expression and first run; `isValid` is the recurrence form's own verdict.
|
|
19712
|
+
*/
|
|
19713
|
+
onChange: (cronExpression: string, startDate: Date | null, isValid: boolean) => void;
|
|
19714
|
+
/**
|
|
19715
|
+
* Key-down handler; the dialog submits on Enter through it.
|
|
19716
|
+
*/
|
|
19717
|
+
onKeyDownSubmit: (event: KeyboardEvent_2) => void;
|
|
19718
|
+
}
|
|
19719
|
+
|
|
19720
|
+
/**
|
|
19721
|
+
* Props of {@link ScheduledEmailDialogShell}.
|
|
19722
|
+
*
|
|
19723
|
+
* @alpha
|
|
19724
|
+
*/
|
|
19725
|
+
export declare interface IScheduledEmailDialogShellProps extends Pick<IScheduledEmailDialogProps, "onCancel" | "onBack" | "onDeleteSuccess" | "onDeleteError"> {
|
|
19726
|
+
/**
|
|
19727
|
+
* The dialog's single save — `handleSaveScheduledEmail` of the caller's
|
|
19728
|
+
* {@link useSaveScheduledEmailToBackend} instance. Drives the footer's submit button, the Enter key on
|
|
19729
|
+
* it, and the header's Enter-to-submit. (Not the `onSubmit` observer of {@link IScheduledEmailDialogProps};
|
|
19730
|
+
* that one goes to the save hook.) The shell does not own the save hook, so the caller's own Enter
|
|
19731
|
+
* handlers — {@link useScheduledEmailSubmitOnEnter} — share the same instance. Create the hook instance
|
|
19732
|
+
* only once the dialog context reports `isLoading: false`.
|
|
19733
|
+
*/
|
|
19734
|
+
onSubmit: () => void;
|
|
19735
|
+
/**
|
|
19736
|
+
* `isSavingScheduledEmail` of the same instance: disables submit and Delete and shows the footer's
|
|
19737
|
+
* progress indicator.
|
|
19738
|
+
*/
|
|
19739
|
+
isSaving: boolean;
|
|
19740
|
+
/**
|
|
19741
|
+
* `savingErrorMessage` of the same instance; shown as the body's error message, ahead of the form's
|
|
19742
|
+
* validation message.
|
|
19743
|
+
*/
|
|
19744
|
+
savingErrorMessage?: string;
|
|
19745
|
+
/**
|
|
19746
|
+
* Header, action-bar and Filters-tab overrides — the Level 1 slot contract
|
|
19747
|
+
* ({@link IScheduledEmailDialogSlots.Header}, {@link IScheduledEmailDialogSlots.ActionBar},
|
|
19748
|
+
* {@link IScheduledEmailDialogSlots.Filters}): each slot receives `{ Default, defaultProps }` with the
|
|
19749
|
+
* shell's live values. Slot components need a stable reference identity — see
|
|
19750
|
+
* {@link @gooddata/sdk-ui-kit#ISlotProps}. `Filters` is ignored when `filtersTabContent` is passed. The
|
|
19751
|
+
* General-tab regions have no slot here: place their blocks ({@link ScheduledEmailDialogDestination} and
|
|
19752
|
+
* siblings) as children instead.
|
|
19753
|
+
*/
|
|
19754
|
+
slots?: Pick<IScheduledEmailDialogSlots, "Header" | "ActionBar" | "Filters">;
|
|
19755
|
+
/**
|
|
19756
|
+
* Rendered first inside the dialog's scrollable content area, above the selected tab's content.
|
|
19757
|
+
*/
|
|
19758
|
+
topContent?: ReactNode;
|
|
19759
|
+
/**
|
|
19760
|
+
* Rendered last inside the scrollable content area, below the selected tab's content.
|
|
19761
|
+
*/
|
|
19762
|
+
bottomContent?: ReactNode;
|
|
19763
|
+
/**
|
|
19764
|
+
* The General tab's content: the regions and fields, in the caller's order. Rendered only while the
|
|
19765
|
+
* General tab is selected; not mounted while `useScheduledEmailDialogContext().isLoading` is true (the
|
|
19766
|
+
* shell shows its loading skeleton — on scheduled email the ordinary path while a widget export's
|
|
19767
|
+
* filters load) or while the stale-filters confirmation step is shown.
|
|
19768
|
+
*/
|
|
19769
|
+
children?: ReactNode;
|
|
19770
|
+
/**
|
|
19771
|
+
* The Filters tab's content. Defaults to the dialog's filters region ({@link DefaultScheduledEmailDialogFilters}
|
|
19772
|
+
* with {@link useScheduledEmailDialogFiltersProps}, or the `Filters` slot). Rendered only while the Filters
|
|
19773
|
+
* tab is selected. An explicit `null` counts as provided and renders an empty Filters tab.
|
|
19774
|
+
*/
|
|
19775
|
+
filtersTabContent?: ReactNode;
|
|
19776
|
+
}
|
|
19777
|
+
|
|
19235
19778
|
/**
|
|
19236
19779
|
* Section-level overrides of the default scheduled email dialog.
|
|
19237
19780
|
*
|
|
@@ -19304,6 +19847,34 @@ export declare interface IScheduledEmailDialogSlots {
|
|
|
19304
19847
|
ActionBar?: ComponentType<ISlotProps<IAutomationDialogActionBarProps>>;
|
|
19305
19848
|
}
|
|
19306
19849
|
|
|
19850
|
+
/**
|
|
19851
|
+
* Props of the scheduled-export dialog's subject field.
|
|
19852
|
+
*
|
|
19853
|
+
* @alpha
|
|
19854
|
+
*/
|
|
19855
|
+
export declare interface IScheduledEmailDialogSubjectProps {
|
|
19856
|
+
/**
|
|
19857
|
+
* Dashboard title, used as the subject placeholder (truncated to the title max length).
|
|
19858
|
+
*/
|
|
19859
|
+
dashboardTitle: string;
|
|
19860
|
+
/**
|
|
19861
|
+
* The export draft; the field renders `details.subject`.
|
|
19862
|
+
*/
|
|
19863
|
+
editedAutomation: IAutomationMetadataObjectDefinition;
|
|
19864
|
+
/**
|
|
19865
|
+
* Disables submit-on-Enter while the dialog is not submittable.
|
|
19866
|
+
*/
|
|
19867
|
+
isSubmitDisabled?: boolean;
|
|
19868
|
+
/**
|
|
19869
|
+
* Sets the e-mail subject; `isValid` is the field's own length verdict.
|
|
19870
|
+
*/
|
|
19871
|
+
onChange: (value: string, isValid: boolean) => void;
|
|
19872
|
+
/**
|
|
19873
|
+
* Called on Enter when submit is not disabled.
|
|
19874
|
+
*/
|
|
19875
|
+
onKeyDownSubmit: () => void;
|
|
19876
|
+
}
|
|
19877
|
+
|
|
19307
19878
|
/**
|
|
19308
19879
|
* Props of the default scheduled email dialog's "Time zone" section (the export-content timezone
|
|
19309
19880
|
* picker on the General tab; unrelated to the schedule cron timezone).
|
|
@@ -19331,6 +19902,80 @@ export declare interface IScheduledEmailDialogTimezoneProps {
|
|
|
19331
19902
|
onTimezoneChange: (timezoneId: string | undefined) => void;
|
|
19332
19903
|
}
|
|
19333
19904
|
|
|
19905
|
+
/**
|
|
19906
|
+
* Props of the scheduled-export dialog's widget-attachments field.
|
|
19907
|
+
*
|
|
19908
|
+
* @alpha
|
|
19909
|
+
*/
|
|
19910
|
+
export declare interface IScheduledEmailDialogWidgetAttachmentsProps {
|
|
19911
|
+
/**
|
|
19912
|
+
* The selected export formats.
|
|
19913
|
+
*/
|
|
19914
|
+
selectedAttachments: WidgetAttachmentType[];
|
|
19915
|
+
/**
|
|
19916
|
+
* Replaces the selected widget export formats with the complete new selection.
|
|
19917
|
+
*/
|
|
19918
|
+
onWidgetAttachmentsChange: (formats: WidgetAttachmentType[]) => void;
|
|
19919
|
+
/**
|
|
19920
|
+
* XLSX export settings shown in the attachment's settings editor.
|
|
19921
|
+
*/
|
|
19922
|
+
xlsxSettings: IExportDefinitionVisualizationObjectSettings;
|
|
19923
|
+
/**
|
|
19924
|
+
* Sets the XLSX export settings.
|
|
19925
|
+
*/
|
|
19926
|
+
onXlsxSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|
|
19927
|
+
/**
|
|
19928
|
+
* Tabular-PDF export settings shown in the attachment's settings editor.
|
|
19929
|
+
*/
|
|
19930
|
+
pdfSettings: IExportDefinitionVisualizationObjectSettings;
|
|
19931
|
+
/**
|
|
19932
|
+
* Sets the tabular-PDF export settings.
|
|
19933
|
+
*/
|
|
19934
|
+
onPdfSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|
|
19935
|
+
/**
|
|
19936
|
+
* CSV export settings shown in the attachment's settings editor.
|
|
19937
|
+
*/
|
|
19938
|
+
csvSettings: IExportDefinitionVisualizationObjectSettings;
|
|
19939
|
+
/**
|
|
19940
|
+
* Sets the CSV export settings.
|
|
19941
|
+
*/
|
|
19942
|
+
onCsvSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|
|
19943
|
+
/**
|
|
19944
|
+
* Raw-CSV export settings shown in the attachment's settings editor.
|
|
19945
|
+
*/
|
|
19946
|
+
csvRawSettings: IExportDefinitionVisualizationObjectSettings;
|
|
19947
|
+
/**
|
|
19948
|
+
* Sets the raw-CSV export settings.
|
|
19949
|
+
*/
|
|
19950
|
+
onCsvRawSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|
|
19951
|
+
/**
|
|
19952
|
+
* Whether the slide-based formats (PPTX, PDF) are offered; when false they are excluded
|
|
19953
|
+
* from the add-attachment options.
|
|
19954
|
+
*/
|
|
19955
|
+
isSlidesExportEnabled: boolean;
|
|
19956
|
+
/**
|
|
19957
|
+
* When true, formats without an accessible rendering (PDF_TABULAR) are excluded from the
|
|
19958
|
+
* add-attachment options.
|
|
19959
|
+
*/
|
|
19960
|
+
isAccessibilityModeEnabled: boolean;
|
|
19961
|
+
/**
|
|
19962
|
+
* Export templates offered in the template picker of the slide-based formats.
|
|
19963
|
+
*/
|
|
19964
|
+
exportTemplates?: IExportTemplate[];
|
|
19965
|
+
/**
|
|
19966
|
+
* The template chosen per slide-based format; undefined where the default template applies.
|
|
19967
|
+
*/
|
|
19968
|
+
slidesTemplateIds?: {
|
|
19969
|
+
PPTX?: string;
|
|
19970
|
+
PDF_SLIDES?: string;
|
|
19971
|
+
PDF?: string;
|
|
19972
|
+
};
|
|
19973
|
+
/**
|
|
19974
|
+
* Sets the export template of one slide-based format.
|
|
19975
|
+
*/
|
|
19976
|
+
onSlidesTemplateIdChange?: (templateId: string | undefined, format: "PPTX" | "PDF_SLIDES" | "PDF") => void;
|
|
19977
|
+
}
|
|
19978
|
+
|
|
19334
19979
|
/**
|
|
19335
19980
|
* Sub-context for the scheduled-email management dialog.
|
|
19336
19981
|
* The connector hydrates this from dashboard state.
|
|
@@ -20335,7 +20980,7 @@ export declare const isDashboardExportToPptPresentationResolved: (obj: unknown)
|
|
|
20335
20980
|
*
|
|
20336
20981
|
* @alpha
|
|
20337
20982
|
*/
|
|
20338
|
-
export declare
|
|
20983
|
+
export declare const isDashboardFilter: typeof isDashboardFilter_2;
|
|
20339
20984
|
|
|
20340
20985
|
/**
|
|
20341
20986
|
* Tests whether the provided object is an instance of {@link DashboardFilterContextChanged}.
|
|
@@ -22972,6 +23617,47 @@ export declare interface IUseScheduledEmailDialogRecipientsPropsInput {
|
|
|
22972
23617
|
onKeyDownSubmit: (event: KeyboardEvent_2) => void;
|
|
22973
23618
|
}
|
|
22974
23619
|
|
|
23620
|
+
/**
|
|
23621
|
+
* Inputs of {@link useScheduledEmailDialogRecurrenceProps} that come from the dialog rather than its state.
|
|
23622
|
+
*
|
|
23623
|
+
* @alpha
|
|
23624
|
+
*/
|
|
23625
|
+
export declare interface IUseScheduledEmailDialogRecurrencePropsInput {
|
|
23626
|
+
/**
|
|
23627
|
+
* Key-down handler of the recurrence inputs; the dialog submits on Enter through it.
|
|
23628
|
+
*/
|
|
23629
|
+
onKeyDownSubmit: (event: KeyboardEvent_2) => void;
|
|
23630
|
+
}
|
|
23631
|
+
|
|
23632
|
+
/**
|
|
23633
|
+
* Inputs of {@link useScheduledEmailDialogSubjectProps} that come from the dialog rather than its state.
|
|
23634
|
+
*
|
|
23635
|
+
* @alpha
|
|
23636
|
+
*/
|
|
23637
|
+
export declare interface IUseScheduledEmailDialogSubjectPropsInput {
|
|
23638
|
+
/**
|
|
23639
|
+
* Called on Enter in the subject input when submit is not disabled.
|
|
23640
|
+
*/
|
|
23641
|
+
onKeyDownSubmit: () => void;
|
|
23642
|
+
}
|
|
23643
|
+
|
|
23644
|
+
/**
|
|
23645
|
+
* Inputs of {@link useScheduledEmailSubmitOnEnter} — the dialog's single save, from one
|
|
23646
|
+
* {@link useSaveScheduledEmailToBackend} instance.
|
|
23647
|
+
*
|
|
23648
|
+
* @alpha
|
|
23649
|
+
*/
|
|
23650
|
+
export declare interface IUseScheduledEmailSubmitOnEnterInput {
|
|
23651
|
+
/**
|
|
23652
|
+
* `handleSaveScheduledEmail` of the dialog's {@link useSaveScheduledEmailToBackend} instance.
|
|
23653
|
+
*/
|
|
23654
|
+
onSubmit: () => void;
|
|
23655
|
+
/**
|
|
23656
|
+
* `isSavingScheduledEmail` of the same instance; Enter does nothing while a save is in flight.
|
|
23657
|
+
*/
|
|
23658
|
+
isSaving: boolean;
|
|
23659
|
+
}
|
|
23660
|
+
|
|
22975
23661
|
/**
|
|
22976
23662
|
* @internal
|
|
22977
23663
|
*/
|
|
@@ -23002,6 +23688,39 @@ export declare interface IUseWidgetSelectionResult {
|
|
|
23002
23688
|
hasConfigPanelOpen: boolean;
|
|
23003
23689
|
}
|
|
23004
23690
|
|
|
23691
|
+
/**
|
|
23692
|
+
* What {@link useWorkspaceUsersSearch} returns.
|
|
23693
|
+
*
|
|
23694
|
+
* @alpha
|
|
23695
|
+
*/
|
|
23696
|
+
export declare interface IUseWorkspaceUsersSearchResult {
|
|
23697
|
+
/**
|
|
23698
|
+
* The current, not yet debounced, search string.
|
|
23699
|
+
*/
|
|
23700
|
+
search: string;
|
|
23701
|
+
/**
|
|
23702
|
+
* The workspace users of the last settled query; undefined until the first query settles.
|
|
23703
|
+
*/
|
|
23704
|
+
users: IWorkspaceUser[] | undefined;
|
|
23705
|
+
/**
|
|
23706
|
+
* The last query's error, if it failed.
|
|
23707
|
+
*/
|
|
23708
|
+
usersError: GoodDataSdkError | undefined;
|
|
23709
|
+
/**
|
|
23710
|
+
* True while the search debounce window or a query is open.
|
|
23711
|
+
*/
|
|
23712
|
+
isLoading: boolean;
|
|
23713
|
+
/**
|
|
23714
|
+
* Sets the search string; the query fires after a 300 ms debounce.
|
|
23715
|
+
*/
|
|
23716
|
+
onSearch: (search: string) => void;
|
|
23717
|
+
/**
|
|
23718
|
+
* Starts the first fetch — nothing loads on mount until this is called (wire it to the
|
|
23719
|
+
* control's open/focus). After an error it doubles as retry.
|
|
23720
|
+
*/
|
|
23721
|
+
onActivate: () => void;
|
|
23722
|
+
}
|
|
23723
|
+
|
|
23005
23724
|
/**
|
|
23006
23725
|
* Set of functions you can use to customize some aspects of the VisualizationSwitcher.
|
|
23007
23726
|
*
|
|
@@ -25677,6 +26396,20 @@ export declare function ScheduledEmailDialogActionBar(props: IScheduledEmailDial
|
|
|
25677
26396
|
*/
|
|
25678
26397
|
export declare const ScheduledEmailDialogContextProvider: Provider<IScheduledEmailDialogContextValue | undefined>;
|
|
25679
26398
|
|
|
26399
|
+
/**
|
|
26400
|
+
* The scheduled-export dialog's dashboard-attachments field, connected to the dialog's state.
|
|
26401
|
+
*
|
|
26402
|
+
* Renders {@link DefaultScheduledEmailDialogDashboardAttachments} with the props of
|
|
26403
|
+
* {@link useScheduledEmailDialogDashboardAttachmentsProps}; every prop passed here replaces the
|
|
26404
|
+
* hook's value for that prop wholesale. Renders nothing while
|
|
26405
|
+
* `useScheduledEmailDialogContext().isLoading` is true and when the dialog context has a `widget`
|
|
26406
|
+
* (a widget schedule renders {@link ScheduledEmailDialogWidgetAttachments} instead), the same
|
|
26407
|
+
* visibility the default dialog gives the field.
|
|
26408
|
+
*
|
|
26409
|
+
* @alpha
|
|
26410
|
+
*/
|
|
26411
|
+
export declare function ScheduledEmailDialogDashboardAttachments(props: Partial<IScheduledEmailDialogDashboardAttachmentsProps>): ReactElement;
|
|
26412
|
+
|
|
25680
26413
|
/**
|
|
25681
26414
|
* The scheduled-export dialog's destination region (the notification-channel select), connected to
|
|
25682
26415
|
* the dialog's state.
|
|
@@ -25689,6 +26422,20 @@ export declare const ScheduledEmailDialogContextProvider: Provider<IScheduledEma
|
|
|
25689
26422
|
*/
|
|
25690
26423
|
export declare function ScheduledEmailDialogDestination(overrides: Partial<IAutomationDialogDestinationProps>): JSX.Element;
|
|
25691
26424
|
|
|
26425
|
+
/**
|
|
26426
|
+
* The scheduled-export dialog's evaluation-mode checkbox, connected to the dialog's state.
|
|
26427
|
+
*
|
|
26428
|
+
* Renders {@link DefaultScheduledEmailDialogEvaluationMode} with the props of
|
|
26429
|
+
* {@link useScheduledEmailDialogEvaluationModeProps}; every prop passed here replaces the hook's
|
|
26430
|
+
* value for that prop wholesale. Renders nothing while
|
|
26431
|
+
* `useScheduledEmailDialogContext().isLoading` is true and while
|
|
26432
|
+
* `useAutomationsContext().features.enableAutomationEvaluationMode` is off, the same visibility the
|
|
26433
|
+
* default dialog gives the field.
|
|
26434
|
+
*
|
|
26435
|
+
* @alpha
|
|
26436
|
+
*/
|
|
26437
|
+
export declare function ScheduledEmailDialogEvaluationMode(props: Partial<IScheduledEmailDialogEvaluationModeProps>): ReactElement;
|
|
26438
|
+
|
|
25692
26439
|
/**
|
|
25693
26440
|
* The scheduled-export dialog's filters region (the filter and parameter chips, flat or per tab),
|
|
25694
26441
|
* connected to the dialog's state.
|
|
@@ -25731,6 +26478,19 @@ export declare type ScheduledEmailDialogHeaderDefaultProps = IScheduledEmailDial
|
|
|
25731
26478
|
ref?: Ref<HTMLInputElement>;
|
|
25732
26479
|
};
|
|
25733
26480
|
|
|
26481
|
+
/**
|
|
26482
|
+
* The scheduled-export dialog's message field, connected to the dialog's state.
|
|
26483
|
+
*
|
|
26484
|
+
* Renders {@link DefaultScheduledEmailDialogMessage} with the props of
|
|
26485
|
+
* {@link useScheduledEmailDialogMessageProps}; every prop passed here replaces the hook's value for
|
|
26486
|
+
* that prop wholesale. Renders nothing while `useScheduledEmailDialogContext().isLoading` is true
|
|
26487
|
+
* and for an in-platform notification channel (which has no e-mail message), the same visibility
|
|
26488
|
+
* the default dialog gives the field.
|
|
26489
|
+
*
|
|
26490
|
+
* @alpha
|
|
26491
|
+
*/
|
|
26492
|
+
export declare function ScheduledEmailDialogMessage(props: Partial<IScheduledEmailDialogMessageProps>): ReactElement;
|
|
26493
|
+
|
|
25734
26494
|
/**
|
|
25735
26495
|
* The scheduled-export dialog's recipients region, connected to the dialog's state.
|
|
25736
26496
|
*
|
|
@@ -25745,6 +26505,91 @@ export declare type ScheduledEmailDialogHeaderDefaultProps = IScheduledEmailDial
|
|
|
25745
26505
|
*/
|
|
25746
26506
|
export declare function ScheduledEmailDialogRecipients(props: Partial<IScheduledEmailDialogRecipientsProps>): JSX.Element;
|
|
25747
26507
|
|
|
26508
|
+
/**
|
|
26509
|
+
* The scheduled-export dialog's recurrence field, connected to the dialog's state.
|
|
26510
|
+
*
|
|
26511
|
+
* Renders {@link DefaultScheduledEmailDialogRecurrence} with the props of
|
|
26512
|
+
* {@link useScheduledEmailDialogRecurrenceProps}; every prop passed here replaces the hook's value
|
|
26513
|
+
* for that prop wholesale. Pass `onKeyDownSubmit` to submit on Enter from the recurrence inputs —
|
|
26514
|
+
* the default dialog passes its save action; without it Enter does nothing here. Renders nothing
|
|
26515
|
+
* while `useScheduledEmailDialogContext().isLoading` is true; otherwise ungated, unlike the other
|
|
26516
|
+
* General-tab fields.
|
|
26517
|
+
*
|
|
26518
|
+
* @alpha
|
|
26519
|
+
*/
|
|
26520
|
+
export declare function ScheduledEmailDialogRecurrence(props: Partial<IScheduledEmailDialogRecurrenceProps>): ReactElement;
|
|
26521
|
+
|
|
26522
|
+
/**
|
|
26523
|
+
* The scheduled-export dialog's chrome, connected to the dialog's state: the modal overlay, the dialog
|
|
26524
|
+
* frame with the header row (the back button and the title input) and the action bar, the General and
|
|
26525
|
+
* Filters tabs, the scrollable content area around the selected tab's content, the body's error and
|
|
26526
|
+
* validation messages, the stale-filters confirmation step shown before the dialog when the saved filters
|
|
26527
|
+
* or schedule timezone no longer match the dashboard, and the delete confirmation reached from the
|
|
26528
|
+
* action bar in edit mode. While `useScheduledEmailDialogContext().isLoading` is true — on scheduled
|
|
26529
|
+
* email the ordinary path while a widget export's filters load — it renders the loading skeleton and
|
|
26530
|
+
* none of its children.
|
|
26531
|
+
*
|
|
26532
|
+
* The default dialog is `<ScheduledEmailDialogShell>` around the region blocks and form; a custom
|
|
26533
|
+
* `ScheduledEmailDialogComponent` that keeps this chrome and arranges the blocks differently renders the
|
|
26534
|
+
* shell itself. The shell does not own the save: call {@link useSaveScheduledEmailToBackend} and pass its
|
|
26535
|
+
* `handleSaveScheduledEmail`, `isSavingScheduledEmail` and `savingErrorMessage`; build Enter handlers for
|
|
26536
|
+
* the blocks you place with {@link useScheduledEmailSubmitOnEnter} over the same `handleSaveScheduledEmail`.
|
|
26537
|
+
* Call that hook only once `useScheduledEmailDialogContext().isLoading` is false — the state hooks throw
|
|
26538
|
+
* while the dialog loads — and render the shell alone (any `onSubmit`, `isSaving: false`) until then, as
|
|
26539
|
+
* the example does.
|
|
26540
|
+
*
|
|
26541
|
+
* Needs an ambient `IntlProvider`; inside a `Dashboard` the dashboard's provider covers it.
|
|
26542
|
+
*
|
|
26543
|
+
* @example
|
|
26544
|
+
* ```tsx
|
|
26545
|
+
* function MyScheduledEmailDialog(props: IScheduledEmailDialogProps) {
|
|
26546
|
+
* const { isLoading } = useScheduledEmailDialogContext();
|
|
26547
|
+
* // the state hooks throw while the dialog loads; the shell renders the loading skeleton
|
|
26548
|
+
* if (isLoading) {
|
|
26549
|
+
* return <ScheduledEmailDialogShell {...props} onSubmit={() => {}} isSaving={false} />;
|
|
26550
|
+
* }
|
|
26551
|
+
* return <MyScheduledEmailDialogBody {...props} />;
|
|
26552
|
+
* }
|
|
26553
|
+
*
|
|
26554
|
+
* function MyScheduledEmailDialogBody(props: IScheduledEmailDialogProps) {
|
|
26555
|
+
* const { handleSaveScheduledEmail, isSavingScheduledEmail, savingErrorMessage } =
|
|
26556
|
+
* useSaveScheduledEmailToBackend(props);
|
|
26557
|
+
* const submitOnEnter = useScheduledEmailSubmitOnEnter({
|
|
26558
|
+
* onSubmit: handleSaveScheduledEmail,
|
|
26559
|
+
* isSaving: isSavingScheduledEmail,
|
|
26560
|
+
* });
|
|
26561
|
+
* return (
|
|
26562
|
+
* <ScheduledEmailDialogShell
|
|
26563
|
+
* {...props}
|
|
26564
|
+
* onSubmit={handleSaveScheduledEmail}
|
|
26565
|
+
* isSaving={isSavingScheduledEmail}
|
|
26566
|
+
* savingErrorMessage={savingErrorMessage}
|
|
26567
|
+
* >
|
|
26568
|
+
* <ScheduledEmailDialogDestination />
|
|
26569
|
+
* <ScheduledEmailDialogRecipients onKeyDownSubmit={submitOnEnter} />
|
|
26570
|
+
* </ScheduledEmailDialogShell>
|
|
26571
|
+
* );
|
|
26572
|
+
* }
|
|
26573
|
+
* ```
|
|
26574
|
+
*
|
|
26575
|
+
* @alpha
|
|
26576
|
+
*/
|
|
26577
|
+
export declare function ScheduledEmailDialogShell(props: IScheduledEmailDialogShellProps): ReactElement;
|
|
26578
|
+
|
|
26579
|
+
/**
|
|
26580
|
+
* The scheduled-export dialog's subject field, connected to the dialog's state.
|
|
26581
|
+
*
|
|
26582
|
+
* Renders {@link DefaultScheduledEmailDialogSubject} with the props of
|
|
26583
|
+
* {@link useScheduledEmailDialogSubjectProps}; every prop passed here replaces the hook's value for
|
|
26584
|
+
* that prop wholesale. Pass `onKeyDownSubmit` to submit on Enter from the subject input — the
|
|
26585
|
+
* default dialog passes its save action; without it Enter does nothing here. Renders nothing while
|
|
26586
|
+
* `useScheduledEmailDialogContext().isLoading` is true and for an in-platform notification channel
|
|
26587
|
+
* (which has no e-mail subject), the same visibility the default dialog gives the field.
|
|
26588
|
+
*
|
|
26589
|
+
* @alpha
|
|
26590
|
+
*/
|
|
26591
|
+
export declare function ScheduledEmailDialogSubject(props: Partial<IScheduledEmailDialogSubjectProps>): ReactElement;
|
|
26592
|
+
|
|
25748
26593
|
/**
|
|
25749
26594
|
* The scheduled-export dialog's "Time zone" section (the export-content timezone picker), connected
|
|
25750
26595
|
* to the dialog's state.
|
|
@@ -25767,10 +26612,40 @@ export declare function ScheduledEmailDialogTimezone(overrides: Partial<Schedule
|
|
|
25767
26612
|
export declare type ScheduledEmailDialogTimezoneDefaultProps = IScheduledEmailDialogTimezoneProps;
|
|
25768
26613
|
|
|
25769
26614
|
/**
|
|
26615
|
+
* The scheduled-export dialog's widget-attachments field, connected to the dialog's state.
|
|
26616
|
+
*
|
|
26617
|
+
* Renders {@link DefaultScheduledEmailDialogWidgetAttachments} with the props of
|
|
26618
|
+
* {@link useScheduledEmailDialogWidgetAttachmentsProps}; every prop passed here replaces the hook's
|
|
26619
|
+
* value for that prop wholesale. Renders nothing while `useScheduledEmailDialogContext().isLoading`
|
|
26620
|
+
* is true and when the dialog context has no `widget` (a dashboard schedule renders
|
|
26621
|
+
* {@link ScheduledEmailDialogDashboardAttachments} instead), the same visibility the default dialog
|
|
26622
|
+
* gives the field.
|
|
26623
|
+
*
|
|
26624
|
+
* @alpha
|
|
26625
|
+
*/
|
|
26626
|
+
export declare function ScheduledEmailDialogWidgetAttachments(props: Partial<IScheduledEmailDialogWidgetAttachmentsProps>): ReactElement;
|
|
26627
|
+
|
|
26628
|
+
/**
|
|
26629
|
+
* Resolves the management dialog component from DashboardComponentsContext and mounts it inside
|
|
26630
|
+
* the resolved context decorator — so a decorated management context is what the dialog (default
|
|
26631
|
+
* or replacement) reads.
|
|
26632
|
+
*
|
|
25770
26633
|
* @internal
|
|
25771
26634
|
*/
|
|
25772
26635
|
export declare function ScheduledEmailManagementDialog(props: IScheduledEmailManagementDialogProps): ReactElement;
|
|
25773
26636
|
|
|
26637
|
+
/**
|
|
26638
|
+
* Provides the scheduled email management dialog context.
|
|
26639
|
+
*
|
|
26640
|
+
* The dashboard's connector mounts the original value. Exported so a context-decorator
|
|
26641
|
+
* component (`CustomScheduledEmailManagementDialogContextDecoratorComponent`) can re-provide a decorated
|
|
26642
|
+
* value read from `useScheduledEmailManagementDialogContext()`; it is not a way to run the management
|
|
26643
|
+
* dialog outside a dashboard.
|
|
26644
|
+
*
|
|
26645
|
+
* @alpha
|
|
26646
|
+
*/
|
|
26647
|
+
export declare const ScheduledEmailManagementDialogContextProvider: Provider<IScheduledEmailManagementDialogContextValue | undefined>;
|
|
26648
|
+
|
|
25774
26649
|
/**
|
|
25775
26650
|
* @internal
|
|
25776
26651
|
*/
|
|
@@ -27443,23 +28318,21 @@ export declare const selectExecutionResultLimitBreaksByRef: (ref: ObjRef | undef
|
|
|
27443
28318
|
export declare const selectExecutionTimestamp: DashboardSelector<string | undefined>;
|
|
27444
28319
|
|
|
27445
28320
|
/**
|
|
27446
|
-
* Returns the per-tab parameter overrides to send on dashboard
|
|
27447
|
-
*
|
|
28321
|
+
* Returns the per-tab parameter overrides to send on dashboard export, keyed by tab
|
|
28322
|
+
* `localIdentifier`. The shape matches the backend's `dashboardTabsParametersOverrides`
|
|
27448
28323
|
* field directly.
|
|
27449
28324
|
*
|
|
27450
28325
|
* @remarks
|
|
27451
|
-
*
|
|
27452
|
-
*
|
|
27453
|
-
*
|
|
27454
|
-
* - When `widgetIds` is non-empty,
|
|
27455
|
-
*
|
|
27456
|
-
*
|
|
27457
|
-
* map entry per owning tab; entries for the same tab are unioned and deduplicated by ref.
|
|
28326
|
+
* The request sends every `runtimeOverride` entry of each tab in scope; the query drops the
|
|
28327
|
+
* parameters a widget's metrics do not use.
|
|
28328
|
+
* - When `widgetIds` is empty/undefined (whole-dashboard export), every tab is in scope.
|
|
28329
|
+
* - When `widgetIds` is non-empty, only the owning tabs of those widgets are in scope. Send only
|
|
28330
|
+
* these tabs. A non-empty map tells the backend that the map is complete, and the backend then
|
|
28331
|
+
* does not resolve pinned values for any tab.
|
|
27458
28332
|
*
|
|
27459
28333
|
* Returns `{}` (signalling "omit the field on the wire") when:
|
|
27460
28334
|
* - `enableParameters` is off,
|
|
27461
28335
|
* - the workspace catalog parameters are not loaded,
|
|
27462
|
-
* - (widget scope only) the `measureParameters` dependency map is not loaded,
|
|
27463
28336
|
* - or no in-scope parameter has a `runtimeOverride`.
|
|
27464
28337
|
*
|
|
27465
28338
|
* @alpha
|
|
@@ -32200,6 +33073,15 @@ export declare function useScheduledEmailDialogActionBarProps({ onCancel, onSubm
|
|
|
32200
33073
|
*/
|
|
32201
33074
|
export declare function useScheduledEmailDialogContext(): IScheduledEmailDialogContextValue;
|
|
32202
33075
|
|
|
33076
|
+
/**
|
|
33077
|
+
* The exact props the default scheduled-email dialog renders its dashboard-attachments field with.
|
|
33078
|
+
*
|
|
33079
|
+
* Throws outside the scheduled-export dialog's state providers.
|
|
33080
|
+
*
|
|
33081
|
+
* @alpha
|
|
33082
|
+
*/
|
|
33083
|
+
export declare function useScheduledEmailDialogDashboardAttachmentsProps(): IScheduledEmailDialogDashboardAttachmentsProps;
|
|
33084
|
+
|
|
32203
33085
|
/**
|
|
32204
33086
|
* The exact props the default scheduled-email dialog renders its destination region with.
|
|
32205
33087
|
*
|
|
@@ -32209,6 +33091,15 @@ export declare function useScheduledEmailDialogContext(): IScheduledEmailDialogC
|
|
|
32209
33091
|
*/
|
|
32210
33092
|
export declare function useScheduledEmailDialogDestinationProps(): IAutomationDialogDestinationProps;
|
|
32211
33093
|
|
|
33094
|
+
/**
|
|
33095
|
+
* The exact props the default scheduled-email dialog renders its evaluation-mode checkbox with.
|
|
33096
|
+
*
|
|
33097
|
+
* Throws outside the scheduled-export dialog's state providers.
|
|
33098
|
+
*
|
|
33099
|
+
* @alpha
|
|
33100
|
+
*/
|
|
33101
|
+
export declare function useScheduledEmailDialogEvaluationModeProps(): IScheduledEmailDialogEvaluationModeProps;
|
|
33102
|
+
|
|
32212
33103
|
/**
|
|
32213
33104
|
* The exact props the default scheduled-email dialog renders its filters region with.
|
|
32214
33105
|
*
|
|
@@ -32227,6 +33118,15 @@ export declare function useScheduledEmailDialogFiltersProps(): IScheduledEmailDi
|
|
|
32227
33118
|
*/
|
|
32228
33119
|
export declare function useScheduledEmailDialogHeaderProps({ onBack, onTitleKeyDown, ref }: IUseScheduledEmailDialogHeaderPropsInput): ScheduledEmailDialogHeaderDefaultProps;
|
|
32229
33120
|
|
|
33121
|
+
/**
|
|
33122
|
+
* The exact props the default scheduled-email dialog renders its message field with.
|
|
33123
|
+
*
|
|
33124
|
+
* Throws outside the scheduled-export dialog's state providers.
|
|
33125
|
+
*
|
|
33126
|
+
* @alpha
|
|
33127
|
+
*/
|
|
33128
|
+
export declare function useScheduledEmailDialogMessageProps(): IScheduledEmailDialogMessageProps;
|
|
33129
|
+
|
|
32230
33130
|
/**
|
|
32231
33131
|
* The exact props the default scheduled-email dialog renders its recipients region with.
|
|
32232
33132
|
*
|
|
@@ -32236,6 +33136,24 @@ export declare function useScheduledEmailDialogHeaderProps({ onBack, onTitleKeyD
|
|
|
32236
33136
|
*/
|
|
32237
33137
|
export declare function useScheduledEmailDialogRecipientsProps({ onKeyDownSubmit }: IUseScheduledEmailDialogRecipientsPropsInput): IScheduledEmailDialogRecipientsProps;
|
|
32238
33138
|
|
|
33139
|
+
/**
|
|
33140
|
+
* The exact props the default scheduled-email dialog renders its recurrence field with.
|
|
33141
|
+
*
|
|
33142
|
+
* Throws outside the scheduled-export dialog's state providers.
|
|
33143
|
+
*
|
|
33144
|
+
* @alpha
|
|
33145
|
+
*/
|
|
33146
|
+
export declare function useScheduledEmailDialogRecurrenceProps({ onKeyDownSubmit }: IUseScheduledEmailDialogRecurrencePropsInput): IScheduledEmailDialogRecurrenceProps;
|
|
33147
|
+
|
|
33148
|
+
/**
|
|
33149
|
+
* The exact props the default scheduled-email dialog renders its subject field with.
|
|
33150
|
+
*
|
|
33151
|
+
* Throws outside the scheduled-export dialog's state providers.
|
|
33152
|
+
*
|
|
33153
|
+
* @alpha
|
|
33154
|
+
*/
|
|
33155
|
+
export declare function useScheduledEmailDialogSubjectProps({ onKeyDownSubmit }: IUseScheduledEmailDialogSubjectPropsInput): IScheduledEmailDialogSubjectProps;
|
|
33156
|
+
|
|
32239
33157
|
/**
|
|
32240
33158
|
* The exact props the default scheduled-email dialog renders its "Time zone" section with.
|
|
32241
33159
|
*
|
|
@@ -32245,6 +33163,15 @@ export declare function useScheduledEmailDialogRecipientsProps({ onKeyDownSubmit
|
|
|
32245
33163
|
*/
|
|
32246
33164
|
export declare function useScheduledEmailDialogTimezoneProps(): ScheduledEmailDialogTimezoneDefaultProps;
|
|
32247
33165
|
|
|
33166
|
+
/**
|
|
33167
|
+
* The exact props the default scheduled-email dialog renders its widget-attachments field with.
|
|
33168
|
+
*
|
|
33169
|
+
* Throws outside the scheduled-export dialog's state providers.
|
|
33170
|
+
*
|
|
33171
|
+
* @alpha
|
|
33172
|
+
*/
|
|
33173
|
+
export declare function useScheduledEmailDialogWidgetAttachmentsProps(): IScheduledEmailDialogWidgetAttachmentsProps;
|
|
33174
|
+
|
|
32248
33175
|
/**
|
|
32249
33176
|
* Reads the scheduled-email management dialog context.
|
|
32250
33177
|
*
|
|
@@ -32259,6 +33186,19 @@ export declare function useScheduledEmailDialogTimezoneProps(): ScheduledEmailDi
|
|
|
32259
33186
|
*/
|
|
32260
33187
|
export declare function useScheduledEmailManagementDialogContext(): IScheduledEmailManagementDialogContextValue;
|
|
32261
33188
|
|
|
33189
|
+
/**
|
|
33190
|
+
* The Enter-to-submit key handler the default scheduled-export dialog attaches to its title, recipients
|
|
33191
|
+
* and recurrence inputs: calls `onSubmit` on Enter unless the submit button would be disabled — the same
|
|
33192
|
+
* guard {@link useScheduledEmailDialogActionBarProps} puts on the button (form validity, a save in
|
|
33193
|
+
* flight, execution-timestamp mode). Pass the result as `onTitleKeyDown` / `onKeyDownSubmit` to the
|
|
33194
|
+
* header and recipients blocks so every Enter path shares the dialog's one save.
|
|
33195
|
+
*
|
|
33196
|
+
* Throws outside the scheduled-export dialog's state providers.
|
|
33197
|
+
*
|
|
33198
|
+
* @alpha
|
|
33199
|
+
*/
|
|
33200
|
+
export declare function useScheduledEmailSubmitOnEnter({ onSubmit, isSaving }: IUseScheduledEmailSubmitOnEnterInput): (event: KeyboardEvent_2) => void;
|
|
33201
|
+
|
|
32262
33202
|
/**
|
|
32263
33203
|
* Reads the scheduled-export dialog's draft mutators.
|
|
32264
33204
|
*
|
|
@@ -32404,6 +33344,23 @@ export declare function useWidgetFilters(widget: FilterableDashboardWidget | und
|
|
|
32404
33344
|
*/
|
|
32405
33345
|
export declare function useWidgetSelection(widgetRef?: ObjRef): IUseWidgetSelectionResult;
|
|
32406
33346
|
|
|
33347
|
+
/**
|
|
33348
|
+
* Debounced workspace-user search for a recipients control.
|
|
33349
|
+
*
|
|
33350
|
+
* Queries the first 50 matching workspace users, 300 ms debounced, lazily: no request is made
|
|
33351
|
+
* until {@link IUseWorkspaceUsersSearchResult.onActivate} is called. Requires only the ambient
|
|
33352
|
+
* `BackendProvider` and `WorkspaceProvider` from `@gooddata/sdk-ui` — it reads no automation
|
|
33353
|
+
* context, so a custom recipients control can call it anywhere inside a `Dashboard` (or any
|
|
33354
|
+
* backend/workspace scope). The default recipients select of both automation dialogs is built
|
|
33355
|
+
* on it. Pass `enabled: false` to keep it inert (the default select does so when an external
|
|
33356
|
+
* recipient override or a logged-user-only constraint removes server search).
|
|
33357
|
+
*
|
|
33358
|
+
* @alpha
|
|
33359
|
+
*/
|
|
33360
|
+
export declare function useWorkspaceUsersSearch({ enabled }: {
|
|
33361
|
+
enabled: boolean;
|
|
33362
|
+
}): IUseWorkspaceUsersSearchResult;
|
|
33363
|
+
|
|
32407
33364
|
/**
|
|
32408
33365
|
* @internal
|
|
32409
33366
|
*/
|