Skip to content

Commit 7f62294

Browse files
authored
Babel: Target more modern browsers, updates browserlistrc (grafana#32573)
* Babel: Target more modern browsers, updates browserlistrc * Updates * Fixed circular dependencies, grafana booted
1 parent ee06970 commit 7f62294

31 files changed

+98
-89
lines changed

.babelrc

-14
This file was deleted.

.browserslistrc

+15-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,15 @@
1-
>1%,
2-
Chrome > 20
3-
last 4 versions,
4-
Firefox ESR
1+
[dev]
2+
last 1 chrome versions
3+
last 1 firefox versions
4+
last 1 safari versions
5+
6+
[production]
7+
last 2 Firefox versions
8+
last 2 Chrome versions
9+
last 2 Safari versions
10+
last 2 Edge versions
11+
last 1 ios_saf versions
12+
last 1 and_chr versions
13+
last 1 samsung versions
14+
15+

package.json

+7-6
Original file line numberDiff line numberDiff line change
@@ -67,20 +67,20 @@
6767
},
6868
"devDependencies": {
6969
"@babel/core": "7.13.14",
70-
"@rtsao/plugin-proposal-class-properties": "7.0.1-patch.1",
70+
"@babel/plugin-proposal-class-properties": "7.13.0",
7171
"@babel/plugin-proposal-nullish-coalescing-operator": "7.13.8",
72+
"@babel/plugin-proposal-object-rest-spread": "7.13.8",
7273
"@babel/plugin-proposal-optional-chaining": "7.13.12",
73-
"@babel/plugin-syntax-dynamic-import": "7.8.3",
74-
"@babel/plugin-proposal-class-properties": "7.13.0",
7574
"@babel/plugin-proposal-private-methods": "7.13.0",
76-
"@babel/plugin-proposal-object-rest-spread": "7.13.8",
75+
"@babel/plugin-syntax-dynamic-import": "7.8.3",
7776
"@babel/plugin-transform-react-constant-elements": "7.13.13",
7877
"@babel/preset-env": "7.13.12",
7978
"@babel/preset-react": "7.13.13",
8079
"@babel/preset-typescript": "7.13.0",
8180
"@grafana/api-documenter": "7.11.2",
8281
"@grafana/api-extractor": "7.10.1",
8382
"@grafana/eslint-config": "2.3.0",
83+
"@rtsao/plugin-proposal-class-properties": "7.0.1-patch.1",
8484
"@testing-library/jest-dom": "5.11.5",
8585
"@testing-library/react": "11.1.2",
8686
"@testing-library/react-hooks": "^3.2.1",
@@ -203,6 +203,7 @@
203203
"zone.js": "0.7.8"
204204
},
205205
"dependencies": {
206+
"@babel/plugin-transform-runtime": "^7.13.10",
206207
"@emotion/core": "10.0.27",
207208
"@grafana/aws-sdk": "0.0.3",
208209
"@grafana/slate-react": "0.22.9-grafana",
@@ -222,7 +223,6 @@
222223
"@types/react-virtualized-auto-sizer": "1.0.0",
223224
"@types/uuid": "8.3.0",
224225
"@welldone-software/why-did-you-render": "4.0.6",
225-
"history": "4.10.1",
226226
"abortcontroller-polyfill": "1.4.0",
227227
"angular": "1.8.2",
228228
"angular-bindonce": "0.3.1",
@@ -236,7 +236,7 @@
236236
"classnames": "2.2.6",
237237
"clipboard": "2.0.4",
238238
"common-tags": "^1.8.0",
239-
"core-js": "3.6.4",
239+
"core-js": "3.10.0",
240240
"d3": "5.15.0",
241241
"d3-force": "^2.1.1",
242242
"d3-scale-chromatic": "1.5.0",
@@ -247,6 +247,7 @@
247247
"fast-json-patch": "2.2.1",
248248
"fast-text-encoding": "^1.0.0",
249249
"file-saver": "2.0.2",
250+
"history": "4.10.1",
250251
"hoist-non-react-statics": "3.3.2",
251252
"immutable": "3.8.2",
252253
"is-hotkey": "0.1.6",

public/app/app.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import 'symbol-observable';
2-
import 'core-js/stable';
2+
import 'core-js';
33
import 'regenerator-runtime/runtime';
44

55
import 'whatwg-fetch'; // fetch polyfill needed for PhantomJs rendering

public/app/features/panel/panel_directive.ts

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,17 @@
1-
import angular from 'angular';
21
// @ts-ignore
32
import baron from 'baron';
43
import { PanelEvents } from '@grafana/data';
54
import { PanelModel } from '../dashboard/state';
65
import { PanelCtrl } from './panel_ctrl';
76
import { Subscription } from 'rxjs';
87
import { RefreshEvent, RenderEvent } from 'app/types/events';
9-
10-
const module = angular.module('grafana.directives');
8+
import { coreModule } from 'app/core/core_module';
119

1210
const panelTemplate = `
1311
<ng-transclude class="panel-height-helper"></ng-transclude>
1412
`;
1513

16-
module.directive('grafanaPanel', ($rootScope, $document, $timeout) => {
14+
coreModule.directive('grafanaPanel', ($rootScope, $document, $timeout) => {
1715
return {
1816
restrict: 'E',
1917
template: panelTemplate,

public/app/features/panel/query_editor_row.ts

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
import angular from 'angular';
2-
3-
const module = angular.module('grafana.directives');
1+
import { coreModule } from 'app/core/core_module';
42

53
export class QueryRowCtrl {
64
target: any;
@@ -43,4 +41,4 @@ function queryEditorRowDirective() {
4341
};
4442
}
4543

46-
module.directive('queryEditorRow', queryEditorRowDirective);
44+
coreModule.directive('queryEditorRow', queryEditorRowDirective);

public/app/features/variables/adapters.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import { Registry, UrlQueryValue, VariableType } from '@grafana/data';
44

55
import { VariableModel, VariableOption } from './types';
66
import { VariableEditorProps } from './editor/types';
7-
import { VariablesState } from './state/variablesReducer';
87
import { VariablePickerProps } from './pickers/types';
98
import { createQueryVariableAdapter } from './query/adapter';
109
import { createCustomVariableAdapter } from './custom/adapter';
@@ -14,6 +13,7 @@ import { createDataSourceVariableAdapter } from './datasource/adapter';
1413
import { createIntervalVariableAdapter } from './interval/adapter';
1514
import { createAdHocVariableAdapter } from './adhoc/adapter';
1615
import { createSystemVariableAdapter } from './system/adapter';
16+
import { VariablesState } from './state/types';
1717

1818
export interface VariableAdapter<Model extends VariableModel> {
1919
id: VariableType;

public/app/features/variables/adhoc/reducer.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import { reducerTester } from '../../../../test/core/redux/reducerTester';
22
import cloneDeep from 'lodash/cloneDeep';
33
import { getVariableTestContext } from '../state/helpers';
4-
import { toVariablePayload } from '../state/types';
4+
import { toVariablePayload, VariablesState } from '../state/types';
55
import { adHocVariableReducer, filterAdded, filterRemoved, filtersRestored, filterUpdated } from './reducer';
6-
import { VariablesState } from '../state/variablesReducer';
76
import { AdHocVariableFilter, AdHocVariableModel } from '../types';
87
import { createAdHocVariableAdapter } from './adapter';
98

public/app/features/variables/adhoc/reducer.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { AdHocVariableFilter, AdHocVariableModel, initialVariableModelState } from 'app/features/variables/types';
2-
import { getInstanceState, VariablePayload } from '../state/types';
2+
import { getInstanceState, VariablePayload, initialVariablesState, VariablesState } from '../state/types';
33
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
4-
import { initialVariablesState, VariablesState } from '../state/variablesReducer';
54

65
export interface AdHocVariabelFilterUpdate {
76
index: number;

public/app/features/variables/constant/reducer.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import { reducerTester } from '../../../../test/core/redux/reducerTester';
22
import cloneDeep from 'lodash/cloneDeep';
33
import { getVariableTestContext } from '../state/helpers';
4-
import { toVariablePayload } from '../state/types';
4+
import { toVariablePayload, VariablesState } from '../state/types';
55
import { constantVariableReducer, createConstantOptionsFromQuery } from './reducer';
6-
import { VariablesState } from '../state/variablesReducer';
76
import { ConstantVariableModel } from '../types';
87
import { createConstantVariableAdapter } from './adapter';
98

public/app/features/variables/constant/reducer.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
22
import { ConstantVariableModel, initialVariableModelState, VariableHide, VariableOption } from '../types';
3-
import { getInstanceState, VariablePayload } from '../state/types';
4-
import { initialVariablesState, VariablesState } from '../state/variablesReducer';
3+
import { getInstanceState, VariablePayload, initialVariablesState, VariablesState } from '../state/types';
54

65
export const initialConstantVariableModelState: ConstantVariableModel = {
76
...initialVariableModelState,

public/app/features/variables/custom/reducer.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import { reducerTester } from '../../../../test/core/redux/reducerTester';
22
import cloneDeep from 'lodash/cloneDeep';
33
import { getVariableTestContext } from '../state/helpers';
4-
import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE, toVariablePayload } from '../state/types';
4+
import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE, toVariablePayload, VariablesState } from '../state/types';
55
import { createCustomOptionsFromQuery, customVariableReducer } from './reducer';
66
import { createCustomVariableAdapter } from './adapter';
7-
import { VariablesState } from '../state/variablesReducer';
87
import { CustomVariableModel } from '../types';
98

109
describe('customVariableReducer', () => {

public/app/features/variables/custom/reducer.ts

+8-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
11
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
22

33
import { CustomVariableModel, initialVariableModelState, VariableOption } from '../types';
4-
import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE, getInstanceState, VariablePayload } from '../state/types';
5-
import { initialVariablesState, VariablesState } from '../state/variablesReducer';
4+
import {
5+
ALL_VARIABLE_TEXT,
6+
ALL_VARIABLE_VALUE,
7+
getInstanceState,
8+
VariablePayload,
9+
initialVariablesState,
10+
VariablesState,
11+
} from '../state/types';
612

713
export const initialCustomVariableModelState: CustomVariableModel = {
814
...initialVariableModelState,

public/app/features/variables/datasource/reducer.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
import { DataSourceInstanceSettings } from '@grafana/data';
22

33
import { reducerTester } from '../../../../test/core/redux/reducerTester';
4-
import { VariablesState } from '../state/variablesReducer';
54
import { createDataSourceOptions, dataSourceVariableReducer } from './reducer';
65
import { DataSourceVariableModel } from '../types';
76
import { getVariableTestContext } from '../state/helpers';
87
import cloneDeep from 'lodash/cloneDeep';
98
import { createDataSourceVariableAdapter } from './adapter';
10-
import { toVariablePayload } from '../state/types';
9+
import { toVariablePayload, VariablesState } from '../state/types';
1110
import { getMockPlugins } from '../../plugins/__mocks__/pluginMocks';
1211
import { getDataSourceInstanceSetting } from '../shared/testing/helpers';
1312

public/app/features/variables/datasource/reducer.ts

+8-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,14 @@ import { createSlice, PayloadAction } from '@reduxjs/toolkit';
22
import { DataSourceInstanceSettings } from '@grafana/data';
33

44
import { DataSourceVariableModel, initialVariableModelState, VariableOption, VariableRefresh } from '../types';
5-
import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE, getInstanceState, VariablePayload } from '../state/types';
6-
import { initialVariablesState, VariablesState } from '../state/variablesReducer';
5+
import {
6+
ALL_VARIABLE_TEXT,
7+
ALL_VARIABLE_VALUE,
8+
getInstanceState,
9+
VariablePayload,
10+
initialVariablesState,
11+
VariablesState,
12+
} from '../state/types';
713

814
export interface DataSourceVariableEditorState {
915
dataSourceTypes: Array<{ text: string; value: string }>;

public/app/features/variables/interval/reducer.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import cloneDeep from 'lodash/cloneDeep';
22

33
import { getVariableTestContext } from '../state/helpers';
4-
import { toVariablePayload } from '../state/types';
4+
import { toVariablePayload, VariablesState } from '../state/types';
55
import { createIntervalVariableAdapter } from './adapter';
66
import { IntervalVariableModel } from '../types';
77
import { reducerTester } from '../../../../test/core/redux/reducerTester';
8-
import { VariablesState } from '../state/variablesReducer';
98
import { createIntervalOptions, intervalVariableReducer } from './reducer';
109

1110
describe('intervalVariableReducer', () => {

public/app/features/variables/interval/reducer.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
22
import { initialVariableModelState, IntervalVariableModel, VariableOption, VariableRefresh } from '../types';
3-
import { getInstanceState, VariablePayload } from '../state/types';
4-
import { initialVariablesState, VariablesState } from '../state/variablesReducer';
3+
import { getInstanceState, VariablePayload, initialVariablesState, VariablesState } from '../state/types';
54
import _ from 'lodash';
65

76
export const initialIntervalVariableModelState: IntervalVariableModel = {

public/app/features/variables/query/reducer.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,8 @@ import {
88
} from './reducer';
99
import { QueryVariableModel, VariableSort } from '../types';
1010
import cloneDeep from 'lodash/cloneDeep';
11-
import { VariablesState } from '../state/variablesReducer';
1211
import { getVariableTestContext } from '../state/helpers';
13-
import { toVariablePayload } from '../state/types';
12+
import { toVariablePayload, VariablesState } from '../state/types';
1413
import { createQueryVariableAdapter } from './adapter';
1514
import { MetricFindValue } from '@grafana/data';
1615

public/app/features/variables/query/reducer.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,9 @@ import {
1919
NONE_VARIABLE_TEXT,
2020
NONE_VARIABLE_VALUE,
2121
VariablePayload,
22+
initialVariablesState,
23+
VariablesState,
2224
} from '../state/types';
23-
import { initialVariablesState, VariablesState } from '../state/variablesReducer';
2425

2526
interface VariableOptionsUpdate {
2627
templatedRegex: string;

public/app/features/variables/state/helpers.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { combineReducers } from '@reduxjs/toolkit';
22
import { LoadingState } from '@grafana/data';
33

4-
import { NEW_VARIABLE_ID } from './types';
4+
import { NEW_VARIABLE_ID, VariablesState } from './types';
55
import { VariableHide, VariableModel } from '../types';
6-
import { VariablesState } from './variablesReducer';
6+
77
import { VariableAdapter } from '../adapters';
88
import { dashboardReducer } from 'app/features/dashboard/state/reducers';
99
import { templatingReducers, TemplatingState } from './reducers';

public/app/features/variables/state/reducers.test.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import { reducerTester } from '../../../../test/core/redux/reducerTester';
22
import { initialVariableModelState, QueryVariableModel } from '../types';
33
import { VariableAdapter, variableAdapters } from '../adapters';
44
import { createAction } from '@reduxjs/toolkit';
5-
import { cleanVariables, variablesReducer, VariablesState } from './variablesReducer';
6-
import { toVariablePayload, VariablePayload } from './types';
5+
import { cleanVariables, variablesReducer } from './variablesReducer';
6+
import { VariablesState, toVariablePayload, VariablePayload } from './types';
77
import { VariableType } from '@grafana/data';
88

99
const variableAdapter: VariableAdapter<QueryVariableModel> = {

public/app/features/variables/state/sharedReducer.test.ts

+8-2
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,18 @@ import {
1717
variableStateNotStarted,
1818
} from './sharedReducer';
1919
import { ConstantVariableModel, QueryVariableModel, VariableHide, VariableOption } from '../types';
20-
import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE, toVariablePayload, VariableIdentifier } from './types';
20+
import {
21+
ALL_VARIABLE_TEXT,
22+
ALL_VARIABLE_VALUE,
23+
toVariablePayload,
24+
VariableIdentifier,
25+
initialVariablesState,
26+
VariablesState,
27+
} from './types';
2128
import { variableAdapters } from '../adapters';
2229
import { createQueryVariableAdapter } from '../query/adapter';
2330
import { initialQueryVariableModelState } from '../query/reducer';
2431
import { getVariableState, getVariableTestContext } from './helpers';
25-
import { initialVariablesState, VariablesState } from './variablesReducer';
2632
import { changeVariableNameSucceeded } from '../editor/reducer';
2733
import { createConstantVariableAdapter } from '../constant/adapter';
2834
import { initialConstantVariableModelState } from '../constant/reducer';

public/app/features/variables/state/sharedReducer.ts

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
import { createSlice, PayloadAction } from '@reduxjs/toolkit';
22
import cloneDeep from 'lodash/cloneDeep';
33
import { default as lodashDefaults } from 'lodash/defaults';
4-
54
import { LoadingState, VariableType } from '@grafana/data';
65
import { VariableModel, VariableOption, VariableWithOptions } from '../types';
7-
import { AddVariable, getInstanceState, VariablePayload } from './types';
6+
import { AddVariable, getInstanceState, VariablePayload, initialVariablesState, VariablesState } from './types';
87
import { variableAdapters } from '../adapters';
98
import { changeVariableNameSucceeded } from '../editor/reducer';
10-
import { initialVariablesState, VariablesState } from './variablesReducer';
119
import { isQuery } from '../guard';
1210
import { ensureStringValues } from '../utils';
1311

public/app/features/variables/state/types.ts

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { VariableModel } from '../types';
2-
import { VariablesState } from './variablesReducer';
32
import { VariableType } from '@grafana/data';
43

54
export const NEW_VARIABLE_ID = '00000000-0000-0000-0000-000000000000';
@@ -8,6 +7,10 @@ export const ALL_VARIABLE_VALUE = '$__all';
87
export const NONE_VARIABLE_TEXT = 'None';
98
export const NONE_VARIABLE_VALUE = '';
109

10+
export interface VariablesState extends Record<string, VariableModel> {}
11+
12+
export const initialVariablesState: VariablesState = {};
13+
1114
export const getInstanceState = <Model extends VariableModel = VariableModel>(state: VariablesState, id: string) => {
1215
return state[id] as Model;
1316
};

public/app/features/variables/state/variablesReducer.ts

+1-4
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,7 @@ import { variableAdapters } from '../adapters';
33
import { sharedReducer } from './sharedReducer';
44
import { VariableModel } from '../types';
55
import { AnyAction } from 'redux';
6-
7-
export interface VariablesState extends Record<string, VariableModel> {}
8-
9-
export const initialVariablesState: VariablesState = {};
6+
import { initialVariablesState, VariablesState } from './types';
107

118
export const cleanVariables = createAction<undefined>('templating/cleanVariables');
129

public/app/features/variables/textbox/reducer.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import { reducerTester } from '../../../../test/core/redux/reducerTester';
22
import cloneDeep from 'lodash/cloneDeep';
33
import { getVariableTestContext } from '../state/helpers';
4-
import { toVariablePayload } from '../state/types';
4+
import { toVariablePayload, VariablesState } from '../state/types';
55
import { createTextBoxOptions, textBoxVariableReducer } from './reducer';
6-
import { VariablesState } from '../state/variablesReducer';
76
import { TextBoxVariableModel } from '../types';
87
import { createTextBoxVariableAdapter } from './adapter';
98

0 commit comments

Comments
 (0)