@minimaltech/node-infra 0.4.0 → 0.4.1
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/dist/components/authenticate/common/keys.d.ts +1 -0
- package/dist/components/authenticate/common/keys.js +1 -0
- package/dist/components/authenticate/common/keys.js.map +1 -1
- package/dist/components/authenticate/common/types.d.ts +15 -5
- package/dist/components/authenticate/common/types.js.map +1 -1
- package/dist/components/authenticate/controllers/auth.controller.d.ts +3 -1
- package/dist/components/authenticate/controllers/auth.controller.js +9 -7
- package/dist/components/authenticate/controllers/auth.controller.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/base.js +7 -5
- package/dist/components/authenticate/oauth2-handlers/base.js.map +1 -1
- package/dist/components/authenticate/services/jwt-token.service.d.ts +10 -6
- package/dist/components/authenticate/services/jwt-token.service.js +39 -16
- package/dist/components/authenticate/services/jwt-token.service.js.map +1 -1
- package/dist/helpers/network/base-network-request.d.ts +3 -0
- package/dist/helpers/network/base-network-request.js +14 -8
- package/dist/helpers/network/base-network-request.js.map +1 -1
- package/package.json +1 -1
@@ -3,6 +3,7 @@ export declare class AuthenticateKeys {
|
|
3
3
|
static readonly TOKEN_OPTIONS = "@app/authenticate/token_options";
|
4
4
|
static readonly REST_OPTIONS = "@app/authenticate/rest_options";
|
5
5
|
static readonly ALWAYS_ALLOW_PATHS = "@app/authenticate/always_allow_paths";
|
6
|
+
static readonly GET_TOKEN_EXPIRES_FN = "@app/authenticate/get_token_expires_fn";
|
6
7
|
static readonly OAUTH2_HANDLER = "@app/authenticate/oauth2_handler";
|
7
8
|
static readonly OAUTH2_OPTIONS = "@app/authenticate/oauth2_options";
|
8
9
|
}
|
@@ -8,6 +8,7 @@ AuthenticateKeys.APPLICATION_SECRET = '@app/authenticate/application_secret';
|
|
8
8
|
AuthenticateKeys.TOKEN_OPTIONS = '@app/authenticate/token_options';
|
9
9
|
AuthenticateKeys.REST_OPTIONS = '@app/authenticate/rest_options';
|
10
10
|
AuthenticateKeys.ALWAYS_ALLOW_PATHS = '@app/authenticate/always_allow_paths';
|
11
|
+
AuthenticateKeys.GET_TOKEN_EXPIRES_FN = '@app/authenticate/get_token_expires_fn';
|
11
12
|
AuthenticateKeys.OAUTH2_HANDLER = '@app/authenticate/oauth2_handler';
|
12
13
|
AuthenticateKeys.OAUTH2_OPTIONS = '@app/authenticate/oauth2_options';
|
13
14
|
//# sourceMappingURL=keys.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../src/components/authenticate/common/keys.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;;AAA7B,
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../src/components/authenticate/common/keys.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;;AAA7B,4CAUC;AATiB,mCAAkB,GAAG,sCAAsC,CAAC;AAC5D,8BAAa,GAAG,iCAAiC,CAAC;AAClD,6BAAY,GAAG,gCAAgC,CAAC;AAChD,mCAAkB,GAAG,sCAAsC,CAAC;AAE5D,qCAAoB,GAAG,wCAAwC,CAAC;AAEhE,+BAAc,GAAG,kCAAkC,CAAC;AACpD,+BAAc,GAAG,kCAAkC,CAAC"}
|
@@ -1,4 +1,5 @@
|
|
1
|
-
import { AnyObject, ClassType, IdType } from '../../../common';
|
1
|
+
import { AnyObject, ClassType, IdType, ValueOrPromise } from '../../../common';
|
2
|
+
import { RequestContext } from '@loopback/rest';
|
2
3
|
import { UserProfile } from '@loopback/security';
|
3
4
|
export interface IJWTTokenPayload extends UserProfile {
|
4
5
|
userId: IdType;
|
@@ -11,6 +12,7 @@ export interface IJWTTokenPayload extends UserProfile {
|
|
11
12
|
}
|
12
13
|
export interface ITokenPayload extends IJWTTokenPayload {
|
13
14
|
}
|
15
|
+
export type TGetTokenExpiresFn = () => ValueOrPromise<number>;
|
14
16
|
export interface IAuthenticateTokenOptions {
|
15
17
|
tokenSecret: string;
|
16
18
|
tokenExpiresIn: number;
|
@@ -73,8 +75,16 @@ export declare class OAuth2Request {
|
|
73
75
|
redirectUrl: string;
|
74
76
|
}
|
75
77
|
export interface IAuthService<SIRQ extends SignInRequest = SignInRequest, SIRS = AnyObject, SURQ extends SignUpRequest = SignUpRequest, SURS = AnyObject, CPRQ extends ChangePasswordRequest = ChangePasswordRequest, CPRS = AnyObject, UIRQ = AnyObject, UIRS = AnyObject> {
|
76
|
-
signIn(opts: SIRQ
|
77
|
-
|
78
|
-
|
79
|
-
|
78
|
+
signIn(opts: SIRQ & {
|
79
|
+
requestContext?: RequestContext;
|
80
|
+
}): Promise<SIRS>;
|
81
|
+
signUp(opts: SURQ & {
|
82
|
+
requestContext?: RequestContext;
|
83
|
+
}): Promise<SURS>;
|
84
|
+
changePassword(opts: CPRQ & {
|
85
|
+
requestContext?: RequestContext;
|
86
|
+
}): Promise<CPRS>;
|
87
|
+
getUserInformation?(opts: UIRQ & {
|
88
|
+
requestContext?: RequestContext;
|
89
|
+
}): Promise<UIRS>;
|
80
90
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/authenticate/common/types.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAAuD;
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/authenticate/common/types.ts"],"names":[],"mappings":"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"}
|
@@ -1,10 +1,12 @@
|
|
1
1
|
import { IdType } from '../../../common';
|
2
2
|
import { Getter } from '@loopback/core';
|
3
|
+
import { RequestContext } from '@loopback/rest';
|
3
4
|
import { ChangePasswordRequest, IAuthenticateRestOptions, IAuthService, SignInRequest, SignUpRequest } from '../common';
|
4
5
|
export declare const defineAuthController: <SI extends SignInRequest = SignInRequest, SU extends SignUpRequest = SignUpRequest, CP extends ChangePasswordRequest = ChangePasswordRequest>(opts: IAuthenticateRestOptions) => {
|
5
|
-
new (authService: IAuthService, getCurrentUser: Getter<{
|
6
|
+
new (requestContext: RequestContext, authService: IAuthService, getCurrentUser: Getter<{
|
6
7
|
userId: IdType;
|
7
8
|
}>): {
|
9
|
+
requestContext: RequestContext;
|
8
10
|
service: IAuthService;
|
9
11
|
getCurrentUser: Getter<{
|
10
12
|
userId: IdType;
|
@@ -25,10 +25,11 @@ const defineAuthController = (opts) => {
|
|
25
25
|
var BaseAuthController_1;
|
26
26
|
const { restPath = '/auth', requireAuthenticatedSignUp = false, serviceKey = 'services.UserService', } = opts;
|
27
27
|
let BaseAuthController = BaseAuthController_1 = class BaseAuthController extends controllers_1.BaseController {
|
28
|
-
constructor(authService, getCurrentUser) {
|
28
|
+
constructor(requestContext, authService, getCurrentUser) {
|
29
29
|
super({ scope: BaseAuthController_1.name });
|
30
30
|
this.service = authService;
|
31
31
|
this.getCurrentUser = getCurrentUser;
|
32
|
+
this.requestContext = requestContext;
|
32
33
|
}
|
33
34
|
// ------------------------------------------------------------------------------
|
34
35
|
whoami() {
|
@@ -36,11 +37,11 @@ const defineAuthController = (opts) => {
|
|
36
37
|
}
|
37
38
|
// ------------------------------------------------------------------------------
|
38
39
|
signIn(payload) {
|
39
|
-
return this.service.signIn(payload);
|
40
|
+
return this.service.signIn(Object.assign(Object.assign({}, payload), { requestContext: this.requestContext }));
|
40
41
|
}
|
41
42
|
// ------------------------------------------------------------------------------
|
42
43
|
signUp(payload) {
|
43
|
-
return this.service.signUp(payload);
|
44
|
+
return this.service.signUp(Object.assign(Object.assign({}, payload), { requestContext: this.requestContext }));
|
44
45
|
}
|
45
46
|
//-------------------------------------------------------------------------------
|
46
47
|
changePassword(payload) {
|
@@ -55,7 +56,7 @@ const defineAuthController = (opts) => {
|
|
55
56
|
return;
|
56
57
|
}
|
57
58
|
this.service
|
58
|
-
.changePassword(Object.assign(Object.assign({}, payload), { userId: currentUser.userId }))
|
59
|
+
.changePassword(Object.assign(Object.assign({}, payload), { userId: currentUser.userId, requestContext: this.requestContext }))
|
59
60
|
.then(resolve)
|
60
61
|
.catch(reject);
|
61
62
|
})
|
@@ -115,10 +116,11 @@ const defineAuthController = (opts) => {
|
|
115
116
|
], BaseAuthController.prototype, "changePassword", null);
|
116
117
|
BaseAuthController = BaseAuthController_1 = __decorate([
|
117
118
|
(0, rest_1.api)({ basePath: restPath }),
|
118
|
-
__metadata("design:paramtypes", [Object, Function])
|
119
|
+
__metadata("design:paramtypes", [rest_1.RequestContext, Object, Function])
|
119
120
|
], BaseAuthController);
|
120
|
-
(0, core_1.inject)(
|
121
|
-
core_1.inject
|
121
|
+
(0, core_1.inject)(rest_1.RestBindings.Http.CONTEXT)(BaseAuthController, undefined, 0);
|
122
|
+
(0, core_1.inject)(serviceKey)(BaseAuthController, undefined, 1);
|
123
|
+
core_1.inject.getter(security_1.SecurityBindings.USER, { optional: true })(BaseAuthController, undefined, 2);
|
122
124
|
return BaseAuthController;
|
123
125
|
};
|
124
126
|
exports.defineAuthController = defineAuthController;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../../../src/components/authenticate/controllers/auth.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAAoD;AAEpD,2CAAwD;AACxD,6DAAwD;AACxD,yCAAgD;AAChD,
|
1
|
+
{"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../../../src/components/authenticate/controllers/auth.controller.ts"],"names":[],"mappings":"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"}
|
@@ -76,11 +76,13 @@ class AbstractOAuth2AuthenticationHandler {
|
|
76
76
|
const authService = this.injectionGetter(this.authServiceKey);
|
77
77
|
const userInformation = yield ((_a = authService === null || authService === void 0 ? void 0 : authService.getUserInformation) === null || _a === void 0 ? void 0 : _a.call(authService, { userId }));
|
78
78
|
const tokenValue = service.generate({
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
79
|
+
payload: {
|
80
|
+
[security_1.securityId]: userId.toString(),
|
81
|
+
userId: (_b = userInformation === null || userInformation === void 0 ? void 0 : userInformation.userId) !== null && _b !== void 0 ? _b : userId.toString(),
|
82
|
+
roles: (_c = userInformation === null || userInformation === void 0 ? void 0 : userInformation.roles) !== null && _c !== void 0 ? _c : [],
|
83
|
+
clientId: client.id,
|
84
|
+
scopes,
|
85
|
+
},
|
84
86
|
});
|
85
87
|
return Promise.resolve(tokenValue);
|
86
88
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/components/authenticate/oauth2-handlers/base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,qCAA2F;AAC3F,uCAA6D;AAC7D,2CAA4C;AAC5C,iDAAgD;AAchD,qDAA6B;AAC7B,sCAAmF;AAInF,MAAsB,mCAAmC;IAKvD,YAAY,IAAmF;;QAC7F,IAAI,CAAC,MAAM,GAAG,uBAAa,CAAC,SAAS,CAAC;YACpC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,mCAAI,mCAAmC,CAAC,IAAI;SACxD,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IAC5C,CAAC;IAED,SAAS,CAAC,QAAgB,EAAE,YAAoB;QAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,+EAA+E,EAC/E,QAAQ,EACR,YAAY,CACb,CAAC;YAEF,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAC3C,qCAAqC,CACtC,CAAC;YACF,gBAAgB;iBACb,OAAO,CAAC;gBACP,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,EAAE;gBACzD,MAAM,EAAE;oBACN,IAAI;oBACJ,YAAY;oBACZ,UAAU;oBACV,MAAM;oBACN,aAAa;oBACb,QAAQ;oBACR,QAAQ;oBACR,WAAW;iBACZ;aACF,CAAC;iBACD,IAAI,CAAC,CAAC,YAA0B,EAAE,EAAE;;gBACnC,OAAO,CAAC;oBACN,EAAE,EAAE,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE;oBAC9B,UAAU,EAAE,YAAY,CAAC,UAAU;oBACnC,QAAQ,EAAE,YAAY,CAAC,QAAQ;oBAC/B,IAAI,EAAE,YAAY,CAAC,IAAI;oBACvB,WAAW,EAAE,YAAY,CAAC,WAAW;oBACrC,MAAM,EAAE,YAAY,CAAC,MAAM;oBAC3B,MAAM,EAAE,YAAY,CAAC,MAAM;oBAC3B,YAAY,EAAE,MAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,SAAS,0CAAE,YAAY,mCAAI,EAAE;oBACzD,YAAY,EAAE,MAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,SAAS,0CAAE,YAAY,mCAAI,EAAE;iBAC1D,CAAC,CAAC;YACL,CAAC,CAAC;iBACD,KAAK,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;IAEK,mBAAmB,CAAC,MAAc,EAAE,IAAU,EAAE,MAAgB;;;YACpE,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAkB,0BAA0B,CAAC,CAAC;YAElF,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAE/B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAA,oBAAQ,EAAC;oBACb,OAAO,EACL,mFAAmF;iBACtF,CAAC,CAAC;YACL,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAe,IAAI,CAAC,cAAc,CAAC,CAAC;YAC5E,MAAM,eAAe,GAAG,MAAM,CAAA,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,kBAAkB,4DAAG,EAAE,MAAM,EAAE,CAAC,CAAA,CAAC;YAE5E,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;gBAClC,CAAC,qBAAU,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE;
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/components/authenticate/oauth2-handlers/base.ts"],"names":[],"mappings":"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"}
|
@@ -1,11 +1,12 @@
|
|
1
1
|
import { BaseService } from '../../../base/services';
|
2
|
-
import { IJWTTokenPayload } from '../common';
|
2
|
+
import { TGetTokenExpiresFn, IJWTTokenPayload } from '../common';
|
3
3
|
export declare class JWTTokenService extends BaseService {
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
protected applicationSecret: string;
|
5
|
+
protected jwtSecret: string;
|
6
|
+
protected jwtExpiresIn: string;
|
7
|
+
protected getTokenExpiresFn: TGetTokenExpiresFn;
|
7
8
|
private aes;
|
8
|
-
constructor(applicationSecret: string, jwtSecret: string, jwtExpiresIn: string);
|
9
|
+
constructor(applicationSecret: string, jwtSecret: string, jwtExpiresIn: string, getTokenExpiresFn: TGetTokenExpiresFn);
|
9
10
|
extractCredentials(request: {
|
10
11
|
headers: any;
|
11
12
|
}): {
|
@@ -20,5 +21,8 @@ export declare class JWTTokenService extends BaseService {
|
|
20
21
|
type: string;
|
21
22
|
token: string;
|
22
23
|
}): IJWTTokenPayload;
|
23
|
-
generate(
|
24
|
+
generate(opts: {
|
25
|
+
payload: IJWTTokenPayload;
|
26
|
+
getTokenExpiresFn?: TGetTokenExpiresFn;
|
27
|
+
}): Promise<string>;
|
24
28
|
}
|
@@ -11,6 +11,15 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
13
13
|
};
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
21
|
+
});
|
22
|
+
};
|
14
23
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
15
24
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
16
25
|
};
|
@@ -26,12 +35,14 @@ const rest_1 = require("@loopback/rest");
|
|
26
35
|
const security_1 = require("@loopback/security");
|
27
36
|
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
28
37
|
const common_1 = require("../common");
|
38
|
+
const common_2 = require("../../../common");
|
29
39
|
let JWTTokenService = JWTTokenService_1 = class JWTTokenService extends services_1.BaseService {
|
30
|
-
constructor(applicationSecret, jwtSecret, jwtExpiresIn) {
|
40
|
+
constructor(applicationSecret, jwtSecret, jwtExpiresIn, getTokenExpiresFn) {
|
31
41
|
super({ scope: JWTTokenService_1.name });
|
32
42
|
this.applicationSecret = applicationSecret;
|
33
43
|
this.jwtSecret = jwtSecret;
|
34
44
|
this.jwtExpiresIn = jwtExpiresIn;
|
45
|
+
this.getTokenExpiresFn = getTokenExpiresFn;
|
35
46
|
this.aes = helpers_1.AES.withAlgorithm('aes-256-cbc');
|
36
47
|
}
|
37
48
|
// --------------------------------------------------------------------------------------
|
@@ -129,20 +140,31 @@ let JWTTokenService = JWTTokenService_1 = class JWTTokenService extends services
|
|
129
140
|
}
|
130
141
|
}
|
131
142
|
// --------------------------------------------------------------------------------------
|
132
|
-
generate(
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
143
|
+
generate(opts) {
|
144
|
+
return __awaiter(this, void 0, void 0, function* () {
|
145
|
+
var _a, _b;
|
146
|
+
const { payload, getTokenExpiresFn = () => {
|
147
|
+
return Number(this.jwtExpiresIn);
|
148
|
+
}, } = opts;
|
149
|
+
if (!payload) {
|
150
|
+
throw (0, utilities_1.getError)({
|
151
|
+
statusCode: common_2.ResultCodes.RS_4.Unauthorized,
|
152
|
+
message: 'Error generating token : userProfile is null',
|
153
|
+
});
|
154
|
+
}
|
155
|
+
let token;
|
156
|
+
const expiresIn = (_b = (yield ((_a = this.getTokenExpiresFn) === null || _a === void 0 ? void 0 : _a.call(this)))) !== null && _b !== void 0 ? _b : getTokenExpiresFn();
|
157
|
+
try {
|
158
|
+
token = jsonwebtoken_1.default.sign(this.encryptPayload(payload), this.jwtSecret, { expiresIn });
|
159
|
+
}
|
160
|
+
catch (error) {
|
161
|
+
throw (0, utilities_1.getError)({
|
162
|
+
statusCode: common_2.ResultCodes.RS_4.Unauthorized,
|
163
|
+
message: `Error encoding token : ${error}`,
|
164
|
+
});
|
165
|
+
}
|
166
|
+
return token;
|
167
|
+
});
|
146
168
|
}
|
147
169
|
};
|
148
170
|
exports.JWTTokenService = JWTTokenService;
|
@@ -151,6 +173,7 @@ exports.JWTTokenService = JWTTokenService = JWTTokenService_1 = __decorate([
|
|
151
173
|
__param(0, (0, core_1.inject)(common_1.AuthenticateKeys.APPLICATION_SECRET)),
|
152
174
|
__param(1, (0, core_1.inject)(authentication_jwt_1.TokenServiceBindings.TOKEN_SECRET)),
|
153
175
|
__param(2, (0, core_1.inject)(authentication_jwt_1.TokenServiceBindings.TOKEN_EXPIRES_IN)),
|
154
|
-
|
176
|
+
__param(3, (0, core_1.inject)(common_1.AuthenticateKeys.GET_TOKEN_EXPIRES_FN, { optional: true })),
|
177
|
+
__metadata("design:paramtypes", [String, String, String, Function])
|
155
178
|
], JWTTokenService);
|
156
179
|
//# sourceMappingURL=jwt-token.service.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"jwt-token.service.js","sourceRoot":"","sources":["../../../../src/components/authenticate/services/jwt-token.service.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"jwt-token.service.js","sourceRoot":"","sources":["../../../../src/components/authenticate/services/jwt-token.service.ts"],"names":[],"mappings":"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"}
|
@@ -9,6 +9,9 @@ export declare abstract class BaseNetworkRequest extends BaseHelper {
|
|
9
9
|
scope: string;
|
10
10
|
networkOptions: AxiosRequestConfig;
|
11
11
|
});
|
12
|
+
getRequestPath(opts: {
|
13
|
+
paths: Array<string>;
|
14
|
+
}): string;
|
12
15
|
getRequestUrl(opts: {
|
13
16
|
baseUrl?: string;
|
14
17
|
paths: Array<string>;
|
@@ -36,6 +36,19 @@ class BaseNetworkRequest extends base_helper_1.BaseHelper {
|
|
36
36
|
this.baseUrl = (_a = networkOptions === null || networkOptions === void 0 ? void 0 : networkOptions.baseURL) !== null && _a !== void 0 ? _a : '';
|
37
37
|
this.networkService = new network_helper_1.NetworkHelper({ name, requestConfigs });
|
38
38
|
}
|
39
|
+
getRequestPath(opts) {
|
40
|
+
var _a;
|
41
|
+
const paths = (_a = opts === null || opts === void 0 ? void 0 : opts.paths) !== null && _a !== void 0 ? _a : [];
|
42
|
+
const rs = paths
|
43
|
+
.map((path) => {
|
44
|
+
if (!path.startsWith('/')) {
|
45
|
+
path = `/${path}`; // Add / to the start of url path
|
46
|
+
}
|
47
|
+
return path;
|
48
|
+
})
|
49
|
+
.join('');
|
50
|
+
return rs;
|
51
|
+
}
|
39
52
|
getRequestUrl(opts) {
|
40
53
|
var _a, _b, _c;
|
41
54
|
let baseUrl = (_b = (_a = opts === null || opts === void 0 ? void 0 : opts.baseUrl) !== null && _a !== void 0 ? _a : this.baseUrl) !== null && _b !== void 0 ? _b : '';
|
@@ -49,14 +62,7 @@ class BaseNetworkRequest extends base_helper_1.BaseHelper {
|
|
49
62
|
if (baseUrl.endsWith('/')) {
|
50
63
|
baseUrl = baseUrl.slice(0, -1); // Remove / at the end
|
51
64
|
}
|
52
|
-
const joined = paths
|
53
|
-
.map((path) => {
|
54
|
-
if (!path.startsWith('/')) {
|
55
|
-
path = `/${path}`; // Add / to the start of url path
|
56
|
-
}
|
57
|
-
return path;
|
58
|
-
})
|
59
|
-
.join('');
|
65
|
+
const joined = this.getRequestPath({ paths });
|
60
66
|
return `${baseUrl !== null && baseUrl !== void 0 ? baseUrl : this.baseUrl}${joined}`;
|
61
67
|
}
|
62
68
|
getNetworkService() {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"base-network-request.js","sourceRoot":"","sources":["../../../src/helpers/network/base-network-request.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAuC;AAEvC,qDAA6B;AAC7B,6DAAqC;AACrC,qDAAiD;AACjD,oDAAgD;AAEhD,MAAsB,kBAAmB,SAAQ,wBAAU;IAIzD,YAAY,IAAyE;;QACnF,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEnD,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;QACtC,MAAM,EAAE,OAAO,GAAG,EAAE,KAAc,cAAc,EAAvB,IAAI,UAAK,cAAc,EAA1C,WAAyB,CAAiB,CAAC;QAEjD,MAAM,cAAc,mCACf,IAAI,KACP,eAAe,EAAE,IAAI,EACrB,OAAO,EAAE,EAAE,GAAG,IAAI,EAClB,cAAc,EAAE,CAAC,MAAc,EAAE,EAAE;gBACjC,OAAO,MAAM,GAAG,GAAG,CAAC;YACtB,CAAC,EACD,OAAO,GACR,CAAC;QAEF,MAAM,aAAa,GAAG,IAAA,aAAG,EAAC,cAAc,EAAE,yBAAyB,CAAC,CAAC;QACrE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,iCAAiC,CAAC;QAC7E,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,OAAO,mCAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,8BAAa,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,aAAa,CAAC,IAAgD;;QAC5D,IAAI,OAAO,GAAG,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,mCAAI,IAAI,CAAC,OAAO,mCAAI,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,mCAAI,EAAE,CAAC;QAEhC,IAAI,CAAC,OAAO,IAAI,IAAA,iBAAO,EAAC,OAAO,CAAC,EAAE,CAAC;YACjC,MAAM,IAAA,oBAAQ,EAAC;gBACb,UAAU,EAAE,GAAG;gBACf,OAAO,EAAE,yEAAyE;aACnF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,
|
1
|
+
{"version":3,"file":"base-network-request.js","sourceRoot":"","sources":["../../../src/helpers/network/base-network-request.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAuC;AAEvC,qDAA6B;AAC7B,6DAAqC;AACrC,qDAAiD;AACjD,oDAAgD;AAEhD,MAAsB,kBAAmB,SAAQ,wBAAU;IAIzD,YAAY,IAAyE;;QACnF,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEnD,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;QACtC,MAAM,EAAE,OAAO,GAAG,EAAE,KAAc,cAAc,EAAvB,IAAI,UAAK,cAAc,EAA1C,WAAyB,CAAiB,CAAC;QAEjD,MAAM,cAAc,mCACf,IAAI,KACP,eAAe,EAAE,IAAI,EACrB,OAAO,EAAE,EAAE,GAAG,IAAI,EAClB,cAAc,EAAE,CAAC,MAAc,EAAE,EAAE;gBACjC,OAAO,MAAM,GAAG,GAAG,CAAC;YACtB,CAAC,EACD,OAAO,GACR,CAAC;QAEF,MAAM,aAAa,GAAG,IAAA,aAAG,EAAC,cAAc,EAAE,yBAAyB,CAAC,CAAC;QACrE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,iCAAiC,CAAC;QAC7E,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,OAAO,mCAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,8BAAa,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,cAAc,CAAC,IAA8B;;QAC3C,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,mCAAI,EAAE,CAAC;QAEhC,MAAM,EAAE,GAAG,KAAK;aACb,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;YACpB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,iCAAiC;YACtD,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,aAAa,CAAC,IAAgD;;QAC5D,IAAI,OAAO,GAAG,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,mCAAI,IAAI,CAAC,OAAO,mCAAI,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,mCAAI,EAAE,CAAC;QAEhC,IAAI,CAAC,OAAO,IAAI,IAAA,iBAAO,EAAC,OAAO,CAAC,EAAE,CAAC;YACjC,MAAM,IAAA,oBAAQ,EAAC;gBACb,UAAU,EAAE,GAAG;gBACf,OAAO,EAAE,yEAAyE;aACnF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9C,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,CAAC;IAC/C,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;CACF;AAnED,gDAmEC"}
|