You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-07-16 00:14:34 +02:00
All: Use Lerna to manage monorepo
This commit is contained in:
25
packages/lib/services/rest/utils/requestPaginationOptions.ts
Normal file
25
packages/lib/services/rest/utils/requestPaginationOptions.ts
Normal file
@ -0,0 +1,25 @@
|
||||
import { Pagination, PaginationOrder, PaginationOrderDir } from '../../../models/utils/types';
|
||||
import { Request } from '../Api';
|
||||
import { ErrorBadRequest } from './errors';
|
||||
|
||||
function requestPaginationOrder(request:Request):PaginationOrder[] {
|
||||
const orderBy:string = request.query.order_by ? request.query.order_by : 'updated_time';
|
||||
const orderDir:PaginationOrderDir = request.query.order_dir ? request.query.order_dir : PaginationOrderDir.ASC;
|
||||
|
||||
return [{
|
||||
by: orderBy,
|
||||
dir: orderDir,
|
||||
caseInsensitive: true,
|
||||
}];
|
||||
}
|
||||
|
||||
export default function(request:Request):Pagination {
|
||||
const limit = request.query.limit ? request.query.limit : 100;
|
||||
if (limit < 0 || limit > 100) throw new ErrorBadRequest(`Limit out of bond: ${limit}`);
|
||||
const order:PaginationOrder[] = requestPaginationOrder(request);
|
||||
|
||||
return {
|
||||
limit,
|
||||
order,
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user