@awell-health/awell-extensions 1.1.62 → 1.1.64
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/extensions/markdown.json +1 -1
- package/dist/extensions/rest/actions/post/post.js +72 -28
- package/dist/extensions/rest/actions/post/post.js.map +1 -1
- package/dist/extensions/rest/actions/post/post.test.js +49 -0
- package/dist/extensions/rest/actions/post/post.test.js.map +1 -1
- package/dist/extensions/rest/lib/errors.d.ts +6 -0
- package/dist/extensions/rest/lib/errors.js +16 -0
- package/dist/extensions/rest/lib/errors.js.map +1 -0
- package/dist/extensions/sfdc/actions/createLead/createLead.js +6 -8
- package/dist/extensions/sfdc/actions/createLead/createLead.js.map +1 -1
- package/dist/extensions/sfdc/actions/updateLead/updateLead.js +6 -8
- package/dist/extensions/sfdc/actions/updateLead/updateLead.js.map +1 -1
- package/dist/extensions/sfdc/api/client.js +3 -6
- package/dist/extensions/sfdc/api/client.js.map +1 -1
- package/dist/extensions/sfdc/lib/errors.d.ts +9 -4
- package/dist/extensions/sfdc/lib/errors.js +18 -24
- package/dist/extensions/sfdc/lib/errors.js.map +1 -1
- package/dist/extensions/twilio/lib/appendOptOutLanguage.d.ts +3 -0
- package/dist/extensions/twilio/lib/appendOptOutLanguage.js +18 -0
- package/dist/extensions/twilio/lib/appendOptOutLanguage.js.map +1 -0
- package/dist/extensions/twilio/lib/errors.d.ts +9 -0
- package/dist/extensions/twilio/lib/errors.js +23 -0
- package/dist/extensions/twilio/lib/errors.js.map +1 -0
- package/dist/extensions/twilio/lib/index.d.ts +1 -0
- package/dist/extensions/twilio/lib/index.js +6 -0
- package/dist/extensions/twilio/lib/index.js.map +1 -0
- package/dist/extensions/twilio/settings.d.ts +30 -0
- package/dist/extensions/twilio/settings.js +39 -0
- package/dist/extensions/twilio/settings.js.map +1 -1
- package/dist/extensions/twilio/tests/settings.test.d.ts +1 -0
- package/dist/extensions/twilio/tests/settings.test.js +24 -0
- package/dist/extensions/twilio/tests/settings.test.js.map +1 -0
- package/dist/extensions/twilio/v2/actions/createFlowExecution/config/actionSchema.d.ts +33 -0
- package/dist/extensions/twilio/v2/actions/getMessages/getMessages.test.js +12 -0
- package/dist/extensions/twilio/v2/actions/getMessages/getMessages.test.js.map +1 -1
- package/dist/extensions/twilio/v2/actions/sendSms/sendSms.js +11 -29
- package/dist/extensions/twilio/v2/actions/sendSms/sendSms.js.map +1 -1
- package/dist/extensions/twilio/v2/actions/sendSms/sendSms.test.js +19 -15
- package/dist/extensions/twilio/v2/actions/sendSms/sendSms.test.js.map +1 -1
- package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.js +11 -30
- package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.js.map +1 -1
- package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.test.js +25 -15
- package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.test.js.map +1 -1
- package/dist/extensions/twilio/v2/actions/sendSmsWithMessagingSid/sendSmsWithMessagingService.js +10 -29
- package/dist/extensions/twilio/v2/actions/sendSmsWithMessagingSid/sendSmsWithMessagingService.js.map +1 -1
- package/dist/extensions/twilio/v2/actions/sendSmsWithMessagingSid/sendSmsWithMessagingService.test.js +19 -15
- package/dist/extensions/twilio/v2/actions/sendSmsWithMessagingSid/sendSmsWithMessagingService.test.js.map +1 -1
- package/package.json +1 -1
@@ -32,11 +32,50 @@ exports.settings = {
|
|
32
32
|
required: false,
|
33
33
|
description: 'The SID of the Messaging Service you want to associate with the Message. If you are not using a Messaging Service but a "from" number, then you can leave this field empty.',
|
34
34
|
},
|
35
|
+
addOptOutLanguage: {
|
36
|
+
label: 'Add opt-out language',
|
37
|
+
key: 'addOptOutLanguage',
|
38
|
+
obfuscated: false,
|
39
|
+
required: false,
|
40
|
+
description: `On by default, set to "Off" if you don't want to add opt-out language to your text messages.`,
|
41
|
+
},
|
42
|
+
optOutLanguage: {
|
43
|
+
label: 'Opt-out language',
|
44
|
+
key: 'optOutLanguage',
|
45
|
+
obfuscated: false,
|
46
|
+
required: false,
|
47
|
+
description: 'The sentence that is appended at the end of your text messages that informs recipients of how they can opt out. If not specified, standard opt-out language is appended to your messages.',
|
48
|
+
},
|
49
|
+
language: {
|
50
|
+
label: 'Language',
|
51
|
+
key: 'language',
|
52
|
+
obfuscated: false,
|
53
|
+
required: false,
|
54
|
+
description: 'The language you are sending text messages in. Possible options: fr, en (default), nl.',
|
55
|
+
},
|
35
56
|
};
|
36
57
|
exports.SettingsValidationSchema = zod_1.z.object({
|
37
58
|
accountSid: zod_1.z.string().min(1, { message: 'Missing Twilio account SID' }),
|
38
59
|
authToken: zod_1.z.string().min(1, { message: 'Missing Twilio auth token' }),
|
39
60
|
fromNumber: extensions_core_1.E164PhoneValidationOptionalSchema,
|
40
61
|
messagingServiceSid: zod_1.z.string().optional(),
|
62
|
+
addOptOutLanguage: zod_1.z
|
63
|
+
.string()
|
64
|
+
.toLowerCase()
|
65
|
+
.optional()
|
66
|
+
.transform((arg) => {
|
67
|
+
if (arg === 'off')
|
68
|
+
return false;
|
69
|
+
return true;
|
70
|
+
}),
|
71
|
+
optOutLanguage: zod_1.z.string().optional(),
|
72
|
+
language: zod_1.z
|
73
|
+
.union([zod_1.z.enum(['en', 'fr', 'nl']), zod_1.z.literal('')])
|
74
|
+
.default('en')
|
75
|
+
.transform((arg) => {
|
76
|
+
if (arg === '')
|
77
|
+
return 'en';
|
78
|
+
return arg;
|
79
|
+
}),
|
41
80
|
});
|
42
81
|
//# sourceMappingURL=settings.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../extensions/twilio/settings.ts"],"names":[],"mappings":";;;AAAA,mEAGsC;AACtC,6BAAwC;AAE3B,QAAA,QAAQ,GAAG;IACtB,UAAU,EAAE;QACV,KAAK,EAAE,aAAa;QACpB,GAAG,EAAE,YAAY;QACjB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,8CAA8C;KAC5D;IACD,SAAS,EAAE;QACT,KAAK,EAAE,YAAY;QACnB,GAAG,EAAE,WAAW;QAChB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,6CAA6C;KAC3D;IACD,UAAU,EAAE;QACV,KAAK,EAAE,eAAe;QACtB,GAAG,EAAE,YAAY;QACjB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,WAAW,EACT,mKAAmK;KACtK;IACD,mBAAmB,EAAE;QACnB,KAAK,EAAE,uBAAuB;QAC9B,GAAG,EAAE,qBAAqB;QAC1B,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,WAAW,EACT,6KAA6K;KAChL;CACgC,CAAA;AAEtB,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACxE,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;IACtE,UAAU,EAAE,mDAAiC;IAC7C,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../extensions/twilio/settings.ts"],"names":[],"mappings":";;;AAAA,mEAGsC;AACtC,6BAAwC;AAE3B,QAAA,QAAQ,GAAG;IACtB,UAAU,EAAE;QACV,KAAK,EAAE,aAAa;QACpB,GAAG,EAAE,YAAY;QACjB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,8CAA8C;KAC5D;IACD,SAAS,EAAE;QACT,KAAK,EAAE,YAAY;QACnB,GAAG,EAAE,WAAW;QAChB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,6CAA6C;KAC3D;IACD,UAAU,EAAE;QACV,KAAK,EAAE,eAAe;QACtB,GAAG,EAAE,YAAY;QACjB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,WAAW,EACT,mKAAmK;KACtK;IACD,mBAAmB,EAAE;QACnB,KAAK,EAAE,uBAAuB;QAC9B,GAAG,EAAE,qBAAqB;QAC1B,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,WAAW,EACT,6KAA6K;KAChL;IACD,iBAAiB,EAAE;QACjB,KAAK,EAAE,sBAAsB;QAC7B,GAAG,EAAE,mBAAmB;QACxB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,8FAA8F;KAC5G;IACD,cAAc,EAAE;QACd,KAAK,EAAE,kBAAkB;QACzB,GAAG,EAAE,gBAAgB;QACrB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,WAAW,EACT,2LAA2L;KAC9L;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,UAAU;QACjB,GAAG,EAAE,UAAU;QACf,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,WAAW,EACT,wFAAwF;KAC3F;CACgC,CAAA;AAEtB,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACxE,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;IACtE,UAAU,EAAE,mDAAiC;IAC7C,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1C,iBAAiB,EAAE,OAAC;SACjB,MAAM,EAAE;SACR,WAAW,EAAE;SACb,QAAQ,EAAE;SACV,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;QACjB,IAAI,GAAG,KAAK,KAAK;YAAE,OAAO,KAAK,CAAA;QAE/B,OAAO,IAAI,CAAA;IACb,CAAC,CAAC;IACJ,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,QAAQ,EAAE,OAAC;SACR,KAAK,CAAC,CAAC,OAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,OAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;SAClD,OAAO,CAAC,IAAI,CAAC;SACb,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;QACjB,IAAI,GAAG,KAAK,EAAE;YAAE,OAAO,IAAI,CAAA;QAE3B,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC;CAC+C,CAAC,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,24 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const settings_1 = require("../settings");
|
4
|
+
describe('Settings', () => {
|
5
|
+
test('Opt out language settings', async () => {
|
6
|
+
const settings = {
|
7
|
+
accountSid: 'AC-accountSid',
|
8
|
+
authToken: 'authToken',
|
9
|
+
addOptOutLanguage: undefined,
|
10
|
+
optOutLanguage: undefined,
|
11
|
+
language: '',
|
12
|
+
};
|
13
|
+
const result = settings_1.SettingsValidationSchema.safeParse(settings);
|
14
|
+
if (!result.success) {
|
15
|
+
console.log(result.error.errors);
|
16
|
+
}
|
17
|
+
expect(result.success).toBe(true);
|
18
|
+
if (result.success) {
|
19
|
+
expect(result.data.addOptOutLanguage).toEqual(true); // Default is true
|
20
|
+
expect(result.data.language).toEqual('en'); // Default is English
|
21
|
+
}
|
22
|
+
});
|
23
|
+
});
|
24
|
+
//# sourceMappingURL=settings.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"settings.test.js","sourceRoot":"","sources":["../../../../extensions/twilio/tests/settings.test.ts"],"names":[],"mappings":";;AAAA,0CAAsD;AAEtD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,QAAQ,GAAG;YACf,UAAU,EAAE,eAAe;YAC3B,SAAS,EAAE,WAAW;YACtB,iBAAiB,EAAE,SAAS;YAC5B,cAAc,EAAE,SAAS;YACzB,QAAQ,EAAE,EAAE;SACb,CAAA;QACD,MAAM,MAAM,GAAG,mCAAwB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAE3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACnB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;SACjC;QAED,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEjC,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA,CAAC,kBAAkB;YACtE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA,CAAC,qBAAqB;SACjE;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
@@ -5,16 +5,25 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
5
5
|
authToken: z.ZodString;
|
6
6
|
fromNumber: z.ZodUnion<[z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, import("libphonenumber-js").PhoneNumber | import("libphonenumber-js").ParseError, string>, import("libphonenumber-js").PhoneNumber | import("libphonenumber-js").ParseError, string>, import("libphonenumber-js").E164Number, string>>, z.ZodEffects<z.ZodLiteral<"">, undefined, "">]>;
|
7
7
|
messagingServiceSid: z.ZodOptional<z.ZodString>;
|
8
|
+
addOptOutLanguage: z.ZodEffects<z.ZodOptional<z.ZodString>, boolean, string | undefined>;
|
9
|
+
optOutLanguage: z.ZodOptional<z.ZodString>;
|
10
|
+
language: z.ZodEffects<z.ZodDefault<z.ZodUnion<[z.ZodEnum<["en", "fr", "nl"]>, z.ZodLiteral<"">]>>, "en" | "fr" | "nl", "" | "en" | "fr" | "nl" | undefined>;
|
8
11
|
}, "strip", z.ZodTypeAny, {
|
12
|
+
language: "en" | "fr" | "nl";
|
9
13
|
accountSid: string;
|
10
14
|
authToken: string;
|
15
|
+
addOptOutLanguage: boolean;
|
11
16
|
fromNumber?: import("libphonenumber-js").E164Number | undefined;
|
12
17
|
messagingServiceSid?: string | undefined;
|
18
|
+
optOutLanguage?: string | undefined;
|
13
19
|
}, {
|
14
20
|
accountSid: string;
|
15
21
|
authToken: string;
|
22
|
+
language?: "" | "en" | "fr" | "nl" | undefined;
|
16
23
|
fromNumber?: string | undefined;
|
17
24
|
messagingServiceSid?: string | undefined;
|
25
|
+
addOptOutLanguage?: string | undefined;
|
26
|
+
optOutLanguage?: string | undefined;
|
18
27
|
}>;
|
19
28
|
fields: z.ZodObject<{
|
20
29
|
recipient: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, import("libphonenumber-js").PhoneNumber | import("libphonenumber-js").ParseError, string>, import("libphonenumber-js").PhoneNumber | import("libphonenumber-js").ParseError, string>, import("libphonenumber-js").E164Number, string>;
|
@@ -36,10 +45,13 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
36
45
|
}>;
|
37
46
|
}, "strip", z.ZodTypeAny, {
|
38
47
|
settings: {
|
48
|
+
language: "en" | "fr" | "nl";
|
39
49
|
accountSid: string;
|
40
50
|
authToken: string;
|
51
|
+
addOptOutLanguage: boolean;
|
41
52
|
fromNumber?: import("libphonenumber-js").E164Number | undefined;
|
42
53
|
messagingServiceSid?: string | undefined;
|
54
|
+
optOutLanguage?: string | undefined;
|
43
55
|
};
|
44
56
|
fields: {
|
45
57
|
recipient: string & {
|
@@ -53,8 +65,11 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
53
65
|
settings: {
|
54
66
|
accountSid: string;
|
55
67
|
authToken: string;
|
68
|
+
language?: "" | "en" | "fr" | "nl" | undefined;
|
56
69
|
fromNumber?: string | undefined;
|
57
70
|
messagingServiceSid?: string | undefined;
|
71
|
+
addOptOutLanguage?: string | undefined;
|
72
|
+
optOutLanguage?: string | undefined;
|
58
73
|
};
|
59
74
|
fields: {
|
60
75
|
recipient: string;
|
@@ -64,10 +79,13 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
64
79
|
};
|
65
80
|
}>, {
|
66
81
|
settings: {
|
82
|
+
language: "en" | "fr" | "nl";
|
67
83
|
accountSid: string;
|
68
84
|
authToken: string;
|
85
|
+
addOptOutLanguage: boolean;
|
69
86
|
fromNumber?: import("libphonenumber-js").E164Number | undefined;
|
70
87
|
messagingServiceSid?: string | undefined;
|
88
|
+
optOutLanguage?: string | undefined;
|
71
89
|
};
|
72
90
|
fields: {
|
73
91
|
recipient: string & {
|
@@ -81,8 +99,11 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
81
99
|
settings: {
|
82
100
|
accountSid: string;
|
83
101
|
authToken: string;
|
102
|
+
language?: "" | "en" | "fr" | "nl" | undefined;
|
84
103
|
fromNumber?: string | undefined;
|
85
104
|
messagingServiceSid?: string | undefined;
|
105
|
+
addOptOutLanguage?: string | undefined;
|
106
|
+
optOutLanguage?: string | undefined;
|
86
107
|
};
|
87
108
|
fields: {
|
88
109
|
recipient: string;
|
@@ -92,10 +113,13 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
92
113
|
};
|
93
114
|
}>, {
|
94
115
|
settings: {
|
116
|
+
language: "en" | "fr" | "nl";
|
95
117
|
accountSid: string;
|
96
118
|
authToken: string;
|
119
|
+
addOptOutLanguage: boolean;
|
97
120
|
fromNumber?: import("libphonenumber-js").E164Number | undefined;
|
98
121
|
messagingServiceSid?: string | undefined;
|
122
|
+
optOutLanguage?: string | undefined;
|
99
123
|
};
|
100
124
|
fields: {
|
101
125
|
parameters: any;
|
@@ -109,8 +133,11 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
109
133
|
settings: {
|
110
134
|
accountSid: string;
|
111
135
|
authToken: string;
|
136
|
+
language?: "" | "en" | "fr" | "nl" | undefined;
|
112
137
|
fromNumber?: string | undefined;
|
113
138
|
messagingServiceSid?: string | undefined;
|
139
|
+
addOptOutLanguage?: string | undefined;
|
140
|
+
optOutLanguage?: string | undefined;
|
114
141
|
};
|
115
142
|
fields: {
|
116
143
|
recipient: string;
|
@@ -120,10 +147,13 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
120
147
|
};
|
121
148
|
}>, {
|
122
149
|
settings: {
|
150
|
+
language: "en" | "fr" | "nl";
|
123
151
|
accountSid: string;
|
124
152
|
authToken: string;
|
153
|
+
addOptOutLanguage: boolean;
|
125
154
|
fromNumber?: import("libphonenumber-js").E164Number | undefined;
|
126
155
|
messagingServiceSid?: string | undefined;
|
156
|
+
optOutLanguage?: string | undefined;
|
127
157
|
};
|
128
158
|
fields: {
|
129
159
|
parameters: any;
|
@@ -137,8 +167,11 @@ export declare const CreateFlowExecutionSchema: z.ZodEffects<z.ZodEffects<z.ZodE
|
|
137
167
|
settings: {
|
138
168
|
accountSid: string;
|
139
169
|
authToken: string;
|
170
|
+
language?: "" | "en" | "fr" | "nl" | undefined;
|
140
171
|
fromNumber?: string | undefined;
|
141
172
|
messagingServiceSid?: string | undefined;
|
173
|
+
addOptOutLanguage?: string | undefined;
|
174
|
+
optOutLanguage?: string | undefined;
|
142
175
|
};
|
143
176
|
fields: {
|
144
177
|
recipient: string;
|
@@ -24,6 +24,9 @@ describe('Get messages action', () => {
|
|
24
24
|
authToken: 'authToken',
|
25
25
|
fromNumber: '+19144542596',
|
26
26
|
messagingServiceSid: undefined,
|
27
|
+
addOptOutLanguage: undefined,
|
28
|
+
optOutLanguage: undefined,
|
29
|
+
language: undefined,
|
27
30
|
},
|
28
31
|
}), onComplete, onError);
|
29
32
|
expect(onComplete).toHaveBeenCalledWith({
|
@@ -50,6 +53,9 @@ describe('Get messages action', () => {
|
|
50
53
|
authToken: 'authToken',
|
51
54
|
fromNumber: '+19144542596',
|
52
55
|
messagingServiceSid: undefined,
|
56
|
+
addOptOutLanguage: undefined,
|
57
|
+
optOutLanguage: undefined,
|
58
|
+
language: undefined,
|
53
59
|
},
|
54
60
|
}), onComplete, onError);
|
55
61
|
expect(onComplete).toHaveBeenCalledWith({
|
@@ -76,6 +82,9 @@ describe('Get messages action', () => {
|
|
76
82
|
authToken: 'authToken',
|
77
83
|
fromNumber: '+19144542596',
|
78
84
|
messagingServiceSid: undefined,
|
85
|
+
addOptOutLanguage: undefined,
|
86
|
+
optOutLanguage: undefined,
|
87
|
+
language: undefined,
|
79
88
|
},
|
80
89
|
}), onComplete, onError);
|
81
90
|
expect(onComplete).toHaveBeenCalledWith({
|
@@ -101,6 +110,9 @@ describe('Get messages action', () => {
|
|
101
110
|
authToken: 'authToken',
|
102
111
|
fromNumber: '+19144542596',
|
103
112
|
messagingServiceSid: undefined,
|
113
|
+
addOptOutLanguage: undefined,
|
114
|
+
optOutLanguage: undefined,
|
115
|
+
language: undefined,
|
104
116
|
},
|
105
117
|
}), onComplete, onError);
|
106
118
|
expect(onComplete).not.toHaveBeenCalledWith();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getMessages.test.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/getMessages/getMessages.test.ts"],"names":[],"mappings":";;AAAA,+CAA2C;AAC3C,oDAA8D;AAE9D,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAEzB,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,CAAC,SAAS,EAAE,CAAA;QACtB,OAAO,CAAC,SAAS,EAAE,CAAA;IACrB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,yBAAW,CAAC,iBAAiB,CACjC,IAAA,2BAAmB,EAAC;YAClB,MAAM,EAAE;gBACN,SAAS,EAAE,cAAc;gBACzB,IAAI,EAAE,cAAc;gBACpB,eAAe,EAAE,YAAY;gBAC7B,gBAAgB,EAAE,SAAS;gBAC3B,SAAS,EAAE,SAAS;gBACpB,SAAS,EAAE,EAAE;aACd;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,eAAe;gBAC3B,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,cAAc;gBAC1B,mBAAmB,EAAE,SAAS;
|
1
|
+
{"version":3,"file":"getMessages.test.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/getMessages/getMessages.test.ts"],"names":[],"mappings":"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"}
|
@@ -5,12 +5,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.sendSms = void 0;
|
7
7
|
const zod_1 = require("zod");
|
8
|
-
const zod_validation_error_1 = require("zod-validation-error");
|
9
8
|
const twilio_1 = __importDefault(require("../../../common/sdk/twilio"));
|
10
9
|
const extensions_core_1 = require("@awell-health/extensions-core");
|
11
10
|
const settings_1 = require("../../../settings");
|
12
11
|
const config_1 = require("./config");
|
13
12
|
const lodash_1 = require("lodash");
|
13
|
+
const lib_1 = require("../../../lib");
|
14
|
+
const errors_1 = require("../../../lib/errors");
|
14
15
|
exports.sendSms = {
|
15
16
|
key: 'sendSms',
|
16
17
|
title: 'Send SMS (with from number)',
|
@@ -20,7 +21,7 @@ exports.sendSms = {
|
|
20
21
|
previewable: false,
|
21
22
|
onActivityCreated: async (payload, onComplete, onError) => {
|
22
23
|
try {
|
23
|
-
const { settings: { accountSid, authToken, fromNumber: defaultFromNumber }, fields: { recipient, message, from }, } = (0, extensions_core_1.validate)({
|
24
|
+
const { settings: { accountSid, authToken, fromNumber: defaultFromNumber, addOptOutLanguage, optOutLanguage, language, }, fields: { recipient, message, from }, } = (0, extensions_core_1.validate)({
|
24
25
|
schema: zod_1.z
|
25
26
|
.object({
|
26
27
|
settings: settings_1.SettingsValidationSchema,
|
@@ -43,42 +44,23 @@ exports.sendSms = {
|
|
43
44
|
accountSid,
|
44
45
|
});
|
45
46
|
await client.messages.create({
|
46
|
-
body:
|
47
|
+
body: addOptOutLanguage
|
48
|
+
? (0, lib_1.appendOptOutLanguage)(message, optOutLanguage, language)
|
49
|
+
: message,
|
47
50
|
from: from !== null && from !== void 0 ? from : defaultFromNumber,
|
48
51
|
to: recipient,
|
49
52
|
});
|
50
53
|
await onComplete();
|
51
54
|
}
|
52
|
-
catch (
|
53
|
-
if (
|
54
|
-
const error = (0, zod_validation_error_1.fromZodError)(err);
|
55
|
+
catch (error) {
|
56
|
+
if ((0, errors_1.isTwilioErrorResponse)(error)) {
|
55
57
|
await onError({
|
56
|
-
events: [
|
57
|
-
{
|
58
|
-
date: new Date().toISOString(),
|
59
|
-
text: { en: error.message },
|
60
|
-
error: {
|
61
|
-
category: 'BAD_REQUEST',
|
62
|
-
message: error.message,
|
63
|
-
},
|
64
|
-
},
|
65
|
-
],
|
58
|
+
events: [(0, errors_1.parseTwilioError)(error)],
|
66
59
|
});
|
67
60
|
}
|
68
61
|
else {
|
69
|
-
|
70
|
-
|
71
|
-
events: [
|
72
|
-
{
|
73
|
-
date: new Date().toISOString(),
|
74
|
-
text: { en: message },
|
75
|
-
error: {
|
76
|
-
category: 'SERVER_ERROR',
|
77
|
-
message,
|
78
|
-
},
|
79
|
-
},
|
80
|
-
],
|
81
|
-
});
|
62
|
+
// we handle ZodError and unknown errors in extension-server directly
|
63
|
+
throw error;
|
82
64
|
}
|
83
65
|
}
|
84
66
|
},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendSms.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSms/sendSms.ts"],"names":[],"mappings":";;;;;;AAAA,
|
1
|
+
{"version":3,"file":"sendSms.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSms/sendSms.ts"],"names":[],"mappings":";;;;;;AAAA,6BAAuB;AACvB,wEAAkD;AAGlD,mEAAkE;AAClE,gDAA4D;AAC5D,qCAAyD;AACzD,mCAA8B;AAC9B,sCAAmD;AACnD,gDAA6E;AAEhE,QAAA,OAAO,GAA2C;IAC7D,GAAG,EAAE,SAAS;IACd,KAAK,EAAE,6BAA6B;IACpC,WAAW,EACT,kFAAkF;IACpF,QAAQ,EAAE,0BAAQ,CAAC,aAAa;IAChC,MAAM,EAAN,eAAM;IACN,WAAW,EAAE,KAAK;IAClB,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;QACxD,IAAI;YACF,MAAM,EACJ,QAAQ,EAAE,EACR,UAAU,EACV,SAAS,EACT,UAAU,EAAE,iBAAiB,EAC7B,iBAAiB,EACjB,cAAc,EACd,QAAQ,GACT,EACD,MAAM,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,GACrC,GAAG,IAAA,0BAAQ,EAAC;gBACX,MAAM,EAAE,OAAC;qBACN,MAAM,CAAC;oBACN,QAAQ,EAAE,mCAAwB;oBAClC,MAAM,EAAE,+BAAsB;iBAC/B,CAAC;qBACD,WAAW,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;oBAC1B,8CAA8C;oBAC9C,IAAI,IAAA,cAAK,EAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAA,cAAK,EAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;wBAChE,GAAG,CAAC,QAAQ,CAAC;4BACX,IAAI,EAAE,OAAC,CAAC,YAAY,CAAC,MAAM;4BAC3B,KAAK,EAAE,IAAI;4BACX,OAAO,EACL,oEAAoE;yBACvE,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC;gBACJ,OAAO;aACR,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,IAAA,gBAAS,EAAC,UAAU,EAAE,SAAS,EAAE;gBAC9C,MAAM,EAAE,KAAK;gBACb,UAAU;aACX,CAAC,CAAA;YAEF,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC3B,IAAI,EAAE,iBAAiB;oBACrB,CAAC,CAAC,IAAA,0BAAoB,EAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,CAAC;oBACzD,CAAC,CAAC,OAAO;gBACX,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,iBAAiB;gBAC/B,EAAE,EAAE,SAAS;aACd,CAAC,CAAA;YAEF,MAAM,UAAU,EAAE,CAAA;SACnB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,IAAA,8BAAqB,EAAC,KAAK,CAAC,EAAE;gBAChC,MAAM,OAAO,CAAC;oBACZ,MAAM,EAAE,CAAC,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;iBAClC,CAAC,CAAA;aACH;iBAAM;gBACL,qEAAqE;gBACrE,MAAM,KAAK,CAAA;aACZ;SACF;IACH,CAAC;CACF,CAAA"}
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const sendSms_1 = require("./sendSms");
|
7
7
|
const twilio_1 = __importDefault(require("../../../common/sdk/twilio"));
|
8
8
|
const tests_1 = require("../../../../../src/tests");
|
9
|
+
const zod_1 = require("zod");
|
9
10
|
describe('Send SMS (with from number) action', () => {
|
10
11
|
const onComplete = jest.fn();
|
11
12
|
const onError = jest.fn();
|
@@ -26,13 +27,16 @@ describe('Send SMS (with from number) action', () => {
|
|
26
27
|
authToken: 'authToken',
|
27
28
|
fromNumber: '+19144542596',
|
28
29
|
messagingServiceSid: undefined,
|
30
|
+
addOptOutLanguage: undefined,
|
31
|
+
optOutLanguage: undefined,
|
32
|
+
language: undefined,
|
29
33
|
},
|
30
34
|
}), onComplete, onError);
|
31
35
|
expect(onComplete).toHaveBeenCalled();
|
32
36
|
expect(onError).not.toHaveBeenCalled();
|
33
37
|
});
|
34
38
|
test('Should call the onError callback when there is no recipient', async () => {
|
35
|
-
|
39
|
+
const resp = sendSms_1.sendSms.onActivityCreated((0, tests_1.generateTestPayload)({
|
36
40
|
fields: {
|
37
41
|
message: 'Message content',
|
38
42
|
recipient: '',
|
@@ -43,13 +47,16 @@ describe('Send SMS (with from number) action', () => {
|
|
43
47
|
authToken: 'authToken',
|
44
48
|
fromNumber: '+19144542596',
|
45
49
|
messagingServiceSid: undefined,
|
50
|
+
addOptOutLanguage: undefined,
|
51
|
+
optOutLanguage: undefined,
|
52
|
+
language: undefined,
|
46
53
|
},
|
47
54
|
}), onComplete, onError);
|
55
|
+
await expect(resp).rejects.toThrow(zod_1.ZodError);
|
48
56
|
expect(onComplete).not.toHaveBeenCalled();
|
49
|
-
expect(onError).toHaveBeenCalled();
|
50
57
|
});
|
51
58
|
test('Should call the onError callback when there is no message', async () => {
|
52
|
-
|
59
|
+
const resp = sendSms_1.sendSms.onActivityCreated((0, tests_1.generateTestPayload)({
|
53
60
|
fields: {
|
54
61
|
message: '',
|
55
62
|
recipient: '+19144542596',
|
@@ -60,10 +67,13 @@ describe('Send SMS (with from number) action', () => {
|
|
60
67
|
authToken: 'authToken',
|
61
68
|
fromNumber: '+19144542596',
|
62
69
|
messagingServiceSid: undefined,
|
70
|
+
addOptOutLanguage: undefined,
|
71
|
+
optOutLanguage: undefined,
|
72
|
+
language: undefined,
|
63
73
|
},
|
64
74
|
}), onComplete, onError);
|
75
|
+
await expect(resp).rejects.toThrow(zod_1.ZodError);
|
65
76
|
expect(onComplete).not.toHaveBeenCalled();
|
66
|
-
expect(onError).toHaveBeenCalled();
|
67
77
|
});
|
68
78
|
describe("'From' number", () => {
|
69
79
|
const basePayload = (0, tests_1.generateTestPayload)({
|
@@ -77,6 +87,9 @@ describe('Send SMS (with from number) action', () => {
|
|
77
87
|
authToken: 'authToken',
|
78
88
|
fromNumber: '+19144542596',
|
79
89
|
messagingServiceSid: undefined,
|
90
|
+
addOptOutLanguage: undefined,
|
91
|
+
optOutLanguage: undefined,
|
92
|
+
language: undefined,
|
80
93
|
},
|
81
94
|
});
|
82
95
|
test('Should use one provided in action fields', async () => {
|
@@ -108,18 +121,9 @@ describe('Send SMS (with from number) action', () => {
|
|
108
121
|
from: undefined,
|
109
122
|
},
|
110
123
|
};
|
111
|
-
|
124
|
+
const resp = sendSms_1.sendSms.onActivityCreated(payloadWithoutFrom, onComplete, onError);
|
125
|
+
await expect(resp).rejects.toThrow(zod_1.ZodError);
|
112
126
|
expect(onComplete).not.toHaveBeenCalled();
|
113
|
-
expect(onError).toHaveBeenCalledWith({
|
114
|
-
events: expect.arrayContaining([
|
115
|
-
expect.objectContaining({
|
116
|
-
error: {
|
117
|
-
category: 'BAD_REQUEST',
|
118
|
-
message: 'Validation error: "From" number is missing in both settings and in the action field.',
|
119
|
-
},
|
120
|
-
}),
|
121
|
-
]),
|
122
|
-
});
|
123
127
|
});
|
124
128
|
});
|
125
129
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendSms.test.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSms/sendSms.test.ts"],"names":[],"mappings":";;;;;AAAA,uCAAmC;AACnC,wEAAkD;AAClD,oDAA8D;
|
1
|
+
{"version":3,"file":"sendSms.test.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSms/sendSms.test.ts"],"names":[],"mappings":";;;;;AAAA,uCAAmC;AACnC,wEAAkD;AAClD,oDAA8D;AAC9D,6BAA8B;AAE9B,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IACzB,MAAM,mBAAmB,GAAG,GAAQ,EAAE,WACpC,OAAA,MAAC,gBAAgD,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,KAAK,CAAA,EAAA,CAAA;IAE9E,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,CAAC,SAAS,EAAE,CAAA;QACtB,OAAO,CAAC,SAAS,EAAE,CAAA;IACrB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,iBAAO,CAAC,iBAAiB,CAC7B,IAAA,2BAAmB,EAAC;YAClB,MAAM,EAAE;gBACN,OAAO,EAAE,iBAAiB;gBAC1B,SAAS,EAAE,cAAc;gBACzB,IAAI,EAAE,EAAE;aACT;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,eAAe;gBAC3B,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,cAAc;gBAC1B,mBAAmB,EAAE,SAAS;gBAC9B,iBAAiB,EAAE,SAAS;gBAC5B,cAAc,EAAE,SAAS;gBACzB,QAAQ,EAAE,SAAS;aACpB;SACF,CAAC,EACF,UAAU,EACV,OAAO,CACR,CAAA;QACD,MAAM,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAA;QACrC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,IAAI,GAAG,iBAAO,CAAC,iBAAiB,CACpC,IAAA,2BAAmB,EAAC;YAClB,MAAM,EAAE;gBACN,OAAO,EAAE,iBAAiB;gBAC1B,SAAS,EAAE,EAAE;gBACb,IAAI,EAAE,EAAE;aACT;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,eAAe;gBAC3B,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,cAAc;gBAC1B,mBAAmB,EAAE,SAAS;gBAC9B,iBAAiB,EAAE,SAAS;gBAC5B,cAAc,EAAE,SAAS;gBACzB,QAAQ,EAAE,SAAS;aACpB;SACF,CAAC,EACF,UAAU,EACV,OAAO,CACR,CAAA;QACD,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,cAAQ,CAAC,CAAA;QAC5C,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,IAAI,GAAG,iBAAO,CAAC,iBAAiB,CACpC,IAAA,2BAAmB,EAAC;YAClB,MAAM,EAAE;gBACN,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,cAAc;gBACzB,IAAI,EAAE,EAAE;aACT;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,eAAe;gBAC3B,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,cAAc;gBAC1B,mBAAmB,EAAE,SAAS;gBAC9B,iBAAiB,EAAE,SAAS;gBAC5B,cAAc,EAAE,SAAS;gBACzB,QAAQ,EAAE,SAAS;aACpB;SACF,CAAC,EACF,UAAU,EACV,OAAO,CACR,CAAA;QACD,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,cAAQ,CAAC,CAAA;QAC5C,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,MAAM,WAAW,GAAG,IAAA,2BAAmB,EAAC;YACtC,MAAM,EAAE;gBACN,OAAO,EAAE,iBAAiB;gBAC1B,SAAS,EAAE,cAAc;gBACzB,IAAI,EAAE,cAAc;aACrB;YACD,QAAQ,EAAE;gBACR,UAAU,EAAE,eAAe;gBAC3B,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,cAAc;gBAC1B,mBAAmB,EAAE,SAAS;gBAC9B,iBAAiB,EAAE,SAAS;gBAC5B,cAAc,EAAE,SAAS;gBACzB,QAAQ,EAAE,SAAS;aACpB;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,iBAAO,CAAC,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;YACjE,MAAM,CACJ,mBAAmB,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAChE,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAClC,MAAM,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAA;YACrC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;QACxC,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,kBAAkB,GAAG;gBACzB,GAAG,WAAW;gBACd,MAAM,EAAE;oBACN,OAAO,EAAE,iBAAiB;oBAC1B,SAAS,EAAE,cAAc;oBACzB,IAAI,EAAE,SAAS;iBAChB;aACF,CAAA;YAED,MAAM,iBAAO,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;YACxE,MAAM,CACJ,mBAAmB,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAChE,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;YACjD,MAAM,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAA;YACrC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;QACxC,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;YACzF,MAAM,kBAAkB,GAAG;gBACzB,GAAG,WAAW;gBACd,QAAQ,EAAE,EAAE,GAAG,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE;gBAC5D,MAAM,EAAE;oBACN,GAAG,WAAW,CAAC,MAAM;oBACrB,IAAI,EAAE,SAAS;iBAChB;aACF,CAAA;YAED,MAAM,IAAI,GAAG,iBAAO,CAAC,iBAAiB,CACpC,kBAAkB,EAClB,UAAU,EACV,OAAO,CACR,CAAA;YACD,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,cAAQ,CAAC,CAAA;YAC5C,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;QAC3C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.js
CHANGED
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.sendSmsDuringBusinessHours = void 0;
|
7
7
|
const zod_1 = require("zod");
|
8
|
-
const zod_validation_error_1 = require("zod-validation-error");
|
9
8
|
const twilio_1 = __importDefault(require("../../../common/sdk/twilio"));
|
10
9
|
const extensions_core_1 = require("@awell-health/extensions-core");
|
11
10
|
const settings_1 = require("../../../settings");
|
@@ -13,6 +12,8 @@ const config_1 = require("./config");
|
|
13
12
|
const lodash_1 = require("lodash");
|
14
13
|
const getNextDateWithinBusinessHours_1 = require("../../../../../src/utils/getNextDateWithinBusinessHours");
|
15
14
|
const date_fns_1 = require("date-fns");
|
15
|
+
const lib_1 = require("../../../lib");
|
16
|
+
const errors_1 = require("../../../lib/errors");
|
16
17
|
exports.sendSmsDuringBusinessHours = {
|
17
18
|
key: 'sendSmsDuringBusinessHours',
|
18
19
|
title: 'Send SMS during business hours',
|
@@ -23,7 +24,7 @@ exports.sendSmsDuringBusinessHours = {
|
|
23
24
|
previewable: false,
|
24
25
|
onActivityCreated: async (payload, onComplete, onError) => {
|
25
26
|
try {
|
26
|
-
const { settings: { accountSid, authToken, messagingServiceSid: defaultMessagingServiceSid, }, fields: { recipient, message, messagingServiceSid, timeZone }, } = (0, extensions_core_1.validate)({
|
27
|
+
const { settings: { accountSid, authToken, messagingServiceSid: defaultMessagingServiceSid, addOptOutLanguage, optOutLanguage, language, }, fields: { recipient, message, messagingServiceSid, timeZone }, } = (0, extensions_core_1.validate)({
|
27
28
|
schema: zod_1.z
|
28
29
|
.object({
|
29
30
|
settings: settings_1.SettingsValidationSchema,
|
@@ -55,7 +56,9 @@ exports.sendSmsDuringBusinessHours = {
|
|
55
56
|
: (0, getNextDateWithinBusinessHours_1.getNextDateWithinBusinessHours)(now, tz);
|
56
57
|
const scheduled = isBetweenBusinessHours ? 'false' : 'true';
|
57
58
|
const res = await client.messages.create({
|
58
|
-
body:
|
59
|
+
body: addOptOutLanguage
|
60
|
+
? (0, lib_1.appendOptOutLanguage)(message, optOutLanguage, language)
|
61
|
+
: message,
|
59
62
|
messagingServiceSid: messagingServiceSid !== null && messagingServiceSid !== void 0 ? messagingServiceSid : defaultMessagingServiceSid,
|
60
63
|
to: recipient,
|
61
64
|
scheduleType,
|
@@ -65,40 +68,18 @@ exports.sendSmsDuringBusinessHours = {
|
|
65
68
|
data_points: {
|
66
69
|
messageSid: res.sid,
|
67
70
|
scheduled,
|
68
|
-
sendAt:
|
71
|
+
sendAt: sendAt != null ? (0, date_fns_1.formatISO)(sendAt) : (0, date_fns_1.formatISO)(now),
|
69
72
|
},
|
70
73
|
});
|
71
74
|
}
|
72
|
-
catch (
|
73
|
-
if (
|
74
|
-
const error = (0, zod_validation_error_1.fromZodError)(err);
|
75
|
+
catch (error) {
|
76
|
+
if ((0, errors_1.isTwilioErrorResponse)(error)) {
|
75
77
|
await onError({
|
76
|
-
events: [
|
77
|
-
{
|
78
|
-
date: new Date().toISOString(),
|
79
|
-
text: { en: error.message },
|
80
|
-
error: {
|
81
|
-
category: 'BAD_REQUEST',
|
82
|
-
message: error.message,
|
83
|
-
},
|
84
|
-
},
|
85
|
-
],
|
78
|
+
events: [(0, errors_1.parseTwilioError)(error)],
|
86
79
|
});
|
87
80
|
}
|
88
81
|
else {
|
89
|
-
|
90
|
-
await onError({
|
91
|
-
events: [
|
92
|
-
{
|
93
|
-
date: new Date().toISOString(),
|
94
|
-
text: { en: message },
|
95
|
-
error: {
|
96
|
-
category: 'SERVER_ERROR',
|
97
|
-
message,
|
98
|
-
},
|
99
|
-
},
|
100
|
-
],
|
101
|
-
});
|
82
|
+
throw error;
|
102
83
|
}
|
103
84
|
}
|
104
85
|
},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendSmsDuringBusinessHours.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.ts"],"names":[],"mappings":";;;;;;AAAA,
|
1
|
+
{"version":3,"file":"sendSmsDuringBusinessHours.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.ts"],"names":[],"mappings":"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"}
|