@gooddata/sdk-ui-dashboard 11.10.0-alpha.2 → 11.10.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/_staging/dashboard/dashboardLayout.d.ts +2 -0
- package/esm/_staging/dashboard/dashboardLayout.d.ts.map +1 -1
- package/esm/_staging/dashboard/dashboardLayout.js.map +1 -1
- package/esm/model/commandHandlers/common/validateDrills.js +2 -2
- package/esm/model/commandHandlers/common/validateDrills.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.js +46 -40
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPdfHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPdfHandler.js +5 -3
- package/esm/model/commandHandlers/dashboard/exportDashboardToPdfHandler.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPdfPresentationHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPdfPresentationHandler.js +7 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPdfPresentationHandler.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPptPresentationHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPptPresentationHandler.js +7 -1
- package/esm/model/commandHandlers/dashboard/exportDashboardToPptPresentationHandler.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportToTabularHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/exportToTabularHandler.js +5 -2
- package/esm/model/commandHandlers/dashboard/exportToTabularHandler.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js +9 -9
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js +5 -4
- package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/saveAsDashboardHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/saveAsDashboardHandler.js +96 -12
- package/esm/model/commandHandlers/dashboard/saveAsDashboardHandler.js.map +1 -1
- package/esm/model/commandHandlers/dashboard/saveDashboardHandler.d.ts +3 -1
- package/esm/model/commandHandlers/dashboard/saveDashboardHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/saveDashboardHandler.js +67 -34
- package/esm/model/commandHandlers/dashboard/saveDashboardHandler.js.map +1 -1
- package/esm/model/commandHandlers/drill/drillDownHandler.js +1 -1
- package/esm/model/commandHandlers/drill/drillDownHandler.js.map +1 -1
- package/esm/model/commandHandlers/drill/drillToAttributeUrlHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/drill/drillToAttributeUrlHandler.js +2 -1
- package/esm/model/commandHandlers/drill/drillToAttributeUrlHandler.js.map +1 -1
- package/esm/model/commandHandlers/drill/drillToDashboardHandler.js +1 -1
- package/esm/model/commandHandlers/drill/drillToDashboardHandler.js.map +1 -1
- package/esm/model/commandHandlers/drill/keyDriverAnalysisHandler.js +1 -1
- package/esm/model/commandHandlers/drill/keyDriverAnalysisHandler.js.map +1 -1
- package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js +1 -1
- package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js.map +1 -1
- package/esm/model/commandHandlers/drillTargets/addDrillTargetsHandler.js +1 -1
- package/esm/model/commandHandlers/drillTargets/addDrillTargetsHandler.js.map +1 -1
- package/esm/model/commandHandlers/filterContext/attributeFilter/addAttributeFilterHandler.js +1 -1
- package/esm/model/commandHandlers/filterContext/attributeFilter/addAttributeFilterHandler.js.map +1 -1
- package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.js +2 -3
- package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.js.map +1 -1
- package/esm/model/commandHandlers/filterContext/dateFilter/removeDateFiltersHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/dateFilter/removeDateFiltersHandler.js +1 -2
- package/esm/model/commandHandlers/filterContext/dateFilter/removeDateFiltersHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/addLayoutSectionHandler.js +3 -3
- package/esm/model/commandHandlers/layout/addLayoutSectionHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/addSectionItemsHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/addSectionItemsHandler.js +3 -3
- package/esm/model/commandHandlers/layout/addSectionItemsHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/changeLayoutSectionHeaderHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/changeLayoutSectionHeaderHandler.js +3 -3
- package/esm/model/commandHandlers/layout/changeLayoutSectionHeaderHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/containerHeightSanitization.d.ts +1 -1
- package/esm/model/commandHandlers/layout/containerHeightSanitization.js +3 -3
- package/esm/model/commandHandlers/layout/containerHeightSanitization.js.map +1 -1
- package/esm/model/commandHandlers/layout/moveLayoutSectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/moveLayoutSectionHandler.js +4 -3
- package/esm/model/commandHandlers/layout/moveLayoutSectionHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/moveSectionItemHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/moveSectionItemHandler.js +5 -5
- package/esm/model/commandHandlers/layout/moveSectionItemHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/moveSectionItemToNewSectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/moveSectionItemToNewSectionHandler.js +6 -6
- package/esm/model/commandHandlers/layout/moveSectionItemToNewSectionHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/removeLayoutSectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/removeLayoutSectionHandler.js +3 -3
- package/esm/model/commandHandlers/layout/removeLayoutSectionHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/removeSectionItemByWidgetRefHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/removeSectionItemByWidgetRefHandler.js +2 -1
- package/esm/model/commandHandlers/layout/removeSectionItemByWidgetRefHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/removeSectionItemHandler.d.ts +1 -1
- package/esm/model/commandHandlers/layout/removeSectionItemHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/removeSectionItemHandler.js +5 -4
- package/esm/model/commandHandlers/layout/removeSectionItemHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/replaceSectionItemHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/replaceSectionItemHandler.js +3 -3
- package/esm/model/commandHandlers/layout/replaceSectionItemHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/resizeHeightHandler.js +3 -3
- package/esm/model/commandHandlers/layout/resizeHeightHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/resizeWidthHandler.js +3 -3
- package/esm/model/commandHandlers/layout/resizeWidthHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/rowContainerSanitization.js +3 -3
- package/esm/model/commandHandlers/layout/rowContainerSanitization.js.map +1 -1
- package/esm/model/commandHandlers/layout/setScreenSizeHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/setScreenSizeHandler.js +3 -2
- package/esm/model/commandHandlers/layout/setScreenSizeHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/toggleLayoutDirectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/toggleLayoutDirectionHandler.js +5 -4
- package/esm/model/commandHandlers/layout/toggleLayoutDirectionHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/toggleLayoutSectionHeadersHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/toggleLayoutSectionHeadersHandler.js +3 -2
- package/esm/model/commandHandlers/layout/toggleLayoutSectionHeadersHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/undoLayoutChangesHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/layout/undoLayoutChangesHandler.js +4 -3
- package/esm/model/commandHandlers/layout/undoLayoutChangesHandler.js.map +1 -1
- package/esm/model/commandHandlers/layout/validation/stashValidation.d.ts +1 -1
- package/esm/model/commandHandlers/layout/validation/stashValidation.d.ts.map +1 -1
- package/esm/model/commandHandlers/renderMode/changeRenderModeHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/renderMode/changeRenderModeHandler.js +1 -1
- package/esm/model/commandHandlers/renderMode/changeRenderModeHandler.js.map +1 -1
- package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.js +42 -21
- package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.js.map +1 -1
- package/esm/model/commandHandlers/tabs/createDashboardTabHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/tabs/createDashboardTabHandler.js +19 -8
- package/esm/model/commandHandlers/tabs/createDashboardTabHandler.js.map +1 -1
- package/esm/model/commandHandlers/tabs/deleteDashboardTabHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/tabs/deleteDashboardTabHandler.js +12 -12
- package/esm/model/commandHandlers/tabs/deleteDashboardTabHandler.js.map +1 -1
- package/esm/model/commandHandlers/tabs/repositionDashboardTabHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/tabs/repositionDashboardTabHandler.js +3 -3
- package/esm/model/commandHandlers/tabs/repositionDashboardTabHandler.js.map +1 -1
- package/esm/model/commandHandlers/tabs/switchDashboardTabHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/tabs/switchDashboardTabHandler.js +5 -6
- package/esm/model/commandHandlers/tabs/switchDashboardTabHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/addDrillDownForInsightWidgetHandler.js +5 -5
- package/esm/model/commandHandlers/widgets/addDrillDownForInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/addVisualizationToSwitcherWidgetHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/addVisualizationToSwitcherWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetDescriptionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetDescriptionHandler.js +4 -3
- package/esm/model/commandHandlers/widgets/changeInsightWidgetDescriptionHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetFilterSettingsHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeInsightWidgetFilterSettingsHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetHeaderHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetHeaderHandler.js +4 -3
- package/esm/model/commandHandlers/widgets/changeInsightWidgetHeaderHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetIgnoreCrossFilteringHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeInsightWidgetIgnoreCrossFilteringHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetInsightHandler.js +4 -4
- package/esm/model/commandHandlers/widgets/changeInsightWidgetInsightHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetVisConfigurationHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeInsightWidgetVisConfigurationHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeInsightWidgetVisPropertiesHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeInsightWidgetVisPropertiesHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetComparisonHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetComparisonHandler.js +4 -3
- package/esm/model/commandHandlers/widgets/changeKpiWidgetComparisonHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetConfigurationHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeKpiWidgetConfigurationHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetDescriptionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetDescriptionHandler.js +4 -3
- package/esm/model/commandHandlers/widgets/changeKpiWidgetDescriptionHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetFilterSettingsHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeKpiWidgetFilterSettingsHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetHeaderHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetHeaderHandler.js +4 -3
- package/esm/model/commandHandlers/widgets/changeKpiWidgetHeaderHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetMeasureHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/changeKpiWidgetMeasureHandler.js +6 -5
- package/esm/model/commandHandlers/widgets/changeKpiWidgetMeasureHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeRichTextWidgetContentHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeRichTextWidgetContentHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/changeRichTextWidgetFilterSettingsHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/changeRichTextWidgetFilterSettingsHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/exportImageInsightWidgetHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/exportImageInsightWidgetHandler.js +3 -0
- package/esm/model/commandHandlers/widgets/exportImageInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/exportInsightWidgetHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/exportInsightWidgetHandler.js +4 -1
- package/esm/model/commandHandlers/widgets/exportInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/exportRawInsightWidgetHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/exportRawInsightWidgetHandler.js +8 -3
- package/esm/model/commandHandlers/widgets/exportRawInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/exportSlidesInsightWidgetHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/exportSlidesInsightWidgetHandler.js +3 -0
- package/esm/model/commandHandlers/widgets/exportSlidesInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/modifyDrillDownForInsightWidgetHandler.js +4 -4
- package/esm/model/commandHandlers/widgets/modifyDrillDownForInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/modifyDrillsForInsightWidgetHandler.js +4 -4
- package/esm/model/commandHandlers/widgets/modifyDrillsForInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/refreshInsightWidgetHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/refreshInsightWidgetHandler.js +2 -1
- package/esm/model/commandHandlers/widgets/refreshInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/removeDrillDownForInsightWidgetHandler.js +4 -4
- package/esm/model/commandHandlers/widgets/removeDrillDownForInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/removeDrillForKpiWidgetHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/removeDrillForKpiWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/removeDrillsForInsightWidgetHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/removeDrillsForInsightWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/setDrillForKpiWidgetHandler.js +3 -3
- package/esm/model/commandHandlers/widgets/setDrillForKpiWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/updateVisualizationsFromSwitcherWidgetHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/updateVisualizationsFromSwitcherWidgetHandler.js +4 -3
- package/esm/model/commandHandlers/widgets/updateVisualizationsFromSwitcherWidgetHandler.js.map +1 -1
- package/esm/model/commandHandlers/widgets/validation/kpiDrillValidationUtils.d.ts.map +1 -1
- package/esm/model/commandHandlers/widgets/validation/kpiDrillValidationUtils.js +1 -1
- package/esm/model/commandHandlers/widgets/validation/kpiDrillValidationUtils.js.map +1 -1
- package/esm/model/queryServices/queryWidgetAlertCount.d.ts.map +1 -1
- package/esm/model/queryServices/queryWidgetAlertCount.js +2 -1
- package/esm/model/queryServices/queryWidgetAlertCount.js.map +1 -1
- package/esm/model/queryServices/queryWidgetFilters.js +1 -1
- package/esm/model/queryServices/queryWidgetFilters.js.map +1 -1
- package/esm/model/react/useInitializeDashboardStore.js +1 -1
- package/esm/model/react/useInitializeDashboardStore.js.map +1 -1
- package/esm/model/store/_infra/undoEnhancer.d.ts +4 -1
- package/esm/model/store/_infra/undoEnhancer.d.ts.map +1 -1
- package/esm/model/store/_infra/undoEnhancer.js.map +1 -1
- package/esm/model/store/config/configSelectors.d.ts +6 -0
- package/esm/model/store/config/configSelectors.d.ts.map +1 -1
- package/esm/model/store/config/configSelectors.js +11 -0
- package/esm/model/store/config/configSelectors.js.map +1 -1
- package/esm/model/store/dashboardStore.d.ts.map +1 -1
- package/esm/model/store/dashboardStore.js +0 -2
- package/esm/model/store/dashboardStore.js.map +1 -1
- package/esm/model/store/executionResults/executionResultsSelectors.js +1 -1
- package/esm/model/store/executionResults/executionResultsSelectors.js.map +1 -1
- package/esm/model/store/index.d.ts +7 -4
- package/esm/model/store/index.d.ts.map +1 -1
- package/esm/model/store/index.js +3 -3
- package/esm/model/store/index.js.map +1 -1
- package/esm/model/store/insights/insightsSelectors.d.ts.map +1 -1
- package/esm/model/store/insights/insightsSelectors.js +1 -1
- package/esm/model/store/insights/insightsSelectors.js.map +1 -1
- package/esm/model/store/keyDriverAnalysis/const.d.ts.map +1 -1
- package/esm/model/store/keyDriverAnalysis/const.js +1 -0
- package/esm/model/store/keyDriverAnalysis/const.js.map +1 -1
- package/esm/model/store/meta/metaSelectors.d.ts.map +1 -1
- package/esm/model/store/meta/metaSelectors.js +14 -14
- package/esm/model/store/meta/metaSelectors.js.map +1 -1
- package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsSelectors.js +4 -4
- package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsSelectors.js.map +1 -1
- package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigSelectors.d.ts.map +1 -1
- package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigSelectors.js +13 -11
- package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigSelectors.js.map +1 -1
- package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.d.ts.map +1 -1
- package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.js +2 -2
- package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.js.map +1 -1
- package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsSelectors.js +4 -4
- package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsSelectors.js.map +1 -1
- package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts +11 -0
- package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts.map +1 -1
- package/esm/model/store/tabs/filterContext/filterContextReducers.js +22 -0
- package/esm/model/store/tabs/filterContext/filterContextReducers.js.map +1 -1
- package/esm/model/store/tabs/filterContext/filterContextSelectors.js +5 -5
- package/esm/model/store/tabs/filterContext/filterContextSelectors.js.map +1 -1
- package/esm/model/store/tabs/index.d.ts +308 -4
- package/esm/model/store/tabs/index.d.ts.map +1 -1
- package/esm/model/store/tabs/index.js +3 -1
- package/esm/model/store/tabs/index.js.map +1 -1
- package/esm/model/store/tabs/layout/layoutReducers.d.ts +220 -0
- package/esm/model/store/tabs/layout/layoutReducers.d.ts.map +1 -0
- package/esm/model/store/{layout → tabs/layout}/layoutReducers.js +237 -86
- package/esm/model/store/tabs/layout/layoutReducers.js.map +1 -0
- package/esm/model/store/{layout → tabs/layout}/layoutSelectors.d.ts +6 -6
- package/esm/model/store/tabs/layout/layoutSelectors.d.ts.map +1 -0
- package/esm/model/store/{layout → tabs/layout}/layoutSelectors.js +19 -11
- package/esm/model/store/tabs/layout/layoutSelectors.js.map +1 -0
- package/esm/model/store/{layout → tabs/layout}/layoutState.d.ts +3 -3
- package/esm/model/store/tabs/layout/layoutState.d.ts.map +1 -0
- package/esm/model/store/{layout → tabs/layout}/layoutState.js +1 -1
- package/esm/model/store/tabs/layout/layoutState.js.map +1 -0
- package/esm/model/store/{layout → tabs/layout}/layoutUtils.d.ts +2 -2
- package/esm/model/store/tabs/layout/layoutUtils.d.ts.map +1 -0
- package/esm/model/store/{layout → tabs/layout}/layoutUtils.js +1 -1
- package/esm/model/store/tabs/layout/layoutUtils.js.map +1 -0
- package/esm/model/store/tabs/tabsReducers.d.ts +3 -3
- package/esm/model/store/tabs/tabsReducers.d.ts.map +1 -1
- package/esm/model/store/tabs/tabsReducers.js +9 -9
- package/esm/model/store/tabs/tabsReducers.js.map +1 -1
- package/esm/model/store/tabs/tabsSelectors.d.ts +3 -3
- package/esm/model/store/tabs/tabsSelectors.d.ts.map +1 -1
- package/esm/model/store/tabs/tabsSelectors.js +8 -8
- package/esm/model/store/tabs/tabsSelectors.js.map +1 -1
- package/esm/model/store/tabs/tabsState.d.ts +6 -4
- package/esm/model/store/tabs/tabsState.d.ts.map +1 -1
- package/esm/model/store/tabs/tabsState.js +3 -3
- package/esm/model/store/tabs/tabsState.js.map +1 -1
- package/esm/model/store/topBar/topBarSelectors.js +1 -1
- package/esm/model/store/topBar/topBarSelectors.js.map +1 -1
- package/esm/model/store/types.d.ts +0 -3
- package/esm/model/store/types.d.ts.map +1 -1
- package/esm/model/store/ui/uiSelectors.js +1 -1
- package/esm/model/store/ui/uiSelectors.js.map +1 -1
- package/esm/model/store/widgetDrills/widgetDrillSelectors.js +1 -1
- package/esm/model/store/widgetDrills/widgetDrillSelectors.js.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialogNew.d.ts.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialogNew.js +65 -9
- package/esm/presentation/alerting/DefaultAlertingDialog/DefaultAlertingDialogNew.js.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentBasic.d.ts +15 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentBasic.d.ts.map +1 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentBasic.js +28 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentBasic.js.map +1 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentEnhanced.d.ts +12 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentEnhanced.d.ts.map +1 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentEnhanced.js +49 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogContentEnhanced.js.map +1 -0
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogNew.d.ts.map +1 -1
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogNew.js +6 -48
- package/esm/presentation/alerting/DefaultAlertingManagementDialog/DefaultAlertingManagementDialogNew.js.map +1 -1
- package/esm/presentation/constants/automations.d.ts +1 -1
- package/esm/presentation/constants/automations.js +1 -1
- package/esm/presentation/dashboard/DashboardHeader/DashboardTabs.d.ts +2 -2
- package/esm/presentation/dashboard/DashboardHeader/DashboardTabs.d.ts.map +1 -1
- package/esm/presentation/dashboard/DashboardHeader/DashboardTabs.js +16 -16
- package/esm/presentation/dashboard/DashboardHeader/DashboardTabs.js.map +1 -1
- package/esm/presentation/localization/bundles/en-US.json +8 -0
- package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +2 -0
- package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/presentation/localization/bundles/en-US.localization-bundle.js +2 -0
- package/esm/presentation/localization/bundles/en-US.localization-bundle.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.d.ts.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js +6 -60
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js.map +1 -1
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentBasic.d.ts +13 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentBasic.d.ts.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentBasic.js +32 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentBasic.js.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentEnhanced.d.ts +11 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentEnhanced.d.ts.map +1 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentEnhanced.js +63 -0
- package/esm/presentation/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialogContentEnhanced.js.map +1 -0
- package/esm/sdk-ui-dashboard.d.ts +373 -11
- package/esm/types.d.ts +2 -2
- package/esm/types.d.ts.map +1 -1
- package/esm/types.js.map +1 -1
- package/package.json +20 -21
- package/styles/css/dashboard.css +30 -0
- package/styles/css/dashboard.css.map +1 -1
- package/styles/css/main.css +30 -0
- package/styles/css/main.css.map +1 -1
- package/styles/css/notifications_channels_dialog.css +30 -0
- package/styles/css/notifications_channels_dialog.css.map +1 -1
- package/styles/scss/notifications_channels_dialog.scss +36 -0
- package/esm/model/store/layout/index.d.ts +0 -173
- package/esm/model/store/layout/index.d.ts.map +0 -1
- package/esm/model/store/layout/index.js +0 -18
- package/esm/model/store/layout/index.js.map +0 -1
- package/esm/model/store/layout/layoutReducers.d.ts +0 -207
- package/esm/model/store/layout/layoutReducers.d.ts.map +0 -1
- package/esm/model/store/layout/layoutReducers.js.map +0 -1
- package/esm/model/store/layout/layoutSelectors.d.ts.map +0 -1
- package/esm/model/store/layout/layoutSelectors.js.map +0 -1
- package/esm/model/store/layout/layoutState.d.ts.map +0 -1
- package/esm/model/store/layout/layoutState.js.map +0 -1
- package/esm/model/store/layout/layoutUtils.d.ts.map +0 -1
- package/esm/model/store/layout/layoutUtils.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rowContainerSanitization.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/rowContainerSanitization.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAIhC,OAAO,EAAsD,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE5G,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACjG,OAAO,EACH,2BAA2B,EAC3B,sBAAsB,GACzB,MAAM,mEAAmE,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAGxE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"rowContainerSanitization.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/rowContainerSanitization.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setScreenSizeHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/setScreenSizeHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setScreenSizeHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/setScreenSizeHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAqB,MAAM,wBAAwB,CAAC;AAE9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,wBAAiB,oBAAoB,CACjC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,aAAa,GACnB,YAAY,CAAC,iBAAiB,CAAC,CAMjC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
// (C) 2021-2025 GoodData Corporation
|
|
1
2
|
import { put } from "redux-saga/effects";
|
|
2
3
|
import { screenSizeChanged } from "../../events/layout.js";
|
|
3
|
-
import {
|
|
4
|
+
import { tabsActions } from "../../store/tabs/index.js";
|
|
4
5
|
export function* setScreenSizeHandler(ctx, cmd) {
|
|
5
6
|
const { screenSize } = cmd.payload;
|
|
6
|
-
yield put(
|
|
7
|
+
yield put(tabsActions.setScreen({ screen: screenSize }));
|
|
7
8
|
return screenSizeChanged(ctx, screenSize, cmd.correlationId);
|
|
8
9
|
}
|
|
9
10
|
//# sourceMappingURL=setScreenSizeHandler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setScreenSizeHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/setScreenSizeHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setScreenSizeHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/setScreenSizeHandler.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAGrC,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAGzC,OAAO,EAAqB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD,MAAM,SAAS,CAAC,CAAC,oBAAoB,CACjC,GAAqB,EACrB,GAAkB;IAElB,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;IAEnC,MAAM,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;IAEzD,OAAO,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;AACjE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggleLayoutDirectionHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutDirectionHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toggleLayoutDirectionHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutDirectionHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAmB1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAA0B,MAAM,wBAAwB,CAAC;AAKxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAwB9D,wBAAiB,4BAA4B,CACzC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,qBAAqB,GAC3B,YAAY,CAAC,sBAAsB,CAAC,CAqCtC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
// (C) 2021-2025 GoodData Corporation
|
|
1
2
|
import { put, select } from "redux-saga/effects";
|
|
2
3
|
import { isDashboardLayout, isDashboardLayoutItem, } from "@gooddata/sdk-model";
|
|
3
4
|
import { getChildWidgetLayoutPaths, getChildWidgetLayoutPathsWithMinWidths, getUpdatedSizesOnly, } from "./containerWidthSanitization.js";
|
|
@@ -5,8 +6,8 @@ import { findItem } from "../../../_staging/layout/coordinates.js";
|
|
|
5
6
|
import { layoutDirectionChanged } from "../../events/layout.js";
|
|
6
7
|
import { selectSettings } from "../../store/config/configSelectors.js";
|
|
7
8
|
import { selectInsightsMap } from "../../store/insights/insightsSelectors.js";
|
|
8
|
-
import {
|
|
9
|
-
import { selectLayout, selectScreen } from "../../store/layout/layoutSelectors.js";
|
|
9
|
+
import { tabsActions } from "../../store/tabs/index.js";
|
|
10
|
+
import { selectLayout, selectScreen } from "../../store/tabs/layout/layoutSelectors.js";
|
|
10
11
|
function findChildItemsWithNewWidth({ payload: { layoutPath, direction } }, layout, insightMap, settings, screen) {
|
|
11
12
|
const parentPath = layoutPath === undefined ? [] : layoutPath;
|
|
12
13
|
const parent = layoutPath === undefined ? layout : findItem(layout, layoutPath);
|
|
@@ -27,7 +28,7 @@ export function* toggleLayoutDirectionHandler(ctx, cmd) {
|
|
|
27
28
|
const insightMap = yield select(selectInsightsMap);
|
|
28
29
|
const screen = yield select(selectScreen);
|
|
29
30
|
const settings = yield select(selectSettings);
|
|
30
|
-
yield put(
|
|
31
|
+
yield put(tabsActions.toggleLayoutDirection({
|
|
31
32
|
layoutPath,
|
|
32
33
|
direction,
|
|
33
34
|
undo: {
|
|
@@ -37,7 +38,7 @@ export function* toggleLayoutDirectionHandler(ctx, cmd) {
|
|
|
37
38
|
const childItemsWithNewWidth = findChildItemsWithNewWidth(cmd, layout, insightMap, settings, screen);
|
|
38
39
|
const itemsWithUpdatedWidth = getUpdatedSizesOnly(layout, childItemsWithNewWidth, screen);
|
|
39
40
|
if (itemsWithUpdatedWidth.length > 0) {
|
|
40
|
-
yield put(
|
|
41
|
+
yield put(tabsActions.updateWidthOfMultipleItems({
|
|
41
42
|
itemsWithSizes: itemsWithUpdatedWidth,
|
|
42
43
|
}));
|
|
43
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggleLayoutDirectionHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutDirectionHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toggleLayoutDirectionHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutDirectionHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggleLayoutSectionHeadersHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutSectionHeadersHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toggleLayoutSectionHeadersHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutSectionHeadersHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAA+B,MAAM,wBAAwB,CAAC;AAElG,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,wBAAiB,iCAAiC,CAC9C,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,0BAA0B,GAChC,YAAY,CAAC,2BAA2B,CAAC,CAc3C"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
// (C) 2021-2025 GoodData Corporation
|
|
1
2
|
import { put } from "redux-saga/effects";
|
|
2
3
|
import { layoutSectionHeadersToggled } from "../../events/layout.js";
|
|
3
|
-
import {
|
|
4
|
+
import { tabsActions } from "../../store/tabs/index.js";
|
|
4
5
|
export function* toggleLayoutSectionHeadersHandler(ctx, cmd) {
|
|
5
6
|
const { layoutPath, enableSectionHeaders } = cmd.payload;
|
|
6
|
-
yield put(
|
|
7
|
+
yield put(tabsActions.toggleLayoutSectionHeaders({
|
|
7
8
|
layoutPath,
|
|
8
9
|
enableSectionHeaders,
|
|
9
10
|
undo: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggleLayoutSectionHeadersHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutSectionHeadersHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toggleLayoutSectionHeadersHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/toggleLayoutSectionHeadersHandler.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAGrC,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAGzC,OAAO,EAA+B,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD,MAAM,SAAS,CAAC,CAAC,iCAAiC,CAC9C,GAAqB,EACrB,GAA+B;IAE/B,MAAM,EAAE,UAAU,EAAE,oBAAoB,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;IAEzD,MAAM,GAAG,CACL,WAAW,CAAC,0BAA0B,CAAC;QACnC,UAAU;QACV,oBAAoB;QACpB,IAAI,EAAE;YACF,GAAG;SACN;KACJ,CAAC,CACL,CAAC;IAEF,OAAO,2BAA2B,CAAC,GAAG,EAAE,UAAU,EAAE,oBAAoB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;AACjG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undoLayoutChangesHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/undoLayoutChangesHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"undoLayoutChangesHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/undoLayoutChangesHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAA2B,iBAAiB,EAAqB,MAAM,yBAAyB,CAAC;AAExG,OAAO,EAAE,sBAAsB,EAAiB,MAAM,wBAAwB,CAAC;AAG/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAW9D,wBAAiB,wBAAwB,CACrC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,iBAAiB,GACvB,YAAY,CAAC,sBAAsB,CAAC,CA0BtC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
// (C) 2021-2025 GoodData Corporation
|
|
1
2
|
import { put, select } from "redux-saga/effects";
|
|
2
3
|
import { invalidArgumentsProvided } from "../../events/general.js";
|
|
3
4
|
import { layoutChanged } from "../../events/layout.js";
|
|
4
|
-
import {
|
|
5
|
-
import { selectLayout, selectUndoableLayoutCommands } from "../../store/layout/layoutSelectors.js";
|
|
5
|
+
import { tabsActions } from "../../store/tabs/index.js";
|
|
6
|
+
import { selectLayout, selectUndoableLayoutCommands } from "../../store/tabs/layout/layoutSelectors.js";
|
|
6
7
|
/*
|
|
7
8
|
* Default impl returns 0 -> meaning drop everything that the latest command achieved.
|
|
8
9
|
*/
|
|
@@ -17,7 +18,7 @@ export function* undoLayoutChangesHandler(ctx, cmd) {
|
|
|
17
18
|
throw invalidArgumentsProvided(ctx, cmd, `Undo point selector returned result out of bounds. Undoable commands: ${undoableCommands.length}. Got index: ${undoUpToIncludingCmd}`);
|
|
18
19
|
}
|
|
19
20
|
const selectedCommand = undoableCommands[undoUpToIncludingCmd];
|
|
20
|
-
yield put(
|
|
21
|
+
yield put(tabsActions.undoLayout({
|
|
21
22
|
undoDownTo: selectedCommand.firstOccurrenceOnStack,
|
|
22
23
|
}));
|
|
23
24
|
const layout = yield select(selectLayout);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undoLayoutChangesHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/undoLayoutChangesHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"undoLayoutChangesHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/layout/undoLayoutChangesHandler.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAGrC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAA0B,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAGxG;;GAEG;AACH,MAAM,yBAAyB,GAAsB,CACjD,KAA6C,EACvC,EAAE;IACR,OAAO,CAAC,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,SAAS,CAAC,CAAC,wBAAwB,CACrC,GAAqB,EACrB,GAAsB;IAEtB,MAAM,gBAAgB,GAAoD,MAAM,MAAM,CAClF,4BAA4B,CAC/B,CAAC;IACF,MAAM,EAAE,iBAAiB,GAAG,yBAAyB,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;IACtE,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3F,IAAI,oBAAoB,GAAG,CAAC,IAAI,oBAAoB,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAC9E,MAAM,wBAAwB,CAC1B,GAAG,EACH,GAAG,EACH,yEAAyE,gBAAgB,CAAC,MAAM,gBAAgB,oBAAoB,EAAE,CACzI,CAAC;IACN,CAAC;IAED,MAAM,eAAe,GAAG,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;IAE/D,MAAM,GAAG,CACL,WAAW,CAAC,UAAU,CAAC;QACnB,UAAU,EAAE,eAAe,CAAC,sBAAsB;KACrD,CAAC,CACL,CAAC;IAEF,MAAM,MAAM,GAAoC,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;IAE3E,OAAO,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LayoutStash } from "../../../store/layout/layoutState.js";
|
|
1
|
+
import { LayoutStash } from "../../../store/tabs/layout/layoutState.js";
|
|
2
2
|
import { ExtendedDashboardItem, InternalDashboardItemDefinition, StashedDashboardItemsId } from "../../../types/layoutTypes.js";
|
|
3
3
|
export interface ItemResolutionResult {
|
|
4
4
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stashValidation.d.ts","sourceRoot":"","sources":["../../../../../src/model/commandHandlers/layout/validation/stashValidation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"stashValidation.d.ts","sourceRoot":"","sources":["../../../../../src/model/commandHandlers/layout/validation/stashValidation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,OAAO,EACH,qBAAqB,EACrB,+BAA+B,EAC/B,uBAAuB,EAE1B,MAAM,+BAA+B,CAAC;AAEvC,MAAM,WAAW,oBAAoB;IACjC;;OAEG;IACH,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IAEpC;;OAEG;IACH,OAAO,EAAE,uBAAuB,EAAE,CAAC;IAEnC;;;;;OAKG;IACH,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAElC;;;;;;;OAOG;IACH,aAAa,EAAE,OAAO,EAAE,CAAC;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,8BAA8B,CAC1C,KAAK,EAAE,WAAW,EAClB,eAAe,EAAE,aAAa,CAAC,+BAA+B,CAAC,GAChE,oBAAoB,CA0BtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changeRenderModeHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/renderMode/changeRenderModeHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"changeRenderModeHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/renderMode/changeRenderModeHandler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK1C,OAAO,EAAE,gBAAgB,EAA2C,MAAM,yBAAyB,CAAC;AACpG,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAMnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAM9D,wBAAiB,uBAAuB,CACpC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,gBAAgB,GACtB,YAAY,CAAC,0BAA0B,CAAC,CA8C1C"}
|
|
@@ -4,9 +4,9 @@ import { call, put, select } from "redux-saga/effects";
|
|
|
4
4
|
import { isInsightWidget } from "@gooddata/sdk-model";
|
|
5
5
|
import { resetDashboard as resetDashboardCommand } from "../../commands/index.js";
|
|
6
6
|
import { renderModeChanged } from "../../events/renderMode.js";
|
|
7
|
-
import { selectAllAnalyticalWidgets } from "../../store/layout/layoutSelectors.js";
|
|
8
7
|
import { renderModeActions } from "../../store/renderMode/index.js";
|
|
9
8
|
import { clearShowWidgetAsTable } from "../../store/showWidgetAsTable/index.js";
|
|
9
|
+
import { selectAllAnalyticalWidgets } from "../../store/tabs/layout/layoutSelectors.js";
|
|
10
10
|
import { uiActions } from "../../store/ui/index.js";
|
|
11
11
|
import { validateDrills } from "../common/validateDrills.js";
|
|
12
12
|
import { validateDrillToCustomUrlParams } from "../common/validateDrillToCustomUrlParams.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changeRenderModeHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/renderMode/changeRenderModeHandler.ts"],"names":[],"mappings":"AAAA,qCAAqC;
|
|
1
|
+
{"version":3,"file":"changeRenderModeHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/renderMode/changeRenderModeHandler.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAkB,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAoB,cAAc,IAAI,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEpG,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,8BAA8B,EAAE,MAAM,6CAA6C,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,uEAAuE,CAAC;AACnH,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAE9E,MAAM,SAAS,CAAC,CAAC,uBAAuB,CACpC,GAAqB,EACrB,GAAqB;IAErB,MAAM,EACF,OAAO,EAAE,EAAE,UAAU,EAAE,uBAAuB,EAAE,EAChD,aAAa,GAChB,GAAG,GAAG,CAAC;IAER,oGAAoG;IACpG,8FAA8F;IAC9F,+EAA+E;IAC/E,IAAI,uBAAuB,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,IAAI,GAAiD,MAAM,IAAI,CACjE,qBAAqB,EACrB,GAAG,EACH,qBAAqB,CAAC,aAAa,CAAC,CACvC,CAAC;QACF,MAAM,GAAG,CACL,YAAY,CAAC;YACT,IAAI,CAAC,KAAK;YACV,SAAS,CAAC,2BAA2B,EAAE;YACvC,yCAAyC;YACzC,sBAAsB,EAAE;YACxB,SAAS,CAAC,qDAAqD,EAAE;YACjE,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC;SAC9C,CAAC,CACL,CAAC;QACF,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,CACL,YAAY,CAAC;YACT,SAAS,CAAC,2BAA2B,EAAE;YACvC,sBAAsB,EAAE;YACxB,SAAS,CAAC,qDAAqD,EAAE;YACjE,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC;SAC9C,CAAC,CACL,CAAC;IACN,CAAC;IAED,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACxB,MAAM,OAAO,GACT,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,8BAA8B,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;AAC7D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initializeAutomationsHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"initializeAutomationsHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAkC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAwBzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAI9D,wBAAiB,4BAA4B,CACzC,GAAG,EAAE,gBAAgB,EACrB,IAAI,EAAE,qBAAqB,GAC5B,YAAY,CA4Kd"}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
import { compact, omit } from "lodash-es";
|
|
3
3
|
import { batchActions } from "redux-batched-actions";
|
|
4
4
|
import { all, call, put, select } from "redux-saga/effects";
|
|
5
|
-
import {
|
|
5
|
+
import { generateDateFilterLocalIdentifier } from "@gooddata/sdk-backend-base";
|
|
6
|
+
import { dashboardFilterLocalIdentifier, filterLocalIdentifier, filterObjRef, idRef, insightFilters, isAbsoluteDateFilter, isAttributeFilter, isDashboardCommonDateFilter, isDashboardDateFilter, isDateFilter, isExportDefinitionDashboardRequestPayload, isExportDefinitionVisualizationObjectRequestPayload, isInsightWidget, isRelativeDateFilter, } from "@gooddata/sdk-model";
|
|
6
7
|
import { convertError } from "@gooddata/sdk-ui";
|
|
7
8
|
import { loadDashboardUserAutomations, loadWorkspaceAutomationsCount } from "./loadAutomations.js";
|
|
8
9
|
import { loadNotificationChannels } from "./loadNotificationChannels.js";
|
|
@@ -13,11 +14,11 @@ import { selectAutomationsIsInitialized, selectAutomationsIsLoading, } from "../
|
|
|
13
14
|
import { automationsActions } from "../../store/automations/index.js";
|
|
14
15
|
import { selectEnableAutomations, selectEnableInPlatformNotifications, selectEnableNotificationChannelIdentifiers, selectExternalRecipient, selectFocusObject, selectIsReadOnly, selectOpenAutomationOnLoad, } from "../../store/config/configSelectors.js";
|
|
15
16
|
import { selectInsightByWidgetRef } from "../../store/insights/insightsSelectors.js";
|
|
16
|
-
import { selectWidgetByRef } from "../../store/layout/layoutSelectors.js";
|
|
17
17
|
import { selectDashboardId } from "../../store/meta/metaSelectors.js";
|
|
18
18
|
import { notificationChannelsActions } from "../../store/notificationChannels/index.js";
|
|
19
19
|
import { selectCanManageWorkspace } from "../../store/permissions/permissionsSelectors.js";
|
|
20
|
-
import {
|
|
20
|
+
import { selectFilterContextFilters } from "../../store/tabs/filterContext/filterContextSelectors.js";
|
|
21
|
+
import { selectWidgetByRef } from "../../store/tabs/layout/layoutSelectors.js";
|
|
21
22
|
import { uiActions } from "../../store/ui/index.js";
|
|
22
23
|
import { selectCurrentUser } from "../../store/user/userSelectors.js";
|
|
23
24
|
import { changeFilterContextSelectionHandler } from "../filterContext/changeFilterContextSelectionHandler.js";
|
|
@@ -54,13 +55,15 @@ export function* initializeAutomationsHandler(ctx, _cmd) {
|
|
|
54
55
|
const targetAutomation = automations.find((a) => a.id === automationId);
|
|
55
56
|
const targetWidget = targetAutomation?.metadata?.widget;
|
|
56
57
|
const insight = yield select(selectInsightByWidgetRef(targetWidget ? idRef(targetWidget) : undefined));
|
|
57
|
-
const
|
|
58
|
+
const filterContextFilters = yield select(selectFilterContextFilters);
|
|
59
|
+
const commonDateFilter = filterContextFilters.find(isDashboardCommonDateFilter);
|
|
60
|
+
const commonDateFilterLocalId = commonDateFilter?.dateFilter.localIdentifier ?? generateDateFilterLocalIdentifier(0);
|
|
58
61
|
const { targetAlertFilters, targetExportDefinition, targetExportDefinitionFilters, targetExportVisibleFilters, } = extractRelevantFilters(targetAutomation, insight);
|
|
59
62
|
// Set filters to the dashboard based on alert execution filters
|
|
60
63
|
if (targetWidget && targetAlertFilters) {
|
|
61
64
|
const widget = yield select(selectWidgetByRef(idRef(targetWidget)));
|
|
62
65
|
const filtersToSet = insight && isInsightWidget(widget)
|
|
63
|
-
? getDashboardFiltersOnly(targetAlertFilters,
|
|
66
|
+
? getDashboardFiltersOnly(targetAlertFilters, commonDateFilterLocalId, insight, widget)
|
|
64
67
|
: targetAlertFilters;
|
|
65
68
|
// Empty alert execution filters = reset all filters (set them to all).
|
|
66
69
|
// Empty sanitized filters = keep filters as they are, do not reset them (all alert execution filters are insight specific / ignored).
|
|
@@ -78,7 +81,7 @@ export function* initializeAutomationsHandler(ctx, _cmd) {
|
|
|
78
81
|
}
|
|
79
82
|
return true;
|
|
80
83
|
}) ?? [];
|
|
81
|
-
const sanitizedFiltersToSet = sanitizeDateFilters(filtersToSet,
|
|
84
|
+
const sanitizedFiltersToSet = sanitizeDateFilters(filtersToSet, commonDateFilterLocalId);
|
|
82
85
|
// Empty schedule execution filters = reset all filters (set them to all).
|
|
83
86
|
// Empty sanitized filters = keep filters as they are, do not reset them (all schedule execution filters are ignored).
|
|
84
87
|
// Non-empty sanitized filters = set them (some schedule export definition filters are originating from the dashboard).
|
|
@@ -161,19 +164,28 @@ function extractExportDefinitionFilters(content) {
|
|
|
161
164
|
* to properly match the dashboard's common date filter.
|
|
162
165
|
*
|
|
163
166
|
* This function removes the dataset from any date filter that matches the
|
|
164
|
-
* dashboard's common date filter local identifier
|
|
167
|
+
* dashboard's common date filter local identifier, or from filters that already
|
|
168
|
+
* have no dataset (common date filters).
|
|
169
|
+
*
|
|
170
|
+
* @param filters - Filters to sanitize
|
|
171
|
+
* @param commonDateFilterLocalId - Local identifier of the common date filter
|
|
165
172
|
*/
|
|
166
|
-
function sanitizeDateFilters(filters,
|
|
173
|
+
function sanitizeDateFilters(filters, commonDateFilterLocalId) {
|
|
167
174
|
return filters.map((filter) => {
|
|
168
|
-
if (isDashboardDateFilter(filter)
|
|
169
|
-
|
|
170
|
-
filter.dateFilter.localIdentifier ===
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
175
|
+
if (isDashboardDateFilter(filter)) {
|
|
176
|
+
// Primary match: by local identifier
|
|
177
|
+
const matchesByLocalId = commonDateFilterLocalId && filter.dateFilter.localIdentifier === commonDateFilterLocalId;
|
|
178
|
+
// Fallback: filters without datasets are common date filters
|
|
179
|
+
const isCommonFilter = !filter.dateFilter.dataSet;
|
|
180
|
+
if (matchesByLocalId || isCommonFilter) {
|
|
181
|
+
// Remove dataset to ensure it's treated as common date filter
|
|
182
|
+
return {
|
|
183
|
+
...filter,
|
|
184
|
+
dateFilter: {
|
|
185
|
+
...omit(filter.dateFilter, "dataSet"),
|
|
186
|
+
},
|
|
187
|
+
};
|
|
188
|
+
}
|
|
177
189
|
}
|
|
178
190
|
return filter;
|
|
179
191
|
});
|
|
@@ -181,22 +193,31 @@ function sanitizeDateFilters(filters, dashboardCommonDateFilter) {
|
|
|
181
193
|
/**
|
|
182
194
|
* Filter out insight and alert only filters from the list of filters
|
|
183
195
|
*
|
|
196
|
+
* @param filters - Filters to process
|
|
197
|
+
* @param commonDateFilterLocalId - Local identifier of the common date filter
|
|
198
|
+
* @param insight - Insight to check filters against
|
|
199
|
+
* @param widget - Widget to check filters against
|
|
200
|
+
*
|
|
184
201
|
* @internal
|
|
185
202
|
*/
|
|
186
|
-
function getDashboardFiltersOnly(filters,
|
|
203
|
+
function getDashboardFiltersOnly(filters, commonDateFilterLocalId, insight, widget) {
|
|
187
204
|
// Remove specific alert filters.
|
|
188
205
|
const withoutAlertFilters = removeAlertFilters(filters);
|
|
189
206
|
// Remove insight specific attribute filters from the list of filters.
|
|
190
207
|
const withoutInsightAttributeFilters = removeInsightAttributeFilters(withoutAlertFilters, insight);
|
|
191
208
|
// If widget has ignored date filter, remove date filter(s) - they originate from the insight, otherwise, it's the dashboard date filter, so keep it.
|
|
192
209
|
const withoutInsightDateFilters = removeDateFiltersIfDateFilterIsIgnored(withoutInsightAttributeFilters, widget);
|
|
193
|
-
// Find common date filter by local id
|
|
210
|
+
// Find common date filter by local id or by absence of dataset
|
|
194
211
|
const dateFilters = withoutInsightDateFilters.filter(isDateFilter);
|
|
195
212
|
const foundCommonFilter = dateFilters.find((f) => {
|
|
196
213
|
if (isRelativeDateFilter(f)) {
|
|
197
|
-
|
|
214
|
+
const matchesByLocalId = commonDateFilterLocalId && f.relativeDateFilter.localIdentifier === commonDateFilterLocalId;
|
|
215
|
+
const hasNoDataset = !f.relativeDateFilter.dataSet;
|
|
216
|
+
return matchesByLocalId || hasNoDataset;
|
|
198
217
|
}
|
|
199
|
-
|
|
218
|
+
const matchesByLocalId = commonDateFilterLocalId && f.absoluteDateFilter.localIdentifier === commonDateFilterLocalId;
|
|
219
|
+
const hasNoDataset = !f.absoluteDateFilter.dataSet;
|
|
220
|
+
return matchesByLocalId || hasNoDataset;
|
|
200
221
|
});
|
|
201
222
|
// Remove dataSet from date filters, as it's not relevant for the dashboard date filter.
|
|
202
223
|
return withoutInsightDateFilters.map((f) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initializeAutomationsHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,
|
|
1
|
+
{"version":3,"file":"initializeAutomationsHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDashboardTabHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/createDashboardTabHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"createDashboardTabHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/createDashboardTabHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAe1C,OAAO,EAAE,kBAAkB,EAAsB,MAAM,wBAAwB,CAAC;AAQhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAmD9D;;GAEG;AACH,wBAAiB,yBAAyB,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,kBAAkB,GAAG,YAAY,CAwDvG"}
|
|
@@ -6,13 +6,16 @@ import { createDefaultFilterContext } from "../../../_staging/dashboard/defaultF
|
|
|
6
6
|
import { switchDashboardTab } from "../../commands/tabs.js";
|
|
7
7
|
import { dashboardTabCreated } from "../../events/tabs.js";
|
|
8
8
|
import { dispatchDashboardEvent } from "../../store/_infra/eventDispatcher.js";
|
|
9
|
+
import { InitialUndoState } from "../../store/_infra/undoEnhancer.js";
|
|
9
10
|
import { selectDateFilterConfig } from "../../store/config/configSelectors.js";
|
|
10
11
|
import { tabsActions } from "../../store/tabs/index.js";
|
|
11
|
-
import {
|
|
12
|
-
|
|
12
|
+
import { selectScreen } from "../../store/tabs/layout/layoutSelectors.js";
|
|
13
|
+
import { selectActiveTabLocalIdentifier, selectTabs } from "../../store/tabs/tabsSelectors.js";
|
|
14
|
+
import { EmptyDashboardLayout } from "../dashboard/common/dashboardInitialize.js";
|
|
15
|
+
const getTabState = ({ title, localIdentifier, filterContext, dateFilterConfig, dateFilterConfigs, attributeFilterConfigs, layout, screen, }) => {
|
|
13
16
|
return {
|
|
14
17
|
title,
|
|
15
|
-
|
|
18
|
+
localIdentifier,
|
|
16
19
|
filterContext: {
|
|
17
20
|
filtersWithInvalidSelection: [],
|
|
18
21
|
filterContextDefinition: filterContext,
|
|
@@ -29,6 +32,12 @@ const getTabState = ({ title, identifier, filterContext, dateFilterConfig, dateF
|
|
|
29
32
|
attributeFilterConfigs: {
|
|
30
33
|
attributeFilterConfigs,
|
|
31
34
|
},
|
|
35
|
+
layout: {
|
|
36
|
+
layout: layout,
|
|
37
|
+
stash: {},
|
|
38
|
+
screen,
|
|
39
|
+
...InitialUndoState,
|
|
40
|
+
},
|
|
32
41
|
};
|
|
33
42
|
};
|
|
34
43
|
/**
|
|
@@ -38,16 +47,18 @@ export function* createDashboardTabHandler(ctx, cmd) {
|
|
|
38
47
|
const { title = "", index } = cmd.payload;
|
|
39
48
|
// 1. Get current state from main dashboard slices
|
|
40
49
|
const tabs = yield select(selectTabs);
|
|
41
|
-
const
|
|
50
|
+
const activeTabLocalIdentifier = yield select(selectActiveTabLocalIdentifier);
|
|
42
51
|
const dateFilterConfig = yield select(selectDateFilterConfig);
|
|
52
|
+
const screen = yield select(selectScreen);
|
|
43
53
|
const updatedTabs = (tabs ?? []).slice();
|
|
44
|
-
// 2. Create new tab with an empty filter context
|
|
54
|
+
// 2. Create new tab with an empty filter context and layout
|
|
45
55
|
const newTabId = uuid();
|
|
46
56
|
const newTabFilterContext = createDefaultFilterContext(dateFilterConfig, true);
|
|
47
57
|
const newTab = getTabState({
|
|
48
|
-
|
|
58
|
+
localIdentifier: newTabId,
|
|
49
59
|
title,
|
|
50
|
-
|
|
60
|
+
layout: EmptyDashboardLayout,
|
|
61
|
+
screen,
|
|
51
62
|
filterContext: newTabFilterContext,
|
|
52
63
|
dateFilterConfig,
|
|
53
64
|
});
|
|
@@ -57,7 +68,7 @@ export function* createDashboardTabHandler(ctx, cmd) {
|
|
|
57
68
|
// 5. Persist tabs with current active id, the new tab will be switched to later
|
|
58
69
|
yield put(tabsActions.setTabs({
|
|
59
70
|
tabs: updatedTabs,
|
|
60
|
-
|
|
71
|
+
activeTabLocalIdentifier,
|
|
61
72
|
}));
|
|
62
73
|
// 6. Emit created event
|
|
63
74
|
yield dispatchDashboardEvent(dashboardTabCreated(ctx, newTabId, insertionIndex, cmd.correlationId));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDashboardTabHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/createDashboardTabHandler.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAGhC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"createDashboardTabHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/createDashboardTabHandler.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAGhC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAWlC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAsB,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAwB,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAY,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,8BAA8B,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAG/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAElF,MAAM,WAAW,GAAG,CAAC,EACjB,KAAK,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,MAAM,EACN,MAAM,GAUT,EAAY,EAAE;IACX,OAAO;QACH,KAAK;QACL,eAAe;QACf,aAAa,EAAE;YACX,2BAA2B,EAAE,EAAE;YAC/B,uBAAuB,EAAE,aAAa;SACzC;QACD,gBAAgB,EAAE;YACd,gBAAgB,EAAE,SAAS;YAC3B,yBAAyB,EAAE,gBAAgB;YAC3C,yBAAyB,EAAE,KAAK;YAChC,kCAAkC,EAAE,SAAS;SAChD;QACD,iBAAiB,EAAE;YACf,iBAAiB;SACpB;QACD,sBAAsB,EAAE;YACpB,sBAAsB;SACzB;QACD,MAAM,EAAE;YACJ,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,EAAE;YACT,MAAM;YACN,GAAG,gBAAgB;SACtB;KACJ,CAAC;AACN,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,SAAS,CAAC,CAAC,yBAAyB,CAAC,GAAqB,EAAE,GAAuB;IACrF,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;IAE1C,kDAAkD;IAClD,MAAM,IAAI,GAAkC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IACrE,MAAM,wBAAwB,GAAsD,MAAM,MAAM,CAC5F,8BAA8B,CACjC,CAAC;IACF,MAAM,gBAAgB,GAA8C,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAEzG,MAAM,MAAM,GAAe,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;IAEtD,MAAM,WAAW,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IAEzC,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,IAAI,EAAE,CAAC;IACxB,MAAM,mBAAmB,GAAG,0BAA0B,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAE/E,MAAM,MAAM,GAAa,WAAW,CAAC;QACjC,eAAe,EAAE,QAAQ;QACzB,KAAK;QACL,MAAM,EAAE,oBAAoB;QAC5B,MAAM;QACN,aAAa,EAAE,mBAAmB;QAClC,gBAAgB;KACnB,CAAC,CAAC;IAEH,mDAAmD;IACnD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAC3B,CAAC,EACD,IAAI,CAAC,GAAG,CACJ,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EACjF,WAAW,CAAC,MAAM,CACrB,CACJ,CAAC;IACF,WAAW,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAE9C,gFAAgF;IAChF,MAAM,GAAG,CACL,WAAW,CAAC,OAAO,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,wBAAwB;KAC3B,CAAC,CACL,CAAC;IAEF,wBAAwB;IACxB,MAAM,sBAAsB,CAAC,mBAAmB,CAAC,GAAG,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpG,qCAAqC;IACrC,MAAM,aAAa,GAAyB,MAAM,IAAI,CAClD,yBAAyB,EACzB,GAAG,EACH,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,aAAa,CAAC,CAClD,CAAC;IACF,oFAAoF;IACpF,MAAM,sBAAsB,CAAC,aAAa,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deleteDashboardTabHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/deleteDashboardTabHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,OAAO,EAAE,kBAAkB,EAAsB,MAAM,wBAAwB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAA6C,MAAM,sBAAsB,CAAC;AAItG,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;GAEG;AACH,wBAAiB,yBAAyB,CACtC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,kBAAkB,GACxB,YAAY,CAAC,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"deleteDashboardTabHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/deleteDashboardTabHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,OAAO,EAAE,kBAAkB,EAAsB,MAAM,wBAAwB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAA6C,MAAM,sBAAsB,CAAC;AAItG,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;GAEG;AACH,wBAAiB,yBAAyB,CACtC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,kBAAkB,GACxB,YAAY,CAAC,mBAAmB,CAAC,CAuDnC"}
|
|
@@ -6,49 +6,49 @@ import { invalidArgumentsProvided } from "../../events/general.js";
|
|
|
6
6
|
import { dashboardTabDeleted } from "../../events/tabs.js";
|
|
7
7
|
import { dispatchDashboardEvent } from "../../store/_infra/eventDispatcher.js";
|
|
8
8
|
import { tabsActions } from "../../store/tabs/index.js";
|
|
9
|
-
import {
|
|
9
|
+
import { selectActiveTabLocalIdentifier, selectTabs } from "../../store/tabs/tabsSelectors.js";
|
|
10
10
|
/**
|
|
11
11
|
* @internal
|
|
12
12
|
*/
|
|
13
13
|
export function* deleteDashboardTabHandler(ctx, cmd) {
|
|
14
14
|
const { tabId } = cmd.payload;
|
|
15
15
|
const tabs = yield select(selectTabs);
|
|
16
|
-
const
|
|
16
|
+
const activeTabLocalIdentifier = yield select(selectActiveTabLocalIdentifier);
|
|
17
17
|
if (!tabs || tabs.length === 0) {
|
|
18
18
|
throw invalidArgumentsProvided(ctx, cmd, "Attempting to delete tab when there are no tabs.");
|
|
19
19
|
}
|
|
20
|
-
const index = tabs.findIndex((t) => t.
|
|
20
|
+
const index = tabs.findIndex((t) => t.localIdentifier === tabId);
|
|
21
21
|
if (index < 0) {
|
|
22
22
|
throw invalidArgumentsProvided(ctx, cmd, `Attempting to delete non-existent tab with id ${tabId}. There are ${tabs.length} tabs.`);
|
|
23
23
|
}
|
|
24
|
-
const isActive =
|
|
25
|
-
let
|
|
24
|
+
const isActive = activeTabLocalIdentifier === tabId;
|
|
25
|
+
let nextActiveTabLocalIdentifier = undefined;
|
|
26
26
|
if (isActive) {
|
|
27
27
|
// Prefer tab at the same index after deletion, then previous index
|
|
28
28
|
const hasNextAtSameIndex = index + 1 < tabs.length; // there is an item after current index
|
|
29
29
|
if (hasNextAtSameIndex) {
|
|
30
|
-
|
|
30
|
+
nextActiveTabLocalIdentifier = tabs[index + 1].localIdentifier;
|
|
31
31
|
}
|
|
32
32
|
else if (index - 1 >= 0) {
|
|
33
|
-
|
|
33
|
+
nextActiveTabLocalIdentifier = tabs[index - 1].localIdentifier;
|
|
34
34
|
}
|
|
35
35
|
else {
|
|
36
|
-
|
|
36
|
+
nextActiveTabLocalIdentifier = undefined;
|
|
37
37
|
}
|
|
38
|
-
if (
|
|
38
|
+
if (nextActiveTabLocalIdentifier) {
|
|
39
39
|
// Switch to the next tab first so the current active tab state is saved back
|
|
40
|
-
const switchedEvent = yield call(switchDashboardTabHandler, ctx, switchDashboardTab(
|
|
40
|
+
const switchedEvent = yield call(switchDashboardTabHandler, ctx, switchDashboardTab(nextActiveTabLocalIdentifier, cmd.correlationId));
|
|
41
41
|
// Ensure app-level sagas receive the switched event for URL sync etc.
|
|
42
42
|
yield dispatchDashboardEvent(switchedEvent);
|
|
43
43
|
}
|
|
44
44
|
else {
|
|
45
45
|
// No next active -> clear active tab id explicitly
|
|
46
|
-
yield put(tabsActions.
|
|
46
|
+
yield put(tabsActions.setActiveTabLocalIdentifier(undefined));
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
// Remove the tab
|
|
50
50
|
yield put(tabsActions.removeTabById(tabId));
|
|
51
51
|
// Emit deleted event
|
|
52
|
-
return dashboardTabDeleted(ctx, tabId, index,
|
|
52
|
+
return dashboardTabDeleted(ctx, tabId, index, nextActiveTabLocalIdentifier, cmd.correlationId);
|
|
53
53
|
}
|
|
54
54
|
//# sourceMappingURL=deleteDashboardTabHandler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deleteDashboardTabHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/deleteDashboardTabHandler.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAGhC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAsB,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAA6C,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"deleteDashboardTabHandler.js","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/deleteDashboardTabHandler.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAGhC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAsB,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAA6C,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,8BAA8B,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAG/F;;GAEG;AACH,MAAM,SAAS,CAAC,CAAC,yBAAyB,CACtC,GAAqB,EACrB,GAAuB;IAEvB,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;IAE9B,MAAM,IAAI,GAAkC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IACrE,MAAM,wBAAwB,GAAsD,MAAM,MAAM,CAC5F,8BAA8B,CACjC,CAAC;IAEF,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,kDAAkD,CAAC,CAAC;IACjG,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,KAAK,CAAC,CAAC;IACjE,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACZ,MAAM,wBAAwB,CAC1B,GAAG,EACH,GAAG,EACH,iDAAiD,KAAK,eAAe,IAAI,CAAC,MAAM,QAAQ,CAC3F,CAAC;IACN,CAAC;IAED,MAAM,QAAQ,GAAG,wBAAwB,KAAK,KAAK,CAAC;IACpD,IAAI,4BAA4B,GAAuB,SAAS,CAAC;IAEjE,IAAI,QAAQ,EAAE,CAAC;QACX,mEAAmE;QACnE,MAAM,kBAAkB,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,uCAAuC;QAC3F,IAAI,kBAAkB,EAAE,CAAC;YACrB,4BAA4B,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC;QACnE,CAAC;aAAM,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,4BAA4B,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC;QACnE,CAAC;aAAM,CAAC;YACJ,4BAA4B,GAAG,SAAS,CAAC;QAC7C,CAAC;QAED,IAAI,4BAA4B,EAAE,CAAC;YAC/B,6EAA6E;YAC7E,MAAM,aAAa,GAAyB,MAAM,IAAI,CAClD,yBAAyB,EACzB,GAAG,EACH,kBAAkB,CAAC,4BAA4B,EAAE,GAAG,CAAC,aAAa,CAAC,CACtE,CAAC;YACF,sEAAsE;YACtE,MAAM,sBAAsB,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACJ,mDAAmD;YACnD,MAAM,GAAG,CAAC,WAAW,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC,CAAC;QAClE,CAAC;IACL,CAAC;IAED,iBAAiB;IACjB,MAAM,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAE5C,qBAAqB;IACrB,OAAO,mBAAmB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;AACnG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repositionDashboardTabHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/repositionDashboardTabHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,EAAE,wBAAwB,EAA4B,MAAM,sBAAsB,CAAC;AAG1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;GAEG;AACH,wBAAiB,6BAA6B,CAC1C,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,sBAAsB,GAC5B,YAAY,CAAC,wBAAwB,CAAC,
|
|
1
|
+
{"version":3,"file":"repositionDashboardTabHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/tabs/repositionDashboardTabHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,EAAE,wBAAwB,EAA4B,MAAM,sBAAsB,CAAC;AAG1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;GAEG;AACH,wBAAiB,6BAA6B,CAC1C,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,sBAAsB,GAC5B,YAAY,CAAC,wBAAwB,CAAC,CA0CxC"}
|
|
@@ -3,14 +3,14 @@ import { put, select } from "redux-saga/effects";
|
|
|
3
3
|
import { invalidArgumentsProvided } from "../../events/general.js";
|
|
4
4
|
import { dashboardTabRepositioned } from "../../events/tabs.js";
|
|
5
5
|
import { tabsActions } from "../../store/tabs/index.js";
|
|
6
|
-
import {
|
|
6
|
+
import { selectActiveTabLocalIdentifier, selectTabs } from "../../store/tabs/tabsSelectors.js";
|
|
7
7
|
/**
|
|
8
8
|
* @internal
|
|
9
9
|
*/
|
|
10
10
|
export function* repositionDashboardTabHandler(ctx, cmd) {
|
|
11
11
|
const { oldIndex, newIndex } = cmd.payload;
|
|
12
12
|
const tabs = yield select(selectTabs);
|
|
13
|
-
const
|
|
13
|
+
const activeTabLocalIdentifier = yield select(selectActiveTabLocalIdentifier);
|
|
14
14
|
if (!tabs || tabs.length === 0) {
|
|
15
15
|
throw invalidArgumentsProvided(ctx, cmd, "Attempting to reposition tab when there are no tabs.");
|
|
16
16
|
}
|
|
@@ -27,7 +27,7 @@ export function* repositionDashboardTabHandler(ctx, cmd) {
|
|
|
27
27
|
// Persist reordered tabs and keep currently active tab as-is
|
|
28
28
|
yield put(tabsActions.setTabs({
|
|
29
29
|
tabs: updatedTabs,
|
|
30
|
-
|
|
30
|
+
activeTabLocalIdentifier,
|
|
31
31
|
}));
|
|
32
32
|
return dashboardTabRepositioned(ctx, oldIndex, newIndex, cmd.correlationId);
|
|
33
33
|
}
|