@gooddata/sdk-model 11.35.0-alpha.5 → 11.35.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -216,6 +216,15 @@ export interface IDashboardTab<TWidget = IDashboardWidget> {
216
216
  * If not defined, filters are displayed ungrouped as defined in single context.
217
217
  */
218
218
  filterGroupsConfig?: IDashboardFilterGroupsConfig;
219
+ /**
220
+ * Tab-scoped parameter overrides. Each entry references a workspace parameter and optionally
221
+ * pins a dashboard-scope value, label, and mode. A parameter affects only the widgets on the
222
+ * tab where it is configured; the same ref may be added independently to multiple tabs with
223
+ * independent values, labels, and modes.
224
+ *
225
+ * @alpha
226
+ */
227
+ parameters?: IDashboardParameter[];
219
228
  }
220
229
  /**
221
230
  * Dashboard common properties
@@ -384,9 +393,9 @@ export interface IDashboard<TWidget = IDashboardWidget> extends IDashboardBase,
384
393
  */
385
394
  readonly measureValueFilterConfigs?: IDashboardMeasureValueFilterConfig[];
386
395
  /**
387
- * Dashboard-level parameter overrides. Each entry references a workspace parameter and
388
- * optionally pins a dashboard-scope value, label, and mode. See {@link IDashboardParameter}
389
- * for smart-persistence rules.
396
+ * Legacy dashboard-level parameters. Preserved as a read-only fallback for legacy metadata;
397
+ * saves emit parameters per tab on {@link IDashboardTab.parameters} instead. Honored on load
398
+ * only when no tab carries parameters.
390
399
  *
391
400
  * @alpha
392
401
  */
@@ -464,7 +473,9 @@ export interface IDashboardDefinition<TWidget = IDashboardWidget> extends IDashb
464
473
  */
465
474
  readonly measureValueFilterConfigs?: IDashboardMeasureValueFilterConfig[];
466
475
  /**
467
- * Dashboard-level parameter overrides. See {@link IDashboardParameter}.
476
+ * Legacy dashboard-level parameters. Preserved as a read-only fallback for legacy metadata;
477
+ * saves emit parameters per tab on {@link IDashboardTab.parameters} instead. Honored on load
478
+ * only when no tab carries parameters.
468
479
  *
469
480
  * @alpha
470
481
  */
package/esm/index.d.ts CHANGED
@@ -77,7 +77,7 @@ export { type IUser, type IUserGroup, type IWorkspaceUser, type IOrganizationUse
77
77
  export { type IDashboardLayout, type IDashboardWidget, type IDashboardLayoutSection, type IDashboardLayoutSectionHeader, type IDashboardLayoutSize, type IDashboardLayoutSizeByScreenSize, type IDashboardLayoutItem, type IDashboardLayoutWidget, type IDashboardLayoutConfiguration, type IDashboardLayoutSectionsConfiguration, type IDashboardLayoutContainerDirection, type ScreenSize, isDashboardLayout, isDashboardLayoutSection, isDashboardLayoutItem, isDashboardWidget, } from "./dashboard/layout.js";
78
78
  export { type IDashboard, type IDashboardDefinition, type IListedDashboard, type ListedDashboardAvailability, type IDashboardBase, type IDashboardDateFilterConfig, type DashboardDateFilterConfigMode, type IDashboardAttributeFilterConfig, type IDashboardMeasureValueFilterConfig, type IDashboardDateFilterConfigItem, type DashboardAttributeFilterConfigMode, type DashboardAttributeFilterSelectionType, DashboardAttributeFilterSelectionTypeValues, type IDashboardDateFilterAddedPresets, type IDashboardPluginBase, type IDashboardPlugin, type IDashboardPluginDefinition, type IDashboardPluginLink, type IAccessControlAware, type ShareStatus, type SharePermission, type IDashboardPermissions, type IExistingDashboard, type IDashboardTab, type IDashboardFilterGroup, type IDashboardFilterGroupItem, type IDashboardFilterGroupsConfig, DashboardDateFilterConfigModeValues, DashboardAttributeFilterConfigModeValues, isDashboard, isDashboardDefinition, isListedDashboard, isDashboardTab, } from "./dashboard/dashboard.js";
79
79
  export { type IDashboardParameter, type DashboardParameterMode, DashboardParameterModeValues, isDashboardParameter, } from "./dashboard/parameter.js";
80
- export { type ISettings } from "./settings/index.js";
80
+ export { type ISettings, type IUserSettings, type IWorkspaceSettings, type IUserWorkspaceSettings, } from "./settings/index.js";
81
81
  export { type ISeparators, type IPermanentSettings, type IFeatureFlags, type PlatformEdition, type IWhiteLabeling, type IAlertDefault, type WeekStart, type IFiscalYear, type IActiveCalendars, type CalendarType, type IOpenAiConfig, type ILlmEndpoint, type ILlmActiveProvider, type IAiRateLimit, type DashboardFiltersApplyMode, type EarlyAccessFeatureContext, type EarlyAccessFeatureStatus, type IEarlyAccessFeatureConfig, type IEarlyAccessFeaturesConfig, type IProductionFeatureConfig, type IProductionFeaturesConfig, type IMetricFormatOverrideSetting, isSeparators, } from "./settings/settings.js";
82
82
  export type { IWorkspaceUserGroup } from "./userGroup/index.js";
83
83
  export type { ThemeFontUri, ThemeColor, IThemeColorFamily, IThemeComplementaryPalette, IThemeWidgetTitle, IThemeTypography, IThemeFontsDef, IThemePalette, IThemeKpi, IThemeKpiValue, IThemeChart, IThemeTable, ITheme, IThemeAnalyticalDesigner, IThemeAnalyticalDesignerTitle, IThemeButton, IThemeDashboard, IThemeDashboardContent, IThemeDashboardContentKpi, IThemeDashboardContentWidget, IThemeDashboardEditPanel, IThemeDashboardFilterBar, IThemeDashboardFilterBarButton, IThemeDashboardNavigation, IThemeDashboardNavigationItem, IThemeDashboardNavigationTitle, IThemeDashboardSection, IThemeDashboardSectionDescription, IThemeDashboardSectionTitle, IThemeDashboardTitle, IThemeMetadataObject, IThemeDefinition, IThemeModal, IThemeModalTitle, IThemeTooltip, IThemeImages, IThemeMessage, IThemeMessageVariant, IThemeToastMessage, IThemeToastMessageVariant, IThemeHeader, ImageUri, IThemeAxis, IThemeChartTooltip, IThemeDataLabel, ThemeDashboardDensity, } from "./theme/index.js";
@@ -4186,9 +4186,9 @@ export declare interface IDashboard<TWidget = IDashboardWidget> extends IDashboa
4186
4186
  */
4187
4187
  readonly measureValueFilterConfigs?: IDashboardMeasureValueFilterConfig[];
4188
4188
  /**
4189
- * Dashboard-level parameter overrides. Each entry references a workspace parameter and
4190
- * optionally pins a dashboard-scope value, label, and mode. See {@link IDashboardParameter}
4191
- * for smart-persistence rules.
4189
+ * Legacy dashboard-level parameters. Preserved as a read-only fallback for legacy metadata;
4190
+ * saves emit parameters per tab on {@link IDashboardTab.parameters} instead. Honored on load
4191
+ * only when no tab carries parameters.
4192
4192
  *
4193
4193
  * @alpha
4194
4194
  */
@@ -4620,7 +4620,9 @@ export declare interface IDashboardDefinition<TWidget = IDashboardWidget> extend
4620
4620
  */
4621
4621
  readonly measureValueFilterConfigs?: IDashboardMeasureValueFilterConfig[];
4622
4622
  /**
4623
- * Dashboard-level parameter overrides. See {@link IDashboardParameter}.
4623
+ * Legacy dashboard-level parameters. Preserved as a read-only fallback for legacy metadata;
4624
+ * saves emit parameters per tab on {@link IDashboardTab.parameters} instead. Honored on load
4625
+ * only when no tab carries parameters.
4624
4626
  *
4625
4627
  * @alpha
4626
4628
  */
@@ -5211,6 +5213,15 @@ export declare interface IDashboardTab<TWidget = IDashboardWidget> {
5211
5213
  * If not defined, filters are displayed ungrouped as defined in single context.
5212
5214
  */
5213
5215
  filterGroupsConfig?: IDashboardFilterGroupsConfig;
5216
+ /**
5217
+ * Tab-scoped parameter overrides. Each entry references a workspace parameter and optionally
5218
+ * pins a dashboard-scope value, label, and mode. A parameter affects only the widgets on the
5219
+ * tab where it is configured; the same ref may be added independently to multiple tabs with
5220
+ * independent values, labels, and modes.
5221
+ *
5222
+ * @alpha
5223
+ */
5224
+ parameters?: IDashboardParameter[];
5214
5225
  }
5215
5226
 
5216
5227
  /**
@@ -14220,6 +14231,26 @@ export declare interface IUserGroupDataFilterDefinition extends IUserDataFilterD
14220
14231
  */
14221
14232
  export declare type IUserGroupWorkspaceAccessGrantee = IWorkspaceAccess & IGranularUserGroupAccessGrantee;
14222
14233
 
14234
+ /**
14235
+ * Settings for a particular user.
14236
+ *
14237
+ * @public
14238
+ */
14239
+ export declare interface IUserSettings extends ISettings {
14240
+ /**
14241
+ * User to which the settings belong.
14242
+ */
14243
+ userId: string;
14244
+ /**
14245
+ * User locale
14246
+ */
14247
+ locale: string;
14248
+ /**
14249
+ * Regional number formatting
14250
+ */
14251
+ separators: ISeparators;
14252
+ }
14253
+
14223
14254
  /**
14224
14255
  * Workspace access for user with granular permissions.
14225
14256
  *
@@ -14227,6 +14258,14 @@ export declare type IUserGroupWorkspaceAccessGrantee = IWorkspaceAccess & IGranu
14227
14258
  */
14228
14259
  export declare type IUserWorkspaceAccessGrantee = IWorkspaceAccess & IGranularUserAccessGrantee;
14229
14260
 
14261
+ /**
14262
+ * Settings for a particular combination of user and workspace.
14263
+ *
14264
+ * @public
14265
+ */
14266
+ export declare interface IUserWorkspaceSettings extends IUserSettings, IWorkspaceSettings {
14267
+ }
14268
+
14230
14269
  /**
14231
14270
  * Variable metadata object
14232
14271
  *
@@ -14697,6 +14736,26 @@ export declare type IWorkspacePermissions = {
14697
14736
  [permission in WorkspacePermission]: boolean;
14698
14737
  };
14699
14738
 
14739
+ /**
14740
+ * Settings for a particular workspace.
14741
+ *
14742
+ * @public
14743
+ */
14744
+ export declare interface IWorkspaceSettings extends ISettings {
14745
+ /**
14746
+ * Workspace to which the settings belong.
14747
+ */
14748
+ workspace: string;
14749
+ /**
14750
+ * Stores Mapbox token used for WS
14751
+ */
14752
+ mapboxToken?: string;
14753
+ /**
14754
+ * Stores AgGrid token used for WS
14755
+ */
14756
+ agGridToken?: string;
14757
+ }
14758
+
14700
14759
  /**
14701
14760
  * Represents platform user in context of the workspace.
14702
14761
  *
@@ -1,5 +1,5 @@
1
1
  import { type RemotePluggableApplicationsRegistry } from "../pluggableApplication/index.js";
2
- import { type IFeatureFlags, type IPermanentSettings } from "./settings.js";
2
+ import { type IFeatureFlags, type IPermanentSettings, type ISeparators } from "./settings.js";
3
3
  /**
4
4
  * Settings are obtained from the backend and are effectively a collection of feature flags or settings with
5
5
  * concrete string or numeric value.
@@ -22,3 +22,48 @@ export interface ISettings extends IPermanentSettings, IFeatureFlags {
22
22
  registeredPluggableApplications?: RemotePluggableApplicationsRegistry;
23
23
  [key: string]: number | boolean | string | object | undefined | null;
24
24
  }
25
+ /**
26
+ * Settings for a particular user.
27
+ *
28
+ * @public
29
+ */
30
+ export interface IUserSettings extends ISettings {
31
+ /**
32
+ * User to which the settings belong.
33
+ */
34
+ userId: string;
35
+ /**
36
+ * User locale
37
+ */
38
+ locale: string;
39
+ /**
40
+ * Regional number formatting
41
+ */
42
+ separators: ISeparators;
43
+ }
44
+ /**
45
+ * Settings for a particular workspace.
46
+ *
47
+ * @public
48
+ */
49
+ export interface IWorkspaceSettings extends ISettings {
50
+ /**
51
+ * Workspace to which the settings belong.
52
+ */
53
+ workspace: string;
54
+ /**
55
+ * Stores Mapbox token used for WS
56
+ */
57
+ mapboxToken?: string;
58
+ /**
59
+ * Stores AgGrid token used for WS
60
+ */
61
+ agGridToken?: string;
62
+ }
63
+ /**
64
+ * Settings for a particular combination of user and workspace.
65
+ *
66
+ * @public
67
+ */
68
+ export interface IUserWorkspaceSettings extends IUserSettings, IWorkspaceSettings {
69
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-model",
3
- "version": "11.35.0-alpha.5",
3
+ "version": "11.35.0-alpha.6",
4
4
  "description": "GoodData Model definitions used by UI components and Backend SPI",
5
5
  "license": "MIT",
6
6
  "author": "GoodData",
@@ -57,8 +57,8 @@
57
57
  "oxlint-tsgolint": "0.11.4",
58
58
  "typescript": "5.9.3",
59
59
  "vitest": "4.1.0",
60
- "@gooddata/eslint-config": "11.35.0-alpha.5",
61
- "@gooddata/oxlint-config": "11.35.0-alpha.5"
60
+ "@gooddata/eslint-config": "11.35.0-alpha.6",
61
+ "@gooddata/oxlint-config": "11.35.0-alpha.6"
62
62
  },
63
63
  "scripts": {
64
64
  "_phase:build": "npm run build",
@@ -68,7 +68,7 @@
68
68
  "build": "npm-run-all -p build-check build-ts && npm run api-extractor",
69
69
  "build-check": "tsgo",
70
70
  "build-ts": "tsgo -p tsconfig.build.json",
71
- "clean": "../../common/scripts/clean-command-state.sh && rm -rf ci dist esm coverage *.log tsconfig.tsbuildinfo",
71
+ "clean": "../../common/scripts/clean-command-state.sh && rm -rf ci dist esm coverage temp *.log tsconfig.tsbuildinfo",
72
72
  "dep-cruiser": "depcruise --validate .dependency-cruiser.js --output-type err-long src/",
73
73
  "format-check": "oxfmt --check .",
74
74
  "format-write": "oxfmt .",