32 lines
1004 B
JavaScript
32 lines
1004 B
JavaScript
import Controller from '@ember/controller';
|
|
import { service } from '@ember/service';
|
|
import { restartableTask, task, timeout } from 'ember-concurrency';
|
|
import { tracked } from '@glimmer/tracking';
|
|
|
|
export default class MockLoginController extends Controller {
|
|
queryParams = ['gemeente', 'page'];
|
|
@service store;
|
|
@tracked gemeente = '';
|
|
@tracked page = 0;
|
|
size = 10;
|
|
|
|
queryStore = task(async () => {
|
|
const filter = { provider: 'https://github.com/lblod/mock-login-service' };
|
|
if (this.gemeente) filter.gebruiker = { achternaam: this.gemeente };
|
|
const accounts = await this.store.query('account', {
|
|
include: 'gebruiker,gebruiker.bestuurseenheden',
|
|
filter: filter,
|
|
page: { size: this.size, number: this.page },
|
|
sort: 'gebruiker.achternaam',
|
|
});
|
|
return accounts;
|
|
});
|
|
|
|
updateSearch = restartableTask(async (value) => {
|
|
await timeout(500);
|
|
this.page = 0;
|
|
this.gemeente = value;
|
|
this.model = await this.queryStore.perform();
|
|
});
|
|
}
|