24 lines
523 B
JavaScript
24 lines
523 B
JavaScript
import Component from '@glimmer/component';
|
|
import { tracked } from '@glimmer/tracking';
|
|
import { action } from '@ember/object';
|
|
import { schedule } from '@ember/runloop';
|
|
|
|
export default class DisclosureComponent extends Component {
|
|
@tracked ids = '';
|
|
|
|
@action
|
|
add(id) {
|
|
schedule('afterRender', () => {
|
|
this.ids = `${this.ids}${this.ids.length > 0 ? ` ` : ``}${id}`;
|
|
});
|
|
}
|
|
|
|
@action
|
|
remove(id) {
|
|
this.ids = this.ids
|
|
.split(' ')
|
|
.filter(item => item !== id)
|
|
.join(' ');
|
|
}
|
|
}
|