poc(influxdb v3 editor): more testing of new influxdb editor approach
This commit is contained in:
@@ -65,15 +65,12 @@
|
||||
|
||||
<div ng-hide="target.rawQuery">
|
||||
|
||||
<div class="tight-form" ng-repeat="field in target.fields">
|
||||
<div class="tight-form" ng-repeat="parts in select">
|
||||
<ul class="tight-form-list">
|
||||
<li class="tight-form-item query-keyword tight-form-align" style="width: 75px;">
|
||||
<span ng-show="$index === 0">SELECT</span>
|
||||
</li>
|
||||
<li>
|
||||
<metric-segment-model property="field.name" get-options="getFields()" on-change="get_data()"></metric-segment>
|
||||
</li>
|
||||
<li ng-repeat="func in field.parts">
|
||||
<li ng-repeat="func in parts">
|
||||
<span influx-query-part-editor class="tight-form-item tight-form-func">
|
||||
</span>
|
||||
</li>
|
||||
|
||||
@@ -18,14 +18,25 @@ function (angular, _, InfluxQueryBuilder, queryPart) {
|
||||
var target = $scope.target;
|
||||
target.tags = target.tags || [];
|
||||
target.groupBy = target.groupBy || [{type: 'time', interval: 'auto'}];
|
||||
target.fields = target.fields || [{name: 'value', func: target.function || 'mean'}];
|
||||
target.fields[0].parts = [
|
||||
queryPart.create('mean', { withDefaultParams: true }),
|
||||
queryPart.create('derivate', { withDefaultParams: true }),
|
||||
queryPart.create('math', { withDefaultParams: true }),
|
||||
queryPart.create('alias', { withDefaultParams: true }),
|
||||
target.fields = target.fields || [{name: 'value'}];
|
||||
target.select = target.select || [[{type: 'field', params: ['value']}]];
|
||||
target.select[0] = [
|
||||
{type: 'field', params: ['value']},
|
||||
{type: 'mean', params: []},
|
||||
{type: 'derivate', params: ['10s']},
|
||||
{type: 'math', params: ['/ 100']},
|
||||
{type: 'alias', params: ['google']},
|
||||
];
|
||||
|
||||
$scope.select = _.map(target.select, function(parts) {
|
||||
return _.map(parts, function(part) {
|
||||
var partModel = queryPart.create(part.type);
|
||||
partModel.params = part.params;
|
||||
partModel.updateText();
|
||||
return partModel;
|
||||
});
|
||||
});
|
||||
|
||||
$scope.func = queryPart.create('time', { withDefaultParams: true });
|
||||
|
||||
$scope.queryBuilder = new InfluxQueryBuilder(target);
|
||||
|
||||
@@ -25,6 +25,13 @@ function (_, $) {
|
||||
index[funcDef.shortName || funcDef.name] = funcDef;
|
||||
}
|
||||
|
||||
addFuncDef({
|
||||
name: 'field',
|
||||
category: categories.Transform,
|
||||
params: [{type: 'field'}],
|
||||
defaultParams: ['value'],
|
||||
});
|
||||
|
||||
addFuncDef({
|
||||
name: 'mean',
|
||||
category: categories.Transform,
|
||||
|
||||
@@ -16,10 +16,8 @@ function (angular, _, $) {
|
||||
|
||||
var funcControlsTemplate =
|
||||
'<div class="tight-form-func-controls">' +
|
||||
'<span class="pointer fa fa-arrow-left"></span>' +
|
||||
'<span class="pointer fa fa-question-circle"></span>' +
|
||||
'<span class="pointer fa fa-remove" ></span>' +
|
||||
'<span class="pointer fa fa-arrow-right"></span>' +
|
||||
'</div>';
|
||||
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user