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  });