@rucken/todo-core
Version:
Core with base class and entities for todo application maked on Angular7+ and based on Rucken template
52 lines • 4.84 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { plainToClass } from 'class-transformer';
import { ProviderActionEnum } from 'ngx-repository';
import { Task } from '../models/task';
/** @type {?} */
export const DEFAULT_TASKS_CONFIG = {
name: 'task',
pluralName: 'tasks',
autoload: true,
paginationMeta: {
perPage: 5
},
actionOptions: {
responseData: (/**
* @param {?} data
* @param {?} action
* @return {?}
*/
(data, action) => {
if (action === ProviderActionEnum.Delete) {
return true;
}
else {
if (action === ProviderActionEnum.LoadAll) {
return plainToClass(Task, data && data.body && data.body.tasks);
}
else {
return plainToClass(Task, data && data.body && data.body.task);
}
}
}),
responsePaginationMeta: (/**
* @param {?} data
* @param {?} action
* @return {?}
*/
(data, action) => {
return { totalResults: data && data.body && data.body.meta && data.body.meta.totalResults, perPage: undefined };
})
},
restOptions: {
limitQueryParam: 'per_page',
pageQueryParam: 'cur_page',
searchTextQueryParam: 'q'
}
};
/** @type {?} */
export const TASKS_CONFIG_TOKEN = 'TasksConfig';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza3MuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHJ1Y2tlbi90b2RvLWNvcmUvIiwic291cmNlcyI6WyJsaWIvY29uZmlncy90YXNrcy5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQXdDLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUYsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUV0QyxNQUFNLE9BQU8sb0JBQW9CLEdBQStCO0lBQzlELElBQUksRUFBRSxNQUFNO0lBQ1osVUFBVSxFQUFFLE9BQU87SUFDbkIsUUFBUSxFQUFFLElBQUk7SUFDZCxjQUFjLEVBQUU7UUFDZCxPQUFPLEVBQUUsQ0FBQztLQUNYO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsWUFBWTs7Ozs7UUFBRSxDQUFDLElBQVMsRUFBRSxNQUEwQixFQUFFLEVBQUU7WUFDdEQsSUFBSSxNQUFNLEtBQUssa0JBQWtCLENBQUMsTUFBTSxFQUFFO2dCQUN4QyxPQUFPLElBQUksQ0FBQzthQUNiO2lCQUFNO2dCQUNMLElBQUksTUFBTSxLQUFLLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtvQkFDekMsT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQ2pFO3FCQUFNO29CQUNMLE9BQU8sWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNoRTthQUNGO1FBQ0gsQ0FBQyxDQUFBO1FBQ0Qsc0JBQXNCOzs7OztRQUFFLENBQUMsSUFBUyxFQUFFLE1BQTBCLEVBQWtCLEVBQUU7WUFDaEYsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQ2xILENBQUMsQ0FBQTtLQUNGO0lBQ0QsV0FBVyxFQUFFO1FBQ1gsZUFBZSxFQUFFLFVBQVU7UUFDM0IsY0FBYyxFQUFFLFVBQVU7UUFDMUIsb0JBQW9CLEVBQUUsR0FBRztLQUMxQjtDQUNGOztBQUNELE1BQU0sT0FBTyxrQkFBa0IsR0FBRyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgSVJlc3RQcm92aWRlck9wdGlvbnMsIFBhZ2luYXRpb25NZXRhLCBQcm92aWRlckFjdGlvbkVudW0gfSBmcm9tICduZ3gtcmVwb3NpdG9yeSc7XG5pbXBvcnQgeyBUYXNrIH0gZnJvbSAnLi4vbW9kZWxzL3Rhc2snO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9UQVNLU19DT05GSUc6IElSZXN0UHJvdmlkZXJPcHRpb25zPFRhc2s+ID0ge1xuICBuYW1lOiAndGFzaycsXG4gIHBsdXJhbE5hbWU6ICd0YXNrcycsXG4gIGF1dG9sb2FkOiB0cnVlLFxuICBwYWdpbmF0aW9uTWV0YToge1xuICAgIHBlclBhZ2U6IDVcbiAgfSxcbiAgYWN0aW9uT3B0aW9uczoge1xuICAgIHJlc3BvbnNlRGF0YTogKGRhdGE6IGFueSwgYWN0aW9uOiBQcm92aWRlckFjdGlvbkVudW0pID0+IHtcbiAgICAgIGlmIChhY3Rpb24gPT09IFByb3ZpZGVyQWN0aW9uRW51bS5EZWxldGUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoYWN0aW9uID09PSBQcm92aWRlckFjdGlvbkVudW0uTG9hZEFsbCkge1xuICAgICAgICAgIHJldHVybiBwbGFpblRvQ2xhc3MoVGFzaywgZGF0YSAmJiBkYXRhLmJvZHkgJiYgZGF0YS5ib2R5LnRhc2tzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFRhc2ssIGRhdGEgJiYgZGF0YS5ib2R5ICYmIGRhdGEuYm9keS50YXNrKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgcmVzcG9uc2VQYWdpbmF0aW9uTWV0YTogKGRhdGE6IGFueSwgYWN0aW9uOiBQcm92aWRlckFjdGlvbkVudW0pOiBQYWdpbmF0aW9uTWV0YSA9PiB7XG4gICAgICByZXR1cm4geyB0b3RhbFJlc3VsdHM6IGRhdGEgJiYgZGF0YS5ib2R5ICYmIGRhdGEuYm9keS5tZXRhICYmIGRhdGEuYm9keS5tZXRhLnRvdGFsUmVzdWx0cywgcGVyUGFnZTogdW5kZWZpbmVkIH07XG4gICAgfVxuICB9LFxuICByZXN0T3B0aW9uczoge1xuICAgIGxpbWl0UXVlcnlQYXJhbTogJ3Blcl9wYWdlJyxcbiAgICBwYWdlUXVlcnlQYXJhbTogJ2N1cl9wYWdlJyxcbiAgICBzZWFyY2hUZXh0UXVlcnlQYXJhbTogJ3EnXG4gIH1cbn07XG5leHBvcnQgY29uc3QgVEFTS1NfQ09ORklHX1RPS0VOID0gJ1Rhc2tzQ29uZmlnJztcbiJdfQ==