From fae3ae2580fec626b8d07f1ac2a13899ab59e9ca Mon Sep 17 00:00:00 2001 From: Erik Sundell Date: Fri, 23 Nov 2018 14:32:56 +0100 Subject: [PATCH] use plugin_loader directly instead of using the wrapper --- public/app/features/explore/QueryEditor.tsx | 20 +++++++++-------- public/app/features/panel/metrics_wrapper.ts | 23 -------------------- 2 files changed, 11 insertions(+), 32 deletions(-) delete mode 100644 public/app/features/panel/metrics_wrapper.ts diff --git a/public/app/features/explore/QueryEditor.tsx b/public/app/features/explore/QueryEditor.tsx index bbff55a1cce..3d680163ac4 100644 --- a/public/app/features/explore/QueryEditor.tsx +++ b/public/app/features/explore/QueryEditor.tsx @@ -1,13 +1,16 @@ import React, { PureComponent } from 'react'; import { getAngularLoader, AngularComponent } from 'app/core/services/AngularLoader'; -import 'app/features/panel/metrics_wrapper'; +import { Emitter } from 'app/core/utils/emitter'; import { DataQuery } from 'app/types'; +import 'app/features/plugins/plugin_loader'; interface QueryEditorProps { datasource: any; error?: string | JSX.Element; onExecuteQuery?: () => void; onQueryChange?: (value: DataQuery, override?: boolean) => void; + initialQuery: DataQuery; + exploreEvents: Emitter; } export default class QueryEditor extends PureComponent { @@ -19,27 +22,26 @@ export default class QueryEditor extends PureComponent { return; } - const { datasource } = this.props; + const { datasource, initialQuery, exploreEvents } = this.props; const loader = getAngularLoader(); - const template = ''; + const template = ' '; const target = { datasource: datasource.name }; - // const changeableTarget = onChange(target, () => console.log(target)); - // const changeable = onChange(target, () => console.log(target)); const scopeProps = { - target, //: changeable, + target, ctrl: { refresh: () => { - this.props.onQueryChange({ refId: 'TEST', ...target }, false); + this.props.onQueryChange({ refId: initialQuery.refId, ...target }, false); this.props.onExecuteQuery(); }, events: { - on: () => {}, + on: () => exploreEvents, }, panel: { datasource, + targets: [{}], }, dashboard: { - getNextQueryLetter: x => 'TEST', + getNextQueryLetter: x => '', }, }, }; diff --git a/public/app/features/panel/metrics_wrapper.ts b/public/app/features/panel/metrics_wrapper.ts deleted file mode 100644 index 9cfdf035523..00000000000 --- a/public/app/features/panel/metrics_wrapper.ts +++ /dev/null @@ -1,23 +0,0 @@ -import coreModule from 'app/core/core_module'; - -/** @ngInject */ -export function metricsWrapperDirective() { - 'use strict'; - return { - restrict: 'E', - scope: true, - template: ` `, - link: $scope => { - $scope.panelCtrl = $scope.ctrl; - $scope.ctrl = $scope.panelCtrl; - $scope.panel = $scope.panelCtrl.panel; - $scope.panel.datasource = $scope.panel.datasource || null; - $scope.panel.targets = $scope.panel.targets || [{}]; - $scope.events = $scope.panelCtrl.events; - $scope.refresh = $scope.panelCtrl.refresh; - $scope.dashboard = $scope.panelCtrl.dashboard; - }, - }; -} - -coreModule.directive('metricsWrapper', metricsWrapperDirective);