ui/app/models/mountentry.js

45 lines
1.1 KiB
JavaScript

import { computed } from '@ember/object';
import { equal } from '@ember/object/computed';
import { inject as service } from '@ember/service';
import Resource from '@rancher/ember-api-store/models/resource';
import { reference } from '@rancher/ember-api-store/utils/denormalize';
export default Resource.extend({
intl: service(),
isReadWrite: equal('permission', 'rw'),
isReadOnly: equal('permission', 'ro'),
instance: reference('instanceId'),
volume: reference('volumeId'),
displayVolumeName: computed('volumeName', function() {
let name = this.volumeName;
if ( name.match(/^[0-9a-f]{64}$/) ) {
return (`${ name.substr(0, 12) }…`).htmlSafe();
}
return name;
}),
displayPermission: computed('permission', function() {
let permission = this.permission;
let out = null;
let intl = this.intl;
switch (permission) {
case 'ro':
out = intl.t('formVolumeRow.opts.ro');
break;
case 'rw':
out = intl.t('formVolumeRow.opts.rw');
break;
default:
out = permission;
break;
}
return out;
}),
});