@awell-health/awell-extensions 1.0.226 → 1.0.228
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/extensions/awell/v1/actions/updatePatient/config/fields.js +11 -11
- package/dist/extensions/awell/v1/actions/updatePatient/config/fields.js.map +1 -1
- package/dist/extensions/awell/v1/actions/updatePatient/updatePatient.test.js +1 -1
- package/dist/extensions/awell/v1/actions/updatePatient/updatePatient.test.js.map +1 -1
- package/dist/extensions/index.js +3 -0
- package/dist/extensions/index.js.map +1 -1
- package/dist/extensions/markdown.json +4 -0
- package/dist/extensions/talkDesk/actions/index.d.ts +48 -0
- package/dist/extensions/talkDesk/actions/index.js +8 -0
- package/dist/extensions/talkDesk/actions/index.js.map +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/datapoints.d.ts +10 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/datapoints.js +14 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/datapoints.js.map +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/fields.d.ts +28 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/fields.js +61 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/fields.js.map +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/index.d.ts +2 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/index.js +9 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/config/index.js.map +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/index.d.ts +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/index.js +6 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/index.js.map +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/triggerFlow.d.ts +4 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/triggerFlow.js +29 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/triggerFlow.js.map +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/triggerFlow.test.d.ts +1 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/triggerFlow.test.js +30 -0
- package/dist/extensions/talkDesk/actions/triggerFlow/triggerFlow.test.js.map +1 -0
- package/dist/extensions/talkDesk/api/apiConfig.d.ts +6 -0
- package/dist/extensions/talkDesk/api/apiConfig.js +81 -0
- package/dist/extensions/talkDesk/api/apiConfig.js.map +1 -0
- package/dist/extensions/talkDesk/api/cacheService.d.ts +11 -0
- package/dist/extensions/talkDesk/api/cacheService.js +15 -0
- package/dist/extensions/talkDesk/api/cacheService.js.map +1 -0
- package/dist/extensions/talkDesk/api/schema/flows.d.ts +4 -0
- package/dist/extensions/talkDesk/api/schema/flows.js +3 -0
- package/dist/extensions/talkDesk/api/schema/flows.js.map +1 -0
- package/dist/extensions/talkDesk/api/schema/index.d.ts +1 -0
- package/dist/extensions/talkDesk/api/schema/index.js +3 -0
- package/dist/extensions/talkDesk/api/schema/index.js.map +1 -0
- package/dist/extensions/talkDesk/api/talkdeskClient.d.ts +23 -0
- package/dist/extensions/talkDesk/api/talkdeskClient.js +36 -0
- package/dist/extensions/talkDesk/api/talkdeskClient.js.map +1 -0
- package/dist/extensions/talkDesk/helpers/index.d.ts +1 -0
- package/dist/extensions/talkDesk/helpers/index.js +6 -0
- package/dist/extensions/talkDesk/helpers/index.js.map +1 -0
- package/dist/extensions/talkDesk/helpers/validatePayloadAndCreateClient.d.ts +13 -0
- package/dist/extensions/talkDesk/helpers/validatePayloadAndCreateClient.js +32 -0
- package/dist/extensions/talkDesk/helpers/validatePayloadAndCreateClient.js.map +1 -0
- package/dist/extensions/talkDesk/index.d.ts +2 -0
- package/dist/extensions/talkDesk/index.js +22 -0
- package/dist/extensions/talkDesk/index.js.map +1 -0
- package/dist/extensions/talkDesk/settings.d.ts +47 -0
- package/dist/extensions/talkDesk/settings.js +42 -0
- package/dist/extensions/talkDesk/settings.js.map +1 -0
- package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.js +1 -1
- package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.js.map +1 -1
- package/dist/src/utils/getNextDateWithinBusinessHours/getNextDateWithinBusinessHours.test.js +2 -2
- package/package.json +1 -1
@@ -107,20 +107,20 @@ exports.fields = {
|
|
107
107
|
},
|
108
108
|
};
|
109
109
|
exports.FieldsValidationSchema = zod_1.z.object({
|
110
|
-
patientCode: zod_1.z.optional(zod_1.z.string()),
|
111
|
-
firstName: zod_1.z.optional(zod_1.z.string()),
|
112
|
-
lastName: zod_1.z.optional(zod_1.z.string()),
|
110
|
+
patientCode: zod_1.z.optional(zod_1.z.string().trim().nonempty()),
|
111
|
+
firstName: zod_1.z.optional(zod_1.z.string().trim()),
|
112
|
+
lastName: zod_1.z.optional(zod_1.z.string().trim()),
|
113
113
|
birthDate: zod_1.z.optional(zod_1.z.coerce.date().transform((date) => (0, date_fns_1.formatISO)(date))),
|
114
|
-
email: zod_1.z.optional(zod_1.z.string().email('Value passed is not an email address')),
|
114
|
+
email: zod_1.z.optional(zod_1.z.string().trim().email('Value passed is not an email address')),
|
115
115
|
phone: extensions_core_2.E164PhoneValidationOptionalSchema,
|
116
116
|
mobilePhone: extensions_core_2.E164PhoneValidationOptionalSchema,
|
117
|
-
street: zod_1.z.optional(zod_1.z.string()),
|
118
|
-
state: zod_1.z.optional(zod_1.z.string()),
|
119
|
-
country: zod_1.z.optional(zod_1.z.string()),
|
120
|
-
city: zod_1.z.optional(zod_1.z.string()),
|
121
|
-
zip: zod_1.z.optional(zod_1.z.string()),
|
122
|
-
preferredLanguage: zod_1.z.optional(zod_1.z.string()),
|
117
|
+
street: zod_1.z.optional(zod_1.z.string().trim()),
|
118
|
+
state: zod_1.z.optional(zod_1.z.string().trim()),
|
119
|
+
country: zod_1.z.optional(zod_1.z.string().trim()),
|
120
|
+
city: zod_1.z.optional(zod_1.z.string().trim()),
|
121
|
+
zip: zod_1.z.optional(zod_1.z.string().trim()),
|
122
|
+
preferredLanguage: zod_1.z.optional(zod_1.z.string().trim()),
|
123
123
|
sex: zod_1.z.optional(zod_1.z.enum([graphql_1.Sex.Female, graphql_1.Sex.Male, graphql_1.Sex.NotKnown])),
|
124
|
-
nationalRegistryNumber: zod_1.z.string().optional(),
|
124
|
+
nationalRegistryNumber: zod_1.z.string().trim().optional(),
|
125
125
|
});
|
126
126
|
//# sourceMappingURL=fields.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../../extensions/awell/v1/actions/updatePatient/config/fields.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../../extensions/awell/v1/actions/updatePatient/config/fields.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"updatePatient.test.js","sourceRoot":"","sources":["../../../../../../extensions/awell/v1/actions/updatePatient/updatePatient.test.ts"],"names":[],"mappings":";;AAAA,oDAA8D;AAC9D,mDAA+C;AAE/C,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;AAE/B,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,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,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,6BAAa,CAAC,iBAAiB,CACnC,IAAA,2BAAmB,EAAC;YAClB,MAAM,EAAE;gBACN,WAAW,EAAE,aAAa;gBAC1B,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,YAAY;gBACvB,KAAK,EAAE,
|
1
|
+
{"version":3,"file":"updatePatient.test.js","sourceRoot":"","sources":["../../../../../../extensions/awell/v1/actions/updatePatient/updatePatient.test.ts"],"names":[],"mappings":"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"}
|
package/dist/extensions/index.js
CHANGED
@@ -45,6 +45,7 @@ const twilio_1 = require("./twilio");
|
|
45
45
|
// import { Wellinks } from './wellinks-public'
|
46
46
|
const sendgrid_extension_1 = require("./sendgrid-extension");
|
47
47
|
const cmDotCom_1 = require("./cmDotCom");
|
48
|
+
const talkDesk_1 = require("./talkDesk");
|
48
49
|
const docuSign_1 = require("./docuSign");
|
49
50
|
const sendbird_1 = require("./sendbird");
|
50
51
|
const transform_1 = require("./transform");
|
@@ -91,6 +92,8 @@ exports.extensions = [
|
|
91
92
|
nexuzhealth_1.nexuzhealth,
|
92
93
|
sendbird_1.Sendbird,
|
93
94
|
sendgrid_extension_1.Sendgrid,
|
95
|
+
cmDotCom_1.CmDotCom,
|
96
|
+
talkDesk_1.TalkDesk,
|
94
97
|
transform_1.Transform,
|
95
98
|
twilio_1.Twilio,
|
96
99
|
// Wellinks,
|
@@ -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,iDAA6C;AAC7C,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;AAErC,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,2BAAY;IACZ,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"}
|
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,iDAA6C;AAC7C,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,yCAAqC;AACrC,2CAAuC;AACvC,yCAAqC;AACrC,uCAAmC;AACnC,uCAAmC;AACnC,uCAAmC;AACnC,+CAA2C;AAC3C,+CAA2C;AAC3C,iDAA6C;AAC7C,+BAA2B;AAC3B,yCAAqC;AAErC,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,2BAAY;IACZ,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,mBAAQ;IACR,mBAAQ;IACR,qBAAS;IACT,eAAM;IACN,YAAY;IACZ,iBAAO;IACP,iBAAO;IACP,mBAAQ;CACT,CAAA"}
|
@@ -111,6 +111,10 @@
|
|
111
111
|
"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`.",
|
112
112
|
"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."
|
113
113
|
},
|
114
|
+
"talkDesk": {
|
115
|
+
"readme": "# TalkDesk\n\nTalkdesk is a cloud-based customer experience and contact center software company. It provides a platform that enables businesses to set up and manage their customer service and support operations. Talkdesk offers a range of features and tools to streamline and enhance communication between businesses and their customers.\n\n## Setup\n\nTo set up the extension, you'll need your Talkdesk account name along with a client ID and client secret. Please ensure that the credentials you provide are associated with the necessary permissions, or \"scopes,\" to run the extension:\n\n- flows-interactions:start\n\n## Custom Actions\n\n### Trigger flow\n\nEnables the initiation of a Talkdesk flow directly from an Awell careflow. This feature triggers an interaction using the most recent published version of a specific Studio flow. You'll need to supply the ID of the flow and the data (as a JSON object) that you want to input into the flow.\n\nImportant: Please note that Talkdesk sets a restriction of up to two API requests per second (rps) for each account using their Flows API.\n\n[Click here](https://studio.talkdesk.com/docs/sending-notifications-to-contacts-via-api-request) to learn more about triggering flows via the Talkdesk API and here to read the [API docs](https://docs.talkdesk.com/reference/flows-api-ref).\n",
|
116
|
+
"changelog": "# TalkDesk changelog\n"
|
117
|
+
},
|
114
118
|
"textline": {
|
115
119
|
"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\nThis action retrieves received messages. One can apply the `phoneNumber` filter to this action to display only received messages from that `phoneNumber`.\nOnly the last 30 messages are returned.\n\n### Set Contact Consent\n\nFor HIPAA and Pro accounts setup with Contact Consent, this action can set contact's consent status. To do this, your account must have API import allowed and the user making the API request must have the \"Can manually set consent\" permission on for their role. You must then use the Contact's phone number and their consent status (true or false).\n\n#### Simple Use Case\n\n**Initiating a Conversation**: A user sends a message to \"Number A\", initiating a conversation.\n\n**Receiving a Response**: \"Number A\" responds to the message, contributing to the ongoing conversation.\n\n**Searching Messages & Applying Filters**: To focus on the responses from \"Number A\", `phoneNumber`` filter can be applied to only show received messages from \"Number A\" within the conversation. This allows users to easily review and manage responses from \"Number A\", without the clutter of other received messages.\n\n",
|
116
120
|
"changelog": "# TextLine changelog\n\n## 2024-03-11\n\n1. Add option to set department ID when sending messages and when retrieving messages. Check official documentation here: https://textline.docs.apiary.io/#reference/conversations/phone-numbers/message-a-phone-number\n## 2024-03-5\n\n1. Add capability to set contact consent status (https://textline.docs.apiary.io/#reference/customers/set-contact-consent/set-contact-consent)\n2. Add several fixes and tweaks to improve current actions\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"
|
@@ -0,0 +1,48 @@
|
|
1
|
+
declare const actions: {
|
2
|
+
triggerFlow: import("@awell-health/extensions-core").Action<{
|
3
|
+
flowId: {
|
4
|
+
id: string;
|
5
|
+
label: string;
|
6
|
+
description: string;
|
7
|
+
type: import("@awell-health/extensions-core").FieldType.STRING;
|
8
|
+
required: true;
|
9
|
+
};
|
10
|
+
data: {
|
11
|
+
id: string;
|
12
|
+
label: string;
|
13
|
+
description: string;
|
14
|
+
type: import("@awell-health/extensions-core").FieldType.JSON;
|
15
|
+
required: true;
|
16
|
+
};
|
17
|
+
}, {
|
18
|
+
talkDeskAccountName: {
|
19
|
+
key: string;
|
20
|
+
label: string;
|
21
|
+
obfuscated: false;
|
22
|
+
description: string;
|
23
|
+
required: true;
|
24
|
+
};
|
25
|
+
region: {
|
26
|
+
key: string;
|
27
|
+
label: string;
|
28
|
+
obfuscated: false;
|
29
|
+
description: string;
|
30
|
+
required: false;
|
31
|
+
};
|
32
|
+
clientId: {
|
33
|
+
key: string;
|
34
|
+
label: string;
|
35
|
+
obfuscated: false;
|
36
|
+
description: string;
|
37
|
+
required: true;
|
38
|
+
};
|
39
|
+
clientSecret: {
|
40
|
+
key: string;
|
41
|
+
label: string;
|
42
|
+
obfuscated: true;
|
43
|
+
description: string;
|
44
|
+
required: true;
|
45
|
+
};
|
46
|
+
}, "interactionId" | "flowVersionId", never>;
|
47
|
+
};
|
48
|
+
export default actions;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../extensions/talkDesk/actions/index.ts"],"names":[],"mappings":";;AAAA,+CAA2C;AAE3C,MAAM,OAAO,GAAG;IACd,WAAW,EAAX,yBAAW;CACZ,CAAA;AAED,kBAAe,OAAO,CAAA"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.dataPoints = void 0;
|
4
|
+
exports.dataPoints = {
|
5
|
+
interactionId: {
|
6
|
+
key: 'interactionId',
|
7
|
+
valueType: 'string',
|
8
|
+
},
|
9
|
+
flowVersionId: {
|
10
|
+
key: 'flowVersionId',
|
11
|
+
valueType: 'string',
|
12
|
+
},
|
13
|
+
};
|
14
|
+
//# sourceMappingURL=datapoints.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"datapoints.js","sourceRoot":"","sources":["../../../../../../extensions/talkDesk/actions/triggerFlow/config/datapoints.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACxB,aAAa,EAAE;QACb,GAAG,EAAE,eAAe;QACpB,SAAS,EAAE,QAAQ;KACpB;IACD,aAAa,EAAE;QACb,GAAG,EAAE,eAAe;QACpB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA"}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import { FieldType } from '@awell-health/extensions-core';
|
2
|
+
import z from 'zod';
|
3
|
+
export declare const fields: {
|
4
|
+
flowId: {
|
5
|
+
id: string;
|
6
|
+
label: string;
|
7
|
+
description: string;
|
8
|
+
type: FieldType.STRING;
|
9
|
+
required: true;
|
10
|
+
};
|
11
|
+
data: {
|
12
|
+
id: string;
|
13
|
+
label: string;
|
14
|
+
description: string;
|
15
|
+
type: FieldType.JSON;
|
16
|
+
required: true;
|
17
|
+
};
|
18
|
+
};
|
19
|
+
export declare const FieldsValidationSchema: z.ZodObject<{
|
20
|
+
flowId: z.ZodString;
|
21
|
+
data: z.ZodEffects<z.ZodString, Record<string, string>, string>;
|
22
|
+
}, "strip", z.ZodTypeAny, {
|
23
|
+
data: Record<string, string>;
|
24
|
+
flowId: string;
|
25
|
+
}, {
|
26
|
+
data: string;
|
27
|
+
flowId: string;
|
28
|
+
}>;
|
@@ -0,0 +1,61 @@
|
|
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.FieldsValidationSchema = exports.fields = void 0;
|
7
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
8
|
+
const lodash_1 = require("lodash");
|
9
|
+
const zod_1 = __importDefault(require("zod"));
|
10
|
+
exports.fields = {
|
11
|
+
flowId: {
|
12
|
+
id: 'flowId',
|
13
|
+
label: 'Flow ID',
|
14
|
+
description: 'The ID of the flow you would like to trigger',
|
15
|
+
type: extensions_core_1.FieldType.STRING,
|
16
|
+
required: true,
|
17
|
+
},
|
18
|
+
data: {
|
19
|
+
id: 'data',
|
20
|
+
label: 'Data',
|
21
|
+
description: 'The data that will be ingested when triggering the flow.',
|
22
|
+
type: extensions_core_1.FieldType.JSON,
|
23
|
+
required: true,
|
24
|
+
},
|
25
|
+
};
|
26
|
+
exports.FieldsValidationSchema = zod_1.default.object({
|
27
|
+
flowId: zod_1.default.string().nonempty(),
|
28
|
+
data: zod_1.default.string().transform((str, ctx) => {
|
29
|
+
if ((0, lodash_1.isNil)(str) || (0, lodash_1.isEmpty)(str)) {
|
30
|
+
return {};
|
31
|
+
}
|
32
|
+
try {
|
33
|
+
const parsedJson = JSON.parse(str);
|
34
|
+
if ((0, lodash_1.isEmpty)(parsedJson)) {
|
35
|
+
return {};
|
36
|
+
}
|
37
|
+
if (typeof parsedJson !== 'object' || Array.isArray(parsedJson)) {
|
38
|
+
ctx.addIssue({
|
39
|
+
code: 'custom',
|
40
|
+
message: 'Data should be an object',
|
41
|
+
});
|
42
|
+
return zod_1.default.NEVER;
|
43
|
+
}
|
44
|
+
for (const key in parsedJson) {
|
45
|
+
if (typeof parsedJson[key] !== 'string') {
|
46
|
+
ctx.addIssue({
|
47
|
+
code: 'custom',
|
48
|
+
message: `Value for key "${key}" must be a string`,
|
49
|
+
});
|
50
|
+
return zod_1.default.NEVER;
|
51
|
+
}
|
52
|
+
}
|
53
|
+
return parsedJson;
|
54
|
+
}
|
55
|
+
catch (e) {
|
56
|
+
ctx.addIssue({ code: 'custom', message: 'Invalid JSON' });
|
57
|
+
return zod_1.default.NEVER;
|
58
|
+
}
|
59
|
+
}),
|
60
|
+
});
|
61
|
+
//# sourceMappingURL=fields.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../extensions/talkDesk/actions/triggerFlow/config/fields.ts"],"names":[],"mappings":";;;;;;AAAA,mEAAqE;AACrE,mCAAuC;AACvC,8CAAwC;AAE3B,QAAA,MAAM,GAAG;IACpB,MAAM,EAAE;QACN,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,8CAA8C;QAC3D,IAAI,EAAE,2BAAS,CAAC,MAAM;QACtB,QAAQ,EAAE,IAAI;KACf;IACD,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,0DAA0D;QACvE,IAAI,EAAE,2BAAS,CAAC,IAAI;QACpB,QAAQ,EAAE,IAAI;KACf;CAC8B,CAAA;AAEpB,QAAA,sBAAsB,GAAG,aAAC,CAAC,MAAM,CAAC;IAC7C,MAAM,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,GAAG,EAA0B,EAAE;QAC9D,IAAI,IAAA,cAAK,EAAC,GAAG,CAAC,IAAI,IAAA,gBAAO,EAAC,GAAG,CAAC,EAAE;YAC9B,OAAO,EAAE,CAAA;SACV;QAED,IAAI;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAElC,IAAI,IAAA,gBAAO,EAAC,UAAU,CAAC,EAAE;gBACvB,OAAO,EAAE,CAAA;aACV;YAED,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAC/D,GAAG,CAAC,QAAQ,CAAC;oBACX,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,0BAA0B;iBACpC,CAAC,CAAA;gBACF,OAAO,aAAC,CAAC,KAAK,CAAA;aACf;YAED,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;gBAC5B,IAAI,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;oBACvC,GAAG,CAAC,QAAQ,CAAC;wBACX,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,kBAAkB,GAAG,oBAAoB;qBACnD,CAAC,CAAA;oBACF,OAAO,aAAC,CAAC,KAAK,CAAA;iBACf;aACF;YAED,OAAO,UAAU,CAAA;SAClB;QAAC,OAAO,CAAC,EAAE;YACV,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAA;YACzD,OAAO,aAAC,CAAC,KAAK,CAAA;SACf;IACH,CAAC,CAAC;CAC+C,CAAC,CAAA"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.dataPoints = exports.FieldsValidationSchema = exports.fields = void 0;
|
4
|
+
var fields_1 = require("./fields");
|
5
|
+
Object.defineProperty(exports, "fields", { enumerable: true, get: function () { return fields_1.fields; } });
|
6
|
+
Object.defineProperty(exports, "FieldsValidationSchema", { enumerable: true, get: function () { return fields_1.FieldsValidationSchema; } });
|
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/talkDesk/actions/triggerFlow/config/index.ts"],"names":[],"mappings":";;;AAAA,mCAAyD;AAAhD,gGAAA,MAAM,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AACvC,2CAAyC;AAAhC,wGAAA,UAAU,OAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export { triggerFlow } from './triggerFlow';
|
@@ -0,0 +1,6 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.triggerFlow = void 0;
|
4
|
+
var triggerFlow_1 = require("./triggerFlow");
|
5
|
+
Object.defineProperty(exports, "triggerFlow", { enumerable: true, get: function () { return triggerFlow_1.triggerFlow; } });
|
6
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/talkDesk/actions/triggerFlow/index.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAAlC,0GAAA,WAAW,OAAA"}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.triggerFlow = void 0;
|
4
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
5
|
+
const config_1 = require("./config");
|
6
|
+
const helpers_1 = require("../../helpers");
|
7
|
+
exports.triggerFlow = {
|
8
|
+
key: 'triggerFlow',
|
9
|
+
category: extensions_core_1.Category.COMMUNICATION,
|
10
|
+
title: 'Trigger flow',
|
11
|
+
description: 'Trigger a flow in Talkdesk',
|
12
|
+
fields: config_1.fields,
|
13
|
+
previewable: false,
|
14
|
+
dataPoints: config_1.dataPoints,
|
15
|
+
onActivityCreated: async (payload, onComplete, onError) => {
|
16
|
+
const { fields: input, client } = await (0, helpers_1.validatePayloadAndCreateClient)({
|
17
|
+
fieldsSchema: config_1.FieldsValidationSchema,
|
18
|
+
payload,
|
19
|
+
});
|
20
|
+
const res = await client.triggerFlow(input);
|
21
|
+
await onComplete({
|
22
|
+
data_points: {
|
23
|
+
interactionId: res.interaction_id,
|
24
|
+
flowVersionId: res.flow_version_id,
|
25
|
+
},
|
26
|
+
});
|
27
|
+
},
|
28
|
+
};
|
29
|
+
//# sourceMappingURL=triggerFlow.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"triggerFlow.js","sourceRoot":"","sources":["../../../../../extensions/talkDesk/actions/triggerFlow/triggerFlow.ts"],"names":[],"mappings":";;;AAAA,mEAAqE;AAErE,qCAAqE;AACrE,2CAA8D;AAEjD,QAAA,WAAW,GAIpB;IACF,GAAG,EAAE,aAAa;IAClB,QAAQ,EAAE,0BAAQ,CAAC,aAAa;IAChC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,4BAA4B;IACzC,MAAM,EAAN,eAAM;IACN,WAAW,EAAE,KAAK;IAClB,UAAU,EAAV,mBAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAiB,EAAE;QACvE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,wCAA8B,EAAC;YACrE,YAAY,EAAE,+BAAsB;YACpC,OAAO;SACR,CAAC,CAAA;QAEF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAE3C,MAAM,UAAU,CAAC;YACf,WAAW,EAAE;gBACX,aAAa,EAAE,GAAG,CAAC,cAAc;gBACjC,aAAa,EAAE,GAAG,CAAC,eAAe;aACnC;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const _1 = require(".");
|
4
|
+
const tests_1 = require("../../../../src/tests");
|
5
|
+
const mockData_1 = require("../../api/__mocks__/mockData");
|
6
|
+
jest.mock('../../api/talkdeskClient');
|
7
|
+
describe('Talkdesk - Trigger flow', () => {
|
8
|
+
const onComplete = jest.fn();
|
9
|
+
const onError = jest.fn();
|
10
|
+
beforeEach(() => {
|
11
|
+
jest.clearAllMocks();
|
12
|
+
});
|
13
|
+
test('Should trigger a flow', async () => {
|
14
|
+
const mockOnActivityCreateParams = (0, tests_1.generateTestPayload)({
|
15
|
+
fields: {
|
16
|
+
flowId: '56529',
|
17
|
+
data: JSON.stringify({ key: 'value' }),
|
18
|
+
},
|
19
|
+
settings: mockData_1.mockSettings,
|
20
|
+
});
|
21
|
+
await _1.triggerFlow.onActivityCreated(mockOnActivityCreateParams, onComplete, onError);
|
22
|
+
expect(onComplete).toHaveBeenCalledWith({
|
23
|
+
data_points: {
|
24
|
+
interactionId: mockData_1.mockFlowTriggeredResponse.interaction_id,
|
25
|
+
flowVersionId: mockData_1.mockFlowTriggeredResponse.flow_version_id,
|
26
|
+
},
|
27
|
+
});
|
28
|
+
});
|
29
|
+
});
|
30
|
+
//# sourceMappingURL=triggerFlow.test.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"triggerFlow.test.js","sourceRoot":"","sources":["../../../../../extensions/talkDesk/actions/triggerFlow/triggerFlow.test.ts"],"names":[],"mappings":";;AAAA,wBAA+B;AAC/B,iDAA2D;AAC3D,2DAGqC;AAErC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;AAErC,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAEzB,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,0BAA0B,GAAG,IAAA,2BAAmB,EAAC;YACrD,MAAM,EAAE;gBACN,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;aACvC;YACD,QAAQ,EAAE,uBAAY;SACvB,CAAC,CAAA;QAEF,MAAM,cAAW,CAAC,iBAAiB,CACjC,0BAA0B,EAC1B,UAAU,EACV,OAAO,CACR,CAAA;QAED,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC;YACtC,WAAW,EAAE;gBACX,aAAa,EAAE,oCAAyB,CAAC,cAAc;gBACvD,aAAa,EAAE,oCAAyB,CAAC,eAAe;aACzD;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { z } from 'zod';
|
2
|
+
export declare const APIRegionSchema: z.ZodEnum<["US", "EU", "Canada"]>;
|
3
|
+
export type APIRegionType = z.infer<typeof APIRegionSchema>;
|
4
|
+
export declare const baseURLs: Record<APIRegionType, string>;
|
5
|
+
export declare const getAuthUrl: (region: APIRegionType, talkdeskAccountName: string) => string;
|
6
|
+
export declare const scope: string;
|
@@ -0,0 +1,81 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.scope = exports.getAuthUrl = exports.baseURLs = exports.APIRegionSchema = void 0;
|
4
|
+
const zod_1 = require("zod");
|
5
|
+
exports.APIRegionSchema = zod_1.z.enum(['US', 'EU', 'Canada']);
|
6
|
+
exports.baseURLs = {
|
7
|
+
US: 'https://api.talkdeskapp.com/',
|
8
|
+
EU: 'https://api.talkdeskapp.eu/',
|
9
|
+
Canada: 'https://api.talkdeskappca.com/',
|
10
|
+
};
|
11
|
+
const getAuthUrl = (region, talkdeskAccountName) => {
|
12
|
+
if (region === 'US')
|
13
|
+
return `https://${talkdeskAccountName}.talkdeskid.com/oauth/token`;
|
14
|
+
if (region === 'EU')
|
15
|
+
return `https://${talkdeskAccountName}.talkdeskid.eu/oauth/token`;
|
16
|
+
if (region === 'Canada')
|
17
|
+
return `https://${talkdeskAccountName}.talkdeskidca.com/oauth/token`;
|
18
|
+
throw new Error(`Cannot get Talkdesk auth URL for region ${String(region)}`);
|
19
|
+
};
|
20
|
+
exports.getAuthUrl = getAuthUrl;
|
21
|
+
var TalkdeskScope;
|
22
|
+
(function (TalkdeskScope) {
|
23
|
+
TalkdeskScope["AccountRead"] = "account:read";
|
24
|
+
TalkdeskScope["AppsRead"] = "apps:read";
|
25
|
+
TalkdeskScope["AppsWrite"] = "apps:write";
|
26
|
+
TalkdeskScope["AttributesRead"] = "attributes:read";
|
27
|
+
TalkdeskScope["AttributesWrite"] = "attributes:write";
|
28
|
+
TalkdeskScope["BulkImportsRead"] = "bulk-imports:read";
|
29
|
+
TalkdeskScope["BulkImportsWrite"] = "bulk-imports:write";
|
30
|
+
TalkdeskScope["CallbackWrite"] = "callback:write";
|
31
|
+
TalkdeskScope["CampaignsRead"] = "campaigns:read";
|
32
|
+
TalkdeskScope["CampaignsWrite"] = "campaigns:write";
|
33
|
+
TalkdeskScope["CasesPublicWrite"] = "cases-public:write";
|
34
|
+
TalkdeskScope["CaseFieldsPublicWrite"] = "case-fields-public:write";
|
35
|
+
TalkdeskScope["CasesPublicRead"] = "cases-public:read";
|
36
|
+
TalkdeskScope["ContactsRead"] = "contacts:read";
|
37
|
+
TalkdeskScope["ContactsWrite"] = "contacts:write";
|
38
|
+
TalkdeskScope["CfmPublicWrite"] = "cfm-public:write";
|
39
|
+
TalkdeskScope["DoNotCallListsManage"] = "do-not-call-lists:manage";
|
40
|
+
TalkdeskScope["DataReportsWrite"] = "data-reports:write";
|
41
|
+
TalkdeskScope["DataReportsRead"] = "data-reports:read";
|
42
|
+
TalkdeskScope["EventsWrite"] = "events:write";
|
43
|
+
TalkdeskScope["ContinuitySettingsActivationWrite"] = "continuity-settings-activation:write";
|
44
|
+
TalkdeskScope["ContinuitySettingsActivationRead"] = "continuity-settings-activation:read";
|
45
|
+
TalkdeskScope["FlowsInteractionsStart"] = "flows-interactions:start";
|
46
|
+
TalkdeskScope["GuardianCasesRead"] = "guardian-cases:read";
|
47
|
+
TalkdeskScope["GuardianSessionRead"] = "guardian-session:read";
|
48
|
+
TalkdeskScope["GuardianUsersRead"] = "guardian-users:read";
|
49
|
+
TalkdeskScope["GuardianCallQualityRead"] = "guardian-call-quality:read";
|
50
|
+
TalkdeskScope["IdentityActivityRead"] = "identity-activity:read";
|
51
|
+
TalkdeskScope["LiveQueriesRead"] = "live-queries:read";
|
52
|
+
TalkdeskScope["LiveSubscriptionsRead"] = "live-subscriptions:read";
|
53
|
+
TalkdeskScope["LiveSubscriptionsWrite"] = "live-subscriptions:write";
|
54
|
+
TalkdeskScope["PromptsWrite"] = "prompts:write";
|
55
|
+
TalkdeskScope["PromptsDelete"] = "prompts:delete";
|
56
|
+
TalkdeskScope["PromptsRead"] = "prompts:read";
|
57
|
+
TalkdeskScope["IdentityPhoneValidationRead"] = "`identity-phone-validation:read";
|
58
|
+
TalkdeskScope["RecordingsRead"] = "recordings:read";
|
59
|
+
TalkdeskScope["RecordListsManage"] = "record-lists:manage";
|
60
|
+
TalkdeskScope["ReportsWrite"] = "reports:write";
|
61
|
+
TalkdeskScope["ReportsRead"] = "reports:read";
|
62
|
+
TalkdeskScope["RingGroupsRead"] = "ring-groups:read";
|
63
|
+
TalkdeskScope["UserRingGroupsRead"] = "user-ring-groups:read";
|
64
|
+
TalkdeskScope["SimulatedEmailsWrite"] = "simulated-emails:write";
|
65
|
+
TalkdeskScope["WfmAionPublicWrite"] = "wfm-aion-public:write";
|
66
|
+
TalkdeskScope["UsersRead"] = "users:read";
|
67
|
+
TalkdeskScope["AccountWalletsRead"] = "account-wallets:read";
|
68
|
+
TalkdeskScope["BucketConfigurationsRead"] = "bucket-configurations:read";
|
69
|
+
TalkdeskScope["VoiceBiometricsConsentWrite"] = "voicebiometrics-consent:write";
|
70
|
+
TalkdeskScope["VoiceBiometricsConsentRead"] = "voicebiometrics-consent:read";
|
71
|
+
TalkdeskScope["VoiceBiometricsEnrollWrite"] = "voicebiometrics-enroll:write";
|
72
|
+
TalkdeskScope["WebhooksTriggerWrite"] = "webhooks-trigger:write";
|
73
|
+
TalkdeskScope["WebhooksTriggerRead"] = "webhooks-trigger:read";
|
74
|
+
})(TalkdeskScope || (TalkdeskScope = {}));
|
75
|
+
/**
|
76
|
+
* The scopes we need in order to be able
|
77
|
+
* to execute all actions in this extension
|
78
|
+
*/
|
79
|
+
const scopesArray = [TalkdeskScope.FlowsInteractionsStart];
|
80
|
+
exports.scope = scopesArray.join(' ');
|
81
|
+
//# sourceMappingURL=apiConfig.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"apiConfig.js","sourceRoot":"","sources":["../../../../extensions/talkDesk/api/apiConfig.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEV,QAAA,eAAe,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAA;AAGhD,QAAA,QAAQ,GAAkC;IACrD,EAAE,EAAE,8BAA8B;IAClC,EAAE,EAAE,6BAA6B;IACjC,MAAM,EAAE,gCAAgC;CACzC,CAAA;AAEM,MAAM,UAAU,GAAG,CACxB,MAAqB,EACrB,mBAA2B,EACnB,EAAE;IACV,IAAI,MAAM,KAAK,IAAI;QACjB,OAAO,WAAW,mBAAmB,6BAA6B,CAAA;IACpE,IAAI,MAAM,KAAK,IAAI;QACjB,OAAO,WAAW,mBAAmB,4BAA4B,CAAA;IACnE,IAAI,MAAM,KAAK,QAAQ;QACrB,OAAO,WAAW,mBAAmB,+BAA+B,CAAA;IAEtE,MAAM,IAAI,KAAK,CAAC,2CAA2C,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;AAC9E,CAAC,CAAA;AAZY,QAAA,UAAU,cAYtB;AAED,IAAK,aAoDJ;AApDD,WAAK,aAAa;IAChB,6CAA4B,CAAA;IAC5B,uCAAsB,CAAA;IACtB,yCAAwB,CAAA;IACxB,mDAAkC,CAAA;IAClC,qDAAoC,CAAA;IACpC,sDAAqC,CAAA;IACrC,wDAAuC,CAAA;IACvC,iDAAgC,CAAA;IAChC,iDAAgC,CAAA;IAChC,mDAAkC,CAAA;IAClC,wDAAuC,CAAA;IACvC,mEAAkD,CAAA;IAClD,sDAAqC,CAAA;IACrC,+CAA8B,CAAA;IAC9B,iDAAgC,CAAA;IAChC,oDAAmC,CAAA;IACnC,kEAAiD,CAAA;IACjD,wDAAuC,CAAA;IACvC,sDAAqC,CAAA;IACrC,6CAA4B,CAAA;IAC5B,2FAA0E,CAAA;IAC1E,yFAAwE,CAAA;IACxE,oEAAmD,CAAA;IACnD,0DAAyC,CAAA;IACzC,8DAA6C,CAAA;IAC7C,0DAAyC,CAAA;IACzC,uEAAsD,CAAA;IACtD,gEAA+C,CAAA;IAC/C,sDAAqC,CAAA;IACrC,kEAAiD,CAAA;IACjD,oEAAmD,CAAA;IACnD,+CAA8B,CAAA;IAC9B,iDAAgC,CAAA;IAChC,6CAA4B,CAAA;IAC5B,gFAA+D,CAAA;IAC/D,mDAAkC,CAAA;IAClC,0DAAyC,CAAA;IACzC,+CAA8B,CAAA;IAC9B,6CAA4B,CAAA;IAC5B,oDAAmC,CAAA;IACnC,6DAA4C,CAAA;IAC5C,gEAA+C,CAAA;IAC/C,6DAA4C,CAAA;IAC5C,yCAAwB,CAAA;IACxB,4DAA2C,CAAA;IAC3C,wEAAuD,CAAA;IACvD,8EAA6D,CAAA;IAC7D,4EAA2D,CAAA;IAC3D,4EAA2D,CAAA;IAC3D,gEAA+C,CAAA;IAC/C,8DAA6C,CAAA;AAC/C,CAAC,EApDI,aAAa,KAAb,aAAa,QAoDjB;AAED;;;GAGG;AACH,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAA;AAC7C,QAAA,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA"}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { cache } from '@awell-health/extensions-core';
|
2
|
+
/**
|
3
|
+
* A cache service can be used in combination with the OAuth API client
|
4
|
+
* to automatically cache tokens between requests.
|
5
|
+
* The only cache implementation available is a simple in-memory cache,
|
6
|
+
* so it has to be initialised as a singleton to preserve the data across
|
7
|
+
* the lifecycle of the server running your extension.
|
8
|
+
* Note that we will soon be releasing another implementation of the cache
|
9
|
+
* service that will remove this restriction.
|
10
|
+
*/
|
11
|
+
export declare const cacheService: cache.InMemoryCache;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.cacheService = void 0;
|
4
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
5
|
+
/**
|
6
|
+
* A cache service can be used in combination with the OAuth API client
|
7
|
+
* to automatically cache tokens between requests.
|
8
|
+
* The only cache implementation available is a simple in-memory cache,
|
9
|
+
* so it has to be initialised as a singleton to preserve the data across
|
10
|
+
* the lifecycle of the server running your extension.
|
11
|
+
* Note that we will soon be releasing another implementation of the cache
|
12
|
+
* service that will remove this restriction.
|
13
|
+
*/
|
14
|
+
exports.cacheService = new extensions_core_1.cache.InMemoryCache();
|
15
|
+
//# sourceMappingURL=cacheService.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"cacheService.js","sourceRoot":"","sources":["../../../../extensions/talkDesk/api/cacheService.ts"],"names":[],"mappings":";;;AAAA,mEAAqD;AAErD;;;;;;;;GAQG;AACU,QAAA,YAAY,GAAG,IAAI,uBAAK,CAAC,aAAa,EAAE,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"flows.js","sourceRoot":"","sources":["../../../../../extensions/talkDesk/api/schema/flows.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1 @@
|
|
1
|
+
export { type TriggerFlowResponseType } from './flows';
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/talkDesk/api/schema/index.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import { APIClient, DataWrapper, type DataWrapperCtor, type OAuthGrantClientCredentialsRequest } from '@awell-health/extensions-core';
|
2
|
+
import { type TriggerFlowResponseType } from './schema';
|
3
|
+
export declare class TalkdeskAthenaDataWrapper extends DataWrapper {
|
4
|
+
/** https://docs.talkdesk.com/reference/flows-api-ref **/
|
5
|
+
triggerFlow({ flowId, data, }: {
|
6
|
+
flowId: string;
|
7
|
+
data: Record<string, string>;
|
8
|
+
}): Promise<TriggerFlowResponseType>;
|
9
|
+
}
|
10
|
+
interface TalkdeskClientConstructorProps {
|
11
|
+
authUrl: string;
|
12
|
+
requestConfig: Omit<OAuthGrantClientCredentialsRequest, 'grant_type'>;
|
13
|
+
baseUrl: string;
|
14
|
+
}
|
15
|
+
export declare class TalkdeskAPIClient extends APIClient<TalkdeskAthenaDataWrapper> {
|
16
|
+
readonly ctor: DataWrapperCtor<TalkdeskAthenaDataWrapper>;
|
17
|
+
constructor({ authUrl, requestConfig, ...opts }: TalkdeskClientConstructorProps);
|
18
|
+
triggerFlow({ flowId, data, }: {
|
19
|
+
flowId: string;
|
20
|
+
data: Record<string, string>;
|
21
|
+
}): Promise<TriggerFlowResponseType>;
|
22
|
+
}
|
23
|
+
export {};
|
@@ -0,0 +1,36 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.TalkdeskAPIClient = exports.TalkdeskAthenaDataWrapper = void 0;
|
4
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
5
|
+
const cacheService_1 = require("./cacheService");
|
6
|
+
class TalkdeskAthenaDataWrapper extends extensions_core_1.DataWrapper {
|
7
|
+
/** https://docs.talkdesk.com/reference/flows-api-ref **/
|
8
|
+
async triggerFlow({ flowId, data, }) {
|
9
|
+
const result = await this.Request({
|
10
|
+
method: 'POST',
|
11
|
+
url: `flows/${flowId}/interactions`,
|
12
|
+
headers: { 'Content-Type': 'application/json' },
|
13
|
+
data: JSON.stringify(data),
|
14
|
+
});
|
15
|
+
return result;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
exports.TalkdeskAthenaDataWrapper = TalkdeskAthenaDataWrapper;
|
19
|
+
class TalkdeskAPIClient extends extensions_core_1.APIClient {
|
20
|
+
constructor({ authUrl, requestConfig, ...opts }) {
|
21
|
+
super({
|
22
|
+
...opts,
|
23
|
+
auth: new extensions_core_1.OAuthClientCredentials({
|
24
|
+
auth_url: authUrl,
|
25
|
+
request_config: requestConfig,
|
26
|
+
cacheService: cacheService_1.cacheService,
|
27
|
+
}),
|
28
|
+
});
|
29
|
+
this.ctor = (token, baseUrl) => new TalkdeskAthenaDataWrapper(token, baseUrl);
|
30
|
+
}
|
31
|
+
async triggerFlow({ flowId, data, }) {
|
32
|
+
return await this.FetchData(async (dw) => await dw.triggerFlow({ flowId, data }));
|
33
|
+
}
|
34
|
+
}
|
35
|
+
exports.TalkdeskAPIClient = TalkdeskAPIClient;
|
36
|
+
//# sourceMappingURL=talkdeskClient.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"talkdeskClient.js","sourceRoot":"","sources":["../../../../extensions/talkDesk/api/talkdeskClient.ts"],"names":[],"mappings":";;;AAAA,mEAMsC;AACtC,iDAA6C;AAG7C,MAAa,yBAA0B,SAAQ,6BAAW;IACxD,yDAAyD;IAClD,KAAK,CAAC,WAAW,CAAC,EACvB,MAAM,EACN,IAAI,GAIL;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAA0B;YACzD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,SAAS,MAAM,eAAe;YACnC,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAlBD,8DAkBC;AAQD,MAAa,iBAAkB,SAAQ,2BAAoC;IAMzE,YAAmB,EACjB,OAAO,EACP,aAAa,EACb,GAAG,IAAI,EACwB;QAC/B,KAAK,CAAC;YACJ,GAAG,IAAI;YACP,IAAI,EAAE,IAAI,wCAAsB,CAAC;gBAC/B,QAAQ,EAAE,OAAO;gBACjB,cAAc,EAAE,aAAa;gBAC7B,YAAY,EAAZ,2BAAY;aACb,CAAC;SACH,CAAC,CAAA;QAjBK,SAAI,GAA+C,CAC1D,KAAa,EACb,OAAe,EACf,EAAE,CAAC,IAAI,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAelD,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,EACvB,MAAM,EACN,IAAI,GAIL;QACC,OAAO,MAAM,IAAI,CAAC,SAAS,CACzB,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CACrD,CAAA;IACH,CAAC;CACF;AAhCD,8CAgCC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export { validatePayloadAndCreateClient } from './validatePayloadAndCreateClient';
|
@@ -0,0 +1,6 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.validatePayloadAndCreateClient = void 0;
|
4
|
+
var validatePayloadAndCreateClient_1 = require("./validatePayloadAndCreateClient");
|
5
|
+
Object.defineProperty(exports, "validatePayloadAndCreateClient", { enumerable: true, get: function () { return validatePayloadAndCreateClient_1.validatePayloadAndCreateClient; } });
|
6
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../extensions/talkDesk/helpers/index.ts"],"names":[],"mappings":";;;AAAA,mFAAiF;AAAxE,gJAAA,8BAA8B,OAAA"}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import z from 'zod';
|
2
|
+
import { TalkdeskAPIClient } from '../api/talkdeskClient';
|
3
|
+
import { SettingsValidationSchema } from '../settings';
|
4
|
+
type ValidateAndCreateClient = <T extends z.ZodTypeAny>(args: {
|
5
|
+
fieldsSchema: T;
|
6
|
+
payload: unknown;
|
7
|
+
}) => Promise<{
|
8
|
+
client: TalkdeskAPIClient;
|
9
|
+
fields: z.infer<(typeof args)['fieldsSchema']>;
|
10
|
+
settings: z.infer<typeof SettingsValidationSchema>;
|
11
|
+
}>;
|
12
|
+
export declare const validatePayloadAndCreateClient: ValidateAndCreateClient;
|
13
|
+
export {};
|
@@ -0,0 +1,32 @@
|
|
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.validatePayloadAndCreateClient = void 0;
|
7
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
8
|
+
const zod_1 = __importDefault(require("zod"));
|
9
|
+
const apiConfig_1 = require("../api/apiConfig");
|
10
|
+
const talkdeskClient_1 = require("../api/talkdeskClient");
|
11
|
+
const settings_1 = require("../settings");
|
12
|
+
const validatePayloadAndCreateClient = async ({ fieldsSchema, payload, }) => {
|
13
|
+
const { settings: { clientId, clientSecret, region, talkDeskAccountName }, fields, settings, } = (0, extensions_core_1.validate)({
|
14
|
+
schema: zod_1.default.object({
|
15
|
+
fields: fieldsSchema,
|
16
|
+
settings: settings_1.SettingsValidationSchema,
|
17
|
+
}),
|
18
|
+
payload,
|
19
|
+
});
|
20
|
+
const client = new talkdeskClient_1.TalkdeskAPIClient({
|
21
|
+
authUrl: (0, apiConfig_1.getAuthUrl)(region, talkDeskAccountName),
|
22
|
+
requestConfig: {
|
23
|
+
client_id: clientId,
|
24
|
+
client_secret: clientSecret,
|
25
|
+
scope: apiConfig_1.scope,
|
26
|
+
},
|
27
|
+
baseUrl: apiConfig_1.baseURLs[region],
|
28
|
+
});
|
29
|
+
return { client, fields, settings };
|
30
|
+
};
|
31
|
+
exports.validatePayloadAndCreateClient = validatePayloadAndCreateClient;
|
32
|
+
//# sourceMappingURL=validatePayloadAndCreateClient.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"validatePayloadAndCreateClient.js","sourceRoot":"","sources":["../../../../extensions/talkDesk/helpers/validatePayloadAndCreateClient.ts"],"names":[],"mappings":";;;;;;AAAA,mEAAwD;AACxD,8CAAmB;AACnB,gDAA8D;AAC9D,0DAAyD;AACzD,0CAAsD;AAW/C,MAAM,8BAA8B,GAA4B,KAAK,EAAE,EAC5E,YAAY,EACZ,OAAO,GACR,EAAE,EAAE;IACH,MAAM,EACJ,QAAQ,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,EACjE,MAAM,EACN,QAAQ,GACT,GAAG,IAAA,0BAAQ,EAAC;QACX,MAAM,EAAE,aAAC,CAAC,MAAM,CAAC;YACf,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,mCAAwB;SACnC,CAAC;QACF,OAAO;KACR,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,IAAI,kCAAiB,CAAC;QACnC,OAAO,EAAE,IAAA,sBAAU,EAAC,MAAM,EAAE,mBAAmB,CAAC;QAChD,aAAa,EAAE;YACb,SAAS,EAAE,QAAQ;YACnB,aAAa,EAAE,YAAY;YAC3B,KAAK,EAAL,iBAAK;SACN;QACD,OAAO,EAAE,oBAAQ,CAAC,MAAM,CAAC;KAC1B,CAAC,CAAA;IAEF,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;AACrC,CAAC,CAAA;AA3BY,QAAA,8BAA8B,kCA2B1C"}
|
@@ -0,0 +1,22 @@
|
|
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.TalkDesk = void 0;
|
7
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
8
|
+
const settings_1 = require("./settings");
|
9
|
+
const actions_1 = __importDefault(require("./actions"));
|
10
|
+
exports.TalkDesk = {
|
11
|
+
key: 'talkDesk',
|
12
|
+
title: 'TalkDesk',
|
13
|
+
description: 'Talkdesk is a cloud-based customer experience and contact center software company.',
|
14
|
+
icon_url: 'https://res.cloudinary.com/da7x4rzl4/image/upload/v1689344292/Awell%20Extensions/talkdesk_logo.jpg',
|
15
|
+
category: extensions_core_1.Category.COMMUNICATION,
|
16
|
+
author: {
|
17
|
+
authorType: extensions_core_1.AuthorType.AWELL,
|
18
|
+
},
|
19
|
+
settings: settings_1.settings,
|
20
|
+
actions: actions_1.default,
|
21
|
+
};
|
22
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../extensions/talkDesk/index.ts"],"names":[],"mappings":";;;;;;AAAA,mEAIsC;AACtC,yCAAqC;AACrC,wDAA+B;AAElB,QAAA,QAAQ,GAAc;IACjC,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,WAAW,EACT,oFAAoF;IACtF,QAAQ,EACN,oGAAoG;IACtG,QAAQ,EAAE,0BAAQ,CAAC,aAAa;IAChC,MAAM,EAAE;QACN,UAAU,EAAE,4BAAU,CAAC,KAAK;KAC7B;IACD,QAAQ,EAAR,mBAAQ;IACR,OAAO,EAAP,iBAAO;CACR,CAAA"}
|
@@ -0,0 +1,47 @@
|
|
1
|
+
import { z } from 'zod';
|
2
|
+
export declare const settings: {
|
3
|
+
talkDeskAccountName: {
|
4
|
+
key: string;
|
5
|
+
label: string;
|
6
|
+
obfuscated: false;
|
7
|
+
description: string;
|
8
|
+
required: true;
|
9
|
+
};
|
10
|
+
region: {
|
11
|
+
key: string;
|
12
|
+
label: string;
|
13
|
+
obfuscated: false;
|
14
|
+
description: string;
|
15
|
+
required: false;
|
16
|
+
};
|
17
|
+
clientId: {
|
18
|
+
key: string;
|
19
|
+
label: string;
|
20
|
+
obfuscated: false;
|
21
|
+
description: string;
|
22
|
+
required: true;
|
23
|
+
};
|
24
|
+
clientSecret: {
|
25
|
+
key: string;
|
26
|
+
label: string;
|
27
|
+
obfuscated: true;
|
28
|
+
description: string;
|
29
|
+
required: true;
|
30
|
+
};
|
31
|
+
};
|
32
|
+
export declare const SettingsValidationSchema: z.ZodObject<{
|
33
|
+
talkDeskAccountName: z.ZodString;
|
34
|
+
region: z.ZodDefault<z.ZodEnum<["US", "EU", "Canada"]>>;
|
35
|
+
clientId: z.ZodString;
|
36
|
+
clientSecret: z.ZodString;
|
37
|
+
}, "strip", z.ZodTypeAny, {
|
38
|
+
region: "US" | "EU" | "Canada";
|
39
|
+
clientId: string;
|
40
|
+
talkDeskAccountName: string;
|
41
|
+
clientSecret: string;
|
42
|
+
}, {
|
43
|
+
clientId: string;
|
44
|
+
talkDeskAccountName: string;
|
45
|
+
clientSecret: string;
|
46
|
+
region?: "US" | "EU" | "Canada" | undefined;
|
47
|
+
}>;
|
@@ -0,0 +1,42 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.SettingsValidationSchema = exports.settings = void 0;
|
4
|
+
const zod_1 = require("zod");
|
5
|
+
const apiConfig_1 = require("./api/apiConfig");
|
6
|
+
exports.settings = {
|
7
|
+
talkDeskAccountName: {
|
8
|
+
key: 'talkDeskAccountName',
|
9
|
+
label: 'Talkdesk account name',
|
10
|
+
obfuscated: false,
|
11
|
+
description: '',
|
12
|
+
required: true,
|
13
|
+
},
|
14
|
+
region: {
|
15
|
+
key: 'region',
|
16
|
+
label: 'Region',
|
17
|
+
obfuscated: false,
|
18
|
+
description: 'US, EU, or Canada. Defaults to US.',
|
19
|
+
required: false,
|
20
|
+
},
|
21
|
+
clientId: {
|
22
|
+
key: 'clientId',
|
23
|
+
label: 'Client ID',
|
24
|
+
obfuscated: false,
|
25
|
+
description: 'The client ID for OAuth2 Password authentication.',
|
26
|
+
required: true,
|
27
|
+
},
|
28
|
+
clientSecret: {
|
29
|
+
key: 'clientSecret',
|
30
|
+
label: 'Client Secret',
|
31
|
+
obfuscated: true,
|
32
|
+
description: 'The client secret for OAuth2 Password authentication.',
|
33
|
+
required: true,
|
34
|
+
},
|
35
|
+
};
|
36
|
+
exports.SettingsValidationSchema = zod_1.z.object({
|
37
|
+
talkDeskAccountName: zod_1.z.string().nonempty(),
|
38
|
+
region: apiConfig_1.APIRegionSchema.default('US'),
|
39
|
+
clientId: zod_1.z.string().nonempty(),
|
40
|
+
clientSecret: zod_1.z.string().nonempty(),
|
41
|
+
});
|
42
|
+
//# sourceMappingURL=settings.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../extensions/talkDesk/settings.ts"],"names":[],"mappings":";;;AAAA,6BAAwC;AAExC,+CAAiD;AAEpC,QAAA,QAAQ,GAAG;IACtB,mBAAmB,EAAE;QACnB,GAAG,EAAE,qBAAqB;QAC1B,KAAK,EAAE,uBAAuB;QAC9B,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,IAAI;KACf;IACD,MAAM,EAAE;QACN,GAAG,EAAE,QAAQ;QACb,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,KAAK;KAChB;IACD,QAAQ,EAAE;QACR,GAAG,EAAE,UAAU;QACf,KAAK,EAAE,WAAW;QAClB,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,mDAAmD;QAChE,QAAQ,EAAE,IAAI;KACf;IACD,YAAY,EAAE;QACZ,GAAG,EAAE,cAAc;QACnB,KAAK,EAAE,eAAe;QACtB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,uDAAuD;QACpE,QAAQ,EAAE,IAAI;KACf;CACgC,CAAA;AAEtB,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1C,MAAM,EAAE,2BAAe,CAAC,OAAO,CAAC,IAAI,CAAC;IACrC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACgB,CAAC,CAAA"}
|
package/dist/extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.js
CHANGED
@@ -65,7 +65,7 @@ exports.sendSmsDuringBusinessHours = {
|
|
65
65
|
data_points: {
|
66
66
|
messageSid: res.sid,
|
67
67
|
scheduled,
|
68
|
-
sendAt: sendAt ? (0, date_fns_1.formatISO)(sendAt) : (0, date_fns_1.formatISO)(now),
|
68
|
+
sendAt: (sendAt != null) ? (0, date_fns_1.formatISO)(sendAt) : (0, date_fns_1.formatISO)(now),
|
69
69
|
},
|
70
70
|
});
|
71
71
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendSmsDuringBusinessHours.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.ts"],"names":[],"mappings":";;;;;;AAAA,6BAAiC;AACjC,+DAAmD;AACnD,wEAAkD;AAGlD,mEAAkE;AAClE,gDAA4D;AAC5D,qCAAqE;AACrE,mCAAuC;AACvC,4GAGgE;AAChE,uCAAoC;AAEvB,QAAA,0BAA0B,GAGnC;IACF,GAAG,EAAE,4BAA4B;IACjC,KAAK,EAAE,gCAAgC;IACvC,WAAW,EACT,wGAAwG;IAC1G,QAAQ,EAAE,0BAAQ,CAAC,aAAa;IAChC,MAAM,EAAN,eAAM;IACN,UAAU,EAAV,mBAAU;IACV,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,mBAAmB,EAAE,0BAA0B,GAChD,EACD,MAAM,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,GAC9D,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,IACE,IAAA,cAAK,EAAC,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC;wBACzC,IAAA,cAAK,EAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,EACvC;wBACA,GAAG,CAAC,QAAQ,CAAC;4BACX,IAAI,EAAE,OAAC,CAAC,YAAY,CAAC,MAAM;4BAC3B,KAAK,EAAE,IAAI;4BACX,OAAO,EACL,8EAA8E;yBACjF,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,EAAE,GAAG,IAAA,gBAAO,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;YAC/C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;YACtB,MAAM,sBAAsB,GAAG,IAAA,2DAA0B,EAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAElE,MAAM,YAAY,GAAG,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAA;YACjE,MAAM,MAAM,GAAG,sBAAsB;gBACnC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,IAAA,+DAA8B,EAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAC3C,MAAM,SAAS,GAAG,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;YAE3D,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACvC,IAAI,EAAE,OAAO;gBACb,mBAAmB,EAAE,mBAAmB,aAAnB,mBAAmB,cAAnB,mBAAmB,GAAI,0BAA0B;gBACtE,EAAE,EAAE,SAAS;gBACb,YAAY;gBACZ,MAAM;aACP,CAAC,CAAA;YAEF,MAAM,UAAU,CAAC;gBACf,WAAW,EAAE;oBACX,UAAU,EAAE,GAAG,CAAC,GAAG;oBACnB,SAAS;oBACT,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,oBAAS,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,oBAAS,EAAC,GAAG,CAAC;
|
1
|
+
{"version":3,"file":"sendSmsDuringBusinessHours.js","sourceRoot":"","sources":["../../../../../../extensions/twilio/v2/actions/sendSmsDuringBusinessHours/sendSmsDuringBusinessHours.ts"],"names":[],"mappings":"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"}
|
package/dist/src/utils/getNextDateWithinBusinessHours/getNextDateWithinBusinessHours.test.js
CHANGED
@@ -79,12 +79,12 @@ describe('getNextDateWithinBusinessHours', () => {
|
|
79
79
|
});
|
80
80
|
it('returns the next day at 9 AM in ISO format when the date is after working hours', () => {
|
81
81
|
const mockDate = (0, date_fns_1.setHours)((0, date_fns_1.startOfDay)(new Date()), 16); // 4 PM UTC is 5 PM in Belgium and is after working hours
|
82
|
-
const expectedDate = (0, date_fns_1.setHours)((0, date_fns_1.startOfDay)((0, date_fns_1.addDays)(mockDate, 1)),
|
82
|
+
const expectedDate = (0, date_fns_1.setHours)((0, date_fns_1.startOfDay)((0, date_fns_1.addDays)(mockDate, 1)), 7); // should return 8 AM of the next day in UTC (which is 9 AM Belgium time)
|
83
83
|
expect((0, getNextDateWithinBusinessHours_1.getNextDateWithinBusinessHours)(mockDate, timeZone)).toEqual(expectedDate);
|
84
84
|
});
|
85
85
|
it('returns today at 9 AM in ISO format when the date is before working hours', () => {
|
86
86
|
const mockDate = (0, date_fns_1.setHours)((0, date_fns_1.startOfDay)(new Date()), 7); // 7 AM UTC is 8 AM in Belgum and is before working hours
|
87
|
-
const expectedDate = (0, date_fns_1.setHours)((0, date_fns_1.startOfDay)(mockDate),
|
87
|
+
const expectedDate = (0, date_fns_1.setHours)((0, date_fns_1.startOfDay)(mockDate), 7); // should return 8 AM of the same day in UTC (which is 9 AM Belgium time)
|
88
88
|
expect((0, getNextDateWithinBusinessHours_1.getNextDateWithinBusinessHours)(mockDate, timeZone)).toEqual(expectedDate);
|
89
89
|
});
|
90
90
|
});
|