All files / src/docs swagger_options.ts

100% Statements 3/3
100% Branches 0/0
100% Functions 0/0
100% Lines 3/3

Press n or j to go to the next uncovered block, b, p or k for the previous block.

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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66  7x                                                               7x               7x                                                
 
const commentSchema = {
    type: 'object',
    properties: {
        id: {
            type: 'string',
            description: 'The comment ID'
        },
        postId: {
            type: 'string',
            description: 'The ID of the post the comment belongs to'
        },
        content: {
            type: 'string',
            description: 'The content of the comment'
        },
        owner: {
            type: 'string',
            description: 'The ID of the user who owns the comment'
        },
        createdAt: {
            type: 'string',
            format: 'date-time',
            description: 'Timestamp when the comment was created'
        },
        updatedAt: {
            type: 'string',
            format: 'date-time',
            description: 'Timestamp when the comment was last updated'
        }
    }
};
 
const security = {
        BearerAuth: {
            type: 'http',
            scheme: 'bearer',
            bearerFormat: 'JWT'
        }
    };
 
const options = {
    definition: {
        openapi: '3.0.0',
        info: {
            title: 'API Documentation',
            version: '1.0.0',
        },
        components: {
            securitySchemes: security,
            schemas: {
                Comment: commentSchema
            }
        },
        security: [
            {
                BearerAuth: []
            }
        ]
    },
    apis: ['./src/routes/*.ts']
};
 
export default options;