OpenAPI (Swagger) module for Nest framework (node.js) :earth_americas:

Overview

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective

Description

OpenAPI (Swagger) module for Nest.

Installation

$ npm i --save @nestjs/swagger

Quick Start

Overview & Tutorial

Migration from v3

If you're currently using @nestjs/swagger@3.*, note the following breaking/API changes in version 4.0.

The following decorators have been changed/renamed:

  • @ApiModelProperty is now @ApiProperty
  • @ApiModelPropertyOptional is now @ApiPropertyOptional
  • @ApiResponseModelProperty is now @ApiResponseProperty
  • @ApiImplicitQuery is now @ApiQuery
  • @ApiImplicitParam is now @ApiParam
  • @ApiImplicitBody is now @ApiBody
  • @ApiImplicitHeader is now @ApiHeader
  • @ApiOperation({ title: 'test' }) is now @ApiOperation({ summary: 'test' })
  • @ApiUseTags is now @ApiTags

DocumentBuilder breaking changes (updated method signatures):

  • addTag
  • addBearerAuth
  • addOAuth2
  • setContactEmail is now setContact
  • setHost has been removed
  • setSchemes has been removed (use the addServer instead, e.g., addServer('http://'))

The following methods have been added:

  • addServer
  • addApiKey
  • addBasicAuth
  • addSecurity
  • addSecurityRequirements

Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

Stay in touch

License

Nest is MIT licensed.

Comments
  • refactor() the overall codebase refactor WIP

    refactor() the overall codebase refactor WIP

    PR Checklist

    Please check if your PR fulfills the following requirements:

    • [x] The commit message follows our guidelines: https://github.com/nestjs/nest/blob/master/CONTRIBUTING.md
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [ ] Docs have been added / updated (for bug fixes / features)

    PR Type

    What kind of change does this PR introduce?

    [x] Bugfix
    [x] Feature
    [x] Code style update (formatting, local variables)
    [x] Refactoring (no functional changes, no api changes)
    [x] Build related changes
    [ ] CI related changes
    [x] Other... Please describe: major release
    

    What is the current behavior?

    Issue Number: N/A

    What is the new behavior?

    Changes/features

    • the overall codebase refactor (improve typings, extract common functionalities)
    • add tests (+ validate schema against OpenAPI validator)
    • migrate to OpenAPI 3.0
    • add security-related decorators (e.g. @ApiSecurity(), @ApiBasicAuth())
    • allow specifying schema manually for more sophisticated scenarios (e.g. nested arrays)
    • breaking changes:
    1. All @ApiImplicit{...} decorators have been changed to @Api{...}, for example, @ApiImplicitBody() -> @ApiBody() - reason: the name was confusing because this operation actually wasn't "implicit".
    2. Both @ApiResponseProperty() and @ApiModelProperty -> @ApiProperty().

    Fixes

    • https://github.com/nestjs/swagger/issues/350
    • https://github.com/nestjs/swagger/issues/342
    • https://github.com/nestjs/swagger/issues/341
    • https://github.com/nestjs/swagger/issues/324
    • https://github.com/nestjs/swagger/issues/315
    • https://github.com/nestjs/swagger/issues/312
    • https://github.com/nestjs/swagger/issues/311
    • https://github.com/nestjs/swagger/issues/275
    • https://github.com/nestjs/swagger/issues/257
    • https://github.com/nestjs/swagger/issues/250
    • https://github.com/nestjs/swagger/issues/245
    • https://github.com/nestjs/swagger/issues/237
    • https://github.com/nestjs/swagger/issues/192
    • https://github.com/nestjs/swagger/issues/191
    • https://github.com/nestjs/swagger/issues/185
    • https://github.com/nestjs/swagger/issues/181
    • https://github.com/nestjs/swagger/issues/176
    • https://github.com/nestjs/swagger/issues/172
    • https://github.com/nestjs/swagger/issues/147
    • https://github.com/nestjs/swagger/issues/139
    • https://github.com/nestjs/swagger/issues/140
    • https://github.com/nestjs/swagger/issues/130
    • https://github.com/nestjs/swagger/issues/83
    • https://github.com/nestjs/swagger/issues/63
    • https://github.com/nestjs/swagger/issues/116

    Future

    As I've mentioned in this issue https://github.com/nestjs/swagger/issues/191, I planned to rewrite the entire package to use AST and generate JSON schema as an additional compilation step. However, this change would make the usage of the package slightly more complicated. In addition, most of the code written so far would have to be removed. Hence, I came up with another solution.

    The entire package has been somewhat refactored & most of the common issues should be addressed within this PR. Now, the next step would be to create a plugin.

    As you can read in this https://trilon.io/blog/announcing-nestjs-monorepos-and-new-commands blog post, new CLI features introduced plugins system. Thus, we can easily use the existing package and add some new features on top of it based on the AST and pre-compilation hook.

    The plugin would allow us to:

    • generate the default responses (based on the return type - extracted either Promise or Observable)
    • automatically add @ApiProperty() if not present
    • automatically set the property to either required: true or required: false depending on the question mark ? (optional value)
    • automatically transform arrays, for example
    before:
    ----
    @ApiProperty()
    tags: string[]
    
    after (this step is automated - "behind the curtain"):
    ----
    @ApiProperty({ type: [String] })
    tags: string[]
    
    • conditionally (if enabled) merge class-validator validation rules with OpenAPI properties
    • support generics (and maybe interfaces?, i'm not sure about the potential use-case yet)

    Does this PR introduce a breaking change?

    [x] Yes
    [ ] No
    

    Other information

    status: wip refactor 
    opened by kamilmysliwiec 56
  • [Regression] Swagger generates empty schemas

    [Regression] Swagger generates empty schemas

    I'm submitting a...

    • [x] Regression
    • [ ] Bug report
    • [ ] Feature request
    • [ ] Documentation issue or request
    • [ ] Support request => Please do not submit support request here, instead post your question on Stack Overflow.

    Current behavior

    All swagger schemas are empty and contain no information at all.

    empty-schemas

    Expected behavior

    Documentation detailing the property types on schemas should be inferred from the typescript definitions as described here and here. Like so:

    image

    Minimal reproduction of the problem with instructions

    Reproduction: https://github.com/robertmain/meal-plan/tree/update-swagger

    Instructions:

    1. Download the app from the link above (the branch is important!) 1 Install the dependencies and navigate to localhost:3000/api (yeah, I know it's a crappy URL scheme...I'm working on it)

    What is the motivation / use case for changing the behavior?

    Empty API documentation isn't very useful...? :thinking:

    Environment

    Nest version: 6.6.4

    For Tooling issues:

    • Node version: 10.16.3
    • Platform: Debian Linux 9

    Others:

    Contents of nest-cli.json

    {
      "language": "ts",
      "collection": "@nestjs/schematics",
      "sourceRoot": "src",
      "compilerOptions": {
        "plugins": ["@nestjs/swagger/plugin"]
      }
    }
    
    opened by robertmain 37
  • [next] Major release notes & plans

    [next] Major release notes & plans

    The @nestjs/swagger is one of the most widely used @nestjs packages under the @nestjs organization. So far it works pretty great - we have a declarative way to easily generate OpenAPI specification using decorators placed near to our DTOs/routes, we cover 3/4 potential use-cases providing a quite simple API to interact with.

    However, the current model of this library doesn't fit the requirements which we should set ourselves in order to ensure that we provide the best quality for developers. Let me list a number of them.

    • massive redundancy (lots of decorators that shouldn't be required)
    • lack of consistency (if we want to change our property to an optional one, we very likely have to add @IsOptional() - for the validation purposes, change the decorator to @ApiModelPropertyOptional() and add a question ? mark by the end of the property name)
    • no generics support
    • no interfaces support
    • no auto-response schemas generation
    • lack of flexibility (hard to add custom rules/decorators/interpreters)
    • no circular-dependencies support

    The main reason for all of these outlined issues is weak TypeScript reflection capability. Hence, the library itself will be very likely rewritten and will use TypeScript AST to support all these amazing features out-of-the-box.

    I have created this issue in order to share plans with you as well as encourage you to share your personal experiences with this library - if there is something else that was very troublesome/unsupported so far, please, let me know here - we can work on the design specification together.

    discussion 
    opened by kamilmysliwiec 29
  • New swagger plugin errors with nest monorepo

    New swagger plugin errors with nest monorepo

    I'm submitting a...

    
    [ ] Regression 
    [x] Bug report
    [ ] Feature request
    [ ] Documentation issue or request
    [ ] Support request => Please do not submit support request here, instead post your question on Stack Overflow.
    

    Current behavior

    nest start fails with new swagger plugin image

    Expected behavior

    app started

    Minimal reproduction of the problem with instructions

    https://github.com/gulaandrij/nest-monorepo-swagger steps:

    yarn install
    nest start
    

    What is the motivation / use case for changing the behavior?

    Environment

    
    [System Information]
    OS Version     : Linux 5.3
    NodeJS Version : v13.1.0
    YARN Version    : 1.19.2
    
    [Nest Information]
    platform-express version : 6.7.2
    swagger version          : 4.0.2
    common version           : 6.7.2
    core version             : 6.7.2
    
    opened by gulaandrij 22
  • UnhandledPromiseRejectionWarning: Error: A circular dependency has been detected

    UnhandledPromiseRejectionWarning: Error: A circular dependency has been detected

    I'm submitting a...

    
    [ ] Regression 
    [x] Bug report
    [ ] Feature request
    [ ] Documentation issue or request
    [ ] Support request => Please do not submit support request here, instead post your question on Stack Overflow.
    

    Current behavior

    Hello I am having issue only on JENKINS with the following package.json "dependencies": { "@nestjs/common": "7.4.4", "@nestjs/core": "7.4.4", "@nestjs/microservices": "7.4.4", "@nestjs/platform-express": "7.4.4", "@nestjs/swagger": "^4.6.1", "@nestjs/typeorm": "7.1.4", "@nestjs/websockets": "7.4.4",

    The issue doesnt occur on Windows or MAC. Not sure what is failing on Jenkins which runs on Linux version. PLEASE HELP.....

    core_1 | 2020-10-22T19:42:23.472811670Z INFO: All classes found using provided glob pattern "/jail-service/core/session/session.entity{.ts,.js}" : "/jail-service/core/session/session.entity.js"

    core_1 | 2020-10-22T19:42:23.540807215Z (node:93) UnhandledPromiseRejectionWarning: Error: A circular dependency has been detected (property key: "screening"). Please, make sure that each side of a bidirectional relationships are using lazy resolvers ("type: () => ClassType").

    core_1 | 2020-10-22T19:42:23.540828602Z at SchemaObjectFactory.createNotBuiltInTypeReference (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:190:19)

    core_1 | 2020-10-22T19:42:23.540832079Z at SchemaObjectFactory.mergePropertyWithMetadata (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:121:25)

    core_1 | 2020-10-22T19:42:23.540835103Z at /jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:67:35

    core_1 | 2020-10-22T19:42:23.540837948Z at Array.map ()

    core_1 | 2020-10-22T19:42:23.540840485Z at SchemaObjectFactory.exploreModelSchema (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:66:52)

    core_1 | 2020-10-22T19:42:23.540843184Z at SchemaObjectFactory.createNotBuiltInTypeReference (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:195:37)

    core_1 | 2020-10-22T19:42:23.540845978Z at SchemaObjectFactory.mergePropertyWithMetadata (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:121:25)

    core_1 | 2020-10-22T19:42:23.540848594Z at /jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:67:35

    core_1 | 2020-10-22T19:42:23.540851132Z at Array.map ()

    core_1 | 2020-10-22T19:42:23.540854255Z at SchemaObjectFactory.exploreModelSchema (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:66:52)

    core_1 | 2020-10-22T19:42:23.540859186Z at SchemaObjectFactory.createNotBuiltInTypeReference (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:195:37)

    core_1 | 2020-10-22T19:42:23.540863225Z at SchemaObjectFactory.mergePropertyWithMetadata (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:121:25)

    core_1 | 2020-10-22T19:42:23.540867307Z at /jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:67:35

    core_1 | 2020-10-22T19:42:23.540871059Z at Array.map ()

    core_1 | 2020-10-22T19:42:23.540874307Z at SchemaObjectFactory.exploreModelSchema (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:66:52)

    core_1 | 2020-10-22T19:42:23.540877053Z at SchemaObjectFactory.createNotBuiltInTypeReference (/jail-service/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:195:37)

    core_1 | 2020-10-22T19:42:23.540880358Z (Use node --trace-warnings ... to show where the warning was created)

    core_1 | 2020-10-22T19:42:23.540890259Z (node:93) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)

    core_1 | 2020-10-22T19:42:23.540894180Z (node:93) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

    Expected behavior

    Minimal reproduction of the problem with instructions

    What is the motivation / use case for changing the behavior?

    Environment

    
    Nest version: X.Y.Z
    
     
    For Tooling issues:
    - Node version: XX  
    - Platform:  
    
    Others:
    
    
    needs investigation needs clarification 
    opened by roopamedisetti1 21
  • feature(): extract Enum out to its schema

    feature(): extract Enum out to its schema

    PR Checklist

    Please check if your PR fulfills the following requirements:

    • [x] The commit message follows our guidelines: https://github.com/nestjs/nest/blob/master/CONTRIBUTING.md
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [ ] Docs have been added / updated (for bug fixes / features)

    PR Type

    What kind of change does this PR introduce?

    [ ] Bugfix
    [x] Feature
    [ ] Code style update (formatting, local variables)
    [ ] Refactoring (no functional changes, no api changes)
    [ ] Build related changes
    [ ] CI related changes
    [ ] Other... Please describe:
    

    What is the current behavior?

    Current behavior is when an Enum is defined and used on a Model, the Enum values are put on the properties of the Model itself. screen shot 2018-06-28 at 7 40 45 pm

    This causes Frontend Generation Tools (such as NSwag) to generate multiple enums even though they are meant for the same thing. screen shot 2018-06-28 at 7 38 12 pm

    Issue Number: #372

    What is the new behavior?

    ~~New behavior will expect: enum property on various decorator (ApiParam, ApiQuery, ApiProperty) to accept a lazy-function syntax.~~

    ~~This allows SwaggerExplorer to grab the Enum name at run-time which makes it possible to extract the Enum out to schemas to be reused on Parameters~~

    ~~Please note this is an addition, not replacement. enum property still accepts what it currently accepts. This PR makes it so it will solve the issue stated in Current Behavior with lazy function syntax.~~

    Various decorators that accept enum now also accept enumName. If you want your enum to be store as a schema (reusable) then you need to provide enumName as well. This implementation might seem a little bit explicit compared to the lazy load function but its intention is also clearer.

    // before
    @ApiProperty({enum: Role})
    
    // later
    @ApiProperty({enum: Role, enumName: 'Role'})
    

    Again, although the PR is working, maintain the current passing tests, passing two new tests, my implementation might contain flaws and might go against NestJS's design mental. That said, I'm open to ALL suggestions and feedbacks.

    Does this PR introduce a breaking change?

    [ ] Yes
    [x] No
    

    Other information

    enhancement 
    opened by nartc 21
  • Swagger module ignores setGlobalPrefix()

    Swagger module ignores setGlobalPrefix()

    I'm submitting a...

    
    [ ] Regression 
    [x] Bug report
    [ ] Feature request
    [ ] Documentation issue or request
    [ ] Support request => Please do not submit support request here, instead post your question on Stack Overflow.
    

    Current behavior

    When setting setGlobalPrefix('v2') and using the Swagger module as described in the doc with SwaggerModule.setup('api', app, document), the API is actually available under /api and /v2/api throws a 404 Cannot GET /v2/api.

    It works when setting SwaggerModule.setup('v2/api', app, document), but this introduces duplication.

    Expected behavior

    I expected the global prefix to be applied to the Swagger module's path, too.

    Minimal reproduction of the problem with instructions

    Repro repo. Created with the CLI, only added swagger module as described in the doc and setGlobalPrefix().

    Environment

    Nest version: 5.0.1
    
    question 
    opened by j-maas 21
  • feat(): add use method name for operations option

    feat(): add use method name for operations option

    Make the behavior change for operation names that was introduced in https://github.com/nestjs/swagger/pull/487 configurable, and allow users whose client libraries have broken because of this (see https://github.com/nestjs/swagger/issues/482) to configure this behavior.

    PR Checklist

    Please check if your PR fulfills the following requirements:

    • [x] The commit message follows our guidelines: https://github.com/nestjs/nest/blob/master/CONTRIBUTING.md
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features) yes, see https://github.com/nestjs/docs.nestjs.com/pull/1247

    PR Type

    What kind of change does this PR introduce?

    [ ] Bugfix
    [x] Feature
    [ ] Code style update (formatting, local variables)
    [ ] Refactoring (no functional changes, no api changes)
    [ ] Build related changes
    [ ] CI related changes
    [ ] Other... Please describe:
    

    What is the current behavior?

    Since #487 was merged, operation IDs generated by NestJS changed from e.g.

    addUser
    

    to

    UserController_addUser
    

    ... this is causing users of generated client libraries (e.g. Angular) to have to update all their service calls to unnecessarily long names, e.g. from designService.updateImages to designService.frontendDesignsControllerUpdateImages (see https://github.com/nestjs/swagger/issues/482#issuecomment-577777620).

    Issue Number: N/A

    What is the new behavior?

    This PR allows users to configure this behavior. By default, nothing changes, unless the user configures @nestjs/swagger with a custom operationIdFactory:

    const app = await NestFactory.create(AppModule);
    const operationIdFactory = (
      controllerKey: string,
      methodKey: string
    ) => `${methodKey}`;
    
    const options = new DocumentBuilder()
      .setTitle('Cats example')
      .setDescription('The cats API description')
      .setVersion('1.0')
      .addTag('cats')
      .build();
    const document = SwaggerModule.createDocument(app, options, {
      operationIdFactory
    });
    SwaggerModule.setup('api', app, document);
    

    Does this PR introduce a breaking change?

    [ ] Yes
    [x] No
    

    Other information

    enhancement status: wip 
    opened by dennisameling 19
  • Parameter order in Swagger document doesn't correspond to API

    Parameter order in Swagger document doesn't correspond to API

    I'm submitting a...

    
    [ ] Regression 
    [x] Bug report
    [ ] Feature request
    [ ] Documentation issue or request
    [ ] Support request => Please do not submit support request here, instead post your question on Stack Overflow.
    

    Current behavior

    Controller method: image

    Swagger result:

    image

    => configurationName and module is reversed :/ This has the consequence that e.g. NSwag generated methods also have the wrong parameter order.

    Expected behavior

    The Swagger doc respects the source-code order.

    Bug cause

    The problem is that the route parameters decorator metadata (ROUTE_ARGS_METADATA) contains a object, not an array (as DECORATORS.API_PARAMETERS does). => exploreApiReflectedParametersMetadata doesn't return the correct order.

    See the following debugger screenshot.

    image

    Sorting parameters by the object keys (i.e. 5:0, 5:1 in the shown example) explicitly, using ...

    const sortedParameters = lodash_1.map(lodash_1.sortBy(lodash_1.map(parameters, (item, name) => ({item, name})), 'name'), x => x.item);
    

    ... fixes the issue (see also debugger screenshot).

    potential issue PRs open 
    opened by ulrichb 18
  • Feature Request: add @ApiException() decorator

    Feature Request: add @ApiException() decorator

    I'm submitting a...

    
    [ ] Regression 
    [ ] Bug report
    [ x ] Feature request
    [ ] Documentation issue or request
    [ ] Support request => Please do not submit support request here, instead post your question on Stack Overflow.
    

    Current behavior

    no decorator to automate swagger schema generation for HttpException

    Expected behavior

    Minimal reproduction of the problem with instructions

    What is the motivation / use case for changing the behavior?

    Environment

    
    Nest version: 7.x
    Nest swagger: 4.x
    

    Example of implementation

    import { HttpException, Type } from '@nestjs/common';
    import { ApiResponse, ApiResponseOptions, getSchemaPath } from '@nestjs/swagger';
    import { getTypeIsArrayTuple } from '@nestjs/swagger/dist/decorators/helpers';
    import { ResponseObject, SchemaObject } from '@nestjs/swagger/dist/interfaces/open-api-spec.interface';
    
    export type Func = () => void;
    
    export interface ApiExceptionOptions extends Omit<ResponseObject, 'description'> {
        description?: string;
        type?: Func | [Func];
        isArray?: boolean;
        schema?: SchemaObject;
    }
    
    export const ApiException = <T extends HttpException>(exception: () => Type<T>, options: ApiExceptionOptions = {}): MethodDecorator & ClassDecorator => {
        const instance = new (exception())();
    
        const apiResponseOptions: ApiResponseOptions = {
            status: instance.getStatus(),
            description: options?.description || instance.message,
            schema: {
                type: 'object',
                properties: {
                    statusCode: {
                        type: 'number',
                        example: instance.getStatus(),
                    },
                    message: {
                        type: 'string',
                    },
                    error: {
                        type: 'string',
                        example: instance.message,
                    },
                },
                required: ['statusCode', 'message'],
            },
        };
    
        if (options.schema) {
            apiResponseOptions.schema.properties!.message = options.schema;
        } else if (options.type) {
            const [type, isArray] = getTypeIsArrayTuple(options.type, !!options.isArray);
           // For standard data types (Object, String, etc), an error will be shown on the swagger api page, I don't know how to get around it
            apiResponseOptions.schema.properties!.message['$ref'] = getSchemaPath(type!());
    
            if (isArray) {
                apiResponseOptions.schema.properties!.message = {
                    type: 'array',
                    items: {
                        type: 'object',
                        $ref: apiResponseOptions.schema.properties!.message['$ref'],
                    },
                };
            }
        }
    
        return ApiResponse(apiResponseOptions);
    };
    

    examples

    @ApiException(() => NotFoundException)
    @ApiException(() => NotFoundException, { description: 'Custom description' })
    @ApiException(() => NotFoundException, { description: 'Custom description', schema: { /** custom schema for message prop */} }
    @ApiException(() => NotFoundException, { description: 'Custom description', type: () => SomeClassWithSwaggerAnnotitions, isArray: true }
    
    enhancement 
    opened by ruscon 17
  • How to upload file with additional form data

    How to upload file with additional form data

    I'm submitting a...

    
    [ ] Regression 
    [ ] Bug report
    [ ] Feature request
    [ X ] Documentation issue or request
    [ ] Support request => Please do not submit support request here, instead post your question on Stack Overflow.
    

    I'm using nestjs/swagger and trying to figure out a way to upload a file and also pass additional form data along with the image.

    I'm using this to upload the image, and it works fine.

      @UseInterceptors(FileInterceptor('file'))
      @ApiConsumes('multipart/form-data')
      @ApiImplicitFile({ name: 'file', required: true })
      uploadFile(@UploadedFile() file) {
        console.log('got upload');
        console.log('...file', file);
      }
    

    However, I'd like to include some meta data about my file as form data. I tried using @Body(), but that expects a json payload, and the upload requires multipart/form-data.

      @UseInterceptors(FileInterceptor('file'))
      @ApiConsumes('multipart/form-data')
      @ApiImplicitFile({ name: 'file', required: true })
      uploadFile(@UploadedFile() file, @Body() body: MyDto) {
        console.log('got upload');
        console.log('...file', file);
        console.log('...body', body);
      }
    

    I also tried ApiImplicitBody, but couldn't seem to get it to work. I'm just guessing because I seem to be deep in undocumented territory.

    What is the correct way to:

    • Access other properties of the multi-part form (beyond the file)
    • Define that as part of the swagger definition with the swagger decorators
    enhancement 
    opened by itslenny 16
  • chore(deps): update dependency json5 [security]

    chore(deps): update dependency json5 [security]

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | |---|---| | json5 | 1.0.1 -> 1.0.2 | | json5 | 2.2.1 -> 2.2.2 |

    GitHub Vulnerability Alerts

    CVE-2022-46175

    The parse method of the JSON5 library before and including version 2.2.1 does not restrict parsing of keys named __proto__, allowing specially crafted strings to pollute the prototype of the resulting object.

    This vulnerability pollutes the prototype of the object returned by JSON5.parse and not the global Object prototype, which is the commonly understood definition of Prototype Pollution. However, polluting the prototype of a single object can have significant security impact for an application if the object is later used in trusted operations.

    Impact

    This vulnerability could allow an attacker to set arbitrary and unexpected keys on the object returned from JSON5.parse. The actual impact will depend on how applications utilize the returned object and how they filter unwanted keys, but could include denial of service, cross-site scripting, elevation of privilege, and in extreme cases, remote code execution.

    Mitigation

    This vulnerability is patched in json5 v2.2.2 and later. A patch has also been backported for json5 v1 in versions v1.0.2 and later.

    Details

    Suppose a developer wants to allow users and admins to perform some risky operation, but they want to restrict what non-admins can do. To accomplish this, they accept a JSON blob from the user, parse it using JSON5.parse, confirm that the provided data does not set some sensitive keys, and then performs the risky operation using the validated data:

    const JSON5 = require('json5');
    
    const doSomethingDangerous = (props) => {
      if (props.isAdmin) {
        console.log('Doing dangerous thing as admin.');
      } else {
        console.log('Doing dangerous thing as user.');
      }
    };
    
    const secCheckKeysSet = (obj, searchKeys) => {
      let searchKeyFound = false;
      Object.keys(obj).forEach((key) => {
        if (searchKeys.indexOf(key) > -1) {
          searchKeyFound = true;
        }
      });
      return searchKeyFound;
    };
    
    const props = JSON5.parse('{\"foo\": \"bar\"}');
    if (!secCheckKeysSet(props, ['isAdmin', 'isMod'])) {
      doSomethingDangerous(props); // \"Doing dangerous thing as user.\"
    } else {
      throw new Error('Forbidden...');
    }
    

    If the user attempts to set the isAdmin key, their request will be rejected:

    const props = JSON5.parse('{\"foo\": \"bar\", \"isAdmin\": true}');
    if (!secCheckKeysSet(props, ['isAdmin', 'isMod'])) {
      doSomethingDangerous(props);
    } else {
      throw new Error('Forbidden...'); // Error: Forbidden…
    }
    

    However, users can instead set the __proto__ key to {\"isAdmin\": true}. JSON5 will parse this key and will set the isAdmin key on the prototype of the returned object, allowing the user to bypass the security check and run their request as an admin:

    const props = JSON5.parse('{\"foo\": \"bar\", \"__proto__\": {\"isAdmin\": true}}');
    if (!secCheckKeysSet(props, ['isAdmin', 'isMod'])) {
      doSomethingDangerous(props); // \"Doing dangerous thing as admin.\"
    } else {
      throw new Error('Forbidden...');
    }
    

    Configuration

    📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • chore(deps): bump json5 from 1.0.1 to 1.0.2

    chore(deps): bump json5 from 1.0.1 to 1.0.2

    Bumps json5 from 1.0.1 to 1.0.2.

    Release notes

    Sourced from json5's releases.

    v1.0.2

    • Fix: Properties with the name __proto__ are added to objects and arrays. (#199) This also fixes a prototype pollution vulnerability reported by Jonathan Gregson! (#295). This has been backported to v1. (#298)
    Changelog

    Sourced from json5's changelog.

    Unreleased [code, diff]

    v2.2.3 [code, diff]

    v2.2.2 [code, diff]

    • Fix: Properties with the name __proto__ are added to objects and arrays. (#199) This also fixes a prototype pollution vulnerability reported by Jonathan Gregson! (#295).

    v2.2.1 [code, diff]

    • Fix: Removed dependence on minimist to patch CVE-2021-44906. (#266)

    v2.2.0 [code, diff]

    • New: Accurate and documented TypeScript declarations are now included. There is no need to install @types/json5. (#236, #244)

    v2.1.3 [code, diff]

    • Fix: An out of memory bug when parsing numbers has been fixed. (#228, #229)

    v2.1.2 [code, diff]

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Global `.addSecurityRequirements()` is overrided by local `@ApiSecurity()`

    Global `.addSecurityRequirements()` is overrided by local `@ApiSecurity()`

    Is there an existing issue for this?

    • [X] I have searched the existing issues

    Current behavior

    If any @ApiSecurity() decorator is present on a route, then the Available authorizations registered by global .addSecurityRequirements() on the route are gone.

    Minimum reproduction code

    https://github.com/zetaraku/nest-demo

    Steps to reproduce

    1. Run npm install
    2. Run npm run start:dev
    3. Goto the /api route
    4. Click the lock icons on both /without-decorator and /with-decorator route

    Expected behavior

    The local security requirements should be merged with the global security requirements so that both requirements are present.

    Package version

    6.1.4

    NestJS version

    9.0.0

    Node.js version

    16.17.0

    In which operating systems have you tested?

    • [ ] macOS
    • [X] Windows
    • [ ] Linux

    Other

    No response

    bug needs triage 
    opened by zetaraku 0
  • feat: Support of ApiParam and ApiQuery for Controller

    feat: Support of ApiParam and ApiQuery for Controller

    Support added of ApiParam and ApiQuery for Controller, PR Reference #1332

    PR Checklist

    Please check if your PR fulfills the following requirements:

    • [x] The commit message follows our guidelines: https://github.com/nestjs/nest/blob/master/CONTRIBUTING.md
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    What kind of change does this PR introduce?

    • [ ] Bugfix
    • [x] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] Build related changes
    • [ ] CI related changes
    • [ ] Other... Please describe:

    What is the current behavior?

    Put ApiParam on every route method in controller.

    @Controller('tests/:testId')
    class TestAppController {
      @ApiParam({ name: 'testId' })
      @ApiQuery({ name: 'testQuery'})
      @Get()
      public method1(@Param('testId') testId: string, @Query('testQuery') testQuery: string) {
      }
    
      @ApiParam({ name: 'testId' })
      @ApiQuery({ name: 'testQuery'})
      @Get()
      public method2(@Param('testId') testId: string, @Query('testQuery') testQuery: string) {
      }
    }
    

    Issue Number: #2200

    What is the new behavior?

    I would like ApiParam to support the class decorator to reduce the waste of time.

    @ApiParam({ name: 'testId' }) //new
    @ApiQuery({ name: 'testQuery'}) //new
    @Controller('tests/:testId')
    class TestAppController {
      @Get()
      public method1(@Param('testId') testId: string, @Query('testQuery') testQuery: string) {
      }
    
      @Get()
      public method2(@Param('testId') testId: string, @Query('testQuery') testQuery: string) {
      }
    }
    

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

    NestJs Docs updated: https://github.com/nestjs/docs.nestjs.com/pull/2570

    opened by ZainUrRehmanKhan 0
  • Add support for @ApiParam in controllers.

    Add support for @ApiParam in controllers.

    Is there an existing issue that is already proposing this?

    • [X] I have searched the existing issues

    Is your feature request related to a problem? Please describe it

    @ApiParam is not supported in controllers, I don't know if there's any specific reason why it doesn't. But in the use case that I have, it makes sense to be able to use it directly in the controller.

    In the example below, I will have to define @ApiParam('it_projeto') in each method, even if it is a param in the controller route.

    import { Body, Controller, Get, Param, Post } from '@nestjs/common';
    import { ApiParam, ApiTags } from '@nestjs/swagger';
    import { CriarIntencaoDto } from './criar-intencao.dto';
    import { IntencaoService } from './intencao.service';
    
    @ApiTags('intencao')
    @Controller('projeto/:it_projeto/intencao')
    export class IntencaoController {
      constructor(private readonly intencaoService: IntencaoService) {}
    
      @ApiParam({
        name: 'it_projeto',
        type: 'number',
        description: 'Código do projeto',
      })
      @Get()
      listar(@Param() { it_projeto }) {
        return this.intencaoService.listar(it_projeto);
      }
    
      @ApiParam({
        name: 'it_projeto',
        type: 'number',
        description: 'Código do projeto',
      })
      @Post()
      criar(@Param() { it_projeto }, @Body() payload: CriarIntencaoDto) {
        return this.intencaoService.criar(it_projeto, payload);
      }
    }
    
    

    Describe the solution you'd like

    I believe that support for class and method would already solve this problem. I don't particularly see any downsides.

    Example

    import { Body, Controller, Get, Param, Post } from '@nestjs/common';
    import { ApiParam, ApiTags } from '@nestjs/swagger';
    import { CriarIntencaoDto } from './criar-intencao.dto';
    import { IntencaoService } from './intencao.service';
    
    @ApiTags('intencao')
    @ApiParam({
      name: 'it_projeto',
      type: 'number',
      description: 'Código do projeto',
    })
    @Controller('projeto/:it_projeto/intencao')
    export class IntencaoController {
      constructor(private readonly intencaoService: IntencaoService) {}
    
      @Get()
      listar(@Param() { it_projeto }) {
        return this.intencaoService.listar(it_projeto);
      }
    
      @Post()
      criar(@Param() { it_projeto }, @Body() payload: CriarIntencaoDto) {
        return this.intencaoService.criar(it_projeto, payload);
      }
    }
    
    

    Teachability, documentation, adoption, migration strategy

    On the page https://docs.nestjs.com/openapi/decorators I believe the only change for the user would be to add "Method/Controller" in the @ApiParam info.

    What is the motivation / use case for changing the behavior?

    Decrease decorator usage for expected parameters in the controller route.

    feature 
    opened by hiagodotme 1
  • chore(deps): update node.js to v18.12

    chore(deps): update node.js to v18.12

    Mend Renovate

    This PR contains the following updates:

    | Package | Type | Update | Change | |---|---|---|---| | cimg/node | docker | minor | 18.10 -> 18.12 |


    Configuration

    📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

    🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
Releases(6.1.4)
  • 6.1.4(Dec 7, 2022)

    • Merge pull request #2171 from nestjs/renovate/typescript-eslint-monorepo (4dd8f91)
    • chore(deps): update typescript-eslint monorepo to v5.45.1 (f84bd1c)
    • Merge pull request #2174 from nestjs/renovate/typescript-4.x (26ded64)
    • chore(deps): update dependency typescript to v4.9.3 (03c75a3)
    • Merge pull request #2175 from nestjs/renovate/eslint-8.x (d1d32e8)
    • Merge pull request #2178 from nestjs/renovate/fastify-static-6.x (1ee051b)
    • chore(deps): update dependency eslint to v8.29.0 (e3b3719)
    • chore(deps): update dependency @fastify/static to v6.6.0 (369f430)
    • Merge pull request #2172 from nestjs/renovate/jest-monorepo (0e4af02)
    • Merge pull request #2173 from nestjs/renovate/lodash-4.x (5d9f539)
    • Merge pull request #2191 from nestjs/renovate/supertest-6.x (42df137)
    • Merge pull request #2193 from nestjs/renovate/lint-staged-13.x (8f38319)
    • Merge pull request #2194 from nestjs/renovate/prettier-2.x (ef5d31f)
    • chore(deps): update dependency prettier to v2.8.0 (627ce7a)
    • Update config.yml (62198f6)
    • chore(deps): update dependency lint-staged to v13.1.0 (bc75108)
    • chore(deps): update dependency supertest to v6.3.2 (57add96)
    • chore(deps): update dependency @types/lodash to v4.14.191 (df8fa00)
    • chore(deps): update dependency @types/jest to v29.2.4 (63e8797)
    • Merge pull request #2192 from nestjs/renovate/nest-monorepo (ad18db3)
    • Merge pull request #2190 from nestjs/renovate/release-it-15.x (3ece792)
    • Merge pull request #2189 from nestjs/renovate/node-18.x (fbf402d)
    • Merge pull request #2186 from nestjs/renovate/npm-qs-vulnerability (73d5163)
    • Merge pull request #2177 from nestjs/renovate/commitlint-monorepo (543a8ee)
    • chore(deps): update nest monorepo to v9.2.1 (8ce899d)
    • chore(deps): update dependency release-it to v15.5.1 (3d1865e)
    • chore(deps): update dependency @types/node to v18.11.11 (588d27c)
    • Merge pull request #2141 from nestjs/renovate/swagger-ui-dist-4.x (1967192)
    • Merge pull request #2162 from lukas-reining/feature/multiple-script-imports (3bdb57f)
    • chore(deps): update commitlint monorepo to v17.3.0 (2e0ef25)
    • ci: update node version (e96bda6)
    • Merge pull request #2170 from khmm12/fix/type-helpers-metadata-inhereting-in-yarn-pnp-env (0e113a0)
    • chore(deps): update dependency qs to 6.9.7 [security] (66ebc3a)
    • fix: type helpers metadata inheriting (7fc4a33)
    • fix(deps): update dependency swagger-ui-dist to v4.15.5 (e7f8dc4)
    • chore(deps): update dependency jest to v29.3.1 (1c1abf7)
    • chore(deps): update dependency husky to v8.0.2 (3ae0bd5)
    • chore(deps): update dependency jest to v29.3.0 (9181712)
    • chore(deps): update typescript-eslint monorepo to v5.42.1 (88e0af4)
    • chore(deps): update nest monorepo to v9.2.0 (fde3050)
    • chore(deps): update dependency eslint to v8.27.0 (9938490)
    • Reset package lock (75a7445)
    • Use correct parameter name for tag functions (0ed2b43)
    • fix(swagger-ui): Implement multiple js and css imports (b9483ad)
    • chore(deps): update dependency @types/lodash to v4.14.188 (be01469)
    • chore(deps): update dependency @types/jest to v29.2.2 (9fc090f)
    • chore(deps): update dependency @types/node to v18.11.9 (c7b1a97)
    • chore(deps): update dependency @types/lodash to v4.14.187 (b877ff5)
    • chore(deps): update dependency @types/jest to v29.2.1 (baa1295)
    • chore(deps): update typescript-eslint monorepo to v5.42.0 (024f121)
    • chore(deps): update commitlint monorepo to v17.2.0 (3ffaef9)
    • chore(deps): update dependency @types/node to v18.11.8 (cc69138)
    • chore(deps): update dependency @types/node to v18.11.7 (886f832)
    • chore(deps): update dependency @types/node to v18.11.6 (ac2b69a)
    Source code(tar.gz)
    Source code(zip)
  • 6.1.3(Oct 26, 2022)

    • Merge pull request #2112 from bhrigushr/fix/1946-missing-request-body (f7809e2)
    • Update test/explorer/swagger-explorer.spec.ts (2e784d3)
    • Update test/explorer/swagger-explorer.spec.ts (50c4f96)
    • Update test/explorer/swagger-explorer.spec.ts (9c57358)
    • Merge pull request #2093 from nestjs/renovate/swagger-ui-dist-4.x (467e9c7)
    • Merge pull request #2105 from nestjs/renovate/nestjs-mapped-types-1.x (c766599)
    • Merge pull request #2077 from edgesite/master (271fc0a)
    • Merge pull request #2138 from flamewow/fix/2064_missleading_initOAuth (d32b06a)
    • fix(deps): update dependency swagger-ui-dist to v4.15.1 (1780f8a)
    • fix: fixed misleading SwaggerCustomOptions interface, added typing for SwaggerUIOptions (5d34146)
    • chore(deps): update dependency @types/node to v18 (a4afb40)
    • chore(deps): update dependency supertest to v6.3.1 (f3a957d)
    • chore(deps): update dependency jest to v29.2.2 (a9aad29)
    • chore(deps): update typescript-eslint monorepo to v5.41.0 (7985611)
    • chore(deps): update nest monorepo to v9.1.6 (37aad26)
    • chore(deps): update dependency eslint to v8.26.0 (6e599e3)
    • chore(deps): update nest monorepo to v9.1.5 (29fb895)
    • chore(deps): update dependency jest to v29.2.1 (3858220)
    • chore(deps): update dependency @types/jest to v29.2.0 (e27cd8c)
    • chore(deps): update typescript-eslint monorepo to v5.40.1 (17fe3db)
    • chore(deps): update dependency jest to v29.2.0 (356a1da)
    • chore(deps): update typescript-eslint monorepo to v5.40.0 (319eb4e)
    • chore(deps): update dependency express to v4.18.2 (7a41260)
    • chore(deps): update dependency eslint to v8.25.0 (952300f)
    • chore(deps): update dependency @types/jest to v29.1.2 (18e2c10)
    • chore(deps): update nest monorepo to v9.1.4 (9ab66ab)
    • fix(): missing requestBody (4a753cb)
    • chore(deps): update dependency release-it to v15.5.0 (b2154d6)
    • chore(deps): update dependency supertest to v6.3.0 (65f8981)
    • chore(deps): update typescript-eslint monorepo to v5.39.0 (1ca9f3d)
    • chore(deps): update dependency release-it to v15.4.3 (0faf861)
    • chore(deps): update jest monorepo (386dd1d)
    • fix(deps): update dependency @nestjs/mapped-types to v1.2.0 (b81b314)
    • chore(deps): update dependency ts-jest to v29.0.3 (dda1d77)
    • chore(deps): update dependency @types/jest to v29.1.0 (2ed95c6)
    • chore(deps): update dependency @types/lodash to v4.14.186 (46bce59)
    • chore(deps): update dependency jest to v29.1.1 (f763e32)
    • chore(deps): update dependency typescript to v4.8.4 (c2d3078)
    • chore(deps): update typescript-eslint monorepo to v5.38.1 (04eb4b4)
    • chore(deps): update dependency ts-jest to v29.0.2 (d0dd449)
    • chore(deps): update dependency eslint to v8.24.0 (cdde20f)
    • chore(deps): update nest monorepo to v9.1.2 (1c36272)
    • chore(deps): update typescript-eslint monorepo to v5.38.0 (5561c3e)
    • chore(deps): update nest monorepo to v9.1.1 (f5842f0)
    • chore(deps): update dependency @types/jest to v29.0.3 (893d677)
    • chore(deps): update dependency release-it to v15.4.2 (9059994)
    • chore(deps): update dependency ts-jest to v29.0.1 (30ec58d)
    • chore(deps): update dependency @types/jest to v29.0.2 (fb66bba)
    • chore(deps): update typescript-eslint monorepo to v5.37.0 (8832248)
    • chore(deps): update dependency eslint to v8.23.1 (6312ca0)
    • chore(deps): update dependency @types/jest to v29.0.1 (5e11d11)
    • chore(deps): update dependency @types/lodash to v4.14.185 (c4a058b)
    • chore: optimize loading performance (8d8c145)
    • chore(deps): update dependency jest to v29.0.3 (69a4127)
    • chore(deps): update dependency ts-jest to v29 (508c793)
    • chore(deps): update dependency typescript to v4.8.3 (07b39ee)
    • chore(deps): update typescript-eslint monorepo to v5.36.2 (fc0ad0b)
    Source code(tar.gz)
    Source code(zip)
  • 6.1.2(Sep 5, 2022)

    • Merge pull request #2069 from KillWolfVlad/feature/fix-undefined-modifiers (e10e649)
    • chore(deps): update dependency jest to v29.0.2 (0d67f99)
    • fix(): undefined modifiers (0b3d9ab)
    Source code(tar.gz)
    Source code(zip)
  • 6.1.1(Sep 1, 2022)

    • Merge pull request #2067 from nestjs/chore/support-typescript-v4.8 (908bb52)
    • Merge pull request #2023 from kaioduarte/perf/lazy-load-swagger-ui (1dc851c)
    • chore(): support typescript v4.8 (8757d37)
    • chore(deps): update dependency openapi-types to v12.0.2 (69df9c8)
    • chore(deps): update dependency release-it to v15.4.1 (50ca19d)
    • chore(deps): update typescript-eslint monorepo to v5.36.1 (cac9349)
    • chore(deps): update dependency @types/jest to v29 (83ec9ca)
    • chore(deps): update typescript-eslint monorepo to v5.36.0 (c877638)
    • chore(deps): update dependency @commitlint/cli to v17.1.2 (c674d6c)
    • chore(deps): update commitlint monorepo (bdb2d23)
    • chore(deps): update dependency eslint to v8.23.0 (3c917cc)
    • chore(deps): update dependency jest to v29.0.1 (d950631)
    • chore: address code review comment (857a2d8)
    • perf(swagger-module): lazy load swagger-ui-dist module (4aea702)
    Source code(tar.gz)
    Source code(zip)
  • 6.1.0(Aug 26, 2022)

    • Merge pull request #2035 from nestjs/renovate/swagger-ui-dist-4.x (e7b25d8)
    • Merge pull request #1720 from andrewda/tsdoc (f6fb642)
    • Merge pull request #2041 from ledniy/bugfix/pattern (697ceba)
    • Merge pull request #2039 from Branchverse/feature/swagger-customJsStr (9f23d57)
    • chore(deps): update dependency jest to v29 (317e5f2)
    • chore(deps): update typescript-eslint monorepo to v5.35.1 (83f8ef3)
    • chore(deps): update dependency release-it to v15.4.0 (2befe6c)
    • chore(deps): update dependency @types/jest to v28.1.8 (10ed1c5)
    • chore(deps): update typescript-eslint monorepo to v5.34.0 (65333e0)
    • fix invalid pattern (b0e697e)
    • Add customJsStr to swagger-custom-options (1f2a6f4)
    • chore(deps): update dependency @types/lodash to v4.14.184 (67c78e4)
    • fix(deps): update dependency swagger-ui-dist to v4.14.0 (284efd6)
    • fix(): update tests (7469ee9)
    • Merge remote-tracking branch 'origin/master' into tsdoc (0a3db89)
    • chore(deps): update dependency @types/lodash to v4.14.183 (56d9f11)
    • chore(deps): update nest monorepo to v9.0.11 (c358617)
    • chore(deps): update typescript-eslint monorepo to v5.33.1 (55c0d09)
    • chore(deps): update dependency @types/jest to v28.1.7 (09bbbe4)
    • chore(deps): update dependency ts-jest to v28.0.8 (3d59a66)
    • chore(deps): update dependency eslint to v8.22.0 (449b5c2)
    • chore(deps): update nest monorepo to v9.0.9 (757e97f)
    • chore(deps): update dependency release-it to v15.3.0 (c7597ae)
    • chore(deps): update typescript-eslint monorepo to v5.33.0 (0a090e6)
    • chore(deps): update nest monorepo to v9.0.8 (771ea39)
    • style(): run formatter (e9584b5)
    • feat(): add support for additional TSDoc tags (06ec7ec)
    Source code(tar.gz)
    Source code(zip)
  • 6.0.5(Aug 3, 2022)

    • Merge pull request #1997 from nestjs/renovate/swagger-ui-dist-4.x (3efa8e3)
    • Merge pull request #2012 from flamewow/fix/explorer_options_was_not_working (c5e4c97)
    • Merge pull request #2013 from flamewow/fix/root_path (e73d013)
    • fix(deps): update dependency swagger-ui-dist to v4.13.2 (d672995)
    • chore(deps): update typescript-eslint monorepo to v5.32.0 (9567ce9)
    • chore(deps): update dependency eslint to v8.21.0 (9f03da0)
    • fixed swagger on '/' (root path) https://github.com/nestjs/swagger/issues/2006 (4d048e0)
    • fix(): explorer is not displayed https://github.com/nestjs/swagger/issues/2010 (7884d7c)
    • chore(deps): update dependency @fastify/static to v6.5.0 (4fca62e)
    • chore(deps): update nest monorepo to v9.0.7 (3573a3a)
    • chore(deps): update nest monorepo to v9.0.6 (112faac)
    • chore(deps): update dependency release-it to v15.2.0 (36cb2d3)
    • chore(deps): update typescript-eslint monorepo to v5.31.0 (a463f3f)
    • chore(deps): update dependency release-it to v15.1.4 (0711813)
    • chore(deps): update dependency @fastify/static to v6.4.1 (96cf9d7)
    • chore(deps): update typescript-eslint monorepo to v5.30.7 (936bad8)
    • chore(deps): update nest monorepo to v9.0.5 (3ead6f5)
    • chore(deps): update dependency release-it to v15.1.3 (d51d416)
    • ci(): run unit tests in band (circleci issues) (8f7ae01)
    • Merge pull request #1993 from wodCZ/feature/circleci-convenience-image (a37588d)
    • ci(): use next-gen convenience image; update npm version without sudo (ef62373)
    • chore(deps): update dependency eslint to v8.20.0 (f6dfe4c)
    • chore(deps): update dependency ts-jest to v28.0.7 (a3feff7)
    • chore(deps): update dependency @types/jest to v28.1.6 (8ec2148)
    • chore(deps): update dependency ts-jest to v28.0.6 (50c8b56)
    • chore(deps): update dependency release-it to v15.1.2 (d86f97d)
    Source code(tar.gz)
    Source code(zip)
  • 6.0.4(Jul 14, 2022)

    • Merge branch 'flamewow-fix/reverse_proxy_usecase' (453e977)
    • style(): update comments (905216d)
    • Merge branch 'fix/reverse_proxy_usecase' of github.com:flamewow/swagger into flamewow-fix/reverse_proxy_usecase (5473531)
    • Merge pull request #1986 from flamewow/fix/undefined_swagger_options (0cb695d)
    • fixed issues caused by accessing nestjs-swagger behind reverse proxy (32e2fb9)
    • added default value for custom swagger options (2e0e95f)
    • Merge pull request #1980 from Panzer1119/master (e62323d)
    • chore(deps): update dependency jest to v28.1.3 (74ee706)
    • chore(deps): update dependency @types/jest to v28.1.5 (ac8fcd0)
    • fix(@nestjs/swagger): skip invalid types when converting swagger document to yaml (5e818f6)
    • chore(deps): update nest monorepo to v9.0.3 (1048a32)
    Source code(tar.gz)
    Source code(zip)
  • 6.0.3(Jul 12, 2022)

    • Merge pull request #1973 from CatsJuice/revert-1966-fix/build-html-static-base-url (2b21b54)
    • chore(deps): update typescript-eslint monorepo to v5.30.6 (1dfb901)
    • chore(deps): pin dependency supertest to 6.2.4 (e9ac49e)
    • Revert "fix(swagger-module): change buildSwaggerHtml baseUrl from absolute to…" (8676ae7)
    Source code(tar.gz)
    Source code(zip)
  • 6.0.2(Jul 11, 2022)

    • Merge branch 'flamewow-fix/fastify_ignoreTrailingSlash' (6d8cd31)
    • chore(): minor tweaks (6b1a099)
    • Merge branch 'fix/fastify_ignoreTrailingSlash' of github.com:flamewow/swagger into flamewow-fix/fastify_ignoreTrailingSlash (a45d527)
    • Merge branch 'flamewow-fix/content_type_fix' (05d9ca2)
    • chore(): minor tweaks (fabdf6f)
    • fixed breaking issue caused by passing 'ignoreTrailingSlash: true' in Fastify adapter options (3eaf783)
    • Merge pull request #1966 from CatsJuice/fix/build-html-static-base-url (7bf6e99)
    • Merge pull request #1963 from Panzer1119/fix-swagger-ui-init-js-generation (408e39d)
    • chore(deps): update nest monorepo to v9.0.2 (7ee0601)
    • test(@nestjs/swagger): add manual test for 2afc3dcbf3ff69b5382306a68d57e1ac4b7b50c4 to manual-e2e.ts (5c38773)
    • fixed content type issue, added test cases (5652905)
    • fix(swagger-module): change buildSwaggerHtml baseUrl from absolute to relative (4a2a365)
    • fix(@nestjs/swagger): replace quoted functionPlaceholder completely (2afc3dc)
    • chore(deps): update nest monorepo to v9.0.1 (207de33)
    Source code(tar.gz)
    Source code(zip)
  • 6.0.1(Jul 8, 2022)

  • 6.0.0(Jul 8, 2022)

    • Merge pull request #1939 from nestjs/renovate/lint-staged-13.x (5e6c421)
    • Merge pull request #1959 from nestjs/renovate/swagger-ui-dist-4.x (87e118a)
    • Merge pull request #1960 from nestjs/renovate/major-jest-monorepo (4954d59)
    • chore(deps): update dependency lint-staged to v13 (3e28ece)
    • chore(deps): update dependency @types/jest to v28 (cf94dd2)
    • fix(deps): update dependency swagger-ui-dist to v4.12.0 (5a3fa22)
    • Merge pull request #1958 from nestjs/renovate/prettier-2.x (52f35f0)
    • Merge pull request #1935 from nestjs/renovate/typescript-4.x (914abb4)
    • Merge pull request #1934 from nestjs/renovate/lint-staged-12.x (74e3eec)
    • Merge pull request #1918 from nestjs/renovate/typescript-eslint-monorepo (1f4b9af)
    • chore(deps): update typescript-eslint monorepo to v5.30.5 (0d5f8ba)
    • chore(deps): update dependency typescript to v4.7.4 (63b5a6c)
    • chore(deps): update dependency prettier to v2.7.1 (bb64743)
    • chore(deps): update dependency lint-staged to v12.5.0 (7154d1a)
    • Merge pull request #1957 from nestjs/renovate/openapi-types-11.x (b9f1f2b)
    • Merge pull request #1922 from nestjs/renovate/eslint-8.x (ff307fc)
    • Merge pull request #1940 from nestjs/renovate/jest-monorepo (e6a8507)
    • chore(deps): update dependency openapi-types to v11.1.0 (2a3ccc6)
    • Merge pull request #1907 from nestjs/renovate/commitlint-monorepo (2be0e2d)
    • Merge pull request #1920 from nestjs/renovate/ts-jest-28.x (1f2a632)
    • chore(deps): update dependency eslint to v8.19.0 (4ca3aee)
    • chore(deps): update jest monorepo (df5b8cc)
    • chore(deps): update dependency ts-jest to v28.0.5 (693e672)
    • chore(deps): update commitlint monorepo to v17.0.3 (68cc944)
    • chore(): merge conflicts (9f59393)
    • chore(): update deps (4cc6728)
    • Merge pull request #1950 from nestjs/renovate/npm-got-vulnerability (984469f)
    • Merge pull request #1955 from nestjs/dependabot/npm_and_yarn/parse-url-6.0.2 (dedea81)
    • chore(deps): bump parse-url from 6.0.0 to 6.0.2 (5a1b29b)
    • chore(deps): update dependency got [security] (4209808)
    • fixed validate-schema.e2e-spec (abd1ce3)
    • removed compatibility layer, added basic auth sample into e2e manual test (eed0820)
    • master -> feat/routing_platform_independence (b11e8b4)
    • chore(): update test fixtures (548e1bf)
    • fix(): address ts compilation error (helpers) (0f971f6)
    • chore(): upgrade deps to latest versions (74b277e)
    • Merge pull request #1927 from micalevisk/patch-1 (3fa3fdb)
    • Merge pull request #1926 from Tony133/chore/update-readme-and-license (c170605)
    • chore: replace gitter by discord on contributing guide (9fc0d1c)
    • chore(): update README.md (efc1a90)
    • chore(): update readme and license (1cdce3c)
    • chore(deps): update dependency ts-jest to v28 (912632f)
    • chore(deps): update dependency jest to v28 (166e766)
    • chore(deps): update dependency fastify-swagger to v5.2.0 (7902bc4)
    • chore(deps): update dependency @types/node to v16.11.31 (07c1889)
    • chore(deps): update dependency @types/node to v16.11.30 (2e8fad6)
    • chore(deps): update dependency lint-staged to v12.4.1 (889d484)
    • chore(deps): update dependency express to v4.18.0 (3281085)
    • chore(deps): update typescript-eslint monorepo to v5.21.0 (723feb7)
    • chore(deps): update dependency @types/node to v16.11.29 (da45002)
    • chore(deps): update dependency @types/node to v16.11.28 (e655f62)
    • chore(deps): update dependency eslint to v8.14.0 (b71fc66)
    • fixed fastify serve html issue on path = / (d00cb8b)
    • chore(deps): update dependency lint-staged to v12.4.0 (13a3db8)
    • merged master -> feat/routing_platform_independence (fe301f1)
    • chore(deps): update dependency @types/lodash to v4.14.182 (56bfd72)
    • chore(deps): update typescript-eslint monorepo to v5.20.0 (51f0eb6)
    • merged master -> feat/routing_platform_independence (5763328)
    • chore(deps): update dependency lint-staged to v12.3.8 (2f3bb3f)
    • feat(): routing platform independence (PR comments resolution) (a893977)
    • merged master -> feat/routing_platform_independence + conflicts resolution (92e85c9)
    • feat(): routing platform independence (fastify-swagger uiHooks backward compatibility) (fd40f40)
    • chore(deps): update dependency @types/node to v16.11.27 (cbf0b2c)
    • merged master -> feat/routing_platform_independence (082dc0e)
    • merged master -> feat/routing_platform_independence (8aba4ae)
    • feat(): routing platform independence (fastify-swagger options backward compatibility) (472acc5)
    • chore(deps): update dependency fastify-swagger to v5.1.1 (a9e36ca)
    • feat(): routing platform independence (resolved PR remarks) (ea85683)
    • chore(deps): update typescript-eslint monorepo to v5.19.0 (641ad1b)
    • chore(deps): update dependency release-it to v14.14.2 (ba67b42)
    • feat(): routing platform independence (polishing) (2913391)
    • feat(): routing platform independence (better static files serving solution) (ed777f3)
    • feat(): routing platform independence (initial implementation) (b666b3e)
    • chore(deps): update dependency release-it to v14.14.1 (fcecaae)
    • chore(deps): update dependency eslint to v8.13.0 (531d4be)
    • chore(deps): update nest monorepo to v8.4.4 (5d5f3fb)
    • chore(deps): update dependency eslint-plugin-import to v2.26.0 (f17079c)
    • chore(deps): update typescript-eslint monorepo to v5.18.0 (d6ebf2d)
    • chore(deps): update dependency prettier to v2.6.2 (ce71c9a)
    • chore(deps): update dependency release-it to v14.14.0 (ebd3885)
    • chore(deps): update dependency @types/lodash to v4.14.181 (6bd6a20)
    • chore(deps): update typescript-eslint monorepo to v5.17.0 (be03f42)
    • chore(deps): update dependency fastify-swagger to v5.1.0 (1a5b119)
    • chore(deps): update dependency eslint to v8.12.0 (4a4da13)
    • chore(deps): update nest monorepo to v8.4.3 (2e9ecc6)
    Source code(tar.gz)
    Source code(zip)
  • 5.2.1(Mar 25, 2022)

    • Merge pull request #1863 from nestjs/renovate/ts-jest-27.x (fd3bd67)
    • Merge pull request #1861 from nestjs/renovate/npm-minimist-vulnerability (1387796)
    • Merge pull request #1858 from nestjs/renovate/typescript-eslint-monorepo (22bb439)
    • Merge pull request #1857 from nestjs/renovate/nest-monorepo (316c1b7)
    • Merge pull request #1856 from nestjs/renovate/release-it-14.x (f5b473b)
    • chore(deps): update typescript-eslint monorepo to v5.16.0 (91ec05f)
    • chore(deps): update dependency release-it to v14.13.1 (b29a572)
    • chore(deps): update nest monorepo to v8.4.2 (3e59c7c)
    • chore(deps): update dependency ts-jest to v27.1.4 (77f0f90)
    • chore(deps): update dependency prettier to v2.6.1 (08ba99d)
    • chore(deps): update dependency minimist to 1.2.6 [security] (890ff6f)
    • Merge pull request #1848 from CarsonF/ts-patch-plugin (273e4a5)
    • Merge pull request #1788 from npwork/feature/added_validation_decorators (daa95f9)
    • Merge pull request #1634 from glebbash/fix/colon-escape (83a46f7)
    • Merge pull request #1862 from tiste/add-missing-ui-config-params (1ba8a02)
    • test(): fix ts error in unit tests (e552f54)
    • fix: add missing ui config param 'queryConfigEnabled' (5280255)
    • chore(deps): update nest monorepo to v8.4.1 (bedd65b)
    • chore(deps): update dependency lint-staged to v12.3.7 (faf856d)
    • chore(deps): update dependency lint-staged to v12.3.6 (194eca1)
    • chore(deps): update dependency prettier to v2.6.0 (a3b5e91)
    • chore(deps): update commitlint monorepo to v16.2.3 (c6284ac)
    • chore(deps): update typescript-eslint monorepo to v5.15.0 (441c090)
    • chore(deps): update dependency @types/lodash to v4.14.180 (e30234c)
    • feat(plugin): add export for cli plugin for ts-patch/ttypescript (2f20127)
    • chore(deps): update dependency eslint to v8.11.0 (959ab1a)
    • chore(deps): update dependency fastify-swagger to v5 (0fd82b3)
    • chore(deps): update typescript-eslint monorepo to v5.14.0 (ca65f6a)
    • chore(deps): update dependency fastify-swagger to v4.17.1 (dc9b799)
    • chore(deps): update dependency lint-staged to v12.3.5 (6907114)
    • chore(deps): update dependency eslint-config-prettier to v8.5.0 (964920f)
    • chore(deps): update dependency fastify-swagger to v4.17.0 (cf688a7)
    • chore(deps): update typescript-eslint monorepo to v5.13.0 (e07e057)
    • chore(deps): update dependency eslint to v8.10.0 (ec93f96)
    • chore(deps): update dependency @types/lodash to v4.14.179 (3a480b0)
    • chore(deps): update dependency @types/node to v16.11.26 (96044a6)
    • chore(deps): update dependency @types/jest to v27.4.1 (1a5f19b)
    • chore(deps): update dependency release-it to v14.12.5 (78a4358)
    • chore(deps): update typescript-eslint monorepo to v5.12.1 (2cbfbf4)
    • chore(deps): update dependency eslint-config-prettier to v8.4.0 (620fa64)
    • chore(deps): update dependency express to v4.17.3 (d46cb9d)
    • chore(deps): update dependency @types/node to v16.11.25 (bfb928f)
    • chore(deps): update typescript-eslint monorepo to v5.12.0 (4ea4af3)
    • Merge pull request #1821 from nestjs/renovate/npm-follow-redirects-vulnerability (bba39f9)
    • chore(deps): update dependency lint-staged to v12.3.4 (8dfe668)
    • chore(deps): update commitlint monorepo to v16.2.1 (11e65a5)
    • chore(deps): update dependency follow-redirects to 1.14.8 [security] (96dbb11)
    • chore(deps): update dependency eslint to v8.9.0 (9a2ffe1)
    • chore(deps): update dependency @types/node to v16.11.24 (41bb2dc)
    • chore(deps): update dependency fastify-swagger to v4.15.0 (cd9e21f)
    • chore(deps): update dependency @types/node to v16.11.23 (5e6ed62)
    • chore(deps): update dependency jest to v27.5.1 (b767949)
    • chore(deps): update typescript-eslint monorepo to v5.11.0 (ee6d0b0)
    • chore(deps): update dependency jest to v27.5.0 (f8ae103)
    • chore(deps): update dependency fastify-swagger to v4.14.0 (f2294a7)
    • chore(deps): update dependency lint-staged to v12.3.3 (115a446)
    • chore(deps): update dependency @types/node to v16.11.22 (f8869ee)
    • chore(deps): update typescript-eslint monorepo to v5.10.2 (5f14377)
    • chore(deps): update dependency eslint to v8.8.0 (3c2079e)
    • chore(deps): update dependency lint-staged to v12.3.2 (0689b5f)
    • feat: added support for decorators Matches, IsPositive, IsNegative, Length, IsIn (1cee333)
    • feat: added support for decorators Matches, IsPositive, IsNegative, Length (733f562)
    • fix: unescape colons in path (b11c809)
    • chore: fix typo (48b91c9)
    Source code(tar.gz)
    Source code(zip)
  • 5.2.0(Jan 25, 2022)

    • feat(): add uihooks option to fastify driver (2058583)
    • Merge pull request #1525 from ton11797/fix-api-extension (ab92747)
    • Merge pull request #1706 from chromey/introspect-comments-with-tabs (a525819)
    • Merge pull request #1770 from MatthieuLemoine/feat-support-bigint (6298906)
    • Merge pull request #1772 from nestjs/dependabot/npm_and_yarn/follow-redirects-1.14.7 (c6b156f)
    • Merge pull request #1773 from nestjs/renovate/npm-follow-redirects-vulnerability (ac2a8b1)
    • Merge pull request #1783 from mikeyaa/master (49522b0)
    • Merge pull request #1790 from nestjs/dependabot/npm_and_yarn/node-fetch-2.6.7 (118b15a)
    • Merge pull request #1791 from nestjs/renovate/npm-node-fetch-vulnerability (a71ea89)
    • chore(deps): update typescript-eslint monorepo to v5.10.1 (a620e4a)
    • chore(deps): update dependency follow-redirects to 1.14.7 [security] (ac7a951)
    • chore(deps): bump node-fetch from 2.6.1 to 2.6.7 (ba140f1)
    • chore(deps): update dependency release-it to v14.12.4 (1ffdd45)
    • chore(deps): update dependency lint-staged to v12.3.1 (912a5bf)
    • chore(deps): update dependency node-fetch to 2.6.7 [security] (68c4cdb)
    • chore(deps): update dependency lint-staged to v12.3.0 (a5c6f2f)
    • chore(deps): update dependency lint-staged to v12.2.2 (d6d3a03)
    • chore(deps): update dependency @commitlint/cli to v16.1.0 (1dfcd63)
    • chore(deps): update dependency lint-staged to v12.2.1 (237b711)
    • chore(deps): update dependency @commitlint/cli to v16.0.3 (419a4c6)
    • chore(deps): update dependency @types/node to v16.11.21 (003852b)
    • Add tagsSorter and operationsSorter to FastifySwaggerCustomOptions (2227e8f)
    • chore(deps): update dependency lint-staged to v12.2.0 (7947296)
    • chore(deps): update typescript-eslint monorepo to v5.10.0 (5061781)
    • chore(deps): update dependency @types/node to v16.11.20 (349741b)
    • chore(deps): update dependency release-it to v14.12.3 (eb03852)
    • chore(deps): update dependency eslint to v8.7.0 (53ed504)
    • chore(deps): update dependency release-it to v14.12.2 (214a366)
    • chore(deps): update dependency ts-jest to v27.1.3 (04185e4)
    • chore(deps): bump follow-redirects from 1.14.5 to 1.14.7 (07ed55f)
    • feat: add plugin support for bigint (4aa51ed)
    • chore(deps): update typescript-eslint monorepo to v5.9.1 (57b289e)
    • chore(deps): update dependency release-it to v14.12.1 (734c665)
    • chore(deps): update dependency @commitlint/cli to v16.0.2 (be7cb9e)
    • chore(deps): update dependency fastify-swagger to v4.13.1 (204d273)
    • chore(deps): update dependency lint-staged to v12.1.7 (29d5592)
    • chore(deps): update dependency lint-staged to v12.1.6 (ea118d1)
    • chore(deps): update dependency jest to v27.4.7 (35787e2)
    • chore(deps): update dependency jest to v27.4.6 (47dd39a)
    • chore(deps): update dependency @types/node to v16.11.19 (ece2c33)
    • chore(deps): update typescript-eslint monorepo to v5.9.0 (00198fd)
    • chore(deps): update dependency @types/node to v16.11.18 (30dfcf9)
    • chore(deps): update dependency eslint-plugin-import to v2.25.4 (182e4f5)
    • chore(deps): update dependency lint-staged to v12.1.5 (cf62f1f)
    • chore(deps): update dependency eslint to v8.6.0 (803bbc8)
    • chore(deps): update dependency @types/jest to v27.4.0 (d344da5)
    • chore(deps): update dependency @commitlint/cli to v16.0.1 (9f0e50c)
    • chore(deps): update typescript-eslint monorepo to v5.8.1 (14c369a)
    • chore(deps): update commitlint monorepo to v16 (8c6facd)
    • chore(deps): update dependency lint-staged to v12.1.4 (4f57580)
    • chore(deps): update dependency @types/node to v16.11.17 (2f88aad)
    • chore(deps): update dependency @types/node to v16.11.16 (29f16e9)
    • chore(deps): update dependency @types/node to v16.11.15 (e2059df)
    • chore(deps): update typescript-eslint monorepo to v5.8.0 (7b65233)
    • chore(deps): update dependency lint-staged to v12.1.3 (0a1750e)
    • chore(deps): update dependency eslint to v8.5.0 (49a2e12)
    • chore(deps): update dependency fastify-swagger to v4.13.0 (9879ffa)
    • chore(deps): update dependency express to v4.17.2 (48e1128)
    • chore(deps): update dependency ts-jest to v27.1.2 (4bb8f9b)
    • chore(deps): update dependency swagger-ui-express to v4.3.0 (cb0e75e)
    • chore(deps): update dependency @types/node to v16.11.14 (cd4d705)
    • chore(deps): update dependency @types/node to v16.11.13 (730bcd6)
    • chore(deps): update dependency jest to v27.4.5 (9fc8970)
    • chore(deps): update typescript-eslint monorepo to v5.7.0 (89c78a4)
    • Merge pull request #1721 from andrewda/formatter (4688f59)
    • Merge pull request #1707 from nestjs/renovate/nestjs-mapped-types-1.x (8a0b01e)
    • style: run formatter (56d1dc1)
    • chore(deps): update dependency jest to v27.4.4 (4010681)
    • chore(deps): update dependency @types/lodash to v4.14.178 (a4ec328)
    • chore(deps): update dependency ts-jest to v27.1.1 (16f1824)
    • chore(deps): update dependency @types/node to v16.11.12 (29aac01)
    • chore(deps): update dependency eslint to v8.4.1 (d665676)
    • chore(deps): update typescript-eslint monorepo to v5.6.0 (eada9f2)
    • chore(deps): update dependency ts-jest to v27.1.0 (107364e)
    • chore(deps): update dependency prettier to v2.5.1 (7c4e14f)
    • chore(deps): update dependency eslint to v8.4.0 (5bb87d5)
    • fix(deps): update dependency @nestjs/mapped-types to v1.0.1 (f2714d3)
    • fix: make introspectComments work with tab indentation (b34fb17)
    • chore(deps): update dependency jest to v27.4.3 (922f46c)
    • chore(deps): update dependency swagger-ui-express to v4.2.0 (8b2777e)
    • chore(deps): update dependency jest to v27.4.2 (6c7e993)
    • chore(deps): update dependency jest to v27.4.1 (56fe7d8)
    • chore(deps): update dependency @types/node to v16.11.11 (fc74322)
    • chore(deps): update typescript-eslint monorepo to v5.5.0 (0ec306a)
    • chore(deps): update dependency jest to v27.4.0 (f26a2ff)
    • chore(deps): update dependency prettier to v2.5.0 (e1a102c)
    • chore(deps): update dependency @types/node to v16.11.10 (1af6471)
    • chore(deps): update dependency class-transformer to v0.5.1 (3d44539)
    • chore(deps): update nest monorepo to v8.2.3 (fa9e330)
    • chore(deps): update dependency lint-staged to v12.1.2 (79e141d)
    • chore(deps): update dependency lint-staged to v12.1.1 (a3d4b26)
    • chore(deps): update dependency eslint to v8.3.0 (f090c76)
    • chore(deps): update dependency class-transformer to v0.5.0 (0751a6f)
    • chore(deps): update dependency class-validator to v0.13.2 (66e26e3)
    • chore(deps): update dependency release-it to v14.11.8 (abd29ac)
    • chore(deps): update dependency @types/node to v16.11.9 (8ad4c15)
    • chore(deps): update dependency lint-staged to v12.0.3 (e369542)
    • chore(deps): update dependency @types/jest to v27.0.3 (4432852)
    • chore(deps): update dependency @types/node to v16.11.8 (a8491c6)
    • chore(deps): update nest monorepo to v8.2.2 (00de296)
    • Merge pull request #1671 from caucik/fix-imports (7ec8bd7)
    • revert: refactor: update @nestjs/common and @nestjs/core imports to reference top level index.ts (76b3566)
    • refactor: update @nestjs/common and @nestjs/core imports to reference top level index.ts (ea7cf62)
    • Update lib/decorators/helpers.ts (be46b23)
    • fix (a59ac61)
    • fix (80ce744)
    • add test (8331807)
    • fix (d89814f)
    Source code(tar.gz)
    Source code(zip)
  • 5.1.5(Nov 18, 2021)

    • Merge pull request #1641 from nestjs/renovate/circleci-node-17.x (6dc8bda)
    • Merge pull request #1657 from nestjs/renovate/npm-validator-vulnerability (8e4f3f1)
    • Merge pull request #1673 from caucik/patch-1 (5d95707)
    • Merge pull request #1658 from ItzNeviKat/patch-1 (46d6972)
    • chore(deps): update commitlint monorepo to v15 (aba3038)
    • chore(deps): update nest monorepo to v8.2.1 (9337b79)
    • style: update PR template markdown file (db394d8)
    • chore(deps): update typescript-eslint monorepo to v5.4.0 (acaee61)
    • chore(deps): update dependency @types/lodash to v4.14.177 (cec0ecb)
    • chore(deps): update dependency release-it to v14.11.7 (eaf1a92)
    • chore(deps): update dependency lint-staged to v12.0.2 (24f1733)
    • chore(deps): update dependency lint-staged to v12 (0ae6c84)
    • chore(deps): update dependency eslint-plugin-import to v2.25.3 (735727d)
    • chore(deps): update dependency @types/node to v16.11.7 (a9e8e7e)
    • chore(deps): update typescript-eslint monorepo to v5.3.1 (0aa4517)
    • chore(deps): update node.js to v17 (9ab45ec)
    • chore(deps): update nest monorepo to v8.2.0 (a3f1bd1)
    • chore(deps): update dependency eslint to v8.2.0 (759dee2)
    • fix: add persistAuthorization property to uiConfig (62dae6c)
    • chore(deps): update dependency validator to 13.7.0 [security] (83006e6)
    • chore(deps): update typescript-eslint monorepo to v5.3.0 (25327e0)
    • chore(deps): update commitlint monorepo to v14 (e14049e)
    • chore(deps): update dependency fastify-swagger to v4.12.6 (53b24a4)
    • chore(deps): update dependency lint-staged to v11.2.6 (5ab514b)
    • chore(deps): update dependency lint-staged to v11.2.5 (f2027ce)
    • chore(deps): update dependency @types/node to v16 (43d2f96)
    • chore(deps): update dependency @types/node to v14.17.32 (63293be)
    • chore(deps): update dependency @types/node to v14.17.31 (0b32118)
    • chore(deps): update typescript-eslint monorepo to v5.2.0 (2cce8e3)
    • chore(deps): update nest monorepo to v8.1.2 (9e3267f)
    • chore(deps): update dependency lint-staged to v11.2.4 (bcc4c6a)
    • chore(deps): update dependency eslint to v8.1.0 (94a7e7a)
    • chore(deps): update dependency @types/node to v14.17.29 (848d1fa)
    • chore(deps): update dependency @types/node to v14.17.28 (dbcd946)
    Source code(tar.gz)
    Source code(zip)
  • 5.1.4(Oct 22, 2021)

    • Merge pull request #1632 from micalevisk/hotfix/controller-default-version (0762f74)
    • test: add unit tests to cover global default version feature (1e85ce6)
    • fix: use defaultVersion as a fallback to controller version (84f1761)
    Source code(tar.gz)
    Source code(zip)
  • 5.1.3(Oct 21, 2021)

  • 5.1.2(Oct 21, 2021)

    • Merge branch 'master' of https://github.com/nestjs/swagger (d4527f2)
    • feat(): support multiple versions and aliases (967c893)
    • chore(deps): update dependency husky to v7.0.4 (11ede75)
    • chore(deps): update dependency @types/lodash to v4.14.176 (0d1d72d)
    • chore(deps): update dependency jest to v27.3.1 (b3aa064)
    • chore(deps): update typescript-eslint monorepo to v5.1.0 (f79d05f)
    • chore(deps): update dependency fastify-swagger to v4.12.5 (e241880)
    • chore(deps): update dependency jest to v27.3.0 (b50fcc7)
    Source code(tar.gz)
    Source code(zip)
  • 5.1.1(Oct 18, 2021)

    • Merge pull request #1593 from nestjs/renovate/npm-fastify-static-vulnerability (1b4507d)
    • Merge pull request #1590 from tlan16/master (a6dd36e)
    • chore(deps): update dependency ts-jest to v27.0.7 (6bb8554)
    • chore(deps): update dependency ts-jest to v27.0.6 (fb06dc7)
    • chore(deps): update dependency @types/node to v14.17.27 (7bc2a1b)
    • chore(deps): update nest monorepo to v8.1.1 (dc3a8cb)
    • chore(deps): update dependency eslint to v8.0.1 (737481e)
    • chore(deps): update dependency @types/node to v14.17.26 (1a102e0)
    • chore(deps): update nest monorepo to v8.1.0 (5e141cf)
    • chore(deps): update dependency eslint-plugin-import to v2.25.2 (637f35f)
    • chore(deps): update dependency @types/node to v14.17.22 (c710dd6)
    • chore(deps): update dependency eslint-plugin-import to v2.25.1 (d172ee9)
    • chore(deps): update typescript-eslint monorepo to v5 (d5746b7)
    • chore(deps): update dependency lint-staged to v11.2.3 (7a2442d)
    • chore(deps): update dependency eslint to v8 (e7b29fa)
    • chore(deps): update dependency lint-staged to v11.2.2 (d088b32)
    • chore(deps): update dependency @commitlint/cli to v13.2.1 (47ac21b)
    • chore(deps): update dependency lint-staged to v11.2.1 (dc5e600)
    • chore(deps): update dependency jest to v27.2.5 (94b194f)
    • chore(deps): update nest monorepo to v8.0.11 (2bcfe34)
    • chore(deps): update dependency @types/node to v14.17.21 (bc978e3)
    • chore(deps): update dependency fastify-static to 4.2.4 [security] (626e089)
    • chore(deps): update nest monorepo to v8.0.10 (bec327e)
    • add layout to uiConfig (67c7d0b)
    • chore(deps): update typescript-eslint monorepo to v4.33.0 (5f1134d)
    • chore(deps): update dependency lint-staged to v11.2.0 (1e7750f)
    • Merge pull request #1585 from micalevisk/chore/migrate-to-gh-issue-forms (e9e5036)
    • chore(): migrate to github issues forms (5a503d8)
    • chore(deps): update dependency fastify-swagger to v4.12.4 (7753bf7)
    • chore(deps): update nest monorepo to v8.0.9 (5f19820)
    • chore(deps): update dependency jest to v27.2.4 (0253bd2)
    • chore(deps): update dependency @types/node to v14.17.20 (11c661c)
    • chore(deps): update dependency fastify-swagger to v4.12.3 (4c44316)
    • chore(deps): update nest monorepo to v8.0.8 (8750b44)
    • chore(deps): update dependency jest to v27.2.3 (225e375)
    • chore(deps): update dependency fastify-swagger to v4.12.2 (3405b8c)
    Source code(tar.gz)
    Source code(zip)
  • 5.1.0(Sep 28, 2021)

    • Merge branch 'master' of https://github.com/nestjs/swagger (abb0de8)
    • fix(): revert examples property (67ccbbe)
    • Merge pull request #1508 from sinchang/feature/add-uiconfig-type (dd72272)
    • Merge branch 'master' into feature/add-uiconfig-type (b182249)
    • Merge pull request #1505 from nick-lehmann/add-shim-file (a3cd446)
    • Merge pull request #1506 from danielborges93/danielborges93-swagger-path-global-prefix-option (18b19b7)
    • Merge branch 'master' into feature/add-uiconfig-type (b1a3be8)
    • Merge pull request #1513 from DimychOcean/extend-fastify-options-fix (f297967)
    • Merge pull request #1493 from nestjs/dependabot/npm_and_yarn/path-parse-1.0.7 (ecc85fc)
    • Merge pull request #1494 from nestjs/renovate/npm-path-parse-vulnerability (1553c79)
    • Merge pull request #1566 from nestjs/renovate/npm-ansi-regex-vulnerability (eb674e4)
    • chore(deps): update commitlint monorepo to v13.2.0 (951420d)
    • chore(deps): update dependency @types/lodash to v4.14.175 (0063d68)
    • chore(deps): update typescript-eslint monorepo to v4.32.0 (fb86430)
    • chore(deps): update dependency fastify-swagger to v4.12.1 (4fe15cf)
    • chore(deps): update dependency jest to v27.2.2 (9e98fa8)
    • chore(deps): update dependency @types/node to v14.17.19 (3ab3f51)
    • chore(deps): update dependency @types/lodash to v4.14.174 (e205691)
    • chore(deps): update dependency ansi-regex to 5.0.1 [security] (ef43aab)
    • chore(deps): update nest monorepo to v8.0.7 (b3c2369)
    • chore(deps): update dependency release-it to v14.11.6 (ae54fce)
    • chore(deps): update dependency @types/node to v14.17.18 (df4b726)
    • chore(deps): update dependency @types/jest to v27.0.2 (976c3b4)
    • chore(deps): update typescript-eslint monorepo to v4.31.2 (5466ab9)
    • chore(deps): update dependency jest to v27.2.1 (cf4ddea)
    • chore(deps): update dependency @types/node to v14.17.17 (99daa93)
    • chore(deps): update dependency prettier to v2.4.1 (b21a2df)
    • chore(deps): update dependency @types/lodash to v4.14.173 (8a58d22)
    • chore(deps): update dependency fastify-swagger to v4.12.0 (0d5f1cb)
    • chore(deps): update dependency @types/node to v14.17.16 (ca43daa)
    • chore(deps): update typescript-eslint monorepo to v4.31.1 (f73f7db)
    • chore(deps): update dependency jest to v27.2.0 (a0264e3)
    • chore(deps): update dependency prettier to v2.4.0 (e3bd7bb)
    • chore(deps): update dependency jest to v27.1.1 (cc0572e)
    • chore(deps): update dependency fastify-swagger to v4.11.0 (7e1e661)
    • chore(deps): update dependency fastify-swagger to v4.10.0 (3470ccd)
    • chore(deps): update dependency @types/node to v14.17.15 (cd6d7a0)
    • chore(deps): update typescript-eslint monorepo to v4.31.0 (3d8922a)
    • Merge pull request #2 from DimychOcean/circleci-project-setup (b607607)
    • Add .circleci/config.yml (aaad69d)
    • chore(deps): update dependency @types/node to v14.17.14 (aefaa10)
    • chore(deps): update dependency @types/node to v14.17.13 (5a0bd92)
    • chore(deps): update typescript-eslint monorepo to v4.30.0 (444f91c)
    • chore(deps): update dependency fastify-swagger to v4.9.1 (9b41ec2)
    • chore(deps): update dependency jest to v27.1.0 (0ca64ab)
    • chore(deps): update dependency @types/node to v14.17.12 (a19a839)
    • chore(deps): update dependency husky to v7.0.2 (b405f89)
    • chore(deps): update dependency eslint-plugin-import to v2.24.2 (c827f02)
    • chore(deps): update typescript-eslint monorepo to v4.29.3 (bf149d8)
    • feat(): add fastify-swagger options (c3788c0)
    • chore(deps): update dependency @types/node to v14.17.11 (e224245)
    • chore(deps): update dependency eslint-plugin-import to v2.24.1 (df448b7)
    • feat: add type for fastify swaggger uiConfig (011f4bc)
    • test(): add test checking if shim includes all exports (a33eedb)
    • chore(deps): update dependency @types/node to v14.17.10 (4bcc631)
    • chore(deps): update dependency fastify-swagger to v4.9.0 (c00e8f3)
    • feat(): add shim file for browsers (b7de877)
    • feat(@nestjs/swagger): add option in SwaggerModule.setup to use nestjs application global prefix (6d5e6b3)
    • chore(deps): update dependency ts-jest to v27.0.5 (5bf65b9)
    • chore(deps): update typescript-eslint monorepo to v4.29.2 (f197e2e)
    • chore(deps): update dependency swagger-parser to v10.0.3 (bd73ac8)
    • chore(deps): update dependency release-it to v14.11.5 (0a4e9c1)
    • chore(deps): update dependency release-it to v14.11.4 (9f6a071)
    • chore(deps): update dependency @types/jest to v27.0.1 (de8c4f4)
    • chore(deps): update dependency path-parse to 1.0.7 [security] (18e353c)
    • chore(deps): bump path-parse from 1.0.6 to 1.0.7 (f8d2c88)
    • chore(deps): update dependency @types/jest to v27 (5b06876)
    • chore(deps): update dependency release-it to v14.11.3 (7f45723)
    • chore(deps): update typescript-eslint monorepo to v4.29.1 (f69d002)
    • chore(deps): update dependency eslint-plugin-import to v2.24.0 (dfccf31)
    • chore(deps): update dependency release-it to v14.11.0 (7f9b58a)
    • chore(deps): update dependency lint-staged to v11.1.2 (950f8b9)
    • chore(deps): update nest monorepo to v8.0.6 (e722764)
    • chore(deps): update dependency @types/node to v14.17.9 (f5a6479)
    • chore(deps): update dependency @types/node to v14.17.8 (71b3870)
    • chore(deps): update dependency fastify-swagger to v4.8.4 (7425c6e)
    • chore(deps): update dependency @types/lodash to v4.14.172 (be3ecce)
    • chore(deps): update typescript-eslint monorepo to v4.29.0 (3e48b52)
    • chore(deps): update dependency @types/node to v14.17.7 (f4533e8)
    • chore(deps): update dependency eslint to v7.32.0 (b3cebf7)
    Source code(tar.gz)
    Source code(zip)
  • 5.0.9(Jul 29, 2021)

    • fix(): fix peer dependencies (4d53813)
    • chore(deps): update nest monorepo to v8.0.5 (833458d)
    • chore(deps): update typescript-eslint monorepo to v4.28.5 (59ae1f5)
    • chore(deps): update dependency @types/node to v14.17.6 (c7a8f3d)
    • chore(deps): update dependency lint-staged to v11.1.1 (d7907fe)
    • chore(deps): update commitlint monorepo to v13 (f675de5)
    • chore(deps): update dependency release-it to v14.10.1 (013779f)
    • chore(deps): update dependency lint-staged to v11.1.0 (b25d4c3)
    Source code(tar.gz)
    Source code(zip)
  • 5.0.8(Jul 22, 2021)

  • 5.0.6(Jul 22, 2021)

  • 5.0.5(Jul 22, 2021)

    • fix(): api operation decorator crashes with comment introspection #1460 (a57b7a0)
    • Merge branch 'nartc-fix/1339' (a3e151f)
    • Merge branch 'fix/1339' of https://github.com/nartc/swagger into nartc-fix/1339 (b4b244d)
    • chore(deps): update dependency ts-jest to v27.0.4 (81fa2bc)
    • chore(deps): update typescript-eslint monorepo to v4.28.4 (aee8323)
    • chore(deps): update dependency eslint to v7.31.0 (a05bf1d)
    • refactor: adjust remnant from moving class methods out to utils (df33b92)
    • feat: support nested array type for ApiProperty (263d69e)
    • refactor(plugin): use NodeFactory to replace all deprecated methods from TS (3c8f6d3)
    • Merge branch 'nestjs:master' into master (4f3bfe1)
    • Merge branch 'nestjs:master' into master (bda56b2)
    • Merge pull request #1 from nestjs/master (b4c2a1a)
    Source code(tar.gz)
    Source code(zip)
  • 5.0.4(Jul 16, 2021)

    • Merge branch 'master' of https://github.com/nestjs/swagger (c190f93)
    • fix(): fix deep scan route feature (router module) #1451 (22e1c28)
    • chore(deps): update nest monorepo to v8.0.4 (f32f14b)
    • chore(deps): update nest monorepo to v8.0.3 (4740848)
    Source code(tar.gz)
    Source code(zip)
  • 5.0.3(Jul 14, 2021)

  • 5.0.2(Jul 14, 2021)

    • Merge branch 'master' of https://github.com/nestjs/swagger (db16a56)
    • fix(plugin): properly introspect nullable properties (9c5366e)
    • chore(deps): update dependency lint-staged to v11.0.1 (a19e2e3)
    Source code(tar.gz)
    Source code(zip)
  • 5.0.1(Jul 13, 2021)

    • Merge branch 'master' of https://github.com/nestjs/swagger (677d27d)
    • fix(): literal object types regression #1442 (5a88336)
    • chore(deps): update typescript-eslint monorepo to v4.28.3 (7eeb272)
    • chore(deps): update nest monorepo to v8.0.2 (f74f2b0)
    • chore(deps): update dependency fastify-swagger to v4.8.3 (238a52a)
    • chore(deps): update nest monorepo to v8.0.1 (9836860)
    Source code(tar.gz)
    Source code(zip)
  • 5.0.0(Jul 8, 2021)

    • Merge branch 'coyotte508-raw-definition' (0f86fbb)
    • chore(): resolve conflicts (857c055)
    • chore(): merge (98e660c)
    • chore(): resolve conflicts (8a14c0f)
    • Merge branch 'master' of https://github.com/nestjs/swagger (4a730cf)
    • Merge branch 'enzinia-fix/1295-openapi_json_for_minlength' (55d3388)
    • test(): add e2e test (c2f9081)
    • Merge branch 'fix/1295-openapi_json_for_minlength' of https://github.com/enzinia/swagger into enzinia-fix/1295-openapi_json_for_minlength (8254533)
    • Merge pull request #1271 from bertyhell/allow-custom-schema-configuration (82effdc)
    • Merge branch 'mo4islona-feat/use-multiple-api-models' (6abb7c2)
    • chore(): resolve conflicts (4e16b68)
    • chore(): upgrade typescript (94c6ebc)
    • Merge branch 'ReAleR09-fix/remove-undefined-routes' (d40f844)
    • refactor(): simplify filter condition (e7e2451)
    • Merge branch 'fix/remove-undefined-routes' of https://github.com/ReAleR09/swagger into ReAleR09-fix/remove-undefined-routes (dec5c0c)
    • Merge pull request #1430 from nestjs/renovate/npm-trim-newlines-vulnerability (4af6ed3)
    • Merge pull request #1429 from nestjs/renovate/npm-normalize-url-vulnerability (4f11086)
    • Merge pull request #1427 from nestjs/renovate/npm-hosted-git-info-vulnerability (b74889c)
    • Merge pull request #1425 from nestjs/dependabot/npm_and_yarn/minimist-1.2.5 (c38d1be)
    • Merge pull request #1424 from nestjs/dependabot/npm_and_yarn/trim-newlines-3.0.1 (6701dae)
    • Merge pull request #1423 from nestjs/dependabot/npm_and_yarn/normalize-url-4.5.1 (60545fd)
    • Merge pull request #1422 from nestjs/renovate/nestjs-mapped-types-1.x (ad0782a)
    • chore(deps): update dependency @types/node to v14.17.5 (075bf7e)
    • fix(deps): update dependency @nestjs/mapped-types to v1 (33df15d)
    • chore(deps): update dependency trim-newlines to 3.0.1 [security] (2327432)
    • chore(deps): update dependency normalize-url to 4.5.1 [security] (83e6248)
    • chore(deps): update dependency hosted-git-info to 2.8.9 [security] (85b3d67)
    • chore(deps): bump minimist from 1.2.0 to 1.2.5 (e3fd568)
    • chore(deps): bump trim-newlines from 3.0.0 to 3.0.1 (ebd95f9)
    • chore(deps): bump normalize-url from 4.5.0 to 4.5.1 (e587cfb)
    • Merge pull request #1395 from nestjs/8.0.0 (5596178)
    • Merge branch '8.0.0' of https://github.com/nestjs/swagger into 8.0.0 (8e633a1)
    • fix(): resolve conflicts (67c20a4)
    • chore(deps): update dependency @types/lodash to v4.14.171 (7d0df16)
    • chore(deps): update dependency @types/jest to v26.0.24 (738dda1)
    • chore(deps): update dependency husky to v7.0.1 (5587a64)
    • chore(deps): update typescript-eslint monorepo to v4.28.2 (c87c568)
    • chore(deps): update jest monorepo (7d3bd69)
    • chore(deps): update dependency eslint to v7.30.0 (076bb1a)
    • chore(deps): update dependency husky to v7 (446e754)
    • chore(deps): update dependency fastify-swagger to v4.8.2 (0dd0e9a)
    • feat(@nest/swagger): allow to use multiple ApiExtraModels on same method/controller (378e0e0)
    • fix(@nestjs/swagger): prevent routes with undefined path from getting into the generated doc (1b4d036)
    • Merge pull request #1393 from gamedevsam/single-string-literal-fix (f2bf5dc)
    • Merge pull request #1149 from coolsamk7/bug/default-api-response-decorator (5f300c7)
    • Merge branch '8.0.0' of https://github.com/nestjs/swagger into 8.0.0 (1f5e42b)
    • Merge branch 'coyotte508-patch-2' into 8.0.0 (822cf4d)
    • chore(): resolve conflicts (5975ccb)
    • Merge pull request #1283 from vinnymac/fix/null-union-support (8f5ee9f)
    • Merge pull request #1341 from lazharichir/master (23a11c1)
    • Merge pull request #1373 from StenCalDabran/mitigate-display-problems-by-reversing-order-of-document-properties (f78bbfe)
    • chore(): resolve conflicts, upgrade deps, fix br changes (c079b5d)
    • feat(): major release 8.0.0 (52f8b9d)
    • Format code (4cf468a)
    • Fix generated types for single string literals (8ed0d44)
    • refactor: use the refactored SwaggerCustomOptions types (c012b37)
    • refactor: split SwaggerCustomOptions into two (Express as well as Fastify) (92d80cd)
    • fix(@nestjs/swagger) Change created document property order (fb95a99)
    • refactor: pass on uiConfig for fastify (e322131)
    • test: check uiConfig options are processed by fastify-swagger (8f323fb)
    • fix(): add string length options to schemaOptionsKeys (d02e5eb)
    • Add undefined in union support (3c414c5)
    • Fix nullable properties (265bce6)
    • feat: allow custom schema configuration (8d33037)
    • fix(): Remove/add whitespaces (cd863fb)
    • fix(): implementation and test of endpoint-exclude-decorator (eeb9d5e)
    • feat(config): merge passed schemas, links, ... in createDocument (fdbcbe7)
    • chore(): update decorator and test (b9a74e9)
    • test(): added decorator test (e520677)
    • feat(): added decorator for exclude controller (bfe9ae4)
    • perf: store schemas in an object instead of an array of key/value (1af74d2)
    • fix: set default status for api-response decorator (f3257b2)
    Source code(tar.gz)
    Source code(zip)
  • 4.8.2(Jun 30, 2021)

    • fix(plugin): transform absolute paths #1411 (ae70da9)
    • chore(deps): update dependency fastify-swagger to v4.8.1 (fe98e6a)
    • chore(deps): update typescript-eslint monorepo to v4.28.1 (c722f48)
    • Merge pull request #1405 from mo4islona/fix/lint (2b27e14)
    • chore(deps): update dependency prettier to v2.3.2 (255ca31)
    • fix: remove prettier/@typescript-eslint from eslint config (7913d1c)
    • chore(deps): update dependency @types/node to v14.17.4 (5519918)
    • chore(deps): update typescript-eslint monorepo to v4.28.0 (9e33248)
    • chore(deps): update dependency fastify-swagger to v4.8.0 (b000a18)
    • chore(deps): update dependency release-it to v14.10.0 (4a9153b)
    • chore(deps): update dependency eslint to v7.29.0 (888f4ed)
    Source code(tar.gz)
    Source code(zip)
  • 4.8.1(Jun 18, 2021)

    • Merge pull request #1308 from bilalshaikh42/patch-1 (9b2049a)
    • Merge pull request #1309 from gperdomor/patch-1 (9c69f5a)
    • Merge pull request #1318 from deviantfero/master (7258fca)
    • Merge pull request #1343 from ppkgtmm/reduce-double-loop (710dbb8)
    • test9): fix swagger explorer unit tests (67254ec)
    • Merge pull request #1268 from konne/fix-ApiBodyExamples (8e89351)
    • Merge pull request #1279 from tombarton/fix/enum-name-leak (1458c0b)
    • Merge pull request #1277 from nestjs/renovate/nestjs-mapped-types-0.x (9822b06)
    • Merge pull request #1223 from tourlbr/fix/adjust-api-query-decorator-for-enums (8a72b6c)
    • Merge pull request #1372 from nestjs/renovate/circleci-node-16.x (b9713a3)
    • chore(deps): update nest monorepo to v7.6.18 (9505503)
    • chore(deps): update typescript-eslint monorepo to v4.27.0 (9cfe03e)
    • chore(deps): update dependency release-it to v14.9.0 (2685bf5)
    • chore(deps): update dependency @types/node to v14.17.3 (18a3f26)
    • chore(deps): update typescript-eslint monorepo to v4.26.1 (7791e79)
    • refactor(@nestjs/swagger) reduce loop in MimetypeContentWrapper (8e7f4a2)
    • chore(deps): update dependency release-it to v14.8.0 (8778776)
    • chore(deps): update dependency prettier to v2.3.1 (5561e23)
    • chore(deps): update dependency eslint to v7.28.0 (6af0378)
    • chore(deps): update dependency @types/node to v14.17.2 (88f6d1b)
    • chore(deps): update typescript-eslint monorepo to v4.26.0 (4754630)
    • chore(deps): update dependency eslint-plugin-import to v2.23.4 (2c0dc16)
    • chore(deps): update node.js to v16 (9b5049c)
    • chore(deps): update dependency @types/node to v14.17.1 (29926c7)
    • chore(deps): update typescript-eslint monorepo to v4.25.0 (2caf1fe)
    • chore(deps): update dependency release-it to v14.7.0 (1689fe3)
    • chore(deps): update dependency eslint to v7.27.0 (0582c56)
    • chore(deps): update dependency eslint-plugin-import to v2.23.3 (4c7738b)
    • chore(deps): update dependency @types/node to v14 (c029355)
    • chore(deps): update dependency @types/lodash to v4.14.170 (b35e47b)
    • chore(deps): update nest monorepo to v7.6.17 (729acf7)
    • chore(deps): update nest monorepo to v7.6.16 (6969d0e)
    • chore(deps): update typescript-eslint monorepo to v4.24.0 (98a221c)
    • chore(deps): update dependency eslint-plugin-import to v2.23.2 (dab27ea)
    • chore(deps): update dependency eslint-plugin-import to v2.23.1 (c329bb4)
    • chore(deps): update dependency eslint-plugin-import to v2.23.0 (69b90bf)
    • refactor(@nestjs/swagger) reduce loop in MimetypeContentWrapper (02d593a)
    • chore(deps): update commitlint monorepo to v12.1.4 (164b1d2)
    • chore(deps): update dependency @types/node to v11.15.54 (e34764f)
    • chore(deps): update commitlint monorepo to v12.1.3 (5653ca4)
    • chore(deps): update dependency @types/lodash to v4.14.169 (b96ea52)
    • chore(deps): update typescript-eslint monorepo to v4.23.0 (68f85d5)
    • chore(deps): update dependency prettier to v2.3.0 (36c5fe6)
    • chore(deps): update dependency release-it to v14.6.2 (b2d3629)
    • chore(deps): update dependency eslint to v7.26.0 (b34bca2)
    • chore(deps): update dependency lint-staged to v11 (dfee57c)
    • fix(deps): update dependency @nestjs/mapped-types to v0.4.1 (edf6883)
    • chore(deps): update dependency ts-jest to v26.5.6 (9e528f8)
    • chore(deps): update typescript-eslint monorepo to v4.22.1 (92e803e)
    • feat: add format in ApiParam decorator (3bfb557)
    • fix(plugin): check if a importPath is a package (4034643)
    • chore(deps): update dependency @types/node to v11.15.53 (58fcc0c)
    • chore(deps): update dependency @types/jest to v26.0.23 (5194c9e)
    • chore(deps): update dependency eslint-config-prettier to v8.3.0 (2fec5f8)
    • chore(deps): update dependency eslint to v7.25.0 (958d18b)
    • chore(deps): update dependency fastify-swagger to v4.7.0 (fe95e86)
    • fix: fix test to use new schema (a2a28ba)
    • fix: remove invalid property (45ad8a7)
    • fix(interfaces): remove 'examples' property (a486563)
    • chore(deps): update dependency @types/node to v11.15.52 (491b168)
    • chore(deps): update dependency ts-jest to v26.5.5 (1f62351)
    • chore(deps): update dependency @types/node to v11.15.51 (26fa187)
    • chore(deps): update dependency fastify-swagger to v4.6.0 (343e8f8)
    • chore(deps): update dependency eslint-config-prettier to v8.2.0 (ea0877e)
    • chore(deps): update typescript-eslint monorepo to v4.22.0 (8c35d8d)
    • chore(deps): update dependency release-it to v14.6.1 (8e1ea9d)
    • chore(deps): update dependency fastify-swagger to v4.5.1 (fb34a7b)
    • chore(deps): update dependency eslint to v7.24.0 (afb7718)
    • chore(deps): update dependency release-it to v14.6.0 (8b97c8f)
    • chore(deps): update dependency typescript to v4.2.4 (47df1b9)
    • chore(deps): update typescript-eslint monorepo to v4.21.0 (48a1362)
    • chore(deps): update dependency fastify-swagger to v4.5.0 (f7abdb5)
    • chore(deps): update commitlint monorepo to v12.1.1 (790469e)
    • chore(deps): update dependency release-it to v14.5.1 (4d2ec8c)
    • fix(#1148): prevent decorator properties from leaking into swagger doc (ab3225d)
    • chore(deps): update typescript-eslint monorepo to v4.20.0 (3942a15)
    • chore(deps): update dependency husky to v6 (2d27e9c)
    • chore(deps): update dependency @types/node to v11.15.50 (33833e3)
    • chore(deps): update dependency eslint to v7.23.0 (a839b8f)
    • chore(deps): update dependency @types/jest to v26.0.22 (9c306ab)
    • fix(core): allow the apibody decorator to add examples and add $ref for schema (320008c)
    • chore(deps): update typescript-eslint monorepo to v4.19.0 (035754e)
    • chore(deps): update nest monorepo to v7.6.15 (a3cbff5)
    • chore(deps): update dependency husky to v5.2.0 (53800ae)
    • chore(deps): update dependency release-it to v14.5.0 (ac4262c)
    • Revert "fix: remove isArray prop from test" (7aacb81)
    • fix: remove isArray prop from test (bf22332)
    • fix: add extra test to validate api query decorator (532640d)
    • fix: add isArray prop for enums on api query decorator when applicable (d3c0b5c)
    Source code(tar.gz)
    Source code(zip)
Owner
nestjs
A progressive Node.js framework for building efficient and scalable server-side applications 🚀
nestjs
Zemi is data-driven and reverse-routing library for Express. It provides out-of-the-box OpenAPI support, allowing you to specify and autogenerate an OpenAPI spec.

zemi zemi is a data-driven routing library for Express, built with Typescript. Features: optional, out-of-the-box support for OpenAPI reverse-routing

Yoaquim Cintrón 5 Jul 23, 2022
The NEST Prize Bot is a tool for the activity of the NEST community.

NEST Prize Bot The NEST Prize Bot is a tool developed by our team for the activity of the NEST community. It can record the receipt of Prize and expor

NEST Protocol 403 Dec 20, 2022
Tile38 module for Nest framework (node.js)

Description Tile38 module for Nest. This package is based on Tile38-ts, so visit its documentation for any questions about the API. Installation $ npm

Lorenzo Gigli 11 Sep 22, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
An npm package for demonstration purposes using TypeScript to build for both the ECMAScript Module format (i.e. ESM or ES Module) and CommonJS Module format. It can be used in Node.js and browser applications.

An npm package for demonstration purposes using TypeScript to build for both the ECMAScript Module format (i.e. ESM or ES Module) and CommonJS Module format. It can be used in Node.js and browser applications.

Snyk Labs 57 Dec 28, 2022
🐶 Puppies Rest Api built with NestJs, TypeOrm, PostgreSQL, Swagger

?? Quick start: Install node Install nest cli: `npm i -g @nestjs/cli` Initialize a nestjs project `nest new project-name` Swagger Docs swagger docs P

Ogunnusi Abayomi Joseph 3 Oct 1, 2022
A base project for Express with Typescript to create an API. Includes automatic input validation and Swagger UI generation.

(Typescript) Express API with input Validation and Swagger UI Thats a mouthful isn't it. Typescript: The language used, a superset of Javascript with

Tjeerd Bakker 6 Oct 26, 2022
Quickly bootstrap your next TypeScript REST API project. Node 16+, auto OpenAPI, Prettier+ESLint, Jest

REST API template with autogenerated OpenAPI Quickly bootstrap your next TypeScript REST API project with the most up to date template. Included a sam

null 6 Oct 1, 2022
Example auto-generated OpenAPI client library and an accompanying example Angular app.

To utilize this demo Head into petstore_frontend\petes_pets Run npm install Go to frontend_client_lib\out Run npm install Head back into petstore_fron

Alan Gross 1 Jan 21, 2022
OpenAPI support for tRPC 🧩

trpc-openapi OpenAPI support for tRPC ?? Easy REST endpoints for your tRPC procedures. Perfect for incremental adoption. OpenAPI version 3.0.3. Usage

James Berry 841 Jan 9, 2023
REST API complete test suite using openapi.json

Openapi Test Suite Objective This package aims to solve the following two problems: Maintenance is a big problem to solve in any test suite. As the AP

PLG Works 21 Nov 3, 2022
Generate a zodios (typescript http client with zod validation) from an OpenAPI spec (json/yaml)

openapi-zod-client Generates a zodios (typescript http client with zod validation) from a (json/yaml) OpenAPI spec (or just use the generated schemas/

Alexandre Stahmer 104 Jan 4, 2023
An OpenAPI specification for the MagicBell API.

MagicBell's OpenAPI Specification This repository contains OpenAPI specifications for the MagicBell REST API. Changelog Files can be found in the /spe

MagicBell 5 Dec 15, 2022
Userland module that implements the module path mapping that Node.js does with "exports" in package.json

exports-map Userland module that implements the module path mapping that Node.js does with "exports" in package.json npm install exports-map Usage co

Mathias Buus 9 May 31, 2022
Node 18's node:test, as a node module

node-core-test This is a user-land port of node:test, the experimental test runner introduced in Node.js 18. This module makes it available in Node.js

Julian Gruber 62 Dec 15, 2022
Nest multiple blocks inside lists of any kind of list (ordered, unordered, no marker, etc), or do away with list markers and use it like a repeater!

Nest multiple blocks inside lists of any kind of list (ordered, unordered, no marker, etc), or do away with list markers and use it like a repeater!

Rani 15 Dec 26, 2022
Nest.js project used it implement login page functionality.

Basic Login Backend (API) Description This project is the backend (API) portion of a basic login application. It calls a local frontend project basic-

Chad D.S 2 Mar 21, 2022