@webitel/ui-sdk 24.8.11 → 24.8.12

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webitel/ui-sdk",
3
- "version": "24.8.11",
3
+ "version": "24.8.12",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "dev": "vite",
@@ -0,0 +1,5 @@
1
+ import callTranscript from './transcript/callTranscript.js';
2
+
3
+ export {
4
+ callTranscript,
5
+ }
@@ -0,0 +1,91 @@
1
+ import { FileTranscriptServiceApiFactory } from 'webitel-sdk';
2
+ import {
3
+ getDefaultGetListResponse,
4
+ getDefaultInstance,
5
+ getDefaultOpenAPIConfig,
6
+ } from '../../defaults/index.js';
7
+ import applyTransform, {
8
+ camelToSnake,
9
+ merge,
10
+ notify,
11
+ snakeToCamel,
12
+ } from '../../transformers/index.js';
13
+
14
+ const instance = getDefaultInstance();
15
+ const configuration = getDefaultOpenAPIConfig();
16
+
17
+ const transcriptService = new FileTranscriptServiceApiFactory(configuration, '', instance);
18
+
19
+ const getTranscript = async ({
20
+ id,
21
+ page = 1,
22
+ size = 10000,
23
+ }) => {
24
+ try {
25
+ const response = await transcriptService.getFileTranscriptPhrases(id, page, size);
26
+ const { items } = applyTransform(response.data, [
27
+ snakeToCamel(),
28
+ merge(getDefaultGetListResponse()),
29
+ ]);
30
+ return items;
31
+ } catch (err) {
32
+ throw applyTransform(err, [
33
+ notify,
34
+ ]);
35
+ }
36
+ };
37
+
38
+
39
+ const createTranscript = async ({ callId }) => {
40
+ const preRequestHandler = (callId) => {
41
+ return Array.isArray(callId) ? callId : [callId];
42
+ }
43
+
44
+ const uuid = applyTransform(callId, [
45
+ preRequestHandler,
46
+ camelToSnake(),
47
+ ]);
48
+
49
+ try {
50
+ const response = await transcriptService.createFileTranscript({ uuid });
51
+ return applyTransform(response.data, [
52
+ snakeToCamel(),
53
+ ]);
54
+ } catch (err) {
55
+ throw applyTransform(err, [
56
+ notify,
57
+ ]);
58
+ }
59
+ };
60
+
61
+ const deleteTranscript = async (item) => {
62
+ const preRequestHandler = ({ fileId, callId }) => {
63
+ if (fileId) {
64
+ return { id: Array.isArray(fileId) ? fileId : [fileId] };
65
+ } else {
66
+ return { uuid: Array.isArray(callId) ? callId : [callId] };
67
+ }
68
+ }
69
+
70
+ const body = applyTransform(item, [
71
+ preRequestHandler,
72
+ camelToSnake(),
73
+ ]);
74
+
75
+ try {
76
+ const response = await transcriptService.deleteFileTranscript(body);
77
+ return applyTransform(response.data, []);
78
+ } catch (err) {
79
+ throw applyTransform(err, [
80
+ notify,
81
+ ]);
82
+ }
83
+ };
84
+
85
+ const CallTranscriptAPI = {
86
+ create: createTranscript,
87
+ get: getTranscript,
88
+ delete: deleteTranscript,
89
+ };
90
+
91
+ export default CallTranscriptAPI;