@webitel/api-services 0.0.24 → 0.0.27

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 (418) hide show
  1. package/package.json +15 -10
  2. package/src/api/axios/generateInstance.ts +35 -0
  3. package/src/api/axios/index.ts +2 -0
  4. package/src/api/clients/_shared/generatePermissionsApi.ts +97 -0
  5. package/src/api/clients/agents/agentChats.ts +71 -0
  6. package/src/api/clients/agents/agents.ts +263 -0
  7. package/src/api/clients/buckets/buckets.ts +110 -0
  8. package/src/api/clients/calendars/calendars.ts +208 -0
  9. package/src/api/clients/caseCloseReasonGroups/caseCloseReasonGroups.ts +126 -0
  10. package/src/api/clients/caseCloseReasons/caseCloseReasons.ts +122 -0
  11. package/src/api/clients/casePriorities/casePriorities.ts +137 -0
  12. package/src/api/clients/caseServiceCatalogs/serviceCatalogs.ts +196 -0
  13. package/src/api/clients/caseServices/services.ts +179 -0
  14. package/src/api/clients/caseSources/caseSources.ts +116 -0
  15. package/src/api/clients/caseStatusConditions/caseStatusConditions.ts +163 -0
  16. package/src/api/clients/caseStatuses/caseStatuses.ts +117 -0
  17. package/src/api/clients/catalog/catalog.ts +39 -0
  18. package/src/api/clients/chatGateways/chatGateways.ts +303 -0
  19. package/src/api/clients/chatGateways/defaults/defaultChatGateway.ts +20 -0
  20. package/src/api/clients/chatGateways/defaults/webChatGateway.ts +75 -0
  21. package/src/api/clients/chatGateways/enums/WebchatAlternativeChannel.enum.ts +12 -0
  22. package/src/api/clients/chatGateways/scripts/generateUri.ts +13 -0
  23. package/src/api/clients/communications/communications.ts +139 -0
  24. package/src/api/clients/configurations/configurations.ts +142 -0
  25. package/src/api/clients/contactGroups/contactGroups.ts +184 -0
  26. package/src/api/clients/flows/flow.ts +219 -0
  27. package/src/api/clients/gateways/defaults/defaultGateway.ts +9 -0
  28. package/src/api/clients/gateways/defaults/registerGateway.ts +12 -0
  29. package/src/api/clients/gateways/defaults/trunkingGateway.ts +16 -0
  30. package/src/api/clients/gateways/gateways.ts +173 -0
  31. package/src/api/clients/index.ts +68 -0
  32. package/src/api/clients/labels/labels.ts +53 -0
  33. package/src/api/clients/lists/blacklists.ts +116 -0
  34. package/src/api/clients/media/media.ts +114 -0
  35. package/src/api/clients/object/object.ts +112 -0
  36. package/src/api/clients/queues/defaults/processing.ts +14 -0
  37. package/src/api/clients/queues/queues.ts +232 -0
  38. package/src/api/clients/quickReplies/quickReplies.ts +108 -0
  39. package/src/api/clients/roles/roles.ts +200 -0
  40. package/src/api/clients/skills/skills.ts +110 -0
  41. package/src/api/clients/slaConditions/slaConditions.ts +163 -0
  42. package/src/api/clients/slas/slas.ts +116 -0
  43. package/src/api/clients/teams/teams.ts +142 -0
  44. package/src/api/clients/users/__tests__/users.spec.ts +265 -0
  45. package/src/api/clients/users/users.ts +228 -0
  46. package/src/api/clients/wtTypes/_shared/utils/sortDynamicFields.ts +21 -0
  47. package/src/api/clients/wtTypes/sysTypes/sysTypes.ts +60 -0
  48. package/src/api/clients/wtTypes/typeExtensions/typeExtensions.ts +114 -0
  49. package/src/api/clients//321/201ontacts/contactChatMessagesHistory.ts +98 -0
  50. package/src/api/clients//321/201ontacts/contacts.ts +337 -0
  51. package/src/api/clients//321/201ontacts/enums/ContactsSearchMode.ts +9 -0
  52. package/src/api/clients//321/201ontacts/index.ts +5 -0
  53. package/src/api/defaults/getDefaultGetListResponse/getDefaultGetListResponse.ts +8 -0
  54. package/src/api/defaults/getDefaultGetParams/getDefaultGetParams.ts +11 -0
  55. package/src/api/defaults/getDefaultInstance/getDefaultInstance.ts +21 -0
  56. package/src/api/defaults/getDefaultOpenAPIConfig/getDefaultOpenAPIConfig.ts +12 -0
  57. package/src/api/defaults/index.ts +11 -0
  58. package/src/api/index.ts +6 -0
  59. package/src/api/interceptors/index.ts +3 -0
  60. package/src/api/interceptors/request/index.ts +2 -0
  61. package/src/api/interceptors/request/updateToken.interceptor.ts +11 -0
  62. package/src/api/interceptors/response/handleUnauthorized.interceptor.ts +14 -0
  63. package/src/api/interceptors/response/index.ts +2 -0
  64. package/src/api/transformers/addQueryParamsToUrl/addQueryParamsToUrl.transformer.ts +19 -0
  65. package/src/api/transformers/applyTransform.ts +24 -0
  66. package/src/api/transformers/camelToSnake/camelToSnake.transformer.ts +5 -0
  67. package/src/api/transformers/generateUrl/generateUrl.transformer.ts +13 -0
  68. package/src/api/transformers/index.ts +27 -0
  69. package/src/api/transformers/log/log.transformer.ts +6 -0
  70. package/src/api/transformers/merge/merge.transformer.ts +8 -0
  71. package/src/api/transformers/mergeEach/mergeEach.transformer.ts +8 -0
  72. package/src/api/transformers/notify/notify.transformer.ts +39 -0
  73. package/src/api/transformers/sanitize/sanitize.transformer.ts +12 -0
  74. package/src/api/transformers/skipIf/skipIf.ts +11 -0
  75. package/src/api/transformers/snakeToCamel/snakeToCamel.transformer.ts +5 -0
  76. package/src/api/transformers/starToSearch/starToSearch.transformer.ts +15 -0
  77. package/src/gen/_docs/html/assets/navigation.js +1 -1
  78. package/src/gen/_docs/html/assets/search.js +1 -1
  79. package/src/gen/_docs/html/interfaces/_models_webitelCasesInputSource.WebitelCasesInputSource.html +0 -1
  80. package/src/gen/_docs/html/interfaces/_models_webitelCasesSource.WebitelCasesSource.html +5 -6
  81. package/src/gen/_docs/html/modules/index.html +1 -1
  82. package/src/gen/_docs/html/modules/sources_sources.zod.gen.html +7 -7
  83. package/src/gen/_docs/html/types/_models_createCaseParams.CreateCaseParams.html +9 -3
  84. package/src/gen/_docs/html/types/_models_updateCase2Params.UpdateCase2Params.html +8 -3
  85. package/src/gen/_docs/html/types/_models_updateCaseParams.UpdateCaseParams.html +8 -3
  86. package/src/gen/_docs/html/variables/cases_cases.zod.gen.createCaseQueryParams.html +1 -1
  87. package/src/gen/_docs/html/variables/cases_cases.zod.gen.updateCase2QueryParams.html +1 -1
  88. package/src/gen/_docs/html/variables/cases_cases.zod.gen.updateCaseQueryParams.html +1 -1
  89. package/src/gen/_models/agentAbsenceServiceUpdateAgentAbsenceBodyItem.ts +2 -1
  90. package/src/gen/_models/agentWorkingScheduleServiceCreateAgentsWorkingScheduleShiftsBody.ts +3 -2
  91. package/src/gen/_models/apiAccessStoreToggleDefaultAccessBody.ts +2 -1
  92. package/src/gen/_models/apiCustomer.ts +3 -2
  93. package/src/gen/_models/apiDevice.ts +2 -1
  94. package/src/gen/_models/apiLDAPCatalog.ts +5 -4
  95. package/src/gen/_models/apiLDAPUpdateLDAPCatalogBodyCatalog.ts +5 -4
  96. package/src/gen/_models/apiLDAProcess.ts +3 -2
  97. package/src/gen/_models/apiLicenseV1.ts +2 -1
  98. package/src/gen/_models/apiRole.ts +4 -3
  99. package/src/gen/_models/apiRolesUpdateRoleBodyRole.ts +4 -3
  100. package/src/gen/_models/apiUser.ts +2 -1
  101. package/src/gen/_models/apiUsersUpdateUserBodyUser.ts +2 -1
  102. package/src/gen/_models/contactsUpdateContactBody.ts +2 -1
  103. package/src/gen/_models/createCaseParams.ts +8 -0
  104. package/src/gen/_models/engineActiveCall.ts +3 -2
  105. package/src/gen/_models/engineAgent.ts +2 -1
  106. package/src/gen/_models/engineAgentInQueueStatistics.ts +2 -1
  107. package/src/gen/_models/engineAggregateHistoryCallRequest.ts +2 -1
  108. package/src/gen/_models/engineAttempt.ts +2 -1
  109. package/src/gen/_models/engineAttemptHistory.ts +2 -1
  110. package/src/gen/_models/engineAuditFormServicePatchAuditFormBody.ts +2 -1
  111. package/src/gen/_models/engineAuditFormServiceUpdateAuditFormBody.ts +2 -1
  112. package/src/gen/_models/engineAuditRate.ts +3 -2
  113. package/src/gen/_models/engineCreateAuditFormRequest.ts +2 -1
  114. package/src/gen/_models/engineCreateCallRequest.ts +2 -1
  115. package/src/gen/_models/engineCreateMemberBulkItem.ts +2 -1
  116. package/src/gen/_models/engineCreateOutboundResourceRequest.ts +3 -2
  117. package/src/gen/_models/engineCreateQueueRequest.ts +3 -2
  118. package/src/gen/_models/engineCreateRoutingSchemaRequest.ts +2 -1
  119. package/src/gen/_models/engineCreateTriggerRequest.ts +3 -2
  120. package/src/gen/_models/engineDeleteAllMembersRequest.ts +2 -1
  121. package/src/gen/_models/engineHistoryCall.ts +7 -6
  122. package/src/gen/_models/engineListReportGeneral.ts +2 -1
  123. package/src/gen/_models/engineOutboundResource.ts +2 -1
  124. package/src/gen/_models/engineOutboundResourceServicePatchOutboundResourceBody.ts +2 -1
  125. package/src/gen/_models/engineOutboundResourceServiceUpdateOutboundResourceBody.ts +2 -1
  126. package/src/gen/_models/engineQuestion.ts +2 -1
  127. package/src/gen/_models/engineQueue.ts +3 -2
  128. package/src/gen/_models/engineQueueReportGeneral.ts +2 -1
  129. package/src/gen/_models/engineQueueServicePatchQueueBody.ts +3 -2
  130. package/src/gen/_models/engineQueueServiceUpdateQueueBody.ts +3 -2
  131. package/src/gen/_models/engineRoutingSchema.ts +3 -2
  132. package/src/gen/_models/engineRoutingSchemaServicePatchRoutingSchemaBody.ts +2 -1
  133. package/src/gen/_models/engineRoutingSchemaServiceUpdateRoutingSchemaBody.ts +2 -1
  134. package/src/gen/_models/engineTeamHook.ts +2 -1
  135. package/src/gen/_models/engineTeamHookServiceCreateTeamHookBody.ts +2 -1
  136. package/src/gen/_models/engineTeamHookServicePatchTeamHookBody.ts +2 -1
  137. package/src/gen/_models/engineTeamHookServiceUpdateTeamHookBody.ts +2 -1
  138. package/src/gen/_models/engineTrigger.ts +2 -1
  139. package/src/gen/_models/engineTriggerJob.ts +2 -1
  140. package/src/gen/_models/engineTriggerServicePatchTriggerBody.ts +2 -1
  141. package/src/gen/_models/engineTriggerServiceUpdateTriggerBody.ts +2 -1
  142. package/src/gen/_models/index.ts +26 -26
  143. package/src/gen/_models/pauseTemplateServiceUpdatePauseTemplateBodyItem.ts +2 -1
  144. package/src/gen/_models/storageCreateImportTemplateRequest.ts +2 -1
  145. package/src/gen/_models/storageFile.ts +3 -2
  146. package/src/gen/_models/storageFilePolicy.ts +2 -1
  147. package/src/gen/_models/storageImportTemplate.ts +3 -2
  148. package/src/gen/_models/storageSafeUploadFileResponseMetadata.ts +2 -1
  149. package/src/gen/_models/storageUpdateCognitiveProfileRequest.ts +3 -2
  150. package/src/gen/_models/storageUpdateImportTemplateRequest.ts +2 -1
  151. package/src/gen/_models/storageUploadFileResponse.ts +2 -1
  152. package/src/gen/_models/storageUploadFileUrlResponse.ts +2 -1
  153. package/src/gen/_models/updateCase2Params.ts +8 -0
  154. package/src/gen/_models/updateCaseParams.ts +8 -0
  155. package/src/gen/_models/updateRelatedCase2Body.ts +2 -1
  156. package/src/gen/_models/updateRelatedCaseBody.ts +2 -1
  157. package/src/gen/_models/updateRelatedCaseInputBody.ts +2 -1
  158. package/src/gen/_models/usersUpdateUser2Body.ts +2 -1
  159. package/src/gen/_models/usersUpdateUserBody.ts +2 -1
  160. package/src/gen/_models/usersUpdateUserUserBody.ts +2 -1
  161. package/src/gen/_models/webitelCasesCallEvent.ts +2 -1
  162. package/src/gen/_models/webitelCasesCase.ts +2 -1
  163. package/src/gen/_models/webitelCasesChatEvent.ts +2 -1
  164. package/src/gen/_models/webitelCasesEmailEvent.ts +2 -1
  165. package/src/gen/_models/webitelCasesInputCreateService.ts +2 -1
  166. package/src/gen/_models/webitelCasesInputService.ts +2 -1
  167. package/src/gen/_models/webitelCasesInputSource.ts +0 -1
  168. package/src/gen/_models/webitelCasesService.ts +2 -1
  169. package/src/gen/_models/webitelCasesSource.ts +5 -6
  170. package/src/gen/_models/webitelChatAgentChat.ts +2 -1
  171. package/src/gen/_models/webitelChatBroadcastMessageRequest.ts +2 -1
  172. package/src/gen/_models/webitelChatChatMessage.ts +3 -2
  173. package/src/gen/_models/webitelChatContactChat.ts +2 -1
  174. package/src/gen/_models/webitelChatDialog.ts +2 -1
  175. package/src/gen/_models/webitelChatGetContactChatHistoryResponse.ts +3 -2
  176. package/src/gen/_models/webitelContactsComment.ts +2 -1
  177. package/src/gen/_models/webitelProtoDataStruct.ts +2 -1
  178. package/src/gen/_models/wfmAbsence.ts +2 -1
  179. package/src/gen/_models/wfmAgentScheduleShift.ts +3 -2
  180. package/src/gen/_models/wfmAgentWorkingSchedule.ts +2 -1
  181. package/src/gen/_models/wfmPauseTemplate.ts +2 -1
  182. package/src/gen/_models/wfmSearchAgentsWorkingScheduleResponse.ts +2 -1
  183. package/src/gen/access-store/access-store.msw.api.gen.ts +1 -1
  184. package/src/gen/access-store/access-store.zod.gen.ts +2 -2
  185. package/src/gen/agent-absence-service/agent-absence-service.msw.api.gen.ts +2 -3
  186. package/src/gen/agent-chat-service/agent-chat-service.msw.api.gen.ts +2 -3
  187. package/src/gen/agent-pause-cause-service/agent-pause-cause-service.msw.api.gen.ts +1 -1
  188. package/src/gen/agent-service/agent-service.msw.api.gen.ts +1 -1
  189. package/src/gen/agent-skill-service/agent-skill-service.msw.api.gen.ts +1 -1
  190. package/src/gen/agent-team-service/agent-team-service.msw.api.gen.ts +1 -1
  191. package/src/gen/agent-working-conditions-service/agent-working-conditions-service.msw.api.gen.ts +1 -1
  192. package/src/gen/agent-working-schedule-service/agent-working-schedule-service.msw.api.gen.ts +2 -3
  193. package/src/gen/articles/articles.api.gen.ts +1 -1
  194. package/src/gen/articles/articles.msw.api.gen.ts +1 -1
  195. package/src/gen/audit-form-service/audit-form-service.msw.api.gen.ts +2 -3
  196. package/src/gen/auth/auth.msw.api.gen.ts +1 -1
  197. package/src/gen/auth/auth.zod.gen.ts +1 -1
  198. package/src/gen/backend-profile-service/backend-profile-service.msw.api.gen.ts +1 -1
  199. package/src/gen/bucket-service/bucket-service.msw.api.gen.ts +1 -1
  200. package/src/gen/calendar-service/calendar-service.msw.api.gen.ts +1 -1
  201. package/src/gen/call-service/call-service.msw.api.gen.ts +5 -6
  202. package/src/gen/call-service/call-service.zod.gen.ts +1 -1
  203. package/src/gen/case-comments/case-comments.msw.api.gen.ts +1 -1
  204. package/src/gen/case-communications/case-communications.msw.api.gen.ts +1 -1
  205. package/src/gen/case-files/case-files.msw.api.gen.ts +1 -1
  206. package/src/gen/case-links/case-links.msw.api.gen.ts +1 -1
  207. package/src/gen/case-timeline/case-timeline.msw.api.gen.ts +2 -3
  208. package/src/gen/cases/cases.msw.api.gen.ts +2 -3
  209. package/src/gen/cases/cases.zod.gen.ts +18 -0
  210. package/src/gen/cases-chat-catalog/cases-chat-catalog.msw.api.gen.ts +2 -3
  211. package/src/gen/cases-chat-catalog/cases-chat-catalog.zod.gen.ts +1 -1
  212. package/src/gen/catalog/catalog.msw.api.gen.ts +2 -3
  213. package/src/gen/catalog/catalog.zod.gen.ts +3 -3
  214. package/src/gen/catalogs/catalogs.msw.api.gen.ts +1 -1
  215. package/src/gen/catalogs/catalogs.zod.gen.ts +4 -4
  216. package/src/gen/classes/classes.msw.api.gen.ts +1 -1
  217. package/src/gen/classes/classes.zod.gen.ts +1 -1
  218. package/src/gen/close-reason-groups/close-reason-groups.msw.api.gen.ts +1 -1
  219. package/src/gen/close-reasons/close-reasons.msw.api.gen.ts +1 -1
  220. package/src/gen/cognitive-profile-service/cognitive-profile-service.msw.api.gen.ts +2 -3
  221. package/src/gen/communication-type-service/communication-type-service.msw.api.gen.ts +2 -3
  222. package/src/gen/config-service/config-service.msw.api.gen.ts +1 -1
  223. package/src/gen/contact-groups/contact-groups.msw.api.gen.ts +1 -1
  224. package/src/gen/contact-linking-service/contact-linking-service.msw.api.gen.ts +1 -1
  225. package/src/gen/contacts/contacts.msw.api.gen.ts +1 -1
  226. package/src/gen/contacts/contacts.zod.gen.ts +2 -2
  227. package/src/gen/contacts-chat-catalog/contacts-chat-catalog.msw.api.gen.ts +2 -3
  228. package/src/gen/contacts-chat-catalog/contacts-chat-catalog.zod.gen.ts +2 -2
  229. package/src/gen/customers/customers.msw.api.gen.ts +1 -1
  230. package/src/gen/customers/customers.zod.gen.ts +4 -4
  231. package/src/gen/devices/devices.msw.api.gen.ts +1 -1
  232. package/src/gen/devices/devices.zod.gen.ts +1 -1
  233. package/src/gen/dictionaries/dictionaries.msw.api.gen.ts +2 -3
  234. package/src/gen/dictionaries/dictionaries.zod.gen.ts +16 -16
  235. package/src/gen/domains/domains.msw.api.gen.ts +1 -1
  236. package/src/gen/dynamic-conditions/dynamic-conditions.msw.api.gen.ts +1 -1
  237. package/src/gen/dynamic-groups/dynamic-groups.msw.api.gen.ts +1 -1
  238. package/src/gen/email-profile-service/email-profile-service.msw.api.gen.ts +2 -3
  239. package/src/gen/emails/emails.msw.api.gen.ts +1 -1
  240. package/src/gen/extensions/extensions.msw.api.gen.ts +2 -3
  241. package/src/gen/extensions/extensions.zod.gen.ts +10 -10
  242. package/src/gen/file-policies-service/file-policies-service.msw.api.gen.ts +2 -3
  243. package/src/gen/file-service/file-service.msw.api.gen.ts +2 -3
  244. package/src/gen/file-transcript-service/file-transcript-service.msw.api.gen.ts +1 -1
  245. package/src/gen/forecast-calculation-service/forecast-calculation-service.msw.api.gen.ts +1 -1
  246. package/src/gen/ftsservice/ftsservice.msw.api.gen.ts +1 -1
  247. package/src/gen/groups/groups.msw.api.gen.ts +2 -3
  248. package/src/gen/imclients/imclients.msw.api.gen.ts +1 -1
  249. package/src/gen/import-template-service/import-template-service.msw.api.gen.ts +2 -3
  250. package/src/gen/index.ts +249 -249
  251. package/src/gen/knowledgebase-search/knowledgebase-search.msw.api.gen.ts +1 -1
  252. package/src/gen/labels/labels.msw.api.gen.ts +1 -1
  253. package/src/gen/ldap/ldap.api.gen.ts +4 -4
  254. package/src/gen/ldap/ldap.msw.api.gen.ts +3 -3
  255. package/src/gen/ldap/ldap.zod.gen.ts +6 -6
  256. package/src/gen/list-service/list-service.msw.api.gen.ts +1 -1
  257. package/src/gen/logger-service/logger-service.msw.api.gen.ts +1 -1
  258. package/src/gen/managers/managers.msw.api.gen.ts +1 -1
  259. package/src/gen/media-file-service/media-file-service.msw.api.gen.ts +1 -1
  260. package/src/gen/member-service/member-service.msw.api.gen.ts +1 -1
  261. package/src/gen/member-service/member-service.zod.gen.ts +1 -1
  262. package/src/gen/messages-service/messages-service.msw.api.gen.ts +1 -1
  263. package/src/gen/oauth2-federation/oauth2-federation.msw.api.gen.ts +1 -1
  264. package/src/gen/oauth2-federation/oauth2-federation.zod.gen.ts +2 -2
  265. package/src/gen/outbound-resource-group-service/outbound-resource-group-service.msw.api.gen.ts +1 -1
  266. package/src/gen/outbound-resource-service/outbound-resource-service.msw.api.gen.ts +1 -1
  267. package/src/gen/pause-template-service/pause-template-service.msw.api.gen.ts +1 -1
  268. package/src/gen/permissions/permissions.msw.api.gen.ts +1 -1
  269. package/src/gen/permissions/permissions.zod.gen.ts +1 -1
  270. package/src/gen/phones/phones.msw.api.gen.ts +1 -1
  271. package/src/gen/presence/presence.msw.api.gen.ts +1 -1
  272. package/src/gen/preset-query-service/preset-query-service.msw.api.gen.ts +1 -1
  273. package/src/gen/priorities/priorities.msw.api.gen.ts +1 -1
  274. package/src/gen/queue-bucket-service/queue-bucket-service.msw.api.gen.ts +1 -1
  275. package/src/gen/queue-hook-service/queue-hook-service.msw.api.gen.ts +1 -1
  276. package/src/gen/queue-resources-service/queue-resources-service.msw.api.gen.ts +1 -1
  277. package/src/gen/queue-service/queue-service.msw.api.gen.ts +1 -1
  278. package/src/gen/queue-skill-service/queue-skill-service.msw.api.gen.ts +1 -1
  279. package/src/gen/quick-replies-service/quick-replies-service.msw.api.gen.ts +1 -1
  280. package/src/gen/region-service/region-service.msw.api.gen.ts +1 -1
  281. package/src/gen/related-cases/related-cases.msw.api.gen.ts +2 -3
  282. package/src/gen/routing-chat-plan-service/routing-chat-plan-service.msw.api.gen.ts +1 -1
  283. package/src/gen/routing-outbound-call-service/routing-outbound-call-service.msw.api.gen.ts +1 -1
  284. package/src/gen/routing-schema-service/routing-schema-service.msw.api.gen.ts +2 -3
  285. package/src/gen/routing-variable-service/routing-variable-service.msw.api.gen.ts +1 -1
  286. package/src/gen/schema-variables-service/schema-variables-service.msw.api.gen.ts +1 -1
  287. package/src/gen/schema-version-service/schema-version-service.msw.api.gen.ts +1 -1
  288. package/src/gen/services/services.msw.api.gen.ts +1 -1
  289. package/src/gen/shift-template-service/shift-template-service.msw.api.gen.ts +1 -1
  290. package/src/gen/skill-service/skill-service.msw.api.gen.ts +1 -1
  291. package/src/gen/slaconditions/slaconditions.msw.api.gen.ts +1 -1
  292. package/src/gen/slas/slas.msw.api.gen.ts +1 -1
  293. package/src/gen/sources/sources.msw.api.gen.ts +8 -9
  294. package/src/gen/sources/sources.zod.gen.ts +0 -27
  295. package/src/gen/spaces/spaces.msw.api.gen.ts +1 -1
  296. package/src/gen/spaces/spaces.zod.gen.ts +1 -1
  297. package/src/gen/status-conditions/status-conditions.msw.api.gen.ts +1 -1
  298. package/src/gen/statuses/statuses.msw.api.gen.ts +1 -1
  299. package/src/gen/system-setting-service/system-setting-service.msw.api.gen.ts +2 -3
  300. package/src/gen/tags/tags.msw.api.gen.ts +1 -1
  301. package/src/gen/team-hook-service/team-hook-service.msw.api.gen.ts +2 -3
  302. package/src/gen/team-trigger-service/team-trigger-service.msw.api.gen.ts +1 -1
  303. package/src/gen/timeline/timeline.msw.api.gen.ts +2 -3
  304. package/src/gen/timezones/timezones.msw.api.gen.ts +1 -1
  305. package/src/gen/trigger-service/trigger-service.msw.api.gen.ts +7 -8
  306. package/src/gen/two-factor-authentication/two-factor-authentication.msw.api.gen.ts +1 -1
  307. package/src/gen/types/types.msw.api.gen.ts +2 -3
  308. package/src/gen/types/types.zod.gen.ts +4 -4
  309. package/src/gen/user-access-tokens/user-access-tokens.msw.api.gen.ts +1 -1
  310. package/src/gen/user-helper-service/user-helper-service.msw.api.gen.ts +1 -1
  311. package/src/gen/users/users.msw.api.gen.ts +1 -1
  312. package/src/gen/users/users.zod.gen.ts +12 -12
  313. package/src/gen/variables/variables.msw.api.gen.ts +1 -1
  314. package/src/gen/web-hook-service/web-hook-service.msw.api.gen.ts +1 -1
  315. package/src/gen/working-condition-service/working-condition-service.msw.api.gen.ts +1 -1
  316. package/src/gen/working-schedule-service/working-schedule-service.msw.api.gen.ts +2 -3
  317. package/src/utils/gen/index.ts +35 -33
  318. package/src/utils/index.ts +11 -6
  319. package/src/validations/caseSource/caseSource.validations.ts +3 -5
  320. package/types/api/axios/generateInstance.d.ts +9 -0
  321. package/types/api/axios/index.d.ts +1 -0
  322. package/types/api/clients/_shared/generatePermissionsApi.d.ts +13 -0
  323. package/types/api/clients/agents/agentChats.d.ts +7 -0
  324. package/types/api/clients/agents/agents.d.ts +43 -0
  325. package/types/api/clients/buckets/buckets.d.ts +23 -0
  326. package/types/api/clients/calendars/calendars.d.ts +27 -0
  327. package/types/api/clients/caseCloseReasonGroups/caseCloseReasonGroups.d.ts +23 -0
  328. package/types/api/clients/caseCloseReasons/caseCloseReasons.d.ts +29 -0
  329. package/types/api/clients/casePriorities/casePriorities.d.ts +23 -0
  330. package/types/api/clients/caseServiceCatalogs/serviceCatalogs.d.ts +23 -0
  331. package/types/api/clients/caseServices/services.d.ts +34 -0
  332. package/types/api/clients/caseSources/caseSources.d.ts +23 -0
  333. package/types/api/clients/caseStatusConditions/caseStatusConditions.d.ts +35 -0
  334. package/types/api/clients/caseStatuses/caseStatuses.d.ts +23 -0
  335. package/types/api/clients/catalog/catalog.d.ts +8 -0
  336. package/types/api/clients/chatGateways/chatGateways.d.ts +30 -0
  337. package/types/api/clients/chatGateways/defaults/defaultChatGateway.d.ts +18 -0
  338. package/types/api/clients/chatGateways/defaults/webChatGateway.d.ts +68 -0
  339. package/types/api/clients/chatGateways/enums/WebchatAlternativeChannel.enum.d.ts +12 -0
  340. package/types/api/clients/chatGateways/scripts/generateUri.d.ts +5 -0
  341. package/types/api/clients/communications/communications.d.ts +27 -0
  342. package/types/api/clients/configurations/configurations.d.ts +27 -0
  343. package/types/api/clients/contactGroups/contactGroups.d.ts +46 -0
  344. package/types/api/clients/flows/flow.d.ts +27 -0
  345. package/types/api/clients/gateways/defaults/defaultGateway.d.ts +8 -0
  346. package/types/api/clients/gateways/defaults/registerGateway.d.ts +13 -0
  347. package/types/api/clients/gateways/defaults/trunkingGateway.d.ts +11 -0
  348. package/types/api/clients/gateways/gateways.d.ts +27 -0
  349. package/types/api/clients/index.d.ts +33 -0
  350. package/types/api/clients/labels/labels.d.ts +10 -0
  351. package/types/api/clients/lists/blacklists.d.ts +23 -0
  352. package/types/api/clients/media/media.d.ts +18 -0
  353. package/types/api/clients/object/object.d.ts +10 -0
  354. package/types/api/clients/queues/defaults/processing.d.ts +7 -0
  355. package/types/api/clients/queues/queues.d.ts +31 -0
  356. package/types/api/clients/quickReplies/quickReplies.d.ts +23 -0
  357. package/types/api/clients/roles/roles.d.ts +31 -0
  358. package/types/api/clients/skills/skills.d.ts +23 -0
  359. package/types/api/clients/slaConditions/slaConditions.d.ts +29 -0
  360. package/types/api/clients/slas/slas.d.ts +23 -0
  361. package/types/api/clients/teams/teams.d.ts +23 -0
  362. package/types/api/clients/users/users.d.ts +45 -0
  363. package/types/api/clients/wtTypes/_shared/utils/sortDynamicFields.d.ts +2 -0
  364. package/types/api/clients/wtTypes/sysTypes/sysTypes.d.ts +15 -0
  365. package/types/api/clients/wtTypes/typeExtensions/typeExtensions.d.ts +16 -0
  366. package/types/api/clients//321/201ontacts/contactChatMessagesHistory.d.ts +13 -0
  367. package/types/api/clients//321/201ontacts/contacts.d.ts +22 -0
  368. package/types/api/clients//321/201ontacts/enums/ContactsSearchMode.d.ts +8 -0
  369. package/types/api/clients//321/201ontacts/index.d.ts +4 -0
  370. package/types/api/defaults/getDefaultGetListResponse/getDefaultGetListResponse.d.ts +8 -0
  371. package/types/api/defaults/getDefaultGetParams/getDefaultGetParams.d.ts +14 -0
  372. package/types/api/defaults/getDefaultInstance/getDefaultInstance.d.ts +5 -0
  373. package/types/api/defaults/getDefaultOpenAPIConfig/getDefaultOpenAPIConfig.d.ts +6 -0
  374. package/types/api/defaults/index.d.ts +5 -0
  375. package/types/api/index.d.ts +5 -0
  376. package/types/api/interceptors/index.d.ts +2 -0
  377. package/types/api/interceptors/request/index.d.ts +1 -0
  378. package/types/api/interceptors/request/updateToken.interceptor.d.ts +4 -0
  379. package/types/api/interceptors/response/handleUnauthorized.interceptor.d.ts +5 -0
  380. package/types/api/interceptors/response/index.d.ts +1 -0
  381. package/types/api/transformers/addQueryParamsToUrl/addQueryParamsToUrl.transformer.d.ts +2 -0
  382. package/types/api/transformers/applyTransform.d.ts +13 -0
  383. package/types/api/transformers/camelToSnake/camelToSnake.transformer.d.ts +2 -0
  384. package/types/api/transformers/generateUrl/generateUrl.transformer.d.ts +2 -0
  385. package/types/api/transformers/index.d.ts +13 -0
  386. package/types/api/transformers/log/log.transformer.d.ts +2 -0
  387. package/types/api/transformers/merge/merge.transformer.d.ts +2 -0
  388. package/types/api/transformers/mergeEach/mergeEach.transformer.d.ts +2 -0
  389. package/types/api/transformers/notify/notify.transformer.d.ts +2 -0
  390. package/types/api/transformers/sanitize/sanitize.transformer.d.ts +2 -0
  391. package/types/api/transformers/skipIf/skipIf.d.ts +1 -0
  392. package/types/api/transformers/snakeToCamel/snakeToCamel.transformer.d.ts +2 -0
  393. package/types/api/transformers/starToSearch/starToSearch.transformer.d.ts +2 -0
  394. package/types/gen/_models/engineTriggerObjectType.d.ts +0 -1
  395. package/types/gen/_models/fileServiceSearchFilesChannelItem.d.ts +0 -2
  396. package/types/gen/_models/googleRpcStatus.d.ts +12 -0
  397. package/types/gen/_models/storageUploadFileChannel.d.ts +0 -2
  398. package/types/gen/_models/webitelCasesStatus.d.ts +16 -0
  399. package/types/gen/file-policies-service/file-policies-service.zod.gen.d.ts +0 -18
  400. package/types/gen/file-service/file-service.api.gen.d.ts +1 -3
  401. package/types/gen/file-service/file-service.msw.api.gen.d.ts +1 -3
  402. package/types/gen/file-service/file-service.zod.gen.d.ts +0 -18
  403. package/types/gen/trigger-service/trigger-service.zod.gen.d.ts +0 -9
  404. package/src/defaults/index.ts +0 -2
  405. package/src/gen/_docs/.nojekyll +0 -1
  406. package/src/gen/_docs/html/variables/sources_sources.zod.gen.createSourceBodyNameRegExp.html +0 -1
  407. package/src/gen/_docs/html/variables/sources_sources.zod.gen.createSourceResponseNameRegExp.html +0 -1
  408. package/src/gen/_docs/html/variables/sources_sources.zod.gen.deleteSourceResponseNameRegExp.html +0 -1
  409. package/src/gen/_docs/html/variables/sources_sources.zod.gen.listSourcesResponseItemsItemNameRegExp.html +0 -1
  410. package/src/gen/_docs/html/variables/sources_sources.zod.gen.locateSourceResponseSourceNameRegExp.html +0 -1
  411. package/src/gen/_docs/html/variables/sources_sources.zod.gen.updateSource2BodyNameRegExp.html +0 -1
  412. package/src/gen/_docs/html/variables/sources_sources.zod.gen.updateSource2ResponseNameRegExp.html +0 -1
  413. package/src/gen/_docs/html/variables/sources_sources.zod.gen.updateSourceBodyNameRegExp.html +0 -1
  414. package/src/gen/_docs/html/variables/sources_sources.zod.gen.updateSourceResponseNameRegExp.html +0 -1
  415. package/types/gen/_models/casesCaseCustom.d.ts +0 -12
  416. package/types/gen/_models/casesInputCaseCustom.d.ts +0 -12
  417. package/types/gen/_models/casesInputCreateCaseCustom.d.ts +0 -12
  418. package/types/gen/_models/protobufNullValue.d.ts +0 -18
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webitel/api-services",
3
- "version": "0.0.24",
3
+ "version": "0.0.27",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "make-all": "npm run gen:api && npm version patch && npm run publish-lib",
@@ -11,27 +11,32 @@
11
11
  "gen:api:typedoc": "npx typedoc",
12
12
  "gen:api:cleanup": "rm swagger.yaml formatted-openapi.yaml",
13
13
  "build:types": "vue-tsc -p ./tsconfig.build.json",
14
+ "format:all": "npx biome check --write --unsafe ./src",
14
15
  "orval": "orval",
15
16
  "lint:package": "publint",
16
17
  "utils:i": "npm i"
17
18
  },
18
19
  "type": "module",
19
20
  "exports": {
21
+ "./api": {
22
+ "types": "./types/api/index.d.ts",
23
+ "import": "./src/api/index.ts"
24
+ },
20
25
  "./gen": {
21
- "import": "./src/gen/index.ts",
22
- "types": "./types/gen/index.d.ts"
26
+ "types": "./types/gen/index.d.ts",
27
+ "import": "./src/gen/index.ts"
23
28
  },
24
29
  "./utils": {
25
- "import": "./src/utils/index.ts",
26
- "types": "./types/utils/index.d.ts"
30
+ "types": "./types/utils/index.d.ts",
31
+ "import": "./src/utils/index.ts"
27
32
  },
28
33
  "./gen/utils": {
29
- "import": "./src/utils/gen/index.ts",
30
- "types": "./types/utils/gen/index.d.ts"
34
+ "types": "./types/utils/gen/index.d.ts",
35
+ "import": "./src/utils/gen/index.ts"
31
36
  },
32
37
  "./gen/models": {
33
- "import": "./src/gen/_models/index.ts",
34
- "types": "./types/gen/_models/index.d.ts"
38
+ "types": "./types/gen/_models/index.d.ts",
39
+ "import": "./src/gen/_models/index.ts"
35
40
  }
36
41
  },
37
42
  "files": [
@@ -48,7 +53,7 @@
48
53
  "zod": "^3.25.55"
49
54
  },
50
55
  "devDependencies": {
51
- "@biomejs/biome": "1.9.4",
56
+ "@biomejs/biome": "2.0.4",
52
57
  "@tsconfig/node22": "^22.0.0",
53
58
  "@types/node": "^22.13.10",
54
59
  "axios": "^1.10.0",
@@ -0,0 +1,35 @@
1
+ import axios from 'axios';
2
+
3
+ /**
4
+ * Generates an Axios instance with custom configuration
5
+ * @param options - Configuration options
6
+ * @param options.interceptors - Request and response interceptors
7
+ * @param options.baseURL - Base URL for the instance
8
+ * @param options.rest - Additional Axios configuration options
9
+ * @returns Configured Axios instance
10
+ */
11
+ export const generateInstance = ({ interceptors, baseURL, ...rest } = {}) => {
12
+ const instance = axios.create({
13
+ baseURL,
14
+ headers: {
15
+ 'X-Webitel-Access': localStorage.getItem('access-token') || '',
16
+ },
17
+ ...rest,
18
+ });
19
+
20
+ if (interceptors) {
21
+ const { request, response } = interceptors;
22
+ if (request) {
23
+ for (const interceptor of request) {
24
+ instance.interceptors.request.use(...interceptor);
25
+ }
26
+ }
27
+ if (response) {
28
+ for (const interceptor of response) {
29
+ instance.interceptors.response.use(...interceptor);
30
+ }
31
+ }
32
+ }
33
+
34
+ return instance;
35
+ };
@@ -0,0 +1,2 @@
1
+ // Export axios directory contents
2
+ export * from './generateInstance';
@@ -0,0 +1,97 @@
1
+ import {
2
+ getDefaultGetListResponse,
3
+ getDefaultGetParams,
4
+ getDefaultInstance,
5
+ } from '../../defaults/index';
6
+ import applyTransform, {
7
+ camelToSnake,
8
+ generateUrl,
9
+ merge,
10
+ mergeEach,
11
+ notify,
12
+ sanitize,
13
+ snakeToCamel,
14
+ starToSearch,
15
+ } from '../../transformers/index';
16
+
17
+ const permissionsUrl = 'acl';
18
+
19
+ const handlePermissionsList = (items) => {
20
+ return items.map((item) => ({
21
+ ...item,
22
+ access: {
23
+ x: {
24
+ id: (item.granted.match(/x/g) || []).length + 1,
25
+ rule: 'x'.repeat((item.granted.match(/x/g) || []).length),
26
+ },
27
+ r: {
28
+ id: (item.granted.match(/r/g) || []).length + 1,
29
+ rule: 'r'.repeat((item.granted.match(/r/g) || []).length),
30
+ },
31
+ w: {
32
+ id: (item.granted.match(/w/g) || []).length + 1,
33
+ rule: 'w'.repeat((item.granted.match(/w/g) || []).length),
34
+ },
35
+ d: {
36
+ id: (item.granted.match(/d/g) || []).length + 1,
37
+ rule: 'd'.repeat((item.granted.match(/d/g) || []).length),
38
+ },
39
+ },
40
+ }));
41
+ };
42
+
43
+ export const generatePermissionsApi = (baseUrl) => {
44
+ const instance = getDefaultInstance();
45
+
46
+ const getList = async ({ parentId, ...params }) => {
47
+ const fieldsToSend = ['page', 'size', 'q', 'sort', 'fields', 'id'];
48
+
49
+ const defaultObject = {
50
+ user: false,
51
+ };
52
+
53
+ const url = applyTransform(params, [
54
+ merge(getDefaultGetParams()),
55
+ starToSearch('search'),
56
+ (params) => ({
57
+ ...params,
58
+ q: params.search,
59
+ }),
60
+ sanitize(fieldsToSend),
61
+ camelToSnake(),
62
+ generateUrl(`${baseUrl}/${parentId}/${permissionsUrl}`),
63
+ ]);
64
+ try {
65
+ const response = await instance.get(url);
66
+ const { items, next } = applyTransform(response.data, [
67
+ snakeToCamel(),
68
+ merge(getDefaultGetListResponse()),
69
+ ]);
70
+ return {
71
+ items: applyTransform(items, [
72
+ mergeEach(defaultObject),
73
+ handlePermissionsList,
74
+ ]),
75
+ next,
76
+ };
77
+ } catch (err) {
78
+ throw applyTransform(err, [notify]);
79
+ }
80
+ };
81
+
82
+ const patch = async ({ changes, id }) => {
83
+ const body = applyTransform(changes, [camelToSnake()]);
84
+ const url = `${baseUrl}/${id}/${permissionsUrl}`;
85
+ try {
86
+ const response = await instance.patch(url, body);
87
+ return applyTransform(response.data, [snakeToCamel()]);
88
+ } catch (err) {
89
+ throw applyTransform(err, [notify]);
90
+ }
91
+ };
92
+
93
+ return {
94
+ getPermissionsList: getList,
95
+ patchPermissions: patch,
96
+ };
97
+ };
@@ -0,0 +1,71 @@
1
+ import { AgentChatServiceApiFactory } from 'webitel-sdk';
2
+
3
+ import i18n from '../../../locale/i18n';
4
+ import {
5
+ getDefaultGetParams,
6
+ getDefaultInstance,
7
+ getDefaultOpenAPIConfig,
8
+ } from '../../defaults/index';
9
+ import applyTransform, {
10
+ merge,
11
+ notify,
12
+ snakeToCamel,
13
+ } from '../../transformers/index';
14
+
15
+ const { t } = i18n.global;
16
+
17
+ const instance = getDefaultInstance();
18
+ const configuration = getDefaultOpenAPIConfig();
19
+
20
+ const agentChatsService = AgentChatServiceApiFactory(
21
+ configuration,
22
+ '',
23
+ instance,
24
+ );
25
+
26
+ const getChatsList = async (params) => {
27
+ const { size, page, onlyClosed, onlyUnprocessed } = applyTransform(params, [
28
+ merge(getDefaultGetParams()),
29
+ ]);
30
+
31
+ try {
32
+ const response = await agentChatsService.getAgentChats(
33
+ size,
34
+ page,
35
+ undefined,
36
+ undefined,
37
+ undefined,
38
+ onlyClosed,
39
+ onlyUnprocessed,
40
+ );
41
+ const { items, next } = applyTransform(response.data, [snakeToCamel()]);
42
+ return {
43
+ items,
44
+ next,
45
+ };
46
+ } catch (err) {
47
+ throw applyTransform(err, [notify]);
48
+ }
49
+ };
50
+
51
+ const markChatProcessed = async (chatId) => {
52
+ // add to chat unprocessedClose: true
53
+ try {
54
+ const response = await agentChatsService.markChatProcessed(chatId);
55
+ return applyTransform(response.data, [snakeToCamel()]);
56
+ } catch (err) {
57
+ throw applyTransform(err, [
58
+ notify(({ callback }) =>
59
+ callback({
60
+ type: 'error',
61
+ text: t('errorNotifications.markChatProcessed'),
62
+ }),
63
+ ),
64
+ ]);
65
+ }
66
+ };
67
+
68
+ export const AgentChatsAPI = {
69
+ getList: getChatsList,
70
+ markChatProcessed,
71
+ };
@@ -0,0 +1,263 @@
1
+ import { AgentServiceApiFactory } from 'webitel-sdk';
2
+
3
+ import convertDuration from '../../../scripts/convertDuration';
4
+ import {
5
+ getDefaultGetListResponse,
6
+ getDefaultGetParams,
7
+ getDefaultInstance,
8
+ getDefaultOpenAPIConfig,
9
+ } from '../../defaults/index';
10
+ import applyTransform, {
11
+ camelToSnake,
12
+ merge,
13
+ notify,
14
+ sanitize,
15
+ snakeToCamel,
16
+ starToSearch,
17
+ } from '../../transformers/index';
18
+
19
+ const instance = getDefaultInstance();
20
+ const configuration = getDefaultOpenAPIConfig();
21
+
22
+ const agentService = AgentServiceApiFactory(configuration, '', instance);
23
+
24
+ const convertStatusDuration = (value) => {
25
+ if (value > 60 * 60 * 24) return '>24:00:00';
26
+ return convertDuration(value);
27
+ };
28
+
29
+ const getAgentsList = async (params) => {
30
+ const listResponseHandler = (items) => {
31
+ return items.map((item) => ({
32
+ ...item,
33
+ statusDuration: convertStatusDuration(item.statusDuration),
34
+ }));
35
+ };
36
+
37
+ const {
38
+ page,
39
+ size,
40
+ search,
41
+ sort,
42
+ fields,
43
+ id,
44
+ team,
45
+ skill,
46
+ isSupervisor,
47
+ isNotSupervisor,
48
+ notTeamId,
49
+ supervisorId,
50
+ notSkillId,
51
+ } = applyTransform(params, [merge(getDefaultGetParams())]);
52
+
53
+ try {
54
+ const response = await agentService.searchAgent(
55
+ page,
56
+ size,
57
+ search,
58
+ sort,
59
+ fields,
60
+ id,
61
+ undefined,
62
+ supervisorId,
63
+ team,
64
+ undefined,
65
+ undefined,
66
+ isSupervisor,
67
+ skill,
68
+ undefined,
69
+ isNotSupervisor,
70
+ undefined,
71
+ undefined,
72
+ notTeamId,
73
+ notSkillId,
74
+ );
75
+ const { items, next } = applyTransform(response.data, [
76
+ snakeToCamel(),
77
+ merge(getDefaultGetListResponse()),
78
+ ]);
79
+ return {
80
+ items: applyTransform(items, [listResponseHandler]),
81
+ next,
82
+ };
83
+ } catch (err) {
84
+ throw applyTransform(err, [notify]);
85
+ }
86
+ };
87
+
88
+ const getAgent = async ({ itemId: id }) => {
89
+ const defaultObject = {
90
+ user: {},
91
+ team: {},
92
+ supervisor: [],
93
+ auditor: [],
94
+ region: {},
95
+ progressiveCount: 0,
96
+ chatCount: 0,
97
+ taskCount: 0,
98
+ isSupervisor: false,
99
+ description: '',
100
+ greetingMedia: {},
101
+ };
102
+
103
+ try {
104
+ const response = await agentService.readAgent(id);
105
+ return applyTransform(response.data, [
106
+ snakeToCamel(),
107
+ merge(defaultObject),
108
+ ]);
109
+ } catch (err) {
110
+ throw applyTransform(err, [notify]);
111
+ }
112
+ };
113
+
114
+ const fieldsToSend = [
115
+ 'user',
116
+ 'team',
117
+ 'supervisor',
118
+ 'auditor',
119
+ 'region',
120
+ 'greetingMedia',
121
+ 'progressiveCount',
122
+ 'chatCount',
123
+ 'taskCount',
124
+ 'isSupervisor',
125
+ ];
126
+
127
+ const addAgent = async ({ itemInstance }) => {
128
+ const item = applyTransform(itemInstance, [
129
+ sanitize(fieldsToSend),
130
+ camelToSnake(),
131
+ ]);
132
+ try {
133
+ const response = await agentService.createAgent(item);
134
+ return applyTransform(response.data, [snakeToCamel()]);
135
+ } catch (err) {
136
+ throw applyTransform(err, [notify]);
137
+ }
138
+ };
139
+
140
+ const patchAgent = async ({ changes, id }) => {
141
+ const body = applyTransform(changes, [
142
+ sanitize(fieldsToSend),
143
+ camelToSnake(),
144
+ ]);
145
+ try {
146
+ const response = await agentService.patchAgent(id, body);
147
+ return applyTransform(response.data, [snakeToCamel()]);
148
+ } catch (err) {
149
+ throw applyTransform(err, [notify]);
150
+ }
151
+ };
152
+
153
+ const updateAgent = async ({ itemInstance, itemId: id }) => {
154
+ const item = applyTransform(itemInstance, [
155
+ sanitize(fieldsToSend),
156
+ camelToSnake(),
157
+ ]);
158
+ try {
159
+ const response = await agentService.updateAgent(id, item);
160
+ return applyTransform(response.data, [snakeToCamel()]);
161
+ } catch (err) {
162
+ throw applyTransform(err, [notify]);
163
+ }
164
+ };
165
+
166
+ const deleteAgent = async ({ id }) => {
167
+ try {
168
+ const response = await agentService.deleteAgent(id);
169
+ return applyTransform(response.data, []);
170
+ } catch (err) {
171
+ throw applyTransform(err, [notify]);
172
+ }
173
+ };
174
+
175
+ const getAgentsLookup = (params) =>
176
+ getAgentsList({
177
+ ...params,
178
+ fields: params.fields || ['id', 'name'],
179
+ });
180
+
181
+ const getAgentHistory = async (params) => {
182
+ const {
183
+ parentId,
184
+ from,
185
+ to,
186
+ page,
187
+ size,
188
+ sort = '-joined_at',
189
+ } = applyTransform(params, [
190
+ merge(getDefaultGetParams()),
191
+ starToSearch('search'),
192
+ ]);
193
+
194
+ try {
195
+ const response = await agentService.searchAgentStateHistory(
196
+ page,
197
+ size,
198
+ from,
199
+ to,
200
+ parentId,
201
+ sort,
202
+ );
203
+ const { items, next } = applyTransform(response.data, [
204
+ snakeToCamel(),
205
+ merge(getDefaultGetListResponse()),
206
+ ]);
207
+ return {
208
+ items,
209
+ next,
210
+ };
211
+ } catch (err) {
212
+ throw applyTransform(err, [notify]);
213
+ }
214
+ };
215
+
216
+ const getAgentUsersOptions = async (params) => {
217
+ const { page, size, search, sort, fields, id } = applyTransform(params, [
218
+ merge(getDefaultGetParams()),
219
+ starToSearch('search'),
220
+ ]);
221
+
222
+ try {
223
+ const response = await agentService.searchLookupUsersAgentNotExists(
224
+ page,
225
+ size,
226
+ search,
227
+ );
228
+ const { items, next } = applyTransform(response.data, [
229
+ snakeToCamel(),
230
+ merge(getDefaultGetListResponse()),
231
+ ]);
232
+ return {
233
+ items,
234
+ next,
235
+ };
236
+ } catch (err) {
237
+ throw applyTransform(err, [notify]);
238
+ }
239
+ };
240
+ const getSupervisorOptions = async (params) => {
241
+ const isSupervisor = true;
242
+ return getAgentsList({ ...params, isSupervisor });
243
+ };
244
+
245
+ const getRegularAgentsOptions = async (params) => {
246
+ const isNotSupervisor = true;
247
+ return getAgentsList({ ...params, isNotSupervisor });
248
+ };
249
+
250
+ export const AgentsAPI = {
251
+ getList: getAgentsList,
252
+ get: getAgent,
253
+ add: addAgent,
254
+ patch: patchAgent,
255
+ update: updateAgent,
256
+ delete: deleteAgent,
257
+ getLookup: getAgentsLookup,
258
+
259
+ getAgentHistory,
260
+ getRegularAgentsOptions,
261
+ getAgentUsersOptions,
262
+ getSupervisorOptions,
263
+ };
@@ -0,0 +1,110 @@
1
+ import { BucketServiceApiFactory } from 'webitel-sdk';
2
+
3
+ import {
4
+ getDefaultGetListResponse,
5
+ getDefaultGetParams,
6
+ getDefaultInstance,
7
+ getDefaultOpenAPIConfig,
8
+ } from '../../defaults/index';
9
+ import applyTransform, {
10
+ camelToSnake,
11
+ merge,
12
+ notify,
13
+ sanitize,
14
+ snakeToCamel,
15
+ starToSearch,
16
+ } from '../../transformers/index';
17
+
18
+ const instance = getDefaultInstance();
19
+ const configuration = getDefaultOpenAPIConfig();
20
+
21
+ const bucketService = BucketServiceApiFactory(configuration, '', instance);
22
+
23
+ const getBucketsList = async (params) => {
24
+ const { page, size, search, sort, fields, id } = applyTransform(params, [
25
+ merge(getDefaultGetParams()),
26
+ starToSearch('search'),
27
+ ]);
28
+
29
+ try {
30
+ const response = await bucketService.searchBucket(
31
+ page,
32
+ size,
33
+ search,
34
+ sort,
35
+ fields,
36
+ id,
37
+ );
38
+ const { items, next } = applyTransform(response.data, [
39
+ snakeToCamel(),
40
+ merge(getDefaultGetListResponse()),
41
+ ]);
42
+ return {
43
+ items,
44
+ next,
45
+ };
46
+ } catch (err) {
47
+ throw applyTransform(err, [notify]);
48
+ }
49
+ };
50
+
51
+ const getBucket = async ({ itemId: id }) => {
52
+ try {
53
+ const response = await bucketService.readBucket(id);
54
+ return applyTransform(response.data, [snakeToCamel()]);
55
+ } catch (err) {
56
+ throw applyTransform(err, [notify]);
57
+ }
58
+ };
59
+
60
+ const fieldsToSend = ['name', 'description'];
61
+
62
+ const addBucket = async ({ itemInstance }) => {
63
+ const item = applyTransform(itemInstance, [
64
+ sanitize(fieldsToSend),
65
+ camelToSnake(),
66
+ ]);
67
+ try {
68
+ const response = await bucketService.createBucket(item);
69
+ return applyTransform(response.data, [snakeToCamel()]);
70
+ } catch (err) {
71
+ throw applyTransform(err, [notify]);
72
+ }
73
+ };
74
+
75
+ const updateBucket = async ({ itemInstance, itemId: id }) => {
76
+ const item = applyTransform(itemInstance, [
77
+ sanitize(fieldsToSend),
78
+ camelToSnake(),
79
+ ]);
80
+ try {
81
+ const response = await bucketService.updateBucket(id, item);
82
+ return applyTransform(response.data, [snakeToCamel()]);
83
+ } catch (err) {
84
+ throw applyTransform(err, [notify]);
85
+ }
86
+ };
87
+
88
+ const deleteBucket = async ({ id }) => {
89
+ try {
90
+ const response = await bucketService.deleteBucket(id);
91
+ return applyTransform(response.data, []);
92
+ } catch (err) {
93
+ throw applyTransform(err, [notify]);
94
+ }
95
+ };
96
+
97
+ const getBucketsLookup = (params) =>
98
+ getBucketsList({
99
+ ...params,
100
+ fields: params.fields || ['id', 'name'],
101
+ });
102
+
103
+ export const BucketsAPI = {
104
+ getList: getBucketsList,
105
+ get: getBucket,
106
+ add: addBucket,
107
+ update: updateBucket,
108
+ delete: deleteBucket,
109
+ getLookup: getBucketsLookup,
110
+ };