mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Dashboard: Refactor dashboard reducer & actions (#22021)
* Dashboard: Refactor dashboard reducer & actions * Dashboard: minor refactoring * Minor cleanup
This commit is contained in:
@@ -1,42 +1,12 @@
|
||||
// Services & Utils
|
||||
import { createAction } from '@reduxjs/toolkit';
|
||||
import { getBackendSrv } from '@grafana/runtime';
|
||||
import { createSuccessNotification } from 'app/core/copy/appNotification';
|
||||
// Actions
|
||||
import { loadPluginDashboards } from '../../plugins/state/actions';
|
||||
import { loadDashboardPermissions } from './reducers';
|
||||
import { notifyApp } from 'app/core/actions';
|
||||
// Types
|
||||
import {
|
||||
DashboardAcl,
|
||||
DashboardAclDTO,
|
||||
DashboardAclUpdateDTO,
|
||||
DashboardInitError,
|
||||
MutableDashboard,
|
||||
NewDashboardAclItem,
|
||||
PermissionLevel,
|
||||
ThunkResult,
|
||||
} from 'app/types';
|
||||
import { DataQuery } from '@grafana/data';
|
||||
|
||||
export const loadDashboardPermissions = createAction<DashboardAclDTO[]>('dashboard/loadDashboardPermissions');
|
||||
|
||||
export const dashboardInitFetching = createAction('dashboard/dashboardInitFetching');
|
||||
|
||||
export const dashboardInitServices = createAction('dashboard/dashboardInitServices');
|
||||
|
||||
export const dashboardInitSlow = createAction('dashboard/dashboardInitSlow');
|
||||
|
||||
export const dashboardInitCompleted = createAction<MutableDashboard>('dashboard/dashboardInitCompleted');
|
||||
|
||||
/*
|
||||
* Unrecoverable init failure (fetch or model creation failed)
|
||||
*/
|
||||
export const dashboardInitFailed = createAction<DashboardInitError>('dashboard/dashboardInitFailed');
|
||||
|
||||
/*
|
||||
* When leaving dashboard, resets state
|
||||
* */
|
||||
export const cleanUpDashboard = createAction('dashboard/cleanUpDashboard');
|
||||
import { DashboardAcl, DashboardAclUpdateDTO, NewDashboardAclItem, PermissionLevel, ThunkResult } from 'app/types';
|
||||
|
||||
export function getDashboardPermissions(id: number): ThunkResult<void> {
|
||||
return async dispatch => {
|
||||
@@ -54,21 +24,6 @@ function toUpdateItem(item: DashboardAcl): DashboardAclUpdateDTO {
|
||||
};
|
||||
}
|
||||
|
||||
interface SetDashboardQueriesToUpdatePayload {
|
||||
panelId: number;
|
||||
queries: DataQuery[];
|
||||
}
|
||||
|
||||
export const clearDashboardQueriesToUpdate = createAction('dashboard/clearDashboardQueriesToUpdate');
|
||||
export const setDashboardQueriesToUpdate = createAction<SetDashboardQueriesToUpdatePayload>(
|
||||
'dashboard/setDashboardQueriesToUpdate'
|
||||
);
|
||||
export const setDashboardQueriesToUpdateOnLoad = (panelId: number, queries: DataQuery[]): ThunkResult<void> => {
|
||||
return async dispatch => {
|
||||
await dispatch(setDashboardQueriesToUpdate({ panelId, queries }));
|
||||
};
|
||||
};
|
||||
|
||||
export function updateDashboardPermission(
|
||||
dashboardId: number,
|
||||
itemToUpdate: DashboardAcl,
|
||||
|
||||
Reference in New Issue
Block a user