Files
mongo/tools/wtstats/template/models/chart.js

55 lines
1.2 KiB
JavaScript

var AmpersandState = require('ampersand-state'),
_ = require('lodash'),
debug = require('debug')('model:chart');
var Chart = module.exports = AmpersandState.extend({
props: {
xSetting: {
type: 'string',
default: 'relative',
values: ['relative', 'absolute']
},
ySetting: {
type: 'string',
default: 'linear',
values: ['linear', 'log-scale']
},
allowSampling: {
type: 'boolean',
default: true
},
subSampled: {
type: 'boolean',
default: false
},
recalcXDomain: {
type: 'boolean',
default: true
}
},
derived: {
// proxy stats from parent
series: {
deps: ['parent'],
cache: false,
fn: function () {
var series = this.parent.stats
.filter(function (stat) {
return stat.selected;
})
.map(function (stat) {
return _.pick(stat, ['color', 'data', 'name', 'cid', 'selected']);
})
return series;
}
},
empty: {
deps: ['parent', 'series'],
cache: false,
fn: function () {
return this.series.length === 0;
}
}
}
});