@gooddata/sdk-ui-dashboard 11.41.0-alpha.0 → 11.41.0-alpha.2
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 +3 -3
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/index.d.ts +2 -1
- package/esm/index.js +1 -0
- package/esm/model/commandHandlers/dashboard/common/parameterHydration.js +7 -12
- package/esm/model/commandHandlers/drill/drillToDashboardHandler.js +11 -3
- package/esm/model/commandHandlers/index.js +2 -0
- package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.d.ts +9 -0
- package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.js +11 -0
- package/esm/model/commandHandlers/tabs/switchDashboardTabHandler.js +2 -2
- package/esm/model/commands/base.d.ts +1 -1
- package/esm/model/commands/index.d.ts +2 -1
- package/esm/model/commands/parameters.d.ts +46 -0
- package/esm/model/commands/parameters.js +24 -0
- package/esm/model/commands/tabs.d.ts +24 -1
- package/esm/model/commands/tabs.js +4 -1
- package/esm/model/eventHandlers/drillToSameDashboardHandlerFactory.js +2 -0
- package/esm/model/events/drill.d.ts +6 -2
- package/esm/model/events/drill.js +2 -1
- package/esm/model/events/tabs.d.ts +12 -1
- package/esm/model/events/tabs.js +4 -1
- package/esm/model/store/config/configSelectors.js +1 -1
- package/esm/model/store/tabs/parameters/parametersHelpers.d.ts +23 -1
- package/esm/model/store/tabs/parameters/parametersHelpers.js +47 -1
- package/esm/model/store/tabs/parameters/parametersSelectors.js +2 -2
- package/esm/presentation/dashboard/DashboardSidebar/SidebarConfigurationPanel.js +1 -2
- package/esm/sdk-ui-dashboard.d.ts +90 -4
- package/package.json +20 -20
- package/styles/css/dashboard.css +4 -0
- package/styles/css/dashboard.css.map +1 -1
- package/styles/css/main.css +12 -13
- package/styles/css/main.css.map +1 -1
- package/styles/css/sidebar.css +0 -5
- package/styles/css/sidebar.css.map +1 -1
- package/styles/scss/dashboard.scss +5 -0
- package/styles/scss/sidebar.scss +0 -8
package/NOTICE
CHANGED
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
The following 3rd-party software packages may be used by or distributed with gooddata-ui-sdk. Any information relevant to third-party vendors listed below are collected using common, reasonable means.
|
|
9
9
|
|
|
10
|
-
Date generated: 2026-6-
|
|
10
|
+
Date generated: 2026-6-4
|
|
11
11
|
|
|
12
|
-
Revision ID:
|
|
12
|
+
Revision ID: a7fab12176348facd5a01002c6136fbda5f84b80
|
|
13
13
|
|
|
14
14
|
================================================================================
|
|
15
15
|
================================================================================
|
|
@@ -38775,4 +38775,4 @@ POSSIBILITY OF SUCH DAMAGE.
|
|
|
38775
38775
|
--------------------------------------------------------------------------------
|
|
38776
38776
|
--------------------------------------------------------------------------------
|
|
38777
38777
|
|
|
38778
|
-
Report Generated by FOSSA on 2026-6-
|
|
38778
|
+
Report Generated by FOSSA on 2026-6-4
|
package/esm/__version.d.ts
CHANGED
package/esm/__version.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// (C) 2021 GoodData Corporation
|
|
2
2
|
// DO NOT CHANGE THIS FILE, IT IS RE-GENERATED ON EVERY BUILD
|
|
3
|
-
export const LIB_VERSION = "11.41.0-alpha.
|
|
3
|
+
export const LIB_VERSION = "11.41.0-alpha.2";
|
|
4
4
|
export const LIB_DESCRIPTION = "GoodData SDK - Dashboard Component";
|
|
5
5
|
export const LIB_NAME = "@gooddata/sdk-ui-dashboard";
|
package/esm/index.d.ts
CHANGED
|
@@ -57,7 +57,8 @@ export { type IChangeRenderMode, type IChangeRenderModePayload, type IRenderMode
|
|
|
57
57
|
export { type IChangeDashboardDensity, type IChangeDashboardDensityPayload, changeDashboardDensity, type IRequestOpenDensityDialog, requestOpenDensityDialog, } from "./model/commands/density.js";
|
|
58
58
|
export { type IAddDrillTargets, type IAddDrillTargetsPayload, addDrillTargets, } from "./model/commands/drillTargets.js";
|
|
59
59
|
export { type ISetShowWidgetAsTable, type ISetShowWidgetAsTablePayload, setShowWidgetAsTable, } from "./model/commands/showWidgetAsTable.js";
|
|
60
|
-
export { type ISwitchDashboardTab, type ISwitchDashboardTabPayload, type ICreateDashboardTab, type ICreateDashboardTabPayload, type IRepositionDashboardTab, type IRepositionDashboardTabPayload, type IDeleteDashboardTab, type IDeleteDashboardTabPayload, type IStartRenamingDashboardTab, type IStartRenamingDashboardTabPayload, type ICancelRenamingDashboardTab, type ICancelRenamingDashboardTabPayload, type IRenameDashboardTab, type IRenameDashboardTabPayload, switchDashboardTab, repositionDashboardTab, createDashboardTab, deleteDashboardTab, startRenamingDashboardTab, cancelRenamingDashboardTab, renameDashboardTab, } from "./model/commands/tabs.js";
|
|
60
|
+
export { type ISwitchDashboardTab, type ISwitchDashboardTabPayload, type DashboardTabSwitchSource, type ICreateDashboardTab, type ICreateDashboardTabPayload, type IRepositionDashboardTab, type IRepositionDashboardTabPayload, type IDeleteDashboardTab, type IDeleteDashboardTabPayload, type IStartRenamingDashboardTab, type IStartRenamingDashboardTabPayload, type ICancelRenamingDashboardTab, type ICancelRenamingDashboardTabPayload, type IRenameDashboardTab, type IRenameDashboardTabPayload, switchDashboardTab, repositionDashboardTab, createDashboardTab, deleteDashboardTab, startRenamingDashboardTab, cancelRenamingDashboardTab, renameDashboardTab, } from "./model/commands/tabs.js";
|
|
61
|
+
export { type IChangeParameterValues, type IChangeParameterValuesPayload, type ChangeParameterValuesParams, changeParameterValues, } from "./model/commands/parameters.js";
|
|
61
62
|
export { type IDashboardEvent, type DashboardEventType, type ICustomDashboardEvent, type DashboardEventBody, isDashboardEvent, isCustomDashboardEvent, isDashboardEventOrCustomDashboardEvent, } from "./model/events/base.js";
|
|
62
63
|
export { type DateFilterValidationFailed, type DateFilterValidationFailedPayload, type DashboardInitialized, type DashboardInitializedPayload, type DashboardDeinitialized, type DashboardDeinitializedPayload, type DashboardSaved, type DashboardSavedPayload, type DashboardCopySaved, type DashboardCopySavedPayload, type IDashboardRenamed, type IDashboardRenamedPayload, type IDashboardWasReset, type IDashboardWasResetPayload, type IDashboardDeleted, type IDashboardDeletedPayload, type IDashboardExportToPdfRequested, type IDashboardExportToPdfResolved, type IDashboardExportToPdfResolvedPayload, type DashboardSharingChanged, type DashboardSharingChangedPayload, type IDashboardExportToExcelRequested, type IDashboardExportToExcelResolved, type IDashboardExportToPdfPresentationRequested, type IDashboardExportToPdfPresentationResolved, type IDashboardExportToPptPresentationRequested, type IDashboardExportToPptPresentationResolved, type IDashboardExportToExcelResolvedPayload, type IDashboardExportToPdfPresentationResolvedPayload, type IDashboardExportToPptPresentationResolvedPayload, type IDashboardIgnoreExecutionTimestampChanged, type IDashboardIgnoreExecutionTimestampChangedPayload, type IDashboardExportToImageRequested, type IDashboardExportToImageResolved, type IDashboardExportToImageResolvedPayload, isDashboardSaved, isDashboardCopySaved, isDashboardInitialized, isDashboardDeinitialized, isDashboardRenamed, isDashboardWasReset, isDashboardDeleted, isDateFilterValidationFailed, isDashboardExportToPdfRequested, isDashboardExportToPdfResolved, isDashboardSharingChanged, isDashboardExportToExcelRequested, isDashboardExportToExcelResolved, isDashboardExportToPdfPresentationRequested, isDashboardExportToPdfPresentationResolved, isDashboardExportToPptPresentationResolved, isDashboardExportToPptPresentationRequested, isDashboardExportToImageRequested, isDashboardExportToImageResolved, isDashboardIgnoreExecutionTimestampChanged, } from "./model/events/dashboard.js";
|
|
63
64
|
export { type IDashboardTabSwitched, type IDashboardTabSwitchedPayload, type IDashboardTabCreated, type IDashboardTabCreatedPayload, type IDashboardTabDeleted, type IDashboardTabDeletedPayload, type IDashboardTabRenamingStarted, type IDashboardTabRenamingStartedPayload, type IDashboardTabRenamingCanceled, type IDashboardTabRenamingCanceledPayload, type IDashboardTabRenamed, type IDashboardTabRenamedPayload, dashboardTabSwitched, isDashboardTabSwitched, dashboardTabCreated, isDashboardTabCreated, dashboardTabDeleted, isDashboardTabDeleted, dashboardTabRenamingStarted, isDashboardTabRenamingStarted, dashboardTabRenamingCanceled, isDashboardTabRenamingCanceled, dashboardTabRenamed, isDashboardTabRenamed, } from "./model/events/tabs.js";
|
package/esm/index.js
CHANGED
|
@@ -43,6 +43,7 @@ export { changeDashboardDensity, requestOpenDensityDialog, } from "./model/comma
|
|
|
43
43
|
export { addDrillTargets, } from "./model/commands/drillTargets.js";
|
|
44
44
|
export { setShowWidgetAsTable, } from "./model/commands/showWidgetAsTable.js";
|
|
45
45
|
export { switchDashboardTab, repositionDashboardTab, createDashboardTab, deleteDashboardTab, startRenamingDashboardTab, cancelRenamingDashboardTab, renameDashboardTab, } from "./model/commands/tabs.js";
|
|
46
|
+
export { changeParameterValues, } from "./model/commands/parameters.js";
|
|
46
47
|
// Re-export from events
|
|
47
48
|
export { isDashboardEvent, isCustomDashboardEvent, isDashboardEventOrCustomDashboardEvent, } from "./model/events/base.js";
|
|
48
49
|
export { isDashboardSaved, isDashboardCopySaved, isDashboardInitialized, isDashboardDeinitialized, isDashboardRenamed, isDashboardWasReset, isDashboardDeleted, isDateFilterValidationFailed, isDashboardExportToPdfRequested, isDashboardExportToPdfResolved, isDashboardSharingChanged, isDashboardExportToExcelRequested, isDashboardExportToExcelResolved, isDashboardExportToPdfPresentationRequested, isDashboardExportToPdfPresentationResolved, isDashboardExportToPptPresentationResolved, isDashboardExportToPptPresentationRequested, isDashboardExportToImageRequested, isDashboardExportToImageResolved, isDashboardIgnoreExecutionTimestampChanged, } from "./model/events/dashboard.js";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// (C) 2026 GoodData Corporation
|
|
2
|
-
import {
|
|
2
|
+
import { objRefToString, } from "@gooddata/sdk-model";
|
|
3
|
+
import { computeHydratedRuntimeOverride, workspaceParametersByRef, } from "../../../store/tabs/parameters/parametersHelpers.js";
|
|
3
4
|
import { pickTabParametersSource, } from "../../../store/tabs/parameters/parametersState.js";
|
|
4
5
|
import { DEFAULT_TAB_ID } from "../../../store/tabs/tabsState.js";
|
|
5
6
|
/**
|
|
@@ -15,17 +16,11 @@ export function hydrateParameterEntries(dashboardParameters, workspaceParameters
|
|
|
15
16
|
if (!dashboardParameters || dashboardParameters.length === 0) {
|
|
16
17
|
return [];
|
|
17
18
|
}
|
|
18
|
-
const workspaceByRef =
|
|
19
|
-
return dashboardParameters.map((parameter) => {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const workspaceParameter = workspaceByRef.get(objRefToString(parameter.ref));
|
|
24
|
-
const workspaceDefault = workspaceParameter && isNumberParameterDefinition(workspaceParameter.definition)
|
|
25
|
-
? workspaceParameter.definition.defaultValue
|
|
26
|
-
: undefined;
|
|
27
|
-
return { parameter, runtimeOverride: workspaceDefault };
|
|
28
|
-
});
|
|
19
|
+
const workspaceByRef = workspaceParametersByRef(workspaceParameters);
|
|
20
|
+
return dashboardParameters.map((parameter) => ({
|
|
21
|
+
parameter,
|
|
22
|
+
runtimeOverride: computeHydratedRuntimeOverride(parameter, workspaceByRef.get(objRefToString(parameter.ref))),
|
|
23
|
+
}));
|
|
29
24
|
}
|
|
30
25
|
/**
|
|
31
26
|
* Distributes the dashboard's persisted parameters into per-tab hydrated entry lists, applying
|
|
@@ -8,12 +8,14 @@ import { switchDashboardTab } from "../../commands/tabs.js";
|
|
|
8
8
|
import { drillToDashboardRequested, drillToDashboardResolved, } from "../../events/drill.js";
|
|
9
9
|
import { generateFilterLocalIdentifier } from "../../store/_infra/generators.js";
|
|
10
10
|
import { selectSupportsMultipleDateFilters } from "../../store/backendCapabilities/backendCapabilitiesSelectors.js";
|
|
11
|
-
import { selectCatalogDateAttributes } from "../../store/catalog/catalogSelectors.js";
|
|
11
|
+
import { selectCatalogDateAttributes, selectCatalogParameters, } from "../../store/catalog/catalogSelectors.js";
|
|
12
12
|
import { selectEnableMultipleDateFilters } from "../../store/config/configSelectors.js";
|
|
13
13
|
import { selectInsightByRef } from "../../store/insights/insightsSelectors.js";
|
|
14
14
|
import { selectAttributeFilterConfigsDisplayAsLabelMap, selectAttributeFilterConfigsOverrides, } from "../../store/tabs/attributeFilterConfigs/attributeFilterConfigsSelectors.js";
|
|
15
15
|
import { selectFilterContextAttributeFilterItems, selectFilterContextDateFilter, selectFilterContextDraggableFilterItems, selectFilterContextMeasureValueFilters, } from "../../store/tabs/filterContext/filterContextSelectors.js";
|
|
16
16
|
import { selectAnalyticalWidgetByRef } from "../../store/tabs/layout/layoutSelectors.js";
|
|
17
|
+
import { collectChangedParameterValues } from "../../store/tabs/parameters/parametersHelpers.js";
|
|
18
|
+
import { selectDashboardParameterEntries } from "../../store/tabs/parameters/parametersSelectors.js";
|
|
17
19
|
import { convertIntersectionToAttributeFilters, removeIgnoredValuesFromDrillIntersection, } from "./common/intersectionUtils.js";
|
|
18
20
|
import { mergeDashboardAndSourceFilters } from "./common/mergeFilters.js";
|
|
19
21
|
import { getIncludedSourceFiltersForDashboard } from "./common/sourceDrillFilters.js";
|
|
@@ -68,12 +70,18 @@ export function* drillToDashboardHandler(ctx, cmd) {
|
|
|
68
70
|
const mergedFilters = mergeDashboardAndSourceFilters(dashboardFilters, includedSourceFilters);
|
|
69
71
|
// Order matters: intersection > common date > merged dashboard+source.
|
|
70
72
|
const resultingFilters = compact([...intersectionFilters, commonDateFilter, ...mergedFilters]);
|
|
73
|
+
// Read before the tab switch: overrides are tab-scoped, so reading after would pick up the target tab.
|
|
74
|
+
const parameterEntries = yield select(selectDashboardParameterEntries);
|
|
75
|
+
const workspaceParameters = yield select(selectCatalogParameters);
|
|
76
|
+
const parameters = collectChangedParameterValues(parameterEntries, workspaceParameters);
|
|
71
77
|
const targetTabLocalIdentifier = cmd.payload.drillDefinition.targetTabLocalIdentifier;
|
|
72
78
|
if (targetTabLocalIdentifier && isDrillingToSelf) {
|
|
73
|
-
|
|
79
|
+
// Mark the switch as drill-originated so saved filter state is not restored over the
|
|
80
|
+
// drill filters on the target tab.
|
|
81
|
+
yield put(switchDashboardTab(targetTabLocalIdentifier, cmd.correlationId, "drillToSelf"));
|
|
74
82
|
}
|
|
75
83
|
// put end event
|
|
76
|
-
return drillToDashboardResolved(ctx, resultingFilters, attributeFilterConfigs, cmd.payload.drillDefinition, cmd.payload.drillEvent, cmd.correlationId);
|
|
84
|
+
return drillToDashboardResolved(ctx, resultingFilters, attributeFilterConfigs, parameters, cmd.payload.drillDefinition, cmd.payload.drillEvent, cmd.correlationId);
|
|
77
85
|
}
|
|
78
86
|
function getDashboardFilterConfigs(dashboardFilters, attributeFilterDisplayAsLabelMap) {
|
|
79
87
|
return dashboardFilters.reduce((result, filter) => {
|
|
@@ -78,6 +78,7 @@ import { setScreenSizeHandler } from "./layout/setScreenSizeHandler.js";
|
|
|
78
78
|
import { toggleLayoutDirectionHandler } from "./layout/toggleLayoutDirectionHandler.js";
|
|
79
79
|
import { toggleLayoutSectionHeadersHandler } from "./layout/toggleLayoutSectionHeadersHandler.js";
|
|
80
80
|
import { undoLayoutChangesHandler } from "./layout/undoLayoutChangesHandler.js";
|
|
81
|
+
import { changeParameterValuesHandler } from "./parameters/changeParameterValuesHandler.js";
|
|
81
82
|
import { requestAsyncRenderHandler } from "./render/requestAsyncRenderHandler.js";
|
|
82
83
|
import { resolveAsyncRenderHandler } from "./render/resolveAsyncRenderHandler.js";
|
|
83
84
|
import { changeRenderModeHandler } from "./renderMode/changeRenderModeHandler.js";
|
|
@@ -259,4 +260,5 @@ export const DefaultCommandHandlers = {
|
|
|
259
260
|
"GDC.DASH/CMD.TAB.RENAME_MODE.START": startRenamingDashboardTabHandler,
|
|
260
261
|
"GDC.DASH/CMD.TAB.RENAME_MODE.CANCEL": cancelRenamingDashboardTabHandler,
|
|
261
262
|
"GDC.DASH/CMD.TAB.RENAME": renameDashboardTabHandler,
|
|
263
|
+
"GDC.DASH/CMD.PARAMETERS.CHANGE_VALUES": changeParameterValuesHandler,
|
|
262
264
|
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type SagaIterator } from "redux-saga";
|
|
2
|
+
import { type IChangeParameterValues } from "../../commands/parameters.js";
|
|
3
|
+
import { type DashboardContext } from "../../types/commonTypes.js";
|
|
4
|
+
/**
|
|
5
|
+
* Parameters not present on the active tab are ignored by the reducer.
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export declare function changeParameterValuesHandler(_ctx: DashboardContext, cmd: IChangeParameterValues): SagaIterator<void>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
import { put } from "redux-saga/effects";
|
|
3
|
+
import { tabsActions } from "../../store/tabs/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Parameters not present on the active tab are ignored by the reducer.
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export function* changeParameterValuesHandler(_ctx, cmd) {
|
|
10
|
+
yield put(tabsActions.setParameterRuntimeValues({ values: cmd.payload.parameters }));
|
|
11
|
+
}
|
|
@@ -8,7 +8,7 @@ import { selectActiveTabLocalIdentifier, selectTabs } from "../../store/tabs/tab
|
|
|
8
8
|
* @internal
|
|
9
9
|
*/
|
|
10
10
|
export function* switchDashboardTabHandler(ctx, cmd) {
|
|
11
|
-
const { tabId } = cmd.payload;
|
|
11
|
+
const { tabId, source } = cmd.payload;
|
|
12
12
|
const currentActiveTabId = yield select(selectActiveTabLocalIdentifier);
|
|
13
13
|
const tabs = yield select(selectTabs);
|
|
14
14
|
const newTab = tabs?.find((t) => t.localIdentifier === tabId);
|
|
@@ -19,5 +19,5 @@ export function* switchDashboardTabHandler(ctx, cmd) {
|
|
|
19
19
|
actions.push(tabsActions.setActiveTabLocalIdentifier(newTab.localIdentifier));
|
|
20
20
|
actions.push(tabsActions.clearLayoutHistory());
|
|
21
21
|
yield put(batchActions(actions));
|
|
22
|
-
return dashboardTabSwitched(ctx, currentActiveTabId, tabId, cmd.correlationId);
|
|
22
|
+
return dashboardTabSwitched(ctx, currentActiveTabId, tabId, cmd.correlationId, source);
|
|
23
23
|
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
*
|
|
10
10
|
* @public
|
|
11
11
|
*/
|
|
12
|
-
export type DashboardCommandType = "GDC.DASH/CMD.INITIALIZE" | "GDC.DASH/CMD.SAVE" | "GDC.DASH/CMD.SAVEAS" | "GDC.DASH/CMD.RESET" | "GDC.DASH/CMD.RENAME" | "GDC.DASH/CMD.DELETE" | "GDC.DASH/CMD.CHANGE_RENDER_MODE" | "GDC.DASH/CMD.SHARING.CHANGE" | "GDC.DASH/CMD.EXPORT.PDF" | "GDC.DASH/CMD.EXPORT.EXCEL" | "GDC.DASH/CMD.EXPORT.PDF_PRESENTATION" | "GDC.DASH/CMD.EXPORT.PPT_PRESENTATION" | "GDC.DASH/CMD.EVENT.TRIGGER" | "GDC.DASH/CMD.EXECUTION_RESULT.UPSERT" | "GDC.DASH/CMD.FILTER_CONTEXT.CHANGE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.CHANGE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.TEXT_ATTRIBUTE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.REMOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.MOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.CHANGE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER_ITEM.REPLACE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_PARENTS" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_DISPLAY_FORM" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_TITLE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_SELECTION_MODE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_DEPENDENT_DATE_FILTERS" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.REMOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.MOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.REMOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.MOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.CHANGE_CONDITION" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.SET_DIMENSIONALITY" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.SET_TITLE" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_MODE" | "GDC.DASH/CMD.MEASURE_VALUE_FILTER_CONFIG.SET_MODE" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_AVAILABLE_MODE" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_LIMITING_ITEMS" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_DISPLAY_AS_LABEL" | "GDC.DASH/CMD.DATE_FILTER_CONFIG.SET_MODE" | "GDC.DASH/CMD.DATE_FILTER_WITH_DIMENSION_CONFIG.SET_MODE" | "GDC.DASH/CMD.DATE_FILTER_CONFIG.SET_TITLE" | "GDC.DASH/CMD.FLUID_LAYOUT.ADD_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.MOVE_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.MOVE_ITEM_TO_NEW_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.REMOVE_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.CHANGE_SECTION_HEADER" | "GDC.DASH/CMD.FLUID_LAYOUT.ADD_ITEMS" | "GDC.DASH/CMD.FLUID_LAYOUT.REPLACE_ITEM" | "GDC.DASH/CMD.FLUID_LAYOUT.MOVE_ITEM" | "GDC.DASH/CMD.FLUID_LAYOUT.REMOVE_ITEM" | "GDC.DASH/CMD.FLUID_LAYOUT.REMOVE_ITEM_BY_WIDGET_REF" | "GDC.DASH/CMD.FLUID_LAYOUT.UNDO" | "GDC.DASH/CMD.FLUID_LAYOUT.RESIZE_HEIGHT" | "GDC.DASH/CMD.FLUID_LAYOUT.RESIZE_WIDTH" | "GDC.DASH/CMD.FLUID_LAYOUT.SET_SCREEN_SIZE" | "GDC.DASH/CMD.FLEXIBLE_LAYOUT.TOGGLE_LAYOUT_SECTION_HEADERS" | "GDC.DASH/CMD.FLEXIBLE_LAYOUT.TOGGLE_LAYOUT_DIRECTION" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_HEADER" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_MEASURE" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_FILTER_SETTINGS" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_COMPARISON" | "GDC.DASH/CMD.KPI_WIDGET.REFRESH" | "GDC.DASH/CMD.KPI_WIDGET.SET_DRILL" | "GDC.DASH/CMD.KPI_WIDGET.REMOVE_DRILL" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_DESCRIPTION" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_CONFIGURATION" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_HEADER" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_DESCRIPTION" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_FILTER_SETTINGS" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_PROPERTIES" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_CONFIGURATION" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_INSIGHT" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_IGNORE_CROSS_FILTERING" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT" | "GDC.DASH/CMD.INSIGHT_WIDGET.MODIFY_DRILLS" | "GDC.DASH/CMD.INSIGHT_WIDGET.REMOVE_DRILLS" | "GDC.DASH/CMD.INSIGHT_WIDGET.REMOVE_DRILL_DOWN" | "GDC.DASH/CMD.INSIGHT_WIDGET.REMOVE_DRILL_TO_URL" | "GDC.DASH/CMD.INSIGHT_WIDGET.ADD_DRILL_DOWN" | "GDC.DASH/CMD.INSIGHT_WIDGET.MODIFY_DRILL_DOWN" | "GDC.DASH/CMD.INSIGHT_WIDGET.REFRESH" | "GDC.DASH/CMD.RICH_TEXT_WIDGET.CHANGE_CONTENT" | "GDC.DASH/CMD.RICH_TEXT_WIDGET.CHANGE_FILTER_SETTINGS" | "GDC.DASH/CMD.VISUALIZATION_SWITCHER_WIDGET.ADD_VISUALIZATION" | "GDC.DASH/CMD.VISUALIZATION_SWITCHER_WIDGET.UPDATE_VISUALIZATIONS" | "GDC.DASH/CMD.ALERT.CREATE" | "GDC.DASH/CMD.ALERT.SAVE" | "GDC.DASH/CMD.SCHEDULED_EMAIL.CREATE" | "GDC.DASH/CMD.SCHEDULED_EMAIL.SAVE" | "GDC.DASH/CMD.DRILL" | "GDC.DASH/CMD.DRILL.DRILL_DOWN" | "GDC.DASH/CMD.DRILL.DRILL_TO_INSIGHT" | "GDC.DASH/CMD.DRILL.DRILL_TO_DASHBOARD" | "GDC.DASH/CMD.DRILL.DRILL_TO_ATTRIBUTE_URL" | "GDC.DASH/CMD.DRILL.DRILL_TO_CUSTOM_URL" | "GDC.DASH/CMD.DRILL.DRILL_TO_LEGACY_DASHBOARD" | "GDC.DASH/CMD.DRILL.DRILLABLE_ITEMS.CHANGE" | "GDC.DASH/CMD.DRILL.CROSS_FILTERING" | "GDC.DASH/CMD.DRILL.KEY_DRIVER_ANALYSIS" | "GDC.DASH/CMD.DRILL_TARGETS.ADD" | "GDC.DASH/CMD.RENDER.ASYNC.REQUEST" | "GDC.DASH/CMD.RENDER.ASYNC.RESOLVE" | "GDC.DASH/CMD.ATTRIBUTE_HIERARCHY_MODIFIED" | "GDC.DASH/CMD.AUTOMATIONS.INITIALIZE" | "GDC.DASH/CMD.AUTOMATIONS.REFRESH" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.SAVE" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.DELETE" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.APPLY" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.CHANGE_DEFAULT_STATUS" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.RELOAD" | "GDC.DASH/CMD.FILTER_CONTEXT.APPLY_WORKING_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.RESET_WORKING_SELECTION" | "GDC.DASH/CMD.CHANGE_IGNORE_EXECUTION_TIMESTAMP" | "GDC.DASH/CMD.TAB.SWITCH" | "GDC.DASH/CMD.TAB.REPOSITION" | "GDC.DASH/CMD.TAB.CREATE" | "GDC.DASH/CMD.TAB.DELETE" | "GDC.DASH/CMD.TAB.RENAME_MODE.START" | "GDC.DASH/CMD.TAB.RENAME_MODE.CANCEL" | "GDC.DASH/CMD.TAB.RENAME" | "GDC.DASH/CMD.USERS.LOAD_ALL" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT_RAW" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT_SLIDES" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT_IMAGE" | "GDC.DASH/CMD.SHOW_WIDGET_AS_TABLE.SET" | "GDC.DASH/CMD.CHANGE_DENSITY" | "GDC.DASH/CMD.OPEN_DENSITY_DIALOG";
|
|
12
|
+
export type DashboardCommandType = "GDC.DASH/CMD.INITIALIZE" | "GDC.DASH/CMD.SAVE" | "GDC.DASH/CMD.SAVEAS" | "GDC.DASH/CMD.RESET" | "GDC.DASH/CMD.RENAME" | "GDC.DASH/CMD.DELETE" | "GDC.DASH/CMD.CHANGE_RENDER_MODE" | "GDC.DASH/CMD.SHARING.CHANGE" | "GDC.DASH/CMD.EXPORT.PDF" | "GDC.DASH/CMD.EXPORT.EXCEL" | "GDC.DASH/CMD.EXPORT.PDF_PRESENTATION" | "GDC.DASH/CMD.EXPORT.PPT_PRESENTATION" | "GDC.DASH/CMD.EVENT.TRIGGER" | "GDC.DASH/CMD.EXECUTION_RESULT.UPSERT" | "GDC.DASH/CMD.FILTER_CONTEXT.CHANGE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.CHANGE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.TEXT_ATTRIBUTE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.REMOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.MOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.CHANGE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER_ITEM.REPLACE_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_PARENTS" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_DISPLAY_FORM" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_TITLE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_SELECTION_MODE" | "GDC.DASH/CMD.FILTER_CONTEXT.ATTRIBUTE_FILTER.SET_DEPENDENT_DATE_FILTERS" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.REMOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.DATE_FILTER.MOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.ADD" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.REMOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.MOVE" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.CHANGE_CONDITION" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.SET_DIMENSIONALITY" | "GDC.DASH/CMD.FILTER_CONTEXT.MEASURE_VALUE_FILTER.SET_TITLE" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_MODE" | "GDC.DASH/CMD.MEASURE_VALUE_FILTER_CONFIG.SET_MODE" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_AVAILABLE_MODE" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_LIMITING_ITEMS" | "GDC.DASH/CMD.ATTRIBUTE_FILTER_CONFIG.SET_DISPLAY_AS_LABEL" | "GDC.DASH/CMD.DATE_FILTER_CONFIG.SET_MODE" | "GDC.DASH/CMD.DATE_FILTER_WITH_DIMENSION_CONFIG.SET_MODE" | "GDC.DASH/CMD.DATE_FILTER_CONFIG.SET_TITLE" | "GDC.DASH/CMD.FLUID_LAYOUT.ADD_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.MOVE_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.MOVE_ITEM_TO_NEW_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.REMOVE_SECTION" | "GDC.DASH/CMD.FLUID_LAYOUT.CHANGE_SECTION_HEADER" | "GDC.DASH/CMD.FLUID_LAYOUT.ADD_ITEMS" | "GDC.DASH/CMD.FLUID_LAYOUT.REPLACE_ITEM" | "GDC.DASH/CMD.FLUID_LAYOUT.MOVE_ITEM" | "GDC.DASH/CMD.FLUID_LAYOUT.REMOVE_ITEM" | "GDC.DASH/CMD.FLUID_LAYOUT.REMOVE_ITEM_BY_WIDGET_REF" | "GDC.DASH/CMD.FLUID_LAYOUT.UNDO" | "GDC.DASH/CMD.FLUID_LAYOUT.RESIZE_HEIGHT" | "GDC.DASH/CMD.FLUID_LAYOUT.RESIZE_WIDTH" | "GDC.DASH/CMD.FLUID_LAYOUT.SET_SCREEN_SIZE" | "GDC.DASH/CMD.FLEXIBLE_LAYOUT.TOGGLE_LAYOUT_SECTION_HEADERS" | "GDC.DASH/CMD.FLEXIBLE_LAYOUT.TOGGLE_LAYOUT_DIRECTION" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_HEADER" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_MEASURE" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_FILTER_SETTINGS" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_COMPARISON" | "GDC.DASH/CMD.KPI_WIDGET.REFRESH" | "GDC.DASH/CMD.KPI_WIDGET.SET_DRILL" | "GDC.DASH/CMD.KPI_WIDGET.REMOVE_DRILL" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_DESCRIPTION" | "GDC.DASH/CMD.KPI_WIDGET.CHANGE_CONFIGURATION" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_HEADER" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_DESCRIPTION" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_FILTER_SETTINGS" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_PROPERTIES" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_CONFIGURATION" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_INSIGHT" | "GDC.DASH/CMD.INSIGHT_WIDGET.CHANGE_IGNORE_CROSS_FILTERING" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT" | "GDC.DASH/CMD.INSIGHT_WIDGET.MODIFY_DRILLS" | "GDC.DASH/CMD.INSIGHT_WIDGET.REMOVE_DRILLS" | "GDC.DASH/CMD.INSIGHT_WIDGET.REMOVE_DRILL_DOWN" | "GDC.DASH/CMD.INSIGHT_WIDGET.REMOVE_DRILL_TO_URL" | "GDC.DASH/CMD.INSIGHT_WIDGET.ADD_DRILL_DOWN" | "GDC.DASH/CMD.INSIGHT_WIDGET.MODIFY_DRILL_DOWN" | "GDC.DASH/CMD.INSIGHT_WIDGET.REFRESH" | "GDC.DASH/CMD.RICH_TEXT_WIDGET.CHANGE_CONTENT" | "GDC.DASH/CMD.RICH_TEXT_WIDGET.CHANGE_FILTER_SETTINGS" | "GDC.DASH/CMD.VISUALIZATION_SWITCHER_WIDGET.ADD_VISUALIZATION" | "GDC.DASH/CMD.VISUALIZATION_SWITCHER_WIDGET.UPDATE_VISUALIZATIONS" | "GDC.DASH/CMD.ALERT.CREATE" | "GDC.DASH/CMD.ALERT.SAVE" | "GDC.DASH/CMD.SCHEDULED_EMAIL.CREATE" | "GDC.DASH/CMD.SCHEDULED_EMAIL.SAVE" | "GDC.DASH/CMD.DRILL" | "GDC.DASH/CMD.DRILL.DRILL_DOWN" | "GDC.DASH/CMD.DRILL.DRILL_TO_INSIGHT" | "GDC.DASH/CMD.DRILL.DRILL_TO_DASHBOARD" | "GDC.DASH/CMD.DRILL.DRILL_TO_ATTRIBUTE_URL" | "GDC.DASH/CMD.DRILL.DRILL_TO_CUSTOM_URL" | "GDC.DASH/CMD.DRILL.DRILL_TO_LEGACY_DASHBOARD" | "GDC.DASH/CMD.DRILL.DRILLABLE_ITEMS.CHANGE" | "GDC.DASH/CMD.DRILL.CROSS_FILTERING" | "GDC.DASH/CMD.DRILL.KEY_DRIVER_ANALYSIS" | "GDC.DASH/CMD.DRILL_TARGETS.ADD" | "GDC.DASH/CMD.RENDER.ASYNC.REQUEST" | "GDC.DASH/CMD.RENDER.ASYNC.RESOLVE" | "GDC.DASH/CMD.ATTRIBUTE_HIERARCHY_MODIFIED" | "GDC.DASH/CMD.AUTOMATIONS.INITIALIZE" | "GDC.DASH/CMD.AUTOMATIONS.REFRESH" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.SAVE" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.DELETE" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.APPLY" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.CHANGE_DEFAULT_STATUS" | "GDC.DASH/CMD.FILTER_CONTEXT.FILTER_VIEW.RELOAD" | "GDC.DASH/CMD.FILTER_CONTEXT.APPLY_WORKING_SELECTION" | "GDC.DASH/CMD.FILTER_CONTEXT.RESET_WORKING_SELECTION" | "GDC.DASH/CMD.CHANGE_IGNORE_EXECUTION_TIMESTAMP" | "GDC.DASH/CMD.TAB.SWITCH" | "GDC.DASH/CMD.TAB.REPOSITION" | "GDC.DASH/CMD.TAB.CREATE" | "GDC.DASH/CMD.TAB.DELETE" | "GDC.DASH/CMD.TAB.RENAME_MODE.START" | "GDC.DASH/CMD.TAB.RENAME_MODE.CANCEL" | "GDC.DASH/CMD.TAB.RENAME" | "GDC.DASH/CMD.USERS.LOAD_ALL" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT_RAW" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT_SLIDES" | "GDC.DASH/CMD.INSIGHT_WIDGET.EXPORT_IMAGE" | "GDC.DASH/CMD.SHOW_WIDGET_AS_TABLE.SET" | "GDC.DASH/CMD.CHANGE_DENSITY" | "GDC.DASH/CMD.OPEN_DENSITY_DIALOG" | "GDC.DASH/CMD.PARAMETERS.CHANGE_VALUES";
|
|
13
13
|
/**
|
|
14
14
|
* @public
|
|
15
15
|
*/
|
|
@@ -9,6 +9,7 @@ import { type ChangeAttributeFilterSelection, type ChangeDateFilterSelection, ty
|
|
|
9
9
|
import { type ChangeInsightWidgetVisConfiguration, type IAddDrillDownForInsightWidget, type IAttributeHierarchyModified, type IChangeInsightWidgetDescription, type IChangeInsightWidgetFilterSettings, type IChangeInsightWidgetHeader, type IChangeInsightWidgetIgnoreCrossFiltering, type IChangeInsightWidgetInsight, type IChangeInsightWidgetVisProperties, type IExportImageInsightWidget, type IExportInsightWidget, type IExportRawInsightWidget, type IExportSlidesInsightWidget, type IModifyDrillDownForInsightWidget, type IModifyDrillsForInsightWidget, type IRefreshInsightWidget, type IRemoveDrillDownForInsightWidget, type IRemoveDrillToUrlForInsightWidget, type IRemoveDrillsForInsightWidget } from "./insight.js";
|
|
10
10
|
import { type IChangeKpiWidgetComparison, type IChangeKpiWidgetConfiguration, type IChangeKpiWidgetDescription, type IChangeKpiWidgetFilterSettings, type IChangeKpiWidgetHeader, type IChangeKpiWidgetMeasure, type IRefreshKpiWidget, type IRemoveDrillForKpiWidget, type ISetDrillForKpiWidget } from "./kpi.js";
|
|
11
11
|
import { type ChangeLayoutSectionHeader, type IAddLayoutSection, type IAddSectionItems, type IMoveLayoutSection, type IMoveSectionItem, type IMoveSectionItemToNewSection, type IRemoveLayoutSection, type IRemoveSectionItem, type IRemoveSectionItemByWidgetRef, type IReplaceSectionItem, type IResizeHeight, type IResizeWidth, type ISetScreenSize, type IToggleLayoutDirection, type IToggleLayoutSectionHeaders, type IUndoLayoutChanges } from "./layout.js";
|
|
12
|
+
import { type IChangeParameterValues } from "./parameters.js";
|
|
12
13
|
import { type RequestAsyncRender, type ResolveAsyncRender } from "./render.js";
|
|
13
14
|
import { type IChangeRenderMode } from "./renderMode.js";
|
|
14
15
|
import { type IChangeRichTextWidgetContent, type IChangeRichTextWidgetFilterSettings } from "./richText.js";
|
|
@@ -27,4 +28,4 @@ import { type IAddVisualizationToVisualizationSwitcherWidgetContent, type IUpdat
|
|
|
27
28
|
*
|
|
28
29
|
* @public
|
|
29
30
|
*/
|
|
30
|
-
export type DashboardCommands = InitializeDashboard | SaveDashboardAs | RequestAsyncRender | ResolveAsyncRender | ChangeFilterContextSelection | ChangeDateFilterSelection | ChangeAttributeFilterSelection | ReplaceAttributeFilterItemSelection | IChangeRenderMode | IChangeDashboardDensity | IRequestOpenDensityDialog | ISaveDashboard | IRenameDashboard | IResetDashboard | IExportDashboardToPdf | IExportDashboardToExcel | IExportDashboardToPdfPresentation | IExportDashboardToPptPresentation | IDeleteDashboard | ITriggerEvent | IUpsertExecutionResult | IAddAttributeFilter | IAddTextAttributeFilter | IRemoveAttributeFilters | IMoveAttributeFilter | ISetAttributeFilterParents | ISetAttributeFilterDependentDateFilters | IAddLayoutSection | IMoveLayoutSection | IRemoveLayoutSection | ChangeLayoutSectionHeader | IResizeHeight | IResizeWidth | IAddSectionItems | IReplaceSectionItem | IMoveSectionItem | IMoveSectionItemToNewSection | IRemoveSectionItem | IRemoveSectionItemByWidgetRef | IUndoLayoutChanges | IChangeKpiWidgetHeader | IChangeKpiWidgetDescription | IChangeKpiWidgetConfiguration | IChangeKpiWidgetMeasure | IChangeKpiWidgetFilterSettings | IChangeKpiWidgetComparison | IRefreshKpiWidget | ISetDrillForKpiWidget | IRemoveDrillForKpiWidget | IChangeInsightWidgetHeader | IChangeInsightWidgetDescription | IChangeInsightWidgetIgnoreCrossFiltering | IChangeInsightWidgetFilterSettings | IChangeInsightWidgetVisProperties | ChangeInsightWidgetVisConfiguration | IChangeInsightWidgetInsight | IModifyDrillsForInsightWidget | IRemoveDrillsForInsightWidget | IRefreshInsightWidget | IExportInsightWidget | ICreateAlert | ISaveAlert | ICreateScheduledEmail | ISaveScheduledEmail | IChangeSharing | ISetAttributeFilterDisplayForm | ISetAttributeFilterTitle | ISetMeasureValueFilterTitle | ISetMeasureValueFilterDimensionality | ISetAttributeFilterSelectionMode | IChangeRichTextWidgetContent | IChangeRichTextWidgetFilterSettings | IAddVisualizationToVisualizationSwitcherWidgetContent | IUpdateVisualizationsFromVisualizationSwitcherWidgetContent | IDrill | IDrillDown | IDrillToAttributeUrl | IDrillToCustomUrl | IDrillToDashboard | IDrillToInsight | IDrillToLegacyDashboard | IChangeDrillableItems | IAddDrillTargets | ISetDashboardDateFilterConfigMode | ISetDashboardAttributeFilterConfigMode | ISetDashboardMeasureValueFilterConfigMode | ISetDashboardAttributeFilterSelectionType | ISetDashboardAttributeFilterConfigDisplayAsLabel | IRemoveDrillDownForInsightWidget | IRemoveDrillToUrlForInsightWidget | IAddDrillDownForInsightWidget | IModifyDrillDownForInsightWidget | ICrossFiltering | IKeyDriverAnalysis | IAttributeHierarchyModified | IAddDateFilter | IAddMeasureValueFilter | IRemoveMeasureValueFilters | IRemoveDateFilters | IMoveDateFilter | IChangeMeasureValueFilterCondition | IMoveMeasureValueFilter | ISetDashboardDateFilterWithDimensionConfigMode | ISetDateFilterConfigTitle | IInitializeAutomations | IRefreshAutomations | ISetAttributeFilterLimitingItems | ISaveFilterView | IDeleteFilterView | IApplyFilterView | ISetFilterViewAsDefault | IReloadFilterViews | IToggleLayoutSectionHeaders | IToggleLayoutDirection | IApplyFilterContextWorkingSelection | IResetFilterContextWorkingSelection | IChangeIgnoreExecutionTimestamp | ISwitchDashboardTab | ICreateDashboardTab | IRepositionDashboardTab | IDeleteDashboardTab | IStartRenamingDashboardTab | ICancelRenamingDashboardTab | IRenameDashboardTab | ISetScreenSize | ILoadAllWorkspaceUsers | IExportRawInsightWidget | IExportSlidesInsightWidget | IExportImageInsightWidget | ISetShowWidgetAsTable;
|
|
31
|
+
export type DashboardCommands = InitializeDashboard | SaveDashboardAs | RequestAsyncRender | ResolveAsyncRender | ChangeFilterContextSelection | ChangeDateFilterSelection | ChangeAttributeFilterSelection | ReplaceAttributeFilterItemSelection | IChangeRenderMode | IChangeDashboardDensity | IRequestOpenDensityDialog | ISaveDashboard | IRenameDashboard | IResetDashboard | IExportDashboardToPdf | IExportDashboardToExcel | IExportDashboardToPdfPresentation | IExportDashboardToPptPresentation | IDeleteDashboard | ITriggerEvent | IUpsertExecutionResult | IAddAttributeFilter | IAddTextAttributeFilter | IRemoveAttributeFilters | IMoveAttributeFilter | ISetAttributeFilterParents | ISetAttributeFilterDependentDateFilters | IAddLayoutSection | IMoveLayoutSection | IRemoveLayoutSection | ChangeLayoutSectionHeader | IResizeHeight | IResizeWidth | IAddSectionItems | IReplaceSectionItem | IMoveSectionItem | IMoveSectionItemToNewSection | IRemoveSectionItem | IRemoveSectionItemByWidgetRef | IUndoLayoutChanges | IChangeKpiWidgetHeader | IChangeKpiWidgetDescription | IChangeKpiWidgetConfiguration | IChangeKpiWidgetMeasure | IChangeKpiWidgetFilterSettings | IChangeKpiWidgetComparison | IRefreshKpiWidget | ISetDrillForKpiWidget | IRemoveDrillForKpiWidget | IChangeInsightWidgetHeader | IChangeInsightWidgetDescription | IChangeInsightWidgetIgnoreCrossFiltering | IChangeInsightWidgetFilterSettings | IChangeInsightWidgetVisProperties | ChangeInsightWidgetVisConfiguration | IChangeInsightWidgetInsight | IModifyDrillsForInsightWidget | IRemoveDrillsForInsightWidget | IRefreshInsightWidget | IExportInsightWidget | ICreateAlert | ISaveAlert | ICreateScheduledEmail | ISaveScheduledEmail | IChangeSharing | ISetAttributeFilterDisplayForm | ISetAttributeFilterTitle | ISetMeasureValueFilterTitle | ISetMeasureValueFilterDimensionality | ISetAttributeFilterSelectionMode | IChangeRichTextWidgetContent | IChangeRichTextWidgetFilterSettings | IAddVisualizationToVisualizationSwitcherWidgetContent | IUpdateVisualizationsFromVisualizationSwitcherWidgetContent | IDrill | IDrillDown | IDrillToAttributeUrl | IDrillToCustomUrl | IDrillToDashboard | IDrillToInsight | IDrillToLegacyDashboard | IChangeDrillableItems | IAddDrillTargets | ISetDashboardDateFilterConfigMode | ISetDashboardAttributeFilterConfigMode | ISetDashboardMeasureValueFilterConfigMode | ISetDashboardAttributeFilterSelectionType | ISetDashboardAttributeFilterConfigDisplayAsLabel | IRemoveDrillDownForInsightWidget | IRemoveDrillToUrlForInsightWidget | IAddDrillDownForInsightWidget | IModifyDrillDownForInsightWidget | ICrossFiltering | IKeyDriverAnalysis | IAttributeHierarchyModified | IAddDateFilter | IAddMeasureValueFilter | IRemoveMeasureValueFilters | IRemoveDateFilters | IMoveDateFilter | IChangeMeasureValueFilterCondition | IMoveMeasureValueFilter | ISetDashboardDateFilterWithDimensionConfigMode | ISetDateFilterConfigTitle | IInitializeAutomations | IRefreshAutomations | ISetAttributeFilterLimitingItems | ISaveFilterView | IDeleteFilterView | IApplyFilterView | ISetFilterViewAsDefault | IReloadFilterViews | IToggleLayoutSectionHeaders | IToggleLayoutDirection | IApplyFilterContextWorkingSelection | IResetFilterContextWorkingSelection | IChangeIgnoreExecutionTimestamp | ISwitchDashboardTab | ICreateDashboardTab | IRepositionDashboardTab | IDeleteDashboardTab | IStartRenamingDashboardTab | ICancelRenamingDashboardTab | IRenameDashboardTab | ISetScreenSize | ILoadAllWorkspaceUsers | IExportRawInsightWidget | IExportSlidesInsightWidget | IExportImageInsightWidget | ISetShowWidgetAsTable | IChangeParameterValues;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { type IInsightParameterValue } from "@gooddata/sdk-model";
|
|
2
|
+
import { type IDashboardCommand } from "./base.js";
|
|
3
|
+
/**
|
|
4
|
+
* Params for {@link changeParameterValues} command.
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export type ChangeParameterValuesParams = {
|
|
9
|
+
parameters: IInsightParameterValue[];
|
|
10
|
+
correlationId?: string;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Payload of the {@link IChangeParameterValues} command.
|
|
14
|
+
*
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
export interface IChangeParameterValuesPayload {
|
|
18
|
+
readonly parameters: IInsightParameterValue[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Command for setting runtime parameter overrides on the currently active tab.
|
|
22
|
+
*
|
|
23
|
+
* @remarks
|
|
24
|
+
* See {@link changeParameterValues} for a factory function that will help you create this command.
|
|
25
|
+
*
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
export interface IChangeParameterValues extends IDashboardCommand {
|
|
29
|
+
readonly type: "GDC.DASH/CMD.PARAMETERS.CHANGE_VALUES";
|
|
30
|
+
readonly payload: IChangeParameterValuesPayload;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Creates the {@link IChangeParameterValues} command.
|
|
34
|
+
*
|
|
35
|
+
* @remarks
|
|
36
|
+
* Dispatching this command sets the provided parameter values as runtime overrides on the
|
|
37
|
+
* currently active tab. Only parameters already present on the active tab are affected; values
|
|
38
|
+
* for unknown parameter refs are ignored.
|
|
39
|
+
*
|
|
40
|
+
* Mirrors {@link changeFilterContextSelectionByParams} for parameters, so drill targets can
|
|
41
|
+
* inherit the source dashboard's active parameter overrides.
|
|
42
|
+
*
|
|
43
|
+
* @param params - params for the command creator
|
|
44
|
+
* @internal
|
|
45
|
+
*/
|
|
46
|
+
export declare function changeParameterValues({ parameters, correlationId }: ChangeParameterValuesParams): IChangeParameterValues;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
/**
|
|
3
|
+
* Creates the {@link IChangeParameterValues} command.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Dispatching this command sets the provided parameter values as runtime overrides on the
|
|
7
|
+
* currently active tab. Only parameters already present on the active tab are affected; values
|
|
8
|
+
* for unknown parameter refs are ignored.
|
|
9
|
+
*
|
|
10
|
+
* Mirrors {@link changeFilterContextSelectionByParams} for parameters, so drill targets can
|
|
11
|
+
* inherit the source dashboard's active parameter overrides.
|
|
12
|
+
*
|
|
13
|
+
* @param params - params for the command creator
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export function changeParameterValues({ parameters, correlationId, }) {
|
|
17
|
+
return {
|
|
18
|
+
type: "GDC.DASH/CMD.PARAMETERS.CHANGE_VALUES",
|
|
19
|
+
correlationId,
|
|
20
|
+
payload: {
|
|
21
|
+
parameters,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
}
|
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
import { type IDashboardCommand } from "./base.js";
|
|
2
|
+
/**
|
|
3
|
+
* What triggered a {@link ISwitchDashboardTab} command.
|
|
4
|
+
*
|
|
5
|
+
* Open-ended set of values that may grow over time; treat unknown values defensively. When
|
|
6
|
+
* omitted, the switch is a regular user-initiated tab switch.
|
|
7
|
+
*
|
|
8
|
+
* - `"drillToSelf"` - the switch is part of a drill to the same dashboard targeting a different
|
|
9
|
+
* tab. The drill owns the target tab's filter context, so consumers that restore per-tab filter
|
|
10
|
+
* state on switches (e.g. "Auto-save last state") should skip their restore for it.
|
|
11
|
+
*
|
|
12
|
+
* @alpha
|
|
13
|
+
*/
|
|
14
|
+
export type DashboardTabSwitchSource = "drillToSelf";
|
|
2
15
|
/**
|
|
3
16
|
* Payload of the {@link ISwitchDashboardTab} command.
|
|
4
17
|
* @alpha
|
|
@@ -8,6 +21,14 @@ export interface ISwitchDashboardTabPayload {
|
|
|
8
21
|
* Identifier of the tab to switch to.
|
|
9
22
|
*/
|
|
10
23
|
readonly tabId: string;
|
|
24
|
+
/**
|
|
25
|
+
* What triggered this tab switch.
|
|
26
|
+
*
|
|
27
|
+
* @remarks
|
|
28
|
+
* Omit for a regular user-initiated tab switch. See {@link DashboardTabSwitchSource} for the
|
|
29
|
+
* recognized values and their effect.
|
|
30
|
+
*/
|
|
31
|
+
readonly source?: DashboardTabSwitchSource;
|
|
11
32
|
}
|
|
12
33
|
/**
|
|
13
34
|
* Command to switch to a different dashboard tab.
|
|
@@ -29,11 +50,13 @@ export interface ISwitchDashboardTab extends IDashboardCommand {
|
|
|
29
50
|
*
|
|
30
51
|
* @param tabId - identifier of the tab to switch to
|
|
31
52
|
* @param correlationId - specify correlation id to use for this command
|
|
53
|
+
* @param source - what triggered the switch; omit for a regular user-initiated tab switch.
|
|
54
|
+
* See {@link DashboardTabSwitchSource}.
|
|
32
55
|
* @returns switch dashboard tab command
|
|
33
56
|
*
|
|
34
57
|
* @alpha
|
|
35
58
|
*/
|
|
36
|
-
export declare function switchDashboardTab(tabId: string, correlationId?: string): ISwitchDashboardTab;
|
|
59
|
+
export declare function switchDashboardTab(tabId: string, correlationId?: string, source?: DashboardTabSwitchSource): ISwitchDashboardTab;
|
|
37
60
|
/**
|
|
38
61
|
* Command to reposition a dashboard tab.
|
|
39
62
|
*
|
|
@@ -4,16 +4,19 @@
|
|
|
4
4
|
*
|
|
5
5
|
* @param tabId - identifier of the tab to switch to
|
|
6
6
|
* @param correlationId - specify correlation id to use for this command
|
|
7
|
+
* @param source - what triggered the switch; omit for a regular user-initiated tab switch.
|
|
8
|
+
* See {@link DashboardTabSwitchSource}.
|
|
7
9
|
* @returns switch dashboard tab command
|
|
8
10
|
*
|
|
9
11
|
* @alpha
|
|
10
12
|
*/
|
|
11
|
-
export function switchDashboardTab(tabId, correlationId) {
|
|
13
|
+
export function switchDashboardTab(tabId, correlationId, source) {
|
|
12
14
|
return {
|
|
13
15
|
type: "GDC.DASH/CMD.TAB.SWITCH",
|
|
14
16
|
correlationId,
|
|
15
17
|
payload: {
|
|
16
18
|
tabId,
|
|
19
|
+
source,
|
|
17
20
|
},
|
|
18
21
|
};
|
|
19
22
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// (C) 2021-2026 GoodData Corporation
|
|
2
2
|
import { areObjRefsEqual } from "@gooddata/sdk-model";
|
|
3
3
|
import { changeFilterContextSelectionByParams } from "../commands/filters.js";
|
|
4
|
+
import { changeParameterValues } from "../commands/parameters.js";
|
|
4
5
|
import { newDashboardEventPredicate } from "../events/index.js";
|
|
5
6
|
/**
|
|
6
7
|
* Event handler with the default implementation for drill to the same dashboard.
|
|
@@ -23,5 +24,6 @@ export const newDrillToSameDashboardHandler = (dashboardRef) => ({
|
|
|
23
24
|
filters: event.payload.filters,
|
|
24
25
|
attributeFilterConfigs: event.payload.attributeFilterConfigs,
|
|
25
26
|
}));
|
|
27
|
+
dispatch(changeParameterValues({ parameters: event.payload.parameters }));
|
|
26
28
|
},
|
|
27
29
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type FilterContextItem, type IAttributeDescriptor, type ICrossFiltering, type IDashboardAttributeFilter, type IDashboardAttributeFilterConfig, type IDrillToAttributeUrl, type IDrillToCustomUrl, type IDrillToDashboard, type IDrillToInsight, type IDrillToLegacyDashboard, type IInsight, type IKeyDriveAnalysis, type IMeasureDescriptor } from "@gooddata/sdk-model";
|
|
1
|
+
import { type FilterContextItem, type IAttributeDescriptor, type ICrossFiltering, type IDashboardAttributeFilter, type IDashboardAttributeFilterConfig, type IDrillToAttributeUrl, type IDrillToCustomUrl, type IDrillToDashboard, type IDrillToInsight, type IDrillToLegacyDashboard, type IInsight, type IInsightParameterValue, type IKeyDriveAnalysis, type IMeasureDescriptor } from "@gooddata/sdk-model";
|
|
2
2
|
import { type ExplicitDrill, type ITableDataAttributeScope } from "@gooddata/sdk-ui";
|
|
3
3
|
import { type IKdaDefinition } from "../../kdaDialog/types.js";
|
|
4
4
|
import { type IDashboardDrillContext, type IDashboardDrillEvent, type IDashboardFilter, type IDrillDownDefinition } from "../../types.js";
|
|
@@ -313,6 +313,10 @@ export interface IDashboardDrillToDashboardResolvedPayload {
|
|
|
313
313
|
* Attribute filter configs with additional props
|
|
314
314
|
*/
|
|
315
315
|
readonly attributeFilterConfigs: IDashboardAttributeFilterConfig[];
|
|
316
|
+
/**
|
|
317
|
+
* Source dashboard's active parameter overrides, applied to the target where parameter refs match.
|
|
318
|
+
*/
|
|
319
|
+
readonly parameters: IInsightParameterValue[];
|
|
316
320
|
/**
|
|
317
321
|
* Original drill event, that triggered this particular drill interaction.
|
|
318
322
|
*/
|
|
@@ -337,7 +341,7 @@ export interface IDashboardDrillToDashboardResolved extends IDashboardEvent {
|
|
|
337
341
|
/**
|
|
338
342
|
* @alpha
|
|
339
343
|
*/
|
|
340
|
-
export declare function drillToDashboardResolved(ctx: DashboardContext, filters: (IDashboardFilter | FilterContextItem)[], attributeFilterConfigs: IDashboardAttributeFilterConfig[], drillDefinition: IDrillToDashboard, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToDashboardResolved;
|
|
344
|
+
export declare function drillToDashboardResolved(ctx: DashboardContext, filters: (IDashboardFilter | FilterContextItem)[], attributeFilterConfigs: IDashboardAttributeFilterConfig[], parameters: IInsightParameterValue[], drillDefinition: IDrillToDashboard, drillEvent: IDashboardDrillEvent, correlationId?: string): IDashboardDrillToDashboardResolved;
|
|
341
345
|
/**
|
|
342
346
|
* Tests whether the provided object is an instance of {@link IDashboardDrillToDashboardResolved}.
|
|
343
347
|
*
|
|
@@ -154,7 +154,7 @@ export const isDashboardDrillToDashboardRequested = eventGuard("GDC.DASH/EVT.DRI
|
|
|
154
154
|
/**
|
|
155
155
|
* @alpha
|
|
156
156
|
*/
|
|
157
|
-
export function drillToDashboardResolved(ctx, filters, attributeFilterConfigs, drillDefinition, drillEvent, correlationId) {
|
|
157
|
+
export function drillToDashboardResolved(ctx, filters, attributeFilterConfigs, parameters, drillDefinition, drillEvent, correlationId) {
|
|
158
158
|
return {
|
|
159
159
|
type: "GDC.DASH/EVT.DRILL.DRILL_TO_DASHBOARD.RESOLVED",
|
|
160
160
|
ctx,
|
|
@@ -162,6 +162,7 @@ export function drillToDashboardResolved(ctx, filters, attributeFilterConfigs, d
|
|
|
162
162
|
payload: {
|
|
163
163
|
filters,
|
|
164
164
|
attributeFilterConfigs,
|
|
165
|
+
parameters,
|
|
165
166
|
drillDefinition,
|
|
166
167
|
drillEvent,
|
|
167
168
|
},
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type DashboardTabSwitchSource } from "../commands/tabs.js";
|
|
1
2
|
import { type DashboardContext } from "../types/commonTypes.js";
|
|
2
3
|
import { type IDashboardEvent } from "./base.js";
|
|
3
4
|
/**
|
|
@@ -13,6 +14,14 @@ export interface IDashboardTabSwitchedPayload {
|
|
|
13
14
|
* Identifier of the newly active tab.
|
|
14
15
|
*/
|
|
15
16
|
readonly newTabId: string;
|
|
17
|
+
/**
|
|
18
|
+
* What triggered this tab switch.
|
|
19
|
+
*
|
|
20
|
+
* @remarks
|
|
21
|
+
* Omit for a regular user-initiated tab switch. See {@link DashboardTabSwitchSource} for the
|
|
22
|
+
* recognized values and their effect.
|
|
23
|
+
*/
|
|
24
|
+
readonly source?: DashboardTabSwitchSource;
|
|
16
25
|
}
|
|
17
26
|
/**
|
|
18
27
|
* This event is emitted when the active dashboard tab is switched.
|
|
@@ -30,11 +39,13 @@ export interface IDashboardTabSwitched extends IDashboardEvent {
|
|
|
30
39
|
* @param previousTabId - identifier of the previously active tab
|
|
31
40
|
* @param newTabId - identifier of the newly active tab
|
|
32
41
|
* @param correlationId - correlation id to use for this event
|
|
42
|
+
* @param source - what triggered the switch; omit for a regular user-initiated tab switch.
|
|
43
|
+
* See {@link DashboardTabSwitchSource}.
|
|
33
44
|
* @returns dashboard tab switched event
|
|
34
45
|
*
|
|
35
46
|
* @alpha
|
|
36
47
|
*/
|
|
37
|
-
export declare function dashboardTabSwitched(ctx: DashboardContext, previousTabId: string | undefined, newTabId: string, correlationId?: string): IDashboardTabSwitched;
|
|
48
|
+
export declare function dashboardTabSwitched(ctx: DashboardContext, previousTabId: string | undefined, newTabId: string, correlationId?: string, source?: DashboardTabSwitchSource): IDashboardTabSwitched;
|
|
38
49
|
/**
|
|
39
50
|
* Type guard that checks if an event is a DashboardTabSwitched event.
|
|
40
51
|
*
|
package/esm/model/events/tabs.js
CHANGED
|
@@ -6,11 +6,13 @@
|
|
|
6
6
|
* @param previousTabId - identifier of the previously active tab
|
|
7
7
|
* @param newTabId - identifier of the newly active tab
|
|
8
8
|
* @param correlationId - correlation id to use for this event
|
|
9
|
+
* @param source - what triggered the switch; omit for a regular user-initiated tab switch.
|
|
10
|
+
* See {@link DashboardTabSwitchSource}.
|
|
9
11
|
* @returns dashboard tab switched event
|
|
10
12
|
*
|
|
11
13
|
* @alpha
|
|
12
14
|
*/
|
|
13
|
-
export function dashboardTabSwitched(ctx, previousTabId, newTabId, correlationId) {
|
|
15
|
+
export function dashboardTabSwitched(ctx, previousTabId, newTabId, correlationId, source) {
|
|
14
16
|
return {
|
|
15
17
|
type: "GDC.DASH/EVT.TAB.SWITCHED",
|
|
16
18
|
ctx,
|
|
@@ -18,6 +20,7 @@ export function dashboardTabSwitched(ctx, previousTabId, newTabId, correlationId
|
|
|
18
20
|
payload: {
|
|
19
21
|
previousTabId,
|
|
20
22
|
newTabId,
|
|
23
|
+
source,
|
|
21
24
|
},
|
|
22
25
|
};
|
|
23
26
|
}
|
|
@@ -415,7 +415,7 @@ export const selectEnableMatchFilterKD = createSelector(selectConfig, (state) =>
|
|
|
415
415
|
* @alpha
|
|
416
416
|
*/
|
|
417
417
|
export const selectEnableMeasureValueFilterKD = createSelector(selectConfig, (state) => {
|
|
418
|
-
return state.settings?.enableMeasureValueFilterKD ??
|
|
418
|
+
return state.settings?.enableMeasureValueFilterKD ?? true;
|
|
419
419
|
});
|
|
420
420
|
/**
|
|
421
421
|
* Returns available attribute filter modes based on feature flags.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type IDashboardParameterValueOverride } from "@gooddata/sdk-backend-spi";
|
|
2
|
-
import { type IDashboardParameter, type IDashboardTab, type IInsight, type IInsightDefinition, type IParameterMetadataObject, type IdentifierRef } from "@gooddata/sdk-model";
|
|
2
|
+
import { type IDashboardParameter, type IDashboardTab, type IInsight, type IInsightDefinition, type IInsightParameterValue, type IParameterMetadataObject, type IdentifierRef } from "@gooddata/sdk-model";
|
|
3
3
|
import { type ObjRefMap } from "../../../../_staging/metadata/objRefMap.js";
|
|
4
4
|
import { type IInsightWidgetTabContext } from "../layout/layoutSelectors.js";
|
|
5
5
|
import { type ITabState } from "../tabsState.js";
|
|
@@ -15,6 +15,28 @@ export declare const EMPTY_EXPORT_PARAMETERS: Record<string, IDashboardParameter
|
|
|
15
15
|
* @internal
|
|
16
16
|
*/
|
|
17
17
|
export declare function collectReferencedParameterRefs(insight: IInsightDefinition, measureParameters: Record<string, IdentifierRef[]>): IdentifierRef[];
|
|
18
|
+
/**
|
|
19
|
+
* Returns the entries whose `runtimeOverride` deviates from the hydrated baseline
|
|
20
|
+
* ({@link computeHydratedRuntimeOverride}). Entries still at their default are dropped, so callers never
|
|
21
|
+
* propagate a value the user did not explicitly set.
|
|
22
|
+
*
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
export declare function collectChangedParameterValues(entries: IDashboardParameterEntry[], workspaceParameters: IParameterMetadataObject[]): IInsightParameterValue[];
|
|
26
|
+
/**
|
|
27
|
+
* The value hydration seeds into `runtimeOverride`: the persisted dashboard `value`, else the
|
|
28
|
+
* workspace number default, else `undefined`. Single source of truth for the hydrated baseline so
|
|
29
|
+
* override detection here and in `hydrateParameterEntries` cannot drift apart.
|
|
30
|
+
*
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
export declare function computeHydratedRuntimeOverride(parameter: IDashboardParameter, workspaceParameter: IParameterMetadataObject | undefined): number | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Indexes the workspace parameter catalog by ref string for O(1) lookup.
|
|
36
|
+
*
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
39
|
+
export declare function workspaceParametersByRef(workspaceParameters: IParameterMetadataObject[]): Map<string, IParameterMetadataObject>;
|
|
18
40
|
/**
|
|
19
41
|
* Resolves a single parameter entry to the export wire shape. Returns `undefined` for entries with
|
|
20
42
|
* no `runtimeOverride` — the dashboard's persisted parameter state and the workspace default are
|