github.com/iqoqo/nomad@v0.11.3-0.20200911112621-d7021c74d101/ui/app/routes/csi/plugins/plugin.js (about) 1 import { inject as service } from '@ember/service'; 2 import Route from '@ember/routing/route'; 3 import { collect } from '@ember/object/computed'; 4 import notifyError from 'nomad-ui/utils/notify-error'; 5 import { watchRecord } from 'nomad-ui/utils/properties/watch'; 6 import WithWatchers from 'nomad-ui/mixins/with-watchers'; 7 8 export default Route.extend(WithWatchers, { 9 store: service(), 10 system: service(), 11 12 breadcrumbs: plugin => [ 13 { 14 label: 'Plugins', 15 args: ['csi.plugins'], 16 }, 17 { 18 label: plugin.plainId, 19 args: ['csi.plugins.plugin', plugin.plainId], 20 }, 21 ], 22 23 startWatchers(controller, model) { 24 if (!model) return; 25 26 controller.set('watchers', { 27 model: this.watch.perform(model), 28 }); 29 }, 30 31 serialize(model) { 32 return { plugin_name: model.get('plainId') }; 33 }, 34 35 model(params) { 36 return this.store.findRecord('plugin', `csi/${params.plugin_name}`).catch(notifyError(this)); 37 }, 38 39 watch: watchRecord('plugin'), 40 watchers: collect('watch'), 41 });