@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
@@ -0,0 +1,232 @@
1
+ import deepCopy from 'deep-copy';
2
+ import { QueueServiceApiFactory } from 'webitel-sdk';
3
+
4
+ import isEmpty from '../../../scripts/isEmpty';
5
+ import {
6
+ getDefaultGetListResponse,
7
+ getDefaultGetParams,
8
+ getDefaultInstance,
9
+ getDefaultOpenAPIConfig,
10
+ } from '../../defaults/index';
11
+ import applyTransform, {
12
+ camelToSnake,
13
+ merge,
14
+ mergeEach,
15
+ notify,
16
+ sanitize,
17
+ snakeToCamel,
18
+ starToSearch,
19
+ } from '../../transformers/index';
20
+ import processing from './defaults/processing';
21
+
22
+ const instance = getDefaultInstance();
23
+ const configuration = getDefaultOpenAPIConfig();
24
+
25
+ const queueService = QueueServiceApiFactory(configuration, '', instance);
26
+
27
+ const doNotConvertKeys = ['variables'];
28
+
29
+ const fieldsToSend = [
30
+ 'name',
31
+ 'type',
32
+ 'strategy',
33
+ 'team',
34
+ 'priority',
35
+ 'dncList',
36
+ 'schema',
37
+ 'payload',
38
+ 'taskProcessing',
39
+ 'maxOfRetry',
40
+ 'timeout',
41
+ 'secBetweenRetries',
42
+ 'variables',
43
+ 'calendar',
44
+ 'description',
45
+ 'enabled',
46
+ 'ringtone',
47
+ 'doSchema',
48
+ 'afterSchema',
49
+ 'stickyAgent',
50
+ 'grantee',
51
+ 'tags',
52
+ ];
53
+
54
+ const preRequestHandler = (item) => {
55
+ const copy = deepCopy(item);
56
+ copy.variables = copy.variables.reduce((variables, variable) => {
57
+ if (!variable.key) return variables;
58
+ return { ...variables, [variable.key]: variable.value };
59
+ }, {});
60
+ return copy;
61
+ };
62
+
63
+ const getQueuesList = async (params) => {
64
+ const defaultObject = {
65
+ type: 0,
66
+ enabled: false,
67
+ active: 0,
68
+ waiting: 0,
69
+ priority: '0',
70
+ };
71
+
72
+ const { page, size, search, sort, fields, id, queueType, team, tags } =
73
+ applyTransform(params, [
74
+ merge(getDefaultGetParams()),
75
+ starToSearch('search'),
76
+ ]);
77
+
78
+ try {
79
+ const response = await queueService.searchQueue(
80
+ page,
81
+ size,
82
+ search,
83
+ sort,
84
+ fields,
85
+ id,
86
+ queueType,
87
+ team,
88
+ tags,
89
+ );
90
+ const { items, next } = applyTransform(response.data, [
91
+ snakeToCamel(doNotConvertKeys),
92
+ merge(getDefaultGetListResponse()),
93
+ ]);
94
+ return {
95
+ items: applyTransform(items, [mergeEach(defaultObject)]),
96
+ next,
97
+ };
98
+ } catch (err) {
99
+ throw applyTransform(err, [notify]);
100
+ }
101
+ };
102
+
103
+ const getQueue = async ({ itemId: id }) => {
104
+ const defaultObject = {
105
+ tags: [],
106
+ type: 0,
107
+ formSchema: {},
108
+ taskProcessing: {},
109
+ };
110
+ const responseHandler = (item) => {
111
+ const copy = deepCopy(item);
112
+ if (copy.variables) {
113
+ copy.variables = Object.keys(copy.variables).map((key) => ({
114
+ key,
115
+ value: copy.variables[key],
116
+ }));
117
+ }
118
+ if (isEmpty(copy.taskProcessing)) {
119
+ copy.taskProcessing = processing({
120
+ enabled: !!copy.processing,
121
+ formSchema: copy.formSchema,
122
+ sec: copy.processingSec || 0,
123
+ renewalSec: copy.processingRenewalSec || 0,
124
+ });
125
+ }
126
+ return copy;
127
+ };
128
+ try {
129
+ const response = await queueService.readQueue(id);
130
+ return applyTransform(response.data, [
131
+ snakeToCamel(doNotConvertKeys),
132
+ merge(defaultObject),
133
+ responseHandler,
134
+ ]);
135
+ } catch (err) {
136
+ throw applyTransform(err, [notify]);
137
+ }
138
+ };
139
+
140
+ const addQueue = async ({ itemInstance }) => {
141
+ const item = applyTransform(itemInstance, [
142
+ preRequestHandler,
143
+ sanitize(fieldsToSend),
144
+ camelToSnake(doNotConvertKeys),
145
+ ]);
146
+ try {
147
+ const response = await queueService.createQueue(item);
148
+ return applyTransform(response.data, [snakeToCamel(doNotConvertKeys)]);
149
+ } catch (err) {
150
+ throw applyTransform(err, [notify]);
151
+ }
152
+ };
153
+
154
+ const updateQueue = async ({ itemInstance, itemId: id }) => {
155
+ const item = applyTransform(itemInstance, [
156
+ preRequestHandler,
157
+ sanitize(fieldsToSend),
158
+ camelToSnake(doNotConvertKeys),
159
+ ]);
160
+ try {
161
+ const response = await queueService.updateQueue(id, item);
162
+ return applyTransform(response.data, [snakeToCamel(doNotConvertKeys)]);
163
+ } catch (err) {
164
+ throw applyTransform(err, [notify]);
165
+ }
166
+ };
167
+
168
+ const patchQueue = async ({ id, changes }) => {
169
+ const item = applyTransform(changes, [
170
+ sanitize(fieldsToSend),
171
+ camelToSnake(doNotConvertKeys),
172
+ ]);
173
+ try {
174
+ const response = await queueService.patchQueue(id, item);
175
+ return applyTransform(response.data, [snakeToCamel(doNotConvertKeys)]);
176
+ } catch (err) {
177
+ throw applyTransform(err, [notify]);
178
+ }
179
+ };
180
+
181
+ const deleteQueue = async ({ id }) => {
182
+ try {
183
+ const response = await queueService.deleteQueue(id);
184
+ return applyTransform(response.data, []);
185
+ } catch (err) {
186
+ throw applyTransform(err, [notify]);
187
+ }
188
+ };
189
+
190
+ const getQueuesLookup = (params) =>
191
+ getQueuesList({
192
+ ...params,
193
+ fields: params.fields || ['id', 'name', 'type'],
194
+ });
195
+
196
+ const getQueuesTags = async (params) => {
197
+ const { page, size, search, sort, fields } = applyTransform(params, [
198
+ merge(getDefaultGetParams()),
199
+ starToSearch(),
200
+ camelToSnake(doNotConvertKeys),
201
+ ]);
202
+ try {
203
+ const response = await queueService.searchQueueTags(
204
+ page,
205
+ size,
206
+ search,
207
+ sort,
208
+ fields,
209
+ );
210
+ const { items, next } = applyTransform(response.data, [
211
+ snakeToCamel(doNotConvertKeys),
212
+ merge(getDefaultGetListResponse()),
213
+ ]);
214
+ return {
215
+ items,
216
+ next,
217
+ };
218
+ } catch (err) {
219
+ throw applyTransform(err, [notify]);
220
+ }
221
+ };
222
+
223
+ export const QueuesAPI = {
224
+ getList: getQueuesList,
225
+ get: getQueue,
226
+ add: addQueue,
227
+ patch: patchQueue,
228
+ update: updateQueue,
229
+ delete: deleteQueue,
230
+ getLookup: getQueuesLookup,
231
+ getQueuesTags,
232
+ };
@@ -0,0 +1,108 @@
1
+ import { getQuickRepliesService } from '@webitel/api-services/gen';
2
+
3
+ import {
4
+ getDefaultGetListResponse,
5
+ getDefaultGetParams,
6
+ } from '../../defaults/index';
7
+ import applyTransform, {
8
+ camelToSnake,
9
+ merge,
10
+ notify,
11
+ sanitize,
12
+ snakeToCamel,
13
+ } from '../../transformers/index';
14
+
15
+ const quickReplyService = getQuickRepliesService();
16
+
17
+ const fieldsToSend = ['name', 'queues', 'article', 'teams', 'text'];
18
+
19
+ const getQuickRepliesList = async (params) => {
20
+ const fieldsToSend = ['page', 'size', 'q', 'sort', 'fields', 'id'];
21
+
22
+ const { page, size, fields, sort, id, q } = applyTransform(params, [
23
+ merge(getDefaultGetParams()),
24
+ (params) => ({ ...params, q: params.search }),
25
+ sanitize(fieldsToSend),
26
+ camelToSnake(),
27
+ ]);
28
+
29
+ try {
30
+ const response = await quickReplyService.searchQuickReplies({
31
+ page,
32
+ size,
33
+ fields,
34
+ sort,
35
+ id,
36
+ q,
37
+ });
38
+ const { items, next } = applyTransform(response.data, [
39
+ merge(getDefaultGetListResponse()),
40
+ ]);
41
+ return {
42
+ items: applyTransform(items, [snakeToCamel()]),
43
+ next,
44
+ };
45
+ } catch (err) {
46
+ throw applyTransform(err, [notify]);
47
+ }
48
+ };
49
+
50
+ const getQuickReply = async ({ itemId: id }) => {
51
+ try {
52
+ const response = await quickReplyService.readQuickReply(id);
53
+ return applyTransform(response.data, [snakeToCamel()]);
54
+ } catch (err) {
55
+ throw applyTransform(err, [notify]);
56
+ }
57
+ };
58
+
59
+ const addQuickReply = async ({ itemInstance }) => {
60
+ const item = applyTransform(itemInstance, [
61
+ sanitize(fieldsToSend),
62
+ camelToSnake(),
63
+ ]);
64
+ try {
65
+ const response = await quickReplyService.createQuickReply(item);
66
+ return applyTransform(response.data, [snakeToCamel()]);
67
+ } catch (err) {
68
+ throw applyTransform(err, [notify]);
69
+ }
70
+ };
71
+
72
+ const updateQuickReply = async ({ itemInstance, itemId: id }) => {
73
+ const item = applyTransform(itemInstance, [
74
+ camelToSnake(),
75
+ sanitize(fieldsToSend),
76
+ ]);
77
+
78
+ try {
79
+ const response = await quickReplyService.updateQuickReply(id, item);
80
+ return applyTransform(response.data, [snakeToCamel()]);
81
+ } catch (err) {
82
+ throw applyTransform(err, [notify]);
83
+ }
84
+ };
85
+
86
+ const deleteQuickReply = async ({ id }) => {
87
+ try {
88
+ const response = await quickReplyService.deleteQuickReply(id);
89
+ return applyTransform(response.data, []);
90
+ } catch (err) {
91
+ throw applyTransform(err, [notify]);
92
+ }
93
+ };
94
+
95
+ const getLookup = (params) =>
96
+ getQuickRepliesList({
97
+ ...params,
98
+ fields: params.fields || ['id', 'name'],
99
+ });
100
+
101
+ export const QuickRepliesAPI = {
102
+ getList: getQuickRepliesList,
103
+ get: getQuickReply,
104
+ add: addQuickReply,
105
+ update: updateQuickReply,
106
+ delete: deleteQuickReply,
107
+ getLookup,
108
+ };
@@ -0,0 +1,200 @@
1
+ import deepCopy from 'deep-copy';
2
+
3
+ import ApplicationsAccess from '../../../modules/Userinfo/classes/ApplicationsAccess';
4
+ import {
5
+ getDefaultGetListResponse,
6
+ getDefaultGetParams,
7
+ getDefaultInstance,
8
+ } from '../../defaults/index';
9
+ import applyTransform, {
10
+ camelToSnake,
11
+ generateUrl,
12
+ merge,
13
+ notify,
14
+ sanitize,
15
+ snakeToCamel,
16
+ starToSearch,
17
+ } from '../../transformers/index';
18
+
19
+ const instance = getDefaultInstance();
20
+
21
+ const baseUrl = '/roles';
22
+ const fieldsToSend = ['name', 'description', 'permissions', 'metadata'];
23
+
24
+ const preRequestHandler = (item) => {
25
+ const copy = deepCopy(item);
26
+ copy.metadata.access = ApplicationsAccess.minify(copy.metadata.access);
27
+ return copy;
28
+ };
29
+
30
+ const getRoleList = async (params) => {
31
+ const fieldsToSend = ['page', 'size', 'q', 'sort', 'fields', 'ids'];
32
+
33
+ const url = applyTransform(params, [
34
+ merge(getDefaultGetParams()),
35
+ (params) => {
36
+ params.ids = params.ids || params.id; // accept either ids or id as param
37
+ return params;
38
+ },
39
+ starToSearch('search'),
40
+ (params) => ({ ...params, q: params.search }),
41
+ sanitize(fieldsToSend),
42
+ camelToSnake(),
43
+ generateUrl(baseUrl),
44
+ ]);
45
+ try {
46
+ const response = await instance.get(url);
47
+ const { items, next } = applyTransform(response.data, [
48
+ snakeToCamel(),
49
+ merge(getDefaultGetListResponse()),
50
+ ]);
51
+ return {
52
+ items,
53
+ next,
54
+ };
55
+ } catch (err) {
56
+ throw applyTransform(err, [notify]);
57
+ }
58
+ };
59
+
60
+ const getRole = async ({ itemId: id }) => {
61
+ const defaultObject = {
62
+ name: '',
63
+ description: '',
64
+ permissions: [],
65
+ metadata: {},
66
+ };
67
+
68
+ const itemResponseHandler = (response) => {
69
+ const copy = deepCopy(response);
70
+ copy.metadata.access = new ApplicationsAccess({
71
+ access: copy.metadata.access,
72
+ }).getAccess();
73
+ return copy;
74
+ };
75
+
76
+ const url = `${baseUrl}/${id}?fields=metadata&fields=permissions&fields=name&fields=description`;
77
+
78
+ try {
79
+ const response = await instance.get(url);
80
+ return applyTransform(response.data, [
81
+ snakeToCamel(),
82
+ merge(defaultObject),
83
+ itemResponseHandler,
84
+ ]);
85
+ } catch (err) {
86
+ throw applyTransform(err, [notify]);
87
+ }
88
+ };
89
+
90
+ const getExtendedRoles = async (params) => {
91
+ const fieldsToSend = ['page', 'size', 'q', 'sort', 'fields', 'id'];
92
+
93
+ const url = applyTransform(params, [
94
+ merge(getDefaultGetParams()),
95
+ starToSearch('search'),
96
+ (params) => ({ ...params, q: params.search }),
97
+ sanitize(fieldsToSend),
98
+ camelToSnake(),
99
+ generateUrl(baseUrl),
100
+ ]);
101
+ try {
102
+ const response = await instance.get(url);
103
+ const { items, next } = applyTransform(response.data, [
104
+ snakeToCamel(),
105
+ merge(getDefaultGetListResponse()),
106
+ ]);
107
+ return {
108
+ items,
109
+ next,
110
+ };
111
+ } catch (err) {
112
+ throw applyTransform(err, [notify]);
113
+ }
114
+ };
115
+
116
+ const addRole = async ({ itemInstance }) => {
117
+ const item = applyTransform(itemInstance, [
118
+ preRequestHandler,
119
+ sanitize(fieldsToSend),
120
+ camelToSnake(),
121
+ ]);
122
+ try {
123
+ const response = await instance.post(baseUrl, item);
124
+ return applyTransform(response.data, [snakeToCamel()]);
125
+ } catch (err) {
126
+ throw applyTransform(err, [notify]);
127
+ }
128
+ };
129
+
130
+ const updateRole = async ({ itemInstance, itemId: id }) => {
131
+ const item = applyTransform(itemInstance, [
132
+ preRequestHandler,
133
+ sanitize(fieldsToSend),
134
+ camelToSnake(),
135
+ ]);
136
+
137
+ const url = `${baseUrl}/${id}`;
138
+ try {
139
+ const response = await instance.put(url, item);
140
+ return applyTransform(response.data, [snakeToCamel()]);
141
+ } catch (err) {
142
+ throw applyTransform(err, [notify]);
143
+ }
144
+ };
145
+
146
+ const deleteRole = async ({ id }) => {
147
+ const url = `${baseUrl}/${id}`;
148
+ try {
149
+ const response = await instance.delete(url);
150
+ return applyTransform(response.data, []);
151
+ } catch (err) {
152
+ throw applyTransform(err, [notify]);
153
+ }
154
+ };
155
+
156
+ const getRolesLookup = (params) =>
157
+ getRoleList({
158
+ ...params,
159
+ fields: params.fields || ['id', 'name'],
160
+ });
161
+
162
+ const PERMISSIONS_LIST_URL = '/permissions';
163
+
164
+ const getPermissionsOptions = async (params) => {
165
+ const fieldsToSend = ['page', 'size', 'q', 'sort', 'fields', 'id'];
166
+
167
+ const url = applyTransform(params, [
168
+ merge(getDefaultGetParams()),
169
+ starToSearch('search'),
170
+ (params) => ({ ...params, q: params.search }),
171
+ sanitize(fieldsToSend),
172
+ camelToSnake(),
173
+ generateUrl(PERMISSIONS_LIST_URL),
174
+ ]);
175
+ try {
176
+ const response = await instance.get(url);
177
+ const { items, next } = applyTransform(response.data, [
178
+ snakeToCamel(),
179
+ merge(getDefaultGetListResponse()),
180
+ ]);
181
+ return {
182
+ items,
183
+ next,
184
+ };
185
+ } catch (err) {
186
+ throw applyTransform(err, [notify]);
187
+ }
188
+ };
189
+
190
+ export const RolesAPI = {
191
+ getList: getRoleList,
192
+ get: getRole,
193
+ add: addRole,
194
+ update: updateRole,
195
+ delete: deleteRole,
196
+ getLookup: getRolesLookup,
197
+
198
+ getExtendedRoles,
199
+ getPermissionsOptions,
200
+ };
@@ -0,0 +1,110 @@
1
+ import { SkillServiceApiFactory } 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 skillService = SkillServiceApiFactory(configuration, '', instance);
22
+
23
+ const getSkillsList = 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 skillService.searchSkill(
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 getSkill = async ({ itemId: id }) => {
52
+ try {
53
+ const response = await skillService.readSkill(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 addSkill = async ({ itemInstance }) => {
63
+ const item = applyTransform(itemInstance, [
64
+ sanitize(fieldsToSend),
65
+ camelToSnake(),
66
+ ]);
67
+ try {
68
+ const response = await skillService.createSkill(item);
69
+ return applyTransform(response.data, [snakeToCamel()]);
70
+ } catch (err) {
71
+ throw applyTransform(err, [notify]);
72
+ }
73
+ };
74
+
75
+ const updateSkill = async ({ itemInstance, itemId: id }) => {
76
+ const item = applyTransform(itemInstance, [
77
+ sanitize(fieldsToSend),
78
+ camelToSnake(),
79
+ ]);
80
+ try {
81
+ const response = await skillService.updateSkill(id, item);
82
+ return applyTransform(response.data, [snakeToCamel()]);
83
+ } catch (err) {
84
+ throw applyTransform(err, [notify]);
85
+ }
86
+ };
87
+
88
+ const deleteSkill = async ({ id }) => {
89
+ try {
90
+ const response = await skillService.deleteSkill(id);
91
+ return applyTransform(response.data, []);
92
+ } catch (err) {
93
+ throw applyTransform(err, [notify]);
94
+ }
95
+ };
96
+
97
+ const getSkillsLookup = (params) =>
98
+ getSkillsList({
99
+ ...params,
100
+ fields: params.fields || ['id', 'name'],
101
+ });
102
+
103
+ export const SkillsAPI = {
104
+ getList: getSkillsList,
105
+ get: getSkill,
106
+ add: addSkill,
107
+ update: updateSkill,
108
+ delete: deleteSkill,
109
+ getLookup: getSkillsLookup,
110
+ };