@asksuite/askflow-app-sdk 0.5.17 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,4 +2,5 @@ import { CountryCode } from "libphonenumber-js";
2
2
  export declare class AskflowUtils {
3
3
  static parsePhoneNumber(value: string, country?: CountryCode): Promise<string>;
4
4
  static isPossiblePhoneNumber(value: string, country?: CountryCode): boolean;
5
+ static generateResultDefaultFields(keys: string[]): import("./types").IOutputData[];
5
6
  }
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { IContext, IEvent, IManifest, IResponseDynamicData, IResponseEvent, IResponseOAuthLink, IWorkflowActions } from "./types";
1
+ import { IContext, IEvent, IManifest, IOrganizationActions, IResponseDynamicData, IResponseEvent, IResponseOAuthLink, IWorkflowActions } from "./types";
2
2
  export { AskflowUtils } from "./askflow-utils";
3
3
  export type { IContext, IEvent, IManifest, IOutputData, IResponseEvent, II18nData, IArgument, ISource, IQueryItem, IDependsOn, ISelectItem, IResponseDynamicData, IAuth, IAuthValidationResult, IResponseOAuthLink, } from "./types";
4
4
  export { ArgumentTypeEnum, IGroupFieldsValue, EventTypeEnum, EventTriggerEnum, IWorkflowActions } from "./types";
@@ -8,12 +8,14 @@ export declare abstract class AppFlow {
8
8
  protected events: IEvent[];
9
9
  protected eventsByKey: Map<string, IEvent>;
10
10
  protected workflowActionsByEventKey: Map<string, IWorkflowActions>;
11
+ protected organizationActionsByEventKey: Map<string, IOrganizationActions>;
11
12
  protected executors: Map<IEvent, (context: IContext) => Promise<IResponseEvent>>;
12
13
  protected dynamicDataExecutors: Map<string, (context: IContext) => Promise<IResponseDynamicData>>;
13
14
  protected generateOAuthLinkExecutors: Map<string, (context: IContext) => Promise<IResponseOAuthLink>>;
14
15
  protected constructor(context: IContext);
15
16
  registerEvent(event: IEvent, executor: (context: IContext) => Promise<IResponseEvent>): void;
16
17
  registerWorkflowEvent(event: IEvent, executor: (context: IContext) => Promise<IResponseEvent>, workflowActions: IWorkflowActions): void;
18
+ registerOrganizationEvent(event: IEvent, executor: (context: IContext) => Promise<IResponseEvent>, organizationActions: IOrganizationActions): void;
17
19
  registerDynamicData(key: string, executor: (context: IContext) => Promise<IResponseDynamicData>): void;
18
20
  registerGenerateOauthLink(key: string, executor: (context: IContext) => Promise<IResponseOAuthLink>): void;
19
21
  abstract getManifest(): Promise<IManifest>;
@@ -21,7 +23,7 @@ export declare abstract class AppFlow {
21
23
  abstract deleteConnection(): Promise<boolean>;
22
24
  listEvents(): IEvent[];
23
25
  getEvent(key: string): IEvent | undefined;
24
- getWorkflowActionByEventKey(key: string): IWorkflowActions | undefined;
26
+ getActionByEventKey(key: string): IWorkflowActions | IOrganizationActions | undefined;
25
27
  executeEvent(event: IEvent | string): Promise<IResponseEvent>;
26
28
  executeGenerateOauthLink(key: string): Promise<IResponseOAuthLink>;
27
29
  getDynamicData(key: string): Promise<IResponseDynamicData>;
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- var e,t,n,o,r=require("libphonenumber-js"),i=/*#__PURE__*/function(){function e(){}return e.parsePhoneNumber=function(e,t){try{return Promise.resolve(function(e,t){try{if(e){var n,o=e.replace(/[^\d+]/g,"");try{var i=r.parsePhoneNumber("+"+o);i&&i.country&&(t=i.country)}catch(e){t=t||"BR"}return t?n=r.parsePhoneNumberFromString(o,{defaultCountry:t}):(n=r.parsePhoneNumberFromString(o))||(n=r.parsePhoneNumberFromString("+"+o)),Promise.resolve(n?n.formatInternational().replace(/[^\d]/g,""):e.replace(/[^\d]/g,""))}return Promise.resolve(e)}catch(e){return Promise.reject(e)}}(e,t))}catch(e){return Promise.reject(e)}},e.isPossiblePhoneNumber=function(e,t){return r.isPossiblePhoneNumber(e,t)},e}();exports.ArgumentTypeEnum=void 0,(e=exports.ArgumentTypeEnum||(exports.ArgumentTypeEnum={})).string="string",e.url="url",e.email="email",e.phone="phone",e.groupFields="groupFields",e.number="number",e.boolean="boolean",e.select="select",e.selectItem="selectItem",e.multiselect="multiselect",e.date="date",e.timestamp="timestamp",e.oAuth2="oAuth2",e.radio="radio",e.waitTime="waitTime",e.customSelect="customSelect",exports.EventTriggerEnum=void 0,(t=exports.EventTriggerEnum||(exports.EventTriggerEnum={})).webhook="webhook",t.polling="polling",t.step="step",t.workflow_library="workflow_library",exports.EventTypeEnum=void 0,(n=exports.EventTypeEnum||(exports.EventTypeEnum={})).action="action",n.query="query",n.workflow="workflow",exports.DefaultFieldEnum=void 0,(o=exports.DefaultFieldEnum||(exports.DefaultFieldEnum={})).name="name",o.email="email",o.tags="tags",o.tagsString="tagsString",o.platform="platform",o.platforms="platforms",o.phone="phone",o.city="city",o.state="state",o.country="country",o.arrivalDate="arrivalDate",o.reservationCheckin="reservationCheckin",o.reservationCheckout="reservationCheckout",o.departureDate="departureDate",o.language="language",o.adults="adults",o.children="children",o.childrenAges="childrenAges",o.updatedAt="updatedAt",o.requestPrice="requestPrice",o.eventQuote="eventQuote",o.groupQuote="groupQuote",o.linkQuotationOpened="linkQuotationOpened",o.utmSource="utmSource",o.utmMedium="utmMedium",o.utmCampaign="utmCampaign",o.page="page",o.linkToLiveChat="linkToLiveChat",o.hasReservation="hasReservation",o.totalReservation="totalReservation",o.minTotalValuePriceQuote="minTotalValuePriceQuote",o.maxTotalValuePriceQuote="maxTotalValuePriceQuote",o.currencyPriceQuote="currencyPriceQuote",o.reservationCurrency="reservationCurrency",o.attendant="attendant",o.attendantEmail="attendantEmail",o.attendantUserId="attendantUserId",o.companyName="companyName",o.companyId="companyId",o.conversationId="conversationId",o.conversationStatus="conversationStatus",o.hotelReservationId="hotelReservationId",o.lastMissedCallAt="lastMissedCallAt",o.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",o.linkQuotationUrl="linkQuotationUrl",o.lastPriceQuoteDate="lastPriceQuoteDate",o.lastReservationDate="lastReservationDate",o.conversationBotEnabled="conversationBotEnabled",o.priceQuoteUserId="priceQuoteUserId",o.priceQuoteFoundAvailability="priceQuoteFoundAvailability",o.reservationUserId="reservationUserId",o.reservationTotalPrice="reservationTotalPrice",o.reservationStatus="reservationStatus",o.reservationCurrentlyStatus="reservationCurrentlyStatus",o.reservationUserName="reservationUserName",o.attendanceId="attendanceId",o.countMessages="countMessages",o.countSendAttendant="countSendAttendant",o.lastContactMessageAt="lastContactMessageAt",o.lastBotMessageSentAt="lastBotMessageSentAt",o.lastAttendantMessageSentAt="lastAttendantMessageSentAt",o.lastMessageAt="lastMessageAt",o.metaTimeSpamFinishAt="metaTimeSpamFinishAt",o.pmsGuestCity="pmsGuestCity",o.pmsGuestState="pmsGuestState",o.pmsGuestCountry="pmsGuestCountry",o.pmsGuestBirthDate="pmsGuestBirthDate",o.pmsCheckinDateTime="pmsCheckinDateTime",o.pmsCheckoutDateTime="pmsCheckoutDateTime",o.pmsHostingId="pmsHostingId",o.pmsRoomNumber="pmsRoomNumber",o.pmsRoomCode="pmsRoomCode",o.pmsOriginOfHosting="pmsOriginOfHosting",o.pmsNights="pmsNights",o.pmsHostingType="pmsHostingType",o.pmsRoomType="pmsRoomType",o.pmsGuestIsMain="pmsGuestIsMain",o.pmsBirthdate="pmsBirthdate",o.pmsHotelReservationId="pmsHotelReservationId",o.pmsHotelReservationOrigin="pmsHotelReservationOrigin",o.pmsHotelReservationInternal="pmsHotelReservationInternal",o.pmsReservationStatus="pmsReservationStatus",o.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",o.pmsReservationTotalPrice="pmsReservationTotalPrice",o.pmsReservationCurrency="pmsReservationCurrency",o.pmsAdults="pmsAdults",o.pmsChildren="pmsChildren",o.pmsTotalGuests="pmsTotalGuests",o.pmsCompanyName="pmsCompanyName",o.bookingEngineCheckin="bookingEngineCheckin",o.bookingEngineCheckout="bookingEngineCheckout",o.bookingEngineAdults="bookingEngineAdults",o.bookingEngineChildren="bookingEngineChildren",o.bookingEngineTotalValue="bookingEngineTotalValue",o.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",o.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",o.bookingEngineBookingSource="bookingEngineBookingSource",o.bookingEngineCompany="bookingEngineCompany",o.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",o.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId",exports.AppFlow=/*#__PURE__*/function(){function e(e){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=e,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map}var t=e.prototype;return t.registerEvent=function(e,t){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t)},t.registerWorkflowEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.workflowActionsByEventKey.set(e.key,n)},t.registerDynamicData=function(e,t){this.dynamicDataExecutors.set(e,t)},t.registerGenerateOauthLink=function(e,t){this.generateOAuthLinkExecutors.set(e,t)},t.listEvents=function(){return this.events},t.getEvent=function(e){return this.eventsByKey.get(e)},t.getWorkflowActionByEventKey=function(e){return this.workflowActionsByEventKey.get(e)},t.executeEvent=function(e){try{var t,n,o=this,r=(n="string"==typeof e||e instanceof String?o.getEvent(String(e)):e)?o.executors.get(n):void 0;if(r)return Promise.resolve(r(o.context));throw new Error("Event "+((null==(t=n)?void 0:t.label)||e)+" not found")}catch(e){return Promise.reject(e)}},t.executeGenerateOauthLink=function(e){try{var t=this.generateOAuthLinkExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Generate OAuth Link executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.getDynamicData=function(e){try{var t=this.dynamicDataExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Dynamic data executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.executeLoadInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.loadInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeNextInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.nextInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executePreviousInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.previousInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeGenerateSummary=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.generateSummary(this.context))}catch(e){return Promise.reject(e)}},t.executeCreateWorkflow=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.createWorkflow(this.context))}catch(e){return Promise.reject(e)}},t.executeOnInstallApp=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.onInstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeOnUninstallApp=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.onUninstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckWorkflowStatus=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.checkWorkflowStatus(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckAgentInstallationRequirements=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.checkAgentInstallationRequirements(this.context))}catch(e){return Promise.reject(e)}},e}(),exports.AskflowUtils=i;
1
+ var e,t,n,r,s=require("libphonenumber-js");exports.ArgumentTypeEnum=void 0,(e=exports.ArgumentTypeEnum||(exports.ArgumentTypeEnum={})).string="string",e.url="url",e.email="email",e.phone="phone",e.groupFields="groupFields",e.number="number",e.boolean="boolean",e.select="select",e.selectItem="selectItem",e.multiselect="multiselect",e.date="date",e.timestamp="timestamp",e.oAuth2="oAuth2",e.radio="radio",e.waitTime="waitTime",e.customSelect="customSelect",exports.EventTriggerEnum=void 0,(t=exports.EventTriggerEnum||(exports.EventTriggerEnum={})).webhook="webhook",t.polling="polling",t.step="step",t.workflow_library="workflow_library",t.partner_organization="partner_organization",exports.EventTypeEnum=void 0,(n=exports.EventTypeEnum||(exports.EventTypeEnum={})).action="action",n.query="query",n.workflow="workflow",n.organization="organization",exports.DefaultFieldEnum=void 0,(r=exports.DefaultFieldEnum||(exports.DefaultFieldEnum={})).name="name",r.email="email",r.tags="tags",r.tagsString="tagsString",r.platform="platform",r.platforms="platforms",r.phone="phone",r.city="city",r.state="state",r.country="country",r.arrivalDate="arrivalDate",r.reservationCheckin="reservationCheckin",r.reservationCheckout="reservationCheckout",r.departureDate="departureDate",r.language="language",r.adults="adults",r.children="children",r.childrenAges="childrenAges",r.updatedAt="updatedAt",r.requestPrice="requestPrice",r.eventQuote="eventQuote",r.groupQuote="groupQuote",r.linkQuotationOpened="linkQuotationOpened",r.utmSource="utmSource",r.utmMedium="utmMedium",r.utmCampaign="utmCampaign",r.page="page",r.linkToLiveChat="linkToLiveChat",r.hasReservation="hasReservation",r.totalReservation="totalReservation",r.minTotalValuePriceQuote="minTotalValuePriceQuote",r.maxTotalValuePriceQuote="maxTotalValuePriceQuote",r.currencyPriceQuote="currencyPriceQuote",r.reservationCurrency="reservationCurrency",r.attendant="attendant",r.attendantEmail="attendantEmail",r.attendantUserId="attendantUserId",r.companyName="companyName",r.companyId="companyId",r.conversationId="conversationId",r.conversationStatus="conversationStatus",r.hotelReservationId="hotelReservationId",r.lastMissedCallAt="lastMissedCallAt",r.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",r.linkQuotationUrl="linkQuotationUrl",r.lastPriceQuoteDate="lastPriceQuoteDate",r.lastReservationDate="lastReservationDate",r.conversationBotEnabled="conversationBotEnabled",r.priceQuoteUserId="priceQuoteUserId",r.priceQuoteFoundAvailability="priceQuoteFoundAvailability",r.reservationUserId="reservationUserId",r.reservationTotalPrice="reservationTotalPrice",r.reservationStatus="reservationStatus",r.reservationCurrentlyStatus="reservationCurrentlyStatus",r.reservationUserName="reservationUserName",r.attendanceId="attendanceId",r.countMessages="countMessages",r.countSendAttendant="countSendAttendant",r.lastContactMessageAt="lastContactMessageAt",r.lastBotMessageSentAt="lastBotMessageSentAt",r.lastAttendantMessageSentAt="lastAttendantMessageSentAt",r.lastMessageAt="lastMessageAt",r.metaTimeSpamFinishAt="metaTimeSpamFinishAt",r.pmsGuestCity="pmsGuestCity",r.pmsGuestState="pmsGuestState",r.pmsGuestCountry="pmsGuestCountry",r.pmsGuestBirthDate="pmsGuestBirthDate",r.pmsCheckinDateTime="pmsCheckinDateTime",r.pmsCheckoutDateTime="pmsCheckoutDateTime",r.pmsHostingId="pmsHostingId",r.pmsRoomNumber="pmsRoomNumber",r.pmsRoomCode="pmsRoomCode",r.pmsOriginOfHosting="pmsOriginOfHosting",r.pmsNights="pmsNights",r.pmsHostingType="pmsHostingType",r.pmsRoomType="pmsRoomType",r.pmsGuestIsMain="pmsGuestIsMain",r.pmsBirthdate="pmsBirthdate",r.pmsHotelReservationId="pmsHotelReservationId",r.pmsHotelReservationOrigin="pmsHotelReservationOrigin",r.pmsHotelReservationInternal="pmsHotelReservationInternal",r.pmsReservationStatus="pmsReservationStatus",r.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",r.pmsReservationTotalPrice="pmsReservationTotalPrice",r.pmsReservationCurrency="pmsReservationCurrency",r.pmsAdults="pmsAdults",r.pmsChildren="pmsChildren",r.pmsTotalGuests="pmsTotalGuests",r.pmsCompanyName="pmsCompanyName",r.bookingEngineCheckin="bookingEngineCheckin",r.bookingEngineCheckout="bookingEngineCheckout",r.bookingEngineAdults="bookingEngineAdults",r.bookingEngineChildren="bookingEngineChildren",r.bookingEngineTotalValue="bookingEngineTotalValue",r.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",r.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",r.bookingEngineBookingSource="bookingEngineBookingSource",r.bookingEngineCompany="bookingEngineCompany",r.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",r.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId";var o=/*#__PURE__*/function(){function e(){}return e.parsePhoneNumber=function(e,t){try{return Promise.resolve(function(e,t){try{if(e){var n,r=e.replace(/[^\d+]/g,"");try{var o=s.parsePhoneNumber("+"+r);o&&o.country&&(t=o.country)}catch(e){t=t||"BR"}return t?n=s.parsePhoneNumberFromString(r,{defaultCountry:t}):(n=s.parsePhoneNumberFromString(r))||(n=s.parsePhoneNumberFromString("+"+r)),Promise.resolve(n?n.formatInternational().replace(/[^\d]/g,""):e.replace(/[^\d]/g,""))}return Promise.resolve(e)}catch(e){return Promise.reject(e)}}(e,t))}catch(e){return Promise.reject(e)}},e.isPossiblePhoneNumber=function(e,t){return s.isPossiblePhoneNumber(e,t)},e.generateResultDefaultFields=function(e){return function(e){var t=[];return t.push({key:"PMSReservationNumber",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsHotelReservationId,label:{pt_br:"Código da reserva - PMS",en_us:"Reservation code - PMS",es_es:"Código de la reserva - PMS"}}),t.push({key:"pmsHotelReservationOrigin",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsHotelReservationOrigin,label:{pt_br:"Código da reserva - Origem",en_us:"Reservation code - Source",es_es:"Código de la reserva - Origen"}}),t.push({key:"pmsHotelReservationInternal",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsHotelReservationInternal,label:{pt_br:"Código da reserva - Interno",en_us:"Reservation code - Internal",es_es:"Código de la reserva - Interno"}}),t.push({key:"name",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.name,label:{pt_br:"Nome",en_us:"Name",es_es:"Nombre"}}),t.push({key:"pmsGuestBirthDate",type:exports.ArgumentTypeEnum.date,defaultField:exports.DefaultFieldEnum.pmsGuestBirthDate,label:{pt_br:"Data de nascimento",en_us:"Date of birth",es_es:"Fecha de nacimiento"}}),t.push({key:"pmsCheckinDateTime",type:exports.ArgumentTypeEnum.date,defaultField:exports.DefaultFieldEnum.pmsCheckinDateTime,label:{pt_br:"Data/hora check-in",en_us:"Check-in date/time",es_es:"Fecha/hora de check-in"}}),t.push({key:"pmsCheckoutDateTime",type:exports.ArgumentTypeEnum.date,defaultField:exports.DefaultFieldEnum.pmsCheckoutDateTime,label:{pt_br:"Data/hora check-out",en_us:"Check-out date/time",es_es:"Fecha/hora check-out"}}),t.push({key:"pmsRoomNumber",type:exports.ArgumentTypeEnum.number,defaultField:exports.DefaultFieldEnum.pmsRoomNumber,label:{pt_br:"Número do quarto",en_us:"Room number",es_es:"Número de habitación"}}),t.push({key:"pmsHostingId",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsHostingId,label:{pt_br:"Código do hospedagem",en_us:"Hosting code",es_es:"Código de hospedaje"}}),t.push({key:"pmsHostingType",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsHostingType,label:{pt_br:"Tipo do hospedagem",en_us:"Hosting type",es_es:"Tipo de hospedaje"}}),t.push({key:"pmsOriginOfHosting",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsOriginOfHosting,label:{pt_br:"Origem do hospedagem",en_us:"Hosting origin",es_es:"Origen del alojamiento"}}),t.push({key:"pmsRoomCode",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsRoomCode,label:{pt_br:"Código do quarto",en_us:"Room code",es_es:"Código de habitación"}}),t.push({key:"pmsReservationStatus",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsReservationStatus,label:{pt_br:"Status da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),t.push({key:"pmsCurrentlyReservationStatus",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsCurrentlyReservationStatus,label:{pt_br:"Andamento da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),t.push({key:"pmsNights",type:exports.ArgumentTypeEnum.number,defaultField:exports.DefaultFieldEnum.pmsNights,label:{pt_br:"Diárias",en_us:"Nights",es_es:"Tarifa diaria"}}),t.push({key:"pmsGuestState",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsGuestState,label:{pt_br:"Estado",en_us:"State",es_es:"Estado"}}),t.push({key:"pmsGuestCity",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsGuestCity,label:{pt_br:"Cidade",en_us:"City",es_es:"Ciudad"}}),t.push({key:"pmsCompanyName",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsCompanyName,label:{pt_br:"Nome do hotel",en_us:"Hotel name",es_es:"Nombre del hotel"}}),t.push({key:"pmsRoomType",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsRoomType,label:{pt_br:"Tipo do apartamento",en_us:"Apartment type",es_es:"Tipo de apartamento"}}),t.push({key:"phone",type:exports.ArgumentTypeEnum.phone,defaultField:exports.DefaultFieldEnum.phone,label:{pt_br:"Telefone",en_us:"Phone",es_es:"Teléfono"}}),t.push({key:"email",type:exports.ArgumentTypeEnum.email,defaultField:exports.DefaultFieldEnum.email,label:{pt_br:"E-mail",en_us:"Email",es_es:"E-mail"}}),t.push({key:"pmsGuestIsMain",type:exports.ArgumentTypeEnum.boolean,defaultField:exports.DefaultFieldEnum.pmsGuestIsMain,label:{pt_br:"É hóspede principal",en_us:"Main guest",es_es:"Es el huésped principal"}}),t.push({key:"pmsRoomType",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsRoomType,label:{pt_br:"Tipo do quarto",en_us:"Room type",es_es:"Tipo de habitación"}}),t.push({key:"pmsGuestCountry",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsGuestCountry,label:{pt_br:"País do hóspede",en_us:"Guest country",es_es:"País del huésped"}}),t.push({key:"pmsAdults",type:exports.ArgumentTypeEnum.number,defaultField:exports.DefaultFieldEnum.pmsAdults,label:{pt_br:"Adultos",en_us:"Adults",es_es:"Adultos"}}),t.push({key:"pmsChildren",type:exports.ArgumentTypeEnum.number,defaultField:exports.DefaultFieldEnum.pmsChildren,label:{pt_br:"Crianças",en_us:"Children",es_es:"Niños"}}),t.push({key:"pmsTotalGuests",type:exports.ArgumentTypeEnum.number,defaultField:exports.DefaultFieldEnum.pmsTotalGuests,label:{pt_br:"Total de pessoas",en_us:"Total guests",es_es:"Total de huéspedes"}}),t.push({key:"pmsReservationTotalPrice",type:exports.ArgumentTypeEnum.number,defaultField:exports.DefaultFieldEnum.pmsReservationTotalPrice,label:{pt_br:"Valor total da reserva",en_us:"Total reservation price",es_es:"Precio total de la reserva"}}),t.push({key:"pmsReservationCurrency",type:exports.ArgumentTypeEnum.string,defaultField:exports.DefaultFieldEnum.pmsReservationCurrency,label:{pt_br:"Moeda da reserva",en_us:"Reservation currency",es_es:"Moneda de la reserva"}}),t.filter(function(t){return e.includes(t.key)})}(e)},e}();exports.AppFlow=/*#__PURE__*/function(){function e(e){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.organizationActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=e,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map,this.organizationActionsByEventKey=new Map}var t=e.prototype;return t.registerEvent=function(e,t){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t)},t.registerWorkflowEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.workflowActionsByEventKey.set(e.key,n)},t.registerOrganizationEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.organizationActionsByEventKey.set(e.key,n)},t.registerDynamicData=function(e,t){this.dynamicDataExecutors.set(e,t)},t.registerGenerateOauthLink=function(e,t){this.generateOAuthLinkExecutors.set(e,t)},t.listEvents=function(){return this.events},t.getEvent=function(e){return this.eventsByKey.get(e)},t.getActionByEventKey=function(e){return this.workflowActionsByEventKey.get(e)||this.organizationActionsByEventKey.get(e)},t.executeEvent=function(e){try{var t,n,r=this,s=(n="string"==typeof e||e instanceof String?r.getEvent(String(e)):e)?r.executors.get(n):void 0;if(s)return Promise.resolve(s(r.context));throw new Error("Event "+((null==(t=n)?void 0:t.label)||e)+" not found")}catch(e){return Promise.reject(e)}},t.executeGenerateOauthLink=function(e){try{var t=this.generateOAuthLinkExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Generate OAuth Link executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.getDynamicData=function(e){try{var t=this.dynamicDataExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Dynamic data executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.executeLoadInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.loadInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeNextInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.nextInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executePreviousInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.previousInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeGenerateSummary=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.generateSummary(this.context))}catch(e){return Promise.reject(e)}},t.executeCreateWorkflow=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.createWorkflow(this.context))}catch(e){return Promise.reject(e)}},t.executeOnInstallApp=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.onInstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeOnUninstallApp=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.onUninstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckWorkflowStatus=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.checkWorkflowStatus(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckAgentInstallationRequirements=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.checkAgentInstallationRequirements(this.context))}catch(e){return Promise.reject(e)}},e}(),exports.AskflowUtils=o;
package/dist/index.m.js CHANGED
@@ -1 +1 @@
1
- import{parsePhoneNumber as e,parsePhoneNumberFromString as t,isPossiblePhoneNumber as n}from"libphonenumber-js";var o,r,i,s,a=/*#__PURE__*/function(){function o(){}return o.parsePhoneNumber=function(n,o){try{return Promise.resolve(function(n,o){try{if(n){var r,i=n.replace(/[^\d+]/g,"");try{var s=e("+"+i);s&&s.country&&(o=s.country)}catch(e){o=o||"BR"}return o?r=t(i,{defaultCountry:o}):(r=t(i))||(r=t("+"+i)),Promise.resolve(r?r.formatInternational().replace(/[^\d]/g,""):n.replace(/[^\d]/g,""))}return Promise.resolve(n)}catch(e){return Promise.reject(e)}}(n,o))}catch(e){return Promise.reject(e)}},o.isPossiblePhoneNumber=function(e,t){return n(e,t)},o}();!function(e){e.string="string",e.url="url",e.email="email",e.phone="phone",e.groupFields="groupFields",e.number="number",e.boolean="boolean",e.select="select",e.selectItem="selectItem",e.multiselect="multiselect",e.date="date",e.timestamp="timestamp",e.oAuth2="oAuth2",e.radio="radio",e.waitTime="waitTime",e.customSelect="customSelect"}(o||(o={})),function(e){e.webhook="webhook",e.polling="polling",e.step="step",e.workflow_library="workflow_library"}(r||(r={})),function(e){e.action="action",e.query="query",e.workflow="workflow"}(i||(i={})),function(e){e.name="name",e.email="email",e.tags="tags",e.tagsString="tagsString",e.platform="platform",e.platforms="platforms",e.phone="phone",e.city="city",e.state="state",e.country="country",e.arrivalDate="arrivalDate",e.reservationCheckin="reservationCheckin",e.reservationCheckout="reservationCheckout",e.departureDate="departureDate",e.language="language",e.adults="adults",e.children="children",e.childrenAges="childrenAges",e.updatedAt="updatedAt",e.requestPrice="requestPrice",e.eventQuote="eventQuote",e.groupQuote="groupQuote",e.linkQuotationOpened="linkQuotationOpened",e.utmSource="utmSource",e.utmMedium="utmMedium",e.utmCampaign="utmCampaign",e.page="page",e.linkToLiveChat="linkToLiveChat",e.hasReservation="hasReservation",e.totalReservation="totalReservation",e.minTotalValuePriceQuote="minTotalValuePriceQuote",e.maxTotalValuePriceQuote="maxTotalValuePriceQuote",e.currencyPriceQuote="currencyPriceQuote",e.reservationCurrency="reservationCurrency",e.attendant="attendant",e.attendantEmail="attendantEmail",e.attendantUserId="attendantUserId",e.companyName="companyName",e.companyId="companyId",e.conversationId="conversationId",e.conversationStatus="conversationStatus",e.hotelReservationId="hotelReservationId",e.lastMissedCallAt="lastMissedCallAt",e.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",e.linkQuotationUrl="linkQuotationUrl",e.lastPriceQuoteDate="lastPriceQuoteDate",e.lastReservationDate="lastReservationDate",e.conversationBotEnabled="conversationBotEnabled",e.priceQuoteUserId="priceQuoteUserId",e.priceQuoteFoundAvailability="priceQuoteFoundAvailability",e.reservationUserId="reservationUserId",e.reservationTotalPrice="reservationTotalPrice",e.reservationStatus="reservationStatus",e.reservationCurrentlyStatus="reservationCurrentlyStatus",e.reservationUserName="reservationUserName",e.attendanceId="attendanceId",e.countMessages="countMessages",e.countSendAttendant="countSendAttendant",e.lastContactMessageAt="lastContactMessageAt",e.lastBotMessageSentAt="lastBotMessageSentAt",e.lastAttendantMessageSentAt="lastAttendantMessageSentAt",e.lastMessageAt="lastMessageAt",e.metaTimeSpamFinishAt="metaTimeSpamFinishAt",e.pmsGuestCity="pmsGuestCity",e.pmsGuestState="pmsGuestState",e.pmsGuestCountry="pmsGuestCountry",e.pmsGuestBirthDate="pmsGuestBirthDate",e.pmsCheckinDateTime="pmsCheckinDateTime",e.pmsCheckoutDateTime="pmsCheckoutDateTime",e.pmsHostingId="pmsHostingId",e.pmsRoomNumber="pmsRoomNumber",e.pmsRoomCode="pmsRoomCode",e.pmsOriginOfHosting="pmsOriginOfHosting",e.pmsNights="pmsNights",e.pmsHostingType="pmsHostingType",e.pmsRoomType="pmsRoomType",e.pmsGuestIsMain="pmsGuestIsMain",e.pmsBirthdate="pmsBirthdate",e.pmsHotelReservationId="pmsHotelReservationId",e.pmsHotelReservationOrigin="pmsHotelReservationOrigin",e.pmsHotelReservationInternal="pmsHotelReservationInternal",e.pmsReservationStatus="pmsReservationStatus",e.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",e.pmsReservationTotalPrice="pmsReservationTotalPrice",e.pmsReservationCurrency="pmsReservationCurrency",e.pmsAdults="pmsAdults",e.pmsChildren="pmsChildren",e.pmsTotalGuests="pmsTotalGuests",e.pmsCompanyName="pmsCompanyName",e.bookingEngineCheckin="bookingEngineCheckin",e.bookingEngineCheckout="bookingEngineCheckout",e.bookingEngineAdults="bookingEngineAdults",e.bookingEngineChildren="bookingEngineChildren",e.bookingEngineTotalValue="bookingEngineTotalValue",e.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",e.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",e.bookingEngineBookingSource="bookingEngineBookingSource",e.bookingEngineCompany="bookingEngineCompany",e.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",e.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId"}(s||(s={}));var u=/*#__PURE__*/function(){function e(e){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=e,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map}var t=e.prototype;return t.registerEvent=function(e,t){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t)},t.registerWorkflowEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.workflowActionsByEventKey.set(e.key,n)},t.registerDynamicData=function(e,t){this.dynamicDataExecutors.set(e,t)},t.registerGenerateOauthLink=function(e,t){this.generateOAuthLinkExecutors.set(e,t)},t.listEvents=function(){return this.events},t.getEvent=function(e){return this.eventsByKey.get(e)},t.getWorkflowActionByEventKey=function(e){return this.workflowActionsByEventKey.get(e)},t.executeEvent=function(e){try{var t,n,o=this,r=(n="string"==typeof e||e instanceof String?o.getEvent(String(e)):e)?o.executors.get(n):void 0;if(r)return Promise.resolve(r(o.context));throw new Error("Event "+((null==(t=n)?void 0:t.label)||e)+" not found")}catch(e){return Promise.reject(e)}},t.executeGenerateOauthLink=function(e){try{var t=this.generateOAuthLinkExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Generate OAuth Link executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.getDynamicData=function(e){try{var t=this.dynamicDataExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Dynamic data executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.executeLoadInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.loadInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeNextInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.nextInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executePreviousInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.previousInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeGenerateSummary=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.generateSummary(this.context))}catch(e){return Promise.reject(e)}},t.executeCreateWorkflow=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.createWorkflow(this.context))}catch(e){return Promise.reject(e)}},t.executeOnInstallApp=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.onInstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeOnUninstallApp=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.onUninstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckWorkflowStatus=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.checkWorkflowStatus(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckAgentInstallationRequirements=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.checkAgentInstallationRequirements(this.context))}catch(e){return Promise.reject(e)}},e}();export{u as AppFlow,o as ArgumentTypeEnum,a as AskflowUtils,s as DefaultFieldEnum,r as EventTriggerEnum,i as EventTypeEnum};
1
+ import{parsePhoneNumber as e,parsePhoneNumberFromString as t,isPossiblePhoneNumber as n}from"libphonenumber-js";var s,o,r,i;!function(e){e.string="string",e.url="url",e.email="email",e.phone="phone",e.groupFields="groupFields",e.number="number",e.boolean="boolean",e.select="select",e.selectItem="selectItem",e.multiselect="multiselect",e.date="date",e.timestamp="timestamp",e.oAuth2="oAuth2",e.radio="radio",e.waitTime="waitTime",e.customSelect="customSelect"}(s||(s={})),function(e){e.webhook="webhook",e.polling="polling",e.step="step",e.workflow_library="workflow_library",e.partner_organization="partner_organization"}(o||(o={})),function(e){e.action="action",e.query="query",e.workflow="workflow",e.organization="organization"}(r||(r={})),function(e){e.name="name",e.email="email",e.tags="tags",e.tagsString="tagsString",e.platform="platform",e.platforms="platforms",e.phone="phone",e.city="city",e.state="state",e.country="country",e.arrivalDate="arrivalDate",e.reservationCheckin="reservationCheckin",e.reservationCheckout="reservationCheckout",e.departureDate="departureDate",e.language="language",e.adults="adults",e.children="children",e.childrenAges="childrenAges",e.updatedAt="updatedAt",e.requestPrice="requestPrice",e.eventQuote="eventQuote",e.groupQuote="groupQuote",e.linkQuotationOpened="linkQuotationOpened",e.utmSource="utmSource",e.utmMedium="utmMedium",e.utmCampaign="utmCampaign",e.page="page",e.linkToLiveChat="linkToLiveChat",e.hasReservation="hasReservation",e.totalReservation="totalReservation",e.minTotalValuePriceQuote="minTotalValuePriceQuote",e.maxTotalValuePriceQuote="maxTotalValuePriceQuote",e.currencyPriceQuote="currencyPriceQuote",e.reservationCurrency="reservationCurrency",e.attendant="attendant",e.attendantEmail="attendantEmail",e.attendantUserId="attendantUserId",e.companyName="companyName",e.companyId="companyId",e.conversationId="conversationId",e.conversationStatus="conversationStatus",e.hotelReservationId="hotelReservationId",e.lastMissedCallAt="lastMissedCallAt",e.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",e.linkQuotationUrl="linkQuotationUrl",e.lastPriceQuoteDate="lastPriceQuoteDate",e.lastReservationDate="lastReservationDate",e.conversationBotEnabled="conversationBotEnabled",e.priceQuoteUserId="priceQuoteUserId",e.priceQuoteFoundAvailability="priceQuoteFoundAvailability",e.reservationUserId="reservationUserId",e.reservationTotalPrice="reservationTotalPrice",e.reservationStatus="reservationStatus",e.reservationCurrentlyStatus="reservationCurrentlyStatus",e.reservationUserName="reservationUserName",e.attendanceId="attendanceId",e.countMessages="countMessages",e.countSendAttendant="countSendAttendant",e.lastContactMessageAt="lastContactMessageAt",e.lastBotMessageSentAt="lastBotMessageSentAt",e.lastAttendantMessageSentAt="lastAttendantMessageSentAt",e.lastMessageAt="lastMessageAt",e.metaTimeSpamFinishAt="metaTimeSpamFinishAt",e.pmsGuestCity="pmsGuestCity",e.pmsGuestState="pmsGuestState",e.pmsGuestCountry="pmsGuestCountry",e.pmsGuestBirthDate="pmsGuestBirthDate",e.pmsCheckinDateTime="pmsCheckinDateTime",e.pmsCheckoutDateTime="pmsCheckoutDateTime",e.pmsHostingId="pmsHostingId",e.pmsRoomNumber="pmsRoomNumber",e.pmsRoomCode="pmsRoomCode",e.pmsOriginOfHosting="pmsOriginOfHosting",e.pmsNights="pmsNights",e.pmsHostingType="pmsHostingType",e.pmsRoomType="pmsRoomType",e.pmsGuestIsMain="pmsGuestIsMain",e.pmsBirthdate="pmsBirthdate",e.pmsHotelReservationId="pmsHotelReservationId",e.pmsHotelReservationOrigin="pmsHotelReservationOrigin",e.pmsHotelReservationInternal="pmsHotelReservationInternal",e.pmsReservationStatus="pmsReservationStatus",e.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",e.pmsReservationTotalPrice="pmsReservationTotalPrice",e.pmsReservationCurrency="pmsReservationCurrency",e.pmsAdults="pmsAdults",e.pmsChildren="pmsChildren",e.pmsTotalGuests="pmsTotalGuests",e.pmsCompanyName="pmsCompanyName",e.bookingEngineCheckin="bookingEngineCheckin",e.bookingEngineCheckout="bookingEngineCheckout",e.bookingEngineAdults="bookingEngineAdults",e.bookingEngineChildren="bookingEngineChildren",e.bookingEngineTotalValue="bookingEngineTotalValue",e.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",e.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",e.bookingEngineBookingSource="bookingEngineBookingSource",e.bookingEngineCompany="bookingEngineCompany",e.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",e.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId"}(i||(i={}));var a=/*#__PURE__*/function(){function o(){}return o.parsePhoneNumber=function(n,s){try{return Promise.resolve(function(n,s){try{if(n){var o,r=n.replace(/[^\d+]/g,"");try{var i=e("+"+r);i&&i.country&&(s=i.country)}catch(e){s=s||"BR"}return s?o=t(r,{defaultCountry:s}):(o=t(r))||(o=t("+"+r)),Promise.resolve(o?o.formatInternational().replace(/[^\d]/g,""):n.replace(/[^\d]/g,""))}return Promise.resolve(n)}catch(e){return Promise.reject(e)}}(n,s))}catch(e){return Promise.reject(e)}},o.isPossiblePhoneNumber=function(e,t){return n(e,t)},o.generateResultDefaultFields=function(e){return function(e){var t=[];return t.push({key:"PMSReservationNumber",type:s.string,defaultField:i.pmsHotelReservationId,label:{pt_br:"Código da reserva - PMS",en_us:"Reservation code - PMS",es_es:"Código de la reserva - PMS"}}),t.push({key:"pmsHotelReservationOrigin",type:s.string,defaultField:i.pmsHotelReservationOrigin,label:{pt_br:"Código da reserva - Origem",en_us:"Reservation code - Source",es_es:"Código de la reserva - Origen"}}),t.push({key:"pmsHotelReservationInternal",type:s.string,defaultField:i.pmsHotelReservationInternal,label:{pt_br:"Código da reserva - Interno",en_us:"Reservation code - Internal",es_es:"Código de la reserva - Interno"}}),t.push({key:"name",type:s.string,defaultField:i.name,label:{pt_br:"Nome",en_us:"Name",es_es:"Nombre"}}),t.push({key:"pmsGuestBirthDate",type:s.date,defaultField:i.pmsGuestBirthDate,label:{pt_br:"Data de nascimento",en_us:"Date of birth",es_es:"Fecha de nacimiento"}}),t.push({key:"pmsCheckinDateTime",type:s.date,defaultField:i.pmsCheckinDateTime,label:{pt_br:"Data/hora check-in",en_us:"Check-in date/time",es_es:"Fecha/hora de check-in"}}),t.push({key:"pmsCheckoutDateTime",type:s.date,defaultField:i.pmsCheckoutDateTime,label:{pt_br:"Data/hora check-out",en_us:"Check-out date/time",es_es:"Fecha/hora check-out"}}),t.push({key:"pmsRoomNumber",type:s.number,defaultField:i.pmsRoomNumber,label:{pt_br:"Número do quarto",en_us:"Room number",es_es:"Número de habitación"}}),t.push({key:"pmsHostingId",type:s.string,defaultField:i.pmsHostingId,label:{pt_br:"Código do hospedagem",en_us:"Hosting code",es_es:"Código de hospedaje"}}),t.push({key:"pmsHostingType",type:s.string,defaultField:i.pmsHostingType,label:{pt_br:"Tipo do hospedagem",en_us:"Hosting type",es_es:"Tipo de hospedaje"}}),t.push({key:"pmsOriginOfHosting",type:s.string,defaultField:i.pmsOriginOfHosting,label:{pt_br:"Origem do hospedagem",en_us:"Hosting origin",es_es:"Origen del alojamiento"}}),t.push({key:"pmsRoomCode",type:s.string,defaultField:i.pmsRoomCode,label:{pt_br:"Código do quarto",en_us:"Room code",es_es:"Código de habitación"}}),t.push({key:"pmsReservationStatus",type:s.string,defaultField:i.pmsReservationStatus,label:{pt_br:"Status da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),t.push({key:"pmsCurrentlyReservationStatus",type:s.string,defaultField:i.pmsCurrentlyReservationStatus,label:{pt_br:"Andamento da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),t.push({key:"pmsNights",type:s.number,defaultField:i.pmsNights,label:{pt_br:"Diárias",en_us:"Nights",es_es:"Tarifa diaria"}}),t.push({key:"pmsGuestState",type:s.string,defaultField:i.pmsGuestState,label:{pt_br:"Estado",en_us:"State",es_es:"Estado"}}),t.push({key:"pmsGuestCity",type:s.string,defaultField:i.pmsGuestCity,label:{pt_br:"Cidade",en_us:"City",es_es:"Ciudad"}}),t.push({key:"pmsCompanyName",type:s.string,defaultField:i.pmsCompanyName,label:{pt_br:"Nome do hotel",en_us:"Hotel name",es_es:"Nombre del hotel"}}),t.push({key:"pmsRoomType",type:s.string,defaultField:i.pmsRoomType,label:{pt_br:"Tipo do apartamento",en_us:"Apartment type",es_es:"Tipo de apartamento"}}),t.push({key:"phone",type:s.phone,defaultField:i.phone,label:{pt_br:"Telefone",en_us:"Phone",es_es:"Teléfono"}}),t.push({key:"email",type:s.email,defaultField:i.email,label:{pt_br:"E-mail",en_us:"Email",es_es:"E-mail"}}),t.push({key:"pmsGuestIsMain",type:s.boolean,defaultField:i.pmsGuestIsMain,label:{pt_br:"É hóspede principal",en_us:"Main guest",es_es:"Es el huésped principal"}}),t.push({key:"pmsRoomType",type:s.string,defaultField:i.pmsRoomType,label:{pt_br:"Tipo do quarto",en_us:"Room type",es_es:"Tipo de habitación"}}),t.push({key:"pmsGuestCountry",type:s.string,defaultField:i.pmsGuestCountry,label:{pt_br:"País do hóspede",en_us:"Guest country",es_es:"País del huésped"}}),t.push({key:"pmsAdults",type:s.number,defaultField:i.pmsAdults,label:{pt_br:"Adultos",en_us:"Adults",es_es:"Adultos"}}),t.push({key:"pmsChildren",type:s.number,defaultField:i.pmsChildren,label:{pt_br:"Crianças",en_us:"Children",es_es:"Niños"}}),t.push({key:"pmsTotalGuests",type:s.number,defaultField:i.pmsTotalGuests,label:{pt_br:"Total de pessoas",en_us:"Total guests",es_es:"Total de huéspedes"}}),t.push({key:"pmsReservationTotalPrice",type:s.number,defaultField:i.pmsReservationTotalPrice,label:{pt_br:"Valor total da reserva",en_us:"Total reservation price",es_es:"Precio total de la reserva"}}),t.push({key:"pmsReservationCurrency",type:s.string,defaultField:i.pmsReservationCurrency,label:{pt_br:"Moeda da reserva",en_us:"Reservation currency",es_es:"Moneda de la reserva"}}),t.filter(function(t){return e.includes(t.key)})}(e)},o}(),u=/*#__PURE__*/function(){function e(e){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.organizationActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=e,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map,this.organizationActionsByEventKey=new Map}var t=e.prototype;return t.registerEvent=function(e,t){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t)},t.registerWorkflowEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.workflowActionsByEventKey.set(e.key,n)},t.registerOrganizationEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.organizationActionsByEventKey.set(e.key,n)},t.registerDynamicData=function(e,t){this.dynamicDataExecutors.set(e,t)},t.registerGenerateOauthLink=function(e,t){this.generateOAuthLinkExecutors.set(e,t)},t.listEvents=function(){return this.events},t.getEvent=function(e){return this.eventsByKey.get(e)},t.getActionByEventKey=function(e){return this.workflowActionsByEventKey.get(e)||this.organizationActionsByEventKey.get(e)},t.executeEvent=function(e){try{var t,n,s=this,o=(n="string"==typeof e||e instanceof String?s.getEvent(String(e)):e)?s.executors.get(n):void 0;if(o)return Promise.resolve(o(s.context));throw new Error("Event "+((null==(t=n)?void 0:t.label)||e)+" not found")}catch(e){return Promise.reject(e)}},t.executeGenerateOauthLink=function(e){try{var t=this.generateOAuthLinkExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Generate OAuth Link executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.getDynamicData=function(e){try{var t=this.dynamicDataExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Dynamic data executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.executeLoadInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.loadInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeNextInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.nextInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executePreviousInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.previousInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeGenerateSummary=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.generateSummary(this.context))}catch(e){return Promise.reject(e)}},t.executeCreateWorkflow=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.createWorkflow(this.context))}catch(e){return Promise.reject(e)}},t.executeOnInstallApp=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.onInstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeOnUninstallApp=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.onUninstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckWorkflowStatus=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.checkWorkflowStatus(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckAgentInstallationRequirements=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.checkAgentInstallationRequirements(this.context))}catch(e){return Promise.reject(e)}},e}();export{u as AppFlow,s as ArgumentTypeEnum,a as AskflowUtils,i as DefaultFieldEnum,o as EventTriggerEnum,r as EventTypeEnum};
@@ -1 +1 @@
1
- import{parsePhoneNumber as t,parsePhoneNumberFromString as e,isPossiblePhoneNumber as n}from"libphonenumber-js";class o{static async parsePhoneNumber(n,o){return async function(n,o){if(n){let s,r=n.replace(/[^\d+]/g,"");try{const e=t(`+${r}`);e&&e.country&&(o=e.country)}catch(t){o=o||"BR"}return o?s=e(r,{defaultCountry:o}):(s=e(r),s||(s=e("+"+r))),s?s.formatInternational().replace(/[^\d]/g,""):n.replace(/[^\d]/g,"")}return n}(n,o)}static isPossiblePhoneNumber(t,e){return n(t,e)}}var s,r,i,a;!function(t){t.string="string",t.url="url",t.email="email",t.phone="phone",t.groupFields="groupFields",t.number="number",t.boolean="boolean",t.select="select",t.selectItem="selectItem",t.multiselect="multiselect",t.date="date",t.timestamp="timestamp",t.oAuth2="oAuth2",t.radio="radio",t.waitTime="waitTime",t.customSelect="customSelect"}(s||(s={})),function(t){t.webhook="webhook",t.polling="polling",t.step="step",t.workflow_library="workflow_library"}(r||(r={})),function(t){t.action="action",t.query="query",t.workflow="workflow"}(i||(i={})),function(t){t.name="name",t.email="email",t.tags="tags",t.tagsString="tagsString",t.platform="platform",t.platforms="platforms",t.phone="phone",t.city="city",t.state="state",t.country="country",t.arrivalDate="arrivalDate",t.reservationCheckin="reservationCheckin",t.reservationCheckout="reservationCheckout",t.departureDate="departureDate",t.language="language",t.adults="adults",t.children="children",t.childrenAges="childrenAges",t.updatedAt="updatedAt",t.requestPrice="requestPrice",t.eventQuote="eventQuote",t.groupQuote="groupQuote",t.linkQuotationOpened="linkQuotationOpened",t.utmSource="utmSource",t.utmMedium="utmMedium",t.utmCampaign="utmCampaign",t.page="page",t.linkToLiveChat="linkToLiveChat",t.hasReservation="hasReservation",t.totalReservation="totalReservation",t.minTotalValuePriceQuote="minTotalValuePriceQuote",t.maxTotalValuePriceQuote="maxTotalValuePriceQuote",t.currencyPriceQuote="currencyPriceQuote",t.reservationCurrency="reservationCurrency",t.attendant="attendant",t.attendantEmail="attendantEmail",t.attendantUserId="attendantUserId",t.companyName="companyName",t.companyId="companyId",t.conversationId="conversationId",t.conversationStatus="conversationStatus",t.hotelReservationId="hotelReservationId",t.lastMissedCallAt="lastMissedCallAt",t.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",t.linkQuotationUrl="linkQuotationUrl",t.lastPriceQuoteDate="lastPriceQuoteDate",t.lastReservationDate="lastReservationDate",t.conversationBotEnabled="conversationBotEnabled",t.priceQuoteUserId="priceQuoteUserId",t.priceQuoteFoundAvailability="priceQuoteFoundAvailability",t.reservationUserId="reservationUserId",t.reservationTotalPrice="reservationTotalPrice",t.reservationStatus="reservationStatus",t.reservationCurrentlyStatus="reservationCurrentlyStatus",t.reservationUserName="reservationUserName",t.attendanceId="attendanceId",t.countMessages="countMessages",t.countSendAttendant="countSendAttendant",t.lastContactMessageAt="lastContactMessageAt",t.lastBotMessageSentAt="lastBotMessageSentAt",t.lastAttendantMessageSentAt="lastAttendantMessageSentAt",t.lastMessageAt="lastMessageAt",t.metaTimeSpamFinishAt="metaTimeSpamFinishAt",t.pmsGuestCity="pmsGuestCity",t.pmsGuestState="pmsGuestState",t.pmsGuestCountry="pmsGuestCountry",t.pmsGuestBirthDate="pmsGuestBirthDate",t.pmsCheckinDateTime="pmsCheckinDateTime",t.pmsCheckoutDateTime="pmsCheckoutDateTime",t.pmsHostingId="pmsHostingId",t.pmsRoomNumber="pmsRoomNumber",t.pmsRoomCode="pmsRoomCode",t.pmsOriginOfHosting="pmsOriginOfHosting",t.pmsNights="pmsNights",t.pmsHostingType="pmsHostingType",t.pmsRoomType="pmsRoomType",t.pmsGuestIsMain="pmsGuestIsMain",t.pmsBirthdate="pmsBirthdate",t.pmsHotelReservationId="pmsHotelReservationId",t.pmsHotelReservationOrigin="pmsHotelReservationOrigin",t.pmsHotelReservationInternal="pmsHotelReservationInternal",t.pmsReservationStatus="pmsReservationStatus",t.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",t.pmsReservationTotalPrice="pmsReservationTotalPrice",t.pmsReservationCurrency="pmsReservationCurrency",t.pmsAdults="pmsAdults",t.pmsChildren="pmsChildren",t.pmsTotalGuests="pmsTotalGuests",t.pmsCompanyName="pmsCompanyName",t.bookingEngineCheckin="bookingEngineCheckin",t.bookingEngineCheckout="bookingEngineCheckout",t.bookingEngineAdults="bookingEngineAdults",t.bookingEngineChildren="bookingEngineChildren",t.bookingEngineTotalValue="bookingEngineTotalValue",t.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",t.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",t.bookingEngineBookingSource="bookingEngineBookingSource",t.bookingEngineCompany="bookingEngineCompany",t.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",t.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId"}(a||(a={}));class u{constructor(t){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=t,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map}registerEvent(t,e){this.events.push(t),this.eventsByKey.set(t.key,t),this.executors.set(t,e)}registerWorkflowEvent(t,e,n){this.events.push(t),this.eventsByKey.set(t.key,t),this.executors.set(t,e),this.workflowActionsByEventKey.set(t.key,n)}registerDynamicData(t,e){this.dynamicDataExecutors.set(t,e)}registerGenerateOauthLink(t,e){this.generateOAuthLinkExecutors.set(t,e)}listEvents(){return this.events}getEvent(t){return this.eventsByKey.get(t)}getWorkflowActionByEventKey(t){return this.workflowActionsByEventKey.get(t)}async executeEvent(t){var e;let n;n="string"==typeof t||t instanceof String?this.getEvent(String(t)):t;const o=n?this.executors.get(n):void 0;if(o)return o(this.context);throw new Error(`Event ${(null==(e=n)?void 0:e.label)||t} not found`)}async executeGenerateOauthLink(t){const e=this.generateOAuthLinkExecutors.get(t);if(e)return e(this.context);throw new Error(`Generate OAuth Link executor ${t} not found`)}async getDynamicData(t){const e=this.dynamicDataExecutors.get(t);if(e)return e(this.context);throw new Error(`Dynamic data executor ${t} not found`)}async executeLoadInstallationStep(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.loadInstallationStep(this.context)}async executeNextInstallationStep(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.nextInstallationStep(this.context)}async executePreviousInstallationStep(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.previousInstallationStep(this.context)}async executeGenerateSummary(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.generateSummary(this.context)}async executeCreateWorkflow(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.createWorkflow(this.context)}async executeOnInstallApp(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.onInstallApp(this.context)}async executeOnUninstallApp(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.onUninstallApp(this.context)}async executeCheckWorkflowStatus(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.checkWorkflowStatus(this.context)}async executeCheckAgentInstallationRequirements(t){const e=this.getWorkflowActionByEventKey(t);if(!e)throw new Error(`Workflow action for event ${t} not found`);return e.checkAgentInstallationRequirements(this.context)}}export{u as AppFlow,s as ArgumentTypeEnum,o as AskflowUtils,a as DefaultFieldEnum,r as EventTriggerEnum,i as EventTypeEnum};
1
+ import{parsePhoneNumber as e,parsePhoneNumberFromString as t,isPossiblePhoneNumber as n}from"libphonenumber-js";var s,o,a,i;!function(e){e.string="string",e.url="url",e.email="email",e.phone="phone",e.groupFields="groupFields",e.number="number",e.boolean="boolean",e.select="select",e.selectItem="selectItem",e.multiselect="multiselect",e.date="date",e.timestamp="timestamp",e.oAuth2="oAuth2",e.radio="radio",e.waitTime="waitTime",e.customSelect="customSelect"}(s||(s={})),function(e){e.webhook="webhook",e.polling="polling",e.step="step",e.workflow_library="workflow_library",e.partner_organization="partner_organization"}(o||(o={})),function(e){e.action="action",e.query="query",e.workflow="workflow",e.organization="organization"}(a||(a={})),function(e){e.name="name",e.email="email",e.tags="tags",e.tagsString="tagsString",e.platform="platform",e.platforms="platforms",e.phone="phone",e.city="city",e.state="state",e.country="country",e.arrivalDate="arrivalDate",e.reservationCheckin="reservationCheckin",e.reservationCheckout="reservationCheckout",e.departureDate="departureDate",e.language="language",e.adults="adults",e.children="children",e.childrenAges="childrenAges",e.updatedAt="updatedAt",e.requestPrice="requestPrice",e.eventQuote="eventQuote",e.groupQuote="groupQuote",e.linkQuotationOpened="linkQuotationOpened",e.utmSource="utmSource",e.utmMedium="utmMedium",e.utmCampaign="utmCampaign",e.page="page",e.linkToLiveChat="linkToLiveChat",e.hasReservation="hasReservation",e.totalReservation="totalReservation",e.minTotalValuePriceQuote="minTotalValuePriceQuote",e.maxTotalValuePriceQuote="maxTotalValuePriceQuote",e.currencyPriceQuote="currencyPriceQuote",e.reservationCurrency="reservationCurrency",e.attendant="attendant",e.attendantEmail="attendantEmail",e.attendantUserId="attendantUserId",e.companyName="companyName",e.companyId="companyId",e.conversationId="conversationId",e.conversationStatus="conversationStatus",e.hotelReservationId="hotelReservationId",e.lastMissedCallAt="lastMissedCallAt",e.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",e.linkQuotationUrl="linkQuotationUrl",e.lastPriceQuoteDate="lastPriceQuoteDate",e.lastReservationDate="lastReservationDate",e.conversationBotEnabled="conversationBotEnabled",e.priceQuoteUserId="priceQuoteUserId",e.priceQuoteFoundAvailability="priceQuoteFoundAvailability",e.reservationUserId="reservationUserId",e.reservationTotalPrice="reservationTotalPrice",e.reservationStatus="reservationStatus",e.reservationCurrentlyStatus="reservationCurrentlyStatus",e.reservationUserName="reservationUserName",e.attendanceId="attendanceId",e.countMessages="countMessages",e.countSendAttendant="countSendAttendant",e.lastContactMessageAt="lastContactMessageAt",e.lastBotMessageSentAt="lastBotMessageSentAt",e.lastAttendantMessageSentAt="lastAttendantMessageSentAt",e.lastMessageAt="lastMessageAt",e.metaTimeSpamFinishAt="metaTimeSpamFinishAt",e.pmsGuestCity="pmsGuestCity",e.pmsGuestState="pmsGuestState",e.pmsGuestCountry="pmsGuestCountry",e.pmsGuestBirthDate="pmsGuestBirthDate",e.pmsCheckinDateTime="pmsCheckinDateTime",e.pmsCheckoutDateTime="pmsCheckoutDateTime",e.pmsHostingId="pmsHostingId",e.pmsRoomNumber="pmsRoomNumber",e.pmsRoomCode="pmsRoomCode",e.pmsOriginOfHosting="pmsOriginOfHosting",e.pmsNights="pmsNights",e.pmsHostingType="pmsHostingType",e.pmsRoomType="pmsRoomType",e.pmsGuestIsMain="pmsGuestIsMain",e.pmsBirthdate="pmsBirthdate",e.pmsHotelReservationId="pmsHotelReservationId",e.pmsHotelReservationOrigin="pmsHotelReservationOrigin",e.pmsHotelReservationInternal="pmsHotelReservationInternal",e.pmsReservationStatus="pmsReservationStatus",e.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",e.pmsReservationTotalPrice="pmsReservationTotalPrice",e.pmsReservationCurrency="pmsReservationCurrency",e.pmsAdults="pmsAdults",e.pmsChildren="pmsChildren",e.pmsTotalGuests="pmsTotalGuests",e.pmsCompanyName="pmsCompanyName",e.bookingEngineCheckin="bookingEngineCheckin",e.bookingEngineCheckout="bookingEngineCheckout",e.bookingEngineAdults="bookingEngineAdults",e.bookingEngineChildren="bookingEngineChildren",e.bookingEngineTotalValue="bookingEngineTotalValue",e.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",e.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",e.bookingEngineBookingSource="bookingEngineBookingSource",e.bookingEngineCompany="bookingEngineCompany",e.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",e.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId"}(i||(i={}));class r{static async parsePhoneNumber(n,s){return async function(n,s){if(n){let o,a=n.replace(/[^\d+]/g,"");try{const t=e(`+${a}`);t&&t.country&&(s=t.country)}catch(e){s=s||"BR"}return s?o=t(a,{defaultCountry:s}):(o=t(a),o||(o=t("+"+a))),o?o.formatInternational().replace(/[^\d]/g,""):n.replace(/[^\d]/g,"")}return n}(n,s)}static isPossiblePhoneNumber(e,t){return n(e,t)}static generateResultDefaultFields(e){return function(e){const t=[];return t.push({key:"PMSReservationNumber",type:s.string,defaultField:i.pmsHotelReservationId,label:{pt_br:"Código da reserva - PMS",en_us:"Reservation code - PMS",es_es:"Código de la reserva - PMS"}}),t.push({key:"pmsHotelReservationOrigin",type:s.string,defaultField:i.pmsHotelReservationOrigin,label:{pt_br:"Código da reserva - Origem",en_us:"Reservation code - Source",es_es:"Código de la reserva - Origen"}}),t.push({key:"pmsHotelReservationInternal",type:s.string,defaultField:i.pmsHotelReservationInternal,label:{pt_br:"Código da reserva - Interno",en_us:"Reservation code - Internal",es_es:"Código de la reserva - Interno"}}),t.push({key:"name",type:s.string,defaultField:i.name,label:{pt_br:"Nome",en_us:"Name",es_es:"Nombre"}}),t.push({key:"pmsGuestBirthDate",type:s.date,defaultField:i.pmsGuestBirthDate,label:{pt_br:"Data de nascimento",en_us:"Date of birth",es_es:"Fecha de nacimiento"}}),t.push({key:"pmsCheckinDateTime",type:s.date,defaultField:i.pmsCheckinDateTime,label:{pt_br:"Data/hora check-in",en_us:"Check-in date/time",es_es:"Fecha/hora de check-in"}}),t.push({key:"pmsCheckoutDateTime",type:s.date,defaultField:i.pmsCheckoutDateTime,label:{pt_br:"Data/hora check-out",en_us:"Check-out date/time",es_es:"Fecha/hora check-out"}}),t.push({key:"pmsRoomNumber",type:s.number,defaultField:i.pmsRoomNumber,label:{pt_br:"Número do quarto",en_us:"Room number",es_es:"Número de habitación"}}),t.push({key:"pmsHostingId",type:s.string,defaultField:i.pmsHostingId,label:{pt_br:"Código do hospedagem",en_us:"Hosting code",es_es:"Código de hospedaje"}}),t.push({key:"pmsHostingType",type:s.string,defaultField:i.pmsHostingType,label:{pt_br:"Tipo do hospedagem",en_us:"Hosting type",es_es:"Tipo de hospedaje"}}),t.push({key:"pmsOriginOfHosting",type:s.string,defaultField:i.pmsOriginOfHosting,label:{pt_br:"Origem do hospedagem",en_us:"Hosting origin",es_es:"Origen del alojamiento"}}),t.push({key:"pmsRoomCode",type:s.string,defaultField:i.pmsRoomCode,label:{pt_br:"Código do quarto",en_us:"Room code",es_es:"Código de habitación"}}),t.push({key:"pmsReservationStatus",type:s.string,defaultField:i.pmsReservationStatus,label:{pt_br:"Status da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),t.push({key:"pmsCurrentlyReservationStatus",type:s.string,defaultField:i.pmsCurrentlyReservationStatus,label:{pt_br:"Andamento da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),t.push({key:"pmsNights",type:s.number,defaultField:i.pmsNights,label:{pt_br:"Diárias",en_us:"Nights",es_es:"Tarifa diaria"}}),t.push({key:"pmsGuestState",type:s.string,defaultField:i.pmsGuestState,label:{pt_br:"Estado",en_us:"State",es_es:"Estado"}}),t.push({key:"pmsGuestCity",type:s.string,defaultField:i.pmsGuestCity,label:{pt_br:"Cidade",en_us:"City",es_es:"Ciudad"}}),t.push({key:"pmsCompanyName",type:s.string,defaultField:i.pmsCompanyName,label:{pt_br:"Nome do hotel",en_us:"Hotel name",es_es:"Nombre del hotel"}}),t.push({key:"pmsRoomType",type:s.string,defaultField:i.pmsRoomType,label:{pt_br:"Tipo do apartamento",en_us:"Apartment type",es_es:"Tipo de apartamento"}}),t.push({key:"phone",type:s.phone,defaultField:i.phone,label:{pt_br:"Telefone",en_us:"Phone",es_es:"Teléfono"}}),t.push({key:"email",type:s.email,defaultField:i.email,label:{pt_br:"E-mail",en_us:"Email",es_es:"E-mail"}}),t.push({key:"pmsGuestIsMain",type:s.boolean,defaultField:i.pmsGuestIsMain,label:{pt_br:"É hóspede principal",en_us:"Main guest",es_es:"Es el huésped principal"}}),t.push({key:"pmsRoomType",type:s.string,defaultField:i.pmsRoomType,label:{pt_br:"Tipo do quarto",en_us:"Room type",es_es:"Tipo de habitación"}}),t.push({key:"pmsGuestCountry",type:s.string,defaultField:i.pmsGuestCountry,label:{pt_br:"País do hóspede",en_us:"Guest country",es_es:"País del huésped"}}),t.push({key:"pmsAdults",type:s.number,defaultField:i.pmsAdults,label:{pt_br:"Adultos",en_us:"Adults",es_es:"Adultos"}}),t.push({key:"pmsChildren",type:s.number,defaultField:i.pmsChildren,label:{pt_br:"Crianças",en_us:"Children",es_es:"Niños"}}),t.push({key:"pmsTotalGuests",type:s.number,defaultField:i.pmsTotalGuests,label:{pt_br:"Total de pessoas",en_us:"Total guests",es_es:"Total de huéspedes"}}),t.push({key:"pmsReservationTotalPrice",type:s.number,defaultField:i.pmsReservationTotalPrice,label:{pt_br:"Valor total da reserva",en_us:"Total reservation price",es_es:"Precio total de la reserva"}}),t.push({key:"pmsReservationCurrency",type:s.string,defaultField:i.pmsReservationCurrency,label:{pt_br:"Moeda da reserva",en_us:"Reservation currency",es_es:"Moneda de la reserva"}}),t.filter(t=>e.includes(t.key))}(e)}}class u{constructor(e){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.organizationActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=e,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map,this.organizationActionsByEventKey=new Map}registerEvent(e,t){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t)}registerWorkflowEvent(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.workflowActionsByEventKey.set(e.key,n)}registerOrganizationEvent(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.organizationActionsByEventKey.set(e.key,n)}registerDynamicData(e,t){this.dynamicDataExecutors.set(e,t)}registerGenerateOauthLink(e,t){this.generateOAuthLinkExecutors.set(e,t)}listEvents(){return this.events}getEvent(e){return this.eventsByKey.get(e)}getActionByEventKey(e){return this.workflowActionsByEventKey.get(e)||this.organizationActionsByEventKey.get(e)}async executeEvent(e){var t;let n;n="string"==typeof e||e instanceof String?this.getEvent(String(e)):e;const s=n?this.executors.get(n):void 0;if(s)return s(this.context);throw new Error(`Event ${(null==(t=n)?void 0:t.label)||e} not found`)}async executeGenerateOauthLink(e){const t=this.generateOAuthLinkExecutors.get(e);if(t)return t(this.context);throw new Error(`Generate OAuth Link executor ${e} not found`)}async getDynamicData(e){const t=this.dynamicDataExecutors.get(e);if(t)return t(this.context);throw new Error(`Dynamic data executor ${e} not found`)}async executeLoadInstallationStep(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.loadInstallationStep(this.context)}async executeNextInstallationStep(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.nextInstallationStep(this.context)}async executePreviousInstallationStep(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.previousInstallationStep(this.context)}async executeGenerateSummary(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.generateSummary(this.context)}async executeCreateWorkflow(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.createWorkflow(this.context)}async executeOnInstallApp(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.onInstallApp(this.context)}async executeOnUninstallApp(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.onUninstallApp(this.context)}async executeCheckWorkflowStatus(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.checkWorkflowStatus(this.context)}async executeCheckAgentInstallationRequirements(e){const t=this.getActionByEventKey(e);if(!t)throw new Error(`Action for event ${e} not found`);return t.checkAgentInstallationRequirements(this.context)}}export{u as AppFlow,s as ArgumentTypeEnum,r as AskflowUtils,i as DefaultFieldEnum,o as EventTriggerEnum,a as EventTypeEnum};
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("libphonenumber-js")):"function"==typeof define&&define.amd?define(["exports","libphonenumber-js"],t):t((e||self).askflowAppSdk={},e.libphonenumberJs)}(this,function(e,t){var n,o,r,i,s=/*#__PURE__*/function(){function e(){}return e.parsePhoneNumber=function(e,n){try{return Promise.resolve(function(e,n){try{if(e){var o,r=e.replace(/[^\d+]/g,"");try{var i=t.parsePhoneNumber("+"+r);i&&i.country&&(n=i.country)}catch(e){n=n||"BR"}return n?o=t.parsePhoneNumberFromString(r,{defaultCountry:n}):(o=t.parsePhoneNumberFromString(r))||(o=t.parsePhoneNumberFromString("+"+r)),Promise.resolve(o?o.formatInternational().replace(/[^\d]/g,""):e.replace(/[^\d]/g,""))}return Promise.resolve(e)}catch(e){return Promise.reject(e)}}(e,n))}catch(e){return Promise.reject(e)}},e.isPossiblePhoneNumber=function(e,n){return t.isPossiblePhoneNumber(e,n)},e}();e.ArgumentTypeEnum=void 0,(n=e.ArgumentTypeEnum||(e.ArgumentTypeEnum={})).string="string",n.url="url",n.email="email",n.phone="phone",n.groupFields="groupFields",n.number="number",n.boolean="boolean",n.select="select",n.selectItem="selectItem",n.multiselect="multiselect",n.date="date",n.timestamp="timestamp",n.oAuth2="oAuth2",n.radio="radio",n.waitTime="waitTime",n.customSelect="customSelect",e.EventTriggerEnum=void 0,(o=e.EventTriggerEnum||(e.EventTriggerEnum={})).webhook="webhook",o.polling="polling",o.step="step",o.workflow_library="workflow_library",e.EventTypeEnum=void 0,(r=e.EventTypeEnum||(e.EventTypeEnum={})).action="action",r.query="query",r.workflow="workflow",e.DefaultFieldEnum=void 0,(i=e.DefaultFieldEnum||(e.DefaultFieldEnum={})).name="name",i.email="email",i.tags="tags",i.tagsString="tagsString",i.platform="platform",i.platforms="platforms",i.phone="phone",i.city="city",i.state="state",i.country="country",i.arrivalDate="arrivalDate",i.reservationCheckin="reservationCheckin",i.reservationCheckout="reservationCheckout",i.departureDate="departureDate",i.language="language",i.adults="adults",i.children="children",i.childrenAges="childrenAges",i.updatedAt="updatedAt",i.requestPrice="requestPrice",i.eventQuote="eventQuote",i.groupQuote="groupQuote",i.linkQuotationOpened="linkQuotationOpened",i.utmSource="utmSource",i.utmMedium="utmMedium",i.utmCampaign="utmCampaign",i.page="page",i.linkToLiveChat="linkToLiveChat",i.hasReservation="hasReservation",i.totalReservation="totalReservation",i.minTotalValuePriceQuote="minTotalValuePriceQuote",i.maxTotalValuePriceQuote="maxTotalValuePriceQuote",i.currencyPriceQuote="currencyPriceQuote",i.reservationCurrency="reservationCurrency",i.attendant="attendant",i.attendantEmail="attendantEmail",i.attendantUserId="attendantUserId",i.companyName="companyName",i.companyId="companyId",i.conversationId="conversationId",i.conversationStatus="conversationStatus",i.hotelReservationId="hotelReservationId",i.lastMissedCallAt="lastMissedCallAt",i.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",i.linkQuotationUrl="linkQuotationUrl",i.lastPriceQuoteDate="lastPriceQuoteDate",i.lastReservationDate="lastReservationDate",i.conversationBotEnabled="conversationBotEnabled",i.priceQuoteUserId="priceQuoteUserId",i.priceQuoteFoundAvailability="priceQuoteFoundAvailability",i.reservationUserId="reservationUserId",i.reservationTotalPrice="reservationTotalPrice",i.reservationStatus="reservationStatus",i.reservationCurrentlyStatus="reservationCurrentlyStatus",i.reservationUserName="reservationUserName",i.attendanceId="attendanceId",i.countMessages="countMessages",i.countSendAttendant="countSendAttendant",i.lastContactMessageAt="lastContactMessageAt",i.lastBotMessageSentAt="lastBotMessageSentAt",i.lastAttendantMessageSentAt="lastAttendantMessageSentAt",i.lastMessageAt="lastMessageAt",i.metaTimeSpamFinishAt="metaTimeSpamFinishAt",i.pmsGuestCity="pmsGuestCity",i.pmsGuestState="pmsGuestState",i.pmsGuestCountry="pmsGuestCountry",i.pmsGuestBirthDate="pmsGuestBirthDate",i.pmsCheckinDateTime="pmsCheckinDateTime",i.pmsCheckoutDateTime="pmsCheckoutDateTime",i.pmsHostingId="pmsHostingId",i.pmsRoomNumber="pmsRoomNumber",i.pmsRoomCode="pmsRoomCode",i.pmsOriginOfHosting="pmsOriginOfHosting",i.pmsNights="pmsNights",i.pmsHostingType="pmsHostingType",i.pmsRoomType="pmsRoomType",i.pmsGuestIsMain="pmsGuestIsMain",i.pmsBirthdate="pmsBirthdate",i.pmsHotelReservationId="pmsHotelReservationId",i.pmsHotelReservationOrigin="pmsHotelReservationOrigin",i.pmsHotelReservationInternal="pmsHotelReservationInternal",i.pmsReservationStatus="pmsReservationStatus",i.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",i.pmsReservationTotalPrice="pmsReservationTotalPrice",i.pmsReservationCurrency="pmsReservationCurrency",i.pmsAdults="pmsAdults",i.pmsChildren="pmsChildren",i.pmsTotalGuests="pmsTotalGuests",i.pmsCompanyName="pmsCompanyName",i.bookingEngineCheckin="bookingEngineCheckin",i.bookingEngineCheckout="bookingEngineCheckout",i.bookingEngineAdults="bookingEngineAdults",i.bookingEngineChildren="bookingEngineChildren",i.bookingEngineTotalValue="bookingEngineTotalValue",i.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",i.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",i.bookingEngineBookingSource="bookingEngineBookingSource",i.bookingEngineCompany="bookingEngineCompany",i.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",i.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId",e.AppFlow=/*#__PURE__*/function(){function e(e){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=e,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map}var t=e.prototype;return t.registerEvent=function(e,t){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t)},t.registerWorkflowEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.workflowActionsByEventKey.set(e.key,n)},t.registerDynamicData=function(e,t){this.dynamicDataExecutors.set(e,t)},t.registerGenerateOauthLink=function(e,t){this.generateOAuthLinkExecutors.set(e,t)},t.listEvents=function(){return this.events},t.getEvent=function(e){return this.eventsByKey.get(e)},t.getWorkflowActionByEventKey=function(e){return this.workflowActionsByEventKey.get(e)},t.executeEvent=function(e){try{var t,n,o=this,r=(n="string"==typeof e||e instanceof String?o.getEvent(String(e)):e)?o.executors.get(n):void 0;if(r)return Promise.resolve(r(o.context));throw new Error("Event "+((null==(t=n)?void 0:t.label)||e)+" not found")}catch(e){return Promise.reject(e)}},t.executeGenerateOauthLink=function(e){try{var t=this.generateOAuthLinkExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Generate OAuth Link executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.getDynamicData=function(e){try{var t=this.dynamicDataExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Dynamic data executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.executeLoadInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.loadInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeNextInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.nextInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executePreviousInstallationStep=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.previousInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeGenerateSummary=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.generateSummary(this.context))}catch(e){return Promise.reject(e)}},t.executeCreateWorkflow=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.createWorkflow(this.context))}catch(e){return Promise.reject(e)}},t.executeOnInstallApp=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.onInstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeOnUninstallApp=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.onUninstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckWorkflowStatus=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.checkWorkflowStatus(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckAgentInstallationRequirements=function(e){try{var t=this.getWorkflowActionByEventKey(e);if(!t)throw new Error("Workflow action for event "+e+" not found");return Promise.resolve(t.checkAgentInstallationRequirements(this.context))}catch(e){return Promise.reject(e)}},e}(),e.AskflowUtils=s});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("libphonenumber-js")):"function"==typeof define&&define.amd?define(["exports","libphonenumber-js"],t):t((e||self).askflowAppSdk={},e.libphonenumberJs)}(this,function(e,t){var n,r,s,o;e.ArgumentTypeEnum=void 0,(n=e.ArgumentTypeEnum||(e.ArgumentTypeEnum={})).string="string",n.url="url",n.email="email",n.phone="phone",n.groupFields="groupFields",n.number="number",n.boolean="boolean",n.select="select",n.selectItem="selectItem",n.multiselect="multiselect",n.date="date",n.timestamp="timestamp",n.oAuth2="oAuth2",n.radio="radio",n.waitTime="waitTime",n.customSelect="customSelect",e.EventTriggerEnum=void 0,(r=e.EventTriggerEnum||(e.EventTriggerEnum={})).webhook="webhook",r.polling="polling",r.step="step",r.workflow_library="workflow_library",r.partner_organization="partner_organization",e.EventTypeEnum=void 0,(s=e.EventTypeEnum||(e.EventTypeEnum={})).action="action",s.query="query",s.workflow="workflow",s.organization="organization",e.DefaultFieldEnum=void 0,(o=e.DefaultFieldEnum||(e.DefaultFieldEnum={})).name="name",o.email="email",o.tags="tags",o.tagsString="tagsString",o.platform="platform",o.platforms="platforms",o.phone="phone",o.city="city",o.state="state",o.country="country",o.arrivalDate="arrivalDate",o.reservationCheckin="reservationCheckin",o.reservationCheckout="reservationCheckout",o.departureDate="departureDate",o.language="language",o.adults="adults",o.children="children",o.childrenAges="childrenAges",o.updatedAt="updatedAt",o.requestPrice="requestPrice",o.eventQuote="eventQuote",o.groupQuote="groupQuote",o.linkQuotationOpened="linkQuotationOpened",o.utmSource="utmSource",o.utmMedium="utmMedium",o.utmCampaign="utmCampaign",o.page="page",o.linkToLiveChat="linkToLiveChat",o.hasReservation="hasReservation",o.totalReservation="totalReservation",o.minTotalValuePriceQuote="minTotalValuePriceQuote",o.maxTotalValuePriceQuote="maxTotalValuePriceQuote",o.currencyPriceQuote="currencyPriceQuote",o.reservationCurrency="reservationCurrency",o.attendant="attendant",o.attendantEmail="attendantEmail",o.attendantUserId="attendantUserId",o.companyName="companyName",o.companyId="companyId",o.conversationId="conversationId",o.conversationStatus="conversationStatus",o.hotelReservationId="hotelReservationId",o.lastMissedCallAt="lastMissedCallAt",o.lastLinkQuotationOpenedDate="lastLinkQuotationOpenedDate",o.linkQuotationUrl="linkQuotationUrl",o.lastPriceQuoteDate="lastPriceQuoteDate",o.lastReservationDate="lastReservationDate",o.conversationBotEnabled="conversationBotEnabled",o.priceQuoteUserId="priceQuoteUserId",o.priceQuoteFoundAvailability="priceQuoteFoundAvailability",o.reservationUserId="reservationUserId",o.reservationTotalPrice="reservationTotalPrice",o.reservationStatus="reservationStatus",o.reservationCurrentlyStatus="reservationCurrentlyStatus",o.reservationUserName="reservationUserName",o.attendanceId="attendanceId",o.countMessages="countMessages",o.countSendAttendant="countSendAttendant",o.lastContactMessageAt="lastContactMessageAt",o.lastBotMessageSentAt="lastBotMessageSentAt",o.lastAttendantMessageSentAt="lastAttendantMessageSentAt",o.lastMessageAt="lastMessageAt",o.metaTimeSpamFinishAt="metaTimeSpamFinishAt",o.pmsGuestCity="pmsGuestCity",o.pmsGuestState="pmsGuestState",o.pmsGuestCountry="pmsGuestCountry",o.pmsGuestBirthDate="pmsGuestBirthDate",o.pmsCheckinDateTime="pmsCheckinDateTime",o.pmsCheckoutDateTime="pmsCheckoutDateTime",o.pmsHostingId="pmsHostingId",o.pmsRoomNumber="pmsRoomNumber",o.pmsRoomCode="pmsRoomCode",o.pmsOriginOfHosting="pmsOriginOfHosting",o.pmsNights="pmsNights",o.pmsHostingType="pmsHostingType",o.pmsRoomType="pmsRoomType",o.pmsGuestIsMain="pmsGuestIsMain",o.pmsBirthdate="pmsBirthdate",o.pmsHotelReservationId="pmsHotelReservationId",o.pmsHotelReservationOrigin="pmsHotelReservationOrigin",o.pmsHotelReservationInternal="pmsHotelReservationInternal",o.pmsReservationStatus="pmsReservationStatus",o.pmsCurrentlyReservationStatus="pmsCurrentlyReservationStatus",o.pmsReservationTotalPrice="pmsReservationTotalPrice",o.pmsReservationCurrency="pmsReservationCurrency",o.pmsAdults="pmsAdults",o.pmsChildren="pmsChildren",o.pmsTotalGuests="pmsTotalGuests",o.pmsCompanyName="pmsCompanyName",o.bookingEngineCheckin="bookingEngineCheckin",o.bookingEngineCheckout="bookingEngineCheckout",o.bookingEngineAdults="bookingEngineAdults",o.bookingEngineChildren="bookingEngineChildren",o.bookingEngineTotalValue="bookingEngineTotalValue",o.bookingEngineTotalValueCurrency="bookingEngineTotalValueCurrency",o.bookingEngineLastCheckoutDate="bookingEngineLastCheckoutDate",o.bookingEngineBookingSource="bookingEngineBookingSource",o.bookingEngineCompany="bookingEngineCompany",o.bookingEngineCheckoutUrl="bookingEngineCheckoutUrl",o.bookingEngineAsksuiteCompanyId="bookingEngineAsksuiteCompanyId";var i=/*#__PURE__*/function(){function n(){}return n.parsePhoneNumber=function(e,n){try{return Promise.resolve(function(e,n){try{if(e){var r,s=e.replace(/[^\d+]/g,"");try{var o=t.parsePhoneNumber("+"+s);o&&o.country&&(n=o.country)}catch(e){n=n||"BR"}return n?r=t.parsePhoneNumberFromString(s,{defaultCountry:n}):(r=t.parsePhoneNumberFromString(s))||(r=t.parsePhoneNumberFromString("+"+s)),Promise.resolve(r?r.formatInternational().replace(/[^\d]/g,""):e.replace(/[^\d]/g,""))}return Promise.resolve(e)}catch(e){return Promise.reject(e)}}(e,n))}catch(e){return Promise.reject(e)}},n.isPossiblePhoneNumber=function(e,n){return t.isPossiblePhoneNumber(e,n)},n.generateResultDefaultFields=function(t){return function(t){var n=[];return n.push({key:"PMSReservationNumber",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsHotelReservationId,label:{pt_br:"Código da reserva - PMS",en_us:"Reservation code - PMS",es_es:"Código de la reserva - PMS"}}),n.push({key:"pmsHotelReservationOrigin",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsHotelReservationOrigin,label:{pt_br:"Código da reserva - Origem",en_us:"Reservation code - Source",es_es:"Código de la reserva - Origen"}}),n.push({key:"pmsHotelReservationInternal",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsHotelReservationInternal,label:{pt_br:"Código da reserva - Interno",en_us:"Reservation code - Internal",es_es:"Código de la reserva - Interno"}}),n.push({key:"name",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.name,label:{pt_br:"Nome",en_us:"Name",es_es:"Nombre"}}),n.push({key:"pmsGuestBirthDate",type:e.ArgumentTypeEnum.date,defaultField:e.DefaultFieldEnum.pmsGuestBirthDate,label:{pt_br:"Data de nascimento",en_us:"Date of birth",es_es:"Fecha de nacimiento"}}),n.push({key:"pmsCheckinDateTime",type:e.ArgumentTypeEnum.date,defaultField:e.DefaultFieldEnum.pmsCheckinDateTime,label:{pt_br:"Data/hora check-in",en_us:"Check-in date/time",es_es:"Fecha/hora de check-in"}}),n.push({key:"pmsCheckoutDateTime",type:e.ArgumentTypeEnum.date,defaultField:e.DefaultFieldEnum.pmsCheckoutDateTime,label:{pt_br:"Data/hora check-out",en_us:"Check-out date/time",es_es:"Fecha/hora check-out"}}),n.push({key:"pmsRoomNumber",type:e.ArgumentTypeEnum.number,defaultField:e.DefaultFieldEnum.pmsRoomNumber,label:{pt_br:"Número do quarto",en_us:"Room number",es_es:"Número de habitación"}}),n.push({key:"pmsHostingId",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsHostingId,label:{pt_br:"Código do hospedagem",en_us:"Hosting code",es_es:"Código de hospedaje"}}),n.push({key:"pmsHostingType",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsHostingType,label:{pt_br:"Tipo do hospedagem",en_us:"Hosting type",es_es:"Tipo de hospedaje"}}),n.push({key:"pmsOriginOfHosting",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsOriginOfHosting,label:{pt_br:"Origem do hospedagem",en_us:"Hosting origin",es_es:"Origen del alojamiento"}}),n.push({key:"pmsRoomCode",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsRoomCode,label:{pt_br:"Código do quarto",en_us:"Room code",es_es:"Código de habitación"}}),n.push({key:"pmsReservationStatus",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsReservationStatus,label:{pt_br:"Status da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),n.push({key:"pmsCurrentlyReservationStatus",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsCurrentlyReservationStatus,label:{pt_br:"Andamento da reserva",en_us:"Current status",es_es:"Progreso de la reserva"}}),n.push({key:"pmsNights",type:e.ArgumentTypeEnum.number,defaultField:e.DefaultFieldEnum.pmsNights,label:{pt_br:"Diárias",en_us:"Nights",es_es:"Tarifa diaria"}}),n.push({key:"pmsGuestState",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsGuestState,label:{pt_br:"Estado",en_us:"State",es_es:"Estado"}}),n.push({key:"pmsGuestCity",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsGuestCity,label:{pt_br:"Cidade",en_us:"City",es_es:"Ciudad"}}),n.push({key:"pmsCompanyName",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsCompanyName,label:{pt_br:"Nome do hotel",en_us:"Hotel name",es_es:"Nombre del hotel"}}),n.push({key:"pmsRoomType",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsRoomType,label:{pt_br:"Tipo do apartamento",en_us:"Apartment type",es_es:"Tipo de apartamento"}}),n.push({key:"phone",type:e.ArgumentTypeEnum.phone,defaultField:e.DefaultFieldEnum.phone,label:{pt_br:"Telefone",en_us:"Phone",es_es:"Teléfono"}}),n.push({key:"email",type:e.ArgumentTypeEnum.email,defaultField:e.DefaultFieldEnum.email,label:{pt_br:"E-mail",en_us:"Email",es_es:"E-mail"}}),n.push({key:"pmsGuestIsMain",type:e.ArgumentTypeEnum.boolean,defaultField:e.DefaultFieldEnum.pmsGuestIsMain,label:{pt_br:"É hóspede principal",en_us:"Main guest",es_es:"Es el huésped principal"}}),n.push({key:"pmsRoomType",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsRoomType,label:{pt_br:"Tipo do quarto",en_us:"Room type",es_es:"Tipo de habitación"}}),n.push({key:"pmsGuestCountry",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsGuestCountry,label:{pt_br:"País do hóspede",en_us:"Guest country",es_es:"País del huésped"}}),n.push({key:"pmsAdults",type:e.ArgumentTypeEnum.number,defaultField:e.DefaultFieldEnum.pmsAdults,label:{pt_br:"Adultos",en_us:"Adults",es_es:"Adultos"}}),n.push({key:"pmsChildren",type:e.ArgumentTypeEnum.number,defaultField:e.DefaultFieldEnum.pmsChildren,label:{pt_br:"Crianças",en_us:"Children",es_es:"Niños"}}),n.push({key:"pmsTotalGuests",type:e.ArgumentTypeEnum.number,defaultField:e.DefaultFieldEnum.pmsTotalGuests,label:{pt_br:"Total de pessoas",en_us:"Total guests",es_es:"Total de huéspedes"}}),n.push({key:"pmsReservationTotalPrice",type:e.ArgumentTypeEnum.number,defaultField:e.DefaultFieldEnum.pmsReservationTotalPrice,label:{pt_br:"Valor total da reserva",en_us:"Total reservation price",es_es:"Precio total de la reserva"}}),n.push({key:"pmsReservationCurrency",type:e.ArgumentTypeEnum.string,defaultField:e.DefaultFieldEnum.pmsReservationCurrency,label:{pt_br:"Moeda da reserva",en_us:"Reservation currency",es_es:"Moneda de la reserva"}}),n.filter(function(e){return t.includes(e.key)})}(t)},n}();e.AppFlow=/*#__PURE__*/function(){function e(e){this.context=void 0,this.events=[],this.eventsByKey=void 0,this.workflowActionsByEventKey=void 0,this.organizationActionsByEventKey=void 0,this.executors=new Map,this.dynamicDataExecutors=new Map,this.generateOAuthLinkExecutors=new Map,this.context=e,this.eventsByKey=new Map,this.workflowActionsByEventKey=new Map,this.organizationActionsByEventKey=new Map}var t=e.prototype;return t.registerEvent=function(e,t){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t)},t.registerWorkflowEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.workflowActionsByEventKey.set(e.key,n)},t.registerOrganizationEvent=function(e,t,n){this.events.push(e),this.eventsByKey.set(e.key,e),this.executors.set(e,t),this.organizationActionsByEventKey.set(e.key,n)},t.registerDynamicData=function(e,t){this.dynamicDataExecutors.set(e,t)},t.registerGenerateOauthLink=function(e,t){this.generateOAuthLinkExecutors.set(e,t)},t.listEvents=function(){return this.events},t.getEvent=function(e){return this.eventsByKey.get(e)},t.getActionByEventKey=function(e){return this.workflowActionsByEventKey.get(e)||this.organizationActionsByEventKey.get(e)},t.executeEvent=function(e){try{var t,n,r=this,s=(n="string"==typeof e||e instanceof String?r.getEvent(String(e)):e)?r.executors.get(n):void 0;if(s)return Promise.resolve(s(r.context));throw new Error("Event "+((null==(t=n)?void 0:t.label)||e)+" not found")}catch(e){return Promise.reject(e)}},t.executeGenerateOauthLink=function(e){try{var t=this.generateOAuthLinkExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Generate OAuth Link executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.getDynamicData=function(e){try{var t=this.dynamicDataExecutors.get(e);if(t)return Promise.resolve(t(this.context));throw new Error("Dynamic data executor "+e+" not found")}catch(e){return Promise.reject(e)}},t.executeLoadInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.loadInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeNextInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.nextInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executePreviousInstallationStep=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.previousInstallationStep(this.context))}catch(e){return Promise.reject(e)}},t.executeGenerateSummary=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.generateSummary(this.context))}catch(e){return Promise.reject(e)}},t.executeCreateWorkflow=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.createWorkflow(this.context))}catch(e){return Promise.reject(e)}},t.executeOnInstallApp=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.onInstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeOnUninstallApp=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.onUninstallApp(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckWorkflowStatus=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.checkWorkflowStatus(this.context))}catch(e){return Promise.reject(e)}},t.executeCheckAgentInstallationRequirements=function(e){try{var t=this.getActionByEventKey(e);if(!t)throw new Error("Action for event "+e+" not found");return Promise.resolve(t.checkAgentInstallationRequirements(this.context))}catch(e){return Promise.reject(e)}},e}(),e.AskflowUtils=i});
package/dist/types.d.ts CHANGED
@@ -60,12 +60,14 @@ export declare enum EventTriggerEnum {
60
60
  'webhook' = "webhook",
61
61
  'polling' = "polling",
62
62
  'step' = "step",
63
- 'workflow_library' = "workflow_library"
63
+ 'workflow_library' = "workflow_library",
64
+ 'partner_organization' = "partner_organization"
64
65
  }
65
66
  export declare enum EventTypeEnum {
66
67
  'action' = "action",
67
68
  'query' = "query",
68
- 'workflow' = "workflow"
69
+ 'workflow' = "workflow",
70
+ 'organization' = "organization"
69
71
  }
70
72
  export declare type IEvent = {
71
73
  key: string;
@@ -101,6 +103,12 @@ export declare type IEvent = {
101
103
  description?: II18nData;
102
104
  uuidWorkflowDefault?: string;
103
105
  workflowDetails?: IWorkflowDetails;
106
+ } | {
107
+ key: string;
108
+ type: EventTypeEnum.organization;
109
+ trigger: EventTriggerEnum.partner_organization;
110
+ label: II18nData;
111
+ description?: II18nData;
104
112
  };
105
113
  export declare type IWorkflowDetails = {
106
114
  title: II18nData;
@@ -243,3 +251,10 @@ export interface IWorkflowActions {
243
251
  "checkWorkflowStatus": (result: IContext) => Promise<any>;
244
252
  "checkAgentInstallationRequirements": (result: IContext) => Promise<any>;
245
253
  }
254
+ export interface IOrganizationActions {
255
+ "loadInstallationStep": (result: IContext) => Promise<any>;
256
+ "nextInstallationStep": (result: IContext) => Promise<any>;
257
+ "previousInstallationStep": (result: IContext) => Promise<any>;
258
+ "onInstallApp": (result: IContext) => Promise<any>;
259
+ "onUninstallApp": (result: IContext) => Promise<any>;
260
+ }
@@ -0,0 +1,2 @@
1
+ import { IOutputData } from "../types";
2
+ export declare function generateResultDefaultFields(keys: string[]): IOutputData[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@asksuite/askflow-app-sdk",
3
- "version": "0.5.17",
3
+ "version": "0.7.0",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.m.js",
6
6
  "unpkg": "dist/index.umd.js",