aboutsummaryrefslogtreecommitdiffstats
path: root/packages/sra-spec/src/parameters.ts
blob: 48ffb036df24d73ac300ef42fc3f0282a958c639 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import { ParameterObject } from '@loopback/openapi-v3-types';
export const paginationParameters: ParameterObject[] = [
    {
        name: 'page',
        in: 'query',
        description: 'The number of the page to request in the collection.',
        example: 3,
        schema: {
            type: 'number',
            default: 1,
        },
    },
    {
        name: 'perPage',
        in: 'query',
        description: 'The number of records to return per page.',
        example: 10,
        schema: {
            type: 'number',
            default: 100,
        },
    },
];

export const networkdIdParameter: ParameterObject = {
    name: 'networkId',
    in: 'query',
    description: 'The id of the Ethereum network',
    example: 42,
    schema: {
        type: 'number',
        default: 1,
    },
};

export const generateParameters = (parameters: ParameterObject[], isPaginated: boolean = false): ParameterObject[] => {
    const optionalParameters = isPaginated ? paginationParameters : [];
    return [...parameters, networkdIdParameter, ...optionalParameters];
};