80 lines
2.3 KiB
JavaScript
80 lines
2.3 KiB
JavaScript
import * as types from '~/monitoring/stores/mutation_types';
|
|
import { metricsDashboardPayload } from './fixture_data';
|
|
import { metricsResult, environmentData, dashboardGitResponse } from './mock_data';
|
|
|
|
export const setMetricResult = ({ store, result, group = 0, panel = 0, metric = 0 }) => {
|
|
const { dashboard } = store.state.monitoringDashboard;
|
|
const { metricId } = dashboard.panelGroups[group].panels[panel].metrics[metric];
|
|
|
|
store.commit(`monitoringDashboard/${types.RECEIVE_METRIC_RESULT_SUCCESS}`, {
|
|
metricId,
|
|
data: {
|
|
resultType: 'matrix',
|
|
result,
|
|
},
|
|
});
|
|
};
|
|
|
|
const setEnvironmentData = (store) => {
|
|
store.commit(`monitoringDashboard/${types.RECEIVE_ENVIRONMENTS_DATA_SUCCESS}`, environmentData);
|
|
};
|
|
|
|
export const setupAllDashboards = (store, path) => {
|
|
store.commit(`monitoringDashboard/${types.SET_ALL_DASHBOARDS}`, dashboardGitResponse);
|
|
if (path) {
|
|
store.commit(`monitoringDashboard/${types.SET_INITIAL_STATE}`, {
|
|
currentDashboard: path,
|
|
});
|
|
}
|
|
};
|
|
|
|
export const setupStoreWithDashboard = (store) => {
|
|
store.commit(
|
|
`monitoringDashboard/${types.RECEIVE_METRICS_DASHBOARD_SUCCESS}`,
|
|
metricsDashboardPayload,
|
|
);
|
|
};
|
|
|
|
export const setupStoreWithLinks = (store) => {
|
|
store.commit(`monitoringDashboard/${types.RECEIVE_METRICS_DASHBOARD_SUCCESS}`, {
|
|
...metricsDashboardPayload,
|
|
links: [
|
|
{
|
|
title: 'GitLab Website',
|
|
url: `https://gitlab.com/website`,
|
|
},
|
|
],
|
|
});
|
|
};
|
|
|
|
export const setupStoreWithData = (store) => {
|
|
setupAllDashboards(store);
|
|
setupStoreWithDashboard(store);
|
|
|
|
setMetricResult({ store, result: [], panel: 0 });
|
|
setMetricResult({ store, result: metricsResult, panel: 1 });
|
|
setMetricResult({ store, result: metricsResult, panel: 2 });
|
|
|
|
setEnvironmentData(store);
|
|
};
|
|
|
|
export const setupStoreWithDataForPanelCount = (store, panelCount) => {
|
|
const payloadPanelGroup = metricsDashboardPayload.panel_groups[0];
|
|
|
|
const panelGroupCustom = {
|
|
...payloadPanelGroup,
|
|
panels: payloadPanelGroup.panels.slice(0, panelCount),
|
|
};
|
|
|
|
const metricsDashboardPayloadCustom = {
|
|
...metricsDashboardPayload,
|
|
panel_groups: [panelGroupCustom],
|
|
};
|
|
|
|
store.commit(
|
|
`monitoringDashboard/${types.RECEIVE_METRICS_DASHBOARD_SUCCESS}`,
|
|
metricsDashboardPayloadCustom,
|
|
);
|
|
|
|
setMetricResult({ store, result: metricsResult, panel: 0 });
|
|
};
|