mirror of https://github.com/rancher/ui.git
52 lines
978 B
JavaScript
52 lines
978 B
JavaScript
import { inject as service } from '@ember/service';
|
|
import { get, set, observer } from '@ember/object';
|
|
import Component from '@ember/component';
|
|
import layout from './template';
|
|
|
|
const HTTPS = 'HTTPS';
|
|
const HTTP = 'HTTP'
|
|
|
|
const OPTIONS = [
|
|
{
|
|
label: HTTP,
|
|
value: HTTP
|
|
},
|
|
{
|
|
label: HTTPS,
|
|
value: HTTPS
|
|
}
|
|
];
|
|
|
|
export default Component.extend({
|
|
scope: service(),
|
|
|
|
layout,
|
|
|
|
editing: false,
|
|
|
|
protocolOptions: OPTIONS,
|
|
|
|
init() {
|
|
this._super(...arguments);
|
|
|
|
set(this, 'metrics', get(this, 'workload.workloadMetrics') || []);
|
|
},
|
|
|
|
actions: {
|
|
add() {
|
|
get(this, 'metrics').pushObject({
|
|
path: '',
|
|
port: '',
|
|
schema: HTTP
|
|
});
|
|
},
|
|
|
|
remove(obj) {
|
|
get(this, 'metrics').removeObject(obj);
|
|
},
|
|
},
|
|
|
|
metricsChanged: observer('metrics.@each.{port,path,schema}', function() {
|
|
set(this, 'workload.workloadMetrics', get(this, 'metrics').filter((metric) => get(metric, 'port')));
|
|
})
|
|
}); |