@zohoim/client-sdk 1.0.0-subscription1 → 1.0.0-subscription3

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.
Files changed (419) hide show
  1. package/es/application/services/agents/AgentService.js +21 -0
  2. package/es/application/services/agents/index.js +2 -0
  3. package/es/application/services/bots/BotService.js +26 -0
  4. package/es/application/services/bots/index.js +2 -0
  5. package/es/application/services/cannedMessages/CannedMessageService.js +51 -0
  6. package/es/application/services/cannedMessages/index.js +2 -0
  7. package/es/application/services/channels/ChannelAgentService.js +21 -0
  8. package/es/application/services/channels/ChannelService.js +26 -0
  9. package/es/application/services/channels/index.js +3 -0
  10. package/es/application/services/contacts/ContactService.js +21 -0
  11. package/es/application/services/contacts/index.js +2 -0
  12. package/es/application/services/index.js +12 -0
  13. package/es/application/services/integrationServices/IntegrationService.js +21 -0
  14. package/es/application/services/integrationServices/index.js +2 -0
  15. package/es/application/services/messages/MessageService.js +61 -0
  16. package/es/application/services/messages/index.js +2 -0
  17. package/es/application/services/sessions/SessionService.js +61 -0
  18. package/es/application/services/sessions/index.js +2 -0
  19. package/es/application/services/subscription/SubscriptionService.js +36 -0
  20. package/es/application/services/subscription/index.js +2 -0
  21. package/es/application/services/templateMessages/TemplateMessageService.js +26 -0
  22. package/es/application/services/templateMessages/index.js +2 -0
  23. package/es/application/services/userPreferences/UserPreferenceService.js +26 -0
  24. package/es/application/services/userPreferences/index.js +2 -0
  25. package/es/application/services/whatsAppPricing/WhatsAppPricingService.js +21 -0
  26. package/es/application/services/whatsAppPricing/index.js +2 -0
  27. package/es/core/constants/ModuleNames.js +16 -0
  28. package/es/core/constants/ModuleTypes.js +5 -0
  29. package/es/core/constants/ResponseTypes.js +6 -0
  30. package/es/core/constants/index.js +7 -0
  31. package/es/core/errors/AdapterError.js +7 -0
  32. package/es/core/errors/ValidationError.js +7 -0
  33. package/es/core/errors/index.js +3 -0
  34. package/es/core/utils/ResponseUtils.js +24 -0
  35. package/es/core/utils/index.js +3 -0
  36. package/es/core/utils/validateSchema.js +133 -0
  37. package/es/domain/dto/RequestBuilder.js +44 -0
  38. package/es/domain/dto/agents/getAgentsRequest.js +12 -0
  39. package/es/domain/dto/agents/index.js +1 -0
  40. package/es/domain/dto/bots/getBotRequest.js +9 -0
  41. package/es/domain/dto/bots/getBotsRequest.js +15 -0
  42. package/es/domain/dto/bots/index.js +2 -0
  43. package/es/domain/dto/cannedMessages/createCannedMessageRequest.js +18 -0
  44. package/es/domain/dto/cannedMessages/deleteCannedMessageRequest.js +13 -0
  45. package/es/domain/dto/cannedMessages/disableCannedMessageRequest.js +13 -0
  46. package/es/domain/dto/cannedMessages/enableCannedMessageRequest.js +13 -0
  47. package/es/domain/dto/cannedMessages/getCannedMessageRequest.js +13 -0
  48. package/es/domain/dto/cannedMessages/getCannedMessagesRequest.js +18 -0
  49. package/es/domain/dto/cannedMessages/index.js +7 -0
  50. package/es/domain/dto/cannedMessages/updateCannedMessageRequest.js +20 -0
  51. package/es/domain/dto/channels/agents/getChannelAgentsRequest.js +13 -0
  52. package/es/domain/dto/channels/agents/index.js +1 -0
  53. package/es/domain/dto/channels/getChannelRequest.js +13 -0
  54. package/es/domain/dto/channels/getChannelsRequest.js +25 -0
  55. package/es/domain/dto/channels/index.js +4 -0
  56. package/es/domain/dto/contacts/getContactsRequest.js +11 -0
  57. package/es/domain/dto/contacts/index.js +1 -0
  58. package/es/domain/dto/index.js +12 -0
  59. package/es/domain/dto/integrationServices/getIntegrationsRequest.js +7 -0
  60. package/es/domain/dto/integrationServices/index.js +1 -0
  61. package/es/domain/dto/messages/deleteMessageRequest.js +14 -0
  62. package/es/domain/dto/messages/getFullContentRequest.js +14 -0
  63. package/es/domain/dto/messages/getMessageRequest.js +14 -0
  64. package/es/domain/dto/messages/getMessagesRequest.js +20 -0
  65. package/es/domain/dto/messages/index.js +9 -0
  66. package/es/domain/dto/messages/initiateSessionRequest.js +24 -0
  67. package/es/domain/dto/messages/resendMessageRequest.js +14 -0
  68. package/es/domain/dto/messages/searchMessagesRequest.js +22 -0
  69. package/es/domain/dto/messages/sendAttachmentRequest.js +19 -0
  70. package/es/domain/dto/messages/sendMessageRequest.js +19 -0
  71. package/es/domain/dto/sessions/getSessionAttachmentsRequest.js +18 -0
  72. package/es/domain/dto/sessions/getSessionLastMessagesRequest.js +13 -0
  73. package/es/domain/dto/sessions/getSessionMetricsRequest.js +16 -0
  74. package/es/domain/dto/sessions/getSessionRequest.js +13 -0
  75. package/es/domain/dto/sessions/getSessionsRequest.js +27 -0
  76. package/es/domain/dto/sessions/index.js +9 -0
  77. package/es/domain/dto/sessions/markSessionAsReadRequest.js +17 -0
  78. package/es/domain/dto/sessions/pickupSessionRequest.js +9 -0
  79. package/es/domain/dto/sessions/updateSessionAssigneeRequest.js +12 -0
  80. package/es/domain/dto/sessions/updateSessionStatusRequest.js +18 -0
  81. package/es/domain/dto/subscription/buyAddOnRequest.js +18 -0
  82. package/es/domain/dto/subscription/getAddOnsRequest.js +15 -0
  83. package/es/domain/dto/subscription/getLicenseDetailsRequest.js +7 -0
  84. package/es/domain/dto/subscription/index.js +4 -0
  85. package/es/domain/dto/subscription/modifyAddOnRequest.js +18 -0
  86. package/es/domain/dto/templateMessages/getTemplateCreditExhaustStatusRequest.js +13 -0
  87. package/es/domain/dto/templateMessages/getTemplateLanguagesRequest.js +7 -0
  88. package/es/domain/dto/templateMessages/index.js +2 -0
  89. package/es/domain/dto/userPreferences/getPreferencesRequest.js +7 -0
  90. package/es/domain/dto/userPreferences/index.js +2 -0
  91. package/es/domain/dto/userPreferences/updatePreferencesRequest.js +9 -0
  92. package/es/domain/dto/whatsAppPricing/calculateWhatsAppPricingRequest.js +14 -0
  93. package/es/domain/dto/whatsAppPricing/index.js +1 -0
  94. package/es/domain/entities/Actor/Actor.js +41 -0
  95. package/es/domain/entities/Actor/index.js +2 -0
  96. package/es/domain/entities/Agent/Agent.js +30 -0
  97. package/es/domain/entities/Agent/index.js +2 -0
  98. package/es/domain/entities/Attachment/Attachment.js +27 -0
  99. package/es/domain/entities/Attachment/index.js +2 -0
  100. package/es/domain/entities/Bot/Bot.js +27 -0
  101. package/es/domain/entities/Bot/index.js +2 -0
  102. package/es/domain/entities/CannedMessage/CannedMessage.js +58 -0
  103. package/es/domain/entities/CannedMessage/index.js +2 -0
  104. package/es/domain/entities/Channel/Channel.js +60 -0
  105. package/es/domain/entities/Channel/index.js +2 -0
  106. package/es/domain/entities/Contact/Contact.js +26 -0
  107. package/es/domain/entities/Contact/index.js +2 -0
  108. package/es/domain/entities/CustomReplyExtension/CustomReplyExtension.js +26 -0
  109. package/es/domain/entities/CustomReplyExtension/index.js +2 -0
  110. package/es/domain/entities/IntegrationService/IntegrationService.js +44 -0
  111. package/es/domain/entities/IntegrationService/index.js +2 -0
  112. package/es/domain/entities/Message/Action.js +29 -0
  113. package/es/domain/entities/Message/ExternalInfo.js +30 -0
  114. package/es/domain/entities/Message/Info.js +48 -0
  115. package/es/domain/entities/Message/InfoTarget.js +26 -0
  116. package/es/domain/entities/Message/Location.js +22 -0
  117. package/es/domain/entities/Message/Message.js +160 -0
  118. package/es/domain/entities/Message/MessageWithSession.js +25 -0
  119. package/es/domain/entities/Message/index.js +7 -0
  120. package/es/domain/entities/Session/Session.js +84 -0
  121. package/es/domain/entities/Session/SessionMetrics.js +21 -0
  122. package/es/domain/entities/Session/index.js +3 -0
  123. package/es/domain/entities/Subscription/AddOn.js +26 -0
  124. package/es/domain/entities/Subscription/LicenseDetails.js +21 -0
  125. package/es/domain/entities/Subscription/SubscriptionInfo.js +26 -0
  126. package/es/domain/entities/Subscription/index.js +4 -0
  127. package/es/domain/entities/TemplateMessage/TemplateCreditExhaustStatus.js +27 -0
  128. package/es/domain/entities/TemplateMessage/TemplateLanguage.js +22 -0
  129. package/es/domain/entities/TemplateMessage/index.js +3 -0
  130. package/es/domain/entities/UserPreference/UserPreference.js +26 -0
  131. package/es/domain/entities/UserPreference/index.js +2 -0
  132. package/es/domain/entities/WhatsAppPricing/WhatsAppPricing.js +25 -0
  133. package/es/domain/entities/WhatsAppPricing/WhatsAppPricingCategory.js +22 -0
  134. package/es/domain/entities/WhatsAppPricing/index.js +3 -0
  135. package/es/domain/entities/index.js +15 -0
  136. package/es/domain/enum/actor/ActorType.js +7 -0
  137. package/es/domain/enum/actor/index.js +2 -0
  138. package/es/domain/enum/attachment/AttachmentStatus.js +7 -0
  139. package/es/domain/enum/attachment/index.js +2 -0
  140. package/es/domain/enum/bot/BotServiceType.js +7 -0
  141. package/es/domain/enum/bot/index.js +2 -0
  142. package/es/domain/enum/cannedMessage/CannedMessageStatus.js +7 -0
  143. package/es/domain/enum/cannedMessage/CannedMessageType.js +5 -0
  144. package/es/domain/enum/cannedMessage/TemplateItemButtonType.js +6 -0
  145. package/es/domain/enum/cannedMessage/TemplateItemFooterType.js +4 -0
  146. package/es/domain/enum/cannedMessage/TemplateItemHeaderType.js +7 -0
  147. package/es/domain/enum/cannedMessage/index.js +6 -0
  148. package/es/domain/enum/index.js +10 -0
  149. package/es/domain/enum/integrationServices/IntegrationServices.js +12 -0
  150. package/es/domain/enum/integrationServices/index.js +2 -0
  151. package/es/domain/enum/message/ActionSubType.js +6 -0
  152. package/es/domain/enum/message/ActionType.js +6 -0
  153. package/es/domain/enum/message/ExternalInfoAction.js +9 -0
  154. package/es/domain/enum/message/InfoAction.js +17 -0
  155. package/es/domain/enum/message/InfoSessionStatus.js +10 -0
  156. package/es/domain/enum/message/InfoTargetType.js +11 -0
  157. package/es/domain/enum/message/MessageContentType.js +6 -0
  158. package/es/domain/enum/message/MessageDirection.js +6 -0
  159. package/es/domain/enum/message/MessageMeta.js +5 -0
  160. package/es/domain/enum/message/MessageStatus.js +11 -0
  161. package/es/domain/enum/message/MessageType.js +11 -0
  162. package/es/domain/enum/message/MetaMessageSourceType.js +6 -0
  163. package/es/domain/enum/message/MetaSystemMessageType.js +8 -0
  164. package/es/domain/enum/message/index.js +14 -0
  165. package/es/domain/enum/session/AssigneeFilter.js +6 -0
  166. package/es/domain/enum/session/SessionReplyStatus.js +24 -0
  167. package/es/domain/enum/session/SessionStatus.js +11 -0
  168. package/es/domain/enum/session/index.js +4 -0
  169. package/es/domain/enum/subscription/AddOnModule.js +5 -0
  170. package/es/domain/enum/subscription/AddOnName.js +5 -0
  171. package/es/domain/enum/subscription/AddOnType.js +5 -0
  172. package/es/domain/enum/subscription/SubscriptionStatus.js +4 -0
  173. package/es/domain/enum/subscription/index.js +5 -0
  174. package/es/domain/enum/templateMessage/TemplateCreditExhaustStatusCode.js +4 -0
  175. package/es/domain/enum/templateMessage/index.js +2 -0
  176. package/es/domain/enum/userPreference/CollapseSidePanel.js +5 -0
  177. package/es/domain/enum/userPreference/index.js +2 -0
  178. package/es/domain/interfaces/IAdapter.js +6 -0
  179. package/es/domain/interfaces/index.js +3 -0
  180. package/es/domain/interfaces/repositories/agents/IAgentRepository.js +17 -0
  181. package/es/domain/interfaces/repositories/agents/index.js +2 -0
  182. package/es/domain/interfaces/repositories/bots/IBotRepository.js +23 -0
  183. package/es/domain/interfaces/repositories/bots/index.js +2 -0
  184. package/es/domain/interfaces/repositories/cannedMessages/ICannedMessageRepository.js +47 -0
  185. package/es/domain/interfaces/repositories/cannedMessages/index.js +2 -0
  186. package/es/domain/interfaces/repositories/channels/IChannelAgentRepository.js +17 -0
  187. package/es/domain/interfaces/repositories/channels/IChannelRepository.js +23 -0
  188. package/es/domain/interfaces/repositories/channels/index.js +3 -0
  189. package/es/domain/interfaces/repositories/contacts/IContactRepository.js +17 -0
  190. package/es/domain/interfaces/repositories/contacts/index.js +2 -0
  191. package/es/domain/interfaces/repositories/index.js +12 -0
  192. package/es/domain/interfaces/repositories/integrationServices/IIntegrationServiceRepository.js +17 -0
  193. package/es/domain/interfaces/repositories/integrationServices/index.js +2 -0
  194. package/es/domain/interfaces/repositories/messages/IMessageRepository.js +57 -0
  195. package/es/domain/interfaces/repositories/messages/index.js +2 -0
  196. package/es/domain/interfaces/repositories/sessions/ISessionRepository.js +57 -0
  197. package/es/domain/interfaces/repositories/sessions/index.js +2 -0
  198. package/es/domain/interfaces/repositories/subscription/ISubscriptionRepository.js +32 -0
  199. package/es/domain/interfaces/repositories/subscription/index.js +2 -0
  200. package/es/domain/interfaces/repositories/templateMessages/ITemplateMessageRepository.js +21 -0
  201. package/es/domain/interfaces/repositories/templateMessages/index.js +2 -0
  202. package/es/domain/interfaces/repositories/userPreferences/IUserPreferenceRepository.js +23 -0
  203. package/es/domain/interfaces/repositories/userPreferences/index.js +2 -0
  204. package/es/domain/interfaces/repositories/whatsAppPricing/IWhatsAppPricingRepository.js +18 -0
  205. package/es/domain/interfaces/repositories/whatsAppPricing/index.js +2 -0
  206. package/es/domain/schema/actor/ActorSchema.js +37 -0
  207. package/es/domain/schema/actor/AgentSchema.js +45 -0
  208. package/es/domain/schema/actor/index.js +3 -0
  209. package/es/domain/schema/attachment/AttachmentSchema.js +33 -0
  210. package/es/domain/schema/attachment/index.js +2 -0
  211. package/es/domain/schema/bot/BotSchema.js +33 -0
  212. package/es/domain/schema/bot/index.js +2 -0
  213. package/es/domain/schema/cannedMessage/CannedMessageSchema.js +65 -0
  214. package/es/domain/schema/cannedMessage/TemplateItem/TemplateItemButtonsSchema.js +17 -0
  215. package/es/domain/schema/cannedMessage/TemplateItem/TemplateItemFooterSchema.js +13 -0
  216. package/es/domain/schema/cannedMessage/TemplateItem/TemplateItemHeaderSchema.js +19 -0
  217. package/es/domain/schema/cannedMessage/TemplateItem/index.js +4 -0
  218. package/es/domain/schema/cannedMessage/TemplateItemsSchema.js +21 -0
  219. package/es/domain/schema/cannedMessage/TranslationsSchema.js +43 -0
  220. package/es/domain/schema/cannedMessage/index.js +2 -0
  221. package/es/domain/schema/channel/ChannelSchema.js +83 -0
  222. package/es/domain/schema/channel/index.js +2 -0
  223. package/es/domain/schema/contact/ContactSchema.js +27 -0
  224. package/es/domain/schema/contact/index.js +2 -0
  225. package/es/domain/schema/customReplyExtension/CustomReplyExtensionSchema.js +28 -0
  226. package/es/domain/schema/customReplyExtension/index.js +2 -0
  227. package/es/domain/schema/index.js +14 -0
  228. package/es/domain/schema/integrationService/IntegrationServiceSchema.js +43 -0
  229. package/es/domain/schema/integrationService/index.js +2 -0
  230. package/es/domain/schema/message/ActionSchema.js +18 -0
  231. package/es/domain/schema/message/ExternalInfoSchema.js +9 -0
  232. package/es/domain/schema/message/InfoSchema.js +24 -0
  233. package/es/domain/schema/message/InfoTargetSchema.js +35 -0
  234. package/es/domain/schema/message/LocationSchema.js +11 -0
  235. package/es/domain/schema/message/MessageSchema.js +116 -0
  236. package/es/domain/schema/message/MessageWithSessionSchema.js +10 -0
  237. package/es/domain/schema/message/index.js +8 -0
  238. package/es/domain/schema/session/SessionMetrics/AssigneeSchema.js +20 -0
  239. package/es/domain/schema/session/SessionMetrics/SessionMetricsForAssigneeSchema.js +32 -0
  240. package/es/domain/schema/session/SessionMetrics/index.js +2 -0
  241. package/es/domain/schema/session/SessionMetricsSchema.js +9 -0
  242. package/es/domain/schema/session/SessionSchema.js +82 -0
  243. package/es/domain/schema/session/index.js +3 -0
  244. package/es/domain/schema/subscription/AddOnSchema.js +29 -0
  245. package/es/domain/schema/subscription/LicenseDetailsSchema.js +7 -0
  246. package/es/domain/schema/subscription/SubscriptionInfoSchema.js +29 -0
  247. package/es/domain/schema/subscription/index.js +4 -0
  248. package/es/domain/schema/templateMessage/TemplateCreditExhaustStatusSchema.js +11 -0
  249. package/es/domain/schema/templateMessage/TemplateLanguageSchema.js +11 -0
  250. package/es/domain/schema/templateMessage/index.js +3 -0
  251. package/es/domain/schema/userPreference/UserPreferenceSchema.js +9 -0
  252. package/es/domain/schema/userPreference/index.js +2 -0
  253. package/es/domain/schema/whatsAppPricing/WhatsAppPricingCategorySchema.js +11 -0
  254. package/es/domain/schema/whatsAppPricing/WhatsAppPricingSchema.js +21 -0
  255. package/es/domain/schema/whatsAppPricing/index.js +3 -0
  256. package/es/frameworks/managers/ModuleFactory.js +136 -0
  257. package/es/frameworks/managers/ModuleManager.js +67 -0
  258. package/es/frameworks/managers/index.js +2 -0
  259. package/es/frameworks/sdk/IMSDK.js +94 -0
  260. package/es/frameworks/sdk/agents/AgentSDK.js +30 -0
  261. package/es/frameworks/sdk/agents/index.js +2 -0
  262. package/es/frameworks/sdk/bots/BotSDK.js +30 -0
  263. package/es/frameworks/sdk/bots/index.js +2 -0
  264. package/es/frameworks/sdk/cannedMessages/CannedMessageSDK.js +30 -0
  265. package/es/frameworks/sdk/cannedMessages/index.js +2 -0
  266. package/es/frameworks/sdk/channels/ChannelSDK.js +37 -0
  267. package/es/frameworks/sdk/channels/index.js +2 -0
  268. package/es/frameworks/sdk/contacts/ContactSDK.js +30 -0
  269. package/es/frameworks/sdk/contacts/index.js +2 -0
  270. package/es/frameworks/sdk/index.js +2 -0
  271. package/es/frameworks/sdk/integrationServices/IntegrationServiceSDK.js +30 -0
  272. package/es/frameworks/sdk/integrationServices/index.js +2 -0
  273. package/es/frameworks/sdk/messages/MessageSDK.js +32 -0
  274. package/es/frameworks/sdk/messages/index.js +2 -0
  275. package/es/frameworks/sdk/sessions/SessionSDK.js +34 -0
  276. package/es/frameworks/sdk/sessions/index.js +2 -0
  277. package/es/frameworks/sdk/subscription/SubscriptionSDK.js +32 -0
  278. package/es/frameworks/sdk/subscription/index.js +2 -0
  279. package/es/frameworks/sdk/templateMessages/TemplateMessageSDK.js +30 -0
  280. package/es/frameworks/sdk/templateMessages/index.js +2 -0
  281. package/es/frameworks/sdk/userPreferences/UserPreferencesSDK.js +30 -0
  282. package/es/frameworks/sdk/userPreferences/index.js +2 -0
  283. package/es/frameworks/sdk/whatsAppPricing/WhatsAppPricingSDK.js +28 -0
  284. package/es/frameworks/sdk/whatsAppPricing/index.js +2 -0
  285. package/es/index.html +25 -0
  286. package/es/index.js +12 -0
  287. package/es/infrastructure/adapters/agents/AgentAdapter.js +28 -0
  288. package/es/infrastructure/adapters/agents/index.js +2 -0
  289. package/es/infrastructure/adapters/attachments/AttachmentAdapter.js +25 -0
  290. package/es/infrastructure/adapters/attachments/index.js +2 -0
  291. package/es/infrastructure/adapters/bots/BotAdapter.js +25 -0
  292. package/es/infrastructure/adapters/bots/index.js +2 -0
  293. package/es/infrastructure/adapters/cannedMessages/CannedMessageAdapter.js +34 -0
  294. package/es/infrastructure/adapters/cannedMessages/index.js +2 -0
  295. package/es/infrastructure/adapters/channels/ChannelAdapter.js +43 -0
  296. package/es/infrastructure/adapters/channels/ChannelAgentAdapter.js +49 -0
  297. package/es/infrastructure/adapters/channels/index.js +3 -0
  298. package/es/infrastructure/adapters/contacts/ContactAdapter.js +24 -0
  299. package/es/infrastructure/adapters/contacts/index.js +2 -0
  300. package/es/infrastructure/adapters/customReplyExtension/CustomReplyExtensionAdapter.js +24 -0
  301. package/es/infrastructure/adapters/customReplyExtension/index.js +2 -0
  302. package/es/infrastructure/adapters/index.js +14 -0
  303. package/es/infrastructure/adapters/integrationServices/IntegrationServiceAdapter.js +25 -0
  304. package/es/infrastructure/adapters/integrationServices/index.js +2 -0
  305. package/es/infrastructure/adapters/messages/MessageAdapter.js +45 -0
  306. package/es/infrastructure/adapters/messages/MessageWithSessionAdapter.js +23 -0
  307. package/es/infrastructure/adapters/messages/index.js +2 -0
  308. package/es/infrastructure/adapters/sessions/SessionAdapter.js +36 -0
  309. package/es/infrastructure/adapters/sessions/SessionMetricsAdapter.js +19 -0
  310. package/es/infrastructure/adapters/sessions/index.js +3 -0
  311. package/es/infrastructure/adapters/subscription/AddOnAdapter.js +24 -0
  312. package/es/infrastructure/adapters/subscription/LicenseDetailsAdapter.js +20 -0
  313. package/es/infrastructure/adapters/subscription/index.js +3 -0
  314. package/es/infrastructure/adapters/templateMessages/TemplateCreditExhaustStatusAdapter.js +20 -0
  315. package/es/infrastructure/adapters/templateMessages/TemplateLanguageAdapter.js +20 -0
  316. package/es/infrastructure/adapters/templateMessages/index.js +3 -0
  317. package/es/infrastructure/adapters/userPreferences/UserPreferenceAdapter.js +19 -0
  318. package/es/infrastructure/adapters/userPreferences/index.js +2 -0
  319. package/es/infrastructure/adapters/whatsAppPricing/WhatsAppPricingAdapter.js +22 -0
  320. package/es/infrastructure/adapters/whatsAppPricing/index.js +2 -0
  321. package/es/infrastructure/api/BaseAPI.js +105 -0
  322. package/es/infrastructure/api/UrlBuilder.js +53 -0
  323. package/es/infrastructure/api/agents/AgentAPI.js +14 -0
  324. package/es/infrastructure/api/agents/index.js +2 -0
  325. package/es/infrastructure/api/bots/BotAPI.js +24 -0
  326. package/es/infrastructure/api/bots/index.js +2 -0
  327. package/es/infrastructure/api/cannedMessages/CannedMessageAPI.js +74 -0
  328. package/es/infrastructure/api/cannedMessages/index.js +2 -0
  329. package/es/infrastructure/api/channels/ChannelAPI.js +14 -0
  330. package/es/infrastructure/api/channels/ChannelAgentAPI.js +22 -0
  331. package/es/infrastructure/api/channels/index.js +3 -0
  332. package/es/infrastructure/api/contacts/ContactAPI.js +14 -0
  333. package/es/infrastructure/api/contacts/index.js +2 -0
  334. package/es/infrastructure/api/index.js +12 -0
  335. package/es/infrastructure/api/integrationServices/IntegrationServiceAPI.js +14 -0
  336. package/es/infrastructure/api/integrationServices/index.js +2 -0
  337. package/es/infrastructure/api/messages/MessageAPI.js +94 -0
  338. package/es/infrastructure/api/messages/index.js +2 -0
  339. package/es/infrastructure/api/registry/agents/agentAPIRegistry.js +12 -0
  340. package/es/infrastructure/api/registry/agents/constructAgentEndPoint.js +10 -0
  341. package/es/infrastructure/api/registry/agents/index.js +2 -0
  342. package/es/infrastructure/api/registry/bots/botAPIRegistry.js +18 -0
  343. package/es/infrastructure/api/registry/bots/constructBotEndPoint.js +10 -0
  344. package/es/infrastructure/api/registry/bots/index.js +2 -0
  345. package/es/infrastructure/api/registry/cannedMessages/cannedMessageAPIRegistry.js +42 -0
  346. package/es/infrastructure/api/registry/cannedMessages/constructCannedMessageEndPoint.js +10 -0
  347. package/es/infrastructure/api/registry/cannedMessages/index.js +2 -0
  348. package/es/infrastructure/api/registry/channels/channelAPIRegistry.js +16 -0
  349. package/es/infrastructure/api/registry/channels/channelAgentAPIRegistry.js +12 -0
  350. package/es/infrastructure/api/registry/channels/constructChannelEndPoint.js +10 -0
  351. package/es/infrastructure/api/registry/channels/index.js +2 -0
  352. package/es/infrastructure/api/registry/contacts/constructContactEndPoint.js +10 -0
  353. package/es/infrastructure/api/registry/contacts/contactAPIRegistry.js +12 -0
  354. package/es/infrastructure/api/registry/contacts/index.js +2 -0
  355. package/es/infrastructure/api/registry/createAPIRegistry.js +7 -0
  356. package/es/infrastructure/api/registry/createBaseUrl.js +3 -0
  357. package/es/infrastructure/api/registry/createPublicBaseUrl.js +4 -0
  358. package/es/infrastructure/api/registry/getRegistryConfig.js +38 -0
  359. package/es/infrastructure/api/registry/index.js +2 -0
  360. package/es/infrastructure/api/registry/integrationServices/constructIntegrationServiceEndPoint.js +10 -0
  361. package/es/infrastructure/api/registry/integrationServices/index.js +2 -0
  362. package/es/infrastructure/api/registry/integrationServices/integrationServiceAPIRegistry.js +12 -0
  363. package/es/infrastructure/api/registry/messages/constructMessageEndPoint.js +4 -0
  364. package/es/infrastructure/api/registry/messages/index.js +2 -0
  365. package/es/infrastructure/api/registry/messages/messageAPIRegistry.js +62 -0
  366. package/es/infrastructure/api/registry/sessions/constructSessionEndPoint.js +10 -0
  367. package/es/infrastructure/api/registry/sessions/index.js +2 -0
  368. package/es/infrastructure/api/registry/sessions/sessionAPIRegistry.js +58 -0
  369. package/es/infrastructure/api/registry/subscription/constructSubscriptionEndPoint.js +10 -0
  370. package/es/infrastructure/api/registry/subscription/index.js +2 -0
  371. package/es/infrastructure/api/registry/subscription/subscriptionAPIRegistry.js +30 -0
  372. package/es/infrastructure/api/registry/templateMessages/constructTemplateMessageEndPoint.js +11 -0
  373. package/es/infrastructure/api/registry/templateMessages/index.js +2 -0
  374. package/es/infrastructure/api/registry/templateMessages/templateMessageAPIRegistry.js +18 -0
  375. package/es/infrastructure/api/registry/userPreferences/constructUserPreferencesEndPoint.js +10 -0
  376. package/es/infrastructure/api/registry/userPreferences/index.js +2 -0
  377. package/es/infrastructure/api/registry/userPreferences/userPreferenceAPIRegistry.js +17 -0
  378. package/es/infrastructure/api/registry/whatsAppPricing/constructWhatsAppPricingEndPoint.js +10 -0
  379. package/es/infrastructure/api/registry/whatsAppPricing/index.js +2 -0
  380. package/es/infrastructure/api/registry/whatsAppPricing/whatsAppPricingAPIRegistry.js +13 -0
  381. package/es/infrastructure/api/sessions/SessionAPI.js +94 -0
  382. package/es/infrastructure/api/sessions/index.js +2 -0
  383. package/es/infrastructure/api/subscription/SubscriptionAPI.js +48 -0
  384. package/es/infrastructure/api/subscription/index.js +2 -0
  385. package/es/infrastructure/api/templateMessages/TemplateMessageAPI.js +24 -0
  386. package/es/infrastructure/api/templateMessages/index.js +2 -0
  387. package/es/infrastructure/api/userPreferences/UserPreferenceAPI.js +24 -0
  388. package/es/infrastructure/api/userPreferences/index.js +2 -0
  389. package/es/infrastructure/api/whatsAppPricing/WhatsAppPricingAPI.js +14 -0
  390. package/es/infrastructure/api/whatsAppPricing/index.js +2 -0
  391. package/es/infrastructure/config/configRegistry.js +34 -0
  392. package/es/infrastructure/config/index.js +2 -0
  393. package/es/infrastructure/repositories/agents/AgentRepository.js +49 -0
  394. package/es/infrastructure/repositories/agents/index.js +2 -0
  395. package/es/infrastructure/repositories/bots/BotRepository.js +58 -0
  396. package/es/infrastructure/repositories/bots/index.js +2 -0
  397. package/es/infrastructure/repositories/cannedMessages/CannedMessageRepository.js +97 -0
  398. package/es/infrastructure/repositories/cannedMessages/index.js +2 -0
  399. package/es/infrastructure/repositories/channels/ChannelAgentRepository.js +49 -0
  400. package/es/infrastructure/repositories/channels/ChannelRepository.js +58 -0
  401. package/es/infrastructure/repositories/channels/index.js +3 -0
  402. package/es/infrastructure/repositories/contacts/ContactRepository.js +49 -0
  403. package/es/infrastructure/repositories/contacts/index.js +2 -0
  404. package/es/infrastructure/repositories/index.js +12 -0
  405. package/es/infrastructure/repositories/integrationServices/IntegrationServiceRepository.js +49 -0
  406. package/es/infrastructure/repositories/integrationServices/index.js +2 -0
  407. package/es/infrastructure/repositories/messages/MessageRepository.js +119 -0
  408. package/es/infrastructure/repositories/messages/index.js +2 -0
  409. package/es/infrastructure/repositories/sessions/SessionRepository.js +124 -0
  410. package/es/infrastructure/repositories/sessions/index.js +2 -0
  411. package/es/infrastructure/repositories/subscription/SubscriptionRepository.js +83 -0
  412. package/es/infrastructure/repositories/subscription/index.js +2 -0
  413. package/es/infrastructure/repositories/templateMessages/TemplateMessageRepository.js +77 -0
  414. package/es/infrastructure/repositories/templateMessages/index.js +2 -0
  415. package/es/infrastructure/repositories/userPreferences/UserPreferenceRepository.js +58 -0
  416. package/es/infrastructure/repositories/userPreferences/index.js +2 -0
  417. package/es/infrastructure/repositories/whatsAppPricing/WhatsAppPricingRepository.js +49 -0
  418. package/es/infrastructure/repositories/whatsAppPricing/index.js +2 -0
  419. package/package.json +1 -1
@@ -0,0 +1,20 @@
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { TemplateLanguage } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
+ export default class TemplateLanguageAdapter extends IAdapter {
5
+ adapt(templateLanguageData) {
6
+ if (!templateLanguageData) {
7
+ throw new AdapterError('templateLanguage data is required');
8
+ }
9
+
10
+ try {
11
+ return new TemplateLanguage({
12
+ code: templateLanguageData.code,
13
+ language: templateLanguageData.language
14
+ }).toJSON();
15
+ } catch (error) {
16
+ throw new AdapterError(`Failed to adapt TemplateLanguage: ${error.message}`);
17
+ }
18
+ }
19
+
20
+ }
@@ -0,0 +1,3 @@
1
+ import TemplateLanguageAdapter from './TemplateLanguageAdapter';
2
+ import TemplateCreditExhaustStatusAdapter from './TemplateCreditExhaustStatusAdapter';
3
+ export { TemplateLanguageAdapter, TemplateCreditExhaustStatusAdapter };
@@ -0,0 +1,19 @@
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { UserPreference } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
+ export default class UserPreferencesAdapter extends IAdapter {
5
+ adapt(preferenceData) {
6
+ if (!preferenceData) {
7
+ throw new AdapterError('UserPreference data is required');
8
+ }
9
+
10
+ try {
11
+ return new UserPreference({
12
+ collapseSidePanel: preferenceData.collapseSidePanel
13
+ }).toJSON();
14
+ } catch (error) {
15
+ throw new AdapterError(`Failed to adapt user preference: ${error.message}`);
16
+ }
17
+ }
18
+
19
+ }
@@ -0,0 +1,2 @@
1
+ import UserPreferenceAdapter from './UserPreferenceAdapter';
2
+ export { UserPreferenceAdapter };
@@ -0,0 +1,22 @@
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { WhatsAppPricing } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
+ export default class WhatsAppPricingAdapter extends IAdapter {
5
+ adapt(whatsAppPricingData) {
6
+ if (!whatsAppPricingData) {
7
+ throw new AdapterError('whatsAppPricing data is required');
8
+ }
9
+
10
+ try {
11
+ return new WhatsAppPricing({
12
+ total: whatsAppPricingData.total,
13
+ creditsCount: whatsAppPricingData.creditsCount,
14
+ actutalCreditsAmount: whatsAppPricingData.actutalCreditsAmount,
15
+ category: whatsAppPricingData.category
16
+ }).toJSON();
17
+ } catch (error) {
18
+ throw new AdapterError(`Failed to adapt WhatsAppPricing: ${error.message}`);
19
+ }
20
+ }
21
+
22
+ }
@@ -0,0 +1,2 @@
1
+ import WhatsAppPricingAdapter from './WhatsAppPricingAdapter';
2
+ export { WhatsAppPricingAdapter };
@@ -0,0 +1,105 @@
1
+ import { ModuleTypes, ResponseTypes } from '../../core/constants';
2
+ import { ResponseUtils } from '../../core/utils';
3
+ import configRegistry from '../config/configRegistry';
4
+ import { getRegistryConfig } from './registry';
5
+ import UrlBuilder from './UrlBuilder';
6
+ export default class BaseAPI {
7
+ constructor() {
8
+ let {
9
+ module,
10
+ moduleType = ModuleTypes.AUTHENTICATED,
11
+ configProvider = configRegistry,
12
+ registryProvider = {
13
+ getRegistryConfig
14
+ },
15
+ urlBuilder
16
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
17
+ this.configProvider = configProvider;
18
+ this.registryProvider = registryProvider;
19
+ this.httpClient = moduleType === ModuleTypes.PUBLIC ? this.configProvider.getPublicHttpClient() : this.configProvider.getHttpClient();
20
+ this.baseURL = this.configProvider.getBaseURL();
21
+ this.module = module;
22
+ this.urlBuilder = urlBuilder || new UrlBuilder(this.baseURL);
23
+ }
24
+
25
+ async request(_ref) {
26
+ let {
27
+ request,
28
+ operation,
29
+ header
30
+ } = _ref;
31
+ const config = this.registryProvider.getRegistryConfig(this.module, operation);
32
+
33
+ if (!config) {
34
+ throw new Error(`Operation "${operation}" not found in registry for module "${this.module}"`);
35
+ }
36
+
37
+ const url = this.urlBuilder.buildUrl({
38
+ url: config.endpoint,
39
+ params: request.params || {},
40
+ query: request.query || {}
41
+ });
42
+ const httpRequest = await this.httpClient.request({
43
+ url,
44
+ method: config.method,
45
+ header,
46
+ payload: request.body || {}
47
+ });
48
+ return httpRequest;
49
+ }
50
+
51
+ createAPIProxy(customAPI, defaultAPI) {
52
+ // If no custom API provided, just use default
53
+ if (!customAPI) {
54
+ return defaultAPI;
55
+ } // Create a proxy for method delegation
56
+
57
+
58
+ return new Proxy({}, {
59
+ get: (target, prop) => {
60
+ // For methods, check if custom implementation exists
61
+ if (typeof prop === 'string' && typeof customAPI[prop] === 'function' && this.isMethodOverridden(customAPI, prop)) {
62
+ // Use custom implementation if available
63
+ return customAPI[prop].bind(customAPI);
64
+ } // Fall back to default implementation
65
+
66
+
67
+ return defaultAPI[prop].bind(defaultAPI);
68
+ }
69
+ });
70
+ }
71
+
72
+ isMethodOverridden(customAPI, methodName) {
73
+ if (!customAPI) {
74
+ return false;
75
+ }
76
+
77
+ const customPrototype = Object.getPrototypeOf(customAPI);
78
+ return typeof customAPI[methodName] === 'function' && // Method is defined directly on custom prototype
79
+ Object.prototype.hasOwnProperty.call(customPrototype, methodName);
80
+ }
81
+
82
+ async executeAPICall(_ref2) {
83
+ let {
84
+ operation,
85
+ request,
86
+ apiProxy,
87
+ customAPI,
88
+ adapter,
89
+ responseType = ResponseTypes.SINGLE
90
+ } = _ref2;
91
+ const response = await apiProxy[operation](request);
92
+ const isOverridden = this.isMethodOverridden(customAPI, operation);
93
+
94
+ if (isOverridden) {
95
+ return response;
96
+ }
97
+
98
+ if (responseType === ResponseTypes.NONE || !adapter) {
99
+ return response;
100
+ }
101
+
102
+ return responseType === ResponseTypes.LIST ? ResponseUtils.adaptListResponse(response, adapter.adapt) : ResponseUtils.adaptSingleResponse(response, adapter.adapt);
103
+ }
104
+
105
+ }
@@ -0,0 +1,53 @@
1
+ export default class UrlBuilder {
2
+ constructor(baseURL) {
3
+ this.baseURL = baseURL;
4
+ }
5
+
6
+ replacePathParams(url, params) {
7
+ let processedUrl = url;
8
+ Object.entries(params).forEach(_ref => {
9
+ let [key, value] = _ref;
10
+ processedUrl = processedUrl.replace(`:${key}`, value);
11
+ });
12
+ return processedUrl;
13
+ }
14
+
15
+ buildUrl(_ref2) {
16
+ let {
17
+ url,
18
+ params,
19
+ query
20
+ } = _ref2;
21
+ const paramsObj = params || {};
22
+ const queryObj = query || {};
23
+ let processedUrl = this.replacePathParams(url, paramsObj);
24
+
25
+ if (this.baseURL) {
26
+ processedUrl = `${this.baseURL}${processedUrl}`;
27
+ }
28
+
29
+ const queryString = this.buildQuery(queryObj);
30
+
31
+ if (queryString) {
32
+ return `${processedUrl}?${queryString}`;
33
+ }
34
+
35
+ return processedUrl;
36
+ }
37
+
38
+ buildQuery(query) {
39
+ const filteredQuery = Object.entries(query).filter(_ref3 => {
40
+ let [, value] = _ref3;
41
+ return value !== undefined && value !== null && value !== '';
42
+ }).reduce((acc, _ref4) => {
43
+ let [key, value] = _ref4;
44
+ acc[key] = value;
45
+ return acc;
46
+ }, {});
47
+ return Object.entries(filteredQuery).map(_ref5 => {
48
+ let [key, value] = _ref5;
49
+ return `${key}=${value}`;
50
+ }).join('&');
51
+ }
52
+
53
+ }
@@ -0,0 +1,14 @@
1
+ import { getAgentsRequest } from '../../../domain/dto';
2
+ import { IAgentRepository } from '../../../domain/interfaces/repositories';
3
+ export default class AgentAPI extends IAgentRepository {
4
+ async getAgents() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getAgentsRequest();
6
+ const operation = 'getAgents';
7
+ const httpRequest = await this.request({
8
+ request,
9
+ operation
10
+ });
11
+ return httpRequest;
12
+ }
13
+
14
+ }
@@ -0,0 +1,2 @@
1
+ import AgentAPI from './AgentAPI';
2
+ export { AgentAPI };
@@ -0,0 +1,24 @@
1
+ import { getBotsRequest, getBotRequest } from '../../../domain/dto';
2
+ import { IBotRepository } from '../../../domain/interfaces/repositories';
3
+ export default class BotAPI extends IBotRepository {
4
+ async getBots() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getBotsRequest();
6
+ const operation = 'getBots';
7
+ const httpRequest = await this.request({
8
+ request,
9
+ operation
10
+ });
11
+ return httpRequest;
12
+ }
13
+
14
+ async getBot() {
15
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getBotRequest();
16
+ const operation = 'getBot';
17
+ const httpRequest = await this.request({
18
+ request,
19
+ operation
20
+ });
21
+ return httpRequest;
22
+ }
23
+
24
+ }
@@ -0,0 +1,2 @@
1
+ import BotAPI from './BotAPI';
2
+ export { BotAPI };
@@ -0,0 +1,74 @@
1
+ import { getCannedMessageRequest, getCannedMessagesRequest, createCannedMessageRequest, updateCannedMessageRequest, deleteCannedMessageRequest, enableCannedMessageRequest, disableCannedMessageRequest } from '../../../domain/dto';
2
+ import { ICannedMessageRepository } from '../../../domain/interfaces/repositories';
3
+ export default class CannedMessageAPI extends ICannedMessageRepository {
4
+ async getCannedMessages() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getCannedMessagesRequest();
6
+ const operation = 'getCannedMessages';
7
+ const httpRequest = await this.request({
8
+ operation,
9
+ request
10
+ });
11
+ return httpRequest;
12
+ }
13
+
14
+ async getCannedMessage() {
15
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getCannedMessageRequest();
16
+ const operation = 'getCannedMessage';
17
+ const httpRequest = await this.request({
18
+ operation,
19
+ request
20
+ });
21
+ return httpRequest;
22
+ }
23
+
24
+ async createCannedMessage() {
25
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : createCannedMessageRequest();
26
+ const operation = 'createCannedMessage';
27
+ const httpRequest = await this.request({
28
+ operation,
29
+ request
30
+ });
31
+ return httpRequest;
32
+ }
33
+
34
+ async updateCannedMessage() {
35
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : updateCannedMessageRequest();
36
+ const operation = 'updateCannedMessage';
37
+ const httpRequest = await this.request({
38
+ operation,
39
+ request
40
+ });
41
+ return httpRequest;
42
+ }
43
+
44
+ async deleteCannedMessage() {
45
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : deleteCannedMessageRequest();
46
+ const operation = 'deleteCannedMessage';
47
+ const httpRequest = await this.request({
48
+ operation,
49
+ request
50
+ });
51
+ return httpRequest;
52
+ }
53
+
54
+ async enableCannedMessage() {
55
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : enableCannedMessageRequest();
56
+ const operation = 'enableCannedMessage';
57
+ const httpRequest = await this.request({
58
+ operation,
59
+ request
60
+ });
61
+ return httpRequest;
62
+ }
63
+
64
+ async disableCannedMessage() {
65
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : disableCannedMessageRequest();
66
+ const operation = 'disableCannedMessage';
67
+ const httpRequest = await this.request({
68
+ operation,
69
+ request
70
+ });
71
+ return httpRequest;
72
+ }
73
+
74
+ }
@@ -0,0 +1,2 @@
1
+ import CannedMessageAPI from './CannedMessageAPI';
2
+ export { CannedMessageAPI };
@@ -0,0 +1,14 @@
1
+ import { getChannelsRequest } from '../../../domain/dto';
2
+ import { IChannelRepository } from '../../../domain/interfaces/repositories';
3
+ export default class ChannelAPI extends IChannelRepository {
4
+ async getChannels() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getChannelsRequest();
6
+ const operation = 'getChannels';
7
+ const httpRequest = await this.request({
8
+ request,
9
+ operation
10
+ });
11
+ return httpRequest;
12
+ }
13
+
14
+ }
@@ -0,0 +1,22 @@
1
+ import { getChannelAgentsRequest } from '../../../domain/dto';
2
+ import { IChannelAgentRepository } from '../../../domain/interfaces/repositories';
3
+ export default class ChannelAgentAPI extends IChannelAgentRepository {
4
+ async getAgents() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getChannelAgentsRequest();
6
+ const {
7
+ searchStr
8
+ } = request.query;
9
+
10
+ if (searchStr) {
11
+ request.query.searchStr = `*${encodeURIComponent(searchStr)}*`;
12
+ }
13
+
14
+ const operation = 'getAgents';
15
+ const httpRequest = await this.request({
16
+ request,
17
+ operation
18
+ });
19
+ return httpRequest;
20
+ }
21
+
22
+ }
@@ -0,0 +1,3 @@
1
+ import ChannelAgentAPI from './ChannelAgentAPI';
2
+ import ChannelAPI from './ChannelAPI';
3
+ export { ChannelAgentAPI, ChannelAPI };
@@ -0,0 +1,14 @@
1
+ import { getContactsRequest } from '../../../domain/dto';
2
+ import { IContactRepository } from '../../../domain/interfaces/repositories';
3
+ export default class ContactAPI extends IContactRepository {
4
+ async getContacts() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getContactsRequest();
6
+ const operation = 'getContacts';
7
+ const httpRequest = await this.request({
8
+ request,
9
+ operation
10
+ });
11
+ return httpRequest;
12
+ }
13
+
14
+ }
@@ -0,0 +1,2 @@
1
+ import ContactAPI from './ContactAPI';
2
+ export { ContactAPI };
@@ -0,0 +1,12 @@
1
+ export * from './channels';
2
+ export * from './sessions';
3
+ export * from './bots';
4
+ export * from './messages';
5
+ export * from './agents';
6
+ export * from './contacts';
7
+ export * from './cannedMessages';
8
+ export * from './templateMessages';
9
+ export * from './integrationServices';
10
+ export * from './userPreferences';
11
+ export * from './whatsAppPricing';
12
+ export * from './subscription';
@@ -0,0 +1,14 @@
1
+ import { getIntegrationsRequest } from '../../../domain/dto';
2
+ import { IIntegrationServiceRepository } from '../../../domain/interfaces/repositories';
3
+ export default class IntegrationServiceAPI extends IIntegrationServiceRepository {
4
+ async getIntegrations() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getIntegrationsRequest();
6
+ const operation = 'getIntegrations';
7
+ const httpRequest = await this.request({
8
+ request,
9
+ operation
10
+ });
11
+ return httpRequest;
12
+ }
13
+
14
+ }
@@ -0,0 +1,2 @@
1
+ import IntegrationServiceAPI from './IntegrationServiceAPI';
2
+ export { IntegrationServiceAPI };
@@ -0,0 +1,94 @@
1
+ import { getMessagesRequest, deleteMessageRequest, getFullContentRequest, resendMessageRequest, sendAttachmentRequest, sendMessageRequest, initiateSessionRequest, searchMessagesRequest, getMessageRequest } from '../../../domain/dto';
2
+ import { IMessageRepository } from '../../../domain/interfaces/repositories';
3
+ export default class MessageAPI extends IMessageRepository {
4
+ async getMessages() {
5
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getMessagesRequest();
6
+ const operation = 'getMessages';
7
+ const httpRequest = await this.request({
8
+ operation,
9
+ request
10
+ });
11
+ return httpRequest;
12
+ }
13
+
14
+ async getMessage() {
15
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getMessageRequest();
16
+ const operation = 'getMessage';
17
+ const httpRequest = await this.request({
18
+ operation,
19
+ request
20
+ });
21
+ return httpRequest;
22
+ }
23
+
24
+ async getFullContent() {
25
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getFullContentRequest();
26
+ const operation = 'getFullContent';
27
+ const httpRequest = await this.request({
28
+ operation,
29
+ request
30
+ });
31
+ return httpRequest;
32
+ }
33
+
34
+ async sendMessage() {
35
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : sendMessageRequest();
36
+ const operation = 'sendMessage';
37
+ const httpRequest = await this.request({
38
+ operation,
39
+ request
40
+ });
41
+ return httpRequest;
42
+ }
43
+
44
+ async sendAttachment() {
45
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : sendAttachmentRequest();
46
+ const operation = 'sendAttachment';
47
+ const httpRequest = await this.request({
48
+ operation,
49
+ request
50
+ });
51
+ return httpRequest;
52
+ }
53
+
54
+ async resendMessage() {
55
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : resendMessageRequest();
56
+ const operation = 'resendMessage';
57
+ const httpRequest = await this.request({
58
+ operation,
59
+ request
60
+ });
61
+ return httpRequest;
62
+ }
63
+
64
+ async deleteMessage() {
65
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : deleteMessageRequest();
66
+ const operation = 'deleteMessage';
67
+ const httpRequest = await this.request({
68
+ operation,
69
+ request
70
+ });
71
+ return httpRequest;
72
+ }
73
+
74
+ async initiateSession() {
75
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initiateSessionRequest();
76
+ const operation = 'initiateSession';
77
+ const httpRequest = await this.request({
78
+ operation,
79
+ request
80
+ });
81
+ return httpRequest;
82
+ }
83
+
84
+ async searchMessages() {
85
+ let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : searchMessagesRequest();
86
+ const operation = 'searchMessages';
87
+ const httpRequest = await this.request({
88
+ operation,
89
+ request
90
+ });
91
+ return httpRequest;
92
+ }
93
+
94
+ }
@@ -0,0 +1,2 @@
1
+ import MessageAPI from './MessageAPI';
2
+ export { MessageAPI };
@@ -0,0 +1,12 @@
1
+ import { HTTP_METHODS } from '../../../../core/constants';
2
+ import { getAgentsRequest } from '../../../../domain/dto';
3
+ import createAPIRegistry from '../createAPIRegistry';
4
+ import constructAgentEndPoint from './constructAgentEndPoint';
5
+
6
+ function getAgents() {
7
+ return createAPIRegistry(constructAgentEndPoint(), HTTP_METHODS.GET, getAgentsRequest());
8
+ }
9
+
10
+ export default {
11
+ getAgents
12
+ };
@@ -0,0 +1,10 @@
1
+ import createBaseUrl from '../createBaseUrl';
2
+ export default function constructAgentEndPoint(extra) {
3
+ const base = '/users';
4
+
5
+ if (extra) {
6
+ return createBaseUrl(base + extra);
7
+ }
8
+
9
+ return createBaseUrl(base);
10
+ }
@@ -0,0 +1,2 @@
1
+ import agentAPIRegistry from './agentAPIRegistry';
2
+ export { agentAPIRegistry };
@@ -0,0 +1,18 @@
1
+ import { HTTP_METHODS } from '../../../../core/constants';
2
+ import { getBotsRequest, getBotRequest } from '../../../../domain/dto';
3
+ import createAPIRegistry from '../createAPIRegistry';
4
+ import constructBotEndPoint from './constructBotEndPoint';
5
+
6
+ function getBots() {
7
+ return createAPIRegistry(constructBotEndPoint(), HTTP_METHODS.GET, getBotsRequest());
8
+ }
9
+
10
+ function getBot() {
11
+ return createAPIRegistry(constructBotEndPoint('/:botId'), // NO I18N
12
+ HTTP_METHODS.GET, getBotRequest());
13
+ }
14
+
15
+ export default {
16
+ getBots,
17
+ getBot
18
+ };
@@ -0,0 +1,10 @@
1
+ import createBaseUrl from '../createBaseUrl';
2
+ export default function constructBotEndPoint(extra) {
3
+ const base = '/bots';
4
+
5
+ if (extra) {
6
+ return createBaseUrl(base + extra);
7
+ }
8
+
9
+ return createBaseUrl(base);
10
+ }
@@ -0,0 +1,2 @@
1
+ import botAPIRegistry from './botAPIRegistry';
2
+ export { botAPIRegistry };
@@ -0,0 +1,42 @@
1
+ import { HTTP_METHODS } from '../../../../core/constants';
2
+ import { getCannedMessageRequest, getCannedMessagesRequest, createCannedMessageRequest, updateCannedMessageRequest, deleteCannedMessageRequest, enableCannedMessageRequest, disableCannedMessageRequest } from '../../../../domain/dto';
3
+ import constructCannedMessageEndPoint from './constructCannedMessageEndPoint';
4
+ import createAPIRegistry from '../createAPIRegistry';
5
+
6
+ function getCannedMessages() {
7
+ return createAPIRegistry(constructCannedMessageEndPoint(), HTTP_METHODS.GET, getCannedMessagesRequest());
8
+ }
9
+
10
+ function getCannedMessage() {
11
+ return createAPIRegistry(constructCannedMessageEndPoint('/:cannedMessageId'), HTTP_METHODS.GET, getCannedMessageRequest());
12
+ }
13
+
14
+ function createCannedMessage() {
15
+ return createAPIRegistry(constructCannedMessageEndPoint(), HTTP_METHODS.POST, createCannedMessageRequest());
16
+ }
17
+
18
+ function updateCannedMessage() {
19
+ return createAPIRegistry(constructCannedMessageEndPoint('/:cannedMessageId'), HTTP_METHODS.PATCH, updateCannedMessageRequest());
20
+ }
21
+
22
+ function enableCannedMessage() {
23
+ return createAPIRegistry(constructCannedMessageEndPoint('/:cannedMessageId/activation'), HTTP_METHODS.PATCH, enableCannedMessageRequest());
24
+ }
25
+
26
+ function disableCannedMessage() {
27
+ return createAPIRegistry(constructCannedMessageEndPoint('/:cannedMessageId/activation'), HTTP_METHODS.DELETE, disableCannedMessageRequest());
28
+ }
29
+
30
+ function deleteCannedMessage() {
31
+ return createAPIRegistry(constructCannedMessageEndPoint('/:cannedMessageId'), HTTP_METHODS.DELETE, deleteCannedMessageRequest());
32
+ }
33
+
34
+ export default {
35
+ getCannedMessage,
36
+ getCannedMessages,
37
+ createCannedMessage,
38
+ updateCannedMessage,
39
+ deleteCannedMessage,
40
+ enableCannedMessage,
41
+ disableCannedMessage
42
+ };