meilisearch-admin/app/controllers/admin/tasks/index.js

42 lines
1 KiB
JavaScript
Raw Normal View History

2022-09-15 15:03:56 +00:00
import Controller from '@ember/controller';
import { tracked } from '@glimmer/tracking';
2022-09-16 10:12:57 +00:00
import { taskStatuses, taskTypes } from 'meiliadmin/models/task';
2022-09-16 12:32:08 +00:00
import { inject as service } from '@ember/service';
import { resource, use } from 'ember-resources';
2022-09-15 15:03:56 +00:00
export default class AdminTasksIndexController extends Controller {
2022-09-16 12:32:08 +00:00
@service meilisearch;
2022-09-16 10:12:57 +00:00
taskStatuses = taskStatuses;
taskTypes = taskTypes;
2022-09-16 12:32:08 +00:00
queryParams = ['limit', 'status', 'type', 'indexUid'];
2022-09-15 15:03:56 +00:00
@tracked limit = 20;
@tracked from;
@tracked status;
@tracked type;
@tracked indexUid;
2022-09-16 12:32:08 +00:00
@use
tasks = resource(() => {
this.tasksHolder.isLoading = true;
const params = {
limit: this.limit,
from: this.from,
status: this.status,
type: this.type,
indexUid: this.indexUid,
};
this.meilisearch.getTasks(params).then((data) => {
this.tasksHolder.results = this.tasksHolder.results.concat(data.results);
this.tasksHolder.next = data.next;
this.tasksHolder.isLoading = false;
});
return this.tasksHolder;
});
2022-09-15 15:03:56 +00:00
}