diff --git a/package.json b/package.json
index 0e63a12ee0a..9e52e930895 100644
--- a/package.json
+++ b/package.json
@@ -6,9 +6,9 @@
"version": "9.4.0-pre",
"repository": "github:grafana/grafana",
"scripts": {
- "build": "yarn i18n:compile && NODE_ENV=production webpack --config scripts/webpack/webpack.prod.js",
+ "build": "yarn i18n:compile && NODE_ENV=production webpack --progress --config scripts/webpack/webpack.prod.js",
"build:nominify": "yarn run build --env noMinify=1",
- "dev": "yarn i18n:compile && webpack --progress --color --config scripts/webpack/webpack.dev.js",
+ "dev": "yarn i18n:compile && NODE_ENV=dev webpack --progress --color --config scripts/webpack/webpack.dev.js",
"e2e": "./e2e/start-and-run-suite",
"e2e:debug": "./e2e/start-and-run-suite debug",
"e2e:dev": "./e2e/start-and-run-suite dev",
@@ -168,12 +168,16 @@
"babel-plugin-angularjs-annotate": "0.10.0",
"babel-plugin-macros": "3.1.0",
"blob-polyfill": "7.0.20220408",
+ "browserslist": "^4.21.4",
"copy-webpack-plugin": "9.0.1",
"css-loader": "6.7.1",
"css-minimizer-webpack-plugin": "4.2.2",
"cypress": "9.5.1",
"enzyme": "3.11.0",
"enzyme-to-json": "3.6.2",
+ "esbuild": "0.16.17",
+ "esbuild-loader": "2.21.0",
+ "esbuild-plugin-browserslist": "^0.6.0",
"eslint": "8.31.0",
"eslint-config-prettier": "8.6.0",
"eslint-plugin-import": "^2.26.0",
diff --git a/packages/grafana-data/package.json b/packages/grafana-data/package.json
index 9794ab66cf6..8aa90a27e4e 100644
--- a/packages/grafana-data/package.json
+++ b/packages/grafana-data/package.json
@@ -80,7 +80,7 @@
"@types/sinon": "10.0.13",
"@types/testing-library__jest-dom": "5.14.5",
"@types/tinycolor2": "1.4.3",
- "esbuild": "0.16.7",
+ "esbuild": "0.16.17",
"react": "17.0.2",
"react-dom": "17.0.2",
"react-test-renderer": "17.0.2",
diff --git a/packages/grafana-e2e-selectors/package.json b/packages/grafana-e2e-selectors/package.json
index 09d60fe8c6c..f0b2d2d9de9 100644
--- a/packages/grafana-e2e-selectors/package.json
+++ b/packages/grafana-e2e-selectors/package.json
@@ -42,7 +42,7 @@
"@rollup/plugin-commonjs": "23.0.2",
"@rollup/plugin-node-resolve": "15.0.1",
"@types/node": "18.11.9",
- "esbuild": "0.16.7",
+ "esbuild": "0.16.17",
"rimraf": "3.0.2",
"rollup": "2.79.1",
"rollup-plugin-dts": "^5.0.0",
diff --git a/packages/grafana-e2e/package.json b/packages/grafana-e2e/package.json
index 43ca0ade6fa..dea0cfbd9e5 100644
--- a/packages/grafana-e2e/package.json
+++ b/packages/grafana-e2e/package.json
@@ -52,7 +52,7 @@
"@types/lodash": "4.14.187",
"@types/node": "18.11.9",
"@types/uuid": "8.3.4",
- "esbuild": "0.16.7",
+ "esbuild": "0.16.17",
"rollup": "2.79.1",
"rollup-plugin-dts": "^5.0.0",
"rollup-plugin-esbuild": "5.0.0",
diff --git a/packages/grafana-runtime/package.json b/packages/grafana-runtime/package.json
index 0c3dd21fa2d..b39f8343576 100644
--- a/packages/grafana-runtime/package.json
+++ b/packages/grafana-runtime/package.json
@@ -63,7 +63,7 @@
"@types/react": "17.0.42",
"@types/react-dom": "17.0.14",
"@types/systemjs": "^0.20.6",
- "esbuild": "0.16.7",
+ "esbuild": "0.16.17",
"lodash": "4.17.21",
"react": "17.0.2",
"react-dom": "17.0.2",
diff --git a/packages/grafana-schema/package.json b/packages/grafana-schema/package.json
index 3fbb6a96592..ccf6c391f71 100644
--- a/packages/grafana-schema/package.json
+++ b/packages/grafana-schema/package.json
@@ -41,7 +41,7 @@
"@rollup/plugin-json": "5.0.1",
"@rollup/plugin-node-resolve": "15.0.1",
"@swc/helpers": "0.4.12",
- "esbuild": "0.16.7",
+ "esbuild": "0.16.17",
"rimraf": "3.0.2",
"rollup": "2.79.1",
"rollup-plugin-dts": "^5.0.0",
diff --git a/packages/grafana-ui/package.json b/packages/grafana-ui/package.json
index 36ff27ee2f9..20678316f77 100644
--- a/packages/grafana-ui/package.json
+++ b/packages/grafana-ui/package.json
@@ -173,7 +173,7 @@
"css-loader": "6.7.1",
"csstype": "3.1.1",
"enzyme": "3.11.0",
- "esbuild": "0.16.7",
+ "esbuild": "0.16.17",
"expose-loader": "4.0.0",
"mock-raf": "1.0.1",
"process": "^0.11.10",
diff --git a/public/app/angular/AngularApp.ts b/public/app/angular/AngularApp.ts
index 5aa1e03bad3..a4fb82ec255 100644
--- a/public/app/angular/AngularApp.ts
+++ b/public/app/angular/AngularApp.ts
@@ -37,7 +37,12 @@ export class AngularApp {
init() {
const app = angular.module('grafana', []);
- app.config(
+ app.config([
+ '$controllerProvider',
+ '$compileProvider',
+ '$filterProvider',
+ '$httpProvider',
+ '$provide',
(
$controllerProvider: angular.IControllerProvider,
$compileProvider: angular.ICompileProvider,
@@ -74,8 +79,8 @@ export class AngularApp {
return $delegate;
},
]);
- }
- );
+ },
+ ]);
this.ngModuleDependencies = ['grafana.core', 'ngSanitize', 'grafana', 'pasvaz.bindonce', 'react'];
diff --git a/public/app/angular/GrafanaCtrl.ts b/public/app/angular/GrafanaCtrl.ts
index 405c6729613..3be2ee41e0c 100644
--- a/public/app/angular/GrafanaCtrl.ts
+++ b/public/app/angular/GrafanaCtrl.ts
@@ -18,7 +18,8 @@ import { UtilSrv } from './services/UtilSrv';
export type GrafanaRootScope = IRootScopeService & AppEventEmitter & AppEventConsumer & { colors: string[] };
export class GrafanaCtrl {
- /** @ngInject */
+ static $inject = ['$scope', 'utilSrv', '$rootScope', 'contextSrv', 'angularLoader', '$injector'];
+
constructor(
$scope: any,
utilSrv: UtilSrv,
@@ -79,7 +80,6 @@ export class GrafanaCtrl {
}
}
-/** @ngInject */
export function grafanaAppDirective() {
return {
restrict: 'E',
diff --git a/public/app/angular/autofill_event_fix.ts b/public/app/angular/autofill_event_fix.ts
index d885a5c59e6..ca185cfb863 100644
--- a/public/app/angular/autofill_event_fix.ts
+++ b/public/app/angular/autofill_event_fix.ts
@@ -1,6 +1,5 @@
import coreModule from './core_module';
-/** @ngInject */
export function autofillEventFix($compile: any) {
return {
link: ($scope: any, elem: any) => {
@@ -32,4 +31,4 @@ export function autofillEventFix($compile: any) {
};
}
-coreModule.directive('autofillEventFix', autofillEventFix);
+coreModule.directive('autofillEventFix', ['$compile', autofillEventFix]);
diff --git a/public/app/angular/components/form_dropdown/form_dropdown.ts b/public/app/angular/components/form_dropdown/form_dropdown.ts
index 3f22ac329f7..3637a2f0487 100644
--- a/public/app/angular/components/form_dropdown/form_dropdown.ts
+++ b/public/app/angular/components/form_dropdown/form_dropdown.ts
@@ -39,7 +39,8 @@ export class FormDropdownCtrl {
startOpen: any;
debounce: boolean;
- /** @ngInject */
+ static $inject = ['$scope', '$element', '$sce', 'templateSrv'];
+
constructor(private $scope: any, $element: JQLite, private $sce: ISCEService, private templateSrv: any) {
this.inputElement = $element.find('input').first();
this.linkElement = $element.find('a').first();
diff --git a/public/app/angular/components/plugin_component.ts b/public/app/angular/components/plugin_component.ts
index 0e6bd400d4f..f8271c41cec 100644
--- a/public/app/angular/components/plugin_component.ts
+++ b/public/app/angular/components/plugin_component.ts
@@ -8,7 +8,8 @@ import config from 'app/core/config';
import { importPanelPlugin } from '../../features/plugins/importPanelPlugin';
import { importDataSourcePlugin, importAppPlugin } from '../../features/plugins/plugin_loader';
-/** @ngInject */
+coreModule.directive('pluginComponent', ['$compile', '$http', '$templateCache', '$location', pluginDirectiveLoader]);
+
function pluginDirectiveLoader($compile: any, $http: any, $templateCache: any, $location: ILocationService) {
function getTemplate(component: { template: any; templateUrl: any }) {
if (component.template) {
@@ -245,5 +246,3 @@ function pluginDirectiveLoader($compile: any, $http: any, $templateCache: any, $
},
};
}
-
-coreModule.directive('pluginComponent', pluginDirectiveLoader);
diff --git a/public/app/angular/components/query_part_editor.ts b/public/app/angular/components/query_part_editor.ts
index e6235609de7..22a0958b69d 100644
--- a/public/app/angular/components/query_part_editor.ts
+++ b/public/app/angular/components/query_part_editor.ts
@@ -16,7 +16,8 @@ const template = `
`;
-/** @ngInject */
+coreModule.directive('queryPartEditor', ['templateSrv', queryPartEditorDirective]);
+
export function queryPartEditorDirective(templateSrv: any) {
const paramTemplate = '';
@@ -183,5 +184,3 @@ export function queryPartEditorDirective(templateSrv: any) {
},
};
}
-
-coreModule.directive('queryPartEditor', queryPartEditorDirective);
diff --git a/public/app/angular/components/spectrum_picker.ts b/public/app/angular/components/spectrum_picker.ts
index 9cb84bcd9d9..0c100bf6943 100644
--- a/public/app/angular/components/spectrum_picker.ts
+++ b/public/app/angular/components/spectrum_picker.ts
@@ -5,7 +5,8 @@
*/
import coreModule from '../core_module';
-/** @ngInject */
+coreModule.directive('spectrumPicker', spectrumPicker);
+
export function spectrumPicker() {
return {
restrict: 'E',
@@ -21,4 +22,3 @@ export function spectrumPicker() {
},
};
}
-coreModule.directive('spectrumPicker', spectrumPicker);
diff --git a/public/app/angular/components/sql_part/sql_part_editor.ts b/public/app/angular/components/sql_part/sql_part_editor.ts
index 4f5c38c404b..d62e24646b4 100644
--- a/public/app/angular/components/sql_part/sql_part_editor.ts
+++ b/public/app/angular/components/sql_part/sql_part_editor.ts
@@ -14,7 +14,8 @@ const template = `
`;
-/** @ngInject */
+coreModule.directive('sqlPartEditor', ['templateSrv', sqlPartEditorDirective]);
+
export function sqlPartEditorDirective(templateSrv: any) {
const paramTemplate = '';
@@ -193,5 +194,3 @@ export function sqlPartEditorDirective(templateSrv: any) {
},
};
}
-
-coreModule.directive('sqlPartEditor', sqlPartEditorDirective);
diff --git a/public/app/angular/components/switch.ts b/public/app/angular/components/switch.ts
index 5e8f89e7188..341dbcb8943 100644
--- a/public/app/angular/components/switch.ts
+++ b/public/app/angular/components/switch.ts
@@ -37,7 +37,8 @@ export class SwitchCtrl {
id: any;
label?: string;
- /** @ngInject */
+ static $inject = ['$scope', '$timeout'];
+
constructor($scope: any, private $timeout: any) {
this.show = true;
this.id = $scope.$id;
diff --git a/public/app/angular/diff-view.ts b/public/app/angular/diff-view.ts
index d9b8c000d5b..23fc8280fad 100644
--- a/public/app/angular/diff-view.ts
+++ b/public/app/angular/diff-view.ts
@@ -7,7 +7,6 @@ import coreModule from './core_module';
export class DeltaCtrl {
observer: any;
- /** @ngInject */
constructor() {
const waitForCompile = () => {};
@@ -36,11 +35,13 @@ export function delta() {
restrict: 'A',
};
}
+
coreModule.directive('diffDelta', delta);
// Link to JSON line number
export class LinkJSONCtrl {
- /** @ngInject */
+ static $inject = ['$scope', '$rootScope', '$anchorScroll'];
+
constructor(private $scope: any, private $rootScope: GrafanaRootScope, private $anchorScroll: any) {}
goToLine(line: number) {
@@ -71,4 +72,5 @@ export function linkJson() {
template: `Line {{ line }}`,
};
}
+
coreModule.directive('diffLinkJson', linkJson);
diff --git a/public/app/angular/dropdown_typeahead.ts b/public/app/angular/dropdown_typeahead.ts
index 8c803473029..520e968525a 100644
--- a/public/app/angular/dropdown_typeahead.ts
+++ b/public/app/angular/dropdown_typeahead.ts
@@ -3,7 +3,6 @@ import { each, reduce } from 'lodash';
import coreModule from './core_module';
-/** @ngInject */
export function dropdownTypeahead($compile: any) {
const inputTemplate =
'';
@@ -271,5 +269,5 @@ export function dropdownTypeahead2($compile: any) {
};
}
-coreModule.directive('dropdownTypeahead', dropdownTypeahead);
-coreModule.directive('dropdownTypeahead2', dropdownTypeahead2);
+coreModule.directive('dropdownTypeahead', ['$compile', dropdownTypeahead]);
+coreModule.directive('dropdownTypeahead2', ['$compile', dropdownTypeahead2]);
diff --git a/public/app/angular/metric_segment.ts b/public/app/angular/metric_segment.ts
index cb171ac144e..c4e38e787cb 100644
--- a/public/app/angular/metric_segment.ts
+++ b/public/app/angular/metric_segment.ts
@@ -5,7 +5,6 @@ import { TemplateSrv } from 'app/features/templating/template_srv';
import coreModule from './core_module';
-/** @ngInject */
export function metricSegment($compile: any, $sce: any, templateSrv: TemplateSrv) {
const inputTemplate =
'
`;
-coreModule.directive('grafanaPanel', ($rootScope, $document, $timeout) => {
- return {
- restrict: 'E',
- template: panelTemplate,
- transclude: true,
- scope: { ctrl: '=' },
- link: (scope: any, elem) => {
- const ctrl: PanelCtrl = scope.ctrl;
- const panel: PanelModel = scope.ctrl.panel;
- const subs = new Subscription();
+coreModule.directive('grafanaPanel', [
+ '$timeout',
+ ($timeout) => {
+ return {
+ restrict: 'E',
+ template: panelTemplate,
+ transclude: true,
+ scope: { ctrl: '=' },
+ link: (scope: any, elem) => {
+ const ctrl: PanelCtrl = scope.ctrl;
+ const panel: PanelModel = scope.ctrl.panel;
+ const subs = new Subscription();
- let panelScrollbar: any;
+ let panelScrollbar: any;
- function resizeScrollableContent() {
- if (panelScrollbar) {
- panelScrollbar.update();
+ function resizeScrollableContent() {
+ if (panelScrollbar) {
+ panelScrollbar.update();
+ }
}
- }
- ctrl.events.on(PanelEvents.componentDidMount, () => {
- if ((ctrl as any).__proto__.constructor.scrollable) {
- const scrollRootClass = 'baron baron__root baron__clipper panel-content--scrollable';
- const scrollerClass = 'baron__scroller';
- const scrollBarHTML = `
+ ctrl.events.on(PanelEvents.componentDidMount, () => {
+ if ((ctrl as any).__proto__.constructor.scrollable) {
+ const scrollRootClass = 'baron baron__root baron__clipper panel-content--scrollable';
+ const scrollerClass = 'baron__scroller';
+ const scrollBarHTML = `
`;
- const scrollRoot = elem;
- const scroller = elem.find(':first').find(':first');
+ const scrollRoot = elem;
+ const scroller = elem.find(':first').find(':first');
- scrollRoot.addClass(scrollRootClass);
- $(scrollBarHTML).appendTo(scrollRoot);
- scroller.addClass(scrollerClass);
+ scrollRoot.addClass(scrollRootClass);
+ $(scrollBarHTML).appendTo(scrollRoot);
+ scroller.addClass(scrollerClass);
- panelScrollbar = baron({
- root: scrollRoot[0],
- scroller: scroller[0],
- bar: '.baron__bar',
- barOnCls: '_scrollbar',
- scrollingCls: '_scrolling',
- });
+ panelScrollbar = baron({
+ root: scrollRoot[0],
+ scroller: scroller[0],
+ bar: '.baron__bar',
+ barOnCls: '_scrollbar',
+ scrollingCls: '_scrolling',
+ });
- panelScrollbar.scroll();
- }
- });
-
- function updateDimensionsFromParentScope() {
- ctrl.height = scope.$parent.$parent.size.height;
- ctrl.width = scope.$parent.$parent.size.width;
- }
-
- updateDimensionsFromParentScope();
-
- // Pass PanelModel events down to angular controller event emitter
- subs.add(
- panel.events.subscribe(RefreshEvent, () => {
- updateDimensionsFromParentScope();
- ctrl.events.emit('refresh');
- })
- );
-
- subs.add(
- panel.events.subscribe(RenderEvent, (event) => {
- // this event originated from angular so no need to bubble it back
- if (event.payload?.fromAngular) {
- return;
+ panelScrollbar.scroll();
}
+ });
- updateDimensionsFromParentScope();
-
- $timeout(() => {
- resizeScrollableContent();
- ctrl.events.emit('render');
- });
- })
- );
-
- subs.add(
- ctrl.events.subscribe(RenderEvent, (event) => {
- // this event originated from angular so bubble it to react so the PanelChromeAngular can update the panel header alert state
- if (event.payload) {
- event.payload.fromAngular = true;
- panel.events.publish(event);
- }
- })
- );
-
- scope.$on('$destroy', () => {
- elem.off();
-
- // Remove PanelModel.event subs
- subs.unsubscribe();
- // Remove Angular controller event subs
- ctrl.events.emit(PanelEvents.panelTeardown);
- ctrl.events.removeAllListeners();
-
- if (panelScrollbar) {
- panelScrollbar.dispose();
+ function updateDimensionsFromParentScope() {
+ ctrl.height = scope.$parent.$parent.size.height;
+ ctrl.width = scope.$parent.$parent.size.width;
}
- });
- panel.events.publish(PanelDirectiveReadyEvent);
- },
- };
-});
+ updateDimensionsFromParentScope();
+
+ // Pass PanelModel events down to angular controller event emitter
+ subs.add(
+ panel.events.subscribe(RefreshEvent, () => {
+ updateDimensionsFromParentScope();
+ ctrl.events.emit('refresh');
+ })
+ );
+
+ subs.add(
+ panel.events.subscribe(RenderEvent, (event) => {
+ // this event originated from angular so no need to bubble it back
+ if (event.payload?.fromAngular) {
+ return;
+ }
+
+ updateDimensionsFromParentScope();
+
+ $timeout(() => {
+ resizeScrollableContent();
+ ctrl.events.emit('render');
+ });
+ })
+ );
+
+ subs.add(
+ ctrl.events.subscribe(RenderEvent, (event) => {
+ // this event originated from angular so bubble it to react so the PanelChromeAngular can update the panel header alert state
+ if (event.payload) {
+ event.payload.fromAngular = true;
+ panel.events.publish(event);
+ }
+ })
+ );
+
+ scope.$on('$destroy', () => {
+ elem.off();
+
+ // Remove PanelModel.event subs
+ subs.unsubscribe();
+ // Remove Angular controller event subs
+ ctrl.events.emit(PanelEvents.panelTeardown);
+ ctrl.events.removeAllListeners();
+
+ if (panelScrollbar) {
+ panelScrollbar.dispose();
+ }
+ });
+
+ panel.events.publish(PanelDirectiveReadyEvent);
+ },
+ };
+ },
+]);
diff --git a/public/app/angular/panel/panel_editor_tab.ts b/public/app/angular/panel/panel_editor_tab.ts
index 3a66d8d9f74..801eab8c81f 100644
--- a/public/app/angular/panel/panel_editor_tab.ts
+++ b/public/app/angular/panel/panel_editor_tab.ts
@@ -3,7 +3,8 @@ import angular from 'angular';
const directiveModule = angular.module('grafana.directives');
const directiveCache: any = {};
-/** @ngInject */
+directiveModule.directive('panelEditorTab', ['dynamicDirectiveSrv', panelEditorTab]);
+
function panelEditorTab(dynamicDirectiveSrv: any) {
return dynamicDirectiveSrv.create({
scope: {
@@ -38,5 +39,3 @@ function panelEditorTab(dynamicDirectiveSrv: any) {
},
});
}
-
-directiveModule.directive('panelEditorTab', panelEditorTab);
diff --git a/public/app/angular/panel/query_editor_row.ts b/public/app/angular/panel/query_editor_row.ts
index 7b226ac2163..db0d76b2dac 100644
--- a/public/app/angular/panel/query_editor_row.ts
+++ b/public/app/angular/panel/query_editor_row.ts
@@ -24,7 +24,8 @@ export class QueryRowCtrl {
}
}
-/** @ngInject */
+coreModule.directive('queryEditorRow', queryEditorRowDirective);
+
function queryEditorRowDirective() {
return {
restrict: 'E',
@@ -40,5 +41,3 @@ function queryEditorRowDirective() {
},
};
}
-
-coreModule.directive('queryEditorRow', queryEditorRowDirective);
diff --git a/public/app/angular/rebuild_on_change.ts b/public/app/angular/rebuild_on_change.ts
index 33cb1c01a1b..850d3f7667e 100644
--- a/public/app/angular/rebuild_on_change.ts
+++ b/public/app/angular/rebuild_on_change.ts
@@ -22,7 +22,8 @@ function getBlockNodes(nodes: any[]) {
return blockNodes || nodes;
}
-/** @ngInject */
+coreModule.directive('rebuildOnChange', ['$animate', rebuildOnChange]);
+
function rebuildOnChange($animate: any) {
return {
multiElement: true,
@@ -70,5 +71,3 @@ function rebuildOnChange($animate: any) {
},
};
}
-
-coreModule.directive('rebuildOnChange', rebuildOnChange);
diff --git a/public/app/angular/services/AngularLoader.ts b/public/app/angular/services/AngularLoader.ts
index b6449330c2e..a006bbd14ce 100644
--- a/public/app/angular/services/AngularLoader.ts
+++ b/public/app/angular/services/AngularLoader.ts
@@ -6,7 +6,8 @@ import { GrafanaRootScope } from 'app/angular/GrafanaCtrl';
import coreModule from 'app/angular/core_module';
export class AngularLoader implements AngularLoaderInterface {
- /** @ngInject */
+ static $inject = ['$compile', '$rootScope'];
+
constructor(private $compile: any, private $rootScope: GrafanaRootScope) {}
load(elem: any, scopeProps: any, template: string): AngularComponent {
diff --git a/public/app/angular/services/UtilSrv.ts b/public/app/angular/services/UtilSrv.ts
index 86afcf639b9..25a56ed5065 100644
--- a/public/app/angular/services/UtilSrv.ts
+++ b/public/app/angular/services/UtilSrv.ts
@@ -10,7 +10,6 @@ import { HideModalEvent, ShowModalEvent } from '../../types/events';
export class UtilSrv {
modalScope: any;
- /** @ngInject */
constructor() {}
init() {
diff --git a/public/app/angular/services/dynamic_directive_srv.ts b/public/app/angular/services/dynamic_directive_srv.ts
index c85c232a72c..9c18a5517b3 100644
--- a/public/app/angular/services/dynamic_directive_srv.ts
+++ b/public/app/angular/services/dynamic_directive_srv.ts
@@ -3,7 +3,8 @@ import angular from 'angular';
import coreModule from '../core_module';
class DynamicDirectiveSrv {
- /** @ngInject */
+ static $inject = ['$compile'];
+
constructor(private $compile: angular.ICompileService) {}
addDirective(element: any, name: string, scope: any) {
diff --git a/public/app/angular/services/popover_srv.ts b/public/app/angular/services/popover_srv.ts
index 1d96e118ccd..3afd2810202 100644
--- a/public/app/angular/services/popover_srv.ts
+++ b/public/app/angular/services/popover_srv.ts
@@ -5,7 +5,8 @@ import Drop from 'tether-drop';
import { GrafanaRootScope } from 'app/angular/GrafanaCtrl';
import coreModule from 'app/angular/core_module';
-/** @ngInject */
+coreModule.service('popoverSrv', ['$compile', '$rootScope', '$timeout', popoverSrv]);
+
function popoverSrv(this: any, $compile: any, $rootScope: GrafanaRootScope, $timeout: any) {
let openDrop: any = null;
@@ -78,5 +79,3 @@ function popoverSrv(this: any, $compile: any, $rootScope: GrafanaRootScope, $tim
};
};
}
-
-coreModule.service('popoverSrv', popoverSrv);
diff --git a/public/app/angular/services/segment_srv.ts b/public/app/angular/services/segment_srv.ts
index 434593adc9c..1e70bf9a491 100644
--- a/public/app/angular/services/segment_srv.ts
+++ b/public/app/angular/services/segment_srv.ts
@@ -2,7 +2,8 @@ import { each, isString, map } from 'lodash';
import coreModule from '../core_module';
-/** @ngInject */
+coreModule.service('uiSegmentSrv', ['$sce', 'templateSrv', uiSegmentSrv]);
+
export function uiSegmentSrv(this: any, $sce: any, templateSrv: any) {
const self = this;
@@ -119,5 +120,3 @@ export function uiSegmentSrv(this: any, $sce: any, templateSrv: any) {
});
};
}
-
-coreModule.service('uiSegmentSrv', uiSegmentSrv);
diff --git a/public/app/angular/services/timer.ts b/public/app/angular/services/timer.ts
index 8d12b8361cc..7124bfb43fc 100644
--- a/public/app/angular/services/timer.ts
+++ b/public/app/angular/services/timer.ts
@@ -8,7 +8,8 @@ import coreModule from 'app/angular/core_module';
export class Timer {
timers: Array> = [];
- /** @ngInject */
+ static $inject = ['$timeout'];
+
constructor(private $timeout: ITimeoutService) {}
register(promise: angular.IPromise) {
diff --git a/public/app/features/alerting/AlertTabCtrl.ts b/public/app/features/alerting/AlertTabCtrl.ts
index df717f79ee7..ad1b5a58bb0 100644
--- a/public/app/features/alerting/AlertTabCtrl.ts
+++ b/public/app/features/alerting/AlertTabCtrl.ts
@@ -40,7 +40,8 @@ export class AlertTabCtrl {
alertingMinInterval: string;
frequencyWarning: any;
- /** @ngInject */
+ static $inject = ['$scope', 'dashboardSrv', 'uiSegmentSrv', 'datasourceSrv'];
+
constructor(
private $scope: any,
private dashboardSrv: DashboardSrv,
@@ -512,7 +513,6 @@ export class AlertTabCtrl {
}
}
-/** @ngInject */
export function alertTab() {
'use strict';
return {
diff --git a/public/app/plugins/panel/graph/annotation_tooltip.ts b/public/app/plugins/panel/graph/annotation_tooltip.ts
index 56ba2773a4b..a9d4a77c62f 100644
--- a/public/app/plugins/panel/graph/annotation_tooltip.ts
+++ b/public/app/plugins/panel/graph/annotation_tooltip.ts
@@ -2,17 +2,12 @@ import $ from 'jquery';
import { isString, escape } from 'lodash';
import coreModule from 'app/angular/core_module';
-import { ContextSrv } from 'app/core/services/context_srv';
import alertDef from 'app/features/alerting/state/alertDef';
import { DashboardSrv } from 'app/features/dashboard/services/DashboardSrv';
-/** @ngInject */
-export function annotationTooltipDirective(
- $sanitize: any,
- dashboardSrv: DashboardSrv,
- contextSrv: ContextSrv,
- $compile: any
-) {
+coreModule.directive('annotationTooltip', ['$sanitize', 'dashboardSrv', '$compile', annotationTooltipDirective]);
+
+export function annotationTooltipDirective($sanitize: any, dashboardSrv: DashboardSrv, $compile: any) {
function sanitizeString(str: string) {
try {
return $sanitize(str);
@@ -94,5 +89,3 @@ export function annotationTooltipDirective(
},
};
}
-
-coreModule.directive('annotationTooltip', annotationTooltipDirective);
diff --git a/public/app/plugins/panel/graph/axes_editor.ts b/public/app/plugins/panel/graph/axes_editor.ts
index 909620f21fb..97f2e693a4a 100644
--- a/public/app/plugins/panel/graph/axes_editor.ts
+++ b/public/app/plugins/panel/graph/axes_editor.ts
@@ -11,7 +11,8 @@ export class AxesEditorCtrl {
xNameSegment: any;
selectors: typeof selectors.components.Panels.Visualization.Graph.VisualizationTab;
- /** @ngInject */
+ static $inject = ['$scope'];
+
constructor(private $scope: any) {
this.panelCtrl = $scope.ctrl as GraphCtrl;
this.panel = this.panelCtrl.panel;
@@ -76,7 +77,6 @@ export class AxesEditorCtrl {
}
}
-/** @ngInject */
export function axesEditorComponent() {
'use strict';
return {
diff --git a/public/app/plugins/panel/graph/event_editor.ts b/public/app/plugins/panel/graph/event_editor.ts
index a8112043407..6e2dd300036 100644
--- a/public/app/plugins/panel/graph/event_editor.ts
+++ b/public/app/plugins/panel/graph/event_editor.ts
@@ -18,7 +18,6 @@ export class EventEditorCtrl {
close: any;
timeFormated?: string;
- /** @ngInject */
constructor() {}
$onInit() {
diff --git a/public/app/plugins/panel/graph/graph.ts b/public/app/plugins/panel/graph/graph.ts
index e17d8d4e1f6..70ca98fb615 100644
--- a/public/app/plugins/panel/graph/graph.ts
+++ b/public/app/plugins/panel/graph/graph.ts
@@ -959,7 +959,8 @@ class GraphElement {
}
}
-/** @ngInject */
+coreModule.directive('grafanaGraph', ['timeSrv', 'popoverSrv', 'contextSrv', graphDirective]);
+
function graphDirective(timeSrv: TimeSrv, popoverSrv: any, contextSrv: ContextSrv) {
return {
restrict: 'A',
@@ -970,5 +971,4 @@ function graphDirective(timeSrv: TimeSrv, popoverSrv: any, contextSrv: ContextSr
};
}
-coreModule.directive('grafanaGraph', graphDirective);
export { GraphElement, graphDirective };
diff --git a/public/app/plugins/panel/graph/jquery.flot.events.ts b/public/app/plugins/panel/graph/jquery.flot.events.ts
index 6d680122795..5f446704088 100644
--- a/public/app/plugins/panel/graph/jquery.flot.events.ts
+++ b/public/app/plugins/panel/graph/jquery.flot.events.ts
@@ -6,7 +6,6 @@ import Drop from 'tether-drop';
import { CreatePlotOverlay } from '@grafana/data';
import { getLegacyAngularInjector } from '@grafana/runtime';
-/** @ngInject */
const createAnnotationToolip: CreatePlotOverlay = (element, event, plot) => {
const injector = getLegacyAngularInjector();
const content = document.createElement('div');
@@ -52,7 +51,6 @@ const createAnnotationToolip: CreatePlotOverlay = (element, event, plot) => {
let markerElementToAttachTo: any = null;
-/** @ngInject */
const createEditPopover: CreatePlotOverlay = (element, event, plot) => {
const eventManager = plot.getOptions().events.manager;
if (eventManager.editorOpen) {
@@ -145,7 +143,6 @@ export class DrawableEvent {
_width: any;
_height: any;
- /** @ngInject */
constructor(
object: JQuery,
drawFunc: any,
@@ -198,7 +195,6 @@ export class VisualEvent {
_drawableEvent: any;
_hidden: any;
- /** @ngInject */
constructor(options: any, drawableEvent: DrawableEvent) {
this._options = options;
this._drawableEvent = drawableEvent;
@@ -234,7 +230,6 @@ export class EventMarkers {
_plot: any;
eventsEnabled: any;
- /** @ngInject */
constructor(plot: any) {
this._events = [];
this._types = [];
@@ -632,8 +627,6 @@ export class EventMarkers {
/**
* initialize the plugin for the given plot
*/
-
-/** @ngInject */
export function init(this: any, plot: any) {
const that = this;
const eventMarkers = new EventMarkers(plot);
diff --git a/public/app/plugins/panel/graph/module.ts b/public/app/plugins/panel/graph/module.ts
index 0cd91bad136..0ba8b430085 100644
--- a/public/app/plugins/panel/graph/module.ts
+++ b/public/app/plugins/panel/graph/module.ts
@@ -144,7 +144,8 @@ export class GraphCtrl extends MetricsPanelCtrl {
},
};
- /** @ngInject */
+ static $inject = ['$scope', '$injector'];
+
constructor($scope: any, $injector: auto.IInjectorService) {
super($scope, $injector);
diff --git a/public/app/plugins/panel/graph/series_overrides_ctrl.ts b/public/app/plugins/panel/graph/series_overrides_ctrl.ts
index 356d4dde79d..b3c21ae5dea 100644
--- a/public/app/plugins/panel/graph/series_overrides_ctrl.ts
+++ b/public/app/plugins/panel/graph/series_overrides_ctrl.ts
@@ -3,7 +3,8 @@ import { map, each, isUndefined } from 'lodash';
import { textUtil } from '@grafana/data';
import coreModule from 'app/angular/core_module';
-/** @ngInject */
+coreModule.controller('SeriesOverridesCtrl', ['$scope', '$element', 'popoverSrv', SeriesOverridesCtrl]);
+
export function SeriesOverridesCtrl($scope: any, $element: JQuery, popoverSrv: any) {
$scope.overrideMenu = [];
$scope.currentOverrides = [];
@@ -131,5 +132,3 @@ export function SeriesOverridesCtrl($scope: any, $element: JQuery, popoverSrv: a
$scope.addOverrideOption('Hide in tooltip', 'hideTooltip', [true, false]);
$scope.updateCurrentOverrides();
}
-
-coreModule.controller('SeriesOverridesCtrl', SeriesOverridesCtrl);
diff --git a/public/app/plugins/panel/graph/thresholds_form.ts b/public/app/plugins/panel/graph/thresholds_form.ts
index cd0c40df66e..88801792883 100644
--- a/public/app/plugins/panel/graph/thresholds_form.ts
+++ b/public/app/plugins/panel/graph/thresholds_form.ts
@@ -7,7 +7,8 @@ export class ThresholdFormCtrl {
panel: any;
disabled = false;
- /** @ngInject */
+ static $inject = ['$scope'];
+
constructor(private $scope: any) {}
$onInit() {
diff --git a/public/app/plugins/panel/graph/time_regions_form.ts b/public/app/plugins/panel/graph/time_regions_form.ts
index 98eb0f1d207..91eb7f52d48 100644
--- a/public/app/plugins/panel/graph/time_regions_form.ts
+++ b/public/app/plugins/panel/graph/time_regions_form.ts
@@ -8,7 +8,8 @@ export class TimeRegionFormCtrl {
disabled = false;
colorModes: any;
- /** @ngInject */
+ static $inject = ['$scope'];
+
constructor(private $scope: any) {}
$onInit() {
diff --git a/public/app/plugins/panel/table-old/column_options.ts b/public/app/plugins/panel/table-old/column_options.ts
index c3543167e1c..a57e48f2f72 100644
--- a/public/app/plugins/panel/table-old/column_options.ts
+++ b/public/app/plugins/panel/table-old/column_options.ts
@@ -24,7 +24,8 @@ export class ColumnOptionsCtrl {
{ text: 'right', value: 'right' },
];
- /** @ngInject */
+ static $inject = ['$scope'];
+
constructor($scope: any) {
$scope.editor = this;
diff --git a/public/app/plugins/panel/table-old/editor.ts b/public/app/plugins/panel/table-old/editor.ts
index 858de542fb3..b26f578a852 100644
--- a/public/app/plugins/panel/table-old/editor.ts
+++ b/public/app/plugins/panel/table-old/editor.ts
@@ -13,7 +13,8 @@ export class TablePanelEditorCtrl {
canSetColumns = false;
columnsHelpMessage = '';
- /** @ngInject */
+ static $inject = ['$scope', 'uiSegmentSrv'];
+
constructor($scope: any, private uiSegmentSrv: any) {
$scope.editor = this;
this.panelCtrl = $scope.ctrl;
diff --git a/public/app/plugins/panel/table-old/module.ts b/public/app/plugins/panel/table-old/module.ts
index ed8965684f4..1836c6cd5cd 100644
--- a/public/app/plugins/panel/table-old/module.ts
+++ b/public/app/plugins/panel/table-old/module.ts
@@ -54,7 +54,8 @@ export class TablePanelCtrl extends MetricsPanelCtrl {
sort: { col: 0, desc: true },
};
- /** @ngInject */
+ static $inject = ['$scope', '$injector', 'annotationsSrv', '$sanitize'];
+
constructor($scope: any, $injector: any, private annotationsSrv: any, private $sanitize: any) {
super($scope, $injector);
diff --git a/scripts/webpack/webpack.dev.js b/scripts/webpack/webpack.dev.js
index 0eb477af2e3..c549a5275a1 100644
--- a/scripts/webpack/webpack.dev.js
+++ b/scripts/webpack/webpack.dev.js
@@ -1,5 +1,7 @@
'use strict';
+const browserslist = require('browserslist');
+const { resolveToEsbuildTarget } = require('esbuild-plugin-browserslist');
const ESLintPlugin = require('eslint-webpack-plugin');
const ForkTsCheckerWebpackPlugin = require('fork-ts-checker-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');
@@ -10,7 +12,7 @@ const { merge } = require('webpack-merge');
const HTMLWebpackCSSChunks = require('./plugins/HTMLWebpackCSSChunks');
const common = require('./webpack.common.js');
-// const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
+const esbuildTargets = resolveToEsbuildTarget(browserslist(), { printUnknownTargets: false });
module.exports = (env = {}) =>
merge(common, {
@@ -34,10 +36,10 @@ module.exports = (env = {}) =>
{
test: /\.tsx?$/,
use: {
- loader: 'babel-loader',
+ loader: 'esbuild-loader',
options: {
- cacheDirectory: true,
- cacheCompression: false,
+ loader: 'tsx',
+ target: esbuildTargets,
},
},
exclude: /node_modules/,
@@ -114,8 +116,5 @@ module.exports = (env = {}) =>
NODE_ENV: JSON.stringify('development'),
},
}),
- // new BundleAnalyzerPlugin({
- // analyzerPort: 8889
- // })
],
});
diff --git a/scripts/webpack/webpack.prod.js b/scripts/webpack/webpack.prod.js
index 909962cc8a1..56a52e0578b 100644
--- a/scripts/webpack/webpack.prod.js
+++ b/scripts/webpack/webpack.prod.js
@@ -1,15 +1,18 @@
'use strict';
+const browserslist = require('browserslist');
const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
+const { ESBuildMinifyPlugin } = require('esbuild-loader');
+const { resolveToEsbuildTarget } = require('esbuild-plugin-browserslist');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const path = require('path');
-const TerserPlugin = require('terser-webpack-plugin');
const { WebpackManifestPlugin } = require('webpack-manifest-plugin');
const { merge } = require('webpack-merge');
const HTMLWebpackCSSChunks = require('./plugins/HTMLWebpackCSSChunks');
const common = require('./webpack.common.js');
+const esbuildTargets = resolveToEsbuildTarget(browserslist(), { printUnknownTargets: false });
module.exports = (env = {}) =>
merge(common, {
@@ -27,15 +30,13 @@ module.exports = (env = {}) =>
{
test: /\.tsx?$/,
exclude: /node_modules/,
- use: [
- {
- loader: 'babel-loader',
- options: {
- cacheDirectory: true,
- cacheCompression: false,
- },
+ use: {
+ loader: 'esbuild-loader',
+ options: {
+ loader: 'tsx',
+ target: esbuildTargets,
},
- ],
+ },
},
require('./sass.rule.js')({
sourceMap: false,
@@ -47,8 +48,8 @@ module.exports = (env = {}) =>
nodeEnv: 'production',
minimize: parseInt(env.noMinify, 10) !== 1,
minimizer: [
- new TerserPlugin({
- parallel: false,
+ new ESBuildMinifyPlugin({
+ target: esbuildTargets,
}),
new CssMinimizerPlugin(),
],
diff --git a/yarn.lock b/yarn.lock
index c59b0f5e65d..a6adfe69b11 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -4274,170 +4274,156 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/android-arm64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/android-arm64@npm:0.16.7"
+"@esbuild/android-arm64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/android-arm64@npm:0.16.17"
conditions: os=android & cpu=arm64
languageName: node
linkType: hard
-"@esbuild/android-arm@npm:0.15.12":
- version: 0.15.12
- resolution: "@esbuild/android-arm@npm:0.15.12"
+"@esbuild/android-arm@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/android-arm@npm:0.16.17"
conditions: os=android & cpu=arm
languageName: node
linkType: hard
-"@esbuild/android-arm@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/android-arm@npm:0.16.7"
- conditions: os=android & cpu=arm
- languageName: node
- linkType: hard
-
-"@esbuild/android-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/android-x64@npm:0.16.7"
+"@esbuild/android-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/android-x64@npm:0.16.17"
conditions: os=android & cpu=x64
languageName: node
linkType: hard
-"@esbuild/darwin-arm64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/darwin-arm64@npm:0.16.7"
+"@esbuild/darwin-arm64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/darwin-arm64@npm:0.16.17"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
-"@esbuild/darwin-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/darwin-x64@npm:0.16.7"
+"@esbuild/darwin-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/darwin-x64@npm:0.16.17"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
-"@esbuild/freebsd-arm64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/freebsd-arm64@npm:0.16.7"
+"@esbuild/freebsd-arm64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/freebsd-arm64@npm:0.16.17"
conditions: os=freebsd & cpu=arm64
languageName: node
linkType: hard
-"@esbuild/freebsd-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/freebsd-x64@npm:0.16.7"
+"@esbuild/freebsd-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/freebsd-x64@npm:0.16.17"
conditions: os=freebsd & cpu=x64
languageName: node
linkType: hard
-"@esbuild/linux-arm64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-arm64@npm:0.16.7"
+"@esbuild/linux-arm64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-arm64@npm:0.16.17"
conditions: os=linux & cpu=arm64
languageName: node
linkType: hard
-"@esbuild/linux-arm@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-arm@npm:0.16.7"
+"@esbuild/linux-arm@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-arm@npm:0.16.17"
conditions: os=linux & cpu=arm
languageName: node
linkType: hard
-"@esbuild/linux-ia32@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-ia32@npm:0.16.7"
+"@esbuild/linux-ia32@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-ia32@npm:0.16.17"
conditions: os=linux & cpu=ia32
languageName: node
linkType: hard
-"@esbuild/linux-loong64@npm:0.15.12":
- version: 0.15.12
- resolution: "@esbuild/linux-loong64@npm:0.15.12"
+"@esbuild/linux-loong64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-loong64@npm:0.16.17"
conditions: os=linux & cpu=loong64
languageName: node
linkType: hard
-"@esbuild/linux-loong64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-loong64@npm:0.16.7"
- conditions: os=linux & cpu=loong64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-mips64el@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-mips64el@npm:0.16.7"
+"@esbuild/linux-mips64el@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-mips64el@npm:0.16.17"
conditions: os=linux & cpu=mips64el
languageName: node
linkType: hard
-"@esbuild/linux-ppc64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-ppc64@npm:0.16.7"
+"@esbuild/linux-ppc64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-ppc64@npm:0.16.17"
conditions: os=linux & cpu=ppc64
languageName: node
linkType: hard
-"@esbuild/linux-riscv64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-riscv64@npm:0.16.7"
+"@esbuild/linux-riscv64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-riscv64@npm:0.16.17"
conditions: os=linux & cpu=riscv64
languageName: node
linkType: hard
-"@esbuild/linux-s390x@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-s390x@npm:0.16.7"
+"@esbuild/linux-s390x@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-s390x@npm:0.16.17"
conditions: os=linux & cpu=s390x
languageName: node
linkType: hard
-"@esbuild/linux-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/linux-x64@npm:0.16.7"
+"@esbuild/linux-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/linux-x64@npm:0.16.17"
conditions: os=linux & cpu=x64
languageName: node
linkType: hard
-"@esbuild/netbsd-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/netbsd-x64@npm:0.16.7"
+"@esbuild/netbsd-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/netbsd-x64@npm:0.16.17"
conditions: os=netbsd & cpu=x64
languageName: node
linkType: hard
-"@esbuild/openbsd-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/openbsd-x64@npm:0.16.7"
+"@esbuild/openbsd-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/openbsd-x64@npm:0.16.17"
conditions: os=openbsd & cpu=x64
languageName: node
linkType: hard
-"@esbuild/sunos-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/sunos-x64@npm:0.16.7"
+"@esbuild/sunos-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/sunos-x64@npm:0.16.17"
conditions: os=sunos & cpu=x64
languageName: node
linkType: hard
-"@esbuild/win32-arm64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/win32-arm64@npm:0.16.7"
+"@esbuild/win32-arm64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/win32-arm64@npm:0.16.17"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
-"@esbuild/win32-ia32@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/win32-ia32@npm:0.16.7"
+"@esbuild/win32-ia32@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/win32-ia32@npm:0.16.17"
conditions: os=win32 & cpu=ia32
languageName: node
linkType: hard
-"@esbuild/win32-x64@npm:0.16.7":
- version: 0.16.7
- resolution: "@esbuild/win32-x64@npm:0.16.7"
+"@esbuild/win32-x64@npm:0.16.17":
+ version: 0.16.17
+ resolution: "@esbuild/win32-x64@npm:0.16.17"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -4630,7 +4616,7 @@ __metadata:
"@types/tinycolor2": 1.4.3
d3-interpolate: 1.4.0
date-fns: 2.29.3
- esbuild: 0.16.7
+ esbuild: 0.16.17
eventemitter3: 4.0.7
fast_array_intersect: 1.1.0
history: 4.10.1
@@ -4671,7 +4657,7 @@ __metadata:
"@rollup/plugin-commonjs": 23.0.2
"@rollup/plugin-node-resolve": 15.0.1
"@types/node": 18.11.9
- esbuild: 0.16.7
+ esbuild: 0.16.17
rimraf: 3.0.2
rollup: 2.79.1
rollup-plugin-dts: ^5.0.0
@@ -4715,7 +4701,7 @@ __metadata:
cypress: 9.5.1
cypress-file-upload: 5.0.8
devtools-protocol: 0.0.1065144
- esbuild: 0.16.7
+ esbuild: 0.16.17
execa: 5.1.1
lodash: 4.17.21
mocha: 10.2.0
@@ -4891,7 +4877,7 @@ __metadata:
"@types/react": 17.0.42
"@types/react-dom": 17.0.14
"@types/systemjs": ^0.20.6
- esbuild: 0.16.7
+ esbuild: 0.16.17
history: 4.10.1
lodash: 4.17.21
react: 17.0.2
@@ -4936,7 +4922,7 @@ __metadata:
"@rollup/plugin-json": 5.0.1
"@rollup/plugin-node-resolve": 15.0.1
"@swc/helpers": 0.4.12
- esbuild: 0.16.7
+ esbuild: 0.16.17
rimraf: 3.0.2
rollup: 2.79.1
rollup-plugin-dts: ^5.0.0
@@ -5133,7 +5119,7 @@ __metadata:
d3: 5.15.0
date-fns: 2.29.3
enzyme: 3.11.0
- esbuild: 0.16.7
+ esbuild: 0.16.17
expose-loader: 4.0.0
hoist-non-react-statics: 3.3.2
i18next: ^22.0.0
@@ -5216,18 +5202,7 @@ __metadata:
languageName: node
linkType: hard
-"@humanwhocodes/config-array@npm:^0.11.6":
- version: 0.11.7
- resolution: "@humanwhocodes/config-array@npm:0.11.7"
- dependencies:
- "@humanwhocodes/object-schema": ^1.2.1
- debug: ^4.1.1
- minimatch: ^3.0.5
- checksum: cf506dc45d9488af7fbf108ea6ac2151ba1a25e6d2b94b9b4fc36d2c1e4099b89ff560296dbfa13947e44604d4ca4a90d97a4fb167370bf8dd01a6ca2b6d83ac
- languageName: node
- linkType: hard
-
-"@humanwhocodes/config-array@npm:^0.11.8":
+"@humanwhocodes/config-array@npm:^0.11.6, @humanwhocodes/config-array@npm:^0.11.8":
version: 0.11.8
resolution: "@humanwhocodes/config-array@npm:0.11.8"
dependencies:
@@ -19187,188 +19162,61 @@ __metadata:
languageName: node
linkType: hard
-"esbuild-android-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-android-64@npm:0.15.12"
- conditions: os=android & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-android-arm64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-android-arm64@npm:0.15.12"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-darwin-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-darwin-64@npm:0.15.12"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-darwin-arm64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-darwin-arm64@npm:0.15.12"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-freebsd-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-freebsd-64@npm:0.15.12"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-freebsd-arm64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-freebsd-arm64@npm:0.15.12"
- conditions: os=freebsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-linux-32@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-32@npm:0.15.12"
- conditions: os=linux & cpu=ia32
- languageName: node
- linkType: hard
-
-"esbuild-linux-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-64@npm:0.15.12"
- conditions: os=linux & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-linux-arm64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-arm64@npm:0.15.12"
- conditions: os=linux & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-linux-arm@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-arm@npm:0.15.12"
- conditions: os=linux & cpu=arm
- languageName: node
- linkType: hard
-
-"esbuild-linux-mips64le@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-mips64le@npm:0.15.12"
- conditions: os=linux & cpu=mips64el
- languageName: node
- linkType: hard
-
-"esbuild-linux-ppc64le@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-ppc64le@npm:0.15.12"
- conditions: os=linux & cpu=ppc64
- languageName: node
- linkType: hard
-
-"esbuild-linux-riscv64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-riscv64@npm:0.15.12"
- conditions: os=linux & cpu=riscv64
- languageName: node
- linkType: hard
-
-"esbuild-linux-s390x@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-linux-s390x@npm:0.15.12"
- conditions: os=linux & cpu=s390x
- languageName: node
- linkType: hard
-
-"esbuild-loader@npm:^2.10.0":
- version: 2.20.0
- resolution: "esbuild-loader@npm:2.20.0"
+"esbuild-loader@npm:2.21.0, esbuild-loader@npm:^2.10.0":
+ version: 2.21.0
+ resolution: "esbuild-loader@npm:2.21.0"
dependencies:
- esbuild: ^0.15.6
+ esbuild: ^0.16.17
joycon: ^3.0.1
json5: ^2.2.0
loader-utils: ^2.0.0
tapable: ^2.2.0
- webpack-sources: ^2.2.0
+ webpack-sources: ^1.4.3
peerDependencies:
webpack: ^4.40.0 || ^5.0.0
- checksum: 81faee7155b35af1fdef3dffa273a14ec83e56b9efa1efb76cb1eb64964dd738809c147a87ab9d3507de11946eed51fd1ee42d476b2c9654cbda145da0d9479b
+ checksum: a0456ed7794e2c220a6068e92d739bc19765bff352bf7e44442aa8127631cc517ecd02a3ee969e31fa6b6a91befeac928296488c95e3818a776cd3b11d46348c
languageName: node
linkType: hard
-"esbuild-netbsd-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-netbsd-64@npm:0.15.12"
- conditions: os=netbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-openbsd-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-openbsd-64@npm:0.15.12"
- conditions: os=openbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-sunos-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-sunos-64@npm:0.15.12"
- conditions: os=sunos & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-windows-32@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-windows-32@npm:0.15.12"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
-"esbuild-windows-64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-windows-64@npm:0.15.12"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-windows-arm64@npm:0.15.12":
- version: 0.15.12
- resolution: "esbuild-windows-arm64@npm:0.15.12"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild@npm:0.16.7":
- version: 0.16.7
- resolution: "esbuild@npm:0.16.7"
+"esbuild-plugin-browserslist@npm:^0.6.0":
+ version: 0.6.0
+ resolution: "esbuild-plugin-browserslist@npm:0.6.0"
dependencies:
- "@esbuild/android-arm": 0.16.7
- "@esbuild/android-arm64": 0.16.7
- "@esbuild/android-x64": 0.16.7
- "@esbuild/darwin-arm64": 0.16.7
- "@esbuild/darwin-x64": 0.16.7
- "@esbuild/freebsd-arm64": 0.16.7
- "@esbuild/freebsd-x64": 0.16.7
- "@esbuild/linux-arm": 0.16.7
- "@esbuild/linux-arm64": 0.16.7
- "@esbuild/linux-ia32": 0.16.7
- "@esbuild/linux-loong64": 0.16.7
- "@esbuild/linux-mips64el": 0.16.7
- "@esbuild/linux-ppc64": 0.16.7
- "@esbuild/linux-riscv64": 0.16.7
- "@esbuild/linux-s390x": 0.16.7
- "@esbuild/linux-x64": 0.16.7
- "@esbuild/netbsd-x64": 0.16.7
- "@esbuild/openbsd-x64": 0.16.7
- "@esbuild/sunos-x64": 0.16.7
- "@esbuild/win32-arm64": 0.16.7
- "@esbuild/win32-ia32": 0.16.7
- "@esbuild/win32-x64": 0.16.7
+ debug: ^4.3.4
+ zod: ^3.19.1
+ peerDependencies:
+ browserslist: ^4.21.4
+ esbuild: ~0.16.1
+ checksum: 8642d107e9f9f6f7216e819794084f6d512dbbbeec77fcafa9fdbd185a2831dcd6524e796c8e770a66974fc7210534ed6857e1705bf600e1dea14e8ca5941f50
+ languageName: node
+ linkType: hard
+
+"esbuild@npm:0.16.17, esbuild@npm:^0.16.17":
+ version: 0.16.17
+ resolution: "esbuild@npm:0.16.17"
+ dependencies:
+ "@esbuild/android-arm": 0.16.17
+ "@esbuild/android-arm64": 0.16.17
+ "@esbuild/android-x64": 0.16.17
+ "@esbuild/darwin-arm64": 0.16.17
+ "@esbuild/darwin-x64": 0.16.17
+ "@esbuild/freebsd-arm64": 0.16.17
+ "@esbuild/freebsd-x64": 0.16.17
+ "@esbuild/linux-arm": 0.16.17
+ "@esbuild/linux-arm64": 0.16.17
+ "@esbuild/linux-ia32": 0.16.17
+ "@esbuild/linux-loong64": 0.16.17
+ "@esbuild/linux-mips64el": 0.16.17
+ "@esbuild/linux-ppc64": 0.16.17
+ "@esbuild/linux-riscv64": 0.16.17
+ "@esbuild/linux-s390x": 0.16.17
+ "@esbuild/linux-x64": 0.16.17
+ "@esbuild/netbsd-x64": 0.16.17
+ "@esbuild/openbsd-x64": 0.16.17
+ "@esbuild/sunos-x64": 0.16.17
+ "@esbuild/win32-arm64": 0.16.17
+ "@esbuild/win32-ia32": 0.16.17
+ "@esbuild/win32-x64": 0.16.17
dependenciesMeta:
"@esbuild/android-arm":
optional: true
@@ -19416,84 +19264,7 @@ __metadata:
optional: true
bin:
esbuild: bin/esbuild
- checksum: 53732942109a8a22d647810d90623dd48418f49fd9d1613688585a6f81677fd8525f53658778a7b92f1124cdfbf73e6efb74385be52cf6aa11aa97f8397ec93c
- languageName: node
- linkType: hard
-
-"esbuild@npm:^0.15.6":
- version: 0.15.12
- resolution: "esbuild@npm:0.15.12"
- dependencies:
- "@esbuild/android-arm": 0.15.12
- "@esbuild/linux-loong64": 0.15.12
- esbuild-android-64: 0.15.12
- esbuild-android-arm64: 0.15.12
- esbuild-darwin-64: 0.15.12
- esbuild-darwin-arm64: 0.15.12
- esbuild-freebsd-64: 0.15.12
- esbuild-freebsd-arm64: 0.15.12
- esbuild-linux-32: 0.15.12
- esbuild-linux-64: 0.15.12
- esbuild-linux-arm: 0.15.12
- esbuild-linux-arm64: 0.15.12
- esbuild-linux-mips64le: 0.15.12
- esbuild-linux-ppc64le: 0.15.12
- esbuild-linux-riscv64: 0.15.12
- esbuild-linux-s390x: 0.15.12
- esbuild-netbsd-64: 0.15.12
- esbuild-openbsd-64: 0.15.12
- esbuild-sunos-64: 0.15.12
- esbuild-windows-32: 0.15.12
- esbuild-windows-64: 0.15.12
- esbuild-windows-arm64: 0.15.12
- dependenciesMeta:
- "@esbuild/android-arm":
- optional: true
- "@esbuild/linux-loong64":
- optional: true
- esbuild-android-64:
- optional: true
- esbuild-android-arm64:
- optional: true
- esbuild-darwin-64:
- optional: true
- esbuild-darwin-arm64:
- optional: true
- esbuild-freebsd-64:
- optional: true
- esbuild-freebsd-arm64:
- optional: true
- esbuild-linux-32:
- optional: true
- esbuild-linux-64:
- optional: true
- esbuild-linux-arm:
- optional: true
- esbuild-linux-arm64:
- optional: true
- esbuild-linux-mips64le:
- optional: true
- esbuild-linux-ppc64le:
- optional: true
- esbuild-linux-riscv64:
- optional: true
- esbuild-linux-s390x:
- optional: true
- esbuild-netbsd-64:
- optional: true
- esbuild-openbsd-64:
- optional: true
- esbuild-sunos-64:
- optional: true
- esbuild-windows-32:
- optional: true
- esbuild-windows-64:
- optional: true
- esbuild-windows-arm64:
- optional: true
- bin:
- esbuild: bin/esbuild
- checksum: b344d52c57616917719ac2fa38a58eba7d3c9d2a295116272b3e16a4f6327dc42549274c06560d301f9235a6fe31ccb45499b31d04820dfb8527d89d9766a2ad
+ checksum: 4c2cc609ecfb426554bc3f75beb92d89eb2d0c515cfceebaa36c7599d7dcaab7056b70f6d6b51e72b45951ddf9021ee28e356cf205f8e42cc055d522312ea30c
languageName: node
linkType: hard
@@ -22150,6 +21921,7 @@ __metadata:
baron: 3.0.3
blob-polyfill: 7.0.20220408
brace: 0.11.1
+ browserslist: ^4.21.4
calculate-size: 1.1.1
centrifuge: 3.1.0
classnames: 2.3.2
@@ -22169,6 +21941,9 @@ __metadata:
emotion: 11.0.0
enzyme: 3.11.0
enzyme-to-json: 3.6.2
+ esbuild: 0.16.17
+ esbuild-loader: 2.21.0
+ esbuild-plugin-browserslist: ^0.6.0
eslint: 8.31.0
eslint-config-prettier: 8.6.0
eslint-plugin-import: ^2.26.0
@@ -39875,6 +39650,13 @@ __metadata:
languageName: node
linkType: hard
+"zod@npm:^3.19.1":
+ version: 3.20.2
+ resolution: "zod@npm:3.20.2"
+ checksum: 04172f7e9350372684ccd298d4716908edc9113751295b6c4e1b3ea84e2af8997e504b33ba36f4741417bb2a5dc90bfd40501f6b0e7389df10e42a63d6d8366c
+ languageName: node
+ linkType: hard
+
"zwitch@npm:^1.0.0":
version: 1.0.5
resolution: "zwitch@npm:1.0.5"