@minimaltech/node-infra 0.5.10-20 → 0.5.10-22
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/types.d.ts +33 -0
- package/dist/components/authenticate/common/types.d.ts.map +1 -1
- package/dist/components/authenticate/common/types.js +5 -0
- package/dist/components/authenticate/common/types.js.map +1 -1
- package/dist/components/authenticate/controllers/oauth2.controller.d.ts +41 -0
- package/dist/components/authenticate/controllers/oauth2.controller.d.ts.map +1 -1
- package/dist/components/authenticate/controllers/oauth2.controller.js +25 -3
- package/dist/components/authenticate/controllers/oauth2.controller.js.map +1 -1
- package/dist/components/authenticate/models/oauth2-scope.model.d.ts +6 -2
- package/dist/components/authenticate/models/oauth2-scope.model.d.ts.map +1 -1
- package/dist/components/authenticate/models/oauth2-scope.model.js +47 -0
- package/dist/components/authenticate/models/oauth2-scope.model.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.d.ts.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js +20 -13
- package/dist/components/authenticate/oauth2-handlers/authorization-code.handler.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/base.d.ts +22 -5
- package/dist/components/authenticate/oauth2-handlers/base.d.ts.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/base.js +103 -28
- package/dist/components/authenticate/oauth2-handlers/base.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/config/index.d.ts +2 -0
- package/dist/components/authenticate/oauth2-handlers/config/index.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/config/index.js +18 -0
- package/dist/components/authenticate/oauth2-handlers/config/index.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/config/scope-config-validator.d.ts +46 -0
- package/dist/components/authenticate/oauth2-handlers/config/scope-config-validator.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/config/scope-config-validator.js +199 -0
- package/dist/components/authenticate/oauth2-handlers/config/scope-config-validator.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/constants/index.d.ts +2 -0
- package/dist/components/authenticate/oauth2-handlers/constants/index.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/constants/index.js +18 -0
- package/dist/components/authenticate/oauth2-handlers/constants/index.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/constants/scope-constants.d.ts +79 -0
- package/dist/components/authenticate/oauth2-handlers/constants/scope-constants.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/constants/scope-constants.js +117 -0
- package/dist/components/authenticate/oauth2-handlers/constants/scope-constants.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/data/index.d.ts +2 -0
- package/dist/components/authenticate/oauth2-handlers/data/index.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/data/index.js +18 -0
- package/dist/components/authenticate/oauth2-handlers/data/index.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/data/user-data-fetcher.d.ts +99 -0
- package/dist/components/authenticate/oauth2-handlers/data/user-data-fetcher.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/data/user-data-fetcher.js +371 -0
- package/dist/components/authenticate/oauth2-handlers/data/user-data-fetcher.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/index.d.ts +4 -0
- package/dist/components/authenticate/oauth2-handlers/index.d.ts.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/index.js +4 -0
- package/dist/components/authenticate/oauth2-handlers/index.js.map +1 -1
- package/dist/components/authenticate/oauth2-handlers/scope/index.d.ts +4 -0
- package/dist/components/authenticate/oauth2-handlers/scope/index.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/scope/index.js +20 -0
- package/dist/components/authenticate/oauth2-handlers/scope/index.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-manager.d.ts +64 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-manager.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-manager.js +100 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-manager.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-parser.d.ts +49 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-parser.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-parser.js +89 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-parser.js.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-validator.d.ts +58 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-validator.d.ts.map +1 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-validator.js +165 -0
- package/dist/components/authenticate/oauth2-handlers/scope/scope-validator.js.map +1 -0
- package/dist/components/authenticate/services/index.d.ts +1 -0
- package/dist/components/authenticate/services/index.d.ts.map +1 -1
- package/dist/components/authenticate/services/index.js +1 -0
- package/dist/components/authenticate/services/index.js.map +1 -1
- package/dist/components/authenticate/services/oauth2-scope.service.d.ts +22 -0
- package/dist/components/authenticate/services/oauth2-scope.service.d.ts.map +1 -0
- package/dist/components/authenticate/services/oauth2-scope.service.js +63 -0
- package/dist/components/authenticate/services/oauth2-scope.service.js.map +1 -0
- package/dist/components/authenticate/services/oauth2.service.d.ts +2 -0
- package/dist/components/authenticate/services/oauth2.service.d.ts.map +1 -1
- package/dist/components/authenticate/services/oauth2.service.js +8 -3
- package/dist/components/authenticate/services/oauth2.service.js.map +1 -1
- package/dist/components/authenticate/views/pages/auth.ejs +6 -2
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/mail/common/constants.d.ts +26 -0
- package/dist/components/mail/common/constants.d.ts.map +1 -0
- package/dist/components/mail/common/constants.js +37 -0
- package/dist/components/mail/common/constants.js.map +1 -0
- package/dist/components/mail/common/index.d.ts +4 -0
- package/dist/components/mail/common/index.d.ts.map +1 -0
- package/dist/components/mail/common/index.js +20 -0
- package/dist/components/mail/common/index.js.map +1 -0
- package/dist/components/mail/common/keys.d.ts +17 -0
- package/dist/components/mail/common/keys.d.ts.map +1 -0
- package/dist/components/mail/common/keys.js +24 -0
- package/dist/components/mail/common/keys.js.map +1 -0
- package/dist/components/mail/common/types.d.ts +168 -0
- package/dist/components/mail/common/types.d.ts.map +1 -0
- package/dist/components/mail/common/types.js +10 -0
- package/dist/components/mail/common/types.js.map +1 -0
- package/dist/components/mail/component.d.ts +12 -0
- package/dist/components/mail/component.d.ts.map +1 -0
- package/dist/components/mail/component.js +90 -0
- package/dist/components/mail/component.js.map +1 -0
- package/dist/components/mail/controllers/index.d.ts +2 -0
- package/dist/components/mail/controllers/index.d.ts.map +1 -0
- package/dist/components/mail/controllers/index.js +18 -0
- package/dist/components/mail/controllers/index.js.map +1 -0
- package/dist/components/mail/controllers/mail.controller.d.ts +24 -0
- package/dist/components/mail/controllers/mail.controller.d.ts.map +1 -0
- package/dist/components/mail/controllers/mail.controller.js +330 -0
- package/dist/components/mail/controllers/mail.controller.js.map +1 -0
- package/dist/components/mail/helpers/executors/bullmq-executor.helper.d.ts +48 -0
- package/dist/components/mail/helpers/executors/bullmq-executor.helper.d.ts.map +1 -0
- package/dist/components/mail/helpers/executors/bullmq-executor.helper.js +159 -0
- package/dist/components/mail/helpers/executors/bullmq-executor.helper.js.map +1 -0
- package/dist/components/mail/helpers/executors/direct-executor.helper.d.ts +14 -0
- package/dist/components/mail/helpers/executors/direct-executor.helper.d.ts.map +1 -0
- package/dist/components/mail/helpers/executors/direct-executor.helper.js +27 -0
- package/dist/components/mail/helpers/executors/direct-executor.helper.js.map +1 -0
- package/dist/components/mail/helpers/executors/index.d.ts +4 -0
- package/dist/components/mail/helpers/executors/index.d.ts.map +1 -0
- package/dist/components/mail/helpers/executors/index.js +20 -0
- package/dist/components/mail/helpers/executors/index.js.map +1 -0
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.d.ts +22 -0
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.d.ts.map +1 -0
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.js +103 -0
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.js.map +1 -0
- package/dist/components/mail/helpers/index.d.ts +3 -0
- package/dist/components/mail/helpers/index.d.ts.map +1 -0
- package/dist/components/mail/helpers/index.js +19 -0
- package/dist/components/mail/helpers/index.js.map +1 -0
- package/dist/components/mail/helpers/transports/index.d.ts +3 -0
- package/dist/components/mail/helpers/transports/index.d.ts.map +1 -0
- package/dist/components/mail/helpers/transports/index.js +19 -0
- package/dist/components/mail/helpers/transports/index.js.map +1 -0
- package/dist/components/mail/helpers/transports/mailgun-transport.helper.d.ts +11 -0
- package/dist/components/mail/helpers/transports/mailgun-transport.helper.d.ts.map +1 -0
- package/dist/components/mail/helpers/transports/mailgun-transport.helper.js +88 -0
- package/dist/components/mail/helpers/transports/mailgun-transport.helper.js.map +1 -0
- package/dist/components/mail/helpers/transports/nodemailer-transport.helper.d.ts +11 -0
- package/dist/components/mail/helpers/transports/nodemailer-transport.helper.d.ts.map +1 -0
- package/dist/components/mail/helpers/transports/nodemailer-transport.helper.js +67 -0
- package/dist/components/mail/helpers/transports/nodemailer-transport.helper.js.map +1 -0
- package/dist/components/mail/index.d.ts +8 -0
- package/dist/components/mail/index.d.ts.map +1 -0
- package/dist/components/mail/index.js +24 -0
- package/dist/components/mail/index.js.map +1 -0
- package/dist/components/mail/providers/index.d.ts +3 -0
- package/dist/components/mail/providers/index.d.ts.map +1 -0
- package/dist/components/mail/providers/index.js +19 -0
- package/dist/components/mail/providers/index.js.map +1 -0
- package/dist/components/mail/providers/mail-queue-executor.provider.d.ts +9 -0
- package/dist/components/mail/providers/mail-queue-executor.provider.d.ts.map +1 -0
- package/dist/components/mail/providers/mail-queue-executor.provider.js +41 -0
- package/dist/components/mail/providers/mail-queue-executor.provider.js.map +1 -0
- package/dist/components/mail/providers/mail-transport.provider.d.ts +15 -0
- package/dist/components/mail/providers/mail-transport.provider.d.ts.map +1 -0
- package/dist/components/mail/providers/mail-transport.provider.js +93 -0
- package/dist/components/mail/providers/mail-transport.provider.js.map +1 -0
- package/dist/components/mail/services/generator.service.d.ts +14 -0
- package/dist/components/mail/services/generator.service.d.ts.map +1 -0
- package/dist/components/mail/services/generator.service.js +70 -0
- package/dist/components/mail/services/generator.service.js.map +1 -0
- package/dist/components/mail/services/index.d.ts +4 -0
- package/dist/components/mail/services/index.d.ts.map +1 -0
- package/dist/components/mail/services/index.js +20 -0
- package/dist/components/mail/services/index.js.map +1 -0
- package/dist/components/mail/services/mail.service.d.ts +23 -0
- package/dist/components/mail/services/mail.service.d.ts.map +1 -0
- package/dist/components/mail/services/mail.service.js +178 -0
- package/dist/components/mail/services/mail.service.js.map +1 -0
- package/dist/components/mail/services/template-engine.service.d.ts +36 -0
- package/dist/components/mail/services/template-engine.service.d.ts.map +1 -0
- package/dist/components/mail/services/template-engine.service.js +126 -0
- package/dist/components/mail/services/template-engine.service.js.map +1 -0
- package/dist/components/mail/utilities/index.d.ts +3 -0
- package/dist/components/mail/utilities/index.d.ts.map +1 -0
- package/dist/components/mail/utilities/index.js +19 -0
- package/dist/components/mail/utilities/index.js.map +1 -0
- package/dist/components/mail/utilities/type.utility.d.ts +5 -0
- package/dist/components/mail/utilities/type.utility.d.ts.map +1 -0
- package/dist/components/mail/utilities/type.utility.js +34 -0
- package/dist/components/mail/utilities/type.utility.js.map +1 -0
- package/dist/components/mail/utilities/verification.utility.d.ts +3 -0
- package/dist/components/mail/utilities/verification.utility.d.ts.map +1 -0
- package/dist/components/mail/utilities/verification.utility.js +11 -0
- package/dist/components/mail/utilities/verification.utility.js.map +1 -0
- package/dist/utilities/index.d.ts +1 -0
- package/dist/utilities/index.d.ts.map +1 -1
- package/dist/utilities/index.js +1 -0
- package/dist/utilities/index.js.map +1 -1
- package/dist/utilities/module.utility.d.ts +5 -0
- package/dist/utilities/module.utility.d.ts.map +1 -0
- package/dist/utilities/module.utility.js +21 -0
- package/dist/utilities/module.utility.js.map +1 -0
- package/package.json +14 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { TInjectionGetter } from '../../../common';
|
|
2
|
+
import { IScopeDefinition } from '../common';
|
|
3
|
+
export interface IOAuth2ScopeServiceOptions {
|
|
4
|
+
injectionGetter: TInjectionGetter;
|
|
5
|
+
repositoryKey?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class OAuth2ScopeService {
|
|
8
|
+
private logger;
|
|
9
|
+
private injectionGetter;
|
|
10
|
+
private repositoryKey;
|
|
11
|
+
private scopeCache;
|
|
12
|
+
private cacheTimestamp;
|
|
13
|
+
private cacheTTL;
|
|
14
|
+
constructor(opts: {
|
|
15
|
+
options: IOAuth2ScopeServiceOptions;
|
|
16
|
+
scope?: string;
|
|
17
|
+
});
|
|
18
|
+
loadScopes(useCache?: boolean): Promise<IScopeDefinition[]>;
|
|
19
|
+
private convertToScopeDefinitions;
|
|
20
|
+
private isCacheValid;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=oauth2-scope.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oauth2-scope.service.d.ts","sourceRoot":"","sources":["../../../../src/components/authenticate/services/oauth2-scope.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAI7C,MAAM,WAAW,0BAA0B;IACzC,eAAe,EAAE,gBAAgB,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAiB;gBAErB,IAAI,EAAE;QAAE,OAAO,EAAE,0BAA0B,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;IASnE,UAAU,CAAC,QAAQ,UAAO,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAsC9D,OAAO,CAAC,yBAAyB;IAUjC,OAAO,CAAC,YAAY;CAQrB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OAuth2ScopeService = void 0;
|
|
4
|
+
const helpers_1 = require("../../../helpers");
|
|
5
|
+
const utilities_1 = require("../../../utilities");
|
|
6
|
+
class OAuth2ScopeService {
|
|
7
|
+
constructor(opts) {
|
|
8
|
+
this.scopeCache = null;
|
|
9
|
+
this.cacheTimestamp = 0;
|
|
10
|
+
this.cacheTTL = 60000; // 1 minute cache TTL
|
|
11
|
+
const { options, scope } = opts;
|
|
12
|
+
this.logger = helpers_1.LoggerFactory.getLogger([scope ?? OAuth2ScopeService.name]);
|
|
13
|
+
this.injectionGetter = options.injectionGetter;
|
|
14
|
+
this.repositoryKey = options.repositoryKey ?? 'repositories.OAuth2ScopeRepository';
|
|
15
|
+
this.logger.info('[constructor] Initialized | Repository: %s', this.repositoryKey);
|
|
16
|
+
}
|
|
17
|
+
async loadScopes(useCache = true) {
|
|
18
|
+
if (useCache && this.isCacheValid()) {
|
|
19
|
+
this.logger.debug('[loadScopes] Returning cached scopes | count: %d', this.scopeCache.length);
|
|
20
|
+
return this.scopeCache;
|
|
21
|
+
}
|
|
22
|
+
try {
|
|
23
|
+
this.logger.info('[loadScopes] Loading scopes from database');
|
|
24
|
+
const repository = this.injectionGetter(this.repositoryKey);
|
|
25
|
+
this.logger.info('[loadScopes] Repository injected: %s', this.repositoryKey);
|
|
26
|
+
const scopes = await repository.find({
|
|
27
|
+
where: { isActive: true },
|
|
28
|
+
order: ['identifier ASC'],
|
|
29
|
+
});
|
|
30
|
+
this.logger.info('[loadScopes] Loaded scopes from database | count: %d', scopes.length);
|
|
31
|
+
const scopeDefinitions = this.convertToScopeDefinitions(scopes);
|
|
32
|
+
this.scopeCache = scopeDefinitions;
|
|
33
|
+
this.cacheTimestamp = Date.now();
|
|
34
|
+
return scopeDefinitions;
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
this.logger.error('[loadScopes] Error loading scopes: %s', (0, utilities_1.getError)(error).message);
|
|
38
|
+
if (this.scopeCache) {
|
|
39
|
+
this.logger.warn('[loadScopes] Returning stale cached scopes due to error');
|
|
40
|
+
return this.scopeCache;
|
|
41
|
+
}
|
|
42
|
+
return [];
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
convertToScopeDefinitions(scopes) {
|
|
46
|
+
return scopes.map(scope => ({
|
|
47
|
+
identifier: scope.identifier,
|
|
48
|
+
name: scope.name,
|
|
49
|
+
description: scope.description,
|
|
50
|
+
fields: scope?.fields,
|
|
51
|
+
relations: scope?.relations,
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
isCacheValid() {
|
|
55
|
+
if (!this.scopeCache) {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
const age = Date.now() - this.cacheTimestamp;
|
|
59
|
+
return age < this.cacheTTL;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.OAuth2ScopeService = OAuth2ScopeService;
|
|
63
|
+
//# sourceMappingURL=oauth2-scope.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oauth2-scope.service.js","sourceRoot":"","sources":["../../../../src/components/authenticate/services/oauth2-scope.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,7 @@ export declare class OAuth2Service extends BaseService {
|
|
|
27
27
|
clientId: string;
|
|
28
28
|
clientSecret: string;
|
|
29
29
|
redirectUrl: string;
|
|
30
|
+
scope?: string;
|
|
30
31
|
}): Promise<{
|
|
31
32
|
requestPath: string;
|
|
32
33
|
}>;
|
|
@@ -43,6 +44,7 @@ export declare class OAuth2Service extends BaseService {
|
|
|
43
44
|
authServiceKey: string;
|
|
44
45
|
signInRequest: SignInRequest;
|
|
45
46
|
redirectUrl?: string;
|
|
47
|
+
scopes?: string[];
|
|
46
48
|
}): Promise<{
|
|
47
49
|
redirectUrl: string;
|
|
48
50
|
oauth2TokenRs: Token;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth2.service.d.ts","sourceRoot":"","sources":["../../../../src/components/authenticate/services/oauth2.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAA+B,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAG7E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAkC,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,qBAAa,aAAc,SAAQ,WAAW;IAM1C,OAAO,CAAC,WAAW;IACsB,OAAO,CAAC,OAAO;IAExD,OAAO,CAAC,sBAAsB;IARhC,OAAO,CAAC,GAAG,CAAoC;IAC/C,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC;gBAIpC,WAAW,EAAE,eAAe,EACa,OAAO,EAAE,aAAa,EAE/D,sBAAsB,EAAE,sBAAsB;IAWxD,kBAAkB,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;IASnE,kBAAkB,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;;;;IAmB1C,oBAAoB,CAAC,IAAI,EAAE;QACzB,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"oauth2.service.d.ts","sourceRoot":"","sources":["../../../../src/components/authenticate/services/oauth2.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAA+B,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAG7E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAkC,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,qBAAa,aAAc,SAAQ,WAAW;IAM1C,OAAO,CAAC,WAAW;IACsB,OAAO,CAAC,OAAO;IAExD,OAAO,CAAC,sBAAsB;IARhC,OAAO,CAAC,GAAG,CAAoC;IAC/C,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC;gBAIpC,WAAW,EAAE,eAAe,EACa,OAAO,EAAE,aAAa,EAE/D,sBAAsB,EAAE,sBAAsB;IAWxD,kBAAkB,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;IASnE,kBAAkB,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;;;;IAmB1C,oBAAoB,CAAC,IAAI,EAAE;QACzB,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAyDpC,aAAa,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAA;KAAE;IAc5D,SAAS,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAA;KAAE;IAclD,QAAQ,CAAC,IAAI,EAAE;QACnB,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;QACtD,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,aAAa,CAAC;QAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;KACnB;;;;IA0DK,gBAAgB,CAAC,IAAI,EAAE;QAC3B,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,KAAK,CAAC;QACnB,gBAAgB,EAAE,OAAO,CAAC;KAC3B;CAyDF"}
|
|
@@ -57,7 +57,8 @@ let OAuth2Service = OAuth2Service_1 = class OAuth2Service extends services_1.Bas
|
|
|
57
57
|
}
|
|
58
58
|
// --------------------------------------------------------------------------------
|
|
59
59
|
getOAuth2RequestPath(opts) {
|
|
60
|
-
const { clientId, clientSecret, redirectUrl } = opts;
|
|
60
|
+
const { clientId, clientSecret, redirectUrl, scope } = opts;
|
|
61
|
+
this.logger.debug('[OAuth2 Scopes] Generating request path with scopes: %s', scope);
|
|
61
62
|
return new Promise((resolve, reject) => {
|
|
62
63
|
this.oauth2ClientRepository
|
|
63
64
|
.findOne({ where: { ...opts }, fields: ['id', 'endpoints'] })
|
|
@@ -85,6 +86,9 @@ let OAuth2Service = OAuth2Service_1 = class OAuth2Service extends services_1.Bas
|
|
|
85
86
|
if (redirectUrl) {
|
|
86
87
|
urlParam.set('r', encodeURIComponent(redirectUrl));
|
|
87
88
|
}
|
|
89
|
+
if (scope) {
|
|
90
|
+
urlParam.set('scope', encodeURIComponent(scope));
|
|
91
|
+
}
|
|
88
92
|
resolve({
|
|
89
93
|
requestPath: `${basePath}/oauth2/auth?${urlParam.toString()}`,
|
|
90
94
|
});
|
|
@@ -114,19 +118,20 @@ let OAuth2Service = OAuth2Service_1 = class OAuth2Service extends services_1.Bas
|
|
|
114
118
|
}
|
|
115
119
|
// --------------------------------------------------------------------------------
|
|
116
120
|
async doOAuth2(opts) {
|
|
117
|
-
const { context, authServiceKey, signInRequest, redirectUrl } = opts;
|
|
121
|
+
const { context, authServiceKey, signInRequest, redirectUrl, scopes } = opts;
|
|
118
122
|
const authService = this.application.getSync(authServiceKey);
|
|
119
123
|
const signInRs = await authService.signIn(signInRequest);
|
|
120
124
|
const tokenValue = signInRs?.token?.value;
|
|
121
125
|
if (!tokenValue) {
|
|
122
126
|
throw (0, utilities_1.getError)({ message: `[auth] Failed to get token value!` });
|
|
123
127
|
}
|
|
128
|
+
this.logger.debug('[doOAuth2] SignIn successful | Scopes: %s', scopes?.join(' '));
|
|
124
129
|
const authorizationCodeRequest = new oauth2_server_1.Request(context.request);
|
|
125
130
|
authorizationCodeRequest.body = {
|
|
126
131
|
client_id: signInRequest.clientId, // eslint-disable-line @typescript-eslint/naming-convention
|
|
127
132
|
response_type: 'code', // eslint-disable-line @typescript-eslint/naming-convention
|
|
128
133
|
grant_type: 'authorization_code', // eslint-disable-line @typescript-eslint/naming-convention
|
|
129
|
-
scope: '
|
|
134
|
+
scope: scopes && scopes.length > 0 ? scopes.join(' ') : '',
|
|
130
135
|
access_token: tokenValue, // eslint-disable-line @typescript-eslint/naming-convention
|
|
131
136
|
redirect_uri: redirectUrl, // eslint-disable-line @typescript-eslint/naming-convention
|
|
132
137
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth2.service.js","sourceRoot":"","sources":["../../../../src/components/authenticate/services/oauth2.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAsD;AACtD,qCAA2C;AAC3C,uCAA6E;AAC7E,2CAAgE;AAChE,yCAAsD;AAEtD,6DAAqE;AAErE,8CAA8C;AAC9C,sCAA0E;AAC1E,wDAAmD;AACnD,kDAAyD;AAEzD,IAAa,aAAa,qBAA1B,MAAa,aAAc,SAAQ,sBAAW;IAI5C,YAEE,WAAoC,EACK,OAA8B,EAEvE,sBAAsD;QAEtD,KAAK,CAAC,EAAE,KAAK,EAAE,eAAa,CAAC,IAAI,EAAE,CAAC,CAAC;QAL7B,gBAAW,GAAX,WAAW,CAAiB;QACa,YAAO,GAAP,OAAO,CAAe;QAE/D,2BAAsB,GAAtB,sBAAsB,CAAwB;QARhD,QAAG,GAAG,aAAG,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAY7C,IAAI,CAAC,cAAc,GAAG,IAAI,6BAAmB,CAAC;YAC5C,IAAI,EAAE,eAAe;YACrB,cAAc,EAAE,EAAE;SACnB,CAAC,CAAC;IACL,CAAC;IAED,mFAAmF;IACnF,kBAAkB,CAAC,IAAgD;QACjE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QACxC,MAAM,iBAAiB,GAAG,gCAAsB,CAAC,GAAG,CAClD,wBAAe,CAAC,0BAA0B,CAC3C,CAAC;QACF,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,iBAAiB,CAAC,CAAC;IACjF,CAAC;IAED,mFAAmF;IACnF,kBAAkB,CAAC,IAAuB;QACxC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,MAAM,iBAAiB,GAAG,gCAAsB,CAAC,GAAG,CAClD,wBAAe,CAAC,0BAA0B,CAC3C,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEpF,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kDAAkD,EAAE,KAAK,CAAC,CAAC;YAC7E,MAAM,IAAA,oBAAQ,EAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IACpC,CAAC;IAED,mFAAmF;IACnF,oBAAoB,CAAC,
|
|
1
|
+
{"version":3,"file":"oauth2.service.js","sourceRoot":"","sources":["../../../../src/components/authenticate/services/oauth2.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
<br />
|
|
24
24
|
|
|
25
25
|
<% if (payload.c) { %>
|
|
26
|
-
<form method="post" action=<%- payload.action %>>
|
|
26
|
+
<form id="authForm" method="post" action=<%- payload.action %>>
|
|
27
27
|
<p>
|
|
28
28
|
<label for="username">Username:</label>
|
|
29
29
|
<input type="text" name="username" />
|
|
@@ -37,8 +37,12 @@
|
|
|
37
37
|
<input type="hidden" name="token" value=<%- payload.c %>>
|
|
38
38
|
<input type="hidden" name="redirectUrl" value=<%- payload.r %>>
|
|
39
39
|
|
|
40
|
+
<% if (payload.scope) { %>
|
|
41
|
+
<input type="hidden" name="scope" value="<%- payload.scope %>">
|
|
42
|
+
<% } %>
|
|
43
|
+
|
|
40
44
|
<p>
|
|
41
|
-
<input type="submit" value="Login">
|
|
45
|
+
<input type="submit" id="submitBtn" value="Login">
|
|
42
46
|
</p>
|
|
43
47
|
</form>
|
|
44
48
|
<% } %>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC"}
|
package/dist/components/index.js
CHANGED
|
@@ -19,6 +19,7 @@ __exportStar(require("./authorize"), exports);
|
|
|
19
19
|
__exportStar(require("./crash-report"), exports);
|
|
20
20
|
__exportStar(require("./grpc"), exports);
|
|
21
21
|
__exportStar(require("./health-check"), exports);
|
|
22
|
+
__exportStar(require("./mail"), exports);
|
|
22
23
|
__exportStar(require("./migration"), exports);
|
|
23
24
|
__exportStar(require("./socket-io"), exports);
|
|
24
25
|
__exportStar(require("./static-asset"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,8CAA4B;AAC5B,iDAA+B;AAC/B,yCAAuB;AACvB,iDAA+B;AAC/B,8CAA4B;AAC5B,8CAA4B;AAC5B,iDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,8CAA4B;AAC5B,iDAA+B;AAC/B,yCAAuB;AACvB,iDAA+B;AAC/B,yCAAuB;AACvB,8CAA4B;AAC5B,8CAA4B;AAC5B,iDAA+B"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export declare class MailDefaults {
|
|
2
|
+
static readonly BATCH_CONCURRENCY = 5;
|
|
3
|
+
}
|
|
4
|
+
export declare class MailErrorCodes {
|
|
5
|
+
static readonly INVALID_CONFIGURATION = "MAIL_INVALID_CONFIGURATION";
|
|
6
|
+
static readonly SEND_FAILED = "MAIL_SEND_FAILED";
|
|
7
|
+
static readonly VERIFICATION_FAILED = "MAIL_VERIFICATION_FAILED";
|
|
8
|
+
static readonly INVALID_RECIPIENT = "MAIL_INVALID_RECIPIENT";
|
|
9
|
+
static readonly BATCH_SEND_FAILED = "MAIL_BATCH_SEND_FAILED";
|
|
10
|
+
static readonly TEMPLATE_NOT_FOUND = "TEMPLATE_NOT_FOUND";
|
|
11
|
+
}
|
|
12
|
+
export declare class MailQueueExecutorTypes {
|
|
13
|
+
static readonly DIRECT = "direct";
|
|
14
|
+
static readonly INTERNAL_QUEUE = "internal-queue";
|
|
15
|
+
static readonly BULLMQ = "bullmq";
|
|
16
|
+
static readonly SCHEME_SET: Set<string>;
|
|
17
|
+
static isValid(value: string): boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare class BullMQExecutorModes {
|
|
20
|
+
static readonly QUEUE_ONLY = "queue-only";
|
|
21
|
+
static readonly WORKER_ONLY = "worker-only";
|
|
22
|
+
static readonly BOTH = "both";
|
|
23
|
+
static readonly MODE_SET: Set<string>;
|
|
24
|
+
static isValid(value: string): boolean;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/components/mail/common/constants.ts"],"names":[],"mappings":"AAAA,qBAAa,YAAY;IACvB,MAAM,CAAC,QAAQ,CAAC,iBAAiB,KAAK;CACvC;AAED,qBAAa,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,qBAAqB,gCAAgC;IACrE,MAAM,CAAC,QAAQ,CAAC,WAAW,sBAAsB;IACjD,MAAM,CAAC,QAAQ,CAAC,mBAAmB,8BAA8B;IACjE,MAAM,CAAC,QAAQ,CAAC,iBAAiB,4BAA4B;IAC7D,MAAM,CAAC,QAAQ,CAAC,iBAAiB,4BAA4B;IAC7D,MAAM,CAAC,QAAQ,CAAC,kBAAkB,wBAAwB;CAC3D;AAED,qBAAa,sBAAsB;IACjC,MAAM,CAAC,QAAQ,CAAC,MAAM,YAAY;IAClC,MAAM,CAAC,QAAQ,CAAC,cAAc,oBAAoB;IAClD,MAAM,CAAC,QAAQ,CAAC,MAAM,YAAY;IAElC,MAAM,CAAC,QAAQ,CAAC,UAAU,cAAoE;IAC9F,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGvC;AAED,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,UAAU,gBAAgB;IAC1C,MAAM,CAAC,QAAQ,CAAC,WAAW,iBAAiB;IAC5C,MAAM,CAAC,QAAQ,CAAC,IAAI,UAAU;IAE9B,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAmE;IAC3F,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGvC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BullMQExecutorModes = exports.MailQueueExecutorTypes = exports.MailErrorCodes = exports.MailDefaults = void 0;
|
|
4
|
+
class MailDefaults {
|
|
5
|
+
static { this.BATCH_CONCURRENCY = 5; }
|
|
6
|
+
}
|
|
7
|
+
exports.MailDefaults = MailDefaults;
|
|
8
|
+
class MailErrorCodes {
|
|
9
|
+
static { this.INVALID_CONFIGURATION = 'MAIL_INVALID_CONFIGURATION'; }
|
|
10
|
+
static { this.SEND_FAILED = 'MAIL_SEND_FAILED'; }
|
|
11
|
+
static { this.VERIFICATION_FAILED = 'MAIL_VERIFICATION_FAILED'; }
|
|
12
|
+
static { this.INVALID_RECIPIENT = 'MAIL_INVALID_RECIPIENT'; }
|
|
13
|
+
static { this.BATCH_SEND_FAILED = 'MAIL_BATCH_SEND_FAILED'; }
|
|
14
|
+
static { this.TEMPLATE_NOT_FOUND = 'TEMPLATE_NOT_FOUND'; }
|
|
15
|
+
}
|
|
16
|
+
exports.MailErrorCodes = MailErrorCodes;
|
|
17
|
+
class MailQueueExecutorTypes {
|
|
18
|
+
static { this.DIRECT = 'direct'; }
|
|
19
|
+
static { this.INTERNAL_QUEUE = 'internal-queue'; }
|
|
20
|
+
static { this.BULLMQ = 'bullmq'; }
|
|
21
|
+
static { this.SCHEME_SET = new Set([this.DIRECT, this.INTERNAL_QUEUE, this.BULLMQ]); }
|
|
22
|
+
static isValid(value) {
|
|
23
|
+
return this.SCHEME_SET.has(value);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.MailQueueExecutorTypes = MailQueueExecutorTypes;
|
|
27
|
+
class BullMQExecutorModes {
|
|
28
|
+
static { this.QUEUE_ONLY = 'queue-only'; }
|
|
29
|
+
static { this.WORKER_ONLY = 'worker-only'; }
|
|
30
|
+
static { this.BOTH = 'both'; }
|
|
31
|
+
static { this.MODE_SET = new Set([this.QUEUE_ONLY, this.WORKER_ONLY, this.BOTH]); }
|
|
32
|
+
static isValid(value) {
|
|
33
|
+
return this.MODE_SET.has(value);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.BullMQExecutorModes = BullMQExecutorModes;
|
|
37
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/components/mail/common/constants.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;aACP,sBAAiB,GAAG,CAAC,CAAC;;AADxC,oCAEC;AAED,MAAa,cAAc;aACT,0BAAqB,GAAG,4BAA4B,CAAC;aACrD,gBAAW,GAAG,kBAAkB,CAAC;aACjC,wBAAmB,GAAG,0BAA0B,CAAC;aACjD,sBAAiB,GAAG,wBAAwB,CAAC;aAC7C,sBAAiB,GAAG,wBAAwB,CAAC;aAC7C,uBAAkB,GAAG,oBAAoB,CAAC;;AAN5D,wCAOC;AAED,MAAa,sBAAsB;aACjB,WAAM,GAAG,QAAQ,CAAC;aAClB,mBAAc,GAAG,gBAAgB,CAAC;aAClC,WAAM,GAAG,QAAQ,CAAC;aAElB,eAAU,GAAG,IAAI,GAAG,CAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9F,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AARH,wDASC;AAED,MAAa,mBAAmB;aACd,eAAU,GAAG,YAAY,CAAC;aAC1B,gBAAW,GAAG,aAAa,CAAC;aAC5B,SAAI,GAAG,MAAM,CAAC;aAEd,aAAQ,GAAG,IAAI,GAAG,CAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3F,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;;AARH,kDASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/mail/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
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("./constants"), exports);
|
|
18
|
+
__exportStar(require("./keys"), exports);
|
|
19
|
+
__exportStar(require("./types"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/mail/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,yCAAuB;AACvB,0CAAwB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BindingKey } from '@loopback/core';
|
|
2
|
+
import { TGetMailQueueExecutorFn, TGetMailTransportFn } from '../providers';
|
|
3
|
+
import { IMailQueueExecutor, IMailQueueExecutorConfig, IMailService, IMailTemplateEngine, IMailTransport, IVerificationCodeGenerator, IVerificationDataGenerator, IVerificationTokenGenerator, TMailOptions } from './types';
|
|
4
|
+
export declare class MailKeys {
|
|
5
|
+
static readonly MAIL_OPTIONS: BindingKey<TMailOptions>;
|
|
6
|
+
static readonly MAIL_QUEUE_EXECUTOR_CONFIG: BindingKey<IMailQueueExecutorConfig>;
|
|
7
|
+
static readonly MAIL_TRANSPORT_PROVIDER: BindingKey<TGetMailTransportFn>;
|
|
8
|
+
static readonly MAIL_TRANSPORT_INSTANCE: BindingKey<IMailTransport>;
|
|
9
|
+
static readonly MAIL_TEMPLATE_ENGINE: BindingKey<IMailTemplateEngine>;
|
|
10
|
+
static readonly MAIL_SERVICE: BindingKey<IMailService>;
|
|
11
|
+
static readonly MAIL_VERIFICATION_CODE_GENERATOR: BindingKey<IVerificationCodeGenerator>;
|
|
12
|
+
static readonly MAIL_VERIFICATION_TOKEN_GENERATOR: BindingKey<IVerificationTokenGenerator>;
|
|
13
|
+
static readonly MAIL_VERIFICATION_DATA_GENERATOR: BindingKey<IVerificationDataGenerator>;
|
|
14
|
+
static readonly MAIL_QUEUE_EXECUTOR_PROVIDER: BindingKey<TGetMailQueueExecutorFn>;
|
|
15
|
+
static readonly MAIL_QUEUE_EXECUTOR_INSTANCE: BindingKey<IMailQueueExecutor>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../../src/components/mail/common/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,0BAA0B,EAC1B,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAQ;IAEnB,MAAM,CAAC,QAAQ,CAAC,YAAY,2BAAmE;IAC/F,MAAM,CAAC,QAAQ,CAAC,0BAA0B,uCAExC;IAGF,MAAM,CAAC,QAAQ,CAAC,uBAAuB,kCAErC;IACF,MAAM,CAAC,QAAQ,CAAC,uBAAuB,6BAErC;IAGF,MAAM,CAAC,QAAQ,CAAC,oBAAoB,kCAElC;IACF,MAAM,CAAC,QAAQ,CAAC,YAAY,2BAAmE;IAG/F,MAAM,CAAC,QAAQ,CAAC,gCAAgC,yCAE9C;IACF,MAAM,CAAC,QAAQ,CAAC,iCAAiC,0CAG7C;IACJ,MAAM,CAAC,QAAQ,CAAC,gCAAgC,yCAE9C;IAGF,MAAM,CAAC,QAAQ,CAAC,4BAA4B,sCAE1C;IACF,MAAM,CAAC,QAAQ,CAAC,4BAA4B,iCAE1C;CACH"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MailKeys = void 0;
|
|
4
|
+
const core_1 = require("@loopback/core");
|
|
5
|
+
class MailKeys {
|
|
6
|
+
// Options & Configs
|
|
7
|
+
static { this.MAIL_OPTIONS = core_1.BindingKey.create('@app/components/mail/options'); }
|
|
8
|
+
static { this.MAIL_QUEUE_EXECUTOR_CONFIG = core_1.BindingKey.create('@app/components/mail/queue/executor-config'); }
|
|
9
|
+
// Transporter
|
|
10
|
+
static { this.MAIL_TRANSPORT_PROVIDER = core_1.BindingKey.create('@app/components/mail/transport-provider'); }
|
|
11
|
+
static { this.MAIL_TRANSPORT_INSTANCE = core_1.BindingKey.create('@app/components/mail/transport-instance'); }
|
|
12
|
+
// Services
|
|
13
|
+
static { this.MAIL_TEMPLATE_ENGINE = core_1.BindingKey.create('@app/components/mail/services/template-engine'); }
|
|
14
|
+
static { this.MAIL_SERVICE = core_1.BindingKey.create('@app/components/mail/service'); }
|
|
15
|
+
// Generators
|
|
16
|
+
static { this.MAIL_VERIFICATION_CODE_GENERATOR = core_1.BindingKey.create('@app/components/mail/verification/code-generator'); }
|
|
17
|
+
static { this.MAIL_VERIFICATION_TOKEN_GENERATOR = core_1.BindingKey.create('@app/components/mail/verification/token-generator'); }
|
|
18
|
+
static { this.MAIL_VERIFICATION_DATA_GENERATOR = core_1.BindingKey.create('@app/components/mail/verification/data-generator'); }
|
|
19
|
+
// Queue
|
|
20
|
+
static { this.MAIL_QUEUE_EXECUTOR_PROVIDER = core_1.BindingKey.create('@app/components/mail/queue-executor-provider'); }
|
|
21
|
+
static { this.MAIL_QUEUE_EXECUTOR_INSTANCE = core_1.BindingKey.create('@app/components/mail/queue-executor-instance'); }
|
|
22
|
+
}
|
|
23
|
+
exports.MailKeys = MailKeys;
|
|
24
|
+
//# sourceMappingURL=keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../src/components/mail/common/keys.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAc5C,MAAa,QAAQ;IACnB,oBAAoB;aACJ,iBAAY,GAAG,iBAAU,CAAC,MAAM,CAAe,8BAA8B,CAAC,CAAC;aAC/E,+BAA0B,GAAG,iBAAU,CAAC,MAAM,CAC5D,4CAA4C,CAC7C,CAAC;IAEF,cAAc;aACE,4BAAuB,GAAG,iBAAU,CAAC,MAAM,CACzD,yCAAyC,CAC1C,CAAC;aACc,4BAAuB,GAAG,iBAAU,CAAC,MAAM,CACzD,yCAAyC,CAC1C,CAAC;IAEF,WAAW;aACK,yBAAoB,GAAG,iBAAU,CAAC,MAAM,CACtD,+CAA+C,CAChD,CAAC;aACc,iBAAY,GAAG,iBAAU,CAAC,MAAM,CAAe,8BAA8B,CAAC,CAAC;IAE/F,aAAa;aACG,qCAAgC,GAAG,iBAAU,CAAC,MAAM,CAClE,kDAAkD,CACnD,CAAC;aACc,sCAAiC,GAC/C,iBAAU,CAAC,MAAM,CACf,mDAAmD,CACpD,CAAC;aACY,qCAAgC,GAAG,iBAAU,CAAC,MAAM,CAClE,kDAAkD,CACnD,CAAC;IAEF,QAAQ;aACQ,iCAA4B,GAAG,iBAAU,CAAC,MAAM,CAC9D,8CAA8C,CAC/C,CAAC;aACc,iCAA4B,GAAG,iBAAU,CAAC,MAAM,CAC9D,8CAA8C,CAC/C,CAAC;;AAvCJ,4BAwCC"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import type { AnyType, TConstValue } from '../../../common';
|
|
2
|
+
import { Readable } from 'node:stream';
|
|
3
|
+
import SMTPTransport from 'nodemailer/lib/smtp-transport';
|
|
4
|
+
import { IBullMQMailExecutorOpts, IInternalQueueMailExecutorOpts } from '../helpers';
|
|
5
|
+
import { MailQueueExecutorTypes } from './constants';
|
|
6
|
+
export declare enum EMailProvider {
|
|
7
|
+
NODEMAILER = "nodemailer",
|
|
8
|
+
MAILGUN = "mailgun",
|
|
9
|
+
CUSTOM = "custom"
|
|
10
|
+
}
|
|
11
|
+
export interface IBaseMailOptions {
|
|
12
|
+
from?: string;
|
|
13
|
+
fromName?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface INodemailerMailOptions extends IBaseMailOptions {
|
|
16
|
+
provider: EMailProvider.NODEMAILER;
|
|
17
|
+
config: TNodemailerConfig;
|
|
18
|
+
}
|
|
19
|
+
export interface IMailgunMailOptions extends IBaseMailOptions {
|
|
20
|
+
provider: EMailProvider.MAILGUN;
|
|
21
|
+
config: TMailgunConfig;
|
|
22
|
+
}
|
|
23
|
+
export interface ICustomMailOptions extends IBaseMailOptions {
|
|
24
|
+
provider: EMailProvider.CUSTOM;
|
|
25
|
+
config: IMailTransport;
|
|
26
|
+
}
|
|
27
|
+
export interface IGenericMailOptions extends IBaseMailOptions {
|
|
28
|
+
provider: string;
|
|
29
|
+
config: Record<string, AnyType>;
|
|
30
|
+
}
|
|
31
|
+
export type TMailOptions = INodemailerMailOptions | IMailgunMailOptions | ICustomMailOptions | IGenericMailOptions;
|
|
32
|
+
export type TNodemailerConfig = SMTPTransport | SMTPTransport.Options | string;
|
|
33
|
+
export type TMailgunConfig = AnyType & {
|
|
34
|
+
domain: string;
|
|
35
|
+
};
|
|
36
|
+
export interface IMailAttachment {
|
|
37
|
+
filename?: string;
|
|
38
|
+
contentType?: string;
|
|
39
|
+
path?: string;
|
|
40
|
+
content?: string | Buffer | Readable;
|
|
41
|
+
cid?: string;
|
|
42
|
+
[key: string]: any;
|
|
43
|
+
}
|
|
44
|
+
export interface IMailMessage {
|
|
45
|
+
from?: string;
|
|
46
|
+
to: string | string[];
|
|
47
|
+
cc?: string | string[];
|
|
48
|
+
bcc?: string | string[];
|
|
49
|
+
replyTo?: string;
|
|
50
|
+
subject: string;
|
|
51
|
+
text?: string;
|
|
52
|
+
html?: string;
|
|
53
|
+
attachments?: IMailAttachment[];
|
|
54
|
+
headers?: Record<string, string>;
|
|
55
|
+
requireValidate?: boolean;
|
|
56
|
+
[key: string]: any;
|
|
57
|
+
}
|
|
58
|
+
export interface IMailSendResult {
|
|
59
|
+
success: boolean;
|
|
60
|
+
messageId?: string;
|
|
61
|
+
response?: any;
|
|
62
|
+
error?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface IMailTransport {
|
|
65
|
+
send(message: IMailMessage): Promise<IMailSendResult>;
|
|
66
|
+
verify(): Promise<boolean>;
|
|
67
|
+
close?(): Promise<void>;
|
|
68
|
+
}
|
|
69
|
+
export interface IMailService {
|
|
70
|
+
send(message: IMailMessage): Promise<IMailSendResult>;
|
|
71
|
+
sendBatch(messages: IMailMessage[], options?: {
|
|
72
|
+
concurrency?: number;
|
|
73
|
+
}): Promise<IMailSendResult[]>;
|
|
74
|
+
sendTemplate(opts: {
|
|
75
|
+
templateName: string;
|
|
76
|
+
data: Record<string, any>;
|
|
77
|
+
recipients: string | string[];
|
|
78
|
+
options?: Partial<IMailMessage>;
|
|
79
|
+
}): Promise<IMailSendResult>;
|
|
80
|
+
verify(): Promise<boolean>;
|
|
81
|
+
}
|
|
82
|
+
export interface ITemplate {
|
|
83
|
+
name: string;
|
|
84
|
+
content?: string;
|
|
85
|
+
render?: (data: Record<string, AnyType>) => string;
|
|
86
|
+
subject?: string;
|
|
87
|
+
description?: string;
|
|
88
|
+
}
|
|
89
|
+
export interface IMailTemplateEngine {
|
|
90
|
+
render(opts: {
|
|
91
|
+
templateData?: string;
|
|
92
|
+
templateName?: string;
|
|
93
|
+
data: Record<string, any>;
|
|
94
|
+
requireValidate?: boolean;
|
|
95
|
+
}): string;
|
|
96
|
+
registerTemplate(opts: {
|
|
97
|
+
name: string;
|
|
98
|
+
content: string;
|
|
99
|
+
}): void;
|
|
100
|
+
validateTemplateData(opts: {
|
|
101
|
+
template: string;
|
|
102
|
+
data: Record<string, any>;
|
|
103
|
+
}): {
|
|
104
|
+
isValid: boolean;
|
|
105
|
+
missingKeys: string[];
|
|
106
|
+
allKeys: string[];
|
|
107
|
+
};
|
|
108
|
+
getTemplate(name: string): ITemplate | undefined;
|
|
109
|
+
listTemplates(): ITemplate[];
|
|
110
|
+
hasTemplate(name: string): boolean;
|
|
111
|
+
removeTemplate(name: string): boolean;
|
|
112
|
+
}
|
|
113
|
+
export interface IVerificationGenerationOptions {
|
|
114
|
+
codeLength: number;
|
|
115
|
+
tokenBytes: number;
|
|
116
|
+
codeExpiryMinutes: number;
|
|
117
|
+
tokenExpiryHours: number;
|
|
118
|
+
}
|
|
119
|
+
export interface IVerificationData {
|
|
120
|
+
verificationCode: string;
|
|
121
|
+
codeGeneratedAt: string;
|
|
122
|
+
codeExpiresAt: string;
|
|
123
|
+
codeAttempts: number;
|
|
124
|
+
verificationToken: string;
|
|
125
|
+
tokenGeneratedAt: string;
|
|
126
|
+
tokenExpiresAt: string;
|
|
127
|
+
lastCodeSentAt: string;
|
|
128
|
+
}
|
|
129
|
+
export interface IVerificationCodeGenerator {
|
|
130
|
+
generateCode(length: number): string;
|
|
131
|
+
}
|
|
132
|
+
export interface IVerificationTokenGenerator {
|
|
133
|
+
generateToken(bytes: number): string;
|
|
134
|
+
}
|
|
135
|
+
export interface IVerificationDataGenerator {
|
|
136
|
+
generateVerificationData(options: IVerificationGenerationOptions): IVerificationData;
|
|
137
|
+
}
|
|
138
|
+
export interface IMailQueueOptions {
|
|
139
|
+
priority?: number;
|
|
140
|
+
delay?: number;
|
|
141
|
+
attempts?: number;
|
|
142
|
+
backoff?: {
|
|
143
|
+
type: 'fixed' | 'exponential';
|
|
144
|
+
delay: number;
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
export interface IMailProcessorResult {
|
|
148
|
+
success: boolean;
|
|
149
|
+
message: string;
|
|
150
|
+
expiresInMinutes: number;
|
|
151
|
+
nextResendAt?: string;
|
|
152
|
+
}
|
|
153
|
+
export interface IMailQueueResult {
|
|
154
|
+
jobId?: string;
|
|
155
|
+
queued: boolean;
|
|
156
|
+
message: string;
|
|
157
|
+
result?: IMailProcessorResult;
|
|
158
|
+
}
|
|
159
|
+
export interface IMailQueueExecutor {
|
|
160
|
+
enqueueVerificationEmail(email: string, options?: IMailQueueOptions): Promise<IMailQueueResult>;
|
|
161
|
+
setProcessor(processor: (email: string) => Promise<IMailProcessorResult>): void;
|
|
162
|
+
}
|
|
163
|
+
export interface IMailQueueExecutorConfig {
|
|
164
|
+
type: TConstValue<typeof MailQueueExecutorTypes>;
|
|
165
|
+
internalQueue?: IInternalQueueMailExecutorOpts;
|
|
166
|
+
bullmq?: IBullMQMailExecutorOpts;
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/mail/common/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EMailProvider = void 0;
|
|
4
|
+
var EMailProvider;
|
|
5
|
+
(function (EMailProvider) {
|
|
6
|
+
EMailProvider["NODEMAILER"] = "nodemailer";
|
|
7
|
+
EMailProvider["MAILGUN"] = "mailgun";
|
|
8
|
+
EMailProvider["CUSTOM"] = "custom";
|
|
9
|
+
})(EMailProvider || (exports.EMailProvider = EMailProvider = {}));
|
|
10
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/mail/common/types.ts"],"names":[],"mappings":";;;AAMA,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,0CAAyB,CAAA;IACzB,oCAAmB,CAAA;IACnB,kCAAiB,CAAA;AACnB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BaseApplication } from '../../base/applications';
|
|
2
|
+
import { BaseComponent } from '../../base/base.component';
|
|
3
|
+
export declare class MailComponent extends BaseComponent {
|
|
4
|
+
protected application: BaseApplication;
|
|
5
|
+
constructor(application: BaseApplication);
|
|
6
|
+
private initGenerators;
|
|
7
|
+
private initProviders;
|
|
8
|
+
private initServices;
|
|
9
|
+
private createAndBindInstances;
|
|
10
|
+
init(): void;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/mail/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAatD,qBAAa,aAAc,SAAQ,aAAa;IAG5C,SAAS,CAAC,WAAW,EAAE,eAAe;gBAA5B,WAAW,EAAE,eAAe;IAMxC,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,sBAAsB;IAkB9B,IAAI,IAAI,IAAI;CAmBb"}
|