@@ -33,6 +33,13 @@ interface UpdateEditRequest extends AuthenticatedRequestById {
3333 Body : EditRequest
3434}
3535
36+ interface GetPaginatedEditsByRegionId extends AuthenticatedRequestByRegionId {
37+ Querystring : {
38+ afterId : string ,
39+ pageSize : number
40+ }
41+ }
42+
3643interface GetPaginatedEditsByStatusRequest extends AuthenticatedRequest {
3744 Querystring : {
3845 status : string ,
@@ -41,43 +48,9 @@ interface GetPaginatedEditsByStatusRequest extends AuthenticatedRequest {
4148 }
4249}
4350
44- interface PaginatedQueryString {
45- afterId : string ,
46- pageSize : number
47- }
48-
49- interface GetPaginatedEditsRequest extends AuthenticatedRequest {
50- Querystring : PaginatedQueryString
51- }
52-
53- interface GetPaginatedEditsByRegionId extends AuthenticatedRequestByRegionId {
54- Querystring : PaginatedQueryString
55- }
56-
57-
5851export function createEditEndpoint ( app : FastifyInstance , dataLayer : DataLayer , verifyJwt : Auth0JwtVerifier ) {
5952 const MAX_COUNT = 1000000000 ;
6053
61- app . get < GetPaginatedEditsRequest > (
62- `/edits` ,
63- { schema : getEditRequestByIdSchema } ,
64- async ( request , reply ) => {
65- let { userAppId} = await verifyJwt ( request ) ;
66- if ( ! userAppId ) {
67- reply . unauthorized ( "Must be logged in!" ) ;
68- return ;
69- } else {
70- let pageSize = ! ! request . query . pageSize && request . query . pageSize > 0 ? request . query . pageSize : DEFAULT_PAGE_SIZE ;
71- let response = {
72- status : "ok" ,
73- editRequests : await dataLayer . getEditRequestsByUser ( userAppId , pageSize , request . query . afterId ) ,
74- totalCount : ( await dataLayer . getEditRequestsByUser ( userAppId , MAX_COUNT ) ) . length
75- }
76- return JSON . stringify ( response ) ;
77- }
78- }
79- ) ;
80-
8154 app . get < GetPaginatedEditsByStatusRequest > (
8255 "/edits/all" ,
8356 { schema : getAllEditRequestsByStatusSchema } ,
0 commit comments