github.com/anth0d/nomad@v0.0.0-20221214183521-ae3a0a2cad06/ui/app/services/breadcrumbs.js (about)

     1  import Service from '@ember/service';
     2  import { action } from '@ember/object';
     3  import { tracked } from '@glimmer/tracking';
     4  import { schedule } from '@ember/runloop';
     5  
     6  export default class BucketService extends Service {
     7    @tracked crumbs = [];
     8  
     9    @action registerBreadcrumb(crumb) {
    10      schedule('actions', this, () => {
    11        this.crumbs = [...this.crumbs, crumb];
    12      });
    13    }
    14  
    15    @action deregisterBreadcrumb(crumb) {
    16      const newCrumbs = this.crumbs.filter((c) => c !== crumb);
    17  
    18      this.crumbs = newCrumbs;
    19    }
    20  }