@nauth-toolkit/sms-aws-sns 0.1.10 → 0.1.13
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SMSProvider } from '@nauth-toolkit/core';
|
|
1
|
+
import { SMSProvider, SMSTemplateEngine, SMSTemplateVariables } from '@nauth-toolkit/core';
|
|
2
2
|
import { AWSSMSConfig } from './aws-sms-config.interface';
|
|
3
3
|
export declare class AWSSMSProvider implements SMSProvider {
|
|
4
4
|
private readonly logger;
|
|
@@ -6,8 +6,12 @@ export declare class AWSSMSProvider implements SMSProvider {
|
|
|
6
6
|
private readonly config;
|
|
7
7
|
private SNSClientClass;
|
|
8
8
|
private PublishCommandClass;
|
|
9
|
+
private templateEngine?;
|
|
10
|
+
private globalVariables;
|
|
9
11
|
constructor(config: AWSSMSConfig);
|
|
10
|
-
|
|
12
|
+
setTemplateEngine(engine: SMSTemplateEngine): void;
|
|
13
|
+
setGlobalVariables(variables: SMSTemplateVariables): void;
|
|
14
|
+
sendOTP(phone: string, code: string, templateType?: string, variables?: Record<string, unknown>): Promise<void>;
|
|
11
15
|
sendVerificationCode(phone: string, code: string): Promise<void>;
|
|
12
16
|
private sendSMS;
|
|
13
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aws-sms.provider.d.ts","sourceRoot":"","sources":["../src/aws-sms.provider.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"aws-sms.provider.d.ts","sourceRoot":"","sources":["../src/aws-sms.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAIX,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAuB1D,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC,OAAO,CAAC,cAAc,CAAa;IAEnC,OAAO,CAAC,mBAAmB,CAAa;IAKxC,OAAO,CAAC,cAAc,CAAC,CAAoB;IAK3C,OAAO,CAAC,eAAe,CAA4B;gBAEvC,MAAM,EAAE,YAAY;IAoDhC,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IASlD,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI;IAuCnD,OAAO,CACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC;IA4CV,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAsBxD,OAAO;CAiEtB"}
|
package/dist/aws-sms.provider.js
CHANGED
|
@@ -8,6 +8,8 @@ class AWSSMSProvider {
|
|
|
8
8
|
config;
|
|
9
9
|
SNSClientClass = null;
|
|
10
10
|
PublishCommandClass = null;
|
|
11
|
+
templateEngine;
|
|
12
|
+
globalVariables = {};
|
|
11
13
|
constructor(config) {
|
|
12
14
|
this.logger = new core_1.NAuthLogger();
|
|
13
15
|
this.config = config;
|
|
@@ -35,8 +37,33 @@ class AWSSMSProvider {
|
|
|
35
37
|
this.snsClient = new this.SNSClientClass(clientConfig);
|
|
36
38
|
this.logger.log(`AWS SMS Provider initialized (region: ${config.region})`);
|
|
37
39
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
+
setTemplateEngine(engine) {
|
|
41
|
+
this.templateEngine = engine;
|
|
42
|
+
}
|
|
43
|
+
setGlobalVariables(variables) {
|
|
44
|
+
this.globalVariables = variables || {};
|
|
45
|
+
}
|
|
46
|
+
async sendOTP(phone, code, templateType, variables) {
|
|
47
|
+
let message;
|
|
48
|
+
if (this.templateEngine && templateType) {
|
|
49
|
+
try {
|
|
50
|
+
const allVariables = {
|
|
51
|
+
...this.globalVariables,
|
|
52
|
+
code,
|
|
53
|
+
...variables,
|
|
54
|
+
};
|
|
55
|
+
const template = await this.templateEngine.render(templateType, allVariables);
|
|
56
|
+
message = template.content;
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
60
|
+
this.logger.error(`Failed to render SMS template: ${errorMessage}`);
|
|
61
|
+
message = `Your verification code is: ${code}`;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
message = `Your verification code is: ${code}`;
|
|
66
|
+
}
|
|
40
67
|
await this.sendSMS(phone, message);
|
|
41
68
|
}
|
|
42
69
|
async sendVerificationCode(phone, code) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aws-sms.provider.js","sourceRoot":"","sources":["../src/aws-sms.provider.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"aws-sms.provider.js","sourceRoot":"","sources":["../src/aws-sms.provider.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nauth-toolkit/sms-aws-sns",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"description": "AWS SNS SMS provider for nauth-toolkit",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"@aws-sdk/client-sns": "^3.0.0"
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
20
|
-
"@nauth-toolkit/core": "^0.1.
|
|
20
|
+
"@nauth-toolkit/core": "^0.1.13"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@types/jest": "^29.5.0",
|