@things-factory/oauth2-client 4.3.378 → 4.3.380

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/oauth2-client",
3
- "version": "4.3.378",
3
+ "version": "4.3.380",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -28,11 +28,11 @@
28
28
  "@operato/layout": "^0.4.6",
29
29
  "@operato/shell": "^0.4.6",
30
30
  "@operato/utils": "^0.4.6",
31
- "@things-factory/auth-base": "^4.3.378",
32
- "@things-factory/layout-base": "^4.3.378",
33
- "@things-factory/shell": "^4.3.378",
31
+ "@things-factory/auth-base": "^4.3.380",
32
+ "@things-factory/layout-base": "^4.3.380",
33
+ "@things-factory/shell": "^4.3.380",
34
34
  "client-oauth2": "^4.3.3",
35
35
  "clipboard": "^2.0.6"
36
36
  },
37
- "gitHead": "9de7af5e7b61574cdb4773876a41e1b9b77c1689"
37
+ "gitHead": "675ea67e85a7ee10bee7639d92e0bf3eda8c48d1"
38
38
  }
@@ -1,20 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./entities"), exports);
18
- __exportStar(require("./graphql"), exports);
19
- require("./routes");
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../server/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,4CAAyB;AAEzB,oBAAiB"}
@@ -1,104 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const client_oauth2_1 = __importDefault(require("client-oauth2"));
7
- const shell_1 = require("@things-factory/shell");
8
- const typeorm_1 = require("typeorm");
9
- const entities_1 = require("./entities");
10
- const crypto_1 = __importDefault(require("crypto"));
11
- const debug = require('debug')('things-factory:oauth2-client:routes');
12
- process.on('bootstrap-module-domain-private-route', (app, domainPrivateRouter) => {
13
- domainPrivateRouter.get('/oauth2-client/:id/auth-uri', async (context, next) => {
14
- const { params, origin } = context;
15
- const { id } = params;
16
- const repository = (0, typeorm_1.getRepository)(entities_1.Oauth2Client);
17
- const oauth2Client = await repository.findOne(id);
18
- const { grantType, clientId, clientSecret, accessTokenUrl: accessTokenUri, authUrl: authorizationUri, scopes } = oauth2Client;
19
- if (grantType !== 'code') {
20
- throw new Error(`unsupported grant type: ${grantType}`);
21
- }
22
- const state = crypto_1.default.randomBytes(16).toString('hex');
23
- await repository.save(Object.assign(Object.assign({}, oauth2Client), { state }));
24
- var auth = new client_oauth2_1.default({
25
- clientId,
26
- clientSecret,
27
- accessTokenUri,
28
- authorizationUri,
29
- redirectUri: `${origin}/oauth2-client/callback`,
30
- scopes: (scopes === null || scopes === void 0 ? void 0 : scopes.split(' ')) || [],
31
- state
32
- });
33
- context.status = 200;
34
- context.body = await auth.code.getUri();
35
- });
36
- domainPrivateRouter.get('/oauth2-client/:id/refresh', async (context, next) => {
37
- const { params } = context;
38
- const { id } = params;
39
- debug('refresh', 'started');
40
- const repository = (0, typeorm_1.getRepository)(entities_1.Oauth2Client);
41
- const oauth2Client = await repository.findOne(id);
42
- const { grantType, clientId, clientSecret, accessTokenUrl: accessTokenUri, authUrl: authorizationUri, scopes, tokenType, accessToken, refreshToken } = oauth2Client;
43
- if (!refreshToken) {
44
- context.status = 404;
45
- context.body = 'refreshToken not found';
46
- return;
47
- }
48
- var auth = new client_oauth2_1.default({
49
- clientId,
50
- clientSecret,
51
- accessTokenUri,
52
- authorizationUri,
53
- scopes: (scopes === null || scopes === void 0 ? void 0 : scopes.split(' ')) || []
54
- });
55
- const { accessToken: newAccessToken, refreshToken: newRefreshToken } = await auth
56
- .createToken(accessToken, refreshToken, tokenType, {})
57
- .refresh();
58
- debug('refresh', 'done');
59
- context.status = 200;
60
- context.body = await repository.save(Object.assign(Object.assign({}, oauth2Client), { accessToken: newAccessToken, refreshToken: newRefreshToken, state: '' }));
61
- });
62
- });
63
- process.on('bootstrap-module-domain-public-route', (app, domainPublicRouter) => {
64
- domainPublicRouter.get('/oauth2-client/callback', async (context, next) => {
65
- const { state } = context.query;
66
- const { originalUrl } = context;
67
- const repository = (0, typeorm_1.getRepository)(entities_1.Oauth2Client);
68
- const oauth2Client = await repository.findOne({
69
- state
70
- }, {
71
- relations: ['domain']
72
- });
73
- const { domain, id, grantType, clientId, clientSecret, accessTokenUrl: accessTokenUri, authUrl: authorizationUri, scopes } = oauth2Client;
74
- var auth = new client_oauth2_1.default({
75
- clientId,
76
- clientSecret,
77
- accessTokenUri,
78
- authorizationUri,
79
- scopes: (scopes === null || scopes === void 0 ? void 0 : scopes.split(' ')) || []
80
- });
81
- var url = originalUrl;
82
- switch (grantType) {
83
- case 'credentials':
84
- break;
85
- case 'jwt':
86
- break;
87
- case 'code':
88
- break;
89
- case 'owner':
90
- default:
91
- throw new Error(`unsupported grant type: ${grantType}`);
92
- }
93
- const token = await auth.code.getToken(originalUrl);
94
- debug('token', token);
95
- const { tokenType, accessToken, refreshToken, data } = token;
96
- const expires = (data === null || data === void 0 ? void 0 : data.expires_in) ? token.expiresIn(data === null || data === void 0 ? void 0 : data.expires_in) : null;
97
- await repository.save(Object.assign(Object.assign({}, oauth2Client), { tokenType,
98
- accessToken,
99
- refreshToken,
100
- expires, scopes: data === null || data === void 0 ? void 0 : data.scope.replace(',', ' '), state: '' }));
101
- context.redirect((0, shell_1.getRedirectSubdomainPath)(context, domain === null || domain === void 0 ? void 0 : domain.subdomain, `/oauth2-client/${id}`));
102
- });
103
- });
104
- //# sourceMappingURL=routes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../server/routes.ts"],"names":[],"mappings":"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"}