@awell-health/awell-extensions 1.0.192 → 1.0.194

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. package/dist/extensions/icd/actions/tfu/config/fields.js +1 -1
  2. package/dist/extensions/icd/actions/tfu/config/fields.js.map +1 -1
  3. package/dist/extensions/icd/index.js +2 -2
  4. package/dist/extensions/icd/index.js.map +1 -1
  5. package/dist/extensions/index.js +2 -0
  6. package/dist/extensions/index.js.map +1 -1
  7. package/dist/extensions/markdown.json +4 -0
  8. package/dist/extensions/textline/actions/getMessages/config/dataPoints.d.ts +14 -0
  9. package/dist/extensions/textline/actions/getMessages/config/dataPoints.js +18 -0
  10. package/dist/extensions/textline/actions/getMessages/config/dataPoints.js.map +1 -0
  11. package/dist/extensions/textline/actions/getMessages/config/fields.d.ts +19 -0
  12. package/dist/extensions/textline/actions/getMessages/config/fields.js +20 -0
  13. package/dist/extensions/textline/actions/getMessages/config/fields.js.map +1 -0
  14. package/dist/extensions/textline/actions/getMessages/config/index.d.ts +2 -0
  15. package/dist/extensions/textline/actions/getMessages/config/index.js +9 -0
  16. package/dist/extensions/textline/actions/getMessages/config/index.js.map +1 -0
  17. package/dist/extensions/textline/actions/getMessages/getMessages.d.ts +4 -0
  18. package/dist/extensions/textline/actions/getMessages/getMessages.js +96 -0
  19. package/dist/extensions/textline/actions/getMessages/getMessages.js.map +1 -0
  20. package/dist/extensions/textline/actions/getMessages/getMessages.test.d.ts +1 -0
  21. package/dist/extensions/textline/actions/getMessages/getMessages.test.js +75 -0
  22. package/dist/extensions/textline/actions/getMessages/getMessages.test.js.map +1 -0
  23. package/dist/extensions/textline/actions/getMessages/index.d.ts +1 -0
  24. package/dist/extensions/textline/actions/getMessages/index.js +6 -0
  25. package/dist/extensions/textline/actions/getMessages/index.js.map +1 -0
  26. package/dist/extensions/textline/actions/index.d.ts +73 -0
  27. package/dist/extensions/textline/actions/index.js +10 -0
  28. package/dist/extensions/textline/actions/index.js.map +1 -0
  29. package/dist/extensions/textline/actions/sendSms/config/dataPoints.d.ts +6 -0
  30. package/dist/extensions/textline/actions/sendSms/config/dataPoints.js +10 -0
  31. package/dist/extensions/textline/actions/sendSms/config/dataPoints.js.map +1 -0
  32. package/dist/extensions/textline/actions/sendSms/config/fields.d.ts +31 -0
  33. package/dist/extensions/textline/actions/sendSms/config/fields.js +29 -0
  34. package/dist/extensions/textline/actions/sendSms/config/fields.js.map +1 -0
  35. package/dist/extensions/textline/actions/sendSms/config/index.d.ts +2 -0
  36. package/dist/extensions/textline/actions/sendSms/config/index.js +9 -0
  37. package/dist/extensions/textline/actions/sendSms/config/index.js.map +1 -0
  38. package/dist/extensions/textline/actions/sendSms/index.d.ts +1 -0
  39. package/dist/extensions/textline/actions/sendSms/index.js +6 -0
  40. package/dist/extensions/textline/actions/sendSms/index.js.map +1 -0
  41. package/dist/extensions/textline/actions/sendSms/sendSms.d.ts +4 -0
  42. package/dist/extensions/textline/actions/sendSms/sendSms.js +72 -0
  43. package/dist/extensions/textline/actions/sendSms/sendSms.js.map +1 -0
  44. package/dist/extensions/textline/actions/sendSms/sendSms.test.d.ts +1 -0
  45. package/dist/extensions/textline/actions/sendSms/sendSms.test.js +64 -0
  46. package/dist/extensions/textline/actions/sendSms/sendSms.test.js.map +1 -0
  47. package/dist/extensions/textline/client/schema.d.ts +161 -0
  48. package/dist/extensions/textline/client/schema.js +22 -0
  49. package/dist/extensions/textline/client/schema.js.map +1 -0
  50. package/dist/extensions/textline/client/textLineApi.d.ts +13 -0
  51. package/dist/extensions/textline/client/textLineApi.js +93 -0
  52. package/dist/extensions/textline/client/textLineApi.js.map +1 -0
  53. package/dist/extensions/textline/index.d.ts +2 -0
  54. package/dist/extensions/textline/index.js +19 -0
  55. package/dist/extensions/textline/index.js.map +1 -0
  56. package/dist/extensions/textline/settings.d.ts +37 -0
  57. package/dist/extensions/textline/settings.js +33 -0
  58. package/dist/extensions/textline/settings.js.map +1 -0
  59. package/dist/extensions/textline/validation.d.ts +2 -0
  60. package/dist/extensions/textline/validation.js +9 -0
  61. package/dist/extensions/textline/validation.js.map +1 -0
  62. package/package.json +1 -1
@@ -7,7 +7,7 @@ exports.fields = {
7
7
  icd_codes: {
8
8
  id: 'icd_codes',
9
9
  label: 'ICD Codes',
10
- description: "A comma-separated list of ICD-10 codes (e.g. 'E12.1, E14, H10', etc.)",
10
+ description: 'A list of ICD-10 codes (e.g. ["E12.1", "E14", "H10"] )',
11
11
  type: extensions_core_1.FieldType.STRING,
12
12
  },
13
13
  };
@@ -1 +1 @@
1
- {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../extensions/icd/actions/tfu/config/fields.ts"],"names":[],"mappings":";;;AAAA,mEAAqE;AACrE,6BAAuB;AAEV,QAAA,MAAM,GAAG;IACpB,SAAS,EAAE;QACT,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,WAAW,EACT,uEAAuE;QACzE,IAAI,EAAE,2BAAS,CAAC,MAAM;KACvB;CAC8B,CAAA;AAEpB,QAAA,WAAW,GAAG,OAAC;KACzB,MAAM,CAAC;IACN,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;CACtB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7C,MAAM,KAAK,GAAG,UAAU;SACrB,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAChD,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAA;IACxC,OAAO;QACL,SAAS,EAAE,KAAK;KACjB,CAAA;AACH,CAAC,CAAC;KACD,WAAW,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACzB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/B,OAAO;YACL,SAAS,EAAE,EAAE;SACd,CAAA;KACF;IACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QACvC,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,GAAG,CAAC,QAAQ,CAAC;gBACX,OAAO,EAAE,GAAG,CAAC,4BAA4B;gBACzC,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,QAAQ;aACf,CAAC,CAAA;SACH;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../extensions/icd/actions/tfu/config/fields.ts"],"names":[],"mappings":";;;AAAA,mEAAqE;AACrE,6BAAuB;AAEV,QAAA,MAAM,GAAG;IACpB,SAAS,EAAE;QACT,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,wDAAwD;QACrE,IAAI,EAAE,2BAAS,CAAC,MAAM;KACvB;CAC8B,CAAA;AAEpB,QAAA,WAAW,GAAG,OAAC;KACzB,MAAM,CAAC;IACN,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;CACtB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7C,MAAM,KAAK,GAAG,UAAU;SACrB,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAChD,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAA;IACxC,OAAO;QACL,SAAS,EAAE,KAAK;KACjB,CAAA;AACH,CAAC,CAAC;KACD,WAAW,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACzB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/B,OAAO;YACL,SAAS,EAAE,EAAE;SACd,CAAA;KACF;IACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QACvC,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,GAAG,CAAC,QAAQ,CAAC;gBACX,OAAO,EAAE,GAAG,CAAC,4BAA4B;gBACzC,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,QAAQ;aACf,CAAC,CAAA;SACH;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -8,8 +8,8 @@ const extensions_core_1 = require("@awell-health/extensions-core");
8
8
  const actions_1 = __importDefault(require("./actions"));
9
9
  exports.icd = {
10
10
  key: 'icd',
11
- title: 'An ICD extension!',
12
- description: 'An example extension developers can look at to get started with building their first extension.',
11
+ title: 'ICD10 Lookup',
12
+ description: 'This extension allows you to get the name of the diseases based on its ICD.',
13
13
  icon_url: 'https://res.cloudinary.com/da7x4rzl4/image/upload/v1678870116/Awell%20Extensions/Awell_Logo.png',
14
14
  category: extensions_core_1.Category.DATA,
15
15
  author: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../extensions/icd/index.ts"],"names":[],"mappings":";;;;;;AACA,mEAAoE;AACpE,wDAA+B;AAElB,QAAA,GAAG,GAAc;IAC5B,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EACT,iGAAiG;IACnG,QAAQ,EACN,iGAAiG;IACnG,QAAQ,EAAE,0BAAQ,CAAC,IAAI;IACvB,MAAM,EAAE;QACN,UAAU,EAAE,4BAAU,CAAC,KAAK;KAC7B;IACD,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAP,iBAAO;CACR,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../extensions/icd/index.ts"],"names":[],"mappings":";;;;;;AACA,mEAAoE;AACpE,wDAA+B;AAElB,QAAA,GAAG,GAAc;IAC5B,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,cAAc;IACrB,WAAW,EACT,6EAA6E;IAC/E,QAAQ,EACN,iGAAiG;IACnG,QAAQ,EAAE,0BAAQ,CAAC,IAAI;IACvB,MAAM,EAAE;QACN,UAAU,EAAE,4BAAU,CAAC,KAAK;KAC7B;IACD,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAP,iBAAO;CACR,CAAA"}
@@ -55,6 +55,7 @@ const nexuzhealth_1 = require("./nexuzhealth");
55
55
  const collectData_1 = require("./collectData");
56
56
  const athenahealth_1 = require("./athenahealth");
57
57
  const icd_1 = require("./icd");
58
+ const textline_1 = require("./textline");
58
59
  const json = __importStar(require("./markdown.json"));
59
60
  const external_server_1 = require("./external-server");
60
61
  exports.markdown = json;
@@ -93,5 +94,6 @@ exports.extensions = [
93
94
  // Wellinks,
94
95
  zendesk_1.Zendesk,
95
96
  westFax_1.WestFax,
97
+ textline_1.TextLine,
96
98
  ];
97
99
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../extensions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kCAAkC;AAClC,mCAA+B;AAC/B,2CAAuC;AACvC,yCAAqC;AACrC,mDAA+C;AAC/C,6CAAyC;AACzC,+CAA2C;AAC3C,uCAAmC;AACnC,yCAAqC;AACrC,yCAAqC;AACrC,+CAA0C;AAC1C,2CAAuC;AACvC,uCAAmC;AACnC,iCAAsC;AACtC,+CAA2C;AAC3C,2CAAuC;AACvC,qCAAiC;AACjC,+CAA+C;AAC/C,6DAA+C;AAC/C,yCAAqC;AACrC,yCAAqC;AACrC,yCAAqC;AACrC,2CAAuC;AACvC,yCAAqC;AACrC,uCAAmC;AACnC,uCAAmC;AACnC,uCAAmC;AACnC,+CAA2C;AAC3C,+CAA2C;AAC3C,iDAA6C;AAC7C,+BAA2B;AAE3B,sDAAuC;AACvC,uDAAkD;AAGrC,QAAA,QAAQ,GAAa,IAAI,CAAA;AAEzB,QAAA,UAAU,GAAG;IACxB,oFAAoF;IACpF,4CAA4C;IAC5C,aAAa;IACb,aAAK;IACL,2BAAY;IACZ,qBAAS;IACT,mBAAQ;IACR,6BAAa;IACb,uBAAU;IACV,mBAAQ;IACR,yBAAW;IACX,mBAAQ;IACR,yBAAW;IACX,iBAAO;IACP,gCAAc;IACd,mBAAQ;IACR,mBAAQ;IACR,wBAAU;IACV,SAAG;IACH,iBAAO;IACP,mBAAQ;IACR,qBAAS;IACT,iBAAO;IACP,oBAAa;IACb,yBAAW;IACX,qBAAS;IACT,yBAAW;IACX,mBAAQ;IACR,6BAAQ;IACR,qBAAS;IACT,eAAM;IACN,YAAY;IACZ,iBAAO;IACP,iBAAO;CACR,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../extensions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kCAAkC;AAClC,mCAA+B;AAC/B,2CAAuC;AACvC,yCAAqC;AACrC,mDAA+C;AAC/C,6CAAyC;AACzC,+CAA2C;AAC3C,uCAAmC;AACnC,yCAAqC;AACrC,yCAAqC;AACrC,+CAA0C;AAC1C,2CAAuC;AACvC,uCAAmC;AACnC,iCAAsC;AACtC,+CAA2C;AAC3C,2CAAuC;AACvC,qCAAiC;AACjC,+CAA+C;AAC/C,6DAA+C;AAC/C,yCAAqC;AACrC,yCAAqC;AACrC,yCAAqC;AACrC,2CAAuC;AACvC,yCAAqC;AACrC,uCAAmC;AACnC,uCAAmC;AACnC,uCAAmC;AACnC,+CAA2C;AAC3C,+CAA2C;AAC3C,iDAA6C;AAC7C,+BAA2B;AAC3B,yCAAqC;AAGrC,sDAAuC;AACvC,uDAAkD;AAGrC,QAAA,QAAQ,GAAa,IAAI,CAAA;AAEzB,QAAA,UAAU,GAAG;IACxB,oFAAoF;IACpF,4CAA4C;IAC5C,aAAa;IACb,aAAK;IACL,2BAAY;IACZ,qBAAS;IACT,mBAAQ;IACR,6BAAa;IACb,uBAAU;IACV,mBAAQ;IACR,yBAAW;IACX,mBAAQ;IACR,yBAAW;IACX,iBAAO;IACP,gCAAc;IACd,mBAAQ;IACR,mBAAQ;IACR,wBAAU;IACV,SAAG;IACH,iBAAO;IACP,mBAAQ;IACR,qBAAS;IACT,iBAAO;IACP,oBAAa;IACb,yBAAW;IACX,qBAAS;IACT,yBAAW;IACX,mBAAQ;IACR,6BAAQ;IACR,qBAAS;IACT,eAAM;IACN,YAAY;IACZ,iBAAO;IACP,iBAAO;IACP,mBAAQ;CACT,CAAA"}
@@ -107,6 +107,10 @@
107
107
  "readme": "---\ntitle: Sendgrid\ndescription: SendGrid is a cloud-based email delivery platform that provides services for sending and managing email campaigns, transactional emails, and other types of messages.\n---\n# Sendgrid\n\nSendGrid is a cloud-based email delivery platform that provides services for sending and managing email campaigns, transactional emails, and other types of messages.\n\n## Extension settings\n\nIn order to set up this extension, you will need to provide:\n\n1. An API key\n2. A from name\n3. A from email\n\n## Custom Actions\n\n### Send email\n\nAllows for sending a plain email to a recipient.\n\n### Send email with a template\n\nAllows for sending an email based on a template to a recipient. You can also insert variables so they are rendered in your template.\n\n### Add or update contact\n\nAllows adding or updating contacts. The contact to update will be determined only by the email field and any fields omitted from the request will remain as they were. A contact's ID cannot be used to update the contact.\n\nPlease note that custom fields need to have been already created if you wish to set their values for the contacts being upserted. To do this, please use the \"Create Custom Field Definition\" endpoint. They also can be created in **Marketing -> Custom Fields** section in Sendgrid.\n\n### Add and remove emails from suppression lists\n\nSuppression lists ([link on SendGrid's website](https://docs.sendgrid.com/api-reference/suppressions-suppressions/add-suppressions-to-a-suppression-group)) are unsubscribe groups. Use these actions to add an email address to any number of unsubscribe groups. You can apply a suppression add/remove to multiple groups by using comma-separated lists for the groups. Only a single email can be used. **This functionality is different from SendGrid's API, which allows multiple email addresses for a single group**.\n\n### Check an import status\n\nAllows user to check the status of contact import jobs when given a jobID. Statuses are either: `pending`, `completed`, `failed`, or `errored`.",
108
108
  "changelog": "# Sendgrid changelog\n\n## July 7, 2023\n\nAdded \"Add Email to Suppression Lists\" and \"Remove Email from Suppression Lists\" actions.\n\n## July 15, 2023\n\nUpdated \"Add or Update Contact\" acction to create a datapoint of the Job ID.\n\nAdded \"Check Import Status\" action.\n\n## July 27, 2023\n\nAdds \"Finished At\" data point to the importStatus action."
109
109
  },
110
+ "textline": {
111
+ "readme": "---\ntitle: TextLine\ndescription: Textline's business texting software offers solutions for sales, marketing, customer service and beyond. Utilize the power of SMS to grow quickly.\n---\n\n# TextLine\n\nTextLine is a customer engagement platform used by hundreds of thousands of businesses and more than ten million developers worldwide to build unique, personalized experiences for their customers.\n\nThey are known for democratizing channels like voice, text, chat, video, and email through APIs, making it easy for every organization to build meaningful interactions with customers on the channels they prefer.\n\n## Extension settings\n\nIn order to set up this extension, you will need:\n\n1. A TextLine API key or auth token which can be found in the TextLine console.\n2. Your account SID which can be found in the TextLine console.\n3. A phone number to send the message from. This must be a TextLine phone number that you own.\n\n## Custom Actions\n\n### Send SMS\n\nSend an SMS with TextLine to a recipient of your liking.\n\n### Get messages\n\nGet a list of text messages matching the given criteria. Only the last 30 messages are returned.\n",
112
+ "changelog": "# TextLine changelog\n\n## 2024-02-26\n\n1. Add capability to search for messages using all the allowed filters provided by TextLine API.\n2. Add \"Send SMS\" action\n"
113
+ },
110
114
  "transform": {
111
115
  "readme": "---\ntitle: Transform\ndescription: Transform is an extension with utility functions that allows you to transform or parse data to a format of your liking\n---\n\n# Transform\n\nTransform is an extension on Awell's Marketplace with utility functions that allows you to transform data from one type to another. These functions are particularly useful e.g. when system A works with IDs that are numbers but system B works with IDs that are strings.\n\n## Custom Actions\n\n### Parse number to text\n\nTransform or parse a number to text (string).\n\n### Parse text to number\n\nTransform or parse text (string) to a number. Will return NaN if the input data is not an actual number.\n\n### Parse date to unix timestamp\n\nTransform or parse a date to a unix timestamp.\n\n### Parse unix timestamp to unix date\n\nTransform or parse a unix timestamp to a date.\n\n## Parse number to text with dictionary\n\nTransform or parse a number to a string using a dictionary. Useful for when you have numeric data points but want to map them to strings based on a dictionary. When the action is called with a number that does not have a corresponding mapping in the provided dictionary, it simply returns the number itself as a string. \n\nThe dictionary should be structured in JSON format with string keys mapping to string values. Each key represents a number (as a string), and each value is the corresponding text representation.\n\n**Example:**\n```json\n{\n \"0\": \"Male\",\n \"1\": \"Female\",\n \"2\": \"Not known\",\n // ... other number mappings ...\n}\n\n",
112
116
  "changelog": "# Transform changelog\n\n## January 2024\n\n- Added \"Parse number to text with dictionary\" action"
@@ -0,0 +1,14 @@
1
+ export declare const dataPoints: {
2
+ numberOfMessages: {
3
+ key: string;
4
+ valueType: "number";
5
+ };
6
+ allMessages: {
7
+ key: string;
8
+ valueType: "strings_array";
9
+ };
10
+ latestMessage: {
11
+ key: string;
12
+ valueType: "string";
13
+ };
14
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dataPoints = void 0;
4
+ exports.dataPoints = {
5
+ numberOfMessages: {
6
+ key: 'numberOfMessages',
7
+ valueType: 'number',
8
+ },
9
+ allMessages: {
10
+ key: 'allMessages',
11
+ valueType: 'strings_array',
12
+ },
13
+ latestMessage: {
14
+ key: 'latestMessage',
15
+ valueType: 'string',
16
+ },
17
+ };
18
+ //# sourceMappingURL=dataPoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataPoints.js","sourceRoot":"","sources":["../../../../../../extensions/textline/actions/getMessages/config/dataPoints.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACxB,gBAAgB,EAAE;QAChB,GAAG,EAAE,kBAAkB;QACvB,SAAS,EAAE,QAAQ;KACpB;IACD,WAAW,EAAE;QACX,GAAG,EAAE,aAAa;QAClB,SAAS,EAAE,eAAe;KAC3B;IACD,aAAa,EAAE;QACb,GAAG,EAAE,eAAe;QACpB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ import { FieldType, StringType } from '@awell-health/extensions-core';
3
+ export declare const fields: {
4
+ phoneNumber: {
5
+ id: string;
6
+ label: string;
7
+ type: FieldType.STRING;
8
+ stringType: StringType.PHONE;
9
+ description: string;
10
+ required: false;
11
+ };
12
+ };
13
+ export declare const FieldsValidationSchema: z.ZodObject<{
14
+ phoneNumber: 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, "">]>;
15
+ }, "strip", z.ZodTypeAny, {
16
+ phoneNumber?: import("libphonenumber-js").E164Number | undefined;
17
+ }, {
18
+ phoneNumber?: string | undefined;
19
+ }>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldsValidationSchema = exports.fields = void 0;
4
+ const zod_1 = require("zod");
5
+ const extensions_core_1 = require("@awell-health/extensions-core");
6
+ const extensions_core_2 = require("@awell-health/extensions-core");
7
+ exports.fields = {
8
+ phoneNumber: {
9
+ id: 'phoneNumber',
10
+ label: 'Phone number to filter',
11
+ type: extensions_core_2.FieldType.STRING,
12
+ stringType: extensions_core_2.StringType.PHONE,
13
+ description: 'Search for text messages sent from a specific phone number',
14
+ required: false,
15
+ },
16
+ };
17
+ exports.FieldsValidationSchema = zod_1.z.object({
18
+ phoneNumber: extensions_core_1.E164PhoneValidationOptionalSchema,
19
+ });
20
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../extensions/textline/actions/getMessages/config/fields.ts"],"names":[],"mappings":";;;AAAA,6BAAwC;AACxC,mEAAiF;AACjF,mEAIsC;AAEzB,QAAA,MAAM,GAAG;IACpB,WAAW,EAAE;QACX,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,wBAAwB;QAC/B,IAAI,EAAE,2BAAS,CAAC,MAAM;QACtB,UAAU,EAAE,4BAAU,CAAC,KAAK;QAC5B,WAAW,EAAE,4DAA4D;QACzE,QAAQ,EAAE,KAAK;KAChB;CAC8B,CAAA;AAEpB,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,WAAW,EAAE,mDAAiC;CACG,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { FieldsValidationSchema, fields } from './fields';
2
+ export { dataPoints } from './dataPoints';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dataPoints = exports.fields = exports.FieldsValidationSchema = void 0;
4
+ var fields_1 = require("./fields");
5
+ Object.defineProperty(exports, "FieldsValidationSchema", { enumerable: true, get: function () { return fields_1.FieldsValidationSchema; } });
6
+ Object.defineProperty(exports, "fields", { enumerable: true, get: function () { return fields_1.fields; } });
7
+ var dataPoints_1 = require("./dataPoints");
8
+ Object.defineProperty(exports, "dataPoints", { enumerable: true, get: function () { return dataPoints_1.dataPoints; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../extensions/textline/actions/getMessages/config/index.ts"],"names":[],"mappings":";;;AAAA,mCAAyD;AAAhD,gHAAA,sBAAsB,OAAA;AAAE,gGAAA,MAAM,OAAA;AACvC,2CAAyC;AAAhC,wGAAA,UAAU,OAAA"}
@@ -0,0 +1,4 @@
1
+ import { type Action } from '@awell-health/extensions-core';
2
+ import { type settings } from '../../settings';
3
+ import { fields } from './config';
4
+ export declare const getMessages: Action<typeof fields, typeof settings>;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getMessages = void 0;
7
+ const zod_1 = require("zod");
8
+ const zod_validation_error_1 = require("zod-validation-error");
9
+ const settings_1 = require("../../settings");
10
+ const extensions_core_1 = require("@awell-health/extensions-core");
11
+ const config_1 = require("./config");
12
+ const textLineApi_1 = __importDefault(require("../../client/textLineApi"));
13
+ const lodash_1 = require("lodash");
14
+ exports.getMessages = {
15
+ key: 'getMessages',
16
+ title: 'Get messages',
17
+ description: `
18
+ Get a list of text messages matching the given criteria.
19
+ You can also filter the Messages by providing one of the allowed filters.
20
+ `,
21
+ category: extensions_core_1.Category.COMMUNICATION,
22
+ fields: config_1.fields,
23
+ dataPoints: config_1.dataPoints,
24
+ previewable: true,
25
+ onActivityCreated: async (payload, onComplete, onError) => {
26
+ try {
27
+ const { settings: { email, password, apiKey }, fields: { phoneNumber }, } = (0, extensions_core_1.validate)({
28
+ schema: zod_1.z.object({
29
+ settings: settings_1.SettingsValidationSchema,
30
+ fields: config_1.FieldsValidationSchema,
31
+ }),
32
+ payload,
33
+ });
34
+ const textLineApi = new textLineApi_1.default(email, password, apiKey);
35
+ const messages = await textLineApi.getMessages(phoneNumber, 1, 30);
36
+ if ((0, lodash_1.isNil)(messages.posts)) {
37
+ await onComplete({
38
+ data_points: {
39
+ allMessages: '',
40
+ numberOfMessages: '0',
41
+ undefined,
42
+ },
43
+ });
44
+ }
45
+ else {
46
+ // received messages contain a phone number, sent messages will not
47
+ const receivedMessages = messages.posts.filter((p) => !(0, lodash_1.isNil)(p.creator.phone_number));
48
+ const numberOfMessages = receivedMessages.length;
49
+ const allMessages = receivedMessages.map(function (p) {
50
+ return p.body;
51
+ });
52
+ const latestMessage = numberOfMessages > 0 ? receivedMessages[0].body : undefined;
53
+ await onComplete({
54
+ data_points: {
55
+ allMessages: JSON.stringify(allMessages),
56
+ numberOfMessages: String(numberOfMessages),
57
+ latestMessage,
58
+ },
59
+ });
60
+ }
61
+ }
62
+ catch (err) {
63
+ if (err instanceof zod_1.ZodError) {
64
+ const error = (0, zod_validation_error_1.fromZodError)(err);
65
+ await onError({
66
+ events: [
67
+ {
68
+ date: new Date().toISOString(),
69
+ text: { en: error.message },
70
+ error: {
71
+ category: 'BAD_REQUEST',
72
+ message: error.message,
73
+ },
74
+ },
75
+ ],
76
+ });
77
+ }
78
+ else {
79
+ const message = err.message;
80
+ await onError({
81
+ events: [
82
+ {
83
+ date: new Date().toISOString(),
84
+ text: { en: message },
85
+ error: {
86
+ category: 'SERVER_ERROR',
87
+ message,
88
+ },
89
+ },
90
+ ],
91
+ });
92
+ }
93
+ }
94
+ },
95
+ };
96
+ //# sourceMappingURL=getMessages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMessages.js","sourceRoot":"","sources":["../../../../../extensions/textline/actions/getMessages/getMessages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const getMessages_1 = require("./getMessages");
4
+ const tests_1 = require("../../../../src/tests");
5
+ const textLineApi_1 = require("../../client/__mocks__/textLineApi");
6
+ jest.mock('../../client/textLineApi', () => jest.fn(() => textLineApi_1.mockReturnValue));
7
+ describe('Get messages action', () => {
8
+ const onComplete = jest.fn();
9
+ const onError = jest.fn();
10
+ beforeEach(() => {
11
+ onComplete.mockClear();
12
+ onError.mockClear();
13
+ });
14
+ test('Should call the onComplete callback with one answer', async () => {
15
+ await getMessages_1.getMessages.onActivityCreated((0, tests_1.generateTestPayload)({
16
+ fields: {
17
+ phoneNumber: '+18999999999',
18
+ },
19
+ settings: {
20
+ email: 'user',
21
+ password: 'password',
22
+ apiKey: 'apikey',
23
+ },
24
+ }), onComplete, onError);
25
+ expect(onComplete).toHaveBeenCalledWith({
26
+ data_points: {
27
+ allMessages: '["Received"]',
28
+ numberOfMessages: '1',
29
+ latestMessage: 'Received',
30
+ },
31
+ });
32
+ expect(onError).not.toHaveBeenCalled();
33
+ });
34
+ test('Should call the onComplete callback with zero answers', async () => {
35
+ await getMessages_1.getMessages.onActivityCreated((0, tests_1.generateTestPayload)({
36
+ fields: {
37
+ phoneNumber: '+19144542596',
38
+ },
39
+ settings: {
40
+ email: 'user',
41
+ password: 'password',
42
+ apiKey: 'apikey',
43
+ },
44
+ }), onComplete, onError);
45
+ expect(onComplete).toHaveBeenCalledWith({
46
+ data_points: {
47
+ allMessages: '',
48
+ numberOfMessages: '0',
49
+ latestMessage: undefined,
50
+ },
51
+ });
52
+ expect(onError).not.toHaveBeenCalled();
53
+ });
54
+ test('Should call the onComplete even with no params', async () => {
55
+ await getMessages_1.getMessages.onActivityCreated((0, tests_1.generateTestPayload)({
56
+ fields: {
57
+ phoneNumber: undefined,
58
+ },
59
+ settings: {
60
+ email: 'user',
61
+ password: 'password',
62
+ apiKey: 'apikey',
63
+ },
64
+ }), onComplete, onError);
65
+ expect(onComplete).toHaveBeenCalledWith({
66
+ data_points: {
67
+ allMessages: '',
68
+ numberOfMessages: '0',
69
+ latestMessage: undefined,
70
+ },
71
+ });
72
+ expect(onError).not.toHaveBeenCalled();
73
+ });
74
+ });
75
+ //# sourceMappingURL=getMessages.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMessages.test.js","sourceRoot":"","sources":["../../../../../extensions/textline/actions/getMessages/getMessages.test.ts"],"names":[],"mappings":";;AAAA,+CAA2C;AAC3C,iDAA2D;AAC3D,oEAAoE;AAEpE,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,6BAAe,CAAC,CAAC,CAAA;AAE3E,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,WAAW,EAAE,cAAc;aAC5B;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,UAAU;gBACpB,MAAM,EAAE,QAAQ;aACjB;SACF,CAAC,EACF,UAAU,EACV,OAAO,CACR,CAAA;QACD,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC;YACtC,WAAW,EAAE;gBACX,WAAW,EAAE,cAAc;gBAC3B,gBAAgB,EAAE,GAAG;gBACrB,aAAa,EAAE,UAAU;aAC1B;SACF,CAAC,CAAA;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,yBAAW,CAAC,iBAAiB,CACjC,IAAA,2BAAmB,EAAC;YAClB,MAAM,EAAE;gBACN,WAAW,EAAE,cAAc;aAC5B;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,UAAU;gBACpB,MAAM,EAAE,QAAQ;aACjB;SACF,CAAC,EACF,UAAU,EACV,OAAO,CACR,CAAA;QACD,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC;YACtC,WAAW,EAAE;gBACX,WAAW,EAAE,EAAE;gBACf,gBAAgB,EAAE,GAAG;gBACrB,aAAa,EAAE,SAAS;aACzB;SACF,CAAC,CAAA;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,yBAAW,CAAC,iBAAiB,CACjC,IAAA,2BAAmB,EAAC;YAClB,MAAM,EAAE;gBACN,WAAW,EAAE,SAAS;aACvB;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,UAAU;gBACpB,MAAM,EAAE,QAAQ;aACjB;SACF,CAAC,EACF,UAAU,EACV,OAAO,CACR,CAAA;QACD,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC;YACtC,WAAW,EAAE;gBACX,WAAW,EAAE,EAAE;gBACf,gBAAgB,EAAE,GAAG;gBACrB,aAAa,EAAE,SAAS;aACzB;SACF,CAAC,CAAA;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;IACxC,CAAC,CAAC,CAAA;AAEJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export { getMessages } from './getMessages';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMessages = void 0;
4
+ var getMessages_1 = require("./getMessages");
5
+ Object.defineProperty(exports, "getMessages", { enumerable: true, get: function () { return getMessages_1.getMessages; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/textline/actions/getMessages/index.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAAlC,0GAAA,WAAW,OAAA"}
@@ -0,0 +1,73 @@
1
+ export declare const actions: {
2
+ sendSms: import("@awell-health/extensions-core").Action<{
3
+ recipient: {
4
+ id: string;
5
+ label: string;
6
+ type: import("@awell-health/extensions-core").FieldType.STRING;
7
+ stringType: import("@awell-health/extensions-core").StringType.PHONE;
8
+ description: string;
9
+ required: true;
10
+ };
11
+ message: {
12
+ id: string;
13
+ label: string;
14
+ description: string;
15
+ type: import("@awell-health/extensions-core").FieldType.TEXT;
16
+ required: true;
17
+ };
18
+ }, {
19
+ email: {
20
+ label: string;
21
+ key: string;
22
+ obfuscated: false;
23
+ required: true;
24
+ description: string;
25
+ };
26
+ password: {
27
+ label: string;
28
+ key: string;
29
+ obfuscated: true;
30
+ required: true;
31
+ description: string;
32
+ };
33
+ apiKey: {
34
+ label: string;
35
+ key: string;
36
+ obfuscated: true;
37
+ required: true;
38
+ description: string;
39
+ };
40
+ }, string, never>;
41
+ getMessages: import("@awell-health/extensions-core").Action<{
42
+ phoneNumber: {
43
+ id: string;
44
+ label: string;
45
+ type: import("@awell-health/extensions-core").FieldType.STRING;
46
+ stringType: import("@awell-health/extensions-core").StringType.PHONE;
47
+ description: string;
48
+ required: false;
49
+ };
50
+ }, {
51
+ email: {
52
+ label: string;
53
+ key: string;
54
+ obfuscated: false;
55
+ required: true;
56
+ description: string;
57
+ };
58
+ password: {
59
+ label: string;
60
+ key: string;
61
+ obfuscated: true;
62
+ required: true;
63
+ description: string;
64
+ };
65
+ apiKey: {
66
+ label: string;
67
+ key: string;
68
+ obfuscated: true;
69
+ required: true;
70
+ description: string;
71
+ };
72
+ }, string, never>;
73
+ };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.actions = void 0;
4
+ const sendSms_1 = require("./sendSms");
5
+ const getMessages_1 = require("./getMessages");
6
+ exports.actions = {
7
+ sendSms: sendSms_1.sendSms,
8
+ getMessages: getMessages_1.getMessages,
9
+ };
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../extensions/textline/actions/index.ts"],"names":[],"mappings":";;;AAAA,uCAAmC;AACnC,+CAA2C;AAE9B,QAAA,OAAO,GAAG;IACrB,OAAO,EAAP,iBAAO;IACP,WAAW,EAAX,yBAAW;CACZ,CAAA"}
@@ -0,0 +1,6 @@
1
+ export declare const dataPoints: {
2
+ conversationId: {
3
+ key: string;
4
+ valueType: "string";
5
+ };
6
+ };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dataPoints = void 0;
4
+ exports.dataPoints = {
5
+ conversationId: {
6
+ key: 'conversationId',
7
+ valueType: 'string',
8
+ },
9
+ };
10
+ //# sourceMappingURL=dataPoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataPoints.js","sourceRoot":"","sources":["../../../../../../extensions/textline/actions/sendSms/config/dataPoints.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACxB,cAAc,EAAE;QACd,GAAG,EAAE,gBAAgB;QACrB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA"}
@@ -0,0 +1,31 @@
1
+ import { z } from 'zod';
2
+ import { FieldType, StringType } from '@awell-health/extensions-core';
3
+ export declare const fields: {
4
+ recipient: {
5
+ id: string;
6
+ label: string;
7
+ type: FieldType.STRING;
8
+ stringType: StringType.PHONE;
9
+ description: string;
10
+ required: true;
11
+ };
12
+ message: {
13
+ id: string;
14
+ label: string;
15
+ description: string;
16
+ type: FieldType.TEXT;
17
+ required: true;
18
+ };
19
+ };
20
+ export declare const FieldsValidationSchema: z.ZodObject<{
21
+ 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>;
22
+ message: z.ZodString;
23
+ }, "strip", z.ZodTypeAny, {
24
+ message: string;
25
+ recipient: string & {
26
+ __tag?: "E164Number" | undefined;
27
+ };
28
+ }, {
29
+ message: string;
30
+ recipient: string;
31
+ }>;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FieldsValidationSchema = exports.fields = void 0;
4
+ const zod_1 = require("zod");
5
+ const extensions_core_1 = require("@awell-health/extensions-core");
6
+ const extensions_core_2 = require("@awell-health/extensions-core");
7
+ const validation_1 = require("../../../validation");
8
+ exports.fields = {
9
+ recipient: {
10
+ id: 'recipient',
11
+ label: '"To" phone number',
12
+ type: extensions_core_2.FieldType.STRING,
13
+ stringType: extensions_core_2.StringType.PHONE,
14
+ description: 'The phone number you would like to send the text message to.',
15
+ required: true,
16
+ },
17
+ message: {
18
+ id: 'message',
19
+ label: 'Message',
20
+ description: 'The message you would like to send.',
21
+ type: extensions_core_2.FieldType.TEXT,
22
+ required: true,
23
+ },
24
+ };
25
+ exports.FieldsValidationSchema = zod_1.z.object({
26
+ recipient: extensions_core_1.E164PhoneValidationSchema,
27
+ message: validation_1.MessageValidationSchema,
28
+ });
29
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../extensions/textline/actions/sendSms/config/fields.ts"],"names":[],"mappings":";;;AAAA,6BAAwC;AACxC,mEAAyE;AACzE,mEAIsC;AACtC,oDAA6D;AAEhD,QAAA,MAAM,GAAG;IACpB,SAAS,EAAE;QACT,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,2BAAS,CAAC,MAAM;QACtB,UAAU,EAAE,4BAAU,CAAC,KAAK;QAC5B,WAAW,EAAE,8DAA8D;QAC3E,QAAQ,EAAE,IAAI;KACf;IACD,OAAO,EAAE;QACP,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,qCAAqC;QAClD,IAAI,EAAE,2BAAS,CAAC,IAAI;QACpB,QAAQ,EAAE,IAAI;KACf;CAC8B,CAAA;AAEpB,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,SAAS,EAAE,2CAAyB;IACpC,OAAO,EAAE,oCAAuB;CACiB,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { FieldsValidationSchema, fields } from './fields';
2
+ export { dataPoints } from './dataPoints';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dataPoints = exports.fields = exports.FieldsValidationSchema = void 0;
4
+ var fields_1 = require("./fields");
5
+ Object.defineProperty(exports, "FieldsValidationSchema", { enumerable: true, get: function () { return fields_1.FieldsValidationSchema; } });
6
+ Object.defineProperty(exports, "fields", { enumerable: true, get: function () { return fields_1.fields; } });
7
+ var dataPoints_1 = require("./dataPoints");
8
+ Object.defineProperty(exports, "dataPoints", { enumerable: true, get: function () { return dataPoints_1.dataPoints; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../extensions/textline/actions/sendSms/config/index.ts"],"names":[],"mappings":";;;AAAA,mCAAyD;AAAhD,gHAAA,sBAAsB,OAAA;AAAE,gGAAA,MAAM,OAAA;AACvC,2CAAyC;AAAhC,wGAAA,UAAU,OAAA"}
@@ -0,0 +1 @@
1
+ export { sendSms } from './sendSms';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendSms = void 0;
4
+ var sendSms_1 = require("./sendSms");
5
+ Object.defineProperty(exports, "sendSms", { enumerable: true, get: function () { return sendSms_1.sendSms; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/textline/actions/sendSms/index.ts"],"names":[],"mappings":";;;AAAA,qCAAmC;AAA1B,kGAAA,OAAO,OAAA"}
@@ -0,0 +1,4 @@
1
+ import { type Action } from '@awell-health/extensions-core';
2
+ import { type settings } from '../../settings';
3
+ import { fields } from './config';
4
+ export declare const sendSms: Action<typeof fields, typeof settings>;