@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.
Files changed (167) hide show
  1. package/esm/__version.d.ts +1 -1
  2. package/esm/__version.js +1 -1
  3. package/esm/{presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.d.ts → _staging/automation/index.d.ts} +2 -4
  4. package/esm/_staging/automation/index.d.ts.map +1 -0
  5. package/esm/{presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.js → _staging/automation/index.js} +9 -33
  6. package/esm/_staging/automation/index.js.map +1 -0
  7. package/esm/model/react/index.d.ts +8 -1
  8. package/esm/model/react/index.d.ts.map +1 -1
  9. package/esm/model/react/index.js +5 -1
  10. package/esm/model/react/index.js.map +1 -1
  11. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.d.ts +41 -0
  12. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.d.ts.map +1 -0
  13. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.js +64 -0
  14. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmails.js.map +1 -0
  15. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.d.ts +24 -0
  16. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.d.ts.map +1 -0
  17. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.js +35 -0
  18. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsCommands.js.map +1 -0
  19. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.d.ts +31 -0
  20. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.d.ts.map +1 -0
  21. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.js +85 -0
  22. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsData.js.map +1 -0
  23. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.d.ts +20 -0
  24. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.d.ts.map +1 -0
  25. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.js +76 -0
  26. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsDialog.js.map +1 -0
  27. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.d.ts +20 -0
  28. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.d.ts.map +1 -0
  29. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.js +17 -0
  30. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsFilters.js.map +1 -0
  31. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.d.ts +21 -0
  32. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.d.ts.map +1 -0
  33. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.js +72 -0
  34. package/esm/model/react/useDasboardScheduledEmails/useDashboardScheduledEmailsManagementDialog.js.map +1 -0
  35. package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.d.ts +26 -0
  36. package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.d.ts.map +1 -0
  37. package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.js +45 -0
  38. package/esm/model/react/useDasboardScheduledEmails/useFiltersForDashboardScheduledExport.js.map +1 -0
  39. package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.d.ts +35 -0
  40. package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.d.ts.map +1 -0
  41. package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.js +69 -0
  42. package/esm/model/react/useDasboardScheduledEmails/useFiltersForWidgetScheduledExport.js.map +1 -0
  43. package/esm/{presentation/widget/common → model/react}/useWidgetFilters.d.ts +2 -1
  44. package/esm/model/react/useWidgetFilters.d.ts.map +1 -0
  45. package/esm/{presentation/widget/common → model/react}/useWidgetFilters.js +5 -2
  46. package/esm/model/react/useWidgetFilters.js.map +1 -0
  47. package/esm/model/store/drill/drillSelectors.d.ts +4 -0
  48. package/esm/model/store/drill/drillSelectors.d.ts.map +1 -1
  49. package/esm/model/store/drill/drillSelectors.js +4 -0
  50. package/esm/model/store/drill/drillSelectors.js.map +1 -1
  51. package/esm/model/store/index.d.ts +1 -1
  52. package/esm/model/store/index.d.ts.map +1 -1
  53. package/esm/model/store/index.js +1 -1
  54. package/esm/model/store/index.js.map +1 -1
  55. package/esm/presentation/dashboard/DashboardHeader/ScheduledEmailDialogProvider.d.ts.map +1 -1
  56. package/esm/presentation/dashboard/DashboardHeader/ScheduledEmailDialogProvider.js +19 -4
  57. package/esm/presentation/dashboard/DashboardHeader/ScheduledEmailDialogProvider.js.map +1 -1
  58. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.d.ts.map +1 -1
  59. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.js +1 -2
  60. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.js.map +1 -1
  61. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts +1 -1
  62. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
  63. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +67 -81
  64. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js.map +1 -1
  65. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.d.ts +1 -1
  66. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.d.ts.map +1 -1
  67. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.js.map +1 -1
  68. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFiltersList.d.ts +1 -1
  69. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFiltersList.d.ts.map +1 -1
  70. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts +14 -0
  71. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts.map +1 -0
  72. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js +46 -0
  73. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js.map +1 -0
  74. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts +16 -0
  75. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts.map +1 -0
  76. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js +31 -0
  77. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js.map +1 -0
  78. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js +1 -1
  79. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js.map +1 -1
  80. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts +30 -9
  81. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts.map +1 -1
  82. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js +90 -63
  83. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js.map +1 -1
  84. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.d.ts +23 -0
  85. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.d.ts.map +1 -0
  86. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.js +30 -0
  87. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useFiltersForDashboardScheduledExportInfo.js.map +1 -0
  88. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.d.ts +1 -1
  89. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.d.ts.map +1 -1
  90. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.js +1 -1
  91. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.js.map +1 -1
  92. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.d.ts.map +1 -1
  93. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js +2 -2
  94. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js.map +1 -1
  95. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.d.ts +3 -3
  96. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.d.ts.map +1 -1
  97. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.js +3 -3
  98. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmail.js.map +1 -1
  99. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.d.ts +3 -3
  100. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.d.ts.map +1 -1
  101. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.js +2 -2
  102. package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/components/ScheduledEmailsList.js.map +1 -1
  103. package/esm/presentation/scheduledEmail/index.d.ts +1 -1
  104. package/esm/presentation/scheduledEmail/index.d.ts.map +1 -1
  105. package/esm/presentation/scheduledEmail/types.d.ts +71 -44
  106. package/esm/presentation/scheduledEmail/types.d.ts.map +1 -1
  107. package/esm/presentation/topBar/menuButton/useDefaultMenuItems.d.ts.map +1 -1
  108. package/esm/presentation/topBar/menuButton/useDefaultMenuItems.js +1 -1
  109. package/esm/presentation/topBar/menuButton/useDefaultMenuItems.js.map +1 -1
  110. package/esm/presentation/widget/common/index.d.ts +0 -1
  111. package/esm/presentation/widget/common/index.d.ts.map +1 -1
  112. package/esm/presentation/widget/common/index.js +1 -2
  113. package/esm/presentation/widget/common/index.js.map +1 -1
  114. package/esm/presentation/widget/common/useCustomWidgetExecutionDataView.d.ts.map +1 -1
  115. package/esm/presentation/widget/common/useCustomWidgetExecutionDataView.js +2 -2
  116. package/esm/presentation/widget/common/useCustomWidgetExecutionDataView.js.map +1 -1
  117. package/esm/presentation/widget/common/useCustomWidgetInsightDataView.d.ts.map +1 -1
  118. package/esm/presentation/widget/common/useCustomWidgetInsightDataView.js +2 -2
  119. package/esm/presentation/widget/common/useCustomWidgetInsightDataView.js.map +1 -1
  120. package/esm/presentation/widget/common/useInsightWidgetDataView.d.ts.map +1 -1
  121. package/esm/presentation/widget/common/useInsightWidgetDataView.js +2 -3
  122. package/esm/presentation/widget/common/useInsightWidgetDataView.js.map +1 -1
  123. package/esm/presentation/widget/index.d.ts +1 -1
  124. package/esm/presentation/widget/index.d.ts.map +1 -1
  125. package/esm/presentation/widget/index.js +1 -1
  126. package/esm/presentation/widget/index.js.map +1 -1
  127. package/esm/presentation/widget/insight/ViewModeDashboardInsight/Insight/DashboardInsight.d.ts.map +1 -1
  128. package/esm/presentation/widget/insight/ViewModeDashboardInsight/Insight/DashboardInsight.js +1 -2
  129. package/esm/presentation/widget/insight/ViewModeDashboardInsight/Insight/DashboardInsight.js.map +1 -1
  130. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.d.ts.map +1 -1
  131. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.js +2 -3
  132. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.js.map +1 -1
  133. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.d.ts.map +1 -1
  134. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js +7 -8
  135. package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightAlerting.js.map +1 -1
  136. package/esm/presentation/widget/kpi/common/useKpiData.d.ts.map +1 -1
  137. package/esm/presentation/widget/kpi/common/useKpiData.js +2 -3
  138. package/esm/presentation/widget/kpi/common/useKpiData.js.map +1 -1
  139. package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.d.ts +1 -0
  140. package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.d.ts.map +1 -1
  141. package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.js +2 -2
  142. package/esm/presentation/widget/visualizationSwitcher/configuration/Toolbar.js.map +1 -1
  143. package/esm/presentation/widget/visualizationSwitcher/configuration/types.d.ts +1 -0
  144. package/esm/presentation/widget/visualizationSwitcher/configuration/types.d.ts.map +1 -1
  145. package/esm/presentation/widget/widget/InsightWidget/DefaultDashboardInsightWidget.js +1 -1
  146. package/esm/presentation/widget/widget/InsightWidget/DefaultDashboardInsightWidget.js.map +1 -1
  147. package/esm/presentation/widget/widget/VisualizationSwitcherWidget/EditableDashboardVisualizationSwitcherWidget.d.ts.map +1 -1
  148. package/esm/presentation/widget/widget/VisualizationSwitcherWidget/EditableDashboardVisualizationSwitcherWidget.js +2 -2
  149. package/esm/presentation/widget/widget/VisualizationSwitcherWidget/EditableDashboardVisualizationSwitcherWidget.js.map +1 -1
  150. package/esm/sdk-ui-dashboard.d.ts +176 -65
  151. package/package.json +15 -15
  152. package/esm/model/react/useDashboardScheduledEmails.d.ts +0 -44
  153. package/esm/model/react/useDashboardScheduledEmails.d.ts.map +0 -1
  154. package/esm/model/react/useDashboardScheduledEmails.js +0 -194
  155. package/esm/model/react/useDashboardScheduledEmails.js.map +0 -1
  156. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.d.ts +0 -18
  157. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.d.ts.map +0 -1
  158. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.js +0 -66
  159. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/Attachments.js.map +0 -1
  160. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.d.ts +0 -43
  161. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.d.ts.map +0 -1
  162. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.js +0 -82
  163. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useAttachmentDashboardFilters.js.map +0 -1
  164. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.d.ts.map +0 -1
  165. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/utils/automationHelpers.js.map +0 -1
  166. package/esm/presentation/widget/common/useWidgetFilters.d.ts.map +0 -1
  167. package/esm/presentation/widget/common/useWidgetFilters.js.map +0 -1
@@ -1,2 +1,2 @@
1
- export declare const LIB_VERSION = "10.12.0-alpha.5";
1
+ export declare const LIB_VERSION = "10.12.0-alpha.7";
2
2
  //# sourceMappingURL=__version.d.ts.map
package/esm/__version.js CHANGED
@@ -1,4 +1,4 @@
1
1
  // (C) 2021 GoodData Corporation
2
2
  // DO NOT CHANGE THIS FILE, IT IS RE-GENERATED ON EVERY BUILD
3
- export const LIB_VERSION = "10.12.0-alpha.5";
3
+ export const LIB_VERSION = "10.12.0-alpha.7";
4
4
  //# sourceMappingURL=__version.js.map
@@ -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: (automation: IAutomationMetadataObjectDefinition, originalAutomation: IAutomationMetadataObjectDefinition) => boolean;
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=automationHelpers.d.ts.map
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 { isAbsoluteDateFilter, isExportDefinitionDashboardRequestPayload, isExportDefinitionVisualizationObjectRequestPayload, isFilter, isFilterContextItem, isObjRef, isRelativeDateFilter, } from "@gooddata/sdk-model";
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 = (automation, originalAutomation) => {
71
- const automationWithoutExportDefinitions = omit(automation, "exportDefinitions");
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 = automation.exportDefinitions
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=automationHelpers.js.map
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,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AACxG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
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"}
@@ -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,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AACxG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
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
@@ -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":"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"}
@@ -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":"AAAA,qCAAqC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,mCAAmC,EAAE,MAAM,0CAA0C,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAS1D;;GAEG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,EAC9C,wBAAwB,GACc,EAAE,EAAE;IAC1C,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,eAAe,EAAE,CAAC;IAEnD,MAAM,YAAY,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;IAE9D,MAAM,EACF,2BAA2B,EAC3B,0BAA0B,EAC1B,oCAAoC,EACpC,kBAAkB,GACrB,GAAG,mCAAmC,EAAE,CAAC;IAE1C;;;;;OAKG;IACH,MAAM,yBAAyB,GAAG,WAAW,CACzC,CAAC,MAAgB,EAAE,EAAE;QACjB,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO;QACX,CAAC;QAED,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC,EACD,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAC7C,CAAC;IAEF,eAAe;IACf,MAAM,sBAAsB,GAAG,WAAW,CACtC,CAAC,MAAgB,EAAE,EAAE;QACjB,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC,EACD,CAAC,0BAA0B,CAAC,CAC/B,CAAC;IAEF,MAAM,wBAAwB,GAAG,WAAW,CACxC,CAAC,MAAgB,EAAE,EAAE;QACjB,2BAA2B,EAAE,CAAC;QAC9B,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACpC,oCAAoC,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC,EACD,CAAC,2BAA2B,EAAE,oCAAoC,EAAE,wBAAwB,CAAC,CAChG,CAAC;IAEF,SAAS;IACT,MAAM,+BAA+B,GAAG,WAAW,CAC/C,CAAC,MAAgB,EAAE,EAAE;QACjB,2BAA2B,EAAE,CAAC;QAC9B,oCAAoC,CAAC,MAAM,CAAC,CAAC;QAC7C,UAAU,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QAChD,kBAAkB,EAAE,CAAC;IACzB,CAAC,EACD,CAAC,2BAA2B,EAAE,oCAAoC,EAAE,UAAU,EAAE,kBAAkB,CAAC,CACtG,CAAC;IAEF,MAAM,6BAA6B,GAAG,WAAW,CAAC,GAAG,EAAE;QACnD,2BAA2B,EAAE,CAAC;QAC9B,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IAChD,CAAC,EAAE,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE5C,OAAO;IACP,MAAM,6BAA6B,GAAG,WAAW,CAC7C,CAAC,MAAgB,EAAE,EAAE;QACjB,2BAA2B,EAAE,CAAC;QAC9B,oCAAoC,CAAC,MAAM,CAAC,CAAC;QAC7C,UAAU,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;QAC9C,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACpC,kBAAkB,EAAE,CAAC;IACzB,CAAC,EACD;QACI,2BAA2B;QAC3B,oCAAoC;QACpC,UAAU;QACV,wBAAwB;QACxB,kBAAkB;KACrB,CACJ,CAAC;IAEF,MAAM,2BAA2B,GAAG,WAAW,CAAC,GAAG,EAAE;QACjD,2BAA2B,EAAE,CAAC;QAC9B,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC1C,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC,EAAE,CAAC,2BAA2B,EAAE,QAAQ,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEtE,OAAO;QACH,yBAAyB;QACzB,sBAAsB;QACtB,wBAAwB;QACxB,6BAA6B;QAC7B,+BAA+B;QAC/B,2BAA2B;QAC3B,6BAA6B;KAChC,CAAC;AACN,CAAC,CAAC"}