@tsed/oidc-provider 6.91.0 → 6.92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.nycrc CHANGED
@@ -21,6 +21,6 @@
21
21
  "check-coverage": true,
22
22
  "statements": 99.86,
23
23
  "branches": 77.78,
24
- "functions": 96.09,
24
+ "functions": 96.07,
25
25
  "lines": 99.85
26
26
  }
@@ -33,22 +33,11 @@ let OidcModule = class OidcModule {
33
33
  }
34
34
  }
35
35
  $onReady() {
36
- if (this.oidcProvider.hasConfiguration()) {
36
+ if (this.oidcProvider.hasConfiguration() && this.injector.settings.getBestHost) {
37
37
  const { injector } = this;
38
- const { httpsPort, httpPort } = injector.settings;
39
- const displayLog = (host) => {
40
- const url = [`${host.protocol}://${host.address}`, typeof host.port === "number" && host.port].filter(Boolean).join(":");
41
- injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);
42
- };
43
- /* istanbul ignore next */
44
- if (httpsPort) {
45
- const host = injector.settings.getHttpsPort();
46
- displayLog({ protocol: "https", ...host });
47
- }
48
- else if (httpPort) {
49
- const host = injector.settings.getHttpPort();
50
- displayLog({ protocol: "http", ...host });
51
- }
38
+ const host = injector.settings.getBestHost();
39
+ const url = host.toString();
40
+ injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);
52
41
  }
53
42
  }
54
43
  getRewriteMiddleware() {
@@ -1 +1 @@
1
- {"version":3,"file":"OidcModule.js","sourceRoot":"","sources":["../../src/OidcModule.ts"],"names":[],"mappings":"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","sourcesContent":["import {Inject, InjectorService, PlatformApplication} from \"@tsed/common\";\nimport {Constant, Module} from \"@tsed/di\";\nimport {OidcAdapters} from \"./services/OidcAdapters\";\nimport {OidcJwks} from \"./services/OidcJwks\";\nimport {OidcProvider} from \"./services/OidcProvider\";\n\n@Module({\n imports: [OidcProvider, OidcAdapters, OidcJwks]\n})\nexport class OidcModule {\n @Inject()\n app: PlatformApplication;\n\n @Constant(\"PLATFORM_NAME\")\n platformName: string;\n\n @Constant(\"oidc.path\", \"/\")\n basePath: string;\n\n @Inject()\n oidcProvider: OidcProvider;\n\n @Inject()\n injector: InjectorService;\n\n async $onInit() {\n if (this.oidcProvider.hasConfiguration()) {\n await this.oidcProvider.create();\n }\n }\n\n async $onRoutesInit() {\n if (this.basePath !== \"/\") {\n this.app.use(this.getRewriteMiddleware());\n }\n }\n\n async $afterRoutesInit() {\n if (this.oidcProvider.hasConfiguration()) {\n const provider = this.oidcProvider.get();\n\n switch (this.platformName) {\n default:\n case \"express\":\n this.app.use(this.basePath, provider.callback());\n break;\n case \"koa\":\n this.app.use(require(\"koa-mount\")(this.basePath, provider.app));\n break;\n }\n }\n }\n\n $onReady() {\n if (this.oidcProvider.hasConfiguration()) {\n const {injector} = this;\n const {httpsPort, httpPort} = injector.settings;\n\n const displayLog = (host: any) => {\n const url = [`${host.protocol}://${host.address}`, typeof host.port === \"number\" && host.port].filter(Boolean).join(\":\");\n\n injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);\n };\n\n /* istanbul ignore next */\n if (httpsPort) {\n const host = injector.settings.getHttpsPort();\n displayLog({protocol: \"https\", ...host});\n } else if (httpPort) {\n const host = injector.settings.getHttpPort();\n displayLog({protocol: \"http\", ...host});\n }\n }\n }\n\n private getRewriteMiddleware() {\n switch (this.platformName) {\n default:\n case \"express\":\n return require(\"express-urlrewrite\")(\"/.well-known/*\", `${this.basePath}/.well-known/$1`);\n case \"koa\":\n return require(\"koa-rewrite\")(\"/.well-known/(.*)\", `${this.basePath}/.well-known/$1`);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"OidcModule.js","sourceRoot":"","sources":["../../src/OidcModule.ts"],"names":[],"mappings":";;;;AAAA,yCAA0E;AAC1E,iCAA0C;AAC1C,0DAAqD;AACrD,kDAA6C;AAC7C,0DAAqD;AAKrD,IAAa,UAAU,GAAvB,MAAa,UAAU;IAgBrB,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE;YACxC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;SAClC;IACH,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;SAC3C;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;YAEzC,QAAQ,IAAI,CAAC,YAAY,EAAE;gBACzB,QAAQ;gBACR,KAAK,SAAS;oBACZ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACjD,MAAM;gBACR,KAAK,KAAK;oBACR,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;oBAChE,MAAM;aACT;SACF;IACH,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE;YAC9E,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC;YACxB,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAE5B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,GAAG,mCAAmC,CAAC,CAAC;SAC3F;IACH,CAAC;IAEO,oBAAoB;QAC1B,QAAQ,IAAI,CAAC,YAAY,EAAE;YACzB,QAAQ;YACR,KAAK,SAAS;gBACZ,OAAO,OAAO,CAAC,oBAAoB,CAAC,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,QAAQ,iBAAiB,CAAC,CAAC;YAC5F,KAAK,KAAK;gBACR,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC,QAAQ,iBAAiB,CAAC,CAAC;SACzF;IACH,CAAC;CACF,CAAA;AA7DC;IADC,IAAA,eAAM,GAAE;2CACJ,4BAAmB;uCAAC;AAGzB;IADC,IAAA,aAAQ,EAAC,eAAe,CAAC;;gDACL;AAGrB;IADC,IAAA,aAAQ,EAAC,WAAW,EAAE,GAAG,CAAC;;4CACV;AAGjB;IADC,IAAA,eAAM,GAAE;2CACK,2BAAY;gDAAC;AAG3B;IADC,IAAA,eAAM,GAAE;2CACC,wBAAe;4CAAC;AAdf,UAAU;IAHtB,IAAA,WAAM,EAAC;QACN,OAAO,EAAE,CAAC,2BAAY,EAAE,2BAAY,EAAE,mBAAQ,CAAC;KAChD,CAAC;GACW,UAAU,CA+DtB;AA/DY,gCAAU","sourcesContent":["import {Inject, InjectorService, PlatformApplication} from \"@tsed/common\";\nimport {Constant, Module} from \"@tsed/di\";\nimport {OidcAdapters} from \"./services/OidcAdapters\";\nimport {OidcJwks} from \"./services/OidcJwks\";\nimport {OidcProvider} from \"./services/OidcProvider\";\n\n@Module({\n imports: [OidcProvider, OidcAdapters, OidcJwks]\n})\nexport class OidcModule {\n @Inject()\n app: PlatformApplication;\n\n @Constant(\"PLATFORM_NAME\")\n platformName: string;\n\n @Constant(\"oidc.path\", \"/\")\n basePath: string;\n\n @Inject()\n oidcProvider: OidcProvider;\n\n @Inject()\n injector: InjectorService;\n\n async $onInit() {\n if (this.oidcProvider.hasConfiguration()) {\n await this.oidcProvider.create();\n }\n }\n\n async $onRoutesInit() {\n if (this.basePath !== \"/\") {\n this.app.use(this.getRewriteMiddleware());\n }\n }\n\n async $afterRoutesInit() {\n if (this.oidcProvider.hasConfiguration()) {\n const provider = this.oidcProvider.get();\n\n switch (this.platformName) {\n default:\n case \"express\":\n this.app.use(this.basePath, provider.callback());\n break;\n case \"koa\":\n this.app.use(require(\"koa-mount\")(this.basePath, provider.app));\n break;\n }\n }\n }\n\n $onReady() {\n if (this.oidcProvider.hasConfiguration() && this.injector.settings.getBestHost) {\n const {injector} = this;\n const host = injector.settings.getBestHost();\n const url = host.toString();\n\n injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);\n }\n }\n\n private getRewriteMiddleware() {\n switch (this.platformName) {\n default:\n case \"express\":\n return require(\"express-urlrewrite\")(\"/.well-known/*\", `${this.basePath}/.well-known/$1`);\n case \"koa\":\n return require(\"koa-rewrite\")(\"/.well-known/(.*)\", `${this.basePath}/.well-known/$1`);\n }\n }\n}\n"]}
@@ -30,22 +30,11 @@ let OidcModule = class OidcModule {
30
30
  }
31
31
  }
32
32
  $onReady() {
33
- if (this.oidcProvider.hasConfiguration()) {
33
+ if (this.oidcProvider.hasConfiguration() && this.injector.settings.getBestHost) {
34
34
  const { injector } = this;
35
- const { httpsPort, httpPort } = injector.settings;
36
- const displayLog = (host) => {
37
- const url = [`${host.protocol}://${host.address}`, typeof host.port === "number" && host.port].filter(Boolean).join(":");
38
- injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);
39
- };
40
- /* istanbul ignore next */
41
- if (httpsPort) {
42
- const host = injector.settings.getHttpsPort();
43
- displayLog({ protocol: "https", ...host });
44
- }
45
- else if (httpPort) {
46
- const host = injector.settings.getHttpPort();
47
- displayLog({ protocol: "http", ...host });
48
- }
35
+ const host = injector.settings.getBestHost();
36
+ const url = host.toString();
37
+ injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);
49
38
  }
50
39
  }
51
40
  getRewriteMiddleware() {
@@ -1 +1 @@
1
- {"version":3,"file":"OidcModule.js","sourceRoot":"","sources":["../../src/OidcModule.ts"],"names":[],"mappings":"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","sourcesContent":["import {Inject, InjectorService, PlatformApplication} from \"@tsed/common\";\nimport {Constant, Module} from \"@tsed/di\";\nimport {OidcAdapters} from \"./services/OidcAdapters\";\nimport {OidcJwks} from \"./services/OidcJwks\";\nimport {OidcProvider} from \"./services/OidcProvider\";\n\n@Module({\n imports: [OidcProvider, OidcAdapters, OidcJwks]\n})\nexport class OidcModule {\n @Inject()\n app: PlatformApplication;\n\n @Constant(\"PLATFORM_NAME\")\n platformName: string;\n\n @Constant(\"oidc.path\", \"/\")\n basePath: string;\n\n @Inject()\n oidcProvider: OidcProvider;\n\n @Inject()\n injector: InjectorService;\n\n async $onInit() {\n if (this.oidcProvider.hasConfiguration()) {\n await this.oidcProvider.create();\n }\n }\n\n async $onRoutesInit() {\n if (this.basePath !== \"/\") {\n this.app.use(this.getRewriteMiddleware());\n }\n }\n\n async $afterRoutesInit() {\n if (this.oidcProvider.hasConfiguration()) {\n const provider = this.oidcProvider.get();\n\n switch (this.platformName) {\n default:\n case \"express\":\n this.app.use(this.basePath, provider.callback());\n break;\n case \"koa\":\n this.app.use(require(\"koa-mount\")(this.basePath, provider.app));\n break;\n }\n }\n }\n\n $onReady() {\n if (this.oidcProvider.hasConfiguration()) {\n const {injector} = this;\n const {httpsPort, httpPort} = injector.settings;\n\n const displayLog = (host: any) => {\n const url = [`${host.protocol}://${host.address}`, typeof host.port === \"number\" && host.port].filter(Boolean).join(\":\");\n\n injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);\n };\n\n /* istanbul ignore next */\n if (httpsPort) {\n const host = injector.settings.getHttpsPort();\n displayLog({protocol: \"https\", ...host});\n } else if (httpPort) {\n const host = injector.settings.getHttpPort();\n displayLog({protocol: \"http\", ...host});\n }\n }\n }\n\n private getRewriteMiddleware() {\n switch (this.platformName) {\n default:\n case \"express\":\n return require(\"express-urlrewrite\")(\"/.well-known/*\", `${this.basePath}/.well-known/$1`);\n case \"koa\":\n return require(\"koa-rewrite\")(\"/.well-known/(.*)\", `${this.basePath}/.well-known/$1`);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"OidcModule.js","sourceRoot":"","sources":["../../src/OidcModule.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,MAAM,EAAE,eAAe,EAAE,mBAAmB,EAAC,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAC,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAKrD,IAAa,UAAU,GAAvB,MAAa,UAAU;IAgBrB,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE;YACxC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;SAClC;IACH,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;SAC3C;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;YAEzC,QAAQ,IAAI,CAAC,YAAY,EAAE;gBACzB,QAAQ;gBACR,KAAK,SAAS;oBACZ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACjD,MAAM;gBACR,KAAK,KAAK;oBACR,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;oBAChE,MAAM;aACT;SACF;IACH,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE;YAC9E,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC;YACxB,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAE5B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,GAAG,mCAAmC,CAAC,CAAC;SAC3F;IACH,CAAC;IAEO,oBAAoB;QAC1B,QAAQ,IAAI,CAAC,YAAY,EAAE;YACzB,QAAQ;YACR,KAAK,SAAS;gBACZ,OAAO,OAAO,CAAC,oBAAoB,CAAC,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,QAAQ,iBAAiB,CAAC,CAAC;YAC5F,KAAK,KAAK;gBACR,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC,QAAQ,iBAAiB,CAAC,CAAC;SACzF;IACH,CAAC;CACF,CAAA;AA7DC;IADC,MAAM,EAAE;8BACJ,mBAAmB;uCAAC;AAGzB;IADC,QAAQ,CAAC,eAAe,CAAC;;gDACL;AAGrB;IADC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC;;4CACV;AAGjB;IADC,MAAM,EAAE;8BACK,YAAY;gDAAC;AAG3B;IADC,MAAM,EAAE;8BACC,eAAe;4CAAC;AAdf,UAAU;IAHtB,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,CAAC;KAChD,CAAC;GACW,UAAU,CA+DtB;SA/DY,UAAU","sourcesContent":["import {Inject, InjectorService, PlatformApplication} from \"@tsed/common\";\nimport {Constant, Module} from \"@tsed/di\";\nimport {OidcAdapters} from \"./services/OidcAdapters\";\nimport {OidcJwks} from \"./services/OidcJwks\";\nimport {OidcProvider} from \"./services/OidcProvider\";\n\n@Module({\n imports: [OidcProvider, OidcAdapters, OidcJwks]\n})\nexport class OidcModule {\n @Inject()\n app: PlatformApplication;\n\n @Constant(\"PLATFORM_NAME\")\n platformName: string;\n\n @Constant(\"oidc.path\", \"/\")\n basePath: string;\n\n @Inject()\n oidcProvider: OidcProvider;\n\n @Inject()\n injector: InjectorService;\n\n async $onInit() {\n if (this.oidcProvider.hasConfiguration()) {\n await this.oidcProvider.create();\n }\n }\n\n async $onRoutesInit() {\n if (this.basePath !== \"/\") {\n this.app.use(this.getRewriteMiddleware());\n }\n }\n\n async $afterRoutesInit() {\n if (this.oidcProvider.hasConfiguration()) {\n const provider = this.oidcProvider.get();\n\n switch (this.platformName) {\n default:\n case \"express\":\n this.app.use(this.basePath, provider.callback());\n break;\n case \"koa\":\n this.app.use(require(\"koa-mount\")(this.basePath, provider.app));\n break;\n }\n }\n }\n\n $onReady() {\n if (this.oidcProvider.hasConfiguration() && this.injector.settings.getBestHost) {\n const {injector} = this;\n const host = injector.settings.getBestHost();\n const url = host.toString();\n\n injector.logger.info(`WellKnown is available on ${url}/.well-known/openid-configuration`);\n }\n }\n\n private getRewriteMiddleware() {\n switch (this.platformName) {\n default:\n case \"express\":\n return require(\"express-urlrewrite\")(\"/.well-known/*\", `${this.basePath}/.well-known/$1`);\n case \"koa\":\n return require(\"koa-rewrite\")(\"/.well-known/(.*)\", `${this.basePath}/.well-known/$1`);\n }\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsed/oidc-provider",
3
- "version": "6.91.0",
3
+ "version": "6.92.0",
4
4
  "description": "OIDC provider package for Ts.ED framework",
5
5
  "private": false,
6
6
  "source": "./src/index.ts",
@@ -20,7 +20,7 @@
20
20
  "test": "cross-env NODE_ENV=test nyc mocha"
21
21
  },
22
22
  "dependencies": {
23
- "@tsed/adapters": "6.91.0",
23
+ "@tsed/adapters": "6.92.0",
24
24
  "express-urlrewrite": "^1.4.0",
25
25
  "jose2": "npm:jose@^2.0.4",
26
26
  "koa-mount": "^4.0.0",
@@ -30,24 +30,24 @@
30
30
  "uuid": "8.3.2"
31
31
  },
32
32
  "devDependencies": {
33
- "@tsed/common": "6.91.0",
34
- "@tsed/core": "6.91.0",
35
- "@tsed/di": "6.91.0",
36
- "@tsed/exceptions": "6.91.0",
33
+ "@tsed/common": "6.92.0",
34
+ "@tsed/core": "6.92.0",
35
+ "@tsed/di": "6.92.0",
36
+ "@tsed/exceptions": "6.92.0",
37
37
  "@types/lowdb": "1.0.9",
38
38
  "@types/oidc-provider": "^7.1.1",
39
39
  "@types/uuid": "8.3.0",
40
40
  "oidc-provider": "7.10.1"
41
41
  },
42
42
  "peerDependencies": {
43
- "@tsed/common": "^6.91.0",
44
- "@tsed/core": "^6.91.0",
45
- "@tsed/di": "^6.91.0",
46
- "@tsed/exceptions": "^6.91.0",
47
- "@tsed/json-mapper": "^6.91.0",
43
+ "@tsed/common": "^6.92.0",
44
+ "@tsed/core": "^6.92.0",
45
+ "@tsed/di": "^6.92.0",
46
+ "@tsed/exceptions": "^6.92.0",
47
+ "@tsed/json-mapper": "^6.92.0",
48
48
  "@tsed/logger": ">=6.0.0",
49
- "@tsed/openspec": "^6.91.0",
50
- "@tsed/schema": "^6.91.0",
49
+ "@tsed/openspec": "^6.92.0",
50
+ "@tsed/schema": "^6.92.0",
51
51
  "oidc-provider": ">=7.3.0"
52
52
  },
53
53
  "repository": "https://github.com/tsedio/tsed",