Skip to content

Releases: Lokicoule/nestjs-cognito

@nestjs-cognito/core@1.2.2

01 Feb 11:22
Compare
Choose a tag to compare

What's Changed

  • chore(deps): update dependency eslint-plugin-import to v2.29.1 by @renovate in #784
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.474.0 by @renovate in #785
  • chore(deps): update dependency lerna to v8.0.1 by @renovate in #786
  • chore(deps): update dependency eslint to v8.56.0 by @renovate in #787
  • chore(deps): update dependency @types/node to v20.10.5 by @renovate in #788
  • chore(deps): update typescript-eslint monorepo to v6.15.0 by @renovate in #791
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.0 by @renovate in #793
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.1 by @renovate in #794
  • fix(deps): update nest monorepo to v10.3.0 by @renovate in #789
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.2 by @renovate in #795
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.478.0 by @renovate in #792
  • chore(deps): update typescript-eslint monorepo to v6.16.0 by @renovate in #797
  • chore(deps): update dependency @types/node to v20.10.6 by @renovate in #799
  • chore(deps): update typescript-eslint monorepo to v6.17.0 by @renovate in #800
  • chore(deps): update commitlint monorepo to v18.4.4 by @renovate in #802
  • chore(deps): update dependency lerna to v8.0.2 by @renovate in #803
  • chore(deps): update typescript-eslint monorepo to v6.18.0 by @renovate in #804
  • chore(deps): update dependency @types/node to v20.10.7 by @renovate in #805
  • chore(deps): update dependency @nestjs/cli to v10.3.0 by @renovate in #806
  • chore(deps): update dependency @nestjs/schematics to v10.1.0 by @renovate in #807
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.485.0 by @renovate in #798
  • fix(deps): update dependency @apollo/server to v4.10.0 by @renovate in #801
  • chore(deps): update typescript-eslint monorepo to v6.18.1 by @renovate in #809
  • chore(deps): update dependency @types/node to v20.10.8 by @renovate in #810
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.3 by @renovate in #811
  • chore(deps): update dependency @types/node to v20.11.0 by @renovate in #813
  • chore(deps): update dependency class-validator to v0.14.1 by @renovate in #814
  • chore(deps): update dependency prettier to v3.2.1 by @renovate in #815
  • chore(deps): update dependency pactum to v3.6.0 by @renovate in #816
  • chore(deps): update dependency prettier to v3.2.2 by @renovate in #817
  • chore(deps): update dependency supertest to v6.3.4 by @renovate in #818
  • chore(deps): update dependency @types/node to v20.11.2 by @renovate in #819
  • chore(deps): update typescript-eslint monorepo to v6.19.0 by @renovate in #820
  • chore(deps): update dependency @types/node to v20.11.3 by @renovate in #821
  • chore(deps): update dependency @types/node to v20.11.4 by @renovate in #822
  • chore(deps): update dependency prettier to v3.2.3 by @renovate in #823
  • chore(deps): update dependency @types/node to v20.11.5 by @renovate in #824
  • chore(deps): update dependency prettier to v3.2.4 by @renovate in #825
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.490.0 by @renovate in #812
  • chore(deps): update dependency ts-jest to v29.1.2 by @renovate in #827
  • chore(deps): update commitlint monorepo to v18.5.0 by @renovate in #828
  • chore(deps): update typescript-eslint monorepo to v6.19.1 by @renovate in #829
  • chore(deps): update dependency @types/node to v20.11.6 by @renovate in #831
  • chore(deps): update dependency husky to v9 by @renovate in #832
  • chore(deps): update commitlint monorepo to v18.6.0 by @renovate in #834
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.499.0 by @renovate in #826
  • chore(deps): update dependency husky to v9.0.5 by @renovate in #833
  • chore(deps): update dependency husky to v9.0.6 by @renovate in #835
  • chore(deps): update dependency @types/node to v20.11.7 by @renovate in #836
  • chore(deps): update dependency @types/node to v20.11.8 by @renovate in #838
  • fix(deps): update nest monorepo to v10.3.1 by @renovate in #830
  • chore(deps): update dependency @types/node to v20.11.10 by @renovate in #839
  • chore(deps): update dependency husky to v9.0.7 by @renovate in #840
  • chore(deps): update typescript-eslint monorepo to v6.20.0 by @renovate in #841
  • chore(deps): update dependency @types/node to v20.11.13 by @renovate in #842
  • chore(deps): update dependency lint-staged to v15.2.1 by @renovate in #843
  • chore(deps): update dependency @types/node to v20.11.14 by @renovate in #844
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.504.0 by @renovate in #837

Full Changelog: https://github.com/Lokicoule/nestjs-cognito/compare/@nestjs-cognito/core@1.2.1...@nestjs-cognito/core@1.2.2

@nestjs-cognito/auth@1.1.2

01 Feb 11:23
Compare
Choose a tag to compare

What's Changed

  • chore(deps): update dependency eslint-plugin-import to v2.29.1 by @renovate in #784
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.474.0 by @renovate in #785
  • chore(deps): update dependency lerna to v8.0.1 by @renovate in #786
  • chore(deps): update dependency eslint to v8.56.0 by @renovate in #787
  • chore(deps): update dependency @types/node to v20.10.5 by @renovate in #788
  • chore(deps): update typescript-eslint monorepo to v6.15.0 by @renovate in #791
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.0 by @renovate in #793
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.1 by @renovate in #794
  • fix(deps): update nest monorepo to v10.3.0 by @renovate in #789
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.2 by @renovate in #795
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.478.0 by @renovate in #792
  • chore(deps): update typescript-eslint monorepo to v6.16.0 by @renovate in #797
  • chore(deps): update dependency @types/node to v20.10.6 by @renovate in #799
  • chore(deps): update typescript-eslint monorepo to v6.17.0 by @renovate in #800
  • chore(deps): update commitlint monorepo to v18.4.4 by @renovate in #802
  • chore(deps): update dependency lerna to v8.0.2 by @renovate in #803
  • chore(deps): update typescript-eslint monorepo to v6.18.0 by @renovate in #804
  • chore(deps): update dependency @types/node to v20.10.7 by @renovate in #805
  • chore(deps): update dependency @nestjs/cli to v10.3.0 by @renovate in #806
  • chore(deps): update dependency @nestjs/schematics to v10.1.0 by @renovate in #807
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.485.0 by @renovate in #798
  • fix(deps): update dependency @apollo/server to v4.10.0 by @renovate in #801
  • chore(deps): update typescript-eslint monorepo to v6.18.1 by @renovate in #809
  • chore(deps): update dependency @types/node to v20.10.8 by @renovate in #810
  • chore(deps): update dependency eslint-plugin-prettier to v5.1.3 by @renovate in #811
  • chore(deps): update dependency @types/node to v20.11.0 by @renovate in #813
  • chore(deps): update dependency class-validator to v0.14.1 by @renovate in #814
  • chore(deps): update dependency prettier to v3.2.1 by @renovate in #815
  • chore(deps): update dependency pactum to v3.6.0 by @renovate in #816
  • chore(deps): update dependency prettier to v3.2.2 by @renovate in #817
  • chore(deps): update dependency supertest to v6.3.4 by @renovate in #818
  • chore(deps): update dependency @types/node to v20.11.2 by @renovate in #819
  • chore(deps): update typescript-eslint monorepo to v6.19.0 by @renovate in #820
  • chore(deps): update dependency @types/node to v20.11.3 by @renovate in #821
  • chore(deps): update dependency @types/node to v20.11.4 by @renovate in #822
  • chore(deps): update dependency prettier to v3.2.3 by @renovate in #823
  • chore(deps): update dependency @types/node to v20.11.5 by @renovate in #824
  • chore(deps): update dependency prettier to v3.2.4 by @renovate in #825
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.490.0 by @renovate in #812
  • chore(deps): update dependency ts-jest to v29.1.2 by @renovate in #827
  • chore(deps): update commitlint monorepo to v18.5.0 by @renovate in #828
  • chore(deps): update typescript-eslint monorepo to v6.19.1 by @renovate in #829
  • chore(deps): update dependency @types/node to v20.11.6 by @renovate in #831
  • chore(deps): update dependency husky to v9 by @renovate in #832
  • chore(deps): update commitlint monorepo to v18.6.0 by @renovate in #834
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.499.0 by @renovate in #826
  • chore(deps): update dependency husky to v9.0.5 by @renovate in #833
  • chore(deps): update dependency husky to v9.0.6 by @renovate in #835
  • chore(deps): update dependency @types/node to v20.11.7 by @renovate in #836
  • chore(deps): update dependency @types/node to v20.11.8 by @renovate in #838
  • fix(deps): update nest monorepo to v10.3.1 by @renovate in #830
  • chore(deps): update dependency @types/node to v20.11.10 by @renovate in #839
  • chore(deps): update dependency husky to v9.0.7 by @renovate in #840
  • chore(deps): update typescript-eslint monorepo to v6.20.0 by @renovate in #841
  • chore(deps): update dependency @types/node to v20.11.13 by @renovate in #842
  • chore(deps): update dependency lint-staged to v15.2.1 by @renovate in #843
  • chore(deps): update dependency @types/node to v20.11.14 by @renovate in #844
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.504.0 by @renovate in #837

Full Changelog: https://github.com/Lokicoule/nestjs-cognito/compare/@nestjs-cognito/auth@1.1.1...@nestjs-cognito/auth@1.1.2

@nestjs-cognito/testing@1.1.1

14 Dec 10:40
Compare
Choose a tag to compare

What's Changed

  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.468.0 by @renovate in #768
  • chore(deps): update dependency @types/node to v20.10.4 by @renovate in #769
  • fix(deps): update dependency reflect-metadata to v0.1.14 by @renovate in #770
  • chore(deps): update dependency ts-node to v10.9.2 by @renovate in #772
  • refactor: authentication and authorization method decorators by @Lokicoule in #774
  • chore(deps): update actions/checkout action to v4 by @renovate in #778
  • chore(deps): update actions/setup-node action to v4 by @renovate in #779
  • chore(deps): update dependency prettier to v3.1.1 by @renovate in #780
  • chore(deps): update typescript-eslint monorepo to v6.14.0 by @renovate in #781
  • feat(auth): implements whitelist by @Lokicoule in #783
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.473.0 by @renovate in #777

Full Changelog: https://github.com/Lokicoule/nestjs-cognito/compare/@nestjs-cognito/testing@1.1.0...@nestjs-cognito/testing@1.1.1

@nestjs-cognito/graphql@2.1.1

14 Dec 10:40
Compare
Choose a tag to compare

What's Changed

  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.468.0 by @renovate in #768
  • chore(deps): update dependency @types/node to v20.10.4 by @renovate in #769
  • fix(deps): update dependency reflect-metadata to v0.1.14 by @renovate in #770
  • chore(deps): update dependency ts-node to v10.9.2 by @renovate in #772
  • refactor: authentication and authorization method decorators by @Lokicoule in #774
  • chore(deps): update actions/checkout action to v4 by @renovate in #778
  • chore(deps): update actions/setup-node action to v4 by @renovate in #779
  • chore(deps): update dependency prettier to v3.1.1 by @renovate in #780
  • chore(deps): update typescript-eslint monorepo to v6.14.0 by @renovate in #781
  • feat(auth): implements whitelist by @Lokicoule in #783
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.473.0 by @renovate in #777

Full Changelog: https://github.com/Lokicoule/nestjs-cognito/compare/@nestjs-cognito/graphql@2.1.0...@nestjs-cognito/graphql@2.1.1

@nestjs-cognito/core@1.2.1

14 Dec 10:39
Compare
Choose a tag to compare

What's Changed

  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.468.0 by @renovate in #768
  • chore(deps): update dependency @types/node to v20.10.4 by @renovate in #769
  • fix(deps): update dependency reflect-metadata to v0.1.14 by @renovate in #770
  • chore(deps): update dependency ts-node to v10.9.2 by @renovate in #772
  • refactor: authentication and authorization method decorators by @Lokicoule in #774
  • chore(deps): update actions/checkout action to v4 by @renovate in #778
  • chore(deps): update actions/setup-node action to v4 by @renovate in #779
  • chore(deps): update dependency prettier to v3.1.1 by @renovate in #780
  • chore(deps): update typescript-eslint monorepo to v6.14.0 by @renovate in #781
  • feat(auth): implements whitelist by @Lokicoule in #783
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.473.0 by @renovate in #777

Full Changelog: https://github.com/Lokicoule/nestjs-cognito/compare/@nestjs-cognito/core@1.2.0...@nestjs-cognito/core@1.2.1

@nestjs-cognito/auth@1.1.1

14 Dec 10:39
Compare
Choose a tag to compare

What's Changed

  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.468.0 by @renovate in #768
  • chore(deps): update dependency @types/node to v20.10.4 by @renovate in #769
  • fix(deps): update dependency reflect-metadata to v0.1.14 by @renovate in #770
  • chore(deps): update dependency ts-node to v10.9.2 by @renovate in #772
  • refactor: authentication and authorization method decorators by @Lokicoule in #774
  • chore(deps): update actions/checkout action to v4 by @renovate in #778
  • chore(deps): update actions/setup-node action to v4 by @renovate in #779
  • chore(deps): update dependency prettier to v3.1.1 by @renovate in #780
  • chore(deps): update typescript-eslint monorepo to v6.14.0 by @renovate in #781
  • feat(auth): implements whitelist by @Lokicoule in #783
  • chore(deps): update dependency @aws-sdk/client-cognito-identity-provider to v3.473.0 by @renovate in #777

Full Changelog: https://github.com/Lokicoule/nestjs-cognito/compare/@nestjs-cognito/auth@1.1.0...@nestjs-cognito/auth@1.1.1

Version 1.0.0

05 Feb 09:38
Compare
Choose a tag to compare

Greetings!

We are excited to announce a major update to the @nestjs-cognito/auth package, now using aws-jwt-verify instead of @aws-sdk/client-cognito-identity-provider. This change promises to improve performance and functionality.

Please note that the code for importing and registering the CognitoAuthModule has changed and CurrentUser has been replaced with CognitoUser in @nestjs-cognito/auth and with GqlCognitoUser in @nestjs-cognito/graphql. The Authentication and Authorization decorators have also been replaced with GqlAuthentication and GqlAuthorization. These changes have been made for improved functionality and to provide better user experience.

To upgrade, you'll need to update your configuration code. The old code is as follows:

import { CognitoAuthModule } from "@nestjs-cognito/auth";
import { Module } from "@nestjs/common";

@Module({
  imports: [
    CognitoAuthModule.register({
      region: "region",
    }),
  ],
})
export class AppModule {}

The new code for the updated configuration:

import { CognitoAuthModule } from "@nestjs-cognito/auth";
import { Module } from "@nestjs/common";

@Module({
  imports: [
    CognitoAuthModule.register({
      jwtVerifier: {
        userPoolId: "user_pool_id",
        clientId: "client_id",
        tokenUse: "id",
      },
    }),
  ],
})
export class AppModule {}

In addition to this update, a new feature has been added: the @CognitoUser decorator. This decorator allows you to retrieve the Cognito user from an incoming request and inject either the entire CognitoJwtPayload object or specific properties from it (such as username or email) into your controllers. Note that the cognito: namespace is automatically managed, so you don't need to include it when accessing properties such as cognito:username or cognito:groups.

This decorator must be used in conjunction with an authentication guard, such as Authentication or Authorization. You can also specify the property name you want to inject the user into, or extract multiple properties by passing an array of strings.

For example:
@Controller()
@Authentication()
export class YourController {
  @Get()
  findAll(@CognitoUser() cognitoJwtPayload: CognitoJwtPayload): string {
    return "This action returns all the data";
  }
}

Optional property name

You can specify the name of the property to inject the user into by passing a string as an argument.

import { Authentication, CognitoUser } from "@nestjs-cognito/auth";

@Controller()
@Authentication()
export class YourController {
  @Get()
  getData(@CognitoUser("email") email: string): any {
    // Use the `email` string
  }
}

Multiple properties

You can extract multiple properties from the cognito user by passing an array of strings.

import { Authentication, CognitoUser } from "@nestjs-cognito/auth";

@Controller()
@Authentication()
export class YourController {
  @Get()
  getData(
    @CognitoUser(["groups", "email", "username"])
    {
      groups,
      email,
      username,
    }: {
      groups: string[];
      email: string;
      username: string;
    }
  ): any {
    // Use the `groups` and/or `username` and `email` strings
  }
}

Upgrade now to take advantage of this new feature.