mirror of https://github.com/rancher/ui.git
45 lines
1.1 KiB
JavaScript
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;
|
|
}),
|
|
});
|