Types
AccessLog
Property | Type | Description |
---|---|---|
id | string | |
lastOpened | number |
Action
The Redux actions dispatched by Atoti UI to update its state.
- ActiveToolChangedAction
- ActiveToolChangedAndDataModelExpandedAction
- DashboardLoadedAction
- DashboardUnloadedAction
- DashboardUpdatedAction
- DashboardSavedAction
- OpenCommandPaletteAction
- CloseCommandPaletteAction
- ExpandDataModelTreeAction
- CollapseDataModelTreeAction
- IsOpenDashboardPopupVisibleAction
- IsSaveDashboardAsModalVisibleAction
- IsShareDashboardModalVisibleAction
- IsSettingsPopupVisibleAction
- IsToolsPanelExpandedAction
- IsPresentingAction
- StatusNotificationAddedAction
- StatusNotificationSettledAction
- StatusNotificationRemovedAction
- IsDeferredAction
- ResourcesPanelChangedAction
- WidgetSelectedAction
- ExpandedFolderPathsInHomePageAction
- WidgetsPanelClosedAction
- WidgetsPanelOpenedAction
- WidgetsPanelWidthChangedAction
ActionProps
- WidgetActionProps<WidgetState, SelectionType>
- WidgetInDashboardActionProps<WidgetState, SelectionType>
ActiveToolChangedAction
Redux action to change the active tool tab. See activeToolKey
in State.
Property | Type | Description |
---|---|---|
toolKey | string | null | |
type | "activeToolChanged" |
ActiveToolChangedAndDataModelExpandedAction
Redux action to expand the data model and change the active tool. See activeToolKey
in State.
Property | Type | Description |
---|---|---|
toolKey | string | null | |
type | "activeToolChangedAndDataModelExpanded" |
Activity
Information about the past usage of Atoti by the current user. Useful to provide shortcuts to recently used elements, and more. Regroups all pieces of information stored on the Content Server, belonging to a user and which are not settings.
Property | Type | Description |
---|---|---|
lastUsedCube | { cubeName: CubeName; serverKey: string; } | The name and the server key of the last cube selected by the user. It controls which cube is targeted when creating a new widget. |
recentlyOpenedDashboards | AccessLog[] | The ids of the dashboards recently opened by the current user, ordered by last opened |
userFilters | Filter<T>[] | Filters attached to the current user and applying to all dashboards she visits. |
userQueryContext | QueryContextEntry[] | Query context attached to the current user and applying to all dashboards they visit. |
ADataModelNode
A node in a data model tree, under a cube.
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string |
AFieldStyle
The style applied to the values of a Measure or the members of a Hierarchy in the target widget.
Property | Type | Description |
---|---|---|
dateFormat | string | |
numberFormat | NumberFormat | |
numberOfDecimals | number |
AFilter
A filter is always contextual to a hierarchy
HierarchyCoordinates & {
isExclusionFilter?: boolean;
isPinned?: boolean;
pinnedFilterWidth?: number;
nonVisualTotals?: boolean;
}
AllMeasuresInMapping
A tile in the widget mapping, representing all measures.
Property | Type | Description |
---|---|---|
type | "allMeasures" |
Allowlist
A list of strings representing allowed entities, e.g. which tools should be shown in Atoti, or "*" if there are no restrictions.
- T[]
- "*"
AMdxCompoundIdentifier
The common attributes shared by all types of MdxCompoundIdentifier.
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] |
AMetaData
Property | Type | Description |
---|---|---|
isFolder | boolean | |
name | string |
ANode
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean |
APlugin
Type extended by every plugin type. Each plugin must specify its key and can come with its own translations.
Property | Type | Description |
---|---|---|
key | string | |
translations | { [locale: string]: TranslationTree<string>; } |
ApplicationMenu
A menu that is displayed in the header of the application.
ApplicationMenuItem
A menu item that is displayed in the header of the application.
Property | Type | Description |
---|---|---|
key | string |
Method | Description |
---|---|
useMenuItem |
ApplicationSubMenu
A submenu within the menu in the header of the application. The children can be more submenus, or menu items.
Property | Type | Description |
---|---|---|
key | string | |
children | ApplicationMenu[] |
Method | Description |
---|---|
useMenuItem |
Argument
- "PLACE_HOLDER" /** * boolean, int, double, date, … */
- "SCALAR" /** * function keyword */
- "KEYWORD" /** * string (means will be surrounded by single quotes) */
- "STRING"
AtotiClient
Provides methods to interact with an Atoti server:
-
Allows to run MDX queries via a websocket.
-
Allows to perform REST calls.
Property | Type | Description |
---|---|---|
serverVersion | string | The server's version. |
serviceVersion | ServiceVersion | The version of the APIs offered by the server's REST and websocket endpoints. |
url | string | The server's URL. |
calculatedMembers | { [cubeName: string]: { calculatedMembers?: { [name: string]: { owners: string[]; readers: string[]; }; }; isLoading: boolean; error?: Error; }; } | The list of calculated members per cube, if they are already loaded. See loadCalculatedMembers . |
connectionStatus | ConnectionStatus | The current connection status of the client. |
dataModel | DataModel | undefined | The DataModel if it is already loaded. See loadDataModel . |
dataModelLoadingError | DataModelLoadingError | undefined | The error received from the server in case the data model could not be loaded. |
drillthroughColumns | { [cubeName: string]: { drillthroughColumns?: DrillthroughColumn[]; isLoading: boolean; error?: Error; }; } | The list of DrillthroughColumn per cube, if they are already loaded. See loadDrillthroughColumns . |
isDataModelLoading | boolean | Whether the DataModel is still loading. |
Method | Description |
---|---|
connect | Asynchronously connects the client to the Atoti server's query streaming service. Resolves immediately if the client is already connected. |
createCalculatedMember | Asynchronously creates a calculated member in the cube identified by cubeName . |
createKpi | Asynchronously creates a Kpi in the cube identified by cubeName . |
deleteCalculatedMember | Asynchronously deletes a calculated member from the cube identified by cubeName . |
deleteKpi | Asynchronously deletes a Kpi from the cube identified by cubeName . |
disconnect | Disconnects the client from the Atoti server's query streaming service. |
getQuery | Returns the Query identified by queryId if it exists. |
getQueryResult | Returns the latest QueryResult for the Query identified by queryId . |
loadCalculatedMembers | Asynchronously returns the calculated members defined in the cube identified by cubeName . The loaded calculated members are then accessible using addCalculatedMembersListener . |
loadDataModel | Asynchronously loads the DataModel, making it available through AtotiClient. Can be called several times to load an up-to-date version. |
loadDrillthroughColumns | Asynchronously loads the list of DrillthroughColumn for cube cubeName , making it available through AtotiClient. |
refreshQuery | Re-executes a paused query once. |
setQuery | Updates the Query identified by queryId or register it if it did not exist. Marks the query as loading and sends a message to the server. |
subscribeToCalculatedMembers | Registers callback to be called when the calculated members of the cube identified by cubeName change. |
subscribeToConnectionStatus | Registers callback to be called whenever the client status changes. |
subscribeToDataModel | Registers callback to be called whenever the data model changes. |
subscribeToDrillthroughColumns | Registers callback to be called whenever the drillthrough columns change. |
subscribeToQuery | Registers callback to be called whenever the Query identified by queryId is updated. |
subscribeToQueryResult | Registers callback to be called whenever a new QueryResult is received for the Query identified by queryId . |
updateCalculatedMember | Asynchronously updates a calculated member in the cube identified by cubeName . |
AttributeRole
Attribute roles define what happens when the user switches from one type of widget to another. For instance, when the user switches from a pivot table to a line chart, the fields belonging to each role are mapped to the attributes of the same role in the target widget.
In the case of a line chart xAxis
is primaryOrdinal
, values
is primaryNumeric
, splitBy
is secondaryOrdinal
and secondaryValues
(values mapped to the secondary Y axis) is secondaryNumeric
. In the case of a pivot table rows
is primaryOrdinal
, measures
is primaryNumeric
and columns
is secondaryOrdinal
.
- "primaryNumeric"
- "primaryOrdinal"
- "secondaryNumeric"
- "secondaryOrdinal"
- "subplot"
AWidgetState
The state of any widget. Note that each individual widget plugin typically extends this type. If linked to a saved widget, contains a reference to its id
and the version
that was used when the copy was made. See WidgetMetaData
IsLinkedToSavedWidget extends true ? AWidgetState<T, false> & {
version: number;
id: string;
hasDivergedFromOriginal: boolean;
} : {
isFullScreen?: boolean;
filters?: Filter<T>[];
queryContext?: QueryContextEntry[];
name?: string;
widgetKey: string;
behavior?: WidgetBehavior;
}
Axis
Property | Type | Description |
---|---|---|
hierarchies | { dimension: DimensionName; hierarchy: HierarchyName; }[] | |
id | AxisId | |
maxLevelPerHierarchy | number[] | |
positions | Member[][] | |
range | AxisRange |
AxisId
- -1
- 0
- 1
- 2
- 3
- 4
AxisName
- "SLICER"
- "COLUMNS"
- "0"
- "ROWS"
- "1"
- "PAGES"
- "CHAPTERS"
- "SECTIONS"
AxisRange
Property | Type | Description |
---|---|---|
from | number | |
to | number | |
axisLength | number | |
entireAxis | boolean |
BasicDashboardProps
Property | Type | Description |
---|---|---|
activePageKey | string | |
className | string | |
initialPageState | Omit<DashboardPageState, "name"> | |
isExportingToPDF | boolean | |
LeafComponent | ComponentType<LeafProps> | |
onActivePageChange | (newActivePageKey: string) => void | |
onChange | (newState: DashboardState) => void | |
onLoaded | () => void | |
onWidgetSelected | (newSelectedLeafKey: string) => void | |
selectedLeafKey | string | |
state | DashboardState | |
style | CSSProperties | |
tabBarExtraContent | ReactNode | |
tabsBarLeftExtraContent | ReactNode |
Catalog
Property | Type | Description |
---|---|---|
cubes | T extends "raw" ? Cube<"raw">[] : { [cubeName: string]: Cube<"indexed">; } | |
name | string |
CatalogNode
A data model tree node representing a catalog
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
type | "catalog" |
Cell
Property | Type | Description |
---|---|---|
formattedValue | string | |
ordinal | number | |
properties | { [key in CellProperty]?: null | string | number | undefined; } | |
value | number | string |
CellPlugin
Plugin useful for cell Components usable on table widgets.
Property | Type | Description |
---|---|---|
key | string | |
translations | { [locale: string]: TranslationTree<string>; } | |
Cell | ForwardRefExoticComponent<PropsWithRef<CellPropsType>> |
CellPluginForCellSetTable
Most used variant of CellPlugin, suitable for table widgets representing a CellSet.
CellPlugin<CellSetTableCellProps>
CellProperty
Properties attached to each cell in a CellSet.
In Atoti UI, these properties are used for styling.
- "BACK_COLOR"
- "FORE_COLOR"
- "FONT_NAME"
- "FONT_FLAGS"
- "FONT_SIZE"
- "FORMAT_STRING"
CellProps
Type extended by the props of CellPlugin Cell
components.
Property | Type | Description |
---|---|---|
caption | string | |
className | string | |
columnIndex | number | |
height | number | |
isColumnFrozen | boolean | |
isRowFrozen | boolean | |
isVirtualized | boolean | |
left | number | |
parentTotalRowIndex | number | |
rowIndex | number | |
size | "small" | "medium" | "large" | |
style | CSSProperties | |
top | number | |
value | string | number | |
width | number | |
wrapText | boolean |
CellSet
Property | Type | Description |
---|---|---|
axes | Axis[] | |
cells | Cell[] | |
cube | CubeName | |
defaultMembers | DefaultMember[] | |
epoch | number |
CellSetAxesSelection
The tuples and levels corresponding to the selected positions (which can be headers in a table or ticks on a chart's axes).
- { id: AxisId; hierarchies?: (LevelCoordinates
- {
dimensionName: "Measures";
hierarchyName: "Measures";
})[];
positions?: Tuple[];
positionIndices?: number[];
}[]
CellSetCellsSelection
The tuple and value corresponding to each selected Cell (which can be body cells in a table, or points on a chart).
- { tuple: Tuple; value?: number
- string; }[]
CellSetSelection
A selection of cells, positions and levels in a CellSet.
{
axes?: CellSetAxesSelection;
cells?: CellSetCellsSelection;
}
CellSetTableBodyCellProps
The props of body cells in a CellSetTable.
LoadingTableCellProps & DerivedCellSetTableBodyCellProps
CellSetTableCellProps
The props of cells in a CellSetTable.
- LoadingTableCellProps
- CellSetTableBodyCellProps
- CellSetTableHeaderCellProps
- CellSetTableStaticHeaderCellProps
CellSetTableHeaderCellProps
The props of header cells in a CellSetTable.
- LoadingTableCellProps & DerivedCellSetTableHeaderCellProps & (CellSetTableCellPropsFromRow
- CellSetTableCellPropsFromColumn)
CellSetTableStaticHeaderCellProps
The props of static header cells in a CellSetTable.
LoadingTableCellProps & DerivedCellSetTableStaticHeaderCellProps
CellStylePlugin
Plugin useful to provide style to cells in table widgets.
Property | Type | Description |
---|---|---|
key | string | |
translations | { [locale: string]: TranslationTree<string>; } | |
withCellStyle | <T extends CellPropsType = CellPropsType>(CellComponent: ForwardRefExoticComponent<T & RefAttributes<HTMLDivElement>>) => ForwardRefExoticComponent<PropsWithoutRef<T> & RefAttributes<HTMLDivElement>> |
CellStylePluginForCellSetTable
Most used variant of CellStylePlugin, suitable for table widgets representing a CellSet.
CellStylePlugin<CellSetTableCellProps>
Client
Parent interface for Atoti Server/Content Server/ActiveMonitor clients.
Property | Type | Description |
---|---|---|
serverVersion | string | The server's version. |
serviceVersion | ServiceVersion | The version of the APIs offered by the server's REST and websocket endpoints. |
url | string | The server's URL. |
Clients
Property | Type | Description |
---|---|---|
atoti | { [serverKey: string]: AtotiClient; } | |
content | ContentClient |
CloseCommandPaletteAction
Redux action to close the command palette. See isCommandPaletteVisible
in State.
Property | Type | Description |
---|---|---|
type | "closeCommandPalette" |
CollapseDataModelTreeAction
Redux action to collapse the data model tree. See isDataModelTreeExpanded
in State.
Property | Type | Description |
---|---|---|
type | "collapseDataModelTree" |
Color
A string representing a color.
string
CompositeHierarchyInMapping
A tile in the widget mapping, representing 2 hierarchies glued together. This can be created through a "drill down" action on a pivot table.
Property | Type | Description |
---|---|---|
hierarchies | (LevelCoordinates & { expandedDownTo?: LevelName; })[] | |
type | "compositeHierarchy" |
ConditionalStyle
Contains a conditional format and the conditions under which to apply it. The condition is described with 1 or 2 keys. When there are 2 keys, they are necessarily a pair of lt(e)/gt(e), matching all values between or outside 2 limits.
Property | Type | Description |
---|---|---|
eq | number | |
gt | number | |
gte | number | |
lt | number | |
lte | number | |
neq | number | |
style | CSSProperties |
Configuration
Object describing how Atoti UI is configured. In particular, it describes which Plugins are registered, which has an impact both on the application functionalities and on the bundle size.
Property | Type | Description |
---|---|---|
applicationName | string | |
extraVersions | { [name: string]: string; } | The extra software versions that will be displayed in the about popup below the Atoti UI and Atoti Server(s) versions. |
higherOrderComponents | ((wrappedComponent: ComponentType) => ComponentType)[] | Higher-order components (HOCs) wrapping the application. In particular, it allows to provide React contexts.See https://reactjs.org/docs/higher-order-components.html |
initialDashboardPageState | Omit<DashboardPageState, "name"> | |
isBrandSignatureVisible | boolean | |
leftApplicationMenu | ApplicationMenu[] | Controls the menu items on the left of the header. They are usually specific to dashboards. |
pathToHome | string | The path to the Atoti home page. |
pluginRegistry | PluginRegistry | |
rightApplicationMenu | ApplicationMenu[] | Controls the menu items on the right of the header. They are typically always available. |
routes | RouteObject[] | |
storeEnhancers | StoreEnhancer[] | Redux store enhancers, allowing extensions to hook into the state of Atoti UI.It can be used by an extension to: - inject its own state into Atoti UI, so that the extension itself and other extensions can consume it - react to actions dispatched by Atoti UI or other extensionsThe store enhancers are composed, which allows to split state management on a per-extension basis.See https://redux.js.org/usage/configuring-your-store#extending-redux-functionality |
themes | { [themeKey: string]: Partial<Theme> & { primaryColor: Color; }; } | |
tools | Tool[] | |
widgetLoadingOverlay | ComponentType<LoadingOverlayProps> | An overlay shown while a widget is loading. |
ConnectionStatus
The connection status of an AtotiClient. When "connected", queries can be run against it using useQueryResult.
- "disconnected"
- "connecting"
- "connected"
ContainingMode
- "startsWith"
- "doesNotStartWith"
- "endsWith"
- "doesNotEndWith"
- "contains"
- "doesNotContain"
ContentClient
Provides methods to interact with the Content Server.
Property | Type | Description |
---|---|---|
serverVersion | string | The server's version. |
serviceVersion | ServiceVersion | The version of the APIs offered by the server's REST and websocket endpoints. |
url | string | The server's URL. |
Method | Description |
---|---|
createFile | Asynchronously creates a dashboard or a widget file on the Content Server. Returns its id. |
createFolder | Asynchronously creates a dashboard or a widget folder on the Content Server. Returns its id. |
deleteFile | Asynchronously deletes a dashboard or a widget file on the Content Server. |
deleteFilesAndFolders | Asynchronously deletes the selected files and folders of type on the Content Server. |
deleteFolder | Asynchronously deletes a dashboard or a widget folder on the Content Server. |
exportFilesAndFolders | Asynchronously returns: - a flat map containing all content entries (recursively) below the passed ids on the Content Server. - the tree structure of these entries under the exported folder. This method is only compatible with content service versions of 7 and above. The passed ids must refer to entries in a single folder, located at pathToParentFolder . |
fetchFile | Asynchronously returns the content of a dashboard or a widget file on the Content Server. Includes the file's metadata unless withMetaData: false is given, in which case pathToParentFolder is optional. |
fetchThumbnail | Asynchronously returns the thumbnail at path if it exists, undefined otherwise. |
fetchThumbnails | Asynchronously returns all accessible thumbnails in pathToParentFolder . Does not return thumbnails of subfolders. Returns a record object where values are the thumbnail images and keys are the ids of the files they relate to. |
getActivity | Returns the value of the activity identified by activityKey if it exists. |
getArePermissionsLoaded | Returns whether the permissions have been loaded by loadPermissions |
getAreSettingsLoaded | Returns whether the settings have been loaded by loadSettings |
getPermission | Returns the value of the permission identified by permissionKey , along with a flag indicating whether it is explicitly set in one of the permission files impacting the user. |
getSetting | Returns the value of the setting identified by settingKey if it exists. |
getTree | Returns the dashboards, widgets, or filters tree, if it is already loaded. |
importFilesAndFolders | Asynchronously imports the given files and folders into the Content Server. These files and folders must all be under the same parent folder. This method is only compatible with content service versions of 7 and above. |
loadActivity | Asynchronously loads the Activity of the current user and makes it available via getActivity . If the activity file's content is not a valid JSON object, a default empty activity object is loaded. |
loadPermissions | Asynchronously loads the permissions, making them available via getPermission . If one of the permissions file's content is not a valid JSON object, loads a set of default permissions values instead. |
loadSettings | Asynchronously loads the settings, making them available via getSetting . If one of the settings file's content is not a valid JSON object, loads a set of default settings values instead. |
loadTree | Asynchronously loads the tree of all accessible dashboards, widgets, or filters. |
moveFiles | Asynchronously moves files from a same folder into a different folder on the Content Server. |
subscribeToActivity | Registers callback to be called whenever the value of the activity identified by activityKey is updated. |
subscribeToPermission | Registers callback to be called whenever the value of the permission identified by permissionKey is updated. |
subscribeToSetting | Registers callback to be called whenever the value of the setting identified by settingKey is updated. |
subscribeToTree | Registers callback to be called whenever the dashboards, widgets, or filters tree is reloaded. |
updateActivity | Saves the new version of the user's Activity on the Content Server. |
updateFile | Asynchronously updates an existing dashboard or widget file on the Content Server. |
updateFilePermissions | Asynchronously updates an existing dashboard or widget file's permissions on the Content Server. |
updateFolder | Asynchronously updates an existing dashboard or widget folder on the Content Server. |
updateFolderPermissions | Asynchronously updates an existing folder's permissions on the Content Server. |
updatePermission | Asynchronously updates the value of the permission identified by key for the given user. Requires being authenticated as a user with admin privileges. |
updateSetting | Asynchronously updates the value of the user setting identified by key for the given user. |
updateSettings | Asynchronously updates the user settings. |
ContentEntry
An entry on the content server.
{
isDirectory?: boolean;
owners: string[];
readers: string[];
content?: Content;
} &
(T extends "response" ? {
canRead: boolean;
canWrite: boolean;
isDirectory: boolean;
lastEditor: string;
timestamp: number;
} : unknown)
Remarks:
The properties of the content entry vary on whether it is sent in an API request or received in an API response.
See https://artifacts.activeviam.com/documentation/rest/6.0.0/content-server.html\#files\_\_\_path\_\_path\_\_get for more information on the ContentEntry response shape. See https://artifacts.activeviam.com/documentation/rest/6.0.0/content-server.html\#files\_\_\_path\_\_path\_\_post for more information on the ContentEntry request shape.
ContentNode
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
entry | ContentEntry<AMetaData> | |
id | string | |
metaData | MetaData | |
type | ContentNodeType |
ContentNodeType
- "file"
- "folder"
- "server"
ContentRecord
Property | Type | Description |
---|---|---|
children | { [childName: string]: ContentRecord<Content, T>; } | |
entry | ContentEntry<Content, T> |
ContentType
- "dashboard"
- "widget"
- "filter"
ContextValueDefinition
Property | Type | Description |
---|---|---|
category | string | |
description | string | |
name | string | |
type | string |
Cube
Property | Type | Description |
---|---|---|
caption | string | |
contextValues | T extends "raw" ? DefaultContextValue[] : { [defaultContextValueName: string]: DefaultContextValue; } | |
defaultMembers | DefaultMember[] | |
dimensions | T extends "raw" ? Dimension<"raw">[] : { [dimensionName: string]: Dimension<"indexed">; } | |
kpis | T extends "raw" ? Kpi[] : { [kpiName: string]: Kpi; } | |
measureGroups | T extends "raw" ? MeasureGroup[] : { [measureGroupName: string]: MeasureGroup; } | |
measures | T extends "raw" ? Measure[] : { [measureName: string]: Measure; } | |
name | CubeName | |
sets | T extends "raw" ? Set[] : { [setName: string]: Set; } |
CubeName
string
CubeNode
A data model tree node representing a cube
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
name | string | |
serverKey | string | |
type | "cube" |
CurriedCellSetTableCellProps
The props of CellSet table cells, which are curried by the CellSetTable Component.
Property | Type | Description |
---|---|---|
cells | CellSetTableCell[][] | The cells forwarded to the underlying Table component. The dimensions of the array include the frozen rows and columns. Only the cells of the body are filled, as the rendering of the header cells depend on more information, present in the metaData. |
columnHeaderIndices | { hierarchyIndex: number; levelIndex: number; }[] | Represents the level corresponding to each frozen row of the column header. |
columnIndexImpactingRowStyle | number | The index of the column whose conditional formatting impacts full rows, if applicable. |
columnsAxis | Axis | undefined | |
cube | Cube | |
data | CellSet | |
defaultMeasure | DefaultMember | |
hierarchyIndicesInCellSet | HierarchyIndicesInCellSet | |
indexOfMeasureOnSlicer | number | |
isRowHeaderTree | boolean | |
mapping | DataVisualizationWidgetMapping | |
memberPropertyKeys | string[] | |
numberOfColumnsInBody | number | |
numberOfFrozenColumns | number | |
numberOfFrozenRows | number | |
numberOfRowsInBody | number | |
rowHeaderIndices | { hierarchyIndex: number; levelIndex: number; }[] | |
rowsAxis | Axis | |
slicerAxis | Axis | |
sort | { orderMode: OrderMode | undefined; tupleCoordinates?: TupleCoordinates; levelCoordinates?: LevelCoordinates; } | |
staticHeaderCoordinatesOnColumns | TableStaticHeaderCoordinates[] | |
staticHeaderCoordinatesOnRows | TableStaticHeaderCoordinates[] | |
staticHeadersOnColumns | TableStaticHeader[] | |
staticHeadersOnRows | TableStaticHeader[] | |
styleImpactingRows | AFieldStyle | The style impacting full rows, if applicable. It corresponds to the style of the tupleImpactingRowStyle from TableWidgetStyle. For instance, if the table has currencies and measures on columns, the this tuple can be (EUR, delta.SUM). |
areFrozenColumnsIgnored | boolean | If the table is resized and becomes so thin that frozen columns would be larger than its total width, then they can be ignored so that the user can still scroll horizontally in order to see the columns to the right. This prop allows to control this behavior. |
isExpandable | (tuple: Tuple) => boolean | |
isExpanded | (tuple: TupleCoordinates) => boolean | |
onExpansionChanged | (tuple: Tuple, toLevel: LevelCoordinates, isExpanding: boolean) => void | |
onSortChanged | () => void | |
widgetState | DataVisualizationWidgetState |
CurriedDrillthroughTableCellProps
The props of cells in drillthrough table that are curried by the DrillthroughTable Component.
Property | Type | Description |
---|---|---|
headerCaptions | DrillthroughDataSetHeaderCell[] | |
headerValues | DrillthroughDataSetHeaderCell[] | |
onSortChanged | () => void | |
sort | { orderMode: "ASC" | "DESC"; drillthroughColumnUniqueName: string; } | |
widgetState | DrillthroughTableWidgetState |
CustomFilter
Property | Type | Description |
---|---|---|
mdx | T extends "deserialized" ? MdxExpression : string | |
type | "custom" |
DashboardContent
The content of a dashboard file on the Content Server.
Omit<DashboardState<"serialized">, "name">
DashboardLoadedAction
Redux action to change the state of the dashboard when it is loaded.
Property | Type | Description |
---|---|---|
dashboardState | DashboardState | |
type | "dashboardLoaded" |
DashboardMetaData
The content of a dashboard meta data file on the Content Server, representing this dashboard in the dashboards tree.
DashboardPageState
The state of a dashboard page. content
contains the state of each leaf. layout
represents how they are laid out.
{
content: {
[leafKey: string]: WidgetStateType;
};
filters?: Filter<T>[];
queryContext?: QueryContextEntry[];
layout: Layout;
name: string;
}
DashboardSavedAction
Redux action to mark the current dashboard as saved. It does not actually save the action on the Content Server. See dashboard
and lastSavedDashboardHash
in State.
Property | Type | Description |
---|---|---|
dashboardState | DashboardState | |
type | "dashboardSaved" |
DashboardState
The state of a dashboard. pages
contains the state of each page.
{
filters?: Filter<T>[];
queryContext?: QueryContextEntry[];
name?: string;
pages: {
[pageKey: string]: DashboardPageState<T>;
};
pagesOrder: string[];
}
DashboardUnloadedAction
Redux action to unload the dashboard. This action resets the undo/redo history. See dashboard
in State.
Property | Type | Description |
---|---|---|
type | "dashboardUnloaded" |
DashboardUpdatedAction
Redux action to change the state of the dashboard. See dashboard
in State.
Property | Type | Description |
---|---|---|
dashboardState | DashboardState | |
newSelectedWidget | { leafKey: string; pageKey: string; } | |
type | "dashboardUpdated" |
DataModel
Describes the data contained in a server.
Property | Type | Description |
---|---|---|
catalogs | T extends "raw" ? Catalog<"raw">[] : { [catalogName: string]: Catalog<"indexed">; } | |
contextValues | T extends "raw" ? ContextValueDefinition[] : { [contextValueDefinitionName: string]: ContextValueDefinition; } |
DataModelClickListener
A listener on data model tree clicks, called whenever a node is clicked in the DataModelTree.
(node: DataModelNode, event: DataModelClickEvent) => void
DataModelNode
A data model tree node
- CatalogNode
- CubeNode
- DimensionNode
- HierarchyNode
- HierarchyFolderNode
- KpiPropertyNode
- KpiNode
- KpiFolderNode
- KpisRootNode
- LevelNode
- MeasuresFolderNode
- MeasureNode
- ServerNode
- SetNode
- SetsRootNode
DataOverrides
Plotly overrides relative to the traces.
Property | Type | Description |
---|---|---|
additionalTraces | Trace[] | |
commonTraceOverride | Partial<Trace> | |
overridesByTraceIndex | Partial<Trace>[] | |
overridesByTraceKey | { [traceKey: string]: Partial<Trace>; } |
DataVisualizationMappingField
A field in a data visualization widget's mapping.
- AllMeasuresInMapping
- MeasureInMapping
- KpiPropertyInMapping
- HierarchyInMapping
- CompositeHierarchyInMapping
- NamedSetInMapping
DataVisualizationStyle
Style attributes of a data visualization widget.
Property | Type | Description |
---|---|---|
measures | { [measureName: string]: FieldStyle; } | |
tuples | { [tupleKey: string]: CSSProperties; } |
DataVisualizationWidgetMapping
The attributes to fields mapping, specific to a given type of data visualization widget. Contains deserialized fields.
For example:
{
rows: [
{
type: "hierarchy",
dimensionName: "Currency",
hierarchyName: "Currency",
levelName: "Currency"
}
]
}
DataVisualizationWidgetState
Property | Type | Description |
---|---|---|
areFiltersDrivenByMdx | boolean | Whether the filters applied to the query when it is sent to the server are driven by: 1. widgetState.query.mdx (when true). It allows users to write filters as they like in the query tab. 2. dashboardState.filters , pageState.filters and widgetState.filters (when false). It allows a single source of truth for dashboard and page filters, preventing bugs.Defaults to false.In practice it is set to true when the user submits an MDX query in the query tab. It it set to false when filters are changed using other UI elements, such as the content or filters tab. |
query | Partial<Query<T extends "serialized" ? MdxString : MdxType>> | |
serverKey | string | |
shouldUseDefaultColumns | MdxType extends MdxDrillthrough ? boolean : never | Whether the columns specified in the drillthrough.defaultSelectedColumns setting are used in the drillthrough query. It is useful when performing a drillthrough from another widget, as it allows to create the drillthrough widget right away, while triggering the query only once the default columns have been fetched. |
mapping | T extends "serialized" ? SerializedDataVisualizationWidgetMapping : DataVisualizationWidgetMapping | |
style | Style | |
switchedTo | string |
DefaultContextValue
Property | Type | Description |
---|---|---|
name | string | |
value | string |
DefaultMember
Property | Type | Description |
---|---|---|
captionPath | string[] | |
dimension | DimensionName | |
hierarchy | HierarchyName | |
path | string[] |
DerivedCellSetTableBodyCellProps
The props specific to body cells in a CellSetTable.
Property | Type | Description |
---|---|---|
properties | { [key in CellProperty]?: null | string | number | undefined; } | |
tuple | Tuple | null |
DerivedCellSetTableHeaderCellProps
The props specific to header cells in a CellSetTable.
Property | Type | Description |
---|---|---|
headerDepth | number | |
hierarchyIndex | number | |
levelIndex | number | |
positionIndex | number | |
tuple | Tuple | null |
DerivedCellSetTableStaticHeaderCellProps
The props specific to static header cells in a CellSetTable.
Property | Type | Description |
---|---|---|
staticHeaderCoordinates | TableStaticHeaderCoordinates |
Dimension
Property | Type | Description |
---|---|---|
caption | string | |
defaultHierarchy | HierarchyName | |
description | string | |
hierarchies | T extends "raw" ? Hierarchy<"raw">[] : { [hierarchyName: string]: Hierarchy<"indexed">; } | |
measureGroups | string[] | |
name | DimensionName | |
type | string | |
visible | boolean |
DimensionName
The readable name of a dimension in a cube.
string
For example:
const dimensionName = 'Geography';
DimensionNode
A data model tree node representing a dimension
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
dimension | Dimension | |
type | "dimension" |
DrillthroughColumn
The drillthrough column as described by the server
Property | Type | Description |
---|---|---|
caption | string | |
name | DrillthroughColumnUniqueName | |
type | "String" | "double" | "int" | "long" | "LocalDate" | "LocalDateTime" | "Object" | |
visible | boolean |
DrillthroughColumnUniqueName
A unique identifier for a drillthrough column.
string
DrillthroughDataSet
Property | Type | Description |
---|---|---|
headers | DrillthroughDataSetHeaderCell[] | |
rows | DrillthroughDataSetRow[] |
DrillthroughDataSetCell
- string
- number
- Record<string, unknown>
DrillthroughDataSetHeaderCell
Drillthrough's result column header description as returned by the server
Property | Type | Description |
---|---|---|
caption | string | |
name | string | |
type | "String" | "double" | "int" | "long" | "LocalDate" | "LocalDateTime" | "Object" |
DrillthroughDataSetRow
DrillthroughResult
Drillthrough query result as returned by the server
Property | Type | Description |
---|---|---|
epoch | number | |
result | DrillthroughDataSet |
DrillthroughSelection
A selection of cells and/or headers in a DrillthroughResult.
Property | Type | Description |
---|---|---|
columns | { header: DrillthroughDataSetHeaderCell; cells: DrillthroughDataSetCell[]; }[] | |
headers | DrillthroughDataSetHeaderCell[] |
DrillthroughTableCellProps
The props of cells in a drillthrough table
CellProps & CurriedDrillthroughTableCellProps
DrillthroughTableWidgetState
- WidgetWithQueryState<MdxDrillthrough> & {
initialCubeName?: CubeName;
columnWidths?: {
[drillthroughColumnUniqueName: string]: number;
}; sort?: { orderMode: "ASC" - "DESC"; drillthroughColumnUniqueName: string; }; style?: TableWidgetStyle; }
EditorProps
Props received by content and style tabs.
ActionProps<WidgetState>
ElementType
Used for switching when visiting
- "Drillthrough"
- "Select"
- "SubSelect"
- "Axis"
- "CaseExpression"
- "CompoundIdentifier"
- "Formula"
- "Function"
- "From"
- "Identifier"
- "Literal"
- "MemberPropertyDefinition"
- "When"
ErrorInQueryResult
Property | Type | Description |
---|---|---|
errorChain | { type: string; message: string; }[] | |
stackTrace | string |
ExpandDataModelTreeAction
Redux action to expand the data model tree. See isDataModelTreeExpanded
in State.
Property | Type | Description |
---|---|---|
type | "expandDataModelTree" |
ExpandedFolderPathsInHomePageAction
Redux action to expand and collapse folders on the homepage. See expandedFolderPathsInHomePage
in State.
Property | Type | Description |
---|---|---|
expandedFolderPathsInHomePage | string[][] | |
type | "expandedFolderPathsInHomePageUpdated" |
ExpansionAction
An action of expansion in a tree.
Property | Type | Description |
---|---|---|
path | number[] | the path to the node that the user interacted with |
type | "expand" | "collapse" | whether the node was expanded or collapsed |
ExtensionModule
The entrypoint module of an Atoti UI extension.
Property | Type | Description |
---|---|---|
activate | (params: Configuration) => Promise<void> |
FieldUniqueName
- "ALL_MEASURES"
- LevelUniqueName
- MeasureUniqueName
- KpiPropertyIdentifier
- "namedSet"
FileListMenuItemProps
Property | Type | Description |
---|---|---|
contentTree | ContentRecord | |
contentType | ContentType | |
onAfterSubmit | OnAfterSubmit | |
onEditStarted | (id: string) => void | |
pathToParentFolder | string[] | |
selectedFilesAndFolders | ({ id: string; record: ContentRecord<AMetaData>; } | { doesRepresentServer: true; })[] |
Filter
- FilterOnMembers
- FilterOnDateRange<T>
- FilterOnTimePeriodToDate
- FilterOnRecentDates
- FilterOnTopBottomMembers
- FilterOnLowerOrGreaterValues
- FilterOnValuesRange
- FilterOnLowerOrGreaterCaptions
- FilterOnCaptionsRange
- FilterOnCaptionContaining
- FilterOnExistenceOfValue
- CustomFilter<T>
FilterMetaData
The content of a filter meta data file on the Content Server, representing a filter in the filters tree.
{
name: string;
isFolder?: boolean;
}
FilterOnCaptionContaining
A filter on the members of a level of a hierarchy with a caption starting, ending, containing (or not) the given string.
Property | Type | Description |
---|---|---|
containingMode | ContainingMode | |
levelName | LevelName | |
token | string | |
type | "captionsContaining" |
For example:
Filter on employees with a last name alphabetically containing "son".
FilterOnCaptionsRange
A filter on the members of a level of a hierarchy with a caption alphabetically between the given limits.
Property | Type | Description |
---|---|---|
isBetween | boolean | |
levelName | LevelName | |
lowerToken | string | |
type | "captionsRange" | |
upperToken | string |
For example:
Filter on employees with a last name alphabetically between "L" and "O".
FilterOnDateRange
A filter on a range of dates (only available for hierarchies of type time
).
Property | Type | Description |
---|---|---|
endDate | T extends "deserialized" ? Date : string | |
isRollingDate | boolean | |
levelName | LevelName | |
startDate | T extends "deserialized" ? Date : string | |
type | "dateRange" |
For example:
Filter on transactions between "2021/12/01" and "2021/12/20".
FilterOnExistenceOfValue
A filter on the members of a level of a hierarchy with an existing value for the given measure.
Property | Type | Description |
---|---|---|
doesExist | boolean | |
levelName | LevelName | |
measureName | MeasureName | |
type | "existenceOfValue" |
For example:
Filter on countries with a known GDP.
FilterOnLowerOrGreaterCaptions
A filter on the members of a level of a hierarchy with a caption alphabetically before or after a given limit.
Property | Type | Description |
---|---|---|
levelName | LevelName | |
lowerOrGreaterMode | LowerOrGreaterMode | The values "Equal" and "NotEqual" are deprecated and will be removed in Atoti UI 5.3. Use a FilterOnMembers instead. |
token | string | |
type | "lowerOrGreaterCaptions" |
For example:
Filter on employees with a last name alphabetically after "H".
FilterOnLowerOrGreaterValues
A filter on the members of a level of a hierarchy with a value of a given measure lower or greater than a defined limit.
Property | Type | Description |
---|---|---|
levelName | LevelName | |
lowerOrGreaterLimit | number | |
lowerOrGreaterMode | LowerOrGreaterMode | |
measureName | MeasureName | |
type | "lowerOrGreaterValue" |
For example:
Filter on countries with a GDP above 500B$.
FilterOnMembers
A filter on explicitly defined members of a hierarchy.
Property | Type | Description |
---|---|---|
members | string[][] | |
type | "members" |
For example:
Filter on Currency = Dollar
FilterOnRecentDates
Property | Type | Description |
---|---|---|
levelName | LevelName | |
numberOfRecentDates | number | |
type | "recentDates" |
FilterOnTimePeriodToDate
A filter on a range of dates from the beginning of the selected time period (for example month, quarter or year) to the current date. Only available for hierarchies of type time
.
Property | Type | Description |
---|---|---|
levelName | LevelName | |
timePeriod | TimePeriod | |
type | "timePeriodToDate" |
For example:
Filter on transactions between the first day of the current year and today.
FilterOnTopBottomMembers
A filter on the n members of a level of a hierarchy with the lowest or highest value for a measure.
Property | Type | Description |
---|---|---|
levelName | LevelName | |
limit | number | |
measureName | MeasureName | |
scope | FilterScope | |
topBottomMode | TopBottomMode | |
type | "topBottomMembers" |
For example:
Filter on the 3 best selling products of each category
FilterOnValuesRange
A filter on the members of a level of a hierarchy with a value of a given measure between or outside the given limits.
Property | Type | Description |
---|---|---|
isBetween | boolean | |
levelName | LevelName | |
lowerLimit | number | |
measureName | MeasureName | |
type | "valuesRange" | |
upperLimit | number |
For example:
Filter on countries with a GDP between 200 and 500B$.
FilterScope
- "overall"
- "ofEachParent"
FilterType
- "members"
- "topBottomMembers"
- "lowerOrGreaterValue"
- "valuesRange"
- "lowerOrGreaterCaptions"
- "captionsRange"
- "captionsContaining"
- "existenceOfValue"
- "dateRange"
- "timePeriodToDate"
- "recentDates"
- "custom"
FormulaType
- "SET"
- "MEMBER"
GenericIndenter
Property | Type | Description |
---|---|---|
indent | (needSpace?: boolean) => string | |
newLine | (needSpace?: boolean) => string | |
unindent | () => void |
GridRange
Property | Type | Description |
---|---|---|
columns | Range | |
rows | Range |
Hierarchy
Property | Type | Description |
---|---|---|
caption | string | |
description | string | |
folder | string | |
levels | T extends "raw" ? Level<"raw">[] : { [levelName: string]: Level<"indexed">; } | |
maxNbResultsPerSearch | number | The maximum number of cells returned by the server when looking up members from the hierarchy, to avoid performance issues. Only applicable for virtual hierarchies. See virtual. |
name | HierarchyName | |
slicing | boolean | |
virtual | boolean | Whether the hierarchy is implemented as "virtual" or not on the server. Virtual hierarchies have a high cardinality, and their members are not represented in memory on the server. This limits what operations can be done on them, in particular when querying them through MDX. |
visible | boolean |
HierarchyCoordinates
The dimension and hierarchy names identifying a hierarchy in a cube.
Property | Type | Description |
---|---|---|
dimensionName | DimensionName | |
hierarchyName | HierarchyName |
For example:
const hierarchyCoordinates = {
dimensionName: 'Geography',
hierarchyName: 'City'
};
HierarchyFolderNode
A data model tree node representing a hierarchy folder.
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
type | "hierarchyFolder" |
HierarchyIndicesInCellSet
A map of hierarchy unique names to the index of the axis where the hierarchy can be found in cellSet.axes
and its own index in axis.hierarchies
.
HierarchyInMapping
A tile in the widget mapping, representing a hierarchy.
Property | Type | Description |
---|---|---|
expandedDownTo | LevelName | |
type | "hierarchy" |
HierarchyName
The readable name of a hierarchy in a cube.
string
For example:
const hierarchyName = 'City';
HierarchyNode
A data model tree node representing a hierarchy
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
dimension | Dimension | |
hierarchy | Hierarchy | |
type | "hierarchy" |
HierarchyUniqueName
A string representing the unique identifier of a hierarchy in a cube.
string
For example:
const hierarchyUniqueName = '[Geography].[City]';
HighlightedCaptionProps
Property | Type | Description |
---|---|---|
caption | string | |
className | string | |
isDisabled | boolean | |
searchValue | string |
InternalNode
Represents a node in a tree.
NodeType & {
path: number[];
parentNames: string;
}
IsDeferredAction
Redux action to toggle deferred updates. See isDeferred
in State.
Property | Type | Description |
---|---|---|
isDeferred | boolean | |
type | "isDeferredChanged" |
IsOpenDashboardPopupVisibleAction
Redux action to change whether the 'Open Dashboard' popup is visible. See isOpenDashboardPopupVisible
in State.
Property | Type | Description |
---|---|---|
type | "openDashboardPopupOpened" | "openDashboardPopupClosed" |
IsPresentingAction
Redux action to change whether the application is displayed in "Present" mode. See isPresenting
in State.
Property | Type | Description |
---|---|---|
isPresenting | boolean | |
type | "isPresentingChanged" |
IsSettingsPopupVisibleAction
Redux action to change whether the 'Settings' popup is visible. See isSettingsPopupVisible
in State.
Property | Type | Description |
---|---|---|
type | "settingsPopupOpened" | "settingsPopupClosed" |
IsToolsPanelExpandedAction
Redux action to change whether the tools panel is expanded. See isToolsPanelExpanded
in State.
Property | Type | Description |
---|---|---|
type | "toolsPanelExpanded" | "toolsPanelCollapsed" |
Kpi
Property | Type | Description |
---|---|---|
caption | string | |
description | string | |
expiry | string | |
folder | string | |
goal | string | |
name | string | |
start | string | |
status | string | |
statusPresenter | string | |
trend | string | |
value | string |
KpiComparison
KpiFolderNode
A data model tree node representing a folder of kpis
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
type | "kpiFolder" |
KpiNode
A data model tree node representing a kpi
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
type | "kpi" |
KpiProperty
Property | Type | Description |
---|---|---|
kpiName | string | |
kpiPropertyName | KpiPropertyName | |
underlyingMeasureName | MeasureName |
KpiPropertyIdentifier
string
For example:
KPIStatus("my KPI"): pnl.SUM
KpiPropertyInMapping
A tile in the widget mapping, representing a KPI property.
Property | Type | Description |
---|---|---|
kpiName | string | |
propertyName | KpiPropertyName | |
type | "kpiProperty" | |
underlyingMeasureName | MeasureName |
KpiPropertyName
- "KPIValue"
- "KPIGoal"
- "KPIStatus"
- "KPITrend"
- "KPIStart"
- "KPIExpiry"
KpiPropertyNode
A data model tree node representing a kpi property, such as its status
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
kpiName | string | |
kpiPropertyName | KpiPropertyName | |
underlyingMeasureName | MeasureName | |
type | "kpiProperty" |
KpisRootNode
A data model tree node representing a kpisRoot
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
type | "kpisRoot" |
KpiWidgetState
Property | Type | Description |
---|---|---|
areFiltersDrivenByMdx | boolean | Whether the filters applied to the query when it is sent to the server are driven by: 1. widgetState.query.mdx (when true). It allows users to write filters as they like in the query tab. 2. dashboardState.filters , pageState.filters and widgetState.filters (when false). It allows a single source of truth for dashboard and page filters, preventing bugs.Defaults to false.In practice it is set to true when the user submits an MDX query in the query tab. It it set to false when filters are changed using other UI elements, such as the content or filters tab. |
query | Partial<Query<T extends "serialized" ? MdxString : MdxType>> | |
serverKey | string | |
shouldUseDefaultColumns | MdxType extends MdxDrillthrough ? boolean : never | Whether the columns specified in the drillthrough.defaultSelectedColumns setting are used in the drillthrough query. It is useful when performing a drillthrough from another widget, as it allows to create the drillthrough widget right away, while triggering the query only once the default columns have been fetched. |
mapping | T extends "serialized" ? SerializedDataVisualizationWidgetMapping : DataVisualizationWidgetMapping | |
style | Style | |
switchedTo | string | |
comparison | KpiComparison | |
titles | { [tupleKey: string]: string; } |
Layout
Atoti UI dashboard page layout Tree of widgets, not necessarily binary. Allows a more intuitive widget resizing behavior than the ActiveUI 4 binary layout.
Property | Type | Description |
---|---|---|
children | (Layout | LayoutLeaf)[] | |
direction | "column" | "row" | |
size | number |
LayoutLeaf
Property | Type | Description |
---|---|---|
leafKey | string | |
size | number |
Level
{
name: LevelName;
caption: string;
description?: string;
type: string;
} &
(T extends "indexed" ? {
index: number;
} : unknown)
LevelCoordinates
The dimension, hierarchy and level names identifying a hierarchy in a cube.
HierarchyCoordinates & {
levelName: LevelName;
}
For example:
const hierarchyCoordinates = {
dimensionName: 'Geography',
hierarchyName: 'City',
levelName: 'City'
};
LevelName
The readable name of a level in a cube.
string
For example:
const levelName = 'City';
LevelNode
A data model tree node representing a level
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
depth | number | |
dimension | Dimension | |
hierarchy | Hierarchy | |
level | Level | |
type | "level" |
LevelUniqueName
A string representing the unique identifier of a level in a cube.
string
For example:
const levelUniqueName = '[Geography].[City].[City]';
LoadingOverlayProps
The props provided to a loading overlay.
Property | Type | Description |
---|---|---|
className | string | |
isInitiallyVisible | boolean | |
isLoading | boolean | |
style | CSSProperties | |
timeBeforeContinueLoadingButtonAppears | number | |
tip | string |
LoadingTableCellProps
The props of cells in a CellSetTable, in cases such as undefined cube or undefined data.
CellProps & CurriedCellSetTableCellProps
LowerOrGreaterMode
- "Lower"
- "LowerOrEqual"
- "Greater"
- "GreaterOrEqual"
- "Equal"
- "NotEqual"
Mdx
The Abstract syntax tree of an MdxString.
- MdxExpression
- MdxAxis
- MdxFromClause
- MdxFormula
- MdxDrillthrough
- MdxMemberPropertyDefinition
- MdxSelect
- MdxSubSelect
- MdxWhenClause
MdxAxis
An Mdx representing an axis such as ROWS
or COLUMNS
and its associated expression.
Property | Type | Description |
---|---|---|
elementType | "Axis" | |
expression | MdxExpression | |
name | AxisName | |
nonEmpty | boolean | |
properties | Mdx[] |
MdxCaseExpression
An Mdx representing a CASE
statement.
Property | Type | Description |
---|---|---|
cases | MdxWhenClause[] | |
elementType | "CaseExpression" | |
elseExp | MdxExpression | |
match | MdxExpression | null | |
name | string |
MdxCompoundIdentifier
The subset of Mdxs that identify something using hierarchical dot notation, as in the MDX [Measures].[MyMeasure]
. Each segment is an MdxIdentifier.
- MdxUnknownCompoundIdentifier
- MdxDimensionCompoundIdentifier
- MdxHierarchyCompoundIdentifier
- MdxLevelCompoundIdentifier
- MdxMemberCompoundIdentifier
- MdxMeasureCompoundIdentifier
- MdxNamedSetCompoundIdentifier
MdxDimensionCompoundIdentifier
A MdxCompoundIdentifier that represents a dimension.
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] | |
dimensionName | DimensionName | |
type | "dimension" |
MdxDrillthrough
An Mdx representing a DRILLTHROUGH
statement.
Property | Type | Description |
---|---|---|
columns | MdxExpression[] | |
elementType | "Drillthrough" | |
firstRow | number | |
maxRows | number | |
select | MdxSelect |
MdxErrorDetails
Property | Type | Description |
---|---|---|
expected | string[] | |
from | { line: number; ch: number; } | |
text | string | |
to | { line: number; ch: number; } |
MdxExpression
The subset of Mdxs that can be used in expression contexts such as the expression of a calculated measure.
MdxFormula
An Mdx representing an formula definition in the WITH
clause of a MdxSelect. An example formula: WITH Member [Measures].[MyConstant] AS 42
.
Property | Type | Description |
---|---|---|
elementType | "Formula" | |
expression | MdxExpression | |
inlined | boolean | undefined | |
name | MdxNamedSetCompoundIdentifier | MdxMeasureCompoundIdentifier | MdxMemberCompoundIdentifier | MdxUnknownCompoundIdentifier | |
properties | MdxMemberPropertyDefinition[] | |
type | string |
MdxFromClause
An Mdx representing a named cube for the FROM
clause of a MdxSelect. Does not represent a subselect expression in a FROM
clause – that is represented by a MdxSubSelect instead.
Property | Type | Description |
---|---|---|
cubeName | CubeName | |
elementType | "From" |
MdxFunction
An Mdx representing a function call. Some functions are called with syntax that makes them look like an operator or part of the language; see Syntax for the different syntaxes for calling functions.
Property | Type | Description |
---|---|---|
arguments | MdxExpression[] | |
elementType | "Function" | |
name | string | |
syntax | Syntax |
MdxHierarchyCompoundIdentifier
A MdxCompoundIdentifier that represents a hierarchy.
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] | |
dimensionName | DimensionName | |
hierarchyName | HierarchyName | |
type | "hierarchy" |
MdxIdentifier
An Mdx representing an identifier – the name of a hierarchy, level, measure, KPI, etc. For example, this could represent the MDX Geography
or [Geography]
. A MdxCompoundIdentifier is made of these separated by dots.
Property | Type | Description |
---|---|---|
elementType | "Identifier" | |
quoting | Quoting | |
value | string |
MdxLevelCompoundIdentifier
A MdxCompoundIdentifier that represents a level.
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] | |
dimensionName | DimensionName | |
hierarchyName | HierarchyName | |
levelName | LevelName | |
type | "level" |
MdxLiteral
An Mdx representing a literal value such as a number or string.
Property | Type | Description |
---|---|---|
elementType | "Literal" | |
type | Argument | |
value | string |
MdxMeasureCompoundIdentifier
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] | |
measureName | MeasureName | |
type | "measure" |
MdxMemberCompoundIdentifier
A MdxCompoundIdentifier that represents a member.
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] | |
dimensionName | DimensionName | |
hierarchyName | HierarchyName | |
levelName | LevelName | |
path | string[] | |
type | "member" |
MdxMemberPropertyDefinition
An Mdx representing the definition of a property of a member that is defined in a MdxFormula. Some example property names are FORE_COLOR
and FONT_FLAGS
.
Property | Type | Description |
---|---|---|
elementType | "MemberPropertyDefinition" | |
expression | MdxExpression | |
name | string |
MdxNamedSet
Property | Type | Description |
---|---|---|
caption | string | |
cube | CubeName | |
description | string | |
expression | MdxString | |
name | AxisName | |
serverUrl | string | |
type | "namedSet" |
MdxNamedSetCompoundIdentifier
A MdxCompoundIdentifier that represents a named set.
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] | |
setName | SetName | |
type | "namedSet" |
MdxOrderFunction
An MdxFunction that represents a call to the [Order
function](https://docs.microsoft.com/en-us/sql/mdx/order-mdx).
- MdxFunction & MdxFunction & { arguments: [MdxExpression, MdxExpression, OrderModeMdxLiteral]
- [MdxExpression, MdxExpression]; name: "Order"; }
MdxSelect
An Mdx representing a SELECT statement.
Property | Type | Description |
---|---|---|
axes | MdxAxis[] | |
cellProps | string[] | |
elementType | "Select" | |
from | MdxSubSelect | MdxFromClause | |
slicerAxis | MdxSlicerAxis | null | |
withClause | MdxFormula[] |
MdxSlicerAxis
MdxAxis & {
name: "SLICER";
}
MdxString
A string representing an [MDX](https://en.wikipedia.org/wiki/MultiDimensional\_eXpressions) query or a part of one.
string
For example:
const mdx = 'SELECT\n [Measures].[contributors.COUNT] ON COLUMNS\n FROM [EquityDerivativesCube]';
For example:
const mdx = '[Measures].[contributors.COUNT]';
For example:
const mdx = '"a string in MDX"';
For example:
const mdx = '123';
MdxSubSelect
An Mdx representing a subselect expression.
Property | Type | Description |
---|---|---|
axes | MdxAxis[] | |
elementType | "SubSelect" | |
from | MdxSubSelect | MdxFromClause | |
nonVisualTotals | boolean | |
slicerAxis | MdxSlicerAxis | null |
MdxUnknownCompoundIdentifier
A MdxCompoundIdentifier representing an unknown identifier.
Property | Type | Description |
---|---|---|
elementType | "CompoundIdentifier" | |
identifiers | MdxIdentifier[] | |
type | "unknown" |
Remarks:
This type is used for any MDX compound identifier whose type cannot be identified. It is the case for all compound identifiers in the raw result of parsing an MDX string. It can then be further refined by confronting it to the dataModel and calling getSpecificCompoundIdentifier
.
MdxWhenClause
An Mdx representing a WHEN
clause of a MdxCaseExpression, including the clause’s THEN
true result expression.
Property | Type | Description |
---|---|---|
elementType | "When" | |
then | MdxExpression | |
when | MdxExpression |
Measure
Property | Type | Description |
---|---|---|
caption | string | |
description | string | |
expression | string | |
folder | string | |
formatString | string | |
measureGroup | string | |
name | MeasureName | |
type | string | |
visible | boolean |
MeasureGroup
Property | Type | Description |
---|---|---|
caption | string | |
description | string | |
name | string |
MeasureInMapping
A tile in the widget mapping, representing a measure.
Property | Type | Description |
---|---|---|
caption | string | Optional caption for query-scoped calculated measures. For regular measures, the caption defined in the cube is used. |
measureName | string | |
type | "measure" |
MeasureName
The readable name of a measure in a cube.
string
For example:
const measureName = 'pnl.SUM';
MeasureNode
A data model tree node representing a measure
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
measure | Measure | |
type | "measure" |
MeasuresFolderNode
A data model tree node representing a measuresFolder
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
type | "measuresFolder" |
MeasureUniqueName
A string representing the unique identifier of a measure in a cube.
string
For example:
const measureUniqueName = '[Measures].[pnl.SUM]';
Member
Property | Type | Description |
---|---|---|
captionPath | string[] | |
namePath | string[] | |
properties | { [key: string]: unknown; } | Properties attached to each member in CellSet positions.In Atoti UI, these properties are used in table header cells to: - Display extra information on hover. - Infer whether the cell can be drilled down.See https://learn.microsoft.com/en-us/analysis-services/multidimensional-models/mdx/mdx-member-properties?view=asallproducts-allversions |
MemberCoordinates
Coordinates identifying a Member.
HierarchyCoordinates & {
namePath: string[];
}
MenuItemPlugin
Plugin useful for items in the context menus of widgets or in the top right widget menu.
Property | Type | Description |
---|---|---|
key | string | |
translations | { [locale: string]: TranslationTree<string>; } | |
doesContextMenuCloseOnClick | boolean | Whether clicking the menu item closes the context menu. true by default. |
useMenuItem | (props: MenuItemProps<WidgetState, SelectionType>) => Omit<MenuItemType, "key"> | Omit<SubMenuType, "key"> | undefined |
MenuItemProps
ActionProps<WidgetState, SelectionType>
NamedSetInMapping
A tile in the widget mapping, representing a named set.
Property | Type | Description |
---|---|---|
name | string | |
type | "namedSet" |
NodeIconProps
Property | Type | Description |
---|---|---|
node | InternalNode<NodeType> | |
style | CSSProperties |
NodeProps
Property | Type | Description |
---|---|---|
caretStyle | CSSProperties | |
contextMenuItems | ItemType[] | |
data | InternalNode<NodeType>[] | |
getDefaultCaption | (node?: NodeType) => string | |
hasCheckbox | boolean | |
hasSelectedChildren | boolean | |
hoverStyle | CSSProperties | |
Icon | ComponentType<NodeIconProps<NodeType>> | null | |
index | number | |
isEdited | boolean | |
isExpandable | boolean | |
isExpanded | boolean | |
isFocused | boolean | |
isPopoverOpen | boolean | |
isSelected | boolean | |
onClick | (item: InternalNode<NodeType>, event: ReactMouseEvent<HTMLDivElement>) => void | |
onEditCanceled | () => void | |
onEditEnded | (path: number[], caption: string) => void | |
onEditStarted | (path: number[]) => void | |
onExpandToggled | (item: InternalNode<NodeType>, isExpanding: boolean) => void | |
popoverContent | JSX.Element | |
popoverInnerHeight | number | |
popoverTitle | string | |
searchValue | string | |
selectionStyle | CSSProperties | |
style | CSSProperties | |
tooltip | JSX.Element | |
tooltipDelay | number | |
trees | TreeObject<NodeType>[] |
NonEmptyEvaluationMeasureSetting
Controls the measure used to filter out empty members in the list presented to the user when creating or editing a filter on a hierarchy. Members with no value for this measure are considered empty and are omitted from this list.
This measure defaults to contributors.COUNT
, and can be configured: - globally, by defining the setting value as a single measure name - or on a per hierarchy basis, by defining the setting value as a map from hierarchy unique name to measure name. This map also has a special default
key, to define the measure that should be used for a hierarchy that is not expressed in the map.
- string
- Partial<{
[hierarchyUniqueName: string]: string;
default: string;
}>
NumberFormat
The types of number format, corresponding to ways to abbreviate big numbers in order to make them more legible.
- "number"
- "thousands"
- "millions"
- "percentage"
- "billions"
OpenCommandPaletteAction
Redux action to open the command palette. See isCommandPaletteVisible
in State.
Property | Type | Description |
---|---|---|
type | "openCommandPalette" |
OrderMode
- "ASC"
- "DESC"
- "BASC"
- "BDESC"
OrderModeMdxLiteral
An MdxLiteral that represents one of the OrderMode strings.
MdxLiteral & {
type: "STRING";
value: OrderMode;
}
Permission
The permissions of a ContentEntry of a file or folder.
Permissions
Flat map containing the permissions of the user regarding the behavior of various parts of Atoti. Permissions can be defined on the Content Server for the whole organization, a role (= group of users), or an individual user. In case of conflict, the most permissive permission prevails. Contrarily to Settings, a non-admin user cannot change their own permissions.
Property | Type | Description |
---|---|---|
applicationMenus | Allowlist | The menus available in the application header, such as Edit -> Undo. |
canManageContent | boolean | Whether the user can create, save, edit, and move dashboards. |
canShare | boolean | Whether the user can share content. |
canUseCalculatedMeasures | boolean | Whether the calculated measures creation and edition popup is accessible. |
canUseUserFilters | boolean | Whether the "All dashboards" section is visible in the filters tab and taken into account by widgets. When enabled, it allows users to create filters that apply to all dashboards they visit. |
canUseUserQueryContext | boolean | Whether the "All dashboards" section is visible in the query context tab and taken into account by widgets. When enabled, it allows users to create a global query context, which applies to all dashboards they visit. |
contextValues | Allowlist | Names of the context values that are visible to the user, provided that they are defined in the cube. |
tools | Allowlist | The tools available in the horizontal bar to the right of the data model, such as the fields tab. |
widgetMenuItems | Allowlist | Keys of the menu item plugins that are granted to the user, provided that they are defined in the plugin registry. |
widgets | Allowlist | Keys of the widget plugins that are granted to the user, provided that they are defined in the plugin registry. |
widgetTitleBarButtons | Allowlist |
PlotlyOverrides
Plotly configuration overrides that can be made in the chart's configuration.
Property | Type | Description |
---|---|---|
config | Partial<Plotly.Config> | |
data | DataOverrides | |
layout | Partial<Plotly.Layout> |
PlotlyStyle
Style attributes (widgetState.style
) of Plotly widgets.
Property | Type | Description |
---|---|---|
measures | { [measureName: string]: FieldStyle; } | |
tuples | { [tupleKey: string]: CSSProperties; } | |
areAxisTitlesVisible | boolean | |
axisLabelFontSize | number | The font size of the labels on the axes. |
hasSingleScale | boolean | Used for Plotly "Columns and lines" charts. This indicates whether there is a single scale used between the columns and line values on the y-axes. If set to false, two different scales are used for the y-axes. |
isTextVisible | boolean | Whether values are displayed as text labels on chart elements. |
markerSize | number | The size of the chart markers. |
PlotlyWidgetState
Property | Type | Description |
---|---|---|
areFiltersDrivenByMdx | boolean | Whether the filters applied to the query when it is sent to the server are driven by: 1. widgetState.query.mdx (when true). It allows users to write filters as they like in the query tab. 2. dashboardState.filters , pageState.filters and widgetState.filters (when false). It allows a single source of truth for dashboard and page filters, preventing bugs.Defaults to false.In practice it is set to true when the user submits an MDX query in the query tab. It it set to false when filters are changed using other UI elements, such as the content or filters tab. |
query | Partial<Query<T extends "serialized" ? MdxString : MdxType>> | |
serverKey | string | |
shouldUseDefaultColumns | MdxType extends MdxDrillthrough ? boolean : never | Whether the columns specified in the drillthrough.defaultSelectedColumns setting are used in the drillthrough query. It is useful when performing a drillthrough from another widget, as it allows to create the drillthrough widget right away, while triggering the query only once the default columns have been fetched. |
mapping | T extends "serialized" ? SerializedDataVisualizationWidgetMapping : DataVisualizationWidgetMapping | |
style | Style | |
switchedTo | string | |
isInExpandMode | boolean | Whether the chart is in "drill down mode". When in drill down mode, the user can click a bar in order to filter on it and drill deeper into its children. |
plotly | PlotlyOverrides | |
subplotLimits | SubplotLimits | |
visibleGrandTotals | AxisId[] | |
visibleSubTotals | LevelUniqueName[] |
Plugin
Any type of Atoti UI plugin.
- CellPlugin<any>
- CellStylePlugin<any>
- MenuItemPlugin<any>
- TitleBarButtonPlugin<any>
- WidgetPlugin<any>
PluginRegistry
All Atoti UI plugins registered by the application using the SDK.
Property | Type | Description |
---|---|---|
"cell-style" | PluginsOfType<CellStylePlugin> | |
"menu-item" | PluginsOfType<MenuItemPlugin<any, any>> | |
"titlebar-button" | PluginsOfType<TitleBarButtonPlugin<any, any>> | |
cell | PluginsOfType<CellPlugin> | |
widget | PluginsOfType<WidgetPlugin<any, any>> |
PluginsOfType
The plugins of a certain type (e.g. all registered widget plugins)
PluginsProviderProps
Property | Type | Description |
---|---|---|
value | PluginRegistry | null |
PluginType
A type of Plugin.
- "cell"
- "cell-style"
- "menu-item"
- "titlebar-button"
- "widget"
PositionInDashboard
The position of a widget within the dashboard. This information is available in all components in a widget when it is in a dashboard.
Property | Type | Description |
---|---|---|
layoutPath | number[] | The path describing the location of the widget within the page's layout. Can be used for operations within the layout, such as moving to a different place in the page. |
leafKey | string | Identifies the leaf in the page where a widget is located. Allows the widget to retrieve its state in pageState.content. |
pageKey | string | Identifies which page the widget is on. |
Query
Property | Type | Description |
---|---|---|
context | { [key: string]: string; } | Context values usable as input for server-side calculations. E.g. the confidence level for value at risk calculation. |
mdx | T | Query to execute. |
ranges | { [axisId in AxisId]?: QueryRange; } | Ranges of positions that should be returned by the server. E.g. "only return the first 100 rows and the first 20 columns". |
updateMode | UpdateMode | Whether the query is only run once, or kept open in order to receive real-time updates. |
QueryContextEntry
A piece of a query's context. Allows to parametrize the behavior of Atoti Server when it answers the query.
Property | Type | Description |
---|---|---|
key | string | |
value | string |
Remarks:
Technical query context entries should not be accessible to end users. Functional query context entries can usually be replaced by analysis hierarchies, which offer a better experience to end users. Query context entries are still used by legacy projects, particularly in finance.
For example:
timeout, target currency, VaR sensitivity.
QueryRange
The range of results to fetch, in the case of infinite scrolling.
QueryResult
Property | Type | Description |
---|---|---|
data | ResultType | The data for this result, either a CellSet or a DrillthroughResult |
error | ErrorInQueryResult | |
isLoading | boolean |
QuickFilterDisplayMode
The different ways in which a quick filter widget can be displayed.
- "select"
- "multi-select"
- "checkbox"
- "radio"
- "tree"
- "calendar"
QuickFilterWidgetState
The state of a pluginWidgetQuickFilter.
Property | Type | Description |
---|---|---|
query | { updateMode?: UpdateMode; } | |
cubeName | CubeName | |
levelCoordinates | LevelCoordinates | |
mode | QuickFilterDisplayMode | |
serverKey | string |
Quoting
- "QUOTED" /** * Unquoted identifier, for example `Geography`. */
- "UNQUOTED" /** * Identifier quoted with an ampersand to indicate a key value, for example the second segment in `[Geography].&[France]`. */
- "AMP_QUOTED"
Range
Property | Type | Description |
---|---|---|
from | number | |
to | number |
ResourcesPanelChangedAction
Redux action to change the currently open resources panel. See resourcesPanelKey
in State.
Property | Type | Description |
---|---|---|
resourcesPanelKey | "data-model" | "widgets" | "filters" | |
type | "resourcesPanelChanged" |
RootTilePositionWithinSection
Property | Type | Description |
---|---|---|
tileIndex | number |
SectionPositionWithinWizard
The position of a section within a Wizard.
Property | Type | Description |
---|---|---|
sectionName | string |
SerializedDataVisualizationWidgetMapping
The attributes to fields mapping, specific to a given type of data visualization widget. Contains serialized fields. See DataVisualizationWidgetMapping
For example:
{
rows: [
"[Currency].[Currency].[Currency]"
]
}
ServerNode
A data model tree node representing a server
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
type | "server" |
ServiceKey
- "sentinel"
- "jwt"
- "pivot"
- "repository"
- "content"
- "reporting"
- "activeviam/sentinel"
- "activeviam/jwt"
- "activeviam/pivot"
- "activeviam/repository"
- "activeviam/content"
- "activeviam/reporting"
ServicesVersions
Property | Type | Description |
---|---|---|
apis | { [serviceKey: string]: { versions: [ServiceVersion]; }; } | |
serverVersion | string | |
version | number |
ServiceVersion
Property | Type | Description |
---|---|---|
id | string | |
restPath | string | |
wsPath | string |
Set
Property | Type | Description |
---|---|---|
caption | string | |
description | string | |
expression | string | |
name | SetName |
SetName
string
SetNode
A data model tree node representing a set
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
set | Set | |
type | "set" |
SetsRootNode
A data model tree node representing a setsRoot
Property | Type | Description |
---|---|---|
caption | string | |
dragItem | any | |
isActionable | boolean | |
isDisabled | boolean | |
isFolder | boolean | |
cubeName | string | |
serverKey | string | |
type | "setsRoot" |
Settings
Flat map containing the preferences of the user regarding the behavior of various parts of Atoti.
Property | Type | Description |
---|---|---|
"dataModel.isSimplified" | boolean | When true , redundant/unactionable nodes of the data model tree are hidden: dimensions and the level of "single level hierarchies". When false , the data model tree displays the data model as it is. |
"drillthrough.defaultSelectedColumns" | { [cubeName: string]: DrillthroughColumnUniqueName[]; } | The set of columns that are selected by default when opening a drillthrough table, per cube. If none are specified for a given cube, all the available drillthrough columns in this cube are selected. |
"filters.default.hiddenHierarchies" | string[] | The unique names of hierarchies hidden from the default filters section of the Filters tab. In the format: [Dimension].[Hierarchy]. |
"filters.hideMissingHierarchiesAlert" | boolean | Whether the missing filter hierarchies alert banner is displayed on widgets when there exists a filter whose dimension or hierarchy does not exist on the target cube. |
"lastUsedCube.isEnabled" | boolean | Whether the last used cube by a user is taken into account when defaulting to a cube. The order of precedence is: cube used in the mdx -> last used cube -> first available cube. |
"mdx.doesIncludeCalculatedMembers" | boolean | Whether calculated members are requested in MDX queries. Changing this setting only affects the queries generated by future user interactions. It does not have any impact on already saved widgets and dashboards. |
"search.maxResults" | number | The maximum number of search results. |
"smartFiltering.ignoredHierarchies" | string[] | The unique names of the hierarchies to ignore in the smart filtering context: - When adding a filter on an ignored hierarchy, all members are displayed for selection. - When adding a filter on another hierarchy, the filters on the ignored hierarchy are *not* taken into account to retrieve the list of members displayed for selection.This can typically be used to disable smart filtering for an analysis hierarchy. |
"smartFiltering.isEnabled" | boolean | Whether smart filtering is enabled. True by default. If switched to false, smart filtering is completely disabled for all hierarchies of all cubes. Smart filtering is the fact that, when the user opens the "Filter on" popover, only the members that exist in the scope of the filters they set above are presented to them. When it is disabled, all members are shown in this popover, even though filtering on some of them can make the widget empty because there is no data for these members in combination with the other filters already applied to the widget. Smart filtering can also be disabled on a per hierarchy basis, using the smartFiltering.ignoredHierarchies setting. |
"smartFiltering.nonEmptyEvaluationMeasureName" | NonEmptyEvaluationMeasureSetting | See NonEmptyEvaluationMeasureSetting |
"style.members" | { [tupleKey: string]: CSSProperties; } | The styles to be applied to the chart traces corresponding to each of the given tupleKeys . |
"table.animations.areEnabled" | boolean | Whether changes in tables are highlighted with green and red animations. |
"table.animations.duration" | number | The duration in seconds of the table animation. |
"table.animations.threshold" | number | { [measureName: "default" | string]: number; } | The threshold per measure of when changes in tables are highlighted by animations. When provided, animations only occur when the difference between the previous and the refreshed value is above the threshold. If just a number, then it is a global threshold for all measures. |
"table.copyColumnHeadersAsASingleRow" | boolean | Whether the table rows representing column headers are joined into a single row when copying and pasting data into another application such as Excel. |
"table.defaultSize" | "small" | "medium" | "large" | The default size of table widgets. Controls the column widths and the row heights. |
"table.headers.wrap" | boolean | Whether the text content of table headers wrap to the next line if it contains multiple words and is too long, or if sticks to a single line and has an ellipsis instead. This attribute can also be configured on a per table basis, using its style tab. |
"table.rowNumbers" | boolean | Whether row numbers are present by default on tables. These row numbers can also be hidden or shown on a per table basis, using its style tab. |
"table.tooltips" | boolean | Whether tooltips are present by default on numeric table cells. These tooltips can also be hidden or shown on a per table basis, using its style tab. |
"totals.areAddedByDefault" | boolean | Whether totals are added by default when a hierarchy is added to a widget. Totals can still be added or removed from a widget using the "Totals" context menu item. |
"unsavedChangesPopup.isEnabled" | boolean | Whether a warning popup is displayed when leaving a dashboard with unsaved changes. |
csvSeparator | string | The separator used between cells when converting to CSV. |
homePageLayout | "grid" | "list" | The layout mode for the homepage. |
theme | "light-activeviam" | "dark-activeviam" | string | Controls the style of all Atoti UI components. Must be "light-activeviam", "dark-activeviam" or the key of a theme provided through configuration.themes . See Configuration. |
Side
- "center"
- "top"
- "right"
- "bottom"
- "left"
State
The state of Atoti UI. It can be extended through Configuration.
Property | Type | Description |
---|---|---|
activeToolKey | string | null | The unique key identifying the tool currently open to the right of the data model. null if no tool is open. |
dashboard | StateWithHistory<DashboardState | null> | The state of the dashboard, or null if no dashboard is loaded. |
expandedFolderPathsInHomePage | string[][] | The expanded folders in the dashboards tree in the home page. |
isCommandPaletteVisible | boolean | Whether the command palette is visible. |
isDataModelTreeExpanded | boolean | Whether the data model tree is expanded or collapsed. |
isDeferred | boolean | Whether deferred updates are enabled for MDX queries fired by widgets in the dashboard. |
isOpenDashboardPopupVisible | boolean | Whether the 'Open Dashboard' popup is visible. |
isPresenting | boolean | Whether the application is in presentation mode. |
isSaveDashboardAsModalVisible | boolean | Whether the dashboard 'Save as' modal is visible. |
isSettingsPopupVisible | boolean | Whether the 'Settings' popup is visible. |
isShareDashboardModalVisible | boolean | Whether the dashboard 'Share' modal is visible. |
isToolsPanelExpanded | boolean | Whether the tools panel is expanded. |
isWidgetsPanelVisible | boolean | Whether the widgets panel is visible. |
lastSavedDashboardHash | number | null | A hash of the dashboard state, useful to efficiently determine whether the dashboard has unsaved changes. See getHasUnsavedChanges |
resourcesPanelKey | "data-model" | "widgets" | "filters" | The open resource panel, located to the left of the application. |
statusNotifications | StatusNotification[] | The notifications about the status of asynchronous actions in progress. |
widgetSelection | WidgetSelectionState | null | The key of the selected widget in each page. |
widgetsPanelWidth | number | The width of the widgets panel, when it is visible. |
StatusNotification
Redux action to notify the user about the status of the asynchronous actions (for instance saving a dashboard) taking place. See statusNotification
in State.
Property | Type | Description |
---|---|---|
action | "saving" | "loading" | |
id | string | |
status | "pending" | "fulfilled" | "rejected" |
StatusNotificationAddedAction
Property | Type | Description |
---|---|---|
type | "statusNotificationAdded" |
StatusNotificationRemovedAction
Property | Type | Description |
---|---|---|
type | "statusNotificationRemoved" |
StatusNotificationSettledAction
Property | Type | Description |
---|---|---|
status | "fulfilled" | "rejected" | |
type | "statusNotificationSettled" |
SubmittedKpiComparison
- HierarchyCoordinates & HierarchyCoordinates & { referenceMemberNamePath: string[]
- DynamicMemberNamePath; comparedMemberNamePath: string[]
- DynamicMemberNamePath; }
SubplotLimits
Maximum number of subplots that will be displayed horizontally and vertically.
Property | Type | Description |
---|---|---|
horizontal | number | |
vertical | number |
SubtilePositionWithinSection
Property | Type | Description |
---|---|---|
tileIndex | number | |
subtileIndex | number |
Syntax
- "Property" /** * Function style, e.g. `FUNCTION()` or `FUNCTION(args)`. */
- "Function" /** * Method style, e.g. `object.METHOD()` or `object.METHOD(args)`. */
- "Method" /** * Infix style, e.g. `arg OPERATOR arg` (typically for operators such as '+' or 'AND'). */
- "Infix" /** * Prefix style, e.g. `OPERATOR arg` (typically for unary operators such as '-'). */
- "Prefix" /** * Parentheses style, e.g. `(ARG,...)` (used for tuple expressions) */
- "Parentheses" /** * Braces style, e.g. `{
ARG, ...
}` (used for set expressions) */ - "Braces"
TableCell
The minimal information representing a cell in the Table component. Note that this has no reality in terms of the data fetched from Atoti Server and it is entirely specific to the Table component.
- { caption: string; value: number
- string; }
- null
TableStateDerivedFromCellSet
The information derived from data
and used by CellSetTable and its children (including plugins).
Property | Type | Description |
---|---|---|
cells | CellSetTableCell[][] | The cells forwarded to the underlying Table component. The dimensions of the array include the frozen rows and columns. Only the cells of the body are filled, as the rendering of the header cells depend on more information, present in the metaData. |
columnHeaderIndices | { hierarchyIndex: number; levelIndex: number; }[] | Represents the level corresponding to each frozen row of the column header. |
columnIndexImpactingRowStyle | number | The index of the column whose conditional formatting impacts full rows, if applicable. |
columnsAxis | Axis | undefined | |
cube | Cube | |
data | CellSet | |
defaultMeasure | DefaultMember | |
hierarchyIndicesInCellSet | HierarchyIndicesInCellSet | |
indexOfMeasureOnSlicer | number | |
isRowHeaderTree | boolean | |
mapping | DataVisualizationWidgetMapping | |
memberPropertyKeys | string[] | |
numberOfColumnsInBody | number | |
numberOfFrozenColumns | number | |
numberOfFrozenRows | number | |
numberOfRowsInBody | number | |
rowHeaderIndices | { hierarchyIndex: number; levelIndex: number; }[] | |
rowsAxis | Axis | |
slicerAxis | Axis | |
sort | { orderMode: OrderMode | undefined; tupleCoordinates?: TupleCoordinates; levelCoordinates?: LevelCoordinates; } | |
staticHeaderCoordinatesOnColumns | TableStaticHeaderCoordinates[] | |
staticHeaderCoordinatesOnRows | TableStaticHeaderCoordinates[] | |
staticHeadersOnColumns | TableStaticHeader[] | |
staticHeadersOnRows | TableStaticHeader[] | |
styleImpactingRows | AFieldStyle | The style impacting full rows, if applicable. It corresponds to the style of the tupleImpactingRowStyle from TableWidgetStyle. For instance, if the table has currencies and measures on columns, the this tuple can be (EUR, delta.SUM). |
TableStaticHeader
- {
type: "Measures";
} - Level
TableStaticHeaderCoordinates
- {
dimensionName: "Measures";
hierarchyName: "Measures";
} - LevelCoordinates
TableWidgetPlugin
The more specific WidgetPlugin interface, suited for table widgets.
Property | Type | Description |
---|---|---|
key | string | |
translations | { [locale: string]: TranslationTree<string>; } | |
attributes | WidgetAttributes | |
attributesDrivingColors | string[] | The names of mapping attributes that can be used to customize colors using the Colors Editor. |
behaviorEditor | ComponentType<EditorProps<WidgetState>> | |
category | WidgetCategory | |
Component | ComponentType<WidgetPluginProps<WidgetState, SelectionType>> | |
contentEditor | ComponentType<EditorProps<WidgetState>> | |
contextMenuItems | string[] | |
doesSupportMeasuresRedirection | boolean | |
filtersEditor | ComponentType<EditorProps> | |
Icon | ComponentType<IconProps> | |
initialState | WidgetState | |
lazyLoading | { chunkSizes: Partial<Record<"columns" | "rows", number>>; } | Configuration of the maximum number of rows and columns that this widget fetches. Past these values, lazy loading kicks in: more rows and columns are only fetched dynamically when the user scrolls. When this attribute is omitted, it means that the widget does not support lazy loading and will fetch the entirety of the required data upfront. |
menuItems | string[] | |
queryEditor | ComponentType<EditorProps<WidgetState>> | |
style | Style | |
styleEditor | ComponentType<EditorProps<WidgetState>> | |
subCategory | string | |
titleBarButtons | string[] | |
useOnDataModelNodeClicked | (widgetState: WidgetState) => (node: DataModelNode) => WidgetState | Controls what happens to the widget when the user clicks fields in the data model. |
cell | string | The key of the cell plugin to use. |
cellStyle | string | The key of the cell style plugin to use. |
TableWidgetState
Property | Type | Description |
---|---|---|
areFiltersDrivenByMdx | boolean | Whether the filters applied to the query when it is sent to the server are driven by: 1. widgetState.query.mdx (when true). It allows users to write filters as they like in the query tab. 2. dashboardState.filters , pageState.filters and widgetState.filters (when false). It allows a single source of truth for dashboard and page filters, preventing bugs.Defaults to false.In practice it is set to true when the user submits an MDX query in the query tab. It it set to false when filters are changed using other UI elements, such as the content or filters tab. |
query | Partial<Query<T extends "serialized" ? MdxString : MdxType>> | |
serverKey | string | |
shouldUseDefaultColumns | MdxType extends MdxDrillthrough ? boolean : never | Whether the columns specified in the drillthrough.defaultSelectedColumns setting are used in the drillthrough query. It is useful when performing a drillthrough from another widget, as it allows to create the drillthrough widget right away, while triggering the query only once the default columns have been fetched. |
mapping | T extends "serialized" ? SerializedDataVisualizationWidgetMapping : DataVisualizationWidgetMapping | |
style | Style | |
switchedTo | string | |
columnWidths | { [tupleKey: string]: number; } | The widths of columns that have been resized, in pixels. |
hiddenColumns | string[] | The tuple keys identifying the columns that have been hidden. |
TableWidgetStyle
The style attribute of a table widget state
Property | Type | Description |
---|---|---|
measures | { [measureName: string]: FieldStyle; } | |
tuples | { [tupleKey: string]: CSSProperties; } | |
areRowNumbersVisible | boolean | Whether row numbers are visible. Row numbers allow to select an entire row. When they are visible, a button in the top left corner of the table allows to select all the cells of the table. |
areTooltipsVisible | boolean | Whether tooltips are accessible on numeric cells. |
size | "large" | "medium" | "small" | The overall spacing within the table. Drives default row heights and column widths. Columns can then be resized individually. |
tupleImpactingRowStyle | TupleCoordinates | The tuple representing the column whose conditional formatting impacts row styles. |
wrapHeaders | boolean | Whether the text content of table headers wrap to the next line if it contains multiple words and is too long, or if sticks to a single line and has an ellipsis instead. |
TextEditorWidgetState
State of a pluginWidgetTextEditor widget.
Property | Type | Description |
---|---|---|
displayMode | "view" | "edit" | |
text | string |
Theme
Contains all style attributes used by Atoti UI components.
Property | Type | Description |
---|---|---|
activeMenuItemBackgroundColor | Color | The background color when a user hovers over a menu item. |
activeTabBackgroundColor | Color | The background color of the tab representing the active page in a dashboard. |
alternateBackgroundColor | Color | The alternative background color, for instance the color of a tile or a data model header. |
alternateCellBackgroundColor | Color | For table widgets the background color for the alternating color. |
backgroundColor | Color | The background color of the app. |
black | Color | Representative of the darkest color in the grayScale property, affects the overlay color. It is also the default color of header text and labels. |
cellBackgroundDuringNegativeTransition | Color | The background color of a cell when its value decreases in a real time query. |
cellBackgroundDuringPositiveTransition | Color | The background color of a cell when its value increases in a real time query. |
cellBorderColor | Color | The border color of table widgets. |
disabledBackground | Color | Background color when a menu item cannot be selected, primarily affects buttons. |
disabledTextColor | Color | Text color when a menu item cannot be selected. |
dropHintBorderColor | Color | The border color of the area that appears when a user is dragging and dropping widgets, either when trying to move the widget or when trying to place it from the widget insertion menu. |
dropHintColor | Color | The background color of the area that appears when a user is dragging and dropping widgets, either when trying to move the widget or when trying to place it from the ribbon. |
errorColor | Color | The default color for highlighting negative values. Inherently stands in for cellBackgroundDuringNegativeTransition if not supplied. Affects asterisks signifying required inputs as well. Used as background of tiles representing corrupted fields or filters in the wizard. Corrupted fields are fields that do not exist in the cube to which the widget is connected. |
grayScale | Color[] | An array of 14 colors representing a spectrum from the white property to the black property. If not provided it is constructed from the black and white properties. |
headerActiveColor | Color | The text or icon color of a menu item in the application header when it is active. |
hoverColor | Color | The text color when a user hovers over a menu item. Secondarily serves as the text and icon color of the currently active menu item. |
inactiveTabBackgroundColor | Color | The background color of the tabs representing pages that are not currently being viewed in the dashboard. |
isDark | boolean | Boolean flagging whether or not the theme is a dark variant. |
menuInlineSubmenuBg | Color | The background color of an inline sub menu. |
placeholderColor | Color | The text color for the placeholder title of a new widget. |
primaryColor | Color | The only mandatory theme color. It serves a the base color for all other colors if they are not provided. |
primaryScale | Color[] | An array of 10 colors representing a spectrum from light variants of primaryColor to dark variants of the primaryColor (in the opposite order when the theme is dark). If not provided it is constructed from the primaryColor property. |
selectedMenuItemBackground | Color | |
selectionColor | Color | The background color of the selected menu item. |
selectionMarkDarkColor | Color | The color of the checkmark in the color selector of the style tab if the selected color is light enough to provide contrast to a dark color. |
selectionMarkLightColor | Color | The color of the checkmark in the color selector of the style tab if the selected color is dark enough to provide contrast to a light color. |
selectionOverlayColor | Color | The overlay color to display when selecting a value in a widget cell. |
shadowColor | Color | |
successColor | Color | The default color for highlighting positive values, inherently stands in for cellBackgroundDuringPositiveTransition if not supplied. |
textColor | Color | Default text and icon color. |
warningColor | Color | Default color for warning alert icons i.e. when deleting dashboards. |
white | Color | Lightest color in the grayScale property, affects the text color when renaming a dashboard. |
TilePositionWithinSection
TilePositionWithinWizard
The position of a tile (or subtile) within a Wizard.
SectionPositionWithinWizard & TilePositionWithinSection
TimePeriod
- "month"
- "quarter"
- "year"
TitleBarButtonPlugin
Plugin useful to define buttons accessible next to the top right menu of widgets.
Property | Type | Description |
---|---|---|
key | string | |
translations | { [locale: string]: TranslationTree<string>; } | |
Component | ComponentType<ActionProps<WidgetState, SelectionType>> |
Tool
Tool accessible by clicking its icon
in the horizontal bar to the right of the data model. Useful to allow users to edit the dashboard or interact with it.
Property | Type | Description |
---|---|---|
component | ComponentType<EditorProps> | The component displayed when the user opens the tool. |
icon | ComponentType | The icon displayed in the horizontal bar and on which the user can click in order to open or close this tool. |
key | string | Identifies the tool. |
shortcut | string | The key of the shortcut to open this tool. For instance, "w" means that the user can open this tool by pressing "Alt" + "w". |
translations | { [locale: string]: { [key: string]: string; }; } | Translations specific to this tool. This is useful if you wish to include a tool within an extension (see ExtensionModule) in order to make it reusable across projects. |
type | "double" | "single" | Whether the tool contains two independently resizable parts, or if it is a single block. |
TopBottomMode
- "TopCount"
- "TopSum"
- "TopPercent"
- "BottomCount"
- "BottomSum"
- "BottomPercent"
Trace
- Omit<Partial<Plotly.PlotData>, "x"
- "y"
- "r"
- "theta"> & "theta"> & { _key: string; _styleKey?: string; _baseColor?: C; cellsIndices: (CellIndices[]
- null)[]; axisIndices?: (number
- null)[]; texttemplate?: string[]; } & (T extends "vertical" ? & (T extends "vertical" ? { x: (string
- null)[]; y: (number
- null)[]; } : unknown) & (T extends "horizontal" ? : unknown) & (T extends "horizontal" ? { x: (number
- null)[]; y: (string
- null)[]; } : unknown) & (T extends "scatter" ? : unknown) & (T extends "scatter" ? { x: (number
- null)[]; y: (number
- null)[]; } : unknown) & (T extends "radar" ? : unknown) & (T extends "radar" ? { r: (number
- null)[]; theta: string[]; } : unknown)
TraceType
Defines whether the trace has an ordinal horizontal axis and a numeric vertical one, or the other way around.
- "horizontal"
- "vertical"
- "noaxis"
- "scatter"
- "radar"
For example:
Lines and column charts are "vertical" whereas bar charts are "horizontal".
TranslationTree
A tree of translations identified by a key.
TreeContextMenuItemProps
Property | Type | Description |
---|---|---|
node | NodeType | |
onEditStarted | () => void | |
path | number[] | |
trees | TreeObject<NodeType>[] |
TreeContextMenuProps
Property | Type | Description |
---|---|---|
node | NodeType | |
onEditStarted | () => void | |
path | number[] | |
trees | TreeObject<NodeType>[] |
TreeObject
T & {
children?: TreeObject<T>[];
}
Tuple
The coordinates of an aggregate in a cube. Can be used for instance to represent a cell in a table or a point in a chart.
(HierarchyCoordinates & Member)[]
TupleCoordinates
Coordinates identifying a Tuple.
UpdateMode
Update mode for MDX query.
- "once"
- "realTime"
User
The name and roles of a user.
Property | Type | Description |
---|---|---|
username | string | |
userRoles | string[] |
UserName
The name of a user.
string
UserRole
The name of a role for users.
string
WidgetActionProps
Property | Type | Description |
---|---|---|
className | string | |
onWidgetChange | (newWidgetState: WidgetState) => void | |
queryId | string | |
selection | SelectionType | |
widgetState | WidgetState |
WidgetAttribute
Property | Type | Description |
---|---|---|
isMainAxis | boolean | Defines whether the attribute represents the main axis of the widget. Useful in the case of charts.The main axis of a line or column chart is xAxis . The one of a bar chart is yAxis . |
maxNumberOfFields | number | |
role | AttributeRole |
WidgetAttributes
An object containing WidgetAttribute values identified by their name.
WidgetCategory
- "dataVisualization"
- "editor"
- "filter"
- "monitor"
- "misc"
WidgetContent
The content of the file to fetch in order to render a dashboard. Like SerializedDashboardState, but name and value.widgetKey are omitted.
- Omit<AWidgetState<"serialized">, "name"
- "widgetKey">
WidgetInDashboardActionProps
Property | Type | Description |
---|---|---|
className | string | |
onWidgetChange | (newWidgetState: WidgetState) => void | |
queryId | string | |
selection | SelectionType | |
widgetState | WidgetState | |
dashboardState | DashboardState | |
layoutPath | number[] | |
leafKey | string | |
onActivePageChange | (newActivePageKey: string) => void | |
onDashboardChange | (newDashboardState: DashboardState) => void | |
pageKey | string |
WidgetMetaData
The content of the file to fetch in order to render the node representing a widget in the widgets tree.
Property | Type | Description |
---|---|---|
isFolder | boolean | |
name | string | |
version | number | The version is copied to AWidgetState each time a saved widget is added to a dashboard. It is incremented each time the saved widget is updated. It is used to know whether a saved widget and a copy of it within a dashboard are in sync. |
widgetKey | string |
WidgetPlugin
Plugin defining a component that can be used in a dashboard.
Property | Type | Description |
---|---|---|
key | string | |
translations | { [locale: string]: TranslationTree<string>; } | |
attributes | WidgetAttributes | |
attributesDrivingColors | string[] | The names of mapping attributes that can be used to customize colors using the Colors Editor. |
behaviorEditor | ComponentType<EditorProps<WidgetState>> | |
category | WidgetCategory | |
Component | ComponentType<WidgetPluginProps<WidgetState, SelectionType>> | |
contentEditor | ComponentType<EditorProps<WidgetState>> | |
contextMenuItems | string[] | |
doesSupportMeasuresRedirection | boolean | |
filtersEditor | ComponentType<EditorProps> | |
Icon | ComponentType<IconProps> | |
initialState | WidgetState | |
lazyLoading | { chunkSizes: Partial<Record<"columns" | "rows", number>>; } | Configuration of the maximum number of rows and columns that this widget fetches. Past these values, lazy loading kicks in: more rows and columns are only fetched dynamically when the user scrolls. When this attribute is omitted, it means that the widget does not support lazy loading and will fetch the entirety of the required data upfront. |
menuItems | string[] | |
queryEditor | ComponentType<EditorProps<WidgetState>> | |
style | Style | |
styleEditor | ComponentType<EditorProps<WidgetState>> | |
subCategory | string | |
titleBarButtons | string[] | |
useOnDataModelNodeClicked | (widgetState: WidgetState) => (node: DataModelNode) => WidgetState | Controls what happens to the widget when the user clicks fields in the data model. |
WidgetPluginInDashboardProps
Props received by a widget plugin component within a dashboard
Property | Type | Description |
---|---|---|
isDeferred | boolean | |
isSelected | boolean | |
onChange | (newState: WidgetState) => void | |
onLoaded | () => void | |
onSelectionChange | (newSelection: SelectionType) => void | |
queryId | string | |
style | CSSProperties | |
widgetState | WidgetState | |
dashboardState | DashboardState | |
layoutPath | number[] | |
leafKey | string | |
onActivePageChange | (newActivePageKey: string) => void | |
onDashboardChange | (newDashboardState: DashboardState) => void | |
pageKey | string |
WidgetPluginOutsideADashboardProps
Property | Type | Description |
---|---|---|
isDeferred | boolean | |
isSelected | boolean | |
onChange | (newState: WidgetState) => void | |
onLoaded | () => void | |
onSelectionChange | (newSelection: SelectionType) => void | |
queryId | string | |
style | CSSProperties | |
widgetState | WidgetState |
WidgetPluginProps
Props received by a widget plugin component.
- WidgetPluginOutsideADashboardProps<WidgetState, SelectionType>
- WidgetPluginInDashboardProps<WidgetState, SelectionType>
WidgetSelectedAction
Redux action to change the selected widget in a dashboard page. See widgetSelection
in State.
Property | Type | Description |
---|---|---|
leafKey | string | |
pageKey | string | |
type | "widgetSelected" |
WidgetSelectionState
The key of the selected widget in each page.
WidgetsPanelClosedAction
Redux action dispatched when the user closes the widgets panel. See isWidgetsPanelVisible
in State.
Property | Type | Description |
---|---|---|
type | "widgetPanelClosed" |
WidgetsPanelOpenedAction
Redux action dispatched when the user opens the widgets panel. See isWidgetsPanelVisible
in State.
Property | Type | Description |
---|---|---|
type | "widgetPanelOpened" |
WidgetWithQueryProps
Props received by a widget with a query.
WidgetPluginProps<WidgetState, SelectionType> & {
queryResult: QueryResult<ResultType>;
onQueryRangesChanged: (newRanges: Partial<{
[axisId in AxisId]: QueryRange;
}>) => void;
}
WidgetWithQueryState
The state of widgets using a query.
Property | Type | Description |
---|---|---|
areFiltersDrivenByMdx | boolean | Whether the filters applied to the query when it is sent to the server are driven by: 1. widgetState.query.mdx (when true). It allows users to write filters as they like in the query tab. 2. dashboardState.filters , pageState.filters and widgetState.filters (when false). It allows a single source of truth for dashboard and page filters, preventing bugs.Defaults to false.In practice it is set to true when the user submits an MDX query in the query tab. It it set to false when filters are changed using other UI elements, such as the content or filters tab. |
query | Partial<Query<T extends "serialized" ? MdxString : MdxType>> | |
serverKey | string | |
shouldUseDefaultColumns | MdxType extends MdxDrillthrough ? boolean : never | Whether the columns specified in the drillthrough.defaultSelectedColumns setting are used in the drillthrough query. It is useful when performing a drillthrough from another widget, as it allows to create the drillthrough widget right away, while triggering the query only once the default columns have been fetched. |
WidgetWithQueryUpdateModeState
The state of a widget with a query update mode. The difference with WidgetWithQueryState is that only the query update mode is configurable. The mdx and query context are managed internally by the widget.
Property | Type | Description |
---|---|---|
query | { updateMode?: UpdateMode; } |