16 lines
670 B
TypeScript
16 lines
670 B
TypeScript
import { inject } from '@angular/core';
|
|
import { ResolveFn } from '@angular/router';
|
|
|
|
import { Customer } from '../core/customer';
|
|
import { PagedResult } from '../core/paged-result';
|
|
import { CustomerService } from './customer.service';
|
|
|
|
export const customerListResolver: ResolveFn<PagedResult<Customer>> = (route) => {
|
|
const q = route.queryParamMap.get('q');
|
|
const page = Number(route.queryParamMap.get('p') ?? 0);
|
|
const size = Number(route.queryParamMap.get('s') ?? 50);
|
|
const field = route.queryParamMap.get('f') ?? 'name';
|
|
const direction = route.queryParamMap.get('d') ?? 'asc';
|
|
return inject(CustomerService).list(q, page, size, field, direction);
|
|
};
|