@awell-health/awell-extensions 2.1.91 → 2.1.93

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,87 @@ 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 = (_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;
52
+ if ((0, lodash_1.isEmpty)(phoneNumber)) {
53
+ await onError({
54
+ events: [
55
+ {
56
+ date: new Date().toISOString(),
57
+ text: {
58
+ en: 'No phone number provided and no mobile phone found on patient profile.',
59
+ },
60
+ error: {
61
+ category: 'WRONG_INPUT',
62
+ message: 'No phone number provided and no mobile phone found on patient profile',
63
+ },
64
+ },
65
+ ],
66
+ });
67
+ return;
68
+ }
69
+ log({ source: 'patient_profile', field: 'mobile_phone' }, 'Phone number not provided — using patient profile mobile phone');
70
+ }
71
+ let firstName = rawFields.firstName;
72
+ if ((0, lodash_1.isEmpty)(firstName) && !(0, lodash_1.isEmpty)(patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.first_name)) {
73
+ firstName = patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.first_name;
74
+ log({ source: 'patient_profile', field: 'first_name' }, 'First name not provided — using patient profile first name');
75
+ }
76
+ let lastName = rawFields.lastName;
77
+ if ((0, lodash_1.isEmpty)(lastName) && !(0, lodash_1.isEmpty)(patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.last_name)) {
78
+ lastName = patientProfile === null || patientProfile === void 0 ? void 0 : patientProfile.last_name;
79
+ log({ source: 'patient_profile', field: 'last_name' }, 'Last name not provided — using patient profile last name');
80
+ }
81
+ // Step 3: Validate the resolved input (NANP phone format, date transform, etc.)
82
+ const input = config_1.BroadcastInputSchema.parse({
83
+ broadcastName: rawFields.broadcastName,
84
+ phoneNumber,
85
+ firstName,
86
+ lastName,
87
+ notes: rawFields.notes,
88
+ integrationData: rawFields.integrationData,
89
+ textMessage: rawFields.textMessage,
90
+ textNumberID: rawFields.textNumberID,
91
+ startDate: rawFields.startDate,
92
+ checkCallingWindow: rawFields.checkCallingWindow,
93
+ });
94
+ // Step 4: Build the API request
95
+ const contact = {
96
+ PrimaryPhone: input.phoneNumber,
97
+ };
98
+ if (!(0, lodash_1.isEmpty)(input.firstName)) {
99
+ contact.FirstName = input.firstName;
100
+ }
101
+ if (!(0, lodash_1.isEmpty)(input.lastName)) {
102
+ contact.LastName = input.lastName;
103
+ }
104
+ if (!(0, lodash_1.isEmpty)(input.notes)) {
105
+ contact.Notes = input.notes;
106
+ }
107
+ if (!(0, lodash_1.isEmpty)(input.integrationData)) {
108
+ contact.IntegrationData = input.integrationData;
109
+ }
46
110
  const request = {
47
- BroadcastName,
111
+ BroadcastName: input.broadcastName,
48
112
  BroadcastType: 'SMS',
49
- TextMessage,
50
- TextNumberID,
51
- StartDate,
52
- Contacts: [{ PrimaryPhone: phoneNumber }],
113
+ TextMessage: input.textMessage,
114
+ TextNumberID: input.textNumberID,
115
+ StartDate: input.startDate,
116
+ CheckCallingWindow: input.checkCallingWindow,
117
+ Contacts: [contact],
53
118
  };
119
+ // Step 5: Send to Text-Em-All
120
+ const client = new lib_1.TextEmAllClient(settings);
54
121
  const resp = await client.createBroadcast(request);
55
122
  const data = resp.data;
56
123
  // Success - broadcast created
@@ -59,9 +126,7 @@ exports.createSMSBroadcast = {
59
126
  events: [
60
127
  {
61
128
  date: new Date().toISOString(),
62
- text: {
63
- en: `SMS broadcast created successfully`,
64
- },
129
+ text: { en: 'SMS broadcast created successfully' },
65
130
  },
66
131
  ],
67
132
  data_points: {
@@ -77,7 +142,7 @@ exports.createSMSBroadcast = {
77
142
  });
78
143
  return;
79
144
  }
80
- // Handle rate limiting (429)
145
+ // Rate limiting (429) — transient, retry may help
81
146
  if (resp.status === 429) {
82
147
  await onError({
83
148
  events: [
@@ -93,18 +158,15 @@ exports.createSMSBroadcast = {
93
158
  });
94
159
  return;
95
160
  }
96
- // Handle API errors (400, etc.) - these are valid results, not failures
161
+ // API errors (400, etc.) valid triage data, not a retry candidate
97
162
  if ('ErrorCode' in data || 'ErrorName' in data || 'Message' in data) {
98
163
  const errorData = data;
99
164
  const { result, details } = getResultFromError(errorData.ErrorCode, errorData.ErrorName, errorData.Message);
100
- // Return as success with the error result - this is valid triage data
101
165
  await onComplete({
102
166
  events: [
103
167
  {
104
168
  date: new Date().toISOString(),
105
- text: {
106
- en: `SMS broadcast result: ${result} - ${details}`,
107
- },
169
+ text: { en: `SMS broadcast result: ${result} - ${details}` },
108
170
  },
109
171
  ],
110
172
  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":";;;AAAA,6BAAuB;AACvB,mEAA+E;AAC/E,qCAMiB;AACjB,6CAA8D;AAC9D,mCAA2C;AAC3C,mCAAgC;AAEhC;;GAEG;AACH,MAAM,WAAW,GAAG;IAClB,iBAAiB,EAAE,IAAI,EAAE,wDAAwD;CACzE,CAAA;AAEV;;GAEG;AACH,SAAS,kBAAkB,CACzB,SAAkB,EAClB,SAAkB,EAClB,OAAgB;IAKhB,IACE,SAAS,KAAK,WAAW,CAAC,iBAAiB;QAC3C,SAAS,KAAK,0BAA0B,EACxC,CAAC;QACD,OAAO;YACL,MAAM,EAAE,2BAAkB,CAAC,cAAc;YACzC,OAAO,EACL,OAAO,aAAP,OAAO,cAAP,OAAO,GACP,mEAAmE;SACtE,CAAA;IACH,CAAC;IAED,OAAO;QACL,MAAM,EAAE,2BAAkB,CAAC,MAAM;QACjC,OAAO,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,2BAA2B;KAChD,CAAA;AACH,CAAC;AAEY,QAAA,kBAAkB,GAI3B;IACF,GAAG,EAAE,oBAAoB;IACzB,KAAK,EAAE,0BAA0B;IACjC,WAAW,EACT,2HAA2H;IAC7H,QAAQ,EAAE,0BAAQ,CAAC,aAAa;IAChC,MAAM,EAAN,eAAM;IACN,UAAU,EAAV,mBAAU;IACV,WAAW,EAAE,IAAI;IACjB,OAAO,EAAE,KAAK,EAAE,EACd,OAAO,EACP,UAAU,EACV,OAAO,EACP,OAAO,EAAE,EAAE,GAAG,EAAE,GACjB,EAAiB,EAAE;;QAClB,gDAAgD;QAChD,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAA,0BAAQ,EAAC;YAC/C,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,qBAAY,EAAE,QAAQ,EAAE,yBAAc,EAAE,CAAC;YACpE,OAAO;SACR,CAAC,CAAA;QAEF,MAAM,cAAc,GAAG,MAAA,OAAO,CAAC,OAAO,0CAAE,OAAO,CAAA;QAE/C,6EAA6E;QAC7E,IAAI,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;QACvC,IAAI,IAAA,gBAAO,EAAC,WAAW,CAAC,EAAE,CAAC;YACzB,WAAW,GAAG,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,YAAY,mCAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAA;YACnE,IAAI,IAAA,gBAAO,EAAC,WAAW,CAAC,EAAE,CAAC;gBACzB,MAAM,OAAO,CAAC;oBACZ,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;4BAC9B,IAAI,EAAE;gCACJ,EAAE,EAAE,wEAAwE;6BAC7E;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,aAAa;gCACvB,OAAO,EACL,uEAAuE;6BAC1E;yBACF;qBACF;iBACF,CAAC,CAAA;gBACF,OAAM;YACR,CAAC;YACD,GAAG,CACD,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,cAAc,EAAE,EACpD,gEAAgE,CACjE,CAAA;QACH,CAAC;QAED,IAAI,SAAS,GAAG,SAAS,CAAC,SAAS,CAAA;QACnC,IAAI,IAAA,gBAAO,EAAC,SAAS,CAAC,IAAI,CAAC,IAAA,gBAAO,EAAC,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU,CAAC,EAAE,CAAC;YAC/D,SAAS,GAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAoB,CAAA;YAChD,GAAG,CACD,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,EAAE,EAClD,4DAA4D,CAC7D,CAAA;QACH,CAAC;QAED,IAAI,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAA;QACjC,IAAI,IAAA,gBAAO,EAAC,QAAQ,CAAC,IAAI,CAAC,IAAA,gBAAO,EAAC,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,CAAC,EAAE,CAAC;YAC7D,QAAQ,GAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAmB,CAAA;YAC9C,GAAG,CACD,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,EAAE,EACjD,0DAA0D,CAC3D,CAAA;QACH,CAAC;QAED,gFAAgF;QAChF,MAAM,KAAK,GAAG,6BAAoB,CAAC,KAAK,CAAC;YACvC,aAAa,EAAE,SAAS,CAAC,aAAa;YACtC,WAAW;YACX,SAAS;YACT,QAAQ;YACR,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,eAAe,EAAE,SAAS,CAAC,eAAe;YAC1C,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;SACjD,CAAC,CAAA;QAEF,gCAAgC;QAChC,MAAM,OAAO,GAA2B;YACtC,YAAY,EAAE,KAAK,CAAC,WAAW;SAChC,CAAA;QACD,IAAI,CAAC,IAAA,gBAAO,EAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC,SAAmB,CAAA;QAC/C,CAAC;QACD,IAAI,CAAC,IAAA,gBAAO,EAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAkB,CAAA;QAC7C,CAAC;QACD,IAAI,CAAC,IAAA,gBAAO,EAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,KAAe,CAAA;QACvC,CAAC;QACD,IAAI,CAAC,IAAA,gBAAO,EAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC,eAAyB,CAAA;QAC3D,CAAC;QAED,MAAM,OAAO,GAAG;YACd,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,aAAa,EAAE,KAAK;YACpB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB,CAAA;QAED,8BAA8B;QAC9B,MAAM,MAAM,GAAG,IAAI,qBAAe,CAAC,QAAQ,CAAC,CAAA;QAC5C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAEtB,8BAA8B;QAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;YACjD,MAAM,UAAU,CAAC;gBACf,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC9B,IAAI,EAAE,EAAE,EAAE,EAAE,oCAAoC,EAAE;qBACnD;iBACF;gBACD,WAAW,EAAE;oBACX,OAAO,EAAE,MAAM;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;oBACxC,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;oBAC7C,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;oBACrD,kBAAkB,EAAE,IAAI,CAAC,SAAS;oBAClC,cAAc,EAAE,2BAAkB,CAAC,IAAI;oBACvC,qBAAqB,EAAE,sCAAsC;iBAC9D;aACF,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,kDAAkD;QAClD,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACxB,MAAM,OAAO,CAAC;gBACZ,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC9B,IAAI,EAAE,EAAE,EAAE,EAAE,8CAA8C,EAAE;wBAC5D,KAAK,EAAE;4BACL,QAAQ,EAAE,cAAc;4BACxB,OAAO,EAAE,2BAA2B;yBACrC;qBACF;iBACF;aACF,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,oEAAoE;QACpE,IAAI,WAAW,IAAI,IAAI,IAAI,WAAW,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YACpE,MAAM,SAAS,GAAG,IAIjB,CAAA;YACD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAC5C,SAAS,CAAC,SAAS,EACnB,SAAS,CAAC,SAAS,EACnB,SAAS,CAAC,OAAO,CAClB,CAAA;YAED,MAAM,UAAU,CAAC;gBACf,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC9B,IAAI,EAAE,EAAE,EAAE,EAAE,yBAAyB,MAAM,MAAM,OAAO,EAAE,EAAE;qBAC7D;iBACF;gBACD,WAAW,EAAE;oBACX,OAAO,EAAE,OAAO;oBAChB,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,EAAE;oBACnB,mBAAmB,EAAE,EAAE;oBACvB,uBAAuB,EAAE,EAAE;oBAC3B,kBAAkB,EAAE,EAAE;oBACtB,cAAc,EAAE,MAAM;oBACtB,qBAAqB,EAAE,OAAO;iBAC/B;aACF,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QAED,gBAAgB;QAChB,MAAM,OAAO,CAAC;YACZ,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBAC9B,IAAI,EAAE,EAAE,EAAE,EAAE,8CAA8C,EAAE;oBAC5D,KAAK,EAAE;wBACL,QAAQ,EAAE,cAAc;wBACxB,OAAO,EAAE,2BAA2B;qBACrC;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC;CAC+C,CAAA"}
@@ -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.93",
4
4
  "packageManager": "yarn@4.5.3",
5
5
  "main": "dist/src/index.js",
6
6
  "repository": {