@gooddata/sdk-ui-dashboard 11.62.0-alpha.2 → 11.62.0-alpha.3
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 +33 -610
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/_staging/dashboard/dashboardFilterContext.d.ts.map +1 -1
- package/esm/_staging/dashboard/dashboardFilterContext.js +4 -2
- package/esm/_staging/dashboard/dashboardFilterContextValidation.js +1 -1
- package/esm/index.d.ts +5 -3
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -1
- package/esm/model/commandHandlers/dashboard/common/filterViews.d.ts +3 -2
- package/esm/model/commandHandlers/dashboard/common/filterViews.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/filterViews.js +12 -6
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/stateInitializers.js +5 -6
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js +1 -1
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadUnavailableReferences.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadUnavailableReferences.js +2 -0
- package/esm/model/commandHandlers/dashboard/resetDashboardHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js +3 -1
- package/esm/model/commandHandlers/dashboard/saveDashboardHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/dashboard/saveDashboardHandler.js +6 -5
- package/esm/model/commandHandlers/drill/drillToDashboardHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/drill/drillToDashboardHandler.js +4 -1
- package/esm/model/commandHandlers/drill/keyDriverAnalysisHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/drill/keyDriverAnalysisHandler.js +5 -3
- package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.d.ts +21 -1
- package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.d.ts.map +1 -1
- package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js +56 -54
- package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.js +17 -4
- package/esm/model/commandHandlers/filterContext/attributeFilter/replaceAttributeFilterItemSelectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/attributeFilter/replaceAttributeFilterItemSelectionHandler.js +6 -1
- package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.js +188 -70
- package/esm/model/commandHandlers/filterContext/common.d.ts +14 -2
- package/esm/model/commandHandlers/filterContext/common.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/common.js +43 -6
- package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.js +13 -3
- package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterConditionHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterConditionHandler.js +11 -2
- package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterDimensionalityHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterDimensionalityHandler.js +3 -0
- package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.d.ts +10 -2
- package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.js +20 -3
- package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.js +21 -4
- package/esm/model/commandHandlers/tabs/createDashboardTabHandler.d.ts.map +1 -1
- package/esm/model/commandHandlers/tabs/createDashboardTabHandler.js +27 -3
- package/esm/model/commands/filters.d.ts +16 -1
- package/esm/model/commands/filters.d.ts.map +1 -1
- package/esm/model/commands/filters.js +4 -3
- package/esm/model/commands/parameters.d.ts +4 -3
- package/esm/model/commands/parameters.d.ts.map +1 -1
- package/esm/model/commands/parameters.js +3 -2
- package/esm/model/store/drill/drillSelectors.d.ts +6 -0
- package/esm/model/store/drill/drillSelectors.d.ts.map +1 -1
- package/esm/model/store/drill/drillSelectors.js +9 -0
- package/esm/model/store/filtering/dashboardFilterSelectors.d.ts +6 -1
- package/esm/model/store/filtering/dashboardFilterSelectors.d.ts.map +1 -1
- package/esm/model/store/filtering/dashboardFilterSelectors.js +21 -19
- package/esm/model/store/filtering/restrictedFilterUtils.d.ts +26 -1
- package/esm/model/store/filtering/restrictedFilterUtils.d.ts.map +1 -1
- package/esm/model/store/filtering/restrictedFilterUtils.js +74 -6
- package/esm/model/store/meta/metaSelectors.d.ts +6 -0
- package/esm/model/store/meta/metaSelectors.d.ts.map +1 -1
- package/esm/model/store/meta/metaSelectors.js +13 -3
- package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts +48 -0
- package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts.map +1 -1
- package/esm/model/store/tabs/filterContext/filterContextReducers.js +362 -102
- package/esm/model/store/tabs/filterContext/filterContextSelectors.d.ts +74 -1
- package/esm/model/store/tabs/filterContext/filterContextSelectors.d.ts.map +1 -1
- package/esm/model/store/tabs/filterContext/filterContextSelectors.js +27 -21
- package/esm/model/store/tabs/filterContext/filterSync.d.ts +101 -0
- package/esm/model/store/tabs/filterContext/filterSync.d.ts.map +1 -0
- package/esm/model/store/tabs/filterContext/filterSync.js +361 -0
- package/esm/model/store/tabs/index.d.ts +2 -0
- package/esm/model/store/tabs/index.d.ts.map +1 -1
- package/esm/model/store/tabs/parameters/parametersReducers.d.ts +5 -0
- package/esm/model/store/tabs/parameters/parametersReducers.d.ts.map +1 -1
- package/esm/model/store/tabs/parameters/parametersReducers.js +9 -5
- package/esm/model/store/tabs/tabsReducers.d.ts +6 -0
- package/esm/model/store/tabs/tabsReducers.d.ts.map +1 -1
- package/esm/model/store/tabs/tabsReducers.js +14 -6
- package/esm/model/store/tabs/tabsState.d.ts +10 -0
- package/esm/model/store/tabs/tabsState.d.ts.map +1 -1
- package/esm/model/store/tabs/tabsState.js +20 -0
- package/esm/model/store/unavailableObjects/copyBlockingReferences.d.ts +5 -3
- package/esm/model/store/unavailableObjects/copyBlockingReferences.d.ts.map +1 -1
- package/esm/model/store/unavailableObjects/copyBlockingReferences.js +9 -16
- package/esm/model/store/unavailableObjects/unavailableObjectsSelectors.d.ts +0 -16
- package/esm/model/store/unavailableObjects/unavailableObjectsSelectors.d.ts.map +1 -1
- package/esm/model/store/unavailableObjects/unavailableObjectsSelectors.js +0 -18
- package/esm/model/utils/attributeFilterMatching.d.ts +38 -0
- package/esm/model/utils/attributeFilterMatching.d.ts.map +1 -0
- package/esm/model/utils/attributeFilterMatching.js +110 -0
- package/esm/model/utils/attributeFilterSelectionTypeCompatibility.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/state/types.d.ts +2 -2
- package/esm/presentation/automations/alerting/state/types.d.ts.map +1 -1
- package/esm/presentation/automations/connectors/hooks/useBuildAutomationsContext.d.ts.map +1 -1
- package/esm/presentation/automations/connectors/hooks/useBuildAutomationsContext.js +7 -3
- package/esm/presentation/automations/contexts/AutomationsContext.d.ts +6 -2
- package/esm/presentation/automations/contexts/AutomationsContext.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/state/types.d.ts +2 -2
- package/esm/presentation/automations/scheduledEmail/state/types.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/types.d.ts +2 -2
- package/esm/presentation/automations/scheduledEmail/types.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/automationParameters.d.ts +11 -1
- package/esm/presentation/automations/shared/automationFilters/automationParameters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/automationParameters.js +2 -0
- package/esm/presentation/automations/shared/automationFilters/components/AutomationFiltersSelect.d.ts +3 -3
- package/esm/presentation/automations/shared/automationFilters/components/AutomationFiltersSelect.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/components/AutomationFiltersSelect.js +3 -13
- package/esm/presentation/automations/shared/automationFilters/hooks/useDefaultSelectedFiltersForExistingAutomation.d.ts +1 -1
- package/esm/presentation/automations/shared/automationFilters/hooks/useDefaultSelectedFiltersForExistingAutomation.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/hooks/useDefaultSelectedFiltersForExistingAutomation.js +1 -1
- package/esm/presentation/automations/shared/automationFilters/hooks/useValidateExistingAutomationFilters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/hooks/useValidateExistingAutomationFilters.js +1 -1
- package/esm/presentation/automations/shared/automationFilters/useAutomationAlertParameters.d.ts +2 -2
- package/esm/presentation/automations/shared/automationFilters/useAutomationAlertParameters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/useAutomationExportParameters.d.ts +6 -2
- package/esm/presentation/automations/shared/automationFilters/useAutomationExportParameters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.js +2 -2
- package/esm/presentation/automations/shared/automationFilters/utils.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/utils.js +8 -0
- package/esm/presentation/automations/shared/filters/conversions.d.ts +1 -1
- package/esm/presentation/automations/shared/filters/conversions.d.ts.map +1 -1
- package/esm/presentation/automations/shared/filters/conversions.js +5 -3
- package/esm/presentation/automations/shared/slots/types.d.ts +2 -2
- package/esm/presentation/automations/shared/slots/types.d.ts.map +1 -1
- package/esm/presentation/dashboardSettingsDialog/useDialogData.js +1 -1
- package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.js +1 -4
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AttributesDropdown.d.ts +2 -11
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AttributesDropdown.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AttributesDropdown.js +17 -16
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/staticListItems.d.ts +11 -0
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/staticListItems.d.ts.map +1 -0
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/staticListItems.js +7 -0
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/useMetricDropdownItems.d.ts +2 -11
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/useMetricDropdownItems.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/useMetricDropdownItems.js +0 -6
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/useParameterDropdownItems.d.ts +34 -0
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/useParameterDropdownItems.d.ts.map +1 -0
- package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/useParameterDropdownItems.js +41 -0
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/configuration/hooks/useLimitingItemsConfiguration.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/configuration/hooks/useLimitingItemsConfiguration.js +4 -17
- package/esm/presentation/filterBar/attributeFilter/useDependentDateFilters.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/useDependentDateFilters.js +4 -13
- package/esm/presentation/filterBar/attributeFilter/useParentFilters.d.ts.map +1 -1
- package/esm/presentation/filterBar/attributeFilter/useParentFilters.js +3 -10
- package/esm/presentation/filterBar/filterBar/DefaultDashboardFilterGroup.d.ts.map +1 -1
- package/esm/presentation/filterBar/filterBar/DefaultDashboardFilterGroup.js +0 -9
- package/esm/presentation/filterBar/filterBar/DefaultFilterBarItem.d.ts.map +1 -1
- package/esm/presentation/filterBar/filterBar/DefaultFilterBarItem.js +15 -3
- package/esm/presentation/filterBar/filterBar/hooks/useResetFiltersButton.d.ts.map +1 -1
- package/esm/presentation/filterBar/filterBar/hooks/useResetFiltersButton.js +4 -0
- package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +8 -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 +8 -0
- package/esm/presentation/widget/insight/configuration/DrillFilters/drillFiltersConfigUtils.d.ts +2 -3
- package/esm/presentation/widget/insight/configuration/DrillFilters/drillFiltersConfigUtils.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/DrillFilters/drillFiltersConfigUtils.js +29 -133
- package/esm/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapDashboardFilterToOption.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapDashboardFilterToOption.js +1 -1
- package/esm/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceInsightFilterToOption.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceInsightFilterToOption.js +1 -1
- package/esm/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceMeasureFilterToOption.d.ts.map +1 -1
- package/esm/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceMeasureFilterToOption.js +1 -1
- package/esm/sdk-ui-dashboard.d.ts +135 -13
- package/package.json +23 -23
- package/styles/css/main.css +4 -0
- package/styles/css/main.css.map +1 -1
- package/esm/model/commandHandlers/dashboard/common/attributeFilterSelectionTypeCompatibility.d.ts.map +0 -1
- /package/esm/model/{commandHandlers/dashboard/common → utils}/attributeFilterSelectionTypeCompatibility.d.ts +0 -0
- /package/esm/model/{commandHandlers/dashboard/common → utils}/attributeFilterSelectionTypeCompatibility.js +0 -0
package/esm/presentation/widget/insight/configuration/DrillFilters/drillFiltersConfigUtils.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// (C) 2020-2026 GoodData Corporation
|
|
2
|
-
import { areObjRefsEqual,
|
|
2
|
+
import { areObjRefsEqual, isDashboardDateFilterWithDimension, isDashboardMeasureValueFilter, isLocalIdRef, measureAlias, measureFilters, measureLocalId, measureTitle, serializeObjRef, } from "@gooddata/sdk-model";
|
|
3
3
|
import { buildMeasureTitles } from "@gooddata/sdk-ui/internal";
|
|
4
4
|
import { sourceInsightFilterObjRefValue } from "../../../../../_staging/drills/drillingUtils.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import { findAttributeFilterCounterpart, } from "../../../../../model/utils/attributeFilterMatching.js";
|
|
6
|
+
import { findDashboardAttributeFilterByDisplayForm } from "../../../../../model/utils/filterContextUtils.js";
|
|
7
7
|
import { messages } from "./messages.js";
|
|
8
8
|
/**
|
|
9
9
|
* Strip filter description suffix baked in by AD
|
|
@@ -88,23 +88,6 @@ export function getCatalogMeasureTitle(measureRef, allCatalogMeasures) {
|
|
|
88
88
|
export function hasMatchingTargetDashboardAttributeFilterDisplayForm(displayFormRef, targetDashboardAttributeFilters) {
|
|
89
89
|
return !!findDashboardAttributeFilterByDisplayForm(targetDashboardAttributeFilters, displayFormRef);
|
|
90
90
|
}
|
|
91
|
-
export function hasMatchingTargetDashboardAttributeFilter(dashboardFilter, sourceDashboardAttributeFilterConfigs, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, allCatalogDisplayFormsMap) {
|
|
92
|
-
const displayFormRef = dashboardFilter.attributeFilter.displayForm;
|
|
93
|
-
if (hasMatchingTargetDashboardAttributeFilterDisplayForm(displayFormRef, targetDashboardAttributeFilters)) {
|
|
94
|
-
return true;
|
|
95
|
-
}
|
|
96
|
-
const sourceDisplayForm = allCatalogDisplayFormsMap.get(displayFormRef);
|
|
97
|
-
if (sourceDisplayForm) {
|
|
98
|
-
const attributeDisplayForms = Array.from(allCatalogDisplayFormsMap.values()).filter((displayForm) => areObjRefsEqual(displayForm.attribute, sourceDisplayForm.attribute));
|
|
99
|
-
if (findDashboardAttributeFilterByAttributeDisplayForms(targetDashboardAttributeFilters, attributeDisplayForms)) {
|
|
100
|
-
return true;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
if (findDashboardAttributeFilterByIncomingDisplayAsLabel(dashboardFilter, sourceDashboardAttributeFilterConfigs, targetDashboardAttributeFilters)) {
|
|
104
|
-
return true;
|
|
105
|
-
}
|
|
106
|
-
return !!findDashboardAttributeFilterByTargetDisplayAsLabel(displayFormRef, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs);
|
|
107
|
-
}
|
|
108
91
|
export function hasMatchingTargetDashboardDateFilter(datasetRef, targetDashboardFilters) {
|
|
109
92
|
return targetDashboardFilters.some((targetDashboardFilter) => isDashboardDateFilterWithDimension(targetDashboardFilter) &&
|
|
110
93
|
areObjRefsEqual(datasetRef, targetDashboardFilter.dateFilter.dataSet));
|
|
@@ -122,93 +105,26 @@ export function hasCompatibleTargetInsightMeasureValueFilter(measureRef, targetI
|
|
|
122
105
|
export function isDateIntersectionAttribute(displayFormRef, allCatalogDateAttributeDisplayForms) {
|
|
123
106
|
return allCatalogDateAttributeDisplayForms.some((displayForm) => areObjRefsEqual(displayForm.ref, displayFormRef));
|
|
124
107
|
}
|
|
125
|
-
function getConfigSelectionType(targetFilterLocalId, targetDashboardAttributeFilterConfigs) {
|
|
126
|
-
return targetDashboardAttributeFilterConfigs.find((c) => c.localIdentifier === targetFilterLocalId)
|
|
127
|
-
?.selectionType;
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Finds a matching text filter on the target dashboard by displayForm.
|
|
131
|
-
* Checks the source filter's displayForm and optionally its displayAsLabel from config.
|
|
132
|
-
*/
|
|
133
|
-
function findMatchingTargetTextFilter(displayFormRef, sourceDashboardAttributeFilterConfigs, sourceFilterLocalId, targetDashboardTextAttributeFilters) {
|
|
134
|
-
// Direct displayForm match
|
|
135
|
-
const directMatch = targetDashboardTextAttributeFilters.find((textFilter) => areObjRefsEqual(dashboardAttributeFilterItemDisplayForm(textFilter), displayFormRef));
|
|
136
|
-
if (directMatch) {
|
|
137
|
-
return directMatch;
|
|
138
|
-
}
|
|
139
|
-
// Check source's displayAsLabel from config
|
|
140
|
-
if (sourceFilterLocalId) {
|
|
141
|
-
const sourceConfig = sourceDashboardAttributeFilterConfigs.find((c) => c.localIdentifier === sourceFilterLocalId);
|
|
142
|
-
if (sourceConfig?.displayAsLabel) {
|
|
143
|
-
return targetDashboardTextAttributeFilters.find((textFilter) => areObjRefsEqual(dashboardAttributeFilterItemDisplayForm(textFilter), sourceConfig.displayAsLabel));
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
return undefined;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Finds a matching list filter on the target dashboard for a text source filter.
|
|
150
|
-
* Text filter has only displayForm. List filter has primary displayForm + displayAsLabel in config.
|
|
151
|
-
* Match if text filter's displayForm equals either of those.
|
|
152
|
-
*/
|
|
153
|
-
function findMatchingTargetListFilterForTextSource(textFilterDisplayFormRef, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs) {
|
|
154
|
-
// Direct displayForm match
|
|
155
|
-
const directMatch = findDashboardAttributeFilterByDisplayForm(targetDashboardAttributeFilters, textFilterDisplayFormRef);
|
|
156
|
-
if (directMatch) {
|
|
157
|
-
return directMatch;
|
|
158
|
-
}
|
|
159
|
-
// Check target's displayAsLabel — find a config whose displayAsLabel matches the text filter's displayForm
|
|
160
|
-
return findDashboardAttributeFilterByTargetDisplayAsLabel(textFilterDisplayFormRef, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs);
|
|
161
|
-
}
|
|
162
108
|
/**
|
|
163
109
|
* Checks if a list-type dashboard attribute filter can be transferred to the target dashboard,
|
|
164
110
|
* considering both list and text filters on the target, and selection type config.
|
|
165
111
|
*/
|
|
166
112
|
export function canTransferDashboardAttributeFilter(sourceFilter, sourceDashboardAttributeFilterConfigs, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters, allCatalogDisplayFormsMap) {
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
const matchingTextFilter = findMatchingTargetTextFilter(sourceFilter.attributeFilter.displayForm, sourceDashboardAttributeFilterConfigs, sourceFilter.attributeFilter.localIdentifier, targetDashboardTextAttributeFilters);
|
|
173
|
-
if (!matchingTextFilter) {
|
|
174
|
-
return "notFound";
|
|
175
|
-
}
|
|
176
|
-
// 3. Check if the target text filter's selection type allows list type
|
|
177
|
-
const textFilterLocalId = dashboardAttributeFilterItemLocalIdentifier(matchingTextFilter);
|
|
178
|
-
if (!textFilterLocalId) {
|
|
179
|
-
return "notFound";
|
|
180
|
-
}
|
|
181
|
-
const configSelectionType = getConfigSelectionType(textFilterLocalId, targetDashboardAttributeFilterConfigs);
|
|
182
|
-
return canApplyFilterTypeToTarget("list", configSelectionType, matchingTextFilter)
|
|
183
|
-
? "transferable"
|
|
184
|
-
: "notCompatible";
|
|
113
|
+
return toFilterTransferResult(findAttributeFilterCounterpart(sourceFilter, [...targetDashboardAttributeFilters, ...targetDashboardTextAttributeFilters], {
|
|
114
|
+
sourceFilterConfigs: sourceDashboardAttributeFilterConfigs,
|
|
115
|
+
targetFilterConfigs: targetDashboardAttributeFilterConfigs,
|
|
116
|
+
displayForms: Array.from(allCatalogDisplayFormsMap.values()),
|
|
117
|
+
}));
|
|
185
118
|
}
|
|
186
119
|
/**
|
|
187
120
|
* Checks if a text-type dashboard attribute filter can be transferred to the target dashboard,
|
|
188
121
|
* considering both text and list filters on the target, and selection type config.
|
|
189
122
|
*/
|
|
190
|
-
export function canTransferTextAttributeFilter(sourceFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters) {
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
return "transferable";
|
|
196
|
-
}
|
|
197
|
-
// 2. Cross-type match against list filters on target
|
|
198
|
-
// Text filter has only displayForm; list filter has primary displayForm + displayAsLabel in config
|
|
199
|
-
const matchingListFilter = findMatchingTargetListFilterForTextSource(sourceDisplayFormRef, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs);
|
|
200
|
-
if (!matchingListFilter) {
|
|
201
|
-
return "notFound";
|
|
202
|
-
}
|
|
203
|
-
// 3. Check if the target list filter's selection type allows text type
|
|
204
|
-
const listFilterLocalId = matchingListFilter.attributeFilter.localIdentifier;
|
|
205
|
-
if (!listFilterLocalId) {
|
|
206
|
-
return "notFound";
|
|
207
|
-
}
|
|
208
|
-
const configSelectionType = getConfigSelectionType(listFilterLocalId, targetDashboardAttributeFilterConfigs);
|
|
209
|
-
return canApplyFilterTypeToTarget("text", configSelectionType, matchingListFilter)
|
|
210
|
-
? "transferable"
|
|
211
|
-
: "notCompatible";
|
|
123
|
+
export function canTransferTextAttributeFilter(sourceFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters, allCatalogDisplayFormsMap) {
|
|
124
|
+
return toFilterTransferResult(findAttributeFilterCounterpart(sourceFilter, [...targetDashboardTextAttributeFilters, ...targetDashboardAttributeFilters], {
|
|
125
|
+
targetFilterConfigs: targetDashboardAttributeFilterConfigs,
|
|
126
|
+
displayForms: Array.from(allCatalogDisplayFormsMap.values()),
|
|
127
|
+
}));
|
|
212
128
|
}
|
|
213
129
|
/**
|
|
214
130
|
* Checks if a source insight/measure attribute filter (by displayForm) can be transferred,
|
|
@@ -221,40 +137,20 @@ export function canTransferTextAttributeFilter(sourceFilter, targetDashboardAttr
|
|
|
221
137
|
* @param targetDashboardAttributeFilterConfigs - attribute filter configs on the target dashboard
|
|
222
138
|
* @param targetDashboardTextAttributeFilters - text filters on the target dashboard
|
|
223
139
|
*/
|
|
224
|
-
export function canTransferAttributeFilterByDisplayForm(displayFormRef, isSourceTextFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters) {
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
return canApplyFilterTypeToTarget("text", configSelectionType, matchingListFilter)
|
|
241
|
-
? "transferable"
|
|
242
|
-
: "notCompatible";
|
|
243
|
-
}
|
|
244
|
-
// List source: check list targets first, then text targets with selection type
|
|
245
|
-
if (hasMatchingTargetDashboardAttributeFilterDisplayForm(displayFormRef, targetDashboardAttributeFilters)) {
|
|
246
|
-
return "transferable";
|
|
247
|
-
}
|
|
248
|
-
const matchingTextFilter = targetDashboardTextAttributeFilters.find((textFilter) => areObjRefsEqual(dashboardAttributeFilterItemDisplayForm(textFilter), displayFormRef));
|
|
249
|
-
if (!matchingTextFilter) {
|
|
250
|
-
return "notFound";
|
|
251
|
-
}
|
|
252
|
-
const textFilterLocalId = dashboardAttributeFilterItemLocalIdentifier(matchingTextFilter);
|
|
253
|
-
if (!textFilterLocalId) {
|
|
254
|
-
return "notFound";
|
|
255
|
-
}
|
|
256
|
-
const configSelectionType = getConfigSelectionType(textFilterLocalId, targetDashboardAttributeFilterConfigs);
|
|
257
|
-
return canApplyFilterTypeToTarget("list", configSelectionType, matchingTextFilter)
|
|
258
|
-
? "transferable"
|
|
259
|
-
: "notCompatible";
|
|
140
|
+
export function canTransferAttributeFilterByDisplayForm(displayFormRef, isSourceTextFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters, allCatalogDisplayFormsMap) {
|
|
141
|
+
const source = {
|
|
142
|
+
displayForm: displayFormRef,
|
|
143
|
+
type: isSourceTextFilter ? "text" : "list",
|
|
144
|
+
};
|
|
145
|
+
const targets = [
|
|
146
|
+
...targetDashboardAttributeFilters,
|
|
147
|
+
...targetDashboardTextAttributeFilters,
|
|
148
|
+
];
|
|
149
|
+
return toFilterTransferResult(findAttributeFilterCounterpart(source, targets, {
|
|
150
|
+
targetFilterConfigs: targetDashboardAttributeFilterConfigs,
|
|
151
|
+
displayForms: Array.from(allCatalogDisplayFormsMap.values()),
|
|
152
|
+
}));
|
|
153
|
+
}
|
|
154
|
+
function toFilterTransferResult(result) {
|
|
155
|
+
return result.status === "matched" ? "transferable" : result.status;
|
|
260
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapDashboardFilterToOption.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapDashboardFilterToOption.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,mCAAmC,EACxC,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EACnC,KAAK,4BAA4B,EACjC,KAAK,MAAM,EAUd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kDAAkD,CAAC;AAelF,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,UAAU,iCAAiC;IACvC,eAAe,EAAE,iBAAiB,CAAC;IACnC,yBAAyB,EAAE,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC1E,kBAAkB,EAAE,eAAe,EAAE,CAAC;IACtC,sBAAsB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;IAC5E,wBAAwB,EAAE,0BAA0B,GAAG,SAAS,CAAC;IACjE,6BAA6B,EAAE,8BAA8B,EAAE,CAAC;IAChE,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C,+BAA+B,EAAE,yBAAyB,EAAE,CAAC;IAC7D,mCAAmC,EAAE,4BAA4B,EAAE,CAAC;IACpE,kCAAkC,EAAE,4BAA4B,EAAE,CAAC;IACnE,0CAA0C,EAAE,4BAA4B,EAAE,CAAC;IAC3E,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,0BAA0B,CAAC,EACvC,eAAe,EACf,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,EAC7B,qCAAqC,EACrC,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,EACnC,kCAAkC,EAClC,0CAA0C,EAC1C,qCAAqC,EACrC,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,IAAI,GACP,EAAE,iCAAiC,GAAG,yBAAyB,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"mapDashboardFilterToOption.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapDashboardFilterToOption.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,mCAAmC,EACxC,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EACnC,KAAK,4BAA4B,EACjC,KAAK,MAAM,EAUd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kDAAkD,CAAC;AAelF,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,UAAU,iCAAiC;IACvC,eAAe,EAAE,iBAAiB,CAAC;IACnC,yBAAyB,EAAE,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC1E,kBAAkB,EAAE,eAAe,EAAE,CAAC;IACtC,sBAAsB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;IAC5E,wBAAwB,EAAE,0BAA0B,GAAG,SAAS,CAAC;IACjE,6BAA6B,EAAE,8BAA8B,EAAE,CAAC;IAChE,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C,+BAA+B,EAAE,yBAAyB,EAAE,CAAC;IAC7D,mCAAmC,EAAE,4BAA4B,EAAE,CAAC;IACpE,kCAAkC,EAAE,4BAA4B,EAAE,CAAC;IACnE,0CAA0C,EAAE,4BAA4B,EAAE,CAAC;IAC3E,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,0BAA0B,CAAC,EACvC,eAAe,EACf,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,EAC7B,qCAAqC,EACrC,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,EACnC,kCAAkC,EAClC,0CAA0C,EAC1C,qCAAqC,EACrC,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,IAAI,GACP,EAAE,iCAAiC,GAAG,yBAAyB,GAAG,SAAS,CAiI3E"}
|
|
@@ -16,7 +16,7 @@ export function mapDashboardFilterToOption({ dashboardFilter, allCatalogDisplayF
|
|
|
16
16
|
// This considers both list and text filters on the target, and selection type config.
|
|
17
17
|
const transferResult = isDashboardAttributeFilter(dashboardFilter)
|
|
18
18
|
? canTransferDashboardAttributeFilter(dashboardFilter, sourceDashboardAttributeFilterConfigs, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters, allCatalogDisplayFormsMap)
|
|
19
|
-
: canTransferTextAttributeFilter(dashboardFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters);
|
|
19
|
+
: canTransferTextAttributeFilter(dashboardFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters, allCatalogDisplayFormsMap);
|
|
20
20
|
return {
|
|
21
21
|
id: localIdentifier,
|
|
22
22
|
title: customTitle ??
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapSourceInsightFilterToOption.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceInsightFilterToOption.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,mCAAmC,EACxC,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,EACjC,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,MAAM,EAKd,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kDAAkD,CAAC;AAalF,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,UAAU,qCAAqC;IAC3C,mBAAmB,EAAE,OAAO,CAAC;IAC7B,yBAAyB,EAAE,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC1E,sBAAsB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;IAC5E,qBAAqB,EAAE,QAAQ,EAAE,CAAC;IAClC,kBAAkB,EAAE,eAAe,EAAE,CAAC;IACtC,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C,+BAA+B,EAAE,yBAAyB,EAAE,CAAC;IAC7D,mCAAmC,EAAE,4BAA4B,EAAE,CAAC;IACpE,kCAAkC,EAAE,4BAA4B,EAAE,CAAC;IACnE,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,WAAW,EAAE,OAAO,CAAC;IACrB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,wBAAwB,EAAE,OAAO,CAAC;IAClC,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,8BAA8B,CAAC,EAC3C,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,EACrC,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,IAAI,GACP,EAAE,qCAAqC,GAAG,yBAAyB,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"mapSourceInsightFilterToOption.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceInsightFilterToOption.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,mCAAmC,EACxC,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,EACjC,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,MAAM,EAKd,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kDAAkD,CAAC;AAalF,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,UAAU,qCAAqC;IAC3C,mBAAmB,EAAE,OAAO,CAAC;IAC7B,yBAAyB,EAAE,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC1E,sBAAsB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;IAC5E,qBAAqB,EAAE,QAAQ,EAAE,CAAC;IAClC,kBAAkB,EAAE,eAAe,EAAE,CAAC;IACtC,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C,+BAA+B,EAAE,yBAAyB,EAAE,CAAC;IAC7D,mCAAmC,EAAE,4BAA4B,EAAE,CAAC;IACpE,kCAAkC,EAAE,4BAA4B,EAAE,CAAC;IACnE,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,WAAW,EAAE,OAAO,CAAC;IACrB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,wBAAwB,EAAE,OAAO,CAAC;IAClC,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,8BAA8B,CAAC,EAC3C,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,EACrC,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,IAAI,GACP,EAAE,qCAAqC,GAAG,yBAAyB,GAAG,SAAS,CA0I/E"}
|
|
@@ -20,7 +20,7 @@ export function mapSourceInsightFilterToOption({ sourceInsightFilter, allCatalog
|
|
|
20
20
|
return undefined;
|
|
21
21
|
}
|
|
22
22
|
const isSourceTextFilter = isArbitraryAttributeFilter(sourceInsightFilter) || isMatchAttributeFilter(sourceInsightFilter);
|
|
23
|
-
const transferResult = canTransferAttributeFilterByDisplayForm(displayFormRef, isSourceTextFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters);
|
|
23
|
+
const transferResult = canTransferAttributeFilterByDisplayForm(displayFormRef, isSourceTextFilter, targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters, allCatalogDisplayFormsMap);
|
|
24
24
|
return {
|
|
25
25
|
id: sourceFilterOptionId(sourceFilterObjRef),
|
|
26
26
|
title: getDisplayFormTitle({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapSourceMeasureFilterToOption.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceMeasureFilterToOption.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,mCAAmC,EACxC,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,OAAO,EACZ,KAAK,MAAM,EAGd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kDAAkD,CAAC;AAWlF,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,UAAU,qCAAqC;IAC3C,mBAAmB,EAAE,OAAO,CAAC;IAC7B,yBAAyB,EAAE,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC1E,sBAAsB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;IAC5E,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C,+BAA+B,EAAE,yBAAyB,EAAE,CAAC;IAC7D,mCAAmC,EAAE,4BAA4B,EAAE,CAAC;IACpE,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,kBAAkB,EAAE,OAAO,CAAC;IAC5B,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,8BAA8B,CAAC,EAC3C,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,EACnC,qCAAqC,EACrC,kBAAkB,EAClB,IAAI,GACP,EAAE,qCAAqC,GAAG,yBAAyB,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"mapSourceMeasureFilterToOption.d.ts","sourceRoot":"","sources":["../../../../../../../src/presentation/widget/insight/configuration/DrillFilters/optionMappings/mapSourceMeasureFilterToOption.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,mCAAmC,EACxC,KAAK,yBAAyB,EAC9B,KAAK,+BAA+B,EACpC,KAAK,OAAO,EACZ,KAAK,MAAM,EAGd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kDAAkD,CAAC;AAWlF,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAE7D,UAAU,qCAAqC;IAC3C,mBAAmB,EAAE,OAAO,CAAC;IAC7B,yBAAyB,EAAE,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC1E,sBAAsB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;IAC5E,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C,+BAA+B,EAAE,yBAAyB,EAAE,CAAC;IAC7D,mCAAmC,EAAE,4BAA4B,EAAE,CAAC;IACpE,qCAAqC,EAAE,+BAA+B,EAAE,CAAC;IACzE,kBAAkB,EAAE,OAAO,CAAC;IAC5B,IAAI,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,8BAA8B,CAAC,EAC3C,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,EACtB,+BAA+B,EAC/B,mCAAmC,EACnC,qCAAqC,EACrC,kBAAkB,EAClB,IAAI,GACP,EAAE,qCAAqC,GAAG,yBAAyB,GAAG,SAAS,CA4D/E"}
|
|
@@ -15,7 +15,7 @@ export function mapSourceMeasureFilterToOption({ sourceMeasureFilter, allCatalog
|
|
|
15
15
|
}
|
|
16
16
|
// Measure filters are always list-type attribute filters (from execution model)
|
|
17
17
|
const transferResult = canTransferAttributeFilterByDisplayForm(displayFormRef, false, // measure filters are list-type
|
|
18
|
-
targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters);
|
|
18
|
+
targetDashboardAttributeFilters, targetDashboardAttributeFilterConfigs, targetDashboardTextAttributeFilters, allCatalogDisplayFormsMap);
|
|
19
19
|
return {
|
|
20
20
|
id: sourceFilterOptionId(sourceFilterObjRef),
|
|
21
21
|
title: getDisplayFormTitle({
|
|
@@ -1604,7 +1604,7 @@ export declare function changeFilterContextSelection(filters: (IDashboardFilter
|
|
|
1604
1604
|
* TODO: next major release can remove ByParams suffix and use this implementation instead of original cmd creator + other creators can be rewritten to use params object
|
|
1605
1605
|
* https://gooddata.atlassian.net/browse/STL-700
|
|
1606
1606
|
*/
|
|
1607
|
-
export declare function changeFilterContextSelectionByParams({ filters, attributeFilterConfigs, resetOthers, correlationId, tabLocalIdentifier, matchByLocalIdentifier, }: ChangeFilterContextSelectionParams): ChangeFilterContextSelection;
|
|
1607
|
+
export declare function changeFilterContextSelectionByParams({ filters, attributeFilterConfigs, resetOthers, correlationId, tabLocalIdentifier, matchByLocalIdentifier, restorePerTabOriginals, }: ChangeFilterContextSelectionParams): ChangeFilterContextSelection;
|
|
1608
1608
|
|
|
1609
1609
|
/**
|
|
1610
1610
|
* Params for {@link changeFilterContextSelectionByParams} command.
|
|
@@ -1628,6 +1628,13 @@ export declare type ChangeFilterContextSelectionParams = {
|
|
|
1628
1628
|
* as a fallback. See {@link ChangeFilterContextSelectionPayload}. Defaults to false.
|
|
1629
1629
|
*/
|
|
1630
1630
|
matchByLocalIdentifier?: boolean;
|
|
1631
|
+
/**
|
|
1632
|
+
* When true, other tabs restore their own saved initial filter values.
|
|
1633
|
+
* See {@link ChangeFilterContextSelectionPayload.restorePerTabOriginals}.
|
|
1634
|
+
*
|
|
1635
|
+
* @internal
|
|
1636
|
+
*/
|
|
1637
|
+
restorePerTabOriginals?: boolean;
|
|
1631
1638
|
};
|
|
1632
1639
|
|
|
1633
1640
|
/**
|
|
@@ -1671,6 +1678,14 @@ export declare type ChangeFilterContextSelectionPayload = {
|
|
|
1671
1678
|
* payload carries localIdentifiers.
|
|
1672
1679
|
*/
|
|
1673
1680
|
matchByLocalIdentifier?: boolean;
|
|
1681
|
+
/**
|
|
1682
|
+
* When true, tabs other than the one this command addresses keep their own saved initial
|
|
1683
|
+
* filter values instead of receiving this payload. Used by filter reset when filters are
|
|
1684
|
+
* persisted across tabs.
|
|
1685
|
+
*
|
|
1686
|
+
* @internal
|
|
1687
|
+
*/
|
|
1688
|
+
restorePerTabOriginals?: boolean;
|
|
1674
1689
|
};
|
|
1675
1690
|
|
|
1676
1691
|
/**
|
|
@@ -1999,8 +2014,9 @@ export declare function changeNestedLayoutSectionHeader(index: ILayoutSectionPat
|
|
|
1999
2014
|
*
|
|
2000
2015
|
* @remarks
|
|
2001
2016
|
* Dispatching this command sets the provided parameter values as runtime overrides on the
|
|
2002
|
-
*
|
|
2003
|
-
*
|
|
2017
|
+
* target tab, or the active tab when none is named. When persistent filters across tabs are
|
|
2018
|
+
* enabled, the same values are written to every tab that already defines the parameter.
|
|
2019
|
+
* Unknown parameter refs are ignored.
|
|
2004
2020
|
*
|
|
2005
2021
|
* Mirrors {@link changeFilterContextSelectionByParams} for parameters, so drill targets can
|
|
2006
2022
|
* inherit the source dashboard's active parameter overrides.
|
|
@@ -2306,6 +2322,14 @@ export declare function createScheduledEmail(scheduledEmail: IAutomationMetadata
|
|
|
2306
2322
|
*/
|
|
2307
2323
|
export declare function crossFiltering(insight: IInsight, drillDefinition: ICrossFiltering_2, drillEvent: IDashboardDrillEvent, correlationId?: string): ICrossFiltering;
|
|
2308
2324
|
|
|
2325
|
+
/**
|
|
2326
|
+
* Local identifiers of cross-filtering virtual filters keyed by tab local identifier.
|
|
2327
|
+
* Sourced from the drill slice, which reducers of the tabs slice cannot read.
|
|
2328
|
+
*
|
|
2329
|
+
* @internal
|
|
2330
|
+
*/
|
|
2331
|
+
export declare type CrossFilteringLocalIdsByTab = Readonly<Record<string, readonly string[]>>;
|
|
2332
|
+
|
|
2309
2333
|
/**
|
|
2310
2334
|
* Type of a replacement for the alerting create/edit dialog — the shape expected by the
|
|
2311
2335
|
* `AlertingDialogComponent` dashboard prop.
|
|
@@ -6400,6 +6424,20 @@ export declare interface IAccessibleDashboardsState extends EntityState<IListedD
|
|
|
6400
6424
|
isLoaded: boolean;
|
|
6401
6425
|
}
|
|
6402
6426
|
|
|
6427
|
+
/**
|
|
6428
|
+
* Addable workspace parameter the dropdown's "parameters" tab offers (automation dialogs only).
|
|
6429
|
+
* `isFromDashboard` marks the ones with a control on the dashboard tab so they list first, `tags`
|
|
6430
|
+
* drive the tag groups.
|
|
6431
|
+
*
|
|
6432
|
+
* @internal
|
|
6433
|
+
*/
|
|
6434
|
+
export declare interface IAddableParameter {
|
|
6435
|
+
ref: IdentifierRef;
|
|
6436
|
+
title: string;
|
|
6437
|
+
isFromDashboard: boolean;
|
|
6438
|
+
tags: string[];
|
|
6439
|
+
}
|
|
6440
|
+
|
|
6403
6441
|
/**
|
|
6404
6442
|
* @beta
|
|
6405
6443
|
*/
|
|
@@ -6964,7 +7002,7 @@ export declare interface IAlertFiltersContextValue {
|
|
|
6964
7002
|
/**
|
|
6965
7003
|
* Workspace parameters addable via the "+" menu. Empty when the feature is off.
|
|
6966
7004
|
*/
|
|
6967
|
-
availableParameters:
|
|
7005
|
+
availableParameters: IAvailableAutomationParameter[];
|
|
6968
7006
|
/**
|
|
6969
7007
|
* Sets a parameter's value.
|
|
6970
7008
|
*/
|
|
@@ -7731,6 +7769,11 @@ export declare interface IApplyFilterViewPayload {
|
|
|
7731
7769
|
*/
|
|
7732
7770
|
export declare interface IApplyWorkingSelectionPayload {
|
|
7733
7771
|
readonly enableImmediateAttributeFilterDisplayAsLabelMigration?: boolean;
|
|
7772
|
+
/**
|
|
7773
|
+
* Cross-filtering virtual filters per tab. They are not mirrored to or from other tabs.
|
|
7774
|
+
*/
|
|
7775
|
+
readonly crossFilteringLocalIdsByTab?: CrossFilteringLocalIdsByTab;
|
|
7776
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
7734
7777
|
}
|
|
7735
7778
|
|
|
7736
7779
|
/**
|
|
@@ -7835,7 +7878,7 @@ export declare interface IAttributeHierarchyModified extends IDashboardCommand {
|
|
|
7835
7878
|
*/
|
|
7836
7879
|
export declare interface IAttributesDropdownProps extends IDashboardAttributeFilterPlaceholderProps {
|
|
7837
7880
|
/** Addable workspace parameters (automation dialogs only). Renders a "parameters" tab. */
|
|
7838
|
-
parameters?:
|
|
7881
|
+
parameters?: IAddableParameter[];
|
|
7839
7882
|
onParameterSelect?: (ref: IdentifierRef) => void;
|
|
7840
7883
|
}
|
|
7841
7884
|
|
|
@@ -7980,7 +8023,7 @@ export declare interface IAutomationDialogFiltersProps {
|
|
|
7980
8023
|
/**
|
|
7981
8024
|
* Workspace parameters addable via the "+" menu.
|
|
7982
8025
|
*/
|
|
7983
|
-
availableParameters?:
|
|
8026
|
+
availableParameters?: IAvailableAutomationParameter[];
|
|
7984
8027
|
/**
|
|
7985
8028
|
* Called when a parameter is added from the "+" menu.
|
|
7986
8029
|
*/
|
|
@@ -8246,8 +8289,12 @@ export declare interface IAutomationsContextValue {
|
|
|
8246
8289
|
hiddenFilters: FilterContextItem[];
|
|
8247
8290
|
/** Dashboard's applied filters with cross-filtering filters removed; from selectAllDashboardFiltersWithoutCrossFiltering. */
|
|
8248
8291
|
availableFilters: FilterContextItem[];
|
|
8249
|
-
/**
|
|
8250
|
-
|
|
8292
|
+
/**
|
|
8293
|
+
* Whether a filter of the given tab (the active one when omitted) is restricted: it uses an object the
|
|
8294
|
+
* user may not read, or its parent filter is restricted. Such a filter is kept in the automation, but
|
|
8295
|
+
* the filter bar reports it as a count instead of rendering it.
|
|
8296
|
+
*/
|
|
8297
|
+
isFilterRestricted: (filter: FilterContextItem, tabId?: string) => boolean;
|
|
8251
8298
|
/** Automation-available filters structured per dashboard tab, for whole-dashboard automations on a tabbed dashboard; from selectAutomationFiltersByTab. */
|
|
8252
8299
|
automationFiltersByTab: IAutomationFiltersTab[];
|
|
8253
8300
|
/** Automation-available filters with empty (all-values) filters removed, except restricted ones; preselects filters for a new automation. From selectAutomationDefaultSelectedFilters. */
|
|
@@ -8426,6 +8473,17 @@ export declare interface IAutomationsState {
|
|
|
8426
8473
|
allAutomationsCount: number;
|
|
8427
8474
|
}
|
|
8428
8475
|
|
|
8476
|
+
/**
|
|
8477
|
+
* A workspace parameter the "+" menu offers; `isFromDashboard` marks the ones with a control on
|
|
8478
|
+
* the dashboard tab so the menu can list them first, `tags` drive the menu's tag groups.
|
|
8479
|
+
*
|
|
8480
|
+
* @internal
|
|
8481
|
+
*/
|
|
8482
|
+
export declare interface IAvailableAutomationParameter extends IAutomationParameter {
|
|
8483
|
+
isFromDashboard: boolean;
|
|
8484
|
+
tags: string[];
|
|
8485
|
+
}
|
|
8486
|
+
|
|
8429
8487
|
/**
|
|
8430
8488
|
* @beta
|
|
8431
8489
|
*/
|
|
@@ -9038,6 +9096,11 @@ export declare type IChangeMeasureValueFilterConditionReducerPayload = {
|
|
|
9038
9096
|
readonly localIdentifier: string;
|
|
9039
9097
|
readonly conditions?: MeasureValueFilterCondition[];
|
|
9040
9098
|
readonly isWorkingSelectionChange?: boolean;
|
|
9099
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
9100
|
+
/**
|
|
9101
|
+
* When true, other tabs restore their own saved initial condition instead of this payload.
|
|
9102
|
+
*/
|
|
9103
|
+
readonly restoreTargetOriginal?: boolean;
|
|
9041
9104
|
};
|
|
9042
9105
|
|
|
9043
9106
|
/**
|
|
@@ -9049,7 +9112,7 @@ export declare interface IChangeMeasureValueFilterConfigModePayload {
|
|
|
9049
9112
|
}
|
|
9050
9113
|
|
|
9051
9114
|
/**
|
|
9052
|
-
* Command for setting runtime parameter overrides
|
|
9115
|
+
* Command for setting runtime parameter overrides.
|
|
9053
9116
|
*
|
|
9054
9117
|
* @remarks
|
|
9055
9118
|
* See {@link changeParameterValues} for a factory function that will help you create this command.
|
|
@@ -9195,6 +9258,15 @@ export declare interface IClearAttributeFiltersSelectionPayload {
|
|
|
9195
9258
|
* If not provided, the active tab will be used.
|
|
9196
9259
|
*/
|
|
9197
9260
|
readonly tabLocalIdentifier?: string;
|
|
9261
|
+
/**
|
|
9262
|
+
* When true, other tabs restore their own saved initial selection instead of clearing to All.
|
|
9263
|
+
*/
|
|
9264
|
+
readonly restoreTargetOriginal?: boolean;
|
|
9265
|
+
/**
|
|
9266
|
+
* Cross-filtering virtual filters per tab. They are not mirrored to or from other tabs.
|
|
9267
|
+
*/
|
|
9268
|
+
readonly crossFilteringLocalIdsByTab?: CrossFilteringLocalIdsByTab;
|
|
9269
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
9198
9270
|
}
|
|
9199
9271
|
|
|
9200
9272
|
/**
|
|
@@ -18277,7 +18349,7 @@ export declare interface IObjRefMapConfig<T> {
|
|
|
18277
18349
|
}
|
|
18278
18350
|
|
|
18279
18351
|
/**
|
|
18280
|
-
*
|
|
18352
|
+
* Parameter row rendered in the dropdown's "parameters" tab.
|
|
18281
18353
|
*
|
|
18282
18354
|
* @internal
|
|
18283
18355
|
*/
|
|
@@ -19054,11 +19126,20 @@ export declare interface IReplaceAttributeFilterItemPayload {
|
|
|
19054
19126
|
readonly filter: DashboardAttributeFilterItem;
|
|
19055
19127
|
readonly isWorkingSelectionChange?: boolean;
|
|
19056
19128
|
readonly isSelectionInvalid?: boolean;
|
|
19129
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
19057
19130
|
/**
|
|
19058
19131
|
* Optional tab local identifier to target a specific tab.
|
|
19059
19132
|
* If not provided, the active tab will be used.
|
|
19060
19133
|
*/
|
|
19061
19134
|
readonly tabLocalIdentifier?: string;
|
|
19135
|
+
/**
|
|
19136
|
+
* When true, other tabs restore their own saved initial filter instead of this payload.
|
|
19137
|
+
*/
|
|
19138
|
+
readonly restoreTargetOriginal?: boolean;
|
|
19139
|
+
/**
|
|
19140
|
+
* Cross-filtering virtual filters per tab. They are not mirrored to or from other tabs.
|
|
19141
|
+
*/
|
|
19142
|
+
readonly crossFilteringLocalIdsByTab?: CrossFilteringLocalIdsByTab;
|
|
19062
19143
|
}
|
|
19063
19144
|
|
|
19064
19145
|
/**
|
|
@@ -19893,7 +19974,7 @@ export declare interface IScheduledEmailDialogFiltersProps extends IAutomationDi
|
|
|
19893
19974
|
/**
|
|
19894
19975
|
* Addable workspace parameters per tab (by-tab mode).
|
|
19895
19976
|
*/
|
|
19896
|
-
availableParametersByTab?: Record<string,
|
|
19977
|
+
availableParametersByTab?: Record<string, IAvailableAutomationParameter[]>;
|
|
19897
19978
|
/**
|
|
19898
19979
|
* Called when a parameter is added in a tab section (by-tab mode).
|
|
19899
19980
|
*/
|
|
@@ -20682,7 +20763,7 @@ export declare interface IScheduledExportFiltersContextValue {
|
|
|
20682
20763
|
/**
|
|
20683
20764
|
* Per-tab workspace parameters addable via the "+" menu.
|
|
20684
20765
|
*/
|
|
20685
|
-
availableParametersByTab: Record<string,
|
|
20766
|
+
availableParametersByTab: Record<string, IAvailableAutomationParameter[]>;
|
|
20686
20767
|
/**
|
|
20687
20768
|
* The tab the flat (non-tabbed) UI edits; undefined for multi-tab dashboards or when no
|
|
20688
20769
|
* parameter context applies.
|
|
@@ -22484,8 +22565,13 @@ export declare interface ISetParameterRuntimeValuesPayload {
|
|
|
22484
22565
|
values: IParameterValueChange[];
|
|
22485
22566
|
/**
|
|
22486
22567
|
* Target tab. When omitted, the active tab is used.
|
|
22568
|
+
* With `enablePersistentFiltersAcrossTabs`, this tab is the source and every other tab is written too.
|
|
22487
22569
|
*/
|
|
22488
22570
|
tabLocalIdentifier?: string;
|
|
22571
|
+
/**
|
|
22572
|
+
* When true, write the values onto every tab. A tab that does not define the parameter is unchanged.
|
|
22573
|
+
*/
|
|
22574
|
+
enablePersistentFiltersAcrossTabs?: boolean;
|
|
22489
22575
|
}
|
|
22490
22576
|
|
|
22491
22577
|
/**
|
|
@@ -23535,6 +23621,15 @@ export declare interface IUpdateAttributeFilterSelectionPayload {
|
|
|
23535
23621
|
* If not provided, the active tab will be used.
|
|
23536
23622
|
*/
|
|
23537
23623
|
readonly tabLocalIdentifier?: string;
|
|
23624
|
+
/**
|
|
23625
|
+
* When true, other tabs restore their own saved initial selection instead of this payload.
|
|
23626
|
+
*/
|
|
23627
|
+
readonly restoreTargetOriginal?: boolean;
|
|
23628
|
+
/**
|
|
23629
|
+
* Cross-filtering virtual filters per tab. They are not mirrored to or from other tabs.
|
|
23630
|
+
*/
|
|
23631
|
+
readonly crossFilteringLocalIdsByTab?: CrossFilteringLocalIdsByTab;
|
|
23632
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
23538
23633
|
}
|
|
23539
23634
|
|
|
23540
23635
|
/**
|
|
@@ -23569,11 +23664,16 @@ export declare interface IUpsertDateFilterAllTimePayload {
|
|
|
23569
23664
|
readonly isWorkingSelectionChange?: boolean;
|
|
23570
23665
|
readonly localIdentifier?: string;
|
|
23571
23666
|
readonly emptyValueHandling?: EmptyValues;
|
|
23667
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
23572
23668
|
/**
|
|
23573
23669
|
* Optional tab local identifier to target a specific tab.
|
|
23574
23670
|
* If not provided, the active tab will be used.
|
|
23575
23671
|
*/
|
|
23576
23672
|
readonly tabLocalIdentifier?: string;
|
|
23673
|
+
/**
|
|
23674
|
+
* When true, other tabs restore their own saved initial date filter instead of this payload.
|
|
23675
|
+
*/
|
|
23676
|
+
readonly restoreTargetOriginal?: boolean;
|
|
23577
23677
|
}
|
|
23578
23678
|
|
|
23579
23679
|
/**
|
|
@@ -23589,11 +23689,16 @@ export declare interface IUpsertDateFilterNonAllTimePayload {
|
|
|
23589
23689
|
readonly localIdentifier?: string;
|
|
23590
23690
|
readonly boundedFilter?: IUpperBoundedFilter | ILowerBoundedFilter;
|
|
23591
23691
|
readonly emptyValueHandling?: EmptyValues;
|
|
23692
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
23592
23693
|
/**
|
|
23593
23694
|
* Optional tab local identifier to target a specific tab.
|
|
23594
23695
|
* If not provided, the active tab will be used.
|
|
23595
23696
|
*/
|
|
23596
23697
|
readonly tabLocalIdentifier?: string;
|
|
23698
|
+
/**
|
|
23699
|
+
* When true, other tabs restore their own saved initial date filter instead of this payload.
|
|
23700
|
+
*/
|
|
23701
|
+
readonly restoreTargetOriginal?: boolean;
|
|
23597
23702
|
}
|
|
23598
23703
|
|
|
23599
23704
|
/**
|
|
@@ -28265,6 +28370,13 @@ export declare const selectDeleteVisible: DashboardSelector<boolean>;
|
|
|
28265
28370
|
*/
|
|
28266
28371
|
export declare const selectDisableDashboardCrossFiltering: DashboardSelector<boolean>;
|
|
28267
28372
|
|
|
28373
|
+
/**
|
|
28374
|
+
* Selects whether dashboard persisted filters are disabled.
|
|
28375
|
+
*
|
|
28376
|
+
* @alpha
|
|
28377
|
+
*/
|
|
28378
|
+
export declare const selectDisableDashboardPersistentFiltersAcrossTabs: DashboardSelector<boolean>;
|
|
28379
|
+
|
|
28268
28380
|
/**
|
|
28269
28381
|
* Selects whether user filter reset is disabled.
|
|
28270
28382
|
*
|
|
@@ -28642,6 +28754,13 @@ export declare const selectEnableOrchestratedTabularExports: DashboardSelector<b
|
|
|
28642
28754
|
*/
|
|
28643
28755
|
export declare const selectEnableParameters: DashboardSelector<boolean>;
|
|
28644
28756
|
|
|
28757
|
+
/**
|
|
28758
|
+
* Selects whether persistent filters across tabs are enabled.
|
|
28759
|
+
*
|
|
28760
|
+
* @alpha
|
|
28761
|
+
*/
|
|
28762
|
+
export declare const selectEnablePersistentFiltersAcrossTabs: DashboardSelector<boolean>;
|
|
28763
|
+
|
|
28645
28764
|
/**
|
|
28646
28765
|
* Returns whether rich text widget filter configuration is enabled.
|
|
28647
28766
|
*
|
|
@@ -30360,7 +30479,8 @@ export declare const selectRenderMode: DashboardSelector<RenderMode>;
|
|
|
30360
30479
|
export declare const selectRestrictedDashboardFilterCount: DashboardSelector<number>;
|
|
30361
30480
|
|
|
30362
30481
|
/**
|
|
30363
|
-
* Selects local identifiers of filters the current user is forbidden to access
|
|
30482
|
+
* Selects local identifiers of filters the current user is forbidden to access: the ones using an object
|
|
30483
|
+
* the user may not read and, transitively, their child filters.
|
|
30364
30484
|
*
|
|
30365
30485
|
* @alpha
|
|
30366
30486
|
*/
|
|
@@ -31547,6 +31667,8 @@ readonly setMeasureValueFilterDimensionality: (state: WritableDraft<ITabsState>,
|
|
|
31547
31667
|
payload: {
|
|
31548
31668
|
readonly localIdentifier: string;
|
|
31549
31669
|
readonly dimensionality?: ObjRef[];
|
|
31670
|
+
readonly restoreTargetOriginal?: boolean;
|
|
31671
|
+
readonly enablePersistentFiltersAcrossTabs?: boolean;
|
|
31550
31672
|
};
|
|
31551
31673
|
type: string;
|
|
31552
31674
|
}) => void | ITabsState | WritableDraft<ITabsState>;
|