@awell-health/awell-extensions 2.1.91 → 2.1.92

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.
@@ -184,9 +184,9 @@ export declare const FieldsSchema: z.ZodObject<{
184
184
  broadcastName: string;
185
185
  broadcastType: "Announcement" | "Survey";
186
186
  startDate?: string | undefined;
187
+ checkCallingWindow?: boolean | undefined;
187
188
  maxMessageLength?: number | undefined;
188
189
  callerID?: string | undefined;
189
- checkCallingWindow?: boolean | undefined;
190
190
  continueOnNextDay?: boolean | undefined;
191
191
  transferAndConnect?: {
192
192
  transferNumber: string;
@@ -241,9 +241,9 @@ export declare const FieldsSchema: z.ZodObject<{
241
241
  broadcastName: string;
242
242
  broadcastType: "Announcement" | "Survey";
243
243
  startDate?: Date | undefined;
244
+ checkCallingWindow?: boolean | undefined;
244
245
  maxMessageLength?: number | undefined;
245
246
  callerID?: string | undefined;
246
- checkCallingWindow?: boolean | undefined;
247
247
  continueOnNextDay?: boolean | undefined;
248
248
  transferAndConnect?: string | undefined;
249
249
  audio?: string | undefined;
@@ -13,7 +13,35 @@ export declare const fields: {
13
13
  label: string;
14
14
  type: FieldType.STRING;
15
15
  stringType: StringType.PHONE;
16
- required: true;
16
+ required: false;
17
+ description: string;
18
+ };
19
+ firstName: {
20
+ id: string;
21
+ label: string;
22
+ type: FieldType.STRING;
23
+ required: false;
24
+ description: string;
25
+ };
26
+ lastName: {
27
+ id: string;
28
+ label: string;
29
+ type: FieldType.STRING;
30
+ required: false;
31
+ description: string;
32
+ };
33
+ notes: {
34
+ id: string;
35
+ label: string;
36
+ type: FieldType.STRING;
37
+ required: false;
38
+ description: string;
39
+ };
40
+ integrationData: {
41
+ id: string;
42
+ label: string;
43
+ type: FieldType.STRING;
44
+ required: false;
17
45
  description: string;
18
46
  };
19
47
  textMessage: {
@@ -37,6 +65,13 @@ export declare const fields: {
37
65
  required: false;
38
66
  description: string;
39
67
  };
68
+ checkCallingWindow: {
69
+ id: string;
70
+ label: string;
71
+ type: FieldType.BOOLEAN;
72
+ required: false;
73
+ description: string;
74
+ };
40
75
  };
41
76
  /**
42
77
  * Result types for SMS broadcast creation.
@@ -99,23 +134,79 @@ export declare const dataPoints: {
99
134
  valueType: "string";
100
135
  };
101
136
  };
137
+ /** Schema for raw field extraction (no transforms, just type checking) */
102
138
  export declare const FieldsSchema: z.ZodObject<{
139
+ broadcastName: z.ZodString;
140
+ phoneNumber: z.ZodOptional<z.ZodString>;
141
+ firstName: z.ZodOptional<z.ZodString>;
142
+ lastName: z.ZodOptional<z.ZodString>;
143
+ notes: z.ZodOptional<z.ZodString>;
144
+ integrationData: z.ZodOptional<z.ZodString>;
145
+ textMessage: z.ZodString;
146
+ textNumberID: z.ZodOptional<z.ZodNumber>;
147
+ startDate: z.ZodOptional<z.ZodEffects<z.ZodDate, string, Date>>;
148
+ checkCallingWindow: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
149
+ }, "strip", z.ZodTypeAny, {
150
+ broadcastName: string;
151
+ textMessage: string;
152
+ checkCallingWindow: boolean;
153
+ firstName?: string | undefined;
154
+ lastName?: string | undefined;
155
+ phoneNumber?: string | undefined;
156
+ notes?: string | undefined;
157
+ startDate?: string | undefined;
158
+ integrationData?: string | undefined;
159
+ textNumberID?: number | undefined;
160
+ }, {
161
+ broadcastName: string;
162
+ textMessage: string;
163
+ firstName?: string | undefined;
164
+ lastName?: string | undefined;
165
+ phoneNumber?: string | undefined;
166
+ notes?: string | undefined;
167
+ startDate?: Date | undefined;
168
+ integrationData?: string | undefined;
169
+ textNumberID?: number | undefined;
170
+ checkCallingWindow?: boolean | undefined;
171
+ }>;
172
+ export type ActionFields = z.infer<typeof FieldsSchema>;
173
+ /**
174
+ * Schema for the final resolved broadcast input — after patient profile
175
+ * fallbacks have been applied. This is where all transforms and
176
+ * required-field checks live so everything is validated in one pass.
177
+ */
178
+ export declare const BroadcastInputSchema: z.ZodObject<{
103
179
  broadcastName: z.ZodString;
104
180
  phoneNumber: z.ZodEffects<z.ZodString, string, string>;
181
+ firstName: z.ZodOptional<z.ZodString>;
182
+ lastName: z.ZodOptional<z.ZodString>;
183
+ notes: z.ZodOptional<z.ZodString>;
184
+ integrationData: z.ZodOptional<z.ZodString>;
105
185
  textMessage: z.ZodString;
106
186
  textNumberID: z.ZodOptional<z.ZodNumber>;
107
- startDate: z.ZodEffects<z.ZodOptional<z.ZodEffects<z.ZodDate, string, Date>>, string | undefined, Date | undefined>;
187
+ startDate: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
188
+ checkCallingWindow: z.ZodBoolean;
108
189
  }, "strip", z.ZodTypeAny, {
109
190
  phoneNumber: string;
110
191
  broadcastName: string;
111
192
  textMessage: string;
193
+ checkCallingWindow: boolean;
194
+ firstName?: string | undefined;
195
+ lastName?: string | undefined;
196
+ notes?: string | undefined;
112
197
  startDate?: string | undefined;
198
+ integrationData?: string | undefined;
113
199
  textNumberID?: number | undefined;
114
200
  }, {
115
201
  phoneNumber: string;
116
202
  broadcastName: string;
117
203
  textMessage: string;
118
- startDate?: Date | undefined;
204
+ checkCallingWindow: boolean;
205
+ firstName?: string | undefined;
206
+ lastName?: string | undefined;
207
+ notes?: string | undefined;
208
+ startDate?: string | undefined;
209
+ integrationData?: string | undefined;
119
210
  textNumberID?: number | undefined;
120
211
  }>;
121
- export type ActionFields = z.infer<typeof FieldsSchema>;
212
+ export type BroadcastInput = z.infer<typeof BroadcastInputSchema>;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FieldsSchema = exports.dataPoints = exports.DeliveryResultType = exports.fields = void 0;
6
+ exports.BroadcastInputSchema = exports.FieldsSchema = exports.dataPoints = exports.DeliveryResultType = exports.fields = void 0;
7
7
  const zod_1 = require("zod");
8
8
  const extensions_core_1 = require("@awell-health/extensions-core");
9
9
  const libphonenumber_js_1 = require("libphonenumber-js");
@@ -22,8 +22,36 @@ exports.fields = {
22
22
  label: 'Phone Number',
23
23
  type: extensions_core_1.FieldType.STRING,
24
24
  stringType: extensions_core_1.StringType.PHONE,
25
- required: true,
26
- description: 'The primary phone number of the recipient. Must be a valid North American Numbering Plan (NANP) phone number.',
25
+ required: false,
26
+ description: 'The primary phone number of the recipient. Must be a valid NANP phone number. If omitted, falls back to the patient mobile phone from their profile.',
27
+ },
28
+ firstName: {
29
+ id: 'firstName',
30
+ label: 'First Name',
31
+ type: extensions_core_1.FieldType.STRING,
32
+ required: false,
33
+ description: 'The first name of the contact. If omitted, falls back to the patient first name from their profile.',
34
+ },
35
+ lastName: {
36
+ id: 'lastName',
37
+ label: 'Last Name',
38
+ type: extensions_core_1.FieldType.STRING,
39
+ required: false,
40
+ description: 'The last name of the contact. If omitted, falls back to the patient last name from their profile.',
41
+ },
42
+ notes: {
43
+ id: 'notes',
44
+ label: 'Notes',
45
+ type: extensions_core_1.FieldType.STRING,
46
+ required: false,
47
+ description: 'Notes about the contact (e.g., "Eligibility form from Awell").',
48
+ },
49
+ integrationData: {
50
+ id: 'integrationData',
51
+ label: 'Integration Data',
52
+ type: extensions_core_1.FieldType.STRING,
53
+ required: false,
54
+ description: 'Extra field for integration information.',
27
55
  },
28
56
  textMessage: {
29
57
  id: 'textMessage',
@@ -46,6 +74,13 @@ exports.fields = {
46
74
  required: false,
47
75
  description: 'The time the broadcast should start. Will default to start immediately. If provided must be a datetime as ISO 8601 string and time to send the message in UTC',
48
76
  },
77
+ checkCallingWindow: {
78
+ id: 'checkCallingWindow',
79
+ label: 'Check Calling Window',
80
+ type: extensions_core_1.FieldType.BOOLEAN,
81
+ required: false,
82
+ description: 'Whether to enforce the calling window restrictions. Defaults to false.',
83
+ },
49
84
  };
50
85
  /**
51
86
  * Result types for SMS broadcast creation.
@@ -107,19 +142,45 @@ exports.dataPoints = {
107
142
  valueType: 'string',
108
143
  },
109
144
  };
145
+ /** Schema for raw field extraction (no transforms, just type checking) */
110
146
  exports.FieldsSchema = zod_1.z.object({
147
+ broadcastName: zod_1.z.string(),
148
+ phoneNumber: zod_1.z.string().optional(),
149
+ firstName: zod_1.z.string().optional(),
150
+ lastName: zod_1.z.string().optional(),
151
+ notes: zod_1.z.string().optional(),
152
+ integrationData: zod_1.z.string().optional(),
153
+ textMessage: zod_1.z.string(),
154
+ textNumberID: zod_1.z.number().optional(),
155
+ startDate: extensions_core_1.DateTimeSchema.optional(),
156
+ checkCallingWindow: zod_1.z.boolean().optional().default(false),
157
+ });
158
+ /**
159
+ * Schema for the final resolved broadcast input — after patient profile
160
+ * fallbacks have been applied. This is where all transforms and
161
+ * required-field checks live so everything is validated in one pass.
162
+ */
163
+ exports.BroadcastInputSchema = zod_1.z.object({
111
164
  broadcastName: zod_1.z.string(),
112
165
  phoneNumber: zod_1.z.string().transform((phone) => {
113
- const parsedNumber = (0, libphonenumber_js_1.parsePhoneNumber)(phone);
114
- return parsedNumber.format('NATIONAL'); // Returns "(XXX) XXX-XXXX" NANP format
166
+ const parsed = (0, libphonenumber_js_1.parsePhoneNumber)(phone);
167
+ return parsed.format('NATIONAL'); // "(XXX) XXX-XXXX" NANP format
115
168
  }),
169
+ firstName: zod_1.z.string().optional(),
170
+ lastName: zod_1.z.string().optional(),
171
+ notes: zod_1.z.string().optional(),
172
+ integrationData: zod_1.z.string().optional(),
116
173
  textMessage: zod_1.z.string(),
117
174
  textNumberID: zod_1.z.number().optional(),
118
- startDate: extensions_core_1.DateTimeSchema.optional().transform((date) => {
175
+ startDate: zod_1.z
176
+ .string()
177
+ .optional()
178
+ .transform((date) => {
119
179
  if ((0, lodash_1.isNil)(date) || date === '')
120
180
  return undefined;
121
- // format is required: 2/1/2020 1:15PM',
181
+ // format required by Text-Em-All: '2/1/2020 1:15PM'
122
182
  return (0, format_1.default)(new Date(date), 'M/d/yyyy h:mmaa');
123
183
  }),
184
+ checkCallingWindow: zod_1.z.boolean(),
124
185
  });
125
186
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../extensions/text-em-all/actions/createSMSBroadcast/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../extensions/text-em-all/actions/createSMSBroadcast/config.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ const extensions_core_1 = require("@awell-health/extensions-core");
6
6
  const config_1 = require("./config");
7
7
  const settings_1 = require("../../settings");
8
8
  const lib_1 = require("../../lib");
9
+ const lodash_1 = require("lodash");
9
10
  /**
10
11
  * Known Text-Em-All error codes and their meanings.
11
12
  */
@@ -16,14 +17,13 @@ const ERROR_CODES = {
16
17
  * Determines the delivery result based on an error response.
17
18
  */
18
19
  function getResultFromError(errorCode, errorName, message) {
19
- // Handle known error codes
20
- if (errorCode === ERROR_CODES.NO_VALID_CONTACTS || errorName === 'NoValidBroadcastContacts') {
20
+ if (errorCode === ERROR_CODES.NO_VALID_CONTACTS ||
21
+ errorName === 'NoValidBroadcastContacts') {
21
22
  return {
22
23
  result: config_1.DeliveryResultType.INVALID_NUMBER,
23
24
  details: message !== null && message !== void 0 ? message : 'Phone number is invalid or recipient cannot receive text messages',
24
25
  };
25
26
  }
26
- // Default for unknown errors
27
27
  return {
28
28
  result: config_1.DeliveryResultType.FAILED,
29
29
  details: message !== null && message !== void 0 ? message : 'Broadcast creation failed',
@@ -37,20 +37,88 @@ exports.createSMSBroadcast = {
37
37
  fields: config_1.fields,
38
38
  dataPoints: config_1.dataPoints,
39
39
  previewable: true,
40
- onEvent: async ({ payload, onComplete, onError }) => {
41
- const { fields: { broadcastName: BroadcastName, phoneNumber, textMessage: TextMessage, textNumberID: TextNumberID, startDate: StartDate, }, settings, } = (0, extensions_core_1.validate)({
40
+ onEvent: async ({ payload, onComplete, onError, helpers: { log }, }) => {
41
+ var _a, _b;
42
+ // Step 1: Extract raw field values and settings
43
+ const { fields: rawFields, settings } = (0, extensions_core_1.validate)({
42
44
  schema: zod_1.z.object({ fields: config_1.FieldsSchema, settings: settings_1.SettingsSchema }),
43
45
  payload,
44
46
  });
45
- const client = new lib_1.TextEmAllClient(settings);
47
+ const patientProfile = (_a = payload.patient) === null || _a === void 0 ? void 0 : _a.profile;
48
+ // Step 2: Resolve values — fields take priority, patient profile is fallback
49
+ let phoneNumber = rawFields.phoneNumber;
50
+ if ((0, lodash_1.isEmpty)(phoneNumber)) {
51
+ phoneNumber =
52
+ (_b = patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.mobile_phone) !== null && _b !== void 0 ? _b : patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.phone;
53
+ if ((0, lodash_1.isEmpty)(phoneNumber)) {
54
+ await onError({
55
+ events: [
56
+ {
57
+ date: new Date().toISOString(),
58
+ text: {
59
+ en: 'No phone number provided and no mobile phone found on patient profile.',
60
+ },
61
+ error: {
62
+ category: 'WRONG_INPUT',
63
+ message: 'No phone number provided and no mobile phone found on patient profile',
64
+ },
65
+ },
66
+ ],
67
+ });
68
+ return;
69
+ }
70
+ log({ source: 'patient_profile', field: 'mobile_phone' }, 'Phone number not provided — using patient profile mobile phone');
71
+ }
72
+ let firstName = rawFields.firstName;
73
+ if ((0, lodash_1.isEmpty)(firstName) && !(0, lodash_1.isEmpty)(patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.first_name)) {
74
+ firstName = patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.first_name;
75
+ log({ source: 'patient_profile', field: 'first_name' }, 'First name not provided — using patient profile first name');
76
+ }
77
+ let lastName = rawFields.lastName;
78
+ if ((0, lodash_1.isEmpty)(lastName) && !(0, lodash_1.isEmpty)(patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.last_name)) {
79
+ lastName = patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.last_name;
80
+ log({ source: 'patient_profile', field: 'last_name' }, 'Last name not provided — using patient profile last name');
81
+ }
82
+ // Step 3: Validate the resolved input (NANP phone format, date transform, etc.)
83
+ const input = config_1.BroadcastInputSchema.parse({
84
+ broadcastName: rawFields.broadcastName,
85
+ phoneNumber,
86
+ firstName,
87
+ lastName,
88
+ notes: rawFields.notes,
89
+ integrationData: rawFields.integrationData,
90
+ textMessage: rawFields.textMessage,
91
+ textNumberID: rawFields.textNumberID,
92
+ startDate: rawFields.startDate,
93
+ checkCallingWindow: rawFields.checkCallingWindow,
94
+ });
95
+ // Step 4: Build the API request
96
+ const contact = {
97
+ PrimaryPhone: input.phoneNumber,
98
+ };
99
+ if (!(0, lodash_1.isEmpty)(input.firstName)) {
100
+ contact.FirstName = input.firstName;
101
+ }
102
+ if (!(0, lodash_1.isEmpty)(input.lastName)) {
103
+ contact.LastName = input.lastName;
104
+ }
105
+ if (!(0, lodash_1.isEmpty)(input.notes)) {
106
+ contact.Notes = input.notes;
107
+ }
108
+ if (!(0, lodash_1.isEmpty)(input.integrationData)) {
109
+ contact.IntegrationData = input.integrationData;
110
+ }
46
111
  const request = {
47
- BroadcastName,
112
+ BroadcastName: input.broadcastName,
48
113
  BroadcastType: 'SMS',
49
- TextMessage,
50
- TextNumberID,
51
- StartDate,
52
- Contacts: [{ PrimaryPhone: phoneNumber }],
114
+ TextMessage: input.textMessage,
115
+ TextNumberID: input.textNumberID,
116
+ StartDate: input.startDate,
117
+ CheckCallingWindow: input.checkCallingWindow,
118
+ Contacts: [contact],
53
119
  };
120
+ // Step 5: Send to Text-Em-All
121
+ const client = new lib_1.TextEmAllClient(settings);
54
122
  const resp = await client.createBroadcast(request);
55
123
  const data = resp.data;
56
124
  // Success - broadcast created
@@ -59,9 +127,7 @@ exports.createSMSBroadcast = {
59
127
  events: [
60
128
  {
61
129
  date: new Date().toISOString(),
62
- text: {
63
- en: `SMS broadcast created successfully`,
64
- },
130
+ text: { en: 'SMS broadcast created successfully' },
65
131
  },
66
132
  ],
67
133
  data_points: {
@@ -77,7 +143,7 @@ exports.createSMSBroadcast = {
77
143
  });
78
144
  return;
79
145
  }
80
- // Handle rate limiting (429)
146
+ // Rate limiting (429) — transient, retry may help
81
147
  if (resp.status === 429) {
82
148
  await onError({
83
149
  events: [
@@ -93,18 +159,15 @@ exports.createSMSBroadcast = {
93
159
  });
94
160
  return;
95
161
  }
96
- // Handle API errors (400, etc.) - these are valid results, not failures
162
+ // API errors (400, etc.) valid triage data, not a retry candidate
97
163
  if ('ErrorCode' in data || 'ErrorName' in data || 'Message' in data) {
98
164
  const errorData = data;
99
165
  const { result, details } = getResultFromError(errorData.ErrorCode, errorData.ErrorName, errorData.Message);
100
- // Return as success with the error result - this is valid triage data
101
166
  await onComplete({
102
167
  events: [
103
168
  {
104
169
  date: new Date().toISOString(),
105
- text: {
106
- en: `SMS broadcast result: ${result} - ${details}`,
107
- },
170
+ text: { en: `SMS broadcast result: ${result} - ${details}` },
108
171
  },
109
172
  ],
110
173
  data_points: {
@@ -1 +1 @@
1
- {"version":3,"file":"createSMSBroadcast.js","sourceRoot":"","sources":["../../../../../extensions/text-em-all/actions/createSMSBroadcast/createSMSBroadcast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createSMSBroadcast.js","sourceRoot":"","sources":["../../../../../extensions/text-em-all/actions/createSMSBroadcast/createSMSBroadcast.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,35 @@ export declare const actions: {
12
12
  label: string;
13
13
  type: import("@awell-health/extensions-core").FieldType.STRING;
14
14
  stringType: import("@awell-health/extensions-core").StringType.PHONE;
15
- required: true;
15
+ required: false;
16
+ description: string;
17
+ };
18
+ firstName: {
19
+ id: string;
20
+ label: string;
21
+ type: import("@awell-health/extensions-core").FieldType.STRING;
22
+ required: false;
23
+ description: string;
24
+ };
25
+ lastName: {
26
+ id: string;
27
+ label: string;
28
+ type: import("@awell-health/extensions-core").FieldType.STRING;
29
+ required: false;
30
+ description: string;
31
+ };
32
+ notes: {
33
+ id: string;
34
+ label: string;
35
+ type: import("@awell-health/extensions-core").FieldType.STRING;
36
+ required: false;
37
+ description: string;
38
+ };
39
+ integrationData: {
40
+ id: string;
41
+ label: string;
42
+ type: import("@awell-health/extensions-core").FieldType.STRING;
43
+ required: false;
16
44
  description: string;
17
45
  };
18
46
  textMessage: {
@@ -36,6 +64,13 @@ export declare const actions: {
36
64
  required: false;
37
65
  description: string;
38
66
  };
67
+ checkCallingWindow: {
68
+ id: string;
69
+ label: string;
70
+ type: import("@awell-health/extensions-core").FieldType.BOOLEAN;
71
+ required: false;
72
+ description: string;
73
+ };
39
74
  }, {
40
75
  customerKey: {
41
76
  label: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awell-health/awell-extensions",
3
- "version": "2.1.91",
3
+ "version": "2.1.92",
4
4
  "packageManager": "yarn@4.5.3",
5
5
  "main": "dist/src/index.js",
6
6
  "repository": {