@gooddata/sdk-ui-dashboard 11.36.0-alpha.3 → 11.36.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NOTICE +63 -115
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/index.d.ts +5 -13
- package/esm/index.js +2 -10
- package/esm/internal.d.ts +1 -1
- package/esm/model/commandHandlers/dashboard/common/filterViews.js +24 -1
- package/esm/model/commandHandlers/dashboard/common/parameterHydration.d.ts +7 -1
- package/esm/model/commandHandlers/dashboard/common/parameterHydration.js +16 -2
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.js +4 -2
- package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.d.ts +7 -1
- package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js +80 -4
- package/esm/model/commandHandlers/filterContext/filterViewHandler.js +10 -0
- package/esm/model/commandHandlers/filterContext/filterViewParameters.d.ts +7 -0
- package/esm/model/commandHandlers/filterContext/filterViewParameters.js +11 -0
- package/esm/model/store/config/configSelectors.d.ts +0 -6
- package/esm/model/store/config/configSelectors.js +0 -8
- package/esm/model/store/tabs/index.d.ts +4 -0
- package/esm/model/store/tabs/parameters/parametersReducers.d.ts +11 -1
- package/esm/model/store/tabs/parameters/parametersReducers.js +16 -8
- package/esm/model/store/tabs/parameters/parametersSelectors.d.ts +7 -0
- package/esm/model/store/tabs/parameters/parametersSelectors.js +17 -0
- package/esm/model/types/commonTypes.d.ts +11 -2
- package/esm/model/utils/measureValueFilterUtils.d.ts +14 -0
- package/esm/model/utils/measureValueFilterUtils.js +21 -0
- package/esm/presentation/alerting/DefaultAlertingDialog/{DefaultAlertingDialogNew.d.ts → DefaultAlertingDialog.d.ts} +1 -1
- package/esm/presentation/alerting/DefaultAlertingDialog/{DefaultAlertingDialogNew.js → DefaultAlertingDialog.js} +6 -12
- package/esm/presentation/alerting/DefaultAlertingDialog/components/AlertAttributeSelect.js +43 -9
- package/esm/presentation/alerting/DefaultAlertingDialog/hooks/useSaveAlertToBackend.js +13 -25
- package/esm/presentation/alerting/types.d.ts +1 -72
- package/esm/presentation/automationFilters/hooks/useValidateExistingAutomationFilters.d.ts +1 -2
- package/esm/presentation/automationFilters/hooks/useValidateExistingAutomationFilters.js +5 -5
- package/esm/presentation/dashboard/DashboardHeader/AlertingDialogProvider.js +1 -8
- package/esm/presentation/dashboard/DashboardHeader/ScheduledEmailDialogProvider.js +17 -8
- package/esm/presentation/dashboard/DashboardHeader/ShareDialogDashboardHeader.js +5 -2
- package/esm/presentation/dashboard/components/DashboardRenderer.js +2 -2
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.js +97 -13
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParameters.d.ts +1 -1
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParameters.js +3 -3
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DashboardParametersSection.d.ts +3 -2
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DashboardParametersSection.js +17 -4
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/InsightParametersSection.d.ts +4 -2
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/InsightParametersSection.js +37 -4
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/Parameter.d.ts +4 -3
- package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/Parameter.js +3 -4
- package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.js +4 -1
- package/esm/presentation/filterBar/filterBar/DefaultDashboardFilterGroup.js +4 -1
- package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +4 -36
- package/esm/presentation/localization/bundles/en-US.localization-bundle.js +4 -36
- package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/es-419.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +2 -9
- package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +2 -9
- package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +2 -9
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +26 -59
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts +2 -6
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js +22 -104
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useSaveScheduledEmailToBackend.js +12 -33
- package/esm/presentation/scheduledEmail/hooks/useWidgetAutomationFilters.d.ts +3 -0
- package/esm/presentation/scheduledEmail/hooks/useWidgetAutomationFilters.js +46 -0
- package/esm/presentation/scheduledEmail/types.d.ts +1 -7
- package/esm/presentation/scheduledEmail/utils/filters.d.ts +2 -0
- package/esm/presentation/scheduledEmail/utils/filters.js +5 -0
- package/esm/presentation/shareDialog/DefaultShareDialog.d.ts +1 -1
- package/esm/presentation/shareDialog/DefaultShareDialog.js +2 -2
- package/esm/presentation/shareDialog/types.d.ts +5 -1
- package/esm/presentation/widget/insight/configuration/DrillTargets/useInvalidFilteringParametersIdentifiers.d.ts +2 -2
- package/esm/presentation/widget/insight/configuration/DrillTargets/useInvalidFilteringParametersIdentifiers.js +36 -5
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/EditAlert.js +2 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertConfig/hooks/useInsightWidgetAlerting.js +3 -6
- package/esm/presentation/widget/insight/configuration/InsightAlerts.js +1 -9
- package/esm/sdk-ui-dashboard.d.ts +28 -240
- package/package.json +20 -20
- package/esm/model/react/filtering/shared.d.ts +0 -6
- package/esm/model/react/filtering/shared.js +0 -38
- package/esm/model/react/filtering/useAutomationAvailableDashboardFilters.d.ts +0 -13
- package/esm/model/react/filtering/useAutomationAvailableDashboardFilters.js +0 -54
- package/esm/model/react/filtering/useDashboardScheduledExportFilters.d.ts +0 -19
- package/esm/model/react/filtering/useDashboardScheduledExportFilters.js +0 -18
- package/esm/model/react/filtering/useScheduledExportFilters.d.ts +0 -26
- package/esm/model/react/filtering/useScheduledExportFilters.js +0 -23
- package/esm/model/react/filtering/useWidgetAlertFilters.d.ts +0 -33
- package/esm/model/react/filtering/useWidgetAlertFilters.js +0 -48
- package/esm/model/react/filtering/useWidgetScheduledExportFilters.d.ts +0 -33
- package/esm/model/react/filtering/useWidgetScheduledExportFilters.js +0 -48
- package/esm/model/react/useDashboardAlerting/useEnableAutomationFilterContext.d.ts +0 -4
- package/esm/model/react/useDashboardAlerting/useEnableAutomationFilterContext.js +0 -20
- package/esm/model/react/useDashboardAlertsOld.d.ts +0 -32
- package/esm/model/react/useDashboardAlertsOld.js +0 -141
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialogOld.d.ts +0 -5
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialogOld.js +0 -36
- package/esm/presentation/alerting/DefaultAlertingDialog/components/AlertAttributeSelectOld.d.ts +0 -17
- package/esm/presentation/alerting/DefaultAlertingDialog/components/AlertAttributeSelectOld.js +0 -103
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogOld.d.ts +0 -5
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogOld.js +0 -53
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/AlertOld.d.ts +0 -9
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/AlertOld.js +0 -84
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/AlertsListOld.d.ts +0 -11
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/components/AlertsListOld.js +0 -16
- package/esm/presentation/dashboard/DashboardHeader/AlertingDialogProviderOld.d.ts +0 -1
- package/esm/presentation/dashboard/DashboardHeader/AlertingDialogProviderOld.js +0 -12
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFilters.d.ts +0 -29
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFilters.js +0 -61
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFiltersList.d.ts +0 -6
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFiltersList.js +0 -12
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentItems.d.ts +0 -17
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentItems.js +0 -68
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.d.ts +0 -4
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.js +0 -6
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.d.ts +0 -15
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.js +0 -42
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/WidgetAttachments.d.ts +0 -18
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/WidgetAttachments.js +0 -25
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/types.d.ts +0 -2
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/types.js +0 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertsOld.d.ts +0 -2
- package/esm/presentation/widget/insight/configuration/InsightAlertsOld.js +0 -43
|
@@ -225,7 +225,6 @@ export declare const zh_HK: {
|
|
|
225
225
|
"dialogs.schedule.management.create.new": string;
|
|
226
226
|
"dialogs.schedule.management.create.tooManyMessage": string;
|
|
227
227
|
"dialogs.schedule.management.noSchedules": string;
|
|
228
|
-
"dialogs.schedule.management.attachments.attachment": string;
|
|
229
228
|
"dialogs.schedule.management.attachments.xlsx.settings": string;
|
|
230
229
|
"dialogs.schedule.management.attachments.csv.settings": string;
|
|
231
230
|
"dialogs.schedule.management.attachments.cells.merged": string;
|
|
@@ -235,14 +234,6 @@ export declare const zh_HK: {
|
|
|
235
234
|
"dialogs.export.pdf.headline": string;
|
|
236
235
|
"dialogs.schedule.management.attachments.delete": string;
|
|
237
236
|
"dialogs.schedule.management.attachments.removed": string;
|
|
238
|
-
"dialogs.schedule.management.attachments.filters.title": string;
|
|
239
|
-
"dialogs.schedule.management.attachments.filters.using": string;
|
|
240
|
-
"dialogs.schedule.management.attachments.filters.default": string;
|
|
241
|
-
"dialogs.schedule.management.attachments.filters.edited": string;
|
|
242
|
-
"dialogs.schedule.management.attachments.filters.item.default": string;
|
|
243
|
-
"dialogs.schedule.management.attachments.filters.item.edited": string;
|
|
244
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip": string;
|
|
245
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip.disabled": string;
|
|
246
237
|
"dialogs.schedule.management.attachments.message": string;
|
|
247
238
|
"scheduledEmail.attachmentFormat.widget.png": string;
|
|
248
239
|
"scheduledEmail.attachmentFormat.widget.pptx": string;
|
|
@@ -482,6 +473,8 @@ export declare const zh_HK: {
|
|
|
482
473
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": string;
|
|
483
474
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardFilterNotCompatible.tooltip": string;
|
|
484
475
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardMetricFilter.tooltip": string;
|
|
476
|
+
"configurationPanel.drillConfig.filterSelection.drillToDashboardDuplicateMetricFilter.tooltip": string;
|
|
477
|
+
"configurationPanel.drillConfig.filterSelection.drillToInsightMeasureValueFilter.tooltip": string;
|
|
485
478
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardRankingFilter.tooltip": string;
|
|
486
479
|
"rankingFilter.preview.top_without_attribute_plain": string;
|
|
487
480
|
"rankingFilter.preview.bottom_without_attribute_plain": string;
|
|
@@ -227,7 +227,6 @@ export const zh_HK = {
|
|
|
227
227
|
"dialogs.schedule.management.create.new": "創新",
|
|
228
228
|
"dialogs.schedule.management.create.tooManyMessage": "您的組織已達到計劃導出的限制。 請與您的管理員聯繫以創建更多。",
|
|
229
229
|
"dialogs.schedule.management.noSchedules": "冇計劃嘅導出。{br}新建。",
|
|
230
|
-
"dialogs.schedule.management.attachments.attachment": "作為文件附加{format}",
|
|
231
230
|
"dialogs.schedule.management.attachments.xlsx.settings": "XLSX選項",
|
|
232
231
|
"dialogs.schedule.management.attachments.csv.settings": "CSV 選項",
|
|
233
232
|
"dialogs.schedule.management.attachments.cells.merged": "保持屬性儲存格合併",
|
|
@@ -237,14 +236,6 @@ export const zh_HK = {
|
|
|
237
236
|
"dialogs.export.pdf.headline": "匯出設定 (.pdf)",
|
|
238
237
|
"dialogs.schedule.management.attachments.delete": "刪除 {format} 附件",
|
|
239
238
|
"dialogs.schedule.management.attachments.removed": "已移除 {format} 附件。",
|
|
240
|
-
"dialogs.schedule.management.attachments.filters.title": "儀表板篩選器",
|
|
241
|
-
"dialogs.schedule.management.attachments.filters.using": "用",
|
|
242
|
-
"dialogs.schedule.management.attachments.filters.default": "默認儀錶板過濾器",
|
|
243
|
-
"dialogs.schedule.management.attachments.filters.edited": "已編輯嘅儀錶板篩選器",
|
|
244
|
-
"dialogs.schedule.management.attachments.filters.item.default": "使用默認篩選器",
|
|
245
|
-
"dialogs.schedule.management.attachments.filters.item.edited": "使用編輯過嘅篩選器",
|
|
246
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip": "儀錶板篩選器嘅默認狀態將在排程匯出中使用,即使默認值將來會更改也是如此。",
|
|
247
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip.disabled": "要使用默認篩選器計劃導出,請創建新嘅排程匯出。",
|
|
248
239
|
"dialogs.schedule.management.attachments.message": "<strong>注意</strong>。 交叉篩選將唔會喺排程嘅匯出中應用。",
|
|
249
240
|
"scheduledEmail.attachmentFormat.widget.png": "快照(.png)",
|
|
250
241
|
"scheduledEmail.attachmentFormat.widget.pptx": "單滑軌(.pptx)",
|
|
@@ -484,6 +475,8 @@ export const zh_HK = {
|
|
|
484
475
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": "無法啟用。請先將此篩選器新增至目標儀表板。",
|
|
485
476
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardFilterNotCompatible.tooltip": "無法啟用。目標儀表板上的相符篩選器不支援此篩選器類型。",
|
|
486
477
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardMetricFilter.tooltip": "指標篩選器無法傳遞至目標儀表板。",
|
|
478
|
+
"configurationPanel.drillConfig.filterSelection.drillToDashboardDuplicateMetricFilter.tooltip": "此指標的另一個篩選器已在傳遞中。",
|
|
479
|
+
"configurationPanel.drillConfig.filterSelection.drillToInsightMeasureValueFilter.tooltip": "篩選器不適用於鑽取目的地。",
|
|
487
480
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardRankingFilter.tooltip": "頂部/底部篩選器無法傳遞至目標儀表板。",
|
|
488
481
|
"rankingFilter.preview.top_without_attribute_plain": "{measure} 的前 {value} 項",
|
|
489
482
|
"rankingFilter.preview.bottom_without_attribute_plain": "{measure} 的後 {value} 項",
|
|
@@ -225,7 +225,6 @@ export declare const zh_Hans: {
|
|
|
225
225
|
"dialogs.schedule.management.create.new": string;
|
|
226
226
|
"dialogs.schedule.management.create.tooManyMessage": string;
|
|
227
227
|
"dialogs.schedule.management.noSchedules": string;
|
|
228
|
-
"dialogs.schedule.management.attachments.attachment": string;
|
|
229
228
|
"dialogs.schedule.management.attachments.xlsx.settings": string;
|
|
230
229
|
"dialogs.schedule.management.attachments.csv.settings": string;
|
|
231
230
|
"dialogs.schedule.management.attachments.cells.merged": string;
|
|
@@ -235,14 +234,6 @@ export declare const zh_Hans: {
|
|
|
235
234
|
"dialogs.export.pdf.headline": string;
|
|
236
235
|
"dialogs.schedule.management.attachments.delete": string;
|
|
237
236
|
"dialogs.schedule.management.attachments.removed": string;
|
|
238
|
-
"dialogs.schedule.management.attachments.filters.title": string;
|
|
239
|
-
"dialogs.schedule.management.attachments.filters.using": string;
|
|
240
|
-
"dialogs.schedule.management.attachments.filters.default": string;
|
|
241
|
-
"dialogs.schedule.management.attachments.filters.edited": string;
|
|
242
|
-
"dialogs.schedule.management.attachments.filters.item.default": string;
|
|
243
|
-
"dialogs.schedule.management.attachments.filters.item.edited": string;
|
|
244
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip": string;
|
|
245
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip.disabled": string;
|
|
246
237
|
"dialogs.schedule.management.attachments.message": string;
|
|
247
238
|
"scheduledEmail.attachmentFormat.widget.png": string;
|
|
248
239
|
"scheduledEmail.attachmentFormat.widget.pptx": string;
|
|
@@ -482,6 +473,8 @@ export declare const zh_Hans: {
|
|
|
482
473
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": string;
|
|
483
474
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardFilterNotCompatible.tooltip": string;
|
|
484
475
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardMetricFilter.tooltip": string;
|
|
476
|
+
"configurationPanel.drillConfig.filterSelection.drillToDashboardDuplicateMetricFilter.tooltip": string;
|
|
477
|
+
"configurationPanel.drillConfig.filterSelection.drillToInsightMeasureValueFilter.tooltip": string;
|
|
485
478
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardRankingFilter.tooltip": string;
|
|
486
479
|
"rankingFilter.preview.top_without_attribute_plain": string;
|
|
487
480
|
"rankingFilter.preview.bottom_without_attribute_plain": string;
|
|
@@ -227,7 +227,6 @@ export const zh_Hans = {
|
|
|
227
227
|
"dialogs.schedule.management.create.new": "创建新的",
|
|
228
228
|
"dialogs.schedule.management.create.tooManyMessage": "您的组织已达到计划导出数量的上限。请联系您的管理员以创建更多导出数量。",
|
|
229
229
|
"dialogs.schedule.management.noSchedules": "没有定期出口。{br}創建新的。",
|
|
230
|
-
"dialogs.schedule.management.attachments.attachment": "附加为{format} 文件",
|
|
231
230
|
"dialogs.schedule.management.attachments.xlsx.settings": "XLSX 选项",
|
|
232
231
|
"dialogs.schedule.management.attachments.csv.settings": "CSV 选项",
|
|
233
232
|
"dialogs.schedule.management.attachments.cells.merged": "保持属性单元格合并",
|
|
@@ -237,14 +236,6 @@ export const zh_Hans = {
|
|
|
237
236
|
"dialogs.export.pdf.headline": "导出设置(.pdf)",
|
|
238
237
|
"dialogs.schedule.management.attachments.delete": "删除 {format} 依恋",
|
|
239
238
|
"dialogs.schedule.management.attachments.removed": "{format} 附件已移除。",
|
|
240
|
-
"dialogs.schedule.management.attachments.filters.title": "仪表板过滤器",
|
|
241
|
-
"dialogs.schedule.management.attachments.filters.using": "使用",
|
|
242
|
-
"dialogs.schedule.management.attachments.filters.default": "默认仪表板过滤器",
|
|
243
|
-
"dialogs.schedule.management.attachments.filters.edited": "编辑仪表板过滤器",
|
|
244
|
-
"dialogs.schedule.management.attachments.filters.item.default": "使用默认过滤器",
|
|
245
|
-
"dialogs.schedule.management.attachments.filters.item.edited": "使用已编辑的过滤器",
|
|
246
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip": "仪表板过滤器的默认状态将在计划导出中使用,即使默认值将来发生变化。",
|
|
247
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip.disabled": "要使用默认过滤器安排导出,请创建新的计划导出。",
|
|
248
239
|
"dialogs.schedule.management.attachments.message": "<strong>注意</strong>:交叉过滤不会应用于预定的导出。",
|
|
249
240
|
"scheduledEmail.attachmentFormat.widget.png": "快照 (.png)",
|
|
250
241
|
"scheduledEmail.attachmentFormat.widget.pptx": "单张幻灯片 (.pptx)",
|
|
@@ -484,6 +475,8 @@ export const zh_Hans = {
|
|
|
484
475
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": "无法启用。请先将此筛选器添加到目标仪表板。",
|
|
485
476
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardFilterNotCompatible.tooltip": "无法启用。目标仪表板上的匹配筛选器不支持此筛选器类型。",
|
|
486
477
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardMetricFilter.tooltip": "无法将指标筛选器传递到目标仪表板。",
|
|
478
|
+
"configurationPanel.drillConfig.filterSelection.drillToDashboardDuplicateMetricFilter.tooltip": "此指标的另一个筛选器已在传递中。",
|
|
479
|
+
"configurationPanel.drillConfig.filterSelection.drillToInsightMeasureValueFilter.tooltip": "筛选器不适用于钻取目标。",
|
|
487
480
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardRankingFilter.tooltip": "无法将顶部/底部筛选器传递到目标仪表板。",
|
|
488
481
|
"rankingFilter.preview.top_without_attribute_plain": "{measure} 的前 {value} 项",
|
|
489
482
|
"rankingFilter.preview.bottom_without_attribute_plain": "{measure} 的后 {value} 项",
|
|
@@ -225,7 +225,6 @@ export declare const zh_Hant: {
|
|
|
225
225
|
"dialogs.schedule.management.create.new": string;
|
|
226
226
|
"dialogs.schedule.management.create.tooManyMessage": string;
|
|
227
227
|
"dialogs.schedule.management.noSchedules": string;
|
|
228
|
-
"dialogs.schedule.management.attachments.attachment": string;
|
|
229
228
|
"dialogs.schedule.management.attachments.xlsx.settings": string;
|
|
230
229
|
"dialogs.schedule.management.attachments.csv.settings": string;
|
|
231
230
|
"dialogs.schedule.management.attachments.cells.merged": string;
|
|
@@ -235,14 +234,6 @@ export declare const zh_Hant: {
|
|
|
235
234
|
"dialogs.export.pdf.headline": string;
|
|
236
235
|
"dialogs.schedule.management.attachments.delete": string;
|
|
237
236
|
"dialogs.schedule.management.attachments.removed": string;
|
|
238
|
-
"dialogs.schedule.management.attachments.filters.title": string;
|
|
239
|
-
"dialogs.schedule.management.attachments.filters.using": string;
|
|
240
|
-
"dialogs.schedule.management.attachments.filters.default": string;
|
|
241
|
-
"dialogs.schedule.management.attachments.filters.edited": string;
|
|
242
|
-
"dialogs.schedule.management.attachments.filters.item.default": string;
|
|
243
|
-
"dialogs.schedule.management.attachments.filters.item.edited": string;
|
|
244
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip": string;
|
|
245
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip.disabled": string;
|
|
246
237
|
"dialogs.schedule.management.attachments.message": string;
|
|
247
238
|
"scheduledEmail.attachmentFormat.widget.png": string;
|
|
248
239
|
"scheduledEmail.attachmentFormat.widget.pptx": string;
|
|
@@ -482,6 +473,8 @@ export declare const zh_Hant: {
|
|
|
482
473
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": string;
|
|
483
474
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardFilterNotCompatible.tooltip": string;
|
|
484
475
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardMetricFilter.tooltip": string;
|
|
476
|
+
"configurationPanel.drillConfig.filterSelection.drillToDashboardDuplicateMetricFilter.tooltip": string;
|
|
477
|
+
"configurationPanel.drillConfig.filterSelection.drillToInsightMeasureValueFilter.tooltip": string;
|
|
485
478
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardRankingFilter.tooltip": string;
|
|
486
479
|
"rankingFilter.preview.top_without_attribute_plain": string;
|
|
487
480
|
"rankingFilter.preview.bottom_without_attribute_plain": string;
|
|
@@ -227,7 +227,6 @@ export const zh_Hant = {
|
|
|
227
227
|
"dialogs.schedule.management.create.new": "創建新的",
|
|
228
228
|
"dialogs.schedule.management.create.tooManyMessage": "您的組織已達到已排程匯出的上限。請聯絡您的管理員以建立更多。",
|
|
229
229
|
"dialogs.schedule.management.noSchedules": "沒有排程匯出。{br}建立新的。",
|
|
230
|
-
"dialogs.schedule.management.attachments.attachment": "附加為{format} 文件",
|
|
231
230
|
"dialogs.schedule.management.attachments.xlsx.settings": "XLSX 選項",
|
|
232
231
|
"dialogs.schedule.management.attachments.csv.settings": "CSV 選項",
|
|
233
232
|
"dialogs.schedule.management.attachments.cells.merged": "保持屬性單元格合併",
|
|
@@ -237,14 +236,6 @@ export const zh_Hant = {
|
|
|
237
236
|
"dialogs.export.pdf.headline": "匯出設定(.pdf)",
|
|
238
237
|
"dialogs.schedule.management.attachments.delete": "刪除 {format} 依戀",
|
|
239
238
|
"dialogs.schedule.management.attachments.removed": "{format} 附件已移除。",
|
|
240
|
-
"dialogs.schedule.management.attachments.filters.title": "儀表板過濾器",
|
|
241
|
-
"dialogs.schedule.management.attachments.filters.using": "使用",
|
|
242
|
-
"dialogs.schedule.management.attachments.filters.default": "預設儀表板過濾器",
|
|
243
|
-
"dialogs.schedule.management.attachments.filters.edited": "編輯儀表板過濾器",
|
|
244
|
-
"dialogs.schedule.management.attachments.filters.item.default": "使用預設過濾器",
|
|
245
|
-
"dialogs.schedule.management.attachments.filters.item.edited": "使用編輯過的過濾器",
|
|
246
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip": "即使預設值將來發生變化,儀表板篩選器的預設狀態也將用於計劃的匯出。",
|
|
247
|
-
"dialogs.schedule.management.attachments.filters.item.tooltip.disabled": "若要使用預設篩選器計劃匯出,請建立新的計劃匯出。",
|
|
248
239
|
"dialogs.schedule.management.attachments.message": "<strong>筆記</strong>。交叉過濾不會應用於計劃導出。",
|
|
249
240
|
"scheduledEmail.attachmentFormat.widget.png": "快照 (.png)",
|
|
250
241
|
"scheduledEmail.attachmentFormat.widget.pptx": "單張幻燈片 (.pptx)",
|
|
@@ -484,6 +475,8 @@ export const zh_Hant = {
|
|
|
484
475
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardDashboardFilter.tooltip": "無法啟用。請先將此篩選器新增至目標儀表板。",
|
|
485
476
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardFilterNotCompatible.tooltip": "無法啟用。目標儀表板上的相符篩選器不支援此篩選器類型。",
|
|
486
477
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardMetricFilter.tooltip": "無法將度量篩選器傳遞至目標儀表板。",
|
|
478
|
+
"configurationPanel.drillConfig.filterSelection.drillToDashboardDuplicateMetricFilter.tooltip": "此度量已傳遞另一個篩選。",
|
|
479
|
+
"configurationPanel.drillConfig.filterSelection.drillToInsightMeasureValueFilter.tooltip": "篩選不適用於鑽取目的地。",
|
|
487
480
|
"configurationPanel.drillConfig.filterSelection.drillToDashboardRankingFilter.tooltip": "無法將前/後篩選器傳遞至目標儀表板。",
|
|
488
481
|
"rankingFilter.preview.top_without_attribute_plain": "前 {value} 個 {measure}",
|
|
489
482
|
"rankingFilter.preview.bottom_without_attribute_plain": "後 {value} 個 {measure}",
|
package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js
CHANGED
|
@@ -7,7 +7,7 @@ import { ValidationContextStore, createInvalidNode, useValidationContextValue }
|
|
|
7
7
|
import { Button, ConfirmDialogBase, ContentDivider, Hyperlink, Message, Overlay, OverlayController, OverlayControllerProvider, RecurrenceForm, ScrollablePanel, UiIcon, UiTabs, isEnterKey, useIdPrefixed, } from "@gooddata/sdk-ui-kit";
|
|
8
8
|
import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
|
|
9
9
|
import { useExportTemplates } from "../../../model/react/useExportTemplates.js";
|
|
10
|
-
import { selectDateFormat,
|
|
10
|
+
import { selectDateFormat, selectEnableAutomationManagement, selectEnableCustomizableCsvDelimiter, selectEnableNewScheduledExport, selectExternalRecipient, selectIsWhiteLabeled, selectLocale, selectSettings, selectWeekStart, } from "../../../model/store/config/configSelectors.js";
|
|
11
11
|
import { selectIsCrossFiltering } from "../../../model/store/drill/drillSelectors.js";
|
|
12
12
|
import { selectEntitlementMinimumRecurrenceMinutes, selectMaxAutomationRecipients, } from "../../../model/store/entitlements/entitlementsSelectors.js";
|
|
13
13
|
import { selectDashboardTitle } from "../../../model/store/meta/metaSelectors.js";
|
|
@@ -17,8 +17,7 @@ import { getWidgetTitle } from "../../../model/utils/dashboardItemUtils.js";
|
|
|
17
17
|
import { ApplyCurrentFiltersConfirmDialog } from "../../automationFilters/components/ApplyLatestFiltersConfirmDialog.js";
|
|
18
18
|
import { AutomationFiltersSelect } from "../../automationFilters/components/AutomationFiltersSelect.js";
|
|
19
19
|
import { useValidateExistingAutomationFilters } from "../../automationFilters/hooks/useValidateExistingAutomationFilters.js";
|
|
20
|
-
import {
|
|
21
|
-
import { validateAllFilterLocalIdentifiers } from "../../automationFilters/utils.js";
|
|
20
|
+
import { useAutomationFiltersSelect } from "../../automationFilters/useAutomationFiltersSelect.js";
|
|
22
21
|
import { DASHBOARD_DIALOG_OVERS_Z_INDEX } from "../../constants/zIndex.js";
|
|
23
22
|
import { IntlWrapper } from "../../localization/IntlWrapper.js";
|
|
24
23
|
import { DeleteScheduleConfirmDialog } from "../DefaultScheduledEmailManagementDialog/components/DeleteScheduleConfirmDialog.js";
|
|
@@ -29,8 +28,6 @@ import { isMobileView } from "../utils/responsive.js";
|
|
|
29
28
|
import { TIMEZONE_DEFAULT } from "../utils/timezone.js";
|
|
30
29
|
import { DashboardAttachments } from "./components/Attachments/DashboardAttachments.js";
|
|
31
30
|
import { WidgetAttachments } from "./components/Attachments/WidgetAttachments.js";
|
|
32
|
-
import { DashboardAttachments as DashboardAttachmentsOld } from "./components/AttachmentsOld/DashboardAttachments.js";
|
|
33
|
-
import { WidgetAttachments as WidgetAttachmentsOld } from "./components/AttachmentsOld/WidgetAttachments.js";
|
|
34
31
|
import { DestinationSelect } from "./components/DestinationSelect/DestinationSelect.js";
|
|
35
32
|
import { EvaluationModeCheckbox } from "./components/EvaluationModeCheckbox/EvaluationModeCheckbox.js";
|
|
36
33
|
import { ScheduledEmailDialogHeader } from "./components/Header/ScheduleEmailDialogHeader.js";
|
|
@@ -40,7 +37,6 @@ import { SubjectForm } from "./components/SubjectForm/SubjectForm.js";
|
|
|
40
37
|
import { SCHEDULED_EMAIL_DIALOG_ID } from "./constants.js";
|
|
41
38
|
import { DefaultLoadingScheduledEmailDialog } from "./DefaultLoadingScheduledEmailDialog.js";
|
|
42
39
|
import { useEditScheduledEmail } from "./hooks/useEditScheduledEmail.js";
|
|
43
|
-
import { useFiltersForDashboardScheduledExportInfo } from "./hooks/useFiltersForDashboardScheduledExportInfo.js";
|
|
44
40
|
import { useSaveScheduledEmailToBackend } from "./hooks/useSaveScheduledEmailToBackend.js";
|
|
45
41
|
const DEFAULT_MIN_RECURRENCE_MINUTES = "60";
|
|
46
42
|
const OVERLAY_POSITION_TYPE = "sameAsTarget";
|
|
@@ -73,11 +69,8 @@ export function ScheduledMailDialogRenderer({ scheduledExportToEdit, users, user
|
|
|
73
69
|
automationToEdit: scheduledExportToEdit,
|
|
74
70
|
widget,
|
|
75
71
|
});
|
|
76
|
-
const { locale, dashboardTitle, dateFormat, weekStart, maxAutomationsRecipients, allowHourlyRecurrence, isCrossFiltering, isExecutionTimestampMode,
|
|
77
|
-
|
|
78
|
-
filtersByTab: getAvailableFiltersFromFiltersByTab(filtersByTab),
|
|
79
|
-
});
|
|
80
|
-
const { defaultUser, editedAutomation, originalAutomation, isSubmitDisabled, xlsxSettings, pdfSettings, csvSettings, csvRawSettings, startDate, allowExternalRecipients, allowOnlyLoggedUserRecipients, isDashboardExportSelected, isCsvExportSelected, isXlsxExportSelected, areDashboardFiltersChanged, validationErrorMessage, selectedAttachments, isParentValid, onDashboardAttachmentsChange, onDashboardAttachmentsChangeOld, onWidgetAttachmentsChange, onWidgetAttachmentsChangeOld, onXlsxSettingsChange, onPdfSettingsChange, onCsvSettingsChange, onCsvRawSettingsChange, slidesTemplateIds, onSlidesTemplateIdChange, onDestinationChange, onMessageChange, onRecipientsChange, onRecurrenceChange, onEvaluationModeChange, onSubjectChange, onTitleChange, onFiltersChange, onApplyCurrentFilters, onStoreFiltersChange, onFiltersByTabChange, enableAutomationEvaluationMode, } = useEditScheduledEmail({
|
|
72
|
+
const { locale, dashboardTitle, dateFormat, weekStart, maxAutomationsRecipients, allowHourlyRecurrence, isCrossFiltering, isExecutionTimestampMode, enableNewScheduledExport, enableCustomizableCsvDelimiter, defaultPdfPageSize, } = useDefaultScheduledEmailDialogData();
|
|
73
|
+
const { defaultUser, editedAutomation, originalAutomation, isSubmitDisabled, xlsxSettings, pdfSettings, csvSettings, csvRawSettings, startDate, allowExternalRecipients, allowOnlyLoggedUserRecipients, validationErrorMessage, selectedAttachments, isParentValid, onDashboardAttachmentsChange, onWidgetAttachmentsChange, onXlsxSettingsChange, onPdfSettingsChange, onCsvSettingsChange, onCsvRawSettingsChange, slidesTemplateIds, onSlidesTemplateIdChange, onDestinationChange, onMessageChange, onRecipientsChange, onRecurrenceChange, onEvaluationModeChange, onSubjectChange, onTitleChange, onFiltersChange, onApplyCurrentFilters, onStoreFiltersChange, onFiltersByTabChange, enableAutomationEvaluationMode, } = useEditScheduledEmail({
|
|
81
74
|
notificationChannels,
|
|
82
75
|
insight,
|
|
83
76
|
widget,
|
|
@@ -90,7 +83,6 @@ export function ScheduledMailDialogRenderer({ scheduledExportToEdit, users, user
|
|
|
90
83
|
setEditedAutomationFilters,
|
|
91
84
|
setStoreFilters,
|
|
92
85
|
availableFiltersAsVisibleFilters,
|
|
93
|
-
enableAutomationFilterContext,
|
|
94
86
|
filtersForNewAutomation,
|
|
95
87
|
externalRecipientOverride,
|
|
96
88
|
enableNewScheduledExport,
|
|
@@ -103,7 +95,6 @@ export function ScheduledMailDialogRenderer({ scheduledExportToEdit, users, user
|
|
|
103
95
|
automationToEdit: scheduledExportToEdit,
|
|
104
96
|
widget,
|
|
105
97
|
insight,
|
|
106
|
-
enableAutomationFilterContext,
|
|
107
98
|
});
|
|
108
99
|
const [isApplyCurrentFiltersDialogOpen, setIsApplyCurrentFiltersDialogOpen] = useState(!isValid);
|
|
109
100
|
const { handleSaveScheduledEmail, isSavingScheduledEmail, savingErrorMessage } = useSaveScheduledEmailToBackend(editedAutomation, {
|
|
@@ -120,9 +111,6 @@ export function ScheduledMailDialogRenderer({ scheduledExportToEdit, users, user
|
|
|
120
111
|
const validationContextValue = useValidationContextValue(createInvalidNode({ id: "ScheduledEmailDialog" }));
|
|
121
112
|
const { getInvalidDatapoints } = validationContextValue;
|
|
122
113
|
const errorMessage = savingErrorMessage ?? validationErrorMessage ?? missingAttachmentsErrorMessage;
|
|
123
|
-
const dashboardScheduledExportFiltersInfo = useFiltersForDashboardScheduledExportInfo({
|
|
124
|
-
effectiveFilters: dashboardFilters,
|
|
125
|
-
});
|
|
126
114
|
const helpTextId = isMobileView()
|
|
127
115
|
? defineMessage({ id: "dialogs.schedule.email.footer.title.short" }).id
|
|
128
116
|
: defineMessage({ id: "dialogs.schedule.email.footer.title" }).id;
|
|
@@ -153,34 +141,22 @@ export function ScheduledMailDialogRenderer({ scheduledExportToEdit, users, user
|
|
|
153
141
|
} })),
|
|
154
142
|
};
|
|
155
143
|
}, [widget, dashboardTitle, intl]);
|
|
156
|
-
const tabs = useMemo(() =>
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
id: "filters",
|
|
167
|
-
label: intl.formatMessage({ id: "dialogs.schedule.email.tabs.filters" }),
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
return tabsList;
|
|
171
|
-
}, [intl, enableAutomationFilterContext]);
|
|
144
|
+
const tabs = useMemo(() => [
|
|
145
|
+
{
|
|
146
|
+
id: "general",
|
|
147
|
+
label: intl.formatMessage({ id: "dialogs.schedule.email.tabs.general" }),
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
id: "filters",
|
|
151
|
+
label: intl.formatMessage({ id: "dialogs.schedule.email.tabs.filters" }),
|
|
152
|
+
},
|
|
153
|
+
], [intl]);
|
|
172
154
|
const handleTabSelect = useCallback((tab) => {
|
|
173
155
|
setSelectedTabId(tab.id);
|
|
174
156
|
}, []);
|
|
175
|
-
// Reset to General tab if Filters tab is not available
|
|
176
|
-
useEffect(() => {
|
|
177
|
-
if (!enableAutomationFilterContext && selectedTabId === "filters") {
|
|
178
|
-
setSelectedTabId("general");
|
|
179
|
-
}
|
|
180
|
-
}, [enableAutomationFilterContext, selectedTabId]);
|
|
181
157
|
// Measure General tab content height to maintain consistent dialog size
|
|
182
158
|
useEffect(() => {
|
|
183
|
-
if (
|
|
159
|
+
if (generalTabContentRef.current && selectedTabId === "general") {
|
|
184
160
|
// Use requestAnimationFrame to ensure DOM is fully rendered
|
|
185
161
|
requestAnimationFrame(() => {
|
|
186
162
|
if (generalTabContentRef.current) {
|
|
@@ -189,9 +165,8 @@ export function ScheduledMailDialogRenderer({ scheduledExportToEdit, users, user
|
|
|
189
165
|
}
|
|
190
166
|
});
|
|
191
167
|
}
|
|
192
|
-
}, [
|
|
193
|
-
|
|
194
|
-
if (isApplyCurrentFiltersDialogOpen && enableAutomationFilterContext) {
|
|
168
|
+
}, [selectedTabId]);
|
|
169
|
+
if (isApplyCurrentFiltersDialogOpen) {
|
|
195
170
|
return (_jsx(ApplyCurrentFiltersConfirmDialog, { automationType: "schedule", onCancel: () => onCancel?.(), onEdit: () => {
|
|
196
171
|
onApplyCurrentFilters();
|
|
197
172
|
setIsApplyCurrentFiltersDialogOpen(false);
|
|
@@ -226,23 +201,24 @@ export function ScheduledMailDialogRenderer({ scheduledExportToEdit, users, user
|
|
|
226
201
|
id: "dialogs.schedule.email.accessibilityTitle",
|
|
227
202
|
}),
|
|
228
203
|
}, disableBottomBorder: true })) : null, _jsxs(ScrollablePanel, { className: cx("gd-notifications-channel-dialog-content-wrapper", {
|
|
229
|
-
"gd-notification-channel-dialog-with-automation-filters":
|
|
204
|
+
"gd-notification-channel-dialog-with-automation-filters": true,
|
|
230
205
|
"gd-notification-channel-dialog-with-tabs": tabs.length > 1,
|
|
231
206
|
}), children: [
|
|
232
|
-
_jsx("div", { className: "gd-divider-with-margin" }),
|
|
207
|
+
_jsx("div", { className: "gd-divider-with-margin" }), selectedTabId === "filters" ? (_jsx("div", { ref: filtersTabContentRef, className: "gd-schedule-dialog-tab-content", style: tabContentHeight
|
|
233
208
|
? { minHeight: `${tabContentHeight}px` }
|
|
234
|
-
: undefined, children: _jsx(AutomationFiltersSelect, { availableFilters: availableFilters, selectedFilters: editedAutomationFilters, onFiltersChange: onFiltersChange, storeFilters: storeFilters, onStoreFiltersChange: onStoreFiltersChange, isDashboardAutomation:
|
|
209
|
+
: undefined, children: _jsx(AutomationFiltersSelect, { availableFilters: availableFilters, selectedFilters: editedAutomationFilters, onFiltersChange: onFiltersChange, storeFilters: storeFilters, onStoreFiltersChange: onStoreFiltersChange, isDashboardAutomation: !widget, overlayPositionType: OVERLAY_POSITION_TYPE, hideTitle: true, showAllFilters: true, filtersByTab: filtersByTab, editedFiltersByTab: editedAutomationFiltersByTab, onFiltersByTabChange: onFiltersByTabChange }) })) : (_jsxs("div", { ref: generalTabContentRef, className: "gd-schedule-dialog-tab-content", children: [
|
|
210
|
+
_jsx(Message, { type: "progress", className: "gd-schedule-dialog-tab-content-info", children: intl.formatMessage({
|
|
235
211
|
id: "dialogs.schedule.email.tabs.info",
|
|
236
|
-
}) })
|
|
212
|
+
}) }), _jsx(RecurrenceForm, { startDate: startDate, cronExpression: editedAutomation.schedule?.cron ??
|
|
237
213
|
getDefaultCronExpression(startDate), cronDescription: editedAutomation.schedule?.cronDescription, timezone: editedAutomation.schedule?.timezone ??
|
|
238
214
|
TIMEZONE_DEFAULT.identifier, dateFormat: dateFormat ?? "MM/dd/yyyy", locale: locale, weekStart: weekStart, onChange: onRecurrenceChange, allowHourlyRecurrence: allowHourlyRecurrence, isWhiteLabeled: isWhiteLabeled, closeDropdownsOnParentScroll: CLOSE_ON_PARENT_SCROLL, onKeyDownSubmit: handleSubmitForm }), _jsx(ContentDivider, { className: "gd-divider-with-margin" }), _jsx(DestinationSelect, { notificationChannels: notificationChannels, selectedItemId: editedAutomation.notificationChannel, onChange: onDestinationChange, closeOnParentScroll: CLOSE_ON_PARENT_SCROLL, overlayPositionType: OVERLAY_POSITION_TYPE }), _jsx(ContentDivider, { className: "gd-divider-with-margin" }), _jsx(RecipientsSelect, { id: "schedule.email.recipients", loggedUser: defaultUser, users: users, usersError: usersError, value: editedAutomation.recipients ?? [], originalValue: originalAutomation.recipients || [], onChange: onRecipientsChange, allowEmptySelection: true, allowOnlyLoggedUserRecipients: allowOnlyLoggedUserRecipients, allowExternalRecipients: allowExternalRecipients, maxRecipients: maxAutomationsRecipients, notificationChannels: notificationChannels, notificationChannelId: editedAutomation.notificationChannel, onKeyDownSubmit: handleSubmitForm, externalRecipientOverride: externalRecipientOverride }), isInPlatformChannel ? null : (_jsxs(_Fragment, { children: [
|
|
239
215
|
_jsx(SubjectForm, { dashboardTitle: dashboardTitle, editedAutomation: editedAutomation, onChange: onSubjectChange, onKeyDownSubmit: handleSaveScheduledEmail, isSubmitDisabled: isSubmitDisabled }), _jsx(MessageForm, { onChange: onMessageChange, value: editedAutomation.details?.message ?? "" })
|
|
240
|
-
] })), widget ? (
|
|
241
|
-
"gd-notifications-channels-dialog-error-scrollable":
|
|
216
|
+
] })), widget ? (_jsx(WidgetAttachments, { selectedAttachments: selectedAttachments, onWidgetAttachmentsChange: onWidgetAttachmentsChange, xlsxSettings: xlsxSettings, pdfSettings: pdfSettings, onXlsxSettingsChange: onXlsxSettingsChange, onPdfSettingsChange: onPdfSettingsChange, csvSettings: csvSettings, onCsvSettingsChange: onCsvSettingsChange, csvRawSettings: csvRawSettings, onCsvRawSettingsChange: onCsvRawSettingsChange, isCsvSettingsEnabled: enableCustomizableCsvDelimiter, defaultPdfPageSize: defaultPdfPageSize, exportTemplates: exportTemplates, slidesTemplateIds: slidesTemplateIds, onSlidesTemplateIdChange: onSlidesTemplateIdChange })) : (_jsx(DashboardAttachments, { selectedAttachments: selectedAttachments, dashboardFilters: dashboardFilters, isCrossFiltering: isCrossFiltering, onDashboardAttachmentsChange: onDashboardAttachmentsChange, xlsxSettings: xlsxSettings, onXlsxSettingsChange: onXlsxSettingsChange, defaultPdfPageSize: defaultPdfPageSize, exportTemplates: exportTemplates, slidesTemplateIds: slidesTemplateIds, onSlidesTemplateIdChange: onSlidesTemplateIdChange })), enableAutomationEvaluationMode ? (_jsx(EvaluationModeCheckbox, { isShared: editedAutomation.evaluationMode === "SHARED", onChange: onEvaluationModeChange })) : null, errorMessage ? (_jsx(Message, { type: "error", className: cx("gd-notifications-channels-dialog-error", {
|
|
217
|
+
"gd-notifications-channels-dialog-error-scrollable": true,
|
|
242
218
|
}), children: errorMessage })) : null, getInvalidDatapoints()
|
|
243
219
|
.filter((invalidDatapoint) => invalidDatapoint.severity === "error")
|
|
244
220
|
.map((invalidDatapoint) => (_jsx(Message, { id: invalidDatapoint.id, type: "error", className: cx("gd-notifications-channels-dialog-error", {
|
|
245
|
-
"gd-notifications-channels-dialog-error-scrollable":
|
|
221
|
+
"gd-notifications-channels-dialog-error-scrollable": true,
|
|
246
222
|
}), children: invalidDatapoint.message }, invalidDatapoint.id)))] }))] })
|
|
247
223
|
] }) }) }) }), scheduledEmailToDelete ? (_jsx(DeleteScheduleConfirmDialog, { scheduledEmail: scheduledEmailToDelete, onCancel: () => setScheduledEmailToDelete(null), onSuccess: handleScheduleDeleteSuccess, onError: onDeleteError })) : null] }));
|
|
248
224
|
}
|
|
@@ -257,7 +233,7 @@ export function DefaultScheduledEmailDialog(props) {
|
|
|
257
233
|
}
|
|
258
234
|
return (_jsx(IntlWrapper, { locale: locale, children: _jsx(ScheduledMailDialogRenderer, { ...props }) }));
|
|
259
235
|
}
|
|
260
|
-
function useDefaultScheduledEmailDialogData(
|
|
236
|
+
function useDefaultScheduledEmailDialogData() {
|
|
261
237
|
const locale = useDashboardSelector(selectLocale);
|
|
262
238
|
const dashboardTitle = useDashboardSelector(selectDashboardTitle);
|
|
263
239
|
const dateFormat = useDashboardSelector(selectDateFormat);
|
|
@@ -269,14 +245,6 @@ function useDefaultScheduledEmailDialogData({ filters, filtersByTab, }) {
|
|
|
269
245
|
const allowHourlyRecurrence = parseInt(minimumRecurrenceMinutesEntitlement?.value ?? DEFAULT_MIN_RECURRENCE_MINUTES, 10) === 60;
|
|
270
246
|
const isCrossFiltering = useDashboardSelector(selectIsCrossFiltering);
|
|
271
247
|
const isExecutionTimestampMode = !!useDashboardSelector(selectExecutionTimestamp);
|
|
272
|
-
const enableAutomationFilterContextFlag = useDashboardSelector(selectEnableAutomationFilterContext);
|
|
273
|
-
const enableAutomationFilterContext = useMemo(() => {
|
|
274
|
-
const doAllDashboardFiltersHaveLocalIdentifiers = validateAllFilterLocalIdentifiers(filters);
|
|
275
|
-
const doAllDashboardFiltersByTabHaveLocalIdentifiers = Object.values(filtersByTab).every((tabFilters) => validateAllFilterLocalIdentifiers(tabFilters));
|
|
276
|
-
return (enableAutomationFilterContextFlag &&
|
|
277
|
-
doAllDashboardFiltersHaveLocalIdentifiers &&
|
|
278
|
-
doAllDashboardFiltersByTabHaveLocalIdentifiers);
|
|
279
|
-
}, [filters, filtersByTab, enableAutomationFilterContextFlag]);
|
|
280
248
|
const enableNewScheduledExport = useDashboardSelector(selectEnableNewScheduledExport);
|
|
281
249
|
const enableCustomizableCsvDelimiter = useDashboardSelector(selectEnableCustomizableCsvDelimiter);
|
|
282
250
|
const defaultPdfPageSize = getDefaultPdfPageSize(formatLocale);
|
|
@@ -289,7 +257,6 @@ function useDefaultScheduledEmailDialogData({ filters, filtersByTab, }) {
|
|
|
289
257
|
allowHourlyRecurrence,
|
|
290
258
|
isCrossFiltering,
|
|
291
259
|
isExecutionTimestampMode,
|
|
292
|
-
enableAutomationFilterContext,
|
|
293
260
|
enableNewScheduledExport,
|
|
294
261
|
enableCustomizableCsvDelimiter,
|
|
295
262
|
defaultPdfPageSize,
|
package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { type DashboardAttachmentType, type FilterContextItem, type IAutomationMetadataObject, type IAutomationMetadataObjectDefinition, type IAutomationRecipient, type IAutomationVisibleFilter, type IExportDefinitionVisualizationObjectSettings, type IFilter, type IInsight, type INotificationChannelIdentifier, type INotificationChannelMetadataObject, type WidgetAttachmentType } from "@gooddata/sdk-model";
|
|
2
2
|
import { type IAutomationFiltersTab } from "../../../../model/store/filtering/dashboardFilterSelectors.js";
|
|
3
3
|
import { type ExtendedDashboardWidget } from "../../../../model/types/layoutTypes.js";
|
|
4
|
-
import { type OldWidgetAttachmentType } from "../types.js";
|
|
5
4
|
export interface IUseEditScheduledEmailProps {
|
|
6
5
|
scheduledExportToEdit?: IAutomationMetadataObject;
|
|
7
6
|
notificationChannels: INotificationChannelIdentifier[] | INotificationChannelMetadataObject[];
|
|
@@ -27,13 +26,12 @@ export interface IUseEditScheduledEmailProps {
|
|
|
27
26
|
availableFiltersAsVisibleFiltersByTab?: Record<string, IAutomationVisibleFilter[]>;
|
|
28
27
|
storeFilters?: boolean;
|
|
29
28
|
setStoreFilters: (storeFilters: boolean) => void;
|
|
30
|
-
enableAutomationFilterContext?: boolean;
|
|
31
29
|
filtersForNewAutomation: FilterContextItem[];
|
|
32
30
|
externalRecipientOverride?: string;
|
|
33
31
|
enableNewScheduledExport: boolean;
|
|
34
32
|
defaultPdfPageSize?: IExportDefinitionVisualizationObjectSettings["pageSize"];
|
|
35
33
|
}
|
|
36
|
-
export declare function useEditScheduledEmail({ scheduledExportToEdit, notificationChannels, insight, widget, editedAutomationFilters, dashboardFilters, editedAutomationFiltersByTab,
|
|
34
|
+
export declare function useEditScheduledEmail({ scheduledExportToEdit, notificationChannels, insight, widget, editedAutomationFilters, dashboardFilters, editedAutomationFiltersByTab, maxAutomationsRecipients, setEditedAutomationFilters, setEditedAutomationFiltersByTab, availableFiltersAsVisibleFilters, storeFilters, setStoreFilters, filtersForNewAutomation, externalRecipientOverride, enableNewScheduledExport, defaultPdfPageSize, filtersDataByTab, availableFiltersAsVisibleFiltersByTab }: IUseEditScheduledEmailProps): {
|
|
37
35
|
defaultUser: import("@gooddata/sdk-model").IWorkspaceUser;
|
|
38
36
|
areDashboardFiltersChanged: boolean;
|
|
39
37
|
originalAutomation: IAutomationMetadataObjectDefinition;
|
|
@@ -73,10 +71,8 @@ export declare function useEditScheduledEmail({ scheduledExportToEdit, notificat
|
|
|
73
71
|
onRecipientsChange: (updatedRecipients: IAutomationRecipient[]) => void;
|
|
74
72
|
onSubjectChange: (value: string | number, isValid: boolean) => void;
|
|
75
73
|
onMessageChange: (value: string, isValid: boolean) => void;
|
|
76
|
-
onDashboardAttachmentsChange: (formats: DashboardAttachmentType[]
|
|
77
|
-
onDashboardAttachmentsChangeOld: (dashboardSelected: boolean, dashboardFilters?: FilterContextItem[] | undefined) => void;
|
|
74
|
+
onDashboardAttachmentsChange: (formats: DashboardAttachmentType[]) => void;
|
|
78
75
|
onWidgetAttachmentsChange: (formats: WidgetAttachmentType[]) => void;
|
|
79
|
-
onWidgetAttachmentsChangeOld: (selected: boolean, format: OldWidgetAttachmentType, widgetFilters?: IFilter[] | undefined) => void;
|
|
80
76
|
onXlsxSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|
|
81
77
|
onPdfSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|
|
82
78
|
onCsvSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
|