@flusys/nestjs-auth 9.1.0-rc.1 → 9.1.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/README.md +18 -0
- package/config/message-keys.d.ts +2 -0
- package/controllers/company-selection.controller.d.ts +5 -3
- package/controllers/user-permission.controller.d.ts +3 -3
- package/dtos/authentication.dto.d.ts +5 -0
- package/dtos/user-permission.dto.d.ts +3 -0
- package/fesm/118.js +30 -0
- package/fesm/120.js +27 -23
- package/fesm/24.js +361 -134
- package/fesm/360.js +719 -0
- package/fesm/370.js +50 -0
- package/fesm/config/index.js +3 -1
- package/fesm/docs/index.js +8 -2
- package/fesm/helpers/index.js +139 -33
- package/fesm/index.js +26 -550
- package/fesm/interceptors/index.js +6 -2
- package/fesm/modules/index.js +4 -529
- package/fesm/services/index.js +209 -27
- package/helpers/branch-ancestry.helper.d.ts +4 -0
- package/helpers/index.d.ts +1 -0
- package/helpers/token.helper.d.ts +2 -0
- package/interfaces/authentication.interface.d.ts +3 -0
- package/package.json +5 -5
- package/services/authentication.service.d.ts +3 -1
- package/services/branch-hierarchy-resolver.adapter.d.ts +15 -0
- package/services/branch.service.d.ts +7 -0
- package/services/company-access-resolver.adapter.d.ts +8 -0
- package/services/index.d.ts +2 -0
- package/services/user-permission.service.d.ts +1 -0
|
@@ -126,7 +126,9 @@ const COMPANY_MESSAGES = {
|
|
|
126
126
|
READONLY_DELETE_FORBIDDEN: 'company.readonly.delete.forbidden'
|
|
127
127
|
};
|
|
128
128
|
const BRANCH_MESSAGES = {
|
|
129
|
-
READONLY_DELETE_FORBIDDEN: 'branch.readonly.delete.forbidden'
|
|
129
|
+
READONLY_DELETE_FORBIDDEN: 'branch.readonly.delete.forbidden',
|
|
130
|
+
INVALID_PARENT: 'branch.invalid.parent',
|
|
131
|
+
CIRCULAR_PARENT: 'branch.circular.parent'
|
|
130
132
|
};
|
|
131
133
|
const USER_PERMISSION_MESSAGES = {
|
|
132
134
|
COMPANY_LIST_SUCCESS: 'user.permission.company.list.success',
|
|
@@ -341,7 +343,9 @@ class SetToken {
|
|
|
341
343
|
res.cookie(this.cookieName, tokenValue, {
|
|
342
344
|
httpOnly: true,
|
|
343
345
|
path: '/',
|
|
344
|
-
|
|
346
|
+
...req.body?.rememberMe !== false && {
|
|
347
|
+
maxAge: this.maxAgeMs
|
|
348
|
+
},
|
|
345
349
|
...(0,utils_.buildCookieOptions)(req)
|
|
346
350
|
});
|
|
347
351
|
}
|
package/fesm/modules/index.js
CHANGED
|
@@ -1,533 +1,6 @@
|
|
|
1
|
-
import { ExtractJwt, Strategy } from "passport-jwt";
|
|
2
|
-
import * as __rspack_external__nestjs_passport_18907953 from "@nestjs/passport";
|
|
3
1
|
export const __rspack_esm_id = 900;
|
|
4
2
|
export const __rspack_esm_ids = [900];
|
|
5
|
-
export const __webpack_modules__ = {
|
|
6
|
-
5180(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
7
|
-
/* import */ var _app_user_entity_js__rspack_import_0 = __webpack_require__(4758);
|
|
8
|
-
/* import */ var _company_branch_entity_js__rspack_import_1 = __webpack_require__(1923);
|
|
9
|
-
/* import */ var _company_entity_js__rspack_import_2 = __webpack_require__(8538);
|
|
10
|
-
/* import */ var _pending_registration_entity_js__rspack_import_3 = __webpack_require__(9388);
|
|
11
|
-
/* import */ var _social_auth_config_entity_js__rspack_import_4 = __webpack_require__(2020);
|
|
12
|
-
/* import */ var _user_company_permission_entity_js__rspack_import_5 = __webpack_require__(2377);
|
|
13
|
-
/* import */ var _user_token_entity_js__rspack_import_6 = __webpack_require__(9696);
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const BaseEntities = [
|
|
29
|
-
_app_user_entity_js__rspack_import_0/* .AppUser */.$,
|
|
30
|
-
_user_token_entity_js__rspack_import_6/* .UserToken */.L,
|
|
31
|
-
_social_auth_config_entity_js__rspack_import_4/* .SocialAuthConfig */.G
|
|
32
|
-
];
|
|
33
|
-
const EmailEntities = [
|
|
34
|
-
_pending_registration_entity_js__rspack_import_3/* .PendingRegistration */.N
|
|
35
|
-
];
|
|
36
|
-
const CompanyEntities = [
|
|
37
|
-
_company_entity_js__rspack_import_2/* .Company */.C,
|
|
38
|
-
_company_branch_entity_js__rspack_import_1/* .CompanyBranch */.A,
|
|
39
|
-
_user_company_permission_entity_js__rspack_import_5/* .UserCompanyPermission */.I
|
|
40
|
-
];
|
|
41
|
-
function getAuthEntitiesByConfig(config) {
|
|
42
|
-
const { enableCompanyFeature = false, enableEmailVerification = true } = config;
|
|
43
|
-
const entities = [
|
|
44
|
-
...BaseEntities
|
|
45
|
-
];
|
|
46
|
-
if (enableEmailVerification) {
|
|
47
|
-
entities.push(...EmailEntities);
|
|
48
|
-
}
|
|
49
|
-
if (enableCompanyFeature) {
|
|
50
|
-
entities.push(...CompanyEntities);
|
|
51
|
-
}
|
|
52
|
-
return entities;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
56
|
-
$u: () => (/* reexport safe */ _app_user_entity_js__rspack_import_0.$),
|
|
57
|
-
At: () => (/* reexport safe */ _company_branch_entity_js__rspack_import_1.A),
|
|
58
|
-
CC: () => (/* reexport safe */ _company_entity_js__rspack_import_2.C),
|
|
59
|
-
GB: () => (/* reexport safe */ _social_auth_config_entity_js__rspack_import_4.G),
|
|
60
|
-
Iq: () => (/* reexport safe */ _user_company_permission_entity_js__rspack_import_5.I),
|
|
61
|
-
Li: () => (/* reexport safe */ _user_token_entity_js__rspack_import_6.L),
|
|
62
|
-
Ni: () => (/* reexport safe */ _pending_registration_entity_js__rspack_import_3.N),
|
|
63
|
-
eZ: () => (/* reexport safe */ _user_company_permission_entity_js__rspack_import_5.e),
|
|
64
|
-
getAuthEntitiesByConfig: () => (getAuthEntitiesByConfig),
|
|
65
|
-
ks: () => (/* reexport safe */ _user_token_entity_js__rspack_import_6.k)
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
},
|
|
70
|
-
7579(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
71
|
-
|
|
72
|
-
// EXPORTS
|
|
73
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
74
|
-
r: () => (/* reexport */ AuthModule)
|
|
75
|
-
});
|
|
76
|
-
|
|
77
|
-
// EXTERNAL MODULE: external "@flusys/nestjs-shared/modules"
|
|
78
|
-
var modules_ = __webpack_require__(1236);
|
|
79
|
-
// EXTERNAL MODULE: external "@nestjs/common"
|
|
80
|
-
var common_ = __webpack_require__(6157);
|
|
81
|
-
// EXTERNAL MODULE: external "@nestjs/jwt"
|
|
82
|
-
var jwt_ = __webpack_require__(2125);
|
|
83
|
-
// EXTERNAL MODULE: external "@nestjs/passport"
|
|
84
|
-
var passport_ = __webpack_require__(3794);
|
|
85
|
-
// EXTERNAL MODULE: external "@flusys/nestjs-shared/guards"
|
|
86
|
-
var guards_ = __webpack_require__(3513);
|
|
87
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/config/auth.constants.ts
|
|
88
|
-
var auth_constants = __webpack_require__(5588);
|
|
89
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/controllers/index.ts + 11 modules
|
|
90
|
-
var src_controllers = __webpack_require__(1003);
|
|
91
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/entities/index.ts
|
|
92
|
-
var entities = __webpack_require__(5180);
|
|
93
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/interceptors/clear-token.interceptor.ts
|
|
94
|
-
var clear_token_interceptor = __webpack_require__(5207);
|
|
95
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/interceptors/set-token.interceptor.ts + 1 modules
|
|
96
|
-
var set_token_interceptor = __webpack_require__(8359);
|
|
97
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/services/index.ts
|
|
98
|
-
var services = __webpack_require__(8811);
|
|
99
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/services/auth-config.service.ts + 1 modules
|
|
100
|
-
var auth_config_service = __webpack_require__(6514);
|
|
101
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/services/auth-datasource.provider.ts
|
|
102
|
-
var auth_datasource_provider = __webpack_require__(2732);
|
|
103
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/strategies/jwt.strategy.ts + 1 modules
|
|
104
|
-
var jwt_strategy = __webpack_require__(5389);
|
|
105
|
-
;// CONCATENATED MODULE: ./projects/nestjs-auth/src/modules/auth.module.ts
|
|
106
|
-
function _ts_decorate(decorators, target, key, desc) {
|
|
107
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
108
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
109
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
|
110
|
-
} else {
|
|
111
|
-
for(var i = decorators.length - 1; i >= 0; i--){
|
|
112
|
-
if (d = decorators[i]) {
|
|
113
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
class AuthModule {
|
|
134
|
-
static forRoot(options) {
|
|
135
|
-
const optionsProvider = {
|
|
136
|
-
provide: auth_constants/* .AUTH_MODULE_OPTIONS */.xe,
|
|
137
|
-
useValue: options
|
|
138
|
-
};
|
|
139
|
-
return this.buildModule(options, [
|
|
140
|
-
optionsProvider,
|
|
141
|
-
...options.providers ?? []
|
|
142
|
-
]);
|
|
143
|
-
}
|
|
144
|
-
static forRootAsync(options) {
|
|
145
|
-
const asyncProviders = this.createAsyncProviders(options);
|
|
146
|
-
return this.buildModule(options, [
|
|
147
|
-
...asyncProviders,
|
|
148
|
-
...options.providers ?? []
|
|
149
|
-
], options.imports);
|
|
150
|
-
}
|
|
151
|
-
static buildModule(options, providers, externalImports = []) {
|
|
152
|
-
const { global = false, includeController = true, bootstrapAppConfig } = options;
|
|
153
|
-
const featureFlags = this.getFeatureFlags(bootstrapAppConfig);
|
|
154
|
-
return {
|
|
155
|
-
module: AuthModule,
|
|
156
|
-
global,
|
|
157
|
-
imports: [
|
|
158
|
-
...externalImports,
|
|
159
|
-
...this.buildImports()
|
|
160
|
-
],
|
|
161
|
-
controllers: this.buildControllers(includeController, featureFlags),
|
|
162
|
-
providers: [
|
|
163
|
-
...providers,
|
|
164
|
-
...this.buildProviders(featureFlags)
|
|
165
|
-
],
|
|
166
|
-
exports: this.buildExports(featureFlags)
|
|
167
|
-
};
|
|
168
|
-
}
|
|
169
|
-
static getFeatureFlags(bootstrapAppConfig) {
|
|
170
|
-
return {
|
|
171
|
-
enableCompanyFeature: bootstrapAppConfig?.enableCompanyFeature ?? false,
|
|
172
|
-
enableEmailVerification: bootstrapAppConfig?.enableEmailVerification ?? true
|
|
173
|
-
};
|
|
174
|
-
}
|
|
175
|
-
static buildImports() {
|
|
176
|
-
return [
|
|
177
|
-
passport_.PassportModule.register({
|
|
178
|
-
defaultStrategy: 'jwt'
|
|
179
|
-
}),
|
|
180
|
-
jwt_.JwtModule.register({}),
|
|
181
|
-
modules_.CacheModule,
|
|
182
|
-
modules_.UtilsModule
|
|
183
|
-
];
|
|
184
|
-
}
|
|
185
|
-
static buildControllers(includeController, flags) {
|
|
186
|
-
if (!includeController) return [];
|
|
187
|
-
const controllers = [
|
|
188
|
-
src_controllers/* .AuthenticationController */.$3,
|
|
189
|
-
src_controllers/* .SocialAuthController */.eA,
|
|
190
|
-
src_controllers/* .SocialAuthConfigController */.O3,
|
|
191
|
-
src_controllers/* .UserController */.SZ
|
|
192
|
-
];
|
|
193
|
-
if (flags.enableEmailVerification) {
|
|
194
|
-
controllers.push(src_controllers/* .EmailVerificationController */.Q1);
|
|
195
|
-
}
|
|
196
|
-
if (flags.enableCompanyFeature) {
|
|
197
|
-
controllers.push(src_controllers/* .CompanySelectionController */.Qg, src_controllers/* .CompanyController */.wD, src_controllers/* .BranchController */.zF, src_controllers/* .UserPermissionController */.rl);
|
|
198
|
-
}
|
|
199
|
-
return controllers;
|
|
200
|
-
}
|
|
201
|
-
static buildProviders(flags) {
|
|
202
|
-
const providers = [
|
|
203
|
-
auth_config_service/* .AuthConfigService */.W,
|
|
204
|
-
auth_datasource_provider/* .AuthDataSourceProvider */.v,
|
|
205
|
-
jwt_strategy/* .JwtStrategy */.P,
|
|
206
|
-
guards_.JwtAuthGuard,
|
|
207
|
-
services/* .AuthenticationService */.kX,
|
|
208
|
-
services/* .SocialAuthService */.Jn,
|
|
209
|
-
services/* .SocialAuthConfigService */.t_,
|
|
210
|
-
set_token_interceptor/* .SetToken */.A,
|
|
211
|
-
clear_token_interceptor/* .ClearToken */.t,
|
|
212
|
-
services/* .UserService */.DL,
|
|
213
|
-
(0,modules_.createModuleEventsProvider)('auth', auth_constants/* .AUTH_MODULE_OPTIONS */.xe)
|
|
214
|
-
];
|
|
215
|
-
if (flags.enableEmailVerification) {
|
|
216
|
-
providers.push(services/* .AuthEmailService */.Gw);
|
|
217
|
-
}
|
|
218
|
-
if (flags.enableCompanyFeature) {
|
|
219
|
-
providers.push(services/* .CompanySelectionSessionService */.vB, services/* .CompanyService */.Bl, services/* .BranchService */.O_, services/* .UserPermissionService */.OE);
|
|
220
|
-
}
|
|
221
|
-
return providers;
|
|
222
|
-
}
|
|
223
|
-
static buildExports(flags) {
|
|
224
|
-
const exports = [
|
|
225
|
-
passport_.PassportModule,
|
|
226
|
-
auth_constants/* .AUTH_MODULE_OPTIONS */.xe,
|
|
227
|
-
auth_config_service/* .AuthConfigService */.W,
|
|
228
|
-
auth_datasource_provider/* .AuthDataSourceProvider */.v,
|
|
229
|
-
jwt_strategy/* .JwtStrategy */.P,
|
|
230
|
-
guards_.JwtAuthGuard,
|
|
231
|
-
services/* .AuthenticationService */.kX,
|
|
232
|
-
services/* .SocialAuthService */.Jn,
|
|
233
|
-
services/* .SocialAuthConfigService */.t_,
|
|
234
|
-
services/* .UserService */.DL
|
|
235
|
-
];
|
|
236
|
-
if (flags.enableEmailVerification) {
|
|
237
|
-
exports.push(services/* .AuthEmailService */.Gw);
|
|
238
|
-
}
|
|
239
|
-
if (flags.enableCompanyFeature) {
|
|
240
|
-
exports.push(services/* .CompanySelectionSessionService */.vB, services/* .CompanyService */.Bl, services/* .BranchService */.O_, services/* .UserPermissionService */.OE);
|
|
241
|
-
}
|
|
242
|
-
return exports;
|
|
243
|
-
}
|
|
244
|
-
static createAsyncProviders(options) {
|
|
245
|
-
const staticOptions = {
|
|
246
|
-
global: options.global,
|
|
247
|
-
includeController: options.includeController,
|
|
248
|
-
bootstrapAppConfig: options.bootstrapAppConfig
|
|
249
|
-
};
|
|
250
|
-
if (options.useFactory) {
|
|
251
|
-
return [
|
|
252
|
-
{
|
|
253
|
-
provide: auth_constants/* .AUTH_MODULE_OPTIONS */.xe,
|
|
254
|
-
useFactory: async (...args)=>({
|
|
255
|
-
...staticOptions,
|
|
256
|
-
config: await options.useFactory(...args)
|
|
257
|
-
}),
|
|
258
|
-
inject: options.inject || []
|
|
259
|
-
}
|
|
260
|
-
];
|
|
261
|
-
}
|
|
262
|
-
if (options.useClass) {
|
|
263
|
-
return [
|
|
264
|
-
{
|
|
265
|
-
provide: options.useClass,
|
|
266
|
-
useClass: options.useClass
|
|
267
|
-
},
|
|
268
|
-
{
|
|
269
|
-
provide: auth_constants/* .AUTH_MODULE_OPTIONS */.xe,
|
|
270
|
-
useFactory: async (factory)=>({
|
|
271
|
-
...staticOptions,
|
|
272
|
-
config: await factory.createAuthOptions()
|
|
273
|
-
}),
|
|
274
|
-
inject: [
|
|
275
|
-
options.useClass
|
|
276
|
-
]
|
|
277
|
-
}
|
|
278
|
-
];
|
|
279
|
-
}
|
|
280
|
-
if (options.useExisting) {
|
|
281
|
-
return [
|
|
282
|
-
{
|
|
283
|
-
provide: auth_constants/* .AUTH_MODULE_OPTIONS */.xe,
|
|
284
|
-
useFactory: async (factory)=>({
|
|
285
|
-
...staticOptions,
|
|
286
|
-
config: await factory.createAuthOptions()
|
|
287
|
-
}),
|
|
288
|
-
inject: [
|
|
289
|
-
options.useExisting
|
|
290
|
-
]
|
|
291
|
-
}
|
|
292
|
-
];
|
|
293
|
-
}
|
|
294
|
-
return [
|
|
295
|
-
{
|
|
296
|
-
provide: auth_constants/* .AUTH_MODULE_OPTIONS */.xe,
|
|
297
|
-
useValue: staticOptions
|
|
298
|
-
}
|
|
299
|
-
];
|
|
300
|
-
}
|
|
301
|
-
static getEntities(config) {
|
|
302
|
-
return (0,entities.getAuthEntitiesByConfig)({
|
|
303
|
-
enableCompanyFeature: config.enableCompanyFeature ?? false,
|
|
304
|
-
enableEmailVerification: config.enableEmailVerification ?? true
|
|
305
|
-
});
|
|
306
|
-
}
|
|
307
|
-
}
|
|
308
|
-
AuthModule = _ts_decorate([
|
|
309
|
-
(0,common_.Module)({})
|
|
310
|
-
], AuthModule);
|
|
311
|
-
|
|
312
|
-
;// CONCATENATED MODULE: ./projects/nestjs-auth/src/modules/index.ts
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
},
|
|
317
|
-
8811(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
318
|
-
/* import */ var _authentication_service_js__rspack_import_0 = __webpack_require__(4722);
|
|
319
|
-
/* import */ var _auth_email_service_js__rspack_import_1 = __webpack_require__(3221);
|
|
320
|
-
/* import */ var _company_selection_session_service_js__rspack_import_2 = __webpack_require__(5811);
|
|
321
|
-
/* import */ var _social_auth_service_js__rspack_import_3 = __webpack_require__(2786);
|
|
322
|
-
/* import */ var _social_auth_config_service_js__rspack_import_4 = __webpack_require__(8275);
|
|
323
|
-
/* import */ var _user_service_js__rspack_import_5 = __webpack_require__(7229);
|
|
324
|
-
/* import */ var _company_service_js__rspack_import_6 = __webpack_require__(9201);
|
|
325
|
-
/* import */ var _branch_service_js__rspack_import_7 = __webpack_require__(5402);
|
|
326
|
-
/* import */ var _user_permission_service_js__rspack_import_8 = __webpack_require__(5291);
|
|
327
|
-
/* import */ var _auth_config_service_js__rspack_import_9 = __webpack_require__(6514);
|
|
328
|
-
/* import */ var _auth_datasource_provider_js__rspack_import_10 = __webpack_require__(2732);
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
342
|
-
Bl: () => (/* reexport safe */ _company_service_js__rspack_import_6.B),
|
|
343
|
-
DL: () => (/* reexport safe */ _user_service_js__rspack_import_5.D),
|
|
344
|
-
Gw: () => (/* reexport safe */ _auth_email_service_js__rspack_import_1.G),
|
|
345
|
-
Jn: () => (/* reexport safe */ _social_auth_service_js__rspack_import_3.J),
|
|
346
|
-
OE: () => (/* reexport safe */ _user_permission_service_js__rspack_import_8.O),
|
|
347
|
-
O_: () => (/* reexport safe */ _branch_service_js__rspack_import_7.O),
|
|
348
|
-
WE: () => (/* reexport safe */ _auth_config_service_js__rspack_import_9.W),
|
|
349
|
-
kX: () => (/* reexport safe */ _authentication_service_js__rspack_import_0.k),
|
|
350
|
-
t_: () => (/* reexport safe */ _social_auth_config_service_js__rspack_import_4.t),
|
|
351
|
-
vB: () => (/* reexport safe */ _company_selection_session_service_js__rspack_import_2.v),
|
|
352
|
-
vS: () => (/* reexport safe */ _auth_datasource_provider_js__rspack_import_10.v)
|
|
353
|
-
});
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
},
|
|
357
|
-
5389(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
358
|
-
|
|
359
|
-
// EXPORTS
|
|
360
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
361
|
-
P: () => (/* binding */ JwtStrategy)
|
|
362
|
-
});
|
|
363
|
-
|
|
364
|
-
// EXTERNAL MODULE: external "@flusys/nestjs-shared/constants"
|
|
365
|
-
var constants_ = __webpack_require__(9140);
|
|
366
|
-
// EXTERNAL MODULE: external "@nestjs/common"
|
|
367
|
-
var common_ = __webpack_require__(6157);
|
|
368
|
-
// EXTERNAL MODULE: external "@nestjs/core"
|
|
369
|
-
var core_ = __webpack_require__(3075);
|
|
370
|
-
// EXTERNAL MODULE: external "@nestjs/passport"
|
|
371
|
-
var passport_ = __webpack_require__(3794);
|
|
372
|
-
;// CONCATENATED MODULE: external "passport-jwt"
|
|
373
|
-
|
|
374
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/config/message-keys.ts
|
|
375
|
-
var message_keys = __webpack_require__(5363);
|
|
376
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/entities/app-user.entity.ts
|
|
377
|
-
var app_user_entity = __webpack_require__(4758);
|
|
378
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/services/auth-config.service.ts + 1 modules
|
|
379
|
-
var auth_config_service = __webpack_require__(6514);
|
|
380
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/services/auth-datasource.provider.ts
|
|
381
|
-
var auth_datasource_provider = __webpack_require__(2732);
|
|
382
|
-
// EXTERNAL MODULE: ./projects/nestjs-auth/src/services/authentication.service.ts + 1 modules
|
|
383
|
-
var authentication_service = __webpack_require__(4722);
|
|
384
|
-
;// CONCATENATED MODULE: ./projects/nestjs-auth/src/strategies/jwt.strategy.ts
|
|
385
|
-
function _ts_decorate(decorators, target, key, desc) {
|
|
386
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
387
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
388
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
|
389
|
-
} else {
|
|
390
|
-
for(var i = decorators.length - 1; i >= 0; i--){
|
|
391
|
-
if (d = decorators[i]) {
|
|
392
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
397
|
-
}
|
|
398
|
-
function _ts_metadata(metadataKey, metadataValue) {
|
|
399
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
400
|
-
return Reflect.metadata(metadataKey, metadataValue);
|
|
401
|
-
}
|
|
402
|
-
}
|
|
403
|
-
function _ts_param(paramIndex, decorator) {
|
|
404
|
-
return function(target, key) {
|
|
405
|
-
decorator(target, key, paramIndex);
|
|
406
|
-
};
|
|
407
|
-
}
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
function hasCompanyContext(payload) {
|
|
419
|
-
return 'companyId' in payload && payload.companyId != null;
|
|
420
|
-
}
|
|
421
|
-
class JwtStrategy extends (0,passport_.PassportStrategy)(Strategy, 'jwt') {
|
|
422
|
-
authConfig;
|
|
423
|
-
moduleRef;
|
|
424
|
-
constructor(authConfig, moduleRef){
|
|
425
|
-
super({
|
|
426
|
-
jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(),
|
|
427
|
-
ignoreExpiration: false,
|
|
428
|
-
secretOrKeyProvider: (_req, _token, done)=>{
|
|
429
|
-
done(null, this.authConfig.getJwtSecret());
|
|
430
|
-
},
|
|
431
|
-
passReqToCallback: true
|
|
432
|
-
}), this.authConfig = authConfig, this.moduleRef = moduleRef;
|
|
433
|
-
}
|
|
434
|
-
async validate(_req, payload) {
|
|
435
|
-
const userRepo = await this.resolveUserRepository();
|
|
436
|
-
await this.checkTokenRevocation(payload);
|
|
437
|
-
const user = await userRepo.findOne({
|
|
438
|
-
where: {
|
|
439
|
-
id: payload.id,
|
|
440
|
-
isActive: true
|
|
441
|
-
}
|
|
442
|
-
});
|
|
443
|
-
if (!user) {
|
|
444
|
-
throw new common_.UnauthorizedException({
|
|
445
|
-
message: 'User not found or inactive',
|
|
446
|
-
messageKey: message_keys/* .USER_MESSAGES.NOT_FOUND */.ny.NOT_FOUND
|
|
447
|
-
});
|
|
448
|
-
}
|
|
449
|
-
return this.buildUserInfo(payload);
|
|
450
|
-
}
|
|
451
|
-
async resolveUserRepository() {
|
|
452
|
-
try {
|
|
453
|
-
const provider = await this.moduleRef.resolve(auth_datasource_provider/* .AuthDataSourceProvider */.v, undefined, {
|
|
454
|
-
strict: false
|
|
455
|
-
});
|
|
456
|
-
if (provider) {
|
|
457
|
-
return provider.getRepository(app_user_entity/* .AppUser */.$);
|
|
458
|
-
}
|
|
459
|
-
} catch {
|
|
460
|
-
throw new common_.UnauthorizedException({
|
|
461
|
-
message: 'Unable to access user data',
|
|
462
|
-
messageKey: constants_.SYSTEM_MESSAGES.SERVICE_NOT_AVAILABLE,
|
|
463
|
-
messageVariables: {
|
|
464
|
-
provider: 'DataSourceProvider',
|
|
465
|
-
available: ''
|
|
466
|
-
}
|
|
467
|
-
});
|
|
468
|
-
}
|
|
469
|
-
throw new common_.UnauthorizedException({
|
|
470
|
-
message: 'User repository not available',
|
|
471
|
-
messageKey: constants_.SYSTEM_MESSAGES.REPOSITORY_NOT_AVAILABLE,
|
|
472
|
-
messageVariables: {
|
|
473
|
-
entity: 'User'
|
|
474
|
-
}
|
|
475
|
-
});
|
|
476
|
-
}
|
|
477
|
-
async checkTokenRevocation(payload) {
|
|
478
|
-
if (!payload.iat) return;
|
|
479
|
-
try {
|
|
480
|
-
const authService = await this.moduleRef.resolve(authentication_service/* .AuthenticationService */.k, undefined, {
|
|
481
|
-
strict: false
|
|
482
|
-
});
|
|
483
|
-
if (authService && await authService.isTokenRevoked(payload.id, payload.iat)) {
|
|
484
|
-
throw new common_.UnauthorizedException({
|
|
485
|
-
message: 'Token has been revoked',
|
|
486
|
-
messageKey: message_keys/* .AUTH_MESSAGES.TOKEN_REVOKED */.mK.TOKEN_REVOKED
|
|
487
|
-
});
|
|
488
|
-
}
|
|
489
|
-
} catch (err) {
|
|
490
|
-
if (err instanceof common_.UnauthorizedException) throw err;
|
|
491
|
-
}
|
|
492
|
-
}
|
|
493
|
-
buildUserInfo(payload) {
|
|
494
|
-
const base = {
|
|
495
|
-
id: payload.id,
|
|
496
|
-
email: payload.email
|
|
497
|
-
};
|
|
498
|
-
if (!hasCompanyContext(payload)) {
|
|
499
|
-
return base;
|
|
500
|
-
}
|
|
501
|
-
return {
|
|
502
|
-
...base,
|
|
503
|
-
companyId: payload.companyId,
|
|
504
|
-
...payload.branchId && {
|
|
505
|
-
branchId: payload.branchId
|
|
506
|
-
}
|
|
507
|
-
};
|
|
508
|
-
}
|
|
509
|
-
}
|
|
510
|
-
JwtStrategy = _ts_decorate([
|
|
511
|
-
(0,common_.Injectable)(),
|
|
512
|
-
_ts_param(0, (0,common_.Inject)(auth_config_service/* .AuthConfigService */.W)),
|
|
513
|
-
_ts_param(1, (0,common_.Inject)(core_.ModuleRef)),
|
|
514
|
-
_ts_metadata("design:type", Function),
|
|
515
|
-
_ts_metadata("design:paramtypes", [
|
|
516
|
-
typeof auth_config_service/* .AuthConfigService */.W === "undefined" ? Object : auth_config_service/* .AuthConfigService */.W,
|
|
517
|
-
typeof core_.ModuleRef === "undefined" ? Object : core_.ModuleRef
|
|
518
|
-
])
|
|
519
|
-
], JwtStrategy);
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
},
|
|
523
|
-
3794(module) {
|
|
524
|
-
|
|
525
|
-
module.exports = __rspack_external__nestjs_passport_18907953;
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
},
|
|
529
|
-
|
|
530
|
-
};
|
|
3
|
+
export const __webpack_modules__ = {};
|
|
531
4
|
import { __webpack_require__ } from '../runtime.js';
|
|
532
5
|
var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
|
|
533
6
|
import * as __rspack_chunk_1 from '../370.js';
|
|
@@ -540,7 +13,9 @@ import * as __rspack_chunk_4 from '../118.js';
|
|
|
540
13
|
__webpack_require__.C(__rspack_chunk_4);
|
|
541
14
|
import * as __rspack_chunk_5 from '../120.js';
|
|
542
15
|
__webpack_require__.C(__rspack_chunk_5);
|
|
543
|
-
import * as __rspack_chunk_6 from '
|
|
16
|
+
import * as __rspack_chunk_6 from '../360.js';
|
|
544
17
|
__webpack_require__.C(__rspack_chunk_6);
|
|
18
|
+
import * as __rspack_chunk_7 from './index.js';
|
|
19
|
+
__webpack_require__.C(__rspack_chunk_7);
|
|
545
20
|
var __webpack_exports__ = __webpack_exec__(7579);var __webpack_exports__AuthModule = __webpack_exports__.r;
|
|
546
21
|
export { __webpack_exports__AuthModule as AuthModule };
|