Dashboard

The Dashboard context keeps the dashboard store state as well as its actions that changes the dashboard state.

Context value

type DashboardContext = {
    dashboard: LiveDashboard
    theme: LiveDashboardTheme
    params: {
        span: string,
        mode: LiveDashboardModes
    }
    highlightLock: boolean
    setHighlightLock: (lock: boolean) => void
    highlightedWidgetId?: number
    setHighlightedWidgetId: (id: number) => void
    actions: DashboardActions
    state: LiveDashboardState
}

Dashboard Actions

declare type DashboardActions = {
    fetchDashboard(id: string, restartSubscriber: boolean): void,
    setDashboard(data: Dashboard): void,
    saveDashboard(object: Dashboard): void,
    saveWidget(widget: LiveWidget, requestIndex: ?number, cb?: Function): void,
    changeMode(mode: $PropertyType<DashboardQueryParams, 'mode'>): void,
    duplicateWidget(widget: LiveWidget, cb?: Function): void,
    removeWidget(id: string): void,
    start(requestIndex: number): void,
    stop(requestIndex: string): void,
    setFilterConfig(config: FilterConfig): void,
    setInactiveFilterConfig(): void,
    setFilterValues(values: { [string]: string }): void,
    setTimespan(span: string, requestIndex: number, restart: boolean): void,
    updateSpan(action: 'apply' | void, span: string, requestIndex: number, percentage: number): void,
    setOrChangeTheme(theme: LiveDashboardTheme): void,
    attachOrDetach(requestIndex: number): void,
    detachedInViewMode(widgetId: string): void,
    resetDetachedInViewMode(widgetId: string): void,
    updateWidgetLayoutOptions(requestIndex: number, property: string, value: mixed): void,
    resizeLayout(): void,
    forceResizeLayout(): void,
    resetDefaults(): void,
    resizeWidgets(): void,
    disableTip(type: string): void,
    toggleWidgetError(requestIndex: number, event: Object): void,
    updateWidgetViewConfig(id: string, config: LiveWidgetConfig, sideEffects: { updateQuery: boolean }): void,
    restoreWidgetViewConfig(id: string): void,
    toggleWidgetConfigApprove(id: string, approved: boolean): void,
    updateWidgetUI(id: string, type: string, config: Object): void,
    updateUserLayout(layout: LayoutConfig): void,
    updateLayoutConfig(config: LayoutConfig): void,
    setDeviceType(device: Device): void,
    applyLayoutTo(allOrCurrent: 'all' | 'current'): void,
    setHiddenWidgets(hiddenWidgets: number[]): void,
    updateHiddenWidgets(id: string): void,
    hideLayoutAlert(): void,
    changeSpanPickerConfig(id: string, type: string, config: Object): void
}

Usage

Other Dashboard Types

Last updated

Was this helpful?