@gooddata/sdk-ui-dashboard 10.12.0-alpha.5 → 10.12.0-alpha.7
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/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/{presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.d.ts → _staging/automation/index.d.ts} +2 -4
- package/esm/_staging/automation/index.d.ts.map +1 -0
- package/esm/{presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.js → _staging/automation/index.js} +9 -33
- package/esm/_staging/automation/index.js.map +1 -0
- package/esm/model/react/index.d.ts +8 -1
- package/esm/model/react/index.d.ts.map +1 -1
- package/esm/model/react/index.js +5 -1
- package/esm/model/react/index.js.map +1 -1
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.d.ts +41 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.js +64 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.js.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.d.ts +24 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.js +35 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.js.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.d.ts +31 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.js +85 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.js.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.d.ts +20 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.js +76 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.js.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.d.ts +20 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.js +17 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.js.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.d.ts +21 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.js +72 -0
- package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.js.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.d.ts +26 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.js +45 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.js.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.d.ts +35 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.d.ts.map +1 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.js +69 -0
- package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.js.map +1 -0
- package/esm/{presentation/widget/common → model/react}/useWidgetFilters.d.ts +2 -1
- package/esm/model/react/useWidgetFilters.d.ts.map +1 -0
- package/esm/{presentation/widget/common → model/react}/useWidgetFilters.js +5 -2
- package/esm/model/react/useWidgetFilters.js.map +1 -0
- package/esm/model/store/drill/drillSelectors.d.ts +4 -0
- package/esm/model/store/drill/drillSelectors.d.ts.map +1 -1
- package/esm/model/store/drill/drillSelectors.js +4 -0
- package/esm/model/store/drill/drillSelectors.js.map +1 -1
- package/esm/model/store/index.d.ts +1 -1
- package/esm/model/store/index.d.ts.map +1 -1
- package/esm/model/store/index.js +1 -1
- package/esm/model/store/index.js.map +1 -1
- package/esm/presentation/dashboard/DashboardHeader/ScheduledEmailDialogProvider.d.ts.map +1 -1
- package/esm/presentation/dashboard/DashboardHeader/ScheduledEmailDialogProvider.js +19 -4
- package/esm/presentation/dashboard/DashboardHeader/ScheduledEmailDialogProvider.js.map +1 -1
- 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/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +67 -81
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.d.ts +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFiltersList.d.ts +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFiltersList.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts +14 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js +46 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts +16 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js +31 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts +30 -9
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js +90 -63
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.d.ts +23 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.d.ts.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.js +30 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.js.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.d.ts +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.js +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js +2 -2
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.d.ts +3 -3
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.js +3 -3
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.d.ts +3 -3
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.js +2 -2
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.js.map +1 -1
- package/esm/presentation/scheduledEmail/index.d.ts +1 -1
- package/esm/presentation/scheduledEmail/index.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/types.d.ts +71 -44
- package/esm/presentation/scheduledEmail/types.d.ts.map +1 -1
- package/esm/presentation/topBar/menuButton/useDefaultMenuItems.d.ts.map +1 -1
- package/esm/presentation/topBar/menuButton/useDefaultMenuItems.js +1 -1
- package/esm/presentation/topBar/menuButton/useDefaultMenuItems.js.map +1 -1
- package/esm/presentation/widget/common/index.d.ts +0 -1
- package/esm/presentation/widget/common/index.d.ts.map +1 -1
- package/esm/presentation/widget/common/index.js +1 -2
- package/esm/presentation/widget/common/index.js.map +1 -1
- package/esm/presentation/widget/common/useCustomWidgetExecutionDataView.d.ts.map +1 -1
- package/esm/presentation/widget/common/useCustomWidgetExecutionDataView.js +2 -2
- package/esm/presentation/widget/common/useCustomWidgetExecutionDataView.js.map +1 -1
- package/esm/presentation/widget/common/useCustomWidgetInsightDataView.d.ts.map +1 -1
- package/esm/presentation/widget/common/useCustomWidgetInsightDataView.js +2 -2
- package/esm/presentation/widget/common/useCustomWidgetInsightDataView.js.map +1 -1
- package/esm/presentation/widget/common/useInsightWidgetDataView.d.ts.map +1 -1
- package/esm/presentation/widget/common/useInsightWidgetDataView.js +2 -3
- package/esm/presentation/widget/common/useInsightWidgetDataView.js.map +1 -1
- package/esm/presentation/widget/index.d.ts +1 -1
- package/esm/presentation/widget/index.d.ts.map +1 -1
- package/esm/presentation/widget/index.js +1 -1
- package/esm/presentation/widget/index.js.map +1 -1
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/Insight/DashboardInsight.d.ts.map +1 -1
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/Insight/DashboardInsight.js +1 -2
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/Insight/DashboardInsight.js.map +1 -1
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.d.ts.map +1 -1
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.js +2 -3
- package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.js.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js +7 -8
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js.map +1 -1
- package/esm/presentation/widget/kpi/common/useKpiData.d.ts.map +1 -1
- package/esm/presentation/widget/kpi/common/useKpiData.js +2 -3
- package/esm/presentation/widget/kpi/common/useKpiData.js.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.d.ts +1 -0
- package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.d.ts.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.js +2 -2
- package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.js.map +1 -1
- package/esm/presentation/widget/visualizationSwitcher/configuration/types.d.ts +1 -0
- package/esm/presentation/widget/visualizationSwitcher/configuration/types.d.ts.map +1 -1
- package/esm/presentation/widget/widget/InsightWidget/DefaultDashboardInsightWidget.js +1 -1
- package/esm/presentation/widget/widget/InsightWidget/DefaultDashboardInsightWidget.js.map +1 -1
- package/esm/presentation/widget/widget/VisualizationSwitcherWidget/EditableDashboardVisualizationSwitcherWidget.d.ts.map +1 -1
- package/esm/presentation/widget/widget/VisualizationSwitcherWidget/EditableDashboardVisualizationSwitcherWidget.js +2 -2
- package/esm/presentation/widget/widget/VisualizationSwitcherWidget/EditableDashboardVisualizationSwitcherWidget.js.map +1 -1
- package/esm/sdk-ui-dashboard.d.ts +176 -65
- package/package.json +15 -15
- package/esm/model/react/useDashboardScheduledEmails.d.ts +0 -44
- package/esm/model/react/useDashboardScheduledEmails.d.ts.map +0 -1
- package/esm/model/react/useDashboardScheduledEmails.js +0 -194
- package/esm/model/react/useDashboardScheduledEmails.js.map +0 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.d.ts +0 -18
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.d.ts.map +0 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.js +0 -66
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.js.map +0 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.d.ts +0 -43
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.d.ts.map +0 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.js +0 -82
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.js.map +0 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.d.ts.map +0 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.js.map +0 -1
- package/esm/presentation/widget/common/useWidgetFilters.d.ts.map +0 -1
- package/esm/presentation/widget/common/useWidgetFilters.js.map +0 -1
package/esm/__version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const LIB_VERSION = "10.12.0-alpha.
|
|
1
|
+
export declare const LIB_VERSION = "10.12.0-alpha.7";
|
|
2
2
|
//# sourceMappingURL=__version.d.ts.map
|
package/esm/__version.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { FilterContextItem, IAutomationMetadataObject, IAutomationMetadataObjectDefinition, IAutomationRecipient, IExportDefinitionMetadataObject, IExportDefinitionMetadataObjectDefinition, IFilter, IUser } from "@gooddata/sdk-model";
|
|
2
|
-
import { ExtendedDashboardWidget } from "../../../../model/index.js";
|
|
3
2
|
export declare const isDashboardAutomation: (automation: IAutomationMetadataObject | IAutomationMetadataObjectDefinition | undefined) => boolean | undefined;
|
|
4
3
|
export declare const isVisualisationAutomation: (automation: IAutomationMetadataObject | IAutomationMetadataObjectDefinition | undefined) => boolean | undefined;
|
|
5
4
|
export declare const isCsvVisualizationAutomation: (automation: IAutomationMetadataObject | IAutomationMetadataObjectDefinition | undefined) => boolean | undefined;
|
|
@@ -8,7 +7,6 @@ export declare const isXlsxVisualizationAutomation: (automation: IAutomationMeta
|
|
|
8
7
|
export declare const isXlsxVisualizationExportDefinition: (exportDefinition: IExportDefinitionMetadataObject | IExportDefinitionMetadataObjectDefinition | undefined) => boolean;
|
|
9
8
|
export declare const getAutomationDashboardFilters: (automation: IAutomationMetadataObject | IAutomationMetadataObjectDefinition | undefined) => FilterContextItem[] | undefined;
|
|
10
9
|
export declare const getAutomationVisualizationFilters: (automation: IAutomationMetadataObject | IAutomationMetadataObjectDefinition | undefined) => IFilter[] | undefined;
|
|
11
|
-
export declare const areAutomationsEqual: (
|
|
12
|
-
export declare const transformFilterContextToModelFilters: (filters: FilterContextItem[] | undefined, widget: ExtendedDashboardWidget) => IFilter[];
|
|
10
|
+
export declare const areAutomationsEqual: (originalAutomation: IAutomationMetadataObjectDefinition, updatedAutomation: IAutomationMetadataObjectDefinition) => boolean;
|
|
13
11
|
export declare const convertUserToAutomationRecipient: (user: IUser) => IAutomationRecipient;
|
|
14
|
-
//# sourceMappingURL=
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_staging/automation/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,iBAAiB,EACjB,yBAAyB,EACzB,mCAAmC,EACnC,oBAAoB,EAEpB,+BAA+B,EAC/B,yCAAyC,EAEzC,OAAO,EAKP,KAAK,EACR,MAAM,qBAAqB,CAAC;AAK7B,eAAO,MAAM,qBAAqB,eAClB,yBAAyB,GAAG,mCAAmC,GAAG,SAAS,wBAS1F,CAAC;AAEF,eAAO,MAAM,yBAAyB,eACtB,yBAAyB,GAAG,mCAAmC,GAAG,SAAS,wBAS1F,CAAC;AAEF,eAAO,MAAM,4BAA4B,eACzB,yBAAyB,GAAG,mCAAmC,GAAG,SAAS,wBAO1F,CAAC;AAEF,eAAO,MAAM,kCAAkC,qBACzB,+BAA+B,GAAG,yCAAyC,GAAG,SAAS,YAU5G,CAAC;AAEF,eAAO,MAAM,6BAA6B,eAC1B,yBAAyB,GAAG,mCAAmC,GAAG,SAAS,wBAO1F,CAAC;AAEF,eAAO,MAAM,mCAAmC,qBAC1B,+BAA+B,GAAG,yCAAyC,GAAG,SAAS,YAU5G,CAAC;AAEF,eAAO,MAAM,6BAA6B,eAC1B,yBAAyB,GAAG,mCAAmC,GAAG,SAAS,KACxF,iBAAiB,EAAE,GAAG,SAUxB,CAAC;AAEF,eAAO,MAAM,iCAAiC,eAC9B,yBAAyB,GAAG,mCAAmC,GAAG,SAAS,KACxF,OAAO,EAAE,GAAG,SAUd,CAAC;AAOF,eAAO,MAAM,mBAAmB,uBACR,mCAAmC,qBACpC,mCAAmC,YAmBzD,CAAC;AAEF,eAAO,MAAM,gCAAgC,SAAU,KAAK,KAAG,oBAO9D,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
// (C) 2024 GoodData Corporation
|
|
2
|
-
import {
|
|
2
|
+
import { isExportDefinitionDashboardRequestPayload, isExportDefinitionVisualizationObjectRequestPayload, isFilter, isFilterContextItem, } from "@gooddata/sdk-model";
|
|
3
3
|
import omit from "lodash/omit.js";
|
|
4
4
|
import isEqual from "lodash/isEqual.js";
|
|
5
5
|
import pick from "lodash/pick.js";
|
|
6
|
-
import { filterContextItemsToDashboardFiltersByWidget } from "../../../../converters/index.js";
|
|
7
6
|
export const isDashboardAutomation = (automation) => {
|
|
8
7
|
if (!automation) {
|
|
9
8
|
return false;
|
|
@@ -50,30 +49,26 @@ export const getAutomationDashboardFilters = (automation) => {
|
|
|
50
49
|
if (!automation) {
|
|
51
50
|
return undefined;
|
|
52
51
|
}
|
|
53
|
-
return automation.exportDefinitions
|
|
54
|
-
?.find((exportDefinition) => {
|
|
52
|
+
return automation.exportDefinitions?.find((exportDefinition) => {
|
|
55
53
|
return isExportDefinitionDashboardRequestPayload(exportDefinition.requestPayload);
|
|
56
|
-
})
|
|
57
|
-
?.requestPayload?.content.filters?.filter(isFilterContextItem);
|
|
54
|
+
})?.requestPayload?.content.filters?.filter((f) => isFilterContextItem(f));
|
|
58
55
|
};
|
|
59
56
|
export const getAutomationVisualizationFilters = (automation) => {
|
|
60
57
|
if (!automation) {
|
|
61
58
|
return undefined;
|
|
62
59
|
}
|
|
63
|
-
return automation.exportDefinitions
|
|
64
|
-
?.find((exportDefinition) => {
|
|
60
|
+
return automation.exportDefinitions?.find((exportDefinition) => {
|
|
65
61
|
return isExportDefinitionVisualizationObjectRequestPayload(exportDefinition.requestPayload);
|
|
66
|
-
})
|
|
67
|
-
?.requestPayload?.content.filters?.filter(isFilter);
|
|
62
|
+
})?.requestPayload?.content.filters?.filter((f) => isFilter(f));
|
|
68
63
|
};
|
|
69
64
|
const sortByFormat = (a, b) => a.requestPayload.format > b.requestPayload.format ? 1 : -1;
|
|
70
|
-
export const areAutomationsEqual = (
|
|
71
|
-
const automationWithoutExportDefinitions = omit(
|
|
65
|
+
export const areAutomationsEqual = (originalAutomation, updatedAutomation) => {
|
|
66
|
+
const automationWithoutExportDefinitions = omit(updatedAutomation, "exportDefinitions");
|
|
72
67
|
const origAutomationWithoutExportDefinitions = omit(originalAutomation, "exportDefinitions");
|
|
73
68
|
// We only want to compare requestPayload and title of exportDefinitions, rest may be omitted as it is just arbitrary
|
|
74
69
|
// metadata that is not relevant for the comparison and causes false positive results when comparing new and old def.
|
|
75
70
|
// Sorting is done just to avoid false positive result of different order of export definitions.
|
|
76
|
-
const automationExportDefinitions =
|
|
71
|
+
const automationExportDefinitions = updatedAutomation.exportDefinitions
|
|
77
72
|
?.map((exportDefinition) => pick(exportDefinition, ["requestPayload", "title"]))
|
|
78
73
|
.sort(sortByFormat);
|
|
79
74
|
const origAutomationExportDefinitions = originalAutomation.exportDefinitions
|
|
@@ -82,25 +77,6 @@ export const areAutomationsEqual = (automation, originalAutomation) => {
|
|
|
82
77
|
return (isEqual(automationWithoutExportDefinitions, origAutomationWithoutExportDefinitions) &&
|
|
83
78
|
isEqual(automationExportDefinitions, origAutomationExportDefinitions));
|
|
84
79
|
};
|
|
85
|
-
export const transformFilterContextToModelFilters = (filters, widget) => {
|
|
86
|
-
if (!filters) {
|
|
87
|
-
return [];
|
|
88
|
-
}
|
|
89
|
-
const transformedFilters = filterContextItemsToDashboardFiltersByWidget(filters, widget);
|
|
90
|
-
/**
|
|
91
|
-
* When widget has no date dimension available, common date filter gets empty date data set.
|
|
92
|
-
* In this case, we rather filter it out and keep all other filters.
|
|
93
|
-
*/
|
|
94
|
-
return transformedFilters.filter((filter) => {
|
|
95
|
-
if (isRelativeDateFilter(filter)) {
|
|
96
|
-
return isObjRef(filter.relativeDateFilter.dataSet);
|
|
97
|
-
}
|
|
98
|
-
else if (isAbsoluteDateFilter(filter)) {
|
|
99
|
-
return isObjRef(filter.absoluteDateFilter.dataSet);
|
|
100
|
-
}
|
|
101
|
-
return filter;
|
|
102
|
-
});
|
|
103
|
-
};
|
|
104
80
|
export const convertUserToAutomationRecipient = (user) => {
|
|
105
81
|
return {
|
|
106
82
|
id: user.login,
|
|
@@ -109,4 +85,4 @@ export const convertUserToAutomationRecipient = (user) => {
|
|
|
109
85
|
type: "user",
|
|
110
86
|
};
|
|
111
87
|
};
|
|
112
|
-
//# sourceMappingURL=
|
|
88
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_staging/automation/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,15 @@ export { useDashboardAsyncRender } from "./useDashboardAsyncRender.js";
|
|
|
12
12
|
export type { IDashboardStoreProviderProps } from "./types.js";
|
|
13
13
|
export { useDispatchDashboardCommand } from "./useDispatchDashboardCommand.js";
|
|
14
14
|
export { useWidgetExecutionsHandler } from "./useWidgetExecutionsHandler.js";
|
|
15
|
-
export { useDashboardScheduledEmails, DEFAULT_MAX_AUTOMATIONS } from "./useDashboardScheduledEmails.js";
|
|
15
|
+
export { useDashboardScheduledEmails, DEFAULT_MAX_AUTOMATIONS, } from "./useDasboardScheduledEmails/useDashboardScheduledEmails.js";
|
|
16
16
|
export { useDashboardAlerts } from "./useDashboardAlerts.js";
|
|
17
17
|
export type { IUseWidgetSelectionResult } from "./useWidgetSelection.js";
|
|
18
18
|
export { useWidgetSelection } from "./useWidgetSelection.js";
|
|
19
|
+
export { useWidgetFilters } from "./useWidgetFilters.js";
|
|
20
|
+
export { useFiltersForDashboardScheduledExport } from "./useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.js";
|
|
21
|
+
export type { IUseFiltersForDashboardScheduledExportProps } from "./useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.js";
|
|
22
|
+
export { useFiltersForWidgetScheduledExport } from "./useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.js";
|
|
23
|
+
export type { IUseFiltersForWidgetScheduledExportProps } from "./useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.js";
|
|
24
|
+
export { useDashboardScheduledEmailsFilters } from "./useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.js";
|
|
25
|
+
export type { IUseDashboardScheduledEmailsFiltersProps } from "./useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.js";
|
|
19
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/model/react/index.ts"],"names":[],"mappings":"AACA,OAAO,EACH,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,YAAY,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,YAAY,EACR,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,oBAAoB,EACpB,2BAA2B,EAC3B,iCAAiC,GACpC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,YAAY,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,YAAY,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/model/react/index.ts"],"names":[],"mappings":"AACA,OAAO,EACH,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,YAAY,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,YAAY,EACR,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,oBAAoB,EACpB,2BAA2B,EAC3B,iCAAiC,GACpC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,YAAY,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,YAAY,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACH,2BAA2B,EAC3B,uBAAuB,GAC1B,MAAM,6DAA6D,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,uEAAuE,CAAC;AAC9H,YAAY,EAAE,2CAA2C,EAAE,MAAM,uEAAuE,CAAC;AACzI,OAAO,EAAE,kCAAkC,EAAE,MAAM,oEAAoE,CAAC;AACxH,YAAY,EAAE,wCAAwC,EAAE,MAAM,oEAAoE,CAAC;AACnI,OAAO,EAAE,kCAAkC,EAAE,MAAM,oEAAoE,CAAC;AACxH,YAAY,EAAE,wCAAwC,EAAE,MAAM,oEAAoE,CAAC"}
|
package/esm/model/react/index.js
CHANGED
|
@@ -8,7 +8,11 @@ export { useDashboardUserInteraction } from "./useDashboardUserInteraction.js";
|
|
|
8
8
|
export { useDashboardAsyncRender } from "./useDashboardAsyncRender.js";
|
|
9
9
|
export { useDispatchDashboardCommand } from "./useDispatchDashboardCommand.js";
|
|
10
10
|
export { useWidgetExecutionsHandler } from "./useWidgetExecutionsHandler.js";
|
|
11
|
-
export { useDashboardScheduledEmails, DEFAULT_MAX_AUTOMATIONS } from "./useDashboardScheduledEmails.js";
|
|
11
|
+
export { useDashboardScheduledEmails, DEFAULT_MAX_AUTOMATIONS, } from "./useDasboardScheduledEmails/useDashboardScheduledEmails.js";
|
|
12
12
|
export { useDashboardAlerts } from "./useDashboardAlerts.js";
|
|
13
13
|
export { useWidgetSelection } from "./useWidgetSelection.js";
|
|
14
|
+
export { useWidgetFilters } from "./useWidgetFilters.js";
|
|
15
|
+
export { useFiltersForDashboardScheduledExport } from "./useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.js";
|
|
16
|
+
export { useFiltersForWidgetScheduledExport } from "./useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.js";
|
|
17
|
+
export { useDashboardScheduledEmailsFilters } from "./useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.js";
|
|
14
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/model/react/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EACH,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAW3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/model/react/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EACH,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAW3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACH,2BAA2B,EAC3B,uBAAuB,GAC1B,MAAM,6DAA6D,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,uEAAuE,CAAC;AAE9H,OAAO,EAAE,kCAAkC,EAAE,MAAM,oEAAoE,CAAC;AAExH,OAAO,EAAE,kCAAkC,EAAE,MAAM,oEAAoE,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { IAutomationMetadataObject } from "@gooddata/sdk-model";
|
|
2
|
+
export { DEFAULT_MAX_AUTOMATIONS } from "./useDashboardScheduledEmailsData.js";
|
|
3
|
+
/**
|
|
4
|
+
* Hook that handles schedule emailing dialogs.
|
|
5
|
+
*
|
|
6
|
+
* @alpha
|
|
7
|
+
*/
|
|
8
|
+
export declare const useDashboardScheduledEmails: () => {
|
|
9
|
+
scheduledExportToEdit: IAutomationMetadataObject | undefined;
|
|
10
|
+
users: import("../../index.js").Users;
|
|
11
|
+
notificationChannels: (import("@gooddata/sdk-model").IWebhookDefinitionObject | import("@gooddata/sdk-model").ISmtpDefinitionObject)[];
|
|
12
|
+
automations: IAutomationMetadataObject[];
|
|
13
|
+
automationsCount: number;
|
|
14
|
+
numberOfAvailableDestinations: number;
|
|
15
|
+
widget: import("../../index.js").ExtendedDashboardWidget | undefined;
|
|
16
|
+
insight: import("@gooddata/sdk-model").IInsight | undefined;
|
|
17
|
+
automationsLoading: boolean;
|
|
18
|
+
automationsError: import("@gooddata/sdk-ui").GoodDataSdkError | undefined;
|
|
19
|
+
webhooksLoading: boolean;
|
|
20
|
+
webhooksError: import("@gooddata/sdk-ui").GoodDataSdkError | undefined;
|
|
21
|
+
isScheduledEmailingVisible: boolean;
|
|
22
|
+
isScheduleEmailingDialogOpen: boolean;
|
|
23
|
+
defaultOnScheduleEmailing: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
24
|
+
onScheduleEmailingOpen: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
25
|
+
onScheduleEmailingCancel: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
26
|
+
onScheduleEmailingCreateError: () => void;
|
|
27
|
+
onScheduleEmailingCreateSuccess: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
28
|
+
onScheduleEmailingSaveError: () => void;
|
|
29
|
+
onScheduleEmailingSaveSuccess: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
30
|
+
isScheduledManagementEmailingVisible: boolean;
|
|
31
|
+
isScheduleEmailingManagementDialogOpen: boolean;
|
|
32
|
+
defaultOnScheduleEmailingManagement: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
33
|
+
onScheduleEmailingManagementOpen: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
34
|
+
onScheduleEmailingManagementEdit: (schedule: IAutomationMetadataObject, widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
35
|
+
onScheduleEmailingManagementAdd: (widget?: import("@gooddata/sdk-model").IWidget | undefined) => void;
|
|
36
|
+
onScheduleEmailingManagementClose: () => void;
|
|
37
|
+
onScheduleEmailingManagementLoadingError: () => void;
|
|
38
|
+
onScheduleEmailingManagementDeleteSuccess: () => void;
|
|
39
|
+
onScheduleEmailingManagementDeleteError: () => void;
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=useDashboardScheduledEmails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmails.d.ts","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAKhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqFvC,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// (C) 2022-2024 GoodData Corporation
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
import { useDashboardScheduledEmailsData } from "./useDashboardScheduledEmailsData.js";
|
|
4
|
+
import { useDashboardScheduledEmailsDialog } from "./useDashboardScheduledEmailsDialog.js";
|
|
5
|
+
import { useDashboardScheduledEmailsManagementDialog } from "./useDashboardScheduledEmailsManagementDialog.js";
|
|
6
|
+
export { DEFAULT_MAX_AUTOMATIONS } from "./useDashboardScheduledEmailsData.js";
|
|
7
|
+
/**
|
|
8
|
+
* Hook that handles schedule emailing dialogs.
|
|
9
|
+
*
|
|
10
|
+
* @alpha
|
|
11
|
+
*/
|
|
12
|
+
export const useDashboardScheduledEmails = () => {
|
|
13
|
+
/**
|
|
14
|
+
* Active selected scheduled export to be edited in the dialog (is available only for editing, is not used for creation)
|
|
15
|
+
*/
|
|
16
|
+
const [scheduledExportToEdit, setScheduledExportToEdit] = useState();
|
|
17
|
+
const {
|
|
18
|
+
// Data
|
|
19
|
+
users, automations, automationsLoading, automationsError, automationsCount, webhooksLoading, webhooksError, notificationChannels, numberOfAvailableDestinations, widget, insight,
|
|
20
|
+
// Single Schedule Dialog
|
|
21
|
+
isScheduledEmailingVisible, isScheduleEmailingDialogOpen,
|
|
22
|
+
// List / Management Dialog
|
|
23
|
+
isScheduledManagementEmailingVisible, isScheduleEmailingManagementDialogOpen, } = useDashboardScheduledEmailsData({ scheduledExportToEdit });
|
|
24
|
+
const { defaultOnScheduleEmailing, onScheduleEmailingCancel, onScheduleEmailingCreateError, onScheduleEmailingCreateSuccess, onScheduleEmailingOpen, onScheduleEmailingSaveError, onScheduleEmailingSaveSuccess, } = useDashboardScheduledEmailsDialog({ setScheduledExportToEdit });
|
|
25
|
+
const { defaultOnScheduleEmailingManagement, onScheduleEmailingManagementAdd, onScheduleEmailingManagementClose, onScheduleEmailingManagementDeleteError, onScheduleEmailingManagementDeleteSuccess, onScheduleEmailingManagementEdit, onScheduleEmailingManagementLoadingError, onScheduleEmailingManagementOpen, } = useDashboardScheduledEmailsManagementDialog({ setScheduledExportToEdit });
|
|
26
|
+
return {
|
|
27
|
+
// Local state
|
|
28
|
+
scheduledExportToEdit,
|
|
29
|
+
// Data
|
|
30
|
+
users,
|
|
31
|
+
notificationChannels,
|
|
32
|
+
automations,
|
|
33
|
+
automationsCount,
|
|
34
|
+
numberOfAvailableDestinations,
|
|
35
|
+
widget,
|
|
36
|
+
insight,
|
|
37
|
+
automationsLoading,
|
|
38
|
+
automationsError,
|
|
39
|
+
webhooksLoading,
|
|
40
|
+
webhooksError,
|
|
41
|
+
// Single Schedule Dialog
|
|
42
|
+
isScheduledEmailingVisible,
|
|
43
|
+
isScheduleEmailingDialogOpen,
|
|
44
|
+
defaultOnScheduleEmailing,
|
|
45
|
+
onScheduleEmailingOpen,
|
|
46
|
+
onScheduleEmailingCancel,
|
|
47
|
+
onScheduleEmailingCreateError,
|
|
48
|
+
onScheduleEmailingCreateSuccess,
|
|
49
|
+
onScheduleEmailingSaveError,
|
|
50
|
+
onScheduleEmailingSaveSuccess,
|
|
51
|
+
// List / Management Dialog
|
|
52
|
+
isScheduledManagementEmailingVisible,
|
|
53
|
+
isScheduleEmailingManagementDialogOpen,
|
|
54
|
+
defaultOnScheduleEmailingManagement,
|
|
55
|
+
onScheduleEmailingManagementOpen,
|
|
56
|
+
onScheduleEmailingManagementEdit,
|
|
57
|
+
onScheduleEmailingManagementAdd,
|
|
58
|
+
onScheduleEmailingManagementClose,
|
|
59
|
+
onScheduleEmailingManagementLoadingError,
|
|
60
|
+
onScheduleEmailingManagementDeleteSuccess,
|
|
61
|
+
onScheduleEmailingManagementDeleteError,
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=useDashboardScheduledEmails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmails.js","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAC3F,OAAO,EAAE,2CAA2C,EAAE,MAAM,kDAAkD,CAAC;AAE/G,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,EAAE;IAC5C;;OAEG;IACH,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,EAA6B,CAAC;IAEhG,MAAM;IACF,OAAO;IACP,KAAK,EACL,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,6BAA6B,EAC7B,MAAM,EACN,OAAO;IACP,yBAAyB;IACzB,0BAA0B,EAC1B,4BAA4B;IAC5B,2BAA2B;IAC3B,oCAAoC,EACpC,sCAAsC,GACzC,GAAG,+BAA+B,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAE/D,MAAM,EACF,yBAAyB,EACzB,wBAAwB,EACxB,6BAA6B,EAC7B,+BAA+B,EAC/B,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,GAChC,GAAG,iCAAiC,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC;IAEpE,MAAM,EACF,mCAAmC,EACnC,+BAA+B,EAC/B,iCAAiC,EACjC,uCAAuC,EACvC,yCAAyC,EACzC,gCAAgC,EAChC,wCAAwC,EACxC,gCAAgC,GACnC,GAAG,2CAA2C,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC;IAE9E,OAAO;QACH,cAAc;QACd,qBAAqB;QACrB,OAAO;QACP,KAAK;QACL,oBAAoB;QACpB,WAAW;QACX,gBAAgB;QAChB,6BAA6B;QAC7B,MAAM;QACN,OAAO;QACP,kBAAkB;QAClB,gBAAgB;QAChB,eAAe;QACf,aAAa;QACb,yBAAyB;QACzB,0BAA0B;QAC1B,4BAA4B;QAC5B,yBAAyB;QACzB,sBAAsB;QACtB,wBAAwB;QACxB,6BAA6B;QAC7B,+BAA+B;QAC/B,2BAA2B;QAC3B,6BAA6B;QAC7B,2BAA2B;QAC3B,oCAAoC;QACpC,sCAAsC;QACtC,mCAAmC;QACnC,gCAAgC;QAChC,gCAAgC;QAChC,+BAA+B;QAC/B,iCAAiC;QACjC,wCAAwC;QACxC,yCAAyC;QACzC,uCAAuC;KAC1C,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { IWidget } from "@gooddata/sdk-model";
|
|
2
|
+
/**
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
export declare const useDashboardScheduledEmailsCommands: () => {
|
|
6
|
+
openScheduleEmailingDialog: (widget?: IWidget) => false | {
|
|
7
|
+
payload: import("../../../types.js").IScheduleEmailContext;
|
|
8
|
+
type: "uiSlice/openScheduleEmailDialog";
|
|
9
|
+
};
|
|
10
|
+
closeScheduleEmailingDialog: () => false | {
|
|
11
|
+
payload: undefined;
|
|
12
|
+
type: "uiSlice/closeScheduleEmailDialog";
|
|
13
|
+
};
|
|
14
|
+
openScheduleEmailingManagementDialog: (widget?: IWidget) => false | {
|
|
15
|
+
payload: import("../../../types.js").IScheduleEmailContext;
|
|
16
|
+
type: "uiSlice/openScheduleEmailManagementDialog";
|
|
17
|
+
};
|
|
18
|
+
closeScheduleEmailingManagementDialog: () => false | {
|
|
19
|
+
payload: undefined;
|
|
20
|
+
type: "uiSlice/closeScheduleEmailManagementDialog";
|
|
21
|
+
};
|
|
22
|
+
refreshAutomations: () => import("../../commands/scheduledEmail.js").RefreshAutomations;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=useDashboardScheduledEmailsCommands.d.ts.map
|
package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmailsCommands.d.ts","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAK9C;;GAEG;AACH,eAAO,MAAM,mCAAmC;0CAQ9B,OAAO;;;;;;;;oDAgBP,OAAO;;;;;;;;;CAwBxB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// (C) 2022-2024 GoodData Corporation
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import { selectEnableScheduling, uiActions } from "../../store/index.js";
|
|
4
|
+
import { useDashboardDispatch, useDashboardSelector } from "../DashboardStoreProvider.js";
|
|
5
|
+
import { refreshAutomations as refreshAutomationsCommand } from "../../commands/index.js";
|
|
6
|
+
/**
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export const useDashboardScheduledEmailsCommands = () => {
|
|
10
|
+
const dispatch = useDashboardDispatch();
|
|
11
|
+
// Feature Flags
|
|
12
|
+
const isScheduledEmailingEnabled = useDashboardSelector(selectEnableScheduling);
|
|
13
|
+
// Single Schedule Dialog
|
|
14
|
+
const openScheduleEmailingDialog = useCallback((widget) => isScheduledEmailingEnabled &&
|
|
15
|
+
dispatch(uiActions.openScheduleEmailDialog({
|
|
16
|
+
...(widget?.ref ? { widgetRef: widget.ref } : {}),
|
|
17
|
+
})), [dispatch, isScheduledEmailingEnabled]);
|
|
18
|
+
const closeScheduleEmailingDialog = useCallback(() => isScheduledEmailingEnabled && dispatch(uiActions.closeScheduleEmailDialog()), [dispatch, isScheduledEmailingEnabled]);
|
|
19
|
+
// List / Management Dialog
|
|
20
|
+
const openScheduleEmailingManagementDialog = useCallback((widget) => isScheduledEmailingEnabled &&
|
|
21
|
+
dispatch(uiActions.openScheduleEmailManagementDialog({
|
|
22
|
+
...(widget?.ref ? { widgetRef: widget.ref } : {}),
|
|
23
|
+
})), [dispatch, isScheduledEmailingEnabled]);
|
|
24
|
+
const closeScheduleEmailingManagementDialog = useCallback(() => isScheduledEmailingEnabled && dispatch(uiActions.closeScheduleEmailManagementDialog()), [dispatch, isScheduledEmailingEnabled]);
|
|
25
|
+
// Data Reload
|
|
26
|
+
const refreshAutomations = useCallback(() => dispatch(refreshAutomationsCommand()), [dispatch]);
|
|
27
|
+
return {
|
|
28
|
+
openScheduleEmailingDialog,
|
|
29
|
+
closeScheduleEmailingDialog,
|
|
30
|
+
openScheduleEmailingManagementDialog,
|
|
31
|
+
closeScheduleEmailingManagementDialog,
|
|
32
|
+
refreshAutomations,
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=useDashboardScheduledEmailsCommands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmailsCommands.js","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,kBAAkB,IAAI,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAE1F;;GAEG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,EAAE;IACpD,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;IAExC,gBAAgB;IAChB,MAAM,0BAA0B,GAAG,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;IAEhF,yBAAyB;IACzB,MAAM,0BAA0B,GAAG,WAAW,CAC1C,CAAC,MAAgB,EAAE,EAAE,CACjB,0BAA0B;QAC1B,QAAQ,CACJ,SAAS,CAAC,uBAAuB,CAAC;YAC9B,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpD,CAAC,CACL,EACL,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CACzC,CAAC;IACF,MAAM,2BAA2B,GAAG,WAAW,CAC3C,GAAG,EAAE,CAAC,0BAA0B,IAAI,QAAQ,CAAC,SAAS,CAAC,wBAAwB,EAAE,CAAC,EAClF,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CACzC,CAAC;IAEF,2BAA2B;IAC3B,MAAM,oCAAoC,GAAG,WAAW,CACpD,CAAC,MAAgB,EAAE,EAAE,CACjB,0BAA0B;QAC1B,QAAQ,CACJ,SAAS,CAAC,iCAAiC,CAAC;YACxC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpD,CAAC,CACL,EACL,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CACzC,CAAC;IACF,MAAM,qCAAqC,GAAG,WAAW,CACrD,GAAG,EAAE,CAAC,0BAA0B,IAAI,QAAQ,CAAC,SAAS,CAAC,kCAAkC,EAAE,CAAC,EAC5F,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CACzC,CAAC;IAEF,cAAc;IACd,MAAM,kBAAkB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,yBAAyB,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEhG,OAAO;QACH,0BAA0B;QAC1B,2BAA2B;QAC3B,oCAAoC;QACpC,qCAAqC;QACrC,kBAAkB;KACrB,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { IAutomationMetadataObject } from "@gooddata/sdk-model";
|
|
2
|
+
/**
|
|
3
|
+
* @alpha
|
|
4
|
+
* Default maximum number of automations.
|
|
5
|
+
*/
|
|
6
|
+
export declare const DEFAULT_MAX_AUTOMATIONS = "10";
|
|
7
|
+
interface IUseDashboardScheduledEmailsDataProps {
|
|
8
|
+
scheduledExportToEdit?: IAutomationMetadataObject;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export declare const useDashboardScheduledEmailsData: ({ scheduledExportToEdit, }: IUseDashboardScheduledEmailsDataProps) => {
|
|
14
|
+
users: import("../../index.js").Users;
|
|
15
|
+
notificationChannels: (import("@gooddata/sdk-model").IWebhookDefinitionObject | import("@gooddata/sdk-model").ISmtpDefinitionObject)[];
|
|
16
|
+
automations: IAutomationMetadataObject[];
|
|
17
|
+
automationsLoading: boolean;
|
|
18
|
+
automationsError: import("@gooddata/sdk-ui").GoodDataSdkError | undefined;
|
|
19
|
+
automationsCount: number;
|
|
20
|
+
numberOfAvailableDestinations: number;
|
|
21
|
+
widget: import("../../index.js").ExtendedDashboardWidget | undefined;
|
|
22
|
+
insight: import("@gooddata/sdk-model").IInsight | undefined;
|
|
23
|
+
webhooksLoading: boolean;
|
|
24
|
+
webhooksError: import("@gooddata/sdk-ui").GoodDataSdkError | undefined;
|
|
25
|
+
isScheduledEmailingVisible: boolean;
|
|
26
|
+
isScheduleEmailingDialogOpen: boolean;
|
|
27
|
+
isScheduledManagementEmailingVisible: boolean;
|
|
28
|
+
isScheduleEmailingManagementDialogOpen: boolean;
|
|
29
|
+
};
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=useDashboardScheduledEmailsData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmailsData.d.ts","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,yBAAyB,EAG5B,MAAM,qBAAqB,CAAC;AA2B7B;;;GAGG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C,UAAU,qCAAqC;IAC3C,qBAAqB,CAAC,EAAE,yBAAyB,CAAC;CACrD;AAED;;GAEG;AACH,eAAO,MAAM,+BAA+B,+BAEzC,qCAAqC;;;;;;;;;;;;;;;;CA6FvC,CAAC"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
// (C) 2022-2024 GoodData Corporation
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
import { isExportDefinitionVisualizationObjectRequestPayload, } from "@gooddata/sdk-model";
|
|
4
|
+
import { selectCanExportPdf, selectCanManageWorkspace, selectEnableScheduling, selectIsInViewMode, selectIsReadOnly, selectMenuButtonItemsVisibility, selectEntitlementMaxAutomations, selectWebhooks, selectSmtps, selectAutomationsCount, selectUsers, selectWebhooksIsLoading, selectAutomationsIsLoading, selectWebhooksError, selectAutomationsError, selectAutomationsSchedulesInContext, selectEntitlementUnlimitedAutomations, selectCanCreateAutomation, selectIsScheduleEmailDialogOpen, selectIsScheduleEmailDialogContext, selectIsScheduleEmailManagementDialogOpen, selectWidgetByRef, selectInsightByWidgetRef, } from "../../store/index.js";
|
|
5
|
+
import { useDashboardSelector } from "../DashboardStoreProvider.js";
|
|
6
|
+
/**
|
|
7
|
+
* @alpha
|
|
8
|
+
* Default maximum number of automations.
|
|
9
|
+
*/
|
|
10
|
+
export const DEFAULT_MAX_AUTOMATIONS = "10";
|
|
11
|
+
/**
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export const useDashboardScheduledEmailsData = ({ scheduledExportToEdit, }) => {
|
|
15
|
+
const users = useDashboardSelector(selectUsers);
|
|
16
|
+
const emails = useDashboardSelector(selectSmtps);
|
|
17
|
+
const webhooks = useDashboardSelector(selectWebhooks);
|
|
18
|
+
const webhooksLoading = useDashboardSelector(selectWebhooksIsLoading);
|
|
19
|
+
const webhooksError = useDashboardSelector(selectWebhooksError);
|
|
20
|
+
const automations = useDashboardSelector(selectAutomationsSchedulesInContext(undefined));
|
|
21
|
+
const automationsCount = useDashboardSelector(selectAutomationsCount);
|
|
22
|
+
const automationsLoading = useDashboardSelector(selectAutomationsIsLoading);
|
|
23
|
+
const automationsError = useDashboardSelector(selectAutomationsError);
|
|
24
|
+
// Dashboard mode
|
|
25
|
+
const isReadOnly = useDashboardSelector(selectIsReadOnly);
|
|
26
|
+
const isInViewMode = useDashboardSelector(selectIsInViewMode);
|
|
27
|
+
// Visibility configuration
|
|
28
|
+
const menuButtonItemsVisibility = useDashboardSelector(selectMenuButtonItemsVisibility);
|
|
29
|
+
// Feature flags
|
|
30
|
+
const isScheduledEmailingEnabled = useDashboardSelector(selectEnableScheduling);
|
|
31
|
+
// Permissions
|
|
32
|
+
const canExport = useDashboardSelector(selectCanExportPdf);
|
|
33
|
+
const isWorkspaceManager = useDashboardSelector(selectCanManageWorkspace);
|
|
34
|
+
const canCreateAutomation = useDashboardSelector(selectCanCreateAutomation);
|
|
35
|
+
// Entitlements
|
|
36
|
+
const maxAutomationsEntitlement = useDashboardSelector(selectEntitlementMaxAutomations);
|
|
37
|
+
const unlimitedAutomationsEntitlement = useDashboardSelector(selectEntitlementUnlimitedAutomations);
|
|
38
|
+
const maxAutomations = parseInt(maxAutomationsEntitlement?.value ?? DEFAULT_MAX_AUTOMATIONS, 10);
|
|
39
|
+
const notificationChannels = useMemo(() => [...emails, ...webhooks], [webhooks, emails]);
|
|
40
|
+
const numberOfAvailableDestinations = notificationChannels.length;
|
|
41
|
+
const maxAutomationsReached = automationsCount >= maxAutomations && !unlimitedAutomationsEntitlement;
|
|
42
|
+
/**
|
|
43
|
+
* We want to hide scheduling when there are no webhooks unless the user is admin.
|
|
44
|
+
*/
|
|
45
|
+
const showDueToNumberOfAvailableDestinations = numberOfAvailableDestinations > 0 || isWorkspaceManager;
|
|
46
|
+
const isSchedulingAvailable = isInViewMode &&
|
|
47
|
+
!isReadOnly &&
|
|
48
|
+
isScheduledEmailingEnabled &&
|
|
49
|
+
canExport &&
|
|
50
|
+
showDueToNumberOfAvailableDestinations &&
|
|
51
|
+
(menuButtonItemsVisibility.scheduleEmailButton ?? true);
|
|
52
|
+
// Single Schedule Dialog
|
|
53
|
+
const isScheduledEmailingVisible = isSchedulingAvailable && canCreateAutomation && !maxAutomationsReached;
|
|
54
|
+
const isScheduleEmailingDialogOpen = useDashboardSelector(selectIsScheduleEmailDialogOpen) || false;
|
|
55
|
+
const scheduleEmailingDialogContext = useDashboardSelector(selectIsScheduleEmailDialogContext);
|
|
56
|
+
// List / Management Dialog
|
|
57
|
+
const isScheduledManagementEmailingVisible = isSchedulingAvailable && automations.length > 0;
|
|
58
|
+
const isScheduleEmailingManagementDialogOpen = useDashboardSelector(selectIsScheduleEmailManagementDialogOpen) || false;
|
|
59
|
+
// Widget and Insight
|
|
60
|
+
const editWidgetId = scheduledExportToEdit?.exportDefinitions?.find((exportDefinition) => isExportDefinitionVisualizationObjectRequestPayload(exportDefinition.requestPayload))?.requestPayload.content?.widget;
|
|
61
|
+
const editWidgetRef = editWidgetId ? { identifier: editWidgetId } : undefined;
|
|
62
|
+
const widget = useDashboardSelector(selectWidgetByRef(scheduleEmailingDialogContext?.widgetRef ?? editWidgetRef));
|
|
63
|
+
const insight = useDashboardSelector(selectInsightByWidgetRef(widget?.ref));
|
|
64
|
+
return {
|
|
65
|
+
// Data
|
|
66
|
+
users,
|
|
67
|
+
notificationChannels,
|
|
68
|
+
automations,
|
|
69
|
+
automationsLoading,
|
|
70
|
+
automationsError,
|
|
71
|
+
automationsCount,
|
|
72
|
+
numberOfAvailableDestinations,
|
|
73
|
+
widget,
|
|
74
|
+
insight,
|
|
75
|
+
webhooksLoading,
|
|
76
|
+
webhooksError,
|
|
77
|
+
// Single Schedule Dialog
|
|
78
|
+
isScheduledEmailingVisible,
|
|
79
|
+
isScheduleEmailingDialogOpen,
|
|
80
|
+
// List / Management Dialog
|
|
81
|
+
isScheduledManagementEmailingVisible,
|
|
82
|
+
isScheduleEmailingManagementDialogOpen,
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=useDashboardScheduledEmailsData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmailsData.js","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAGH,mDAAmD,GACtD,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,+BAA+B,EAC/B,+BAA+B,EAC/B,cAAc,EACd,WAAW,EACX,sBAAsB,EACtB,WAAW,EACX,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,EACnB,sBAAsB,EACtB,mCAAmC,EACnC,qCAAqC,EACrC,yBAAyB,EACzB,+BAA+B,EAC/B,kCAAkC,EAClC,yCAAyC,EACzC,iBAAiB,EACjB,wBAAwB,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAM5C;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,EAC5C,qBAAqB,GACe,EAAE,EAAE;IACxC,MAAM,KAAK,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAEhD,MAAM,MAAM,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAEjD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAEhE,MAAM,WAAW,GAAG,oBAAoB,CAAC,mCAAmC,CAAC,SAAS,CAAC,CAAC,CAAC;IACzF,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;IACtE,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;IAC5E,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;IAEtE,iBAAiB;IACjB,MAAM,UAAU,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,MAAM,YAAY,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;IAE9D,2BAA2B;IAC3B,MAAM,yBAAyB,GAAG,oBAAoB,CAAC,+BAA+B,CAAC,CAAC;IAExF,gBAAgB;IAChB,MAAM,0BAA0B,GAAG,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;IAEhF,cAAc;IACd,MAAM,SAAS,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;IAC3D,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;IAC1E,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;IAE5E,eAAe;IACf,MAAM,yBAAyB,GAAG,oBAAoB,CAAC,+BAA+B,CAAC,CAAC;IACxF,MAAM,+BAA+B,GAAG,oBAAoB,CAAC,qCAAqC,CAAC,CAAC;IACpG,MAAM,cAAc,GAAG,QAAQ,CAAC,yBAAyB,EAAE,KAAK,IAAI,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAEjG,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IACzF,MAAM,6BAA6B,GAAG,oBAAoB,CAAC,MAAM,CAAC;IAClE,MAAM,qBAAqB,GAAG,gBAAgB,IAAI,cAAc,IAAI,CAAC,+BAA+B,CAAC;IAErG;;OAEG;IACH,MAAM,sCAAsC,GAAG,6BAA6B,GAAG,CAAC,IAAI,kBAAkB,CAAC;IAEvG,MAAM,qBAAqB,GACvB,YAAY;QACZ,CAAC,UAAU;QACX,0BAA0B;QAC1B,SAAS;QACT,sCAAsC;QACtC,CAAC,yBAAyB,CAAC,mBAAmB,IAAI,IAAI,CAAC,CAAC;IAE5D,yBAAyB;IACzB,MAAM,0BAA0B,GAAG,qBAAqB,IAAI,mBAAmB,IAAI,CAAC,qBAAqB,CAAC;IAC1G,MAAM,4BAA4B,GAAG,oBAAoB,CAAC,+BAA+B,CAAC,IAAI,KAAK,CAAC;IACpG,MAAM,6BAA6B,GAAG,oBAAoB,CAAC,kCAAkC,CAAC,CAAC;IAE/F,2BAA2B;IAC3B,MAAM,oCAAoC,GAAG,qBAAqB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7F,MAAM,sCAAsC,GACxC,oBAAoB,CAAC,yCAAyC,CAAC,IAAI,KAAK,CAAC;IAE7E,qBAAqB;IACrB,MAAM,YAAY,GACd,qBAAqB,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAChE,mDAAmD,CAAC,gBAAgB,CAAC,cAAc,CAAC,CACvF,EAAE,cAAc,CAAC,OACrB,EAAE,MAAM,CAAC;IACV,MAAM,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,MAAM,MAAM,GAAG,oBAAoB,CAC/B,iBAAiB,CAAC,6BAA6B,EAAE,SAAS,IAAI,aAAa,CAAC,CAC/E,CAAC;IACF,MAAM,OAAO,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAE5E,OAAO;QACH,OAAO;QACP,KAAK;QACL,oBAAoB;QACpB,WAAW;QACX,kBAAkB;QAClB,gBAAgB;QAChB,gBAAgB;QAChB,6BAA6B;QAC7B,MAAM;QACN,OAAO;QACP,eAAe;QACf,aAAa;QACb,yBAAyB;QACzB,0BAA0B;QAC1B,4BAA4B;QAC5B,2BAA2B;QAC3B,oCAAoC;QACpC,sCAAsC;KACzC,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IAutomationMetadataObject, IWidget } from "@gooddata/sdk-model";
|
|
2
|
+
/**
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
export interface IUseDashboardScheduledEmailsDialogProps {
|
|
6
|
+
setScheduledExportToEdit: (automation?: IAutomationMetadataObject) => void;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export declare const useDashboardScheduledEmailsDialog: ({ setScheduledExportToEdit, }: IUseDashboardScheduledEmailsDialogProps) => {
|
|
12
|
+
defaultOnScheduleEmailing: (widget?: IWidget) => void;
|
|
13
|
+
onScheduleEmailingOpen: (widget?: IWidget) => void;
|
|
14
|
+
onScheduleEmailingCancel: (widget?: IWidget) => void;
|
|
15
|
+
onScheduleEmailingCreateError: () => void;
|
|
16
|
+
onScheduleEmailingCreateSuccess: (widget?: IWidget) => void;
|
|
17
|
+
onScheduleEmailingSaveError: () => void;
|
|
18
|
+
onScheduleEmailingSaveSuccess: (widget?: IWidget) => void;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=useDashboardScheduledEmailsDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmailsDialog.d.ts","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAMzE;;GAEG;AACH,MAAM,WAAW,uCAAuC;IACpD,wBAAwB,EAAE,CAAC,UAAU,CAAC,EAAE,yBAAyB,KAAK,IAAI,CAAC;CAC9E;AAED;;GAEG;AACH,eAAO,MAAM,iCAAiC,kCAE3C,uCAAuC;yCAmBxB,OAAO;sCAYP,OAAO;wCAOP,OAAO;;+CAUP,OAAO;;6CAgBP,OAAO;CA+BxB,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
// (C) 2022-2024 GoodData Corporation
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import { useToastMessage } from "@gooddata/sdk-ui-kit";
|
|
4
|
+
import { messages } from "../../../locales.js";
|
|
5
|
+
import { useDashboardScheduledEmailsCommands } from "./useDashboardScheduledEmailsCommands.js";
|
|
6
|
+
import { useDashboardSelector } from "../DashboardStoreProvider.js";
|
|
7
|
+
import { selectDashboardRef } from "../../store/index.js";
|
|
8
|
+
/**
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export const useDashboardScheduledEmailsDialog = ({ setScheduledExportToEdit, }) => {
|
|
12
|
+
const { addSuccess, addError } = useToastMessage();
|
|
13
|
+
const dashboardRef = useDashboardSelector(selectDashboardRef);
|
|
14
|
+
const { closeScheduleEmailingDialog, openScheduleEmailingDialog, openScheduleEmailingManagementDialog, refreshAutomations, } = useDashboardScheduledEmailsCommands();
|
|
15
|
+
/*
|
|
16
|
+
* exports and scheduling are not available when rendering a dashboard that is not persisted.
|
|
17
|
+
* this can happen when a new dashboard is created and is being edited.
|
|
18
|
+
*
|
|
19
|
+
* the setup of menu items available in the menu needs to reflect this.
|
|
20
|
+
*/
|
|
21
|
+
const defaultOnScheduleEmailing = useCallback((widget) => {
|
|
22
|
+
if (!dashboardRef) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
openScheduleEmailingDialog(widget);
|
|
26
|
+
}, [dashboardRef, openScheduleEmailingDialog]);
|
|
27
|
+
// Open / Close
|
|
28
|
+
const onScheduleEmailingOpen = useCallback((widget) => {
|
|
29
|
+
openScheduleEmailingDialog(widget);
|
|
30
|
+
}, [openScheduleEmailingDialog]);
|
|
31
|
+
const onScheduleEmailingCancel = useCallback((widget) => {
|
|
32
|
+
closeScheduleEmailingDialog();
|
|
33
|
+
setScheduledExportToEdit(undefined);
|
|
34
|
+
openScheduleEmailingManagementDialog(widget);
|
|
35
|
+
}, [closeScheduleEmailingDialog, openScheduleEmailingManagementDialog, setScheduledExportToEdit]);
|
|
36
|
+
// Create
|
|
37
|
+
const onScheduleEmailingCreateSuccess = useCallback((widget) => {
|
|
38
|
+
closeScheduleEmailingDialog();
|
|
39
|
+
openScheduleEmailingManagementDialog(widget);
|
|
40
|
+
addSuccess(messages.scheduleEmailSubmitSuccess);
|
|
41
|
+
refreshAutomations();
|
|
42
|
+
}, [closeScheduleEmailingDialog, openScheduleEmailingManagementDialog, addSuccess, refreshAutomations]);
|
|
43
|
+
const onScheduleEmailingCreateError = useCallback(() => {
|
|
44
|
+
closeScheduleEmailingDialog();
|
|
45
|
+
addError(messages.scheduleEmailSubmitError);
|
|
46
|
+
}, [closeScheduleEmailingDialog, addError]);
|
|
47
|
+
// Edit
|
|
48
|
+
const onScheduleEmailingSaveSuccess = useCallback((widget) => {
|
|
49
|
+
closeScheduleEmailingDialog();
|
|
50
|
+
openScheduleEmailingManagementDialog(widget);
|
|
51
|
+
addSuccess(messages.scheduleEmailSaveSuccess);
|
|
52
|
+
setScheduledExportToEdit(undefined);
|
|
53
|
+
refreshAutomations();
|
|
54
|
+
}, [
|
|
55
|
+
closeScheduleEmailingDialog,
|
|
56
|
+
openScheduleEmailingManagementDialog,
|
|
57
|
+
addSuccess,
|
|
58
|
+
setScheduledExportToEdit,
|
|
59
|
+
refreshAutomations,
|
|
60
|
+
]);
|
|
61
|
+
const onScheduleEmailingSaveError = useCallback(() => {
|
|
62
|
+
closeScheduleEmailingDialog();
|
|
63
|
+
addError(messages.scheduleEmailSaveError);
|
|
64
|
+
setScheduledExportToEdit(undefined);
|
|
65
|
+
}, [closeScheduleEmailingDialog, addError, setScheduledExportToEdit]);
|
|
66
|
+
return {
|
|
67
|
+
defaultOnScheduleEmailing,
|
|
68
|
+
onScheduleEmailingOpen,
|
|
69
|
+
onScheduleEmailingCancel,
|
|
70
|
+
onScheduleEmailingCreateError,
|
|
71
|
+
onScheduleEmailingCreateSuccess,
|
|
72
|
+
onScheduleEmailingSaveError,
|
|
73
|
+
onScheduleEmailingSaveSuccess,
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=useDashboardScheduledEmailsDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDashboardScheduledEmailsDialog.js","sourceRoot":"","sources":["../../../../src/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.ts"],"names":[],"mappings":"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"}
|