ui/app/components/container-default-limit/component.js

57 lines
1.5 KiB
JavaScript

import { get, set, observer, setProperties } from '@ember/object';
import Component from '@ember/component';
import { convertToMillis } from 'shared/utils/util';
import { parseSi } from 'shared/utils/parse-unit';
import layout from './template';
export default Component.extend({
layout,
limit: null,
init() {
this._super(...arguments);
setProperties(this, {
requestsCpu: convertToMillis(get(this, 'limit.requestsCpu')),
limitsCpu: convertToMillis(get(this, 'limit.limitsCpu')),
});
if ( get(this, 'limit.requestsMemory') ) {
set(this, 'requestsMemory', parseSi(get(this, 'limit.requestsMemory'), 1024) / 1048576);
}
if ( get(this, 'limit.limitsMemory') ) {
set(this, 'limitsMemory', parseSi(get(this, 'limit.limitsMemory'), 1024) / 1048576);
}
},
limitChanged: observer('requestsCpu', 'limitsCpu', 'requestsMemory', 'limitsMemory', function() {
const requestsCpu = get(this, 'requestsCpu');
const limitsCpu = get(this, 'limitsCpu');
const requestsMemory = get(this, 'requestsMemory');
const limitsMemory = get(this, 'limitsMemory');
const out = {};
if ( requestsCpu ) {
set(out, 'requestsCpu', `${ requestsCpu }m`)
}
if ( limitsCpu ) {
set(out, 'limitsCpu', `${ limitsCpu }m`)
}
if ( requestsMemory ) {
set(out, 'requestsMemory', `${ requestsMemory }Mi`)
}
if ( limitsMemory ) {
set(out, 'limitsMemory', `${ limitsMemory }Mi`)
}
if (this.changed) {
this.changed(out);
}
})
});