@webitel/ui-sdk 24.12.121 → 24.12.122

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 (74) hide show
  1. package/dist/ui-sdk.js +1 -1
  2. package/dist/ui-sdk.umd.cjs +1 -1
  3. package/package.json +1 -1
  4. package/src/api/clients/caseCloseReasonGroups/caseCloseReasonGroups.js +130 -0
  5. package/src/api/clients/caseCloseReasons/caseCloseReasons.js +130 -0
  6. package/src/api/clients/casePriorities/casePriorities.js +130 -0
  7. package/src/api/clients/caseServiceCatalogs/service-catalogs.js +198 -0
  8. package/src/api/clients/caseServices/services.js +174 -0
  9. package/src/api/clients/caseSources/caseSources.js +138 -0
  10. package/src/api/clients/caseStatusConditions/caseStatusConditions.js +167 -0
  11. package/src/api/clients/caseStatuses/caseStatuses.js +121 -0
  12. package/src/api/clients/contactGroups/contactGroups.js +162 -0
  13. package/src/api/clients/index.js +16 -0
  14. package/src/api/clients/slaConditions/slaConditions.js +167 -0
  15. package/src/api/clients/slas/slas.js +129 -0
  16. package/src/locale/en/en.js +104 -30
  17. package/src/locale/ru/ru.js +105 -31
  18. package/src/locale/ua/ua.js +105 -31
  19. package/src/modules/Filters/v2/filters/components/config/dynamic-filter-config-form.vue +3 -2
  20. package/src/modules/Filters/v2/filters/components/values/_shared/date-time-filter/date-time-filter-value-field.vue +53 -0
  21. package/src/modules/Filters/v2/filters/components/values/actual-reaction-time/actual-reaction-time-filter-value-field.vue +18 -0
  22. package/src/modules/Filters/v2/filters/components/values/actual-reaction-time/actual-reaction-time-filter-value-preview.vue +42 -0
  23. package/src/modules/Filters/v2/filters/components/values/actual-resolution-time/actual-resolution-time-filter-value-field.vue +18 -0
  24. package/src/modules/Filters/v2/filters/components/values/actual-resolution-time/actual-resolution-time-filter-value-preview.vue +42 -0
  25. package/src/modules/Filters/v2/filters/components/values/assignee/assignee-filter-value-field.vue +74 -0
  26. package/src/modules/Filters/v2/filters/components/values/assignee/assignee-filter-value-preview.vue +40 -0
  27. package/src/modules/Filters/v2/filters/components/values/assignee/config.js +4 -0
  28. package/src/modules/Filters/v2/filters/components/values/author/author-filter-value-field.vue +56 -0
  29. package/src/modules/Filters/v2/filters/components/values/author/author-filter-value-preview.vue +32 -0
  30. package/src/modules/Filters/v2/filters/components/values/author/config.js +4 -0
  31. package/src/modules/Filters/v2/filters/components/values/close-reason-groups-case/close-reason-groups-case-filter-value-field.vue +99 -0
  32. package/src/modules/Filters/v2/filters/components/values/close-reason-groups-case/close-reason-groups-case-filter-value-preview.vue +32 -0
  33. package/src/modules/Filters/v2/filters/components/values/close-reason-groups-case/config.js +6 -0
  34. package/src/modules/Filters/v2/filters/components/values/contact-group/config.js +4 -0
  35. package/src/modules/Filters/v2/filters/components/values/contact-group/contact-group-filter-value-field.vue +74 -0
  36. package/src/modules/Filters/v2/filters/components/values/contact-group/contact-group-filter-value-preview.vue +43 -0
  37. package/src/modules/Filters/v2/filters/components/values/has-attachment/has-attachment-filter-value-field.vue +43 -0
  38. package/src/modules/Filters/v2/filters/components/values/has-attachment/has-attachment-filter-value-preview.vue +22 -0
  39. package/src/modules/Filters/v2/filters/components/values/has-file/has-file-filter-value-field.vue +1 -1
  40. package/src/modules/Filters/v2/filters/components/values/has-transcription/has-transcription-filter-value-field.vue +1 -1
  41. package/src/modules/Filters/v2/filters/components/values/impacted/config.js +4 -0
  42. package/src/modules/Filters/v2/filters/components/values/impacted/impacted-filter-value-field.vue +56 -0
  43. package/src/modules/Filters/v2/filters/components/values/impacted/impacted-filter-value-preview.vue +32 -0
  44. package/src/modules/Filters/v2/filters/components/values/index.js +77 -5
  45. package/src/modules/Filters/v2/filters/components/values/priority-case/config.js +5 -0
  46. package/src/modules/Filters/v2/filters/components/values/priority-case/priority-case-filter-value-field.vue +57 -0
  47. package/src/modules/Filters/v2/filters/components/values/priority-case/priority-case-filter-value-preview.vue +32 -0
  48. package/src/modules/Filters/v2/filters/components/values/rated/rated-filter-value-field.vue +1 -1
  49. package/src/modules/Filters/v2/filters/components/values/rating/rating-from-to-filter-value-field.vue +89 -0
  50. package/src/modules/Filters/v2/filters/components/values/rating/rating-from-to-filter-value-preview.vue +37 -0
  51. package/src/modules/Filters/v2/filters/components/values/reaction-time/reaction-time-filter-value-field.vue +18 -0
  52. package/src/modules/Filters/v2/filters/components/values/reaction-time/reaction-time-filter-value-preview.vue +42 -0
  53. package/src/modules/Filters/v2/filters/components/values/reporter/config.js +4 -0
  54. package/src/modules/Filters/v2/filters/components/values/reporter/reporter-filter-value-field.vue +56 -0
  55. package/src/modules/Filters/v2/filters/components/values/reporter/reporter-filter-value-preview.vue +32 -0
  56. package/src/modules/Filters/v2/filters/components/values/resolution-time/resolution-time-filter-value-field.vue +18 -0
  57. package/src/modules/Filters/v2/filters/components/values/resolution-time/resolution-time-filter-value-preview.vue +42 -0
  58. package/src/modules/Filters/v2/filters/components/values/service-case/config.js +6 -0
  59. package/src/modules/Filters/v2/filters/components/values/service-case/service-case-filter-value-field.vue +113 -0
  60. package/src/modules/Filters/v2/filters/components/values/service-case/service-case-filter-value-preview.vue +15 -0
  61. package/src/modules/Filters/v2/filters/components/values/sla/config.js +4 -0
  62. package/src/modules/Filters/v2/filters/components/values/sla/sla-filter-value-field.vue +57 -0
  63. package/src/modules/Filters/v2/filters/components/values/sla/sla-filter-value-preview.vue +32 -0
  64. package/src/modules/Filters/v2/filters/components/values/sla-condition/config.js +6 -0
  65. package/src/modules/Filters/v2/filters/components/values/sla-condition/sla-condition-filter-value-field.vue +98 -0
  66. package/src/modules/Filters/v2/filters/components/values/sla-condition/sla-condition-filter-value-preview.vue +37 -0
  67. package/src/modules/Filters/v2/filters/components/values/source-case/config.js +5 -0
  68. package/src/modules/Filters/v2/filters/components/values/source-case/source-case-filter-value-field.vue +57 -0
  69. package/src/modules/Filters/v2/filters/components/values/source-case/source-case-filter-value-preview.vue +32 -0
  70. package/src/modules/Filters/v2/filters/components/values/status-case/config.js +6 -0
  71. package/src/modules/Filters/v2/filters/components/values/status-case/status-case-filter-value-field.vue +99 -0
  72. package/src/modules/Filters/v2/filters/components/values/status-case/status-case-filter-value-preview.vue +37 -0
  73. package/src/modules/Filters/v2/filters/components/values/talk-duration/talk-duration-filter-value-field.vue +1 -1
  74. package/src/modules/Filters/v2/filters/components/values/total-duration/total-duration-filter-value-field.vue +1 -1
@@ -0,0 +1,162 @@
1
+ import { GroupsApiFactory } from 'webitel-sdk';
2
+
3
+ import {
4
+ getDefaultGetListResponse,
5
+ getDefaultGetParams,
6
+ getDefaultInstance,
7
+ getDefaultOpenAPIConfig,
8
+ } from '../../defaults/index.js';
9
+ import applyTransform, {
10
+ camelToSnake,
11
+ merge,
12
+ mergeEach,
13
+ notify,
14
+ sanitize,
15
+ snakeToCamel,
16
+ starToSearch,
17
+ } from '../../transformers/index.js';
18
+ import { generatePermissionsApi } from '../_shared/generatePermissionsApi.js';
19
+
20
+ const instance = getDefaultInstance();
21
+ const configuration = getDefaultOpenAPIConfig();
22
+
23
+ const contactGroupsService = new GroupsApiFactory(configuration, '', instance);
24
+
25
+ const baseUrl = '/contacts/groups';
26
+
27
+ const fieldsToSend = [
28
+ 'name',
29
+ 'description',
30
+ 'enabled',
31
+ 'type',
32
+ 'default_group',
33
+ ];
34
+
35
+ const getContactGroupsList = async (params) => {
36
+ const fieldsToSend = [
37
+ 'page',
38
+ 'size',
39
+ 'q',
40
+ 'sort',
41
+ 'fields',
42
+ 'type',
43
+ 'enabled',
44
+ 'id',
45
+ ];
46
+ const defaultObject = {
47
+ enabled: false,
48
+ };
49
+
50
+ const { page, size, fields, sort, id, q, name, type, enabled } =
51
+ applyTransform(params, [
52
+ merge(getDefaultGetParams()),
53
+ starToSearch('search'),
54
+ (params) => ({ ...params, q: params.search }),
55
+ sanitize(fieldsToSend),
56
+ camelToSnake(),
57
+ ]);
58
+
59
+ try {
60
+ const response = await contactGroupsService.listGroups(
61
+ page,
62
+ size,
63
+ fields,
64
+ sort,
65
+ id,
66
+ q,
67
+ name,
68
+ type,
69
+ enabled,
70
+ );
71
+ const { items, next } = applyTransform(response.data, [
72
+ merge(getDefaultGetListResponse()),
73
+ ]);
74
+ return {
75
+ items: applyTransform(items, [mergeEach(defaultObject)]),
76
+ next,
77
+ };
78
+ } catch (err) {
79
+ throw applyTransform(err, [notify]);
80
+ }
81
+ };
82
+
83
+ const getContactGroup = async ({ itemId: id }) => {
84
+ const itemResponseHandler = (item) => item.group;
85
+
86
+ try {
87
+ const response = await contactGroupsService.locateGroup(id, fieldsToSend);
88
+ return applyTransform(response.data, [snakeToCamel(), itemResponseHandler]);
89
+ } catch (err) {
90
+ throw applyTransform(err, [notify]);
91
+ }
92
+ };
93
+
94
+ const addStaticContactGroup = async ({ itemInstance }) => {
95
+ const item = applyTransform(itemInstance, [
96
+ camelToSnake(),
97
+ sanitize(fieldsToSend),
98
+ ]);
99
+ try {
100
+ const response = await contactGroupsService.createGroup(item);
101
+ return applyTransform(response.data, [snakeToCamel()]);
102
+ } catch (err) {
103
+ throw applyTransform(err, [notify]);
104
+ }
105
+ };
106
+
107
+ const updateStaticContactGroup = async ({ itemInstance, itemId: id }) => {
108
+ const item = applyTransform(itemInstance, [
109
+ camelToSnake(),
110
+ sanitize(fieldsToSend),
111
+ ]);
112
+
113
+ try {
114
+ const response = await contactGroupsService.updateGroup(id, item);
115
+ return applyTransform(response.data, [snakeToCamel()]);
116
+ } catch (err) {
117
+ throw applyTransform(err, [notify]);
118
+ }
119
+ };
120
+
121
+ const patchStaticContactGroup = async ({ id, changes }) => {
122
+ const item = applyTransform(changes, [
123
+ camelToSnake(),
124
+ sanitize(fieldsToSend),
125
+ ]);
126
+
127
+ try {
128
+ const response = await contactGroupsService.updateGroup2(id, item);
129
+ return applyTransform(response.data, [snakeToCamel()]);
130
+ } catch (err) {
131
+ throw applyTransform(err, [notify]);
132
+ }
133
+ };
134
+
135
+ const deleteStaticContactGroup = async ({ id }) => {
136
+ try {
137
+ const response = await contactGroupsService.deleteGroup(id);
138
+ return applyTransform(response.data, []);
139
+ } catch (err) {
140
+ throw applyTransform(err, [notify]);
141
+ }
142
+ };
143
+
144
+ const getLookup = (params) =>
145
+ getContactGroupsList({
146
+ ...params,
147
+ fields: params.fields || ['id', 'name'],
148
+ });
149
+
150
+ const ContactGroupsAPI = {
151
+ getList: getContactGroupsList,
152
+ get: getContactGroup,
153
+ add: addStaticContactGroup,
154
+ update: updateStaticContactGroup,
155
+ patch: patchStaticContactGroup,
156
+ delete: deleteStaticContactGroup,
157
+ getLookup,
158
+
159
+ ...generatePermissionsApi(baseUrl),
160
+ };
161
+
162
+ export default ContactGroupsAPI;
@@ -15,7 +15,15 @@ import roles from './roles/roles.js';
15
15
  import skills from './skills/skills.js';
16
16
  import teams from './teams/teams.js';
17
17
  import users from './users/users.js';
18
+ import caseSources from './caseSources/caseSources.js';
19
+ import casePriorities from './casePriorities/casePriorities.js';
18
20
  import { contactChatMessagesHistory, contacts } from './сontacts/index.js';
21
+ import slas from './slas/slas.js';
22
+ import caseCloseReasonGroups from './caseCloseReasonGroups/caseCloseReasonGroups.js';
23
+ import caseCloseReasons from './caseCloseReasons/caseCloseReasons.js';
24
+ import caseStatuses from './caseStatuses/caseStatuses.js';
25
+ import caseStatusConditions from './caseStatusConditions/caseStatusConditions.js';
26
+ import contactGroups from './contactGroups/contactGroups.js';
19
27
 
20
28
  export {
21
29
  agents,
@@ -37,4 +45,12 @@ export {
37
45
  configurations,
38
46
  contacts,
39
47
  contactChatMessagesHistory,
48
+ caseSources,
49
+ casePriorities,
50
+ slas,
51
+ caseCloseReasonGroups,
52
+ caseCloseReasons,
53
+ caseStatuses,
54
+ caseStatusConditions,
55
+ contactGroups,
40
56
  };
@@ -0,0 +1,167 @@
1
+ import { SLAConditionsApiFactory } from 'webitel-sdk';
2
+
3
+ import {
4
+ getDefaultGetListResponse,
5
+ getDefaultGetParams,
6
+ getDefaultInstance,
7
+ getDefaultOpenAPIConfig,
8
+ } from '../../defaults/index.js';
9
+ import applyTransform, {
10
+ camelToSnake,
11
+ merge,
12
+ notify,
13
+ sanitize,
14
+ snakeToCamel,
15
+ starToSearch,
16
+ } from '../../transformers/index.js';
17
+
18
+ const instance = getDefaultInstance();
19
+ const configuration = getDefaultOpenAPIConfig();
20
+
21
+ const slaConditionsService = new SLAConditionsApiFactory(
22
+ configuration,
23
+ '',
24
+ instance,
25
+ );
26
+
27
+ const fieldsToSend = [
28
+ 'name',
29
+ 'priorities',
30
+ 'sla_id',
31
+ 'reaction_time',
32
+ 'resolution_time',
33
+ ];
34
+
35
+ const getConditionsList = async ({ parentId, ...rest }) => {
36
+ const fieldsToSend = [
37
+ 'page',
38
+ 'size',
39
+ 'q',
40
+ 'sort',
41
+ 'fields',
42
+ 'id',
43
+ 'slaConditionId',
44
+ 'priorityId',
45
+ ];
46
+
47
+ const {
48
+ page,
49
+ size,
50
+ fields,
51
+ sort,
52
+ id,
53
+ q,
54
+ sla_condition_id: slaConditionId,
55
+ priority_id: priorityId,
56
+ } = applyTransform(rest, [
57
+ merge(getDefaultGetParams()),
58
+ starToSearch('search'),
59
+ (params) => ({ ...params, q: params.search }),
60
+ sanitize(fieldsToSend),
61
+ camelToSnake(),
62
+ ]);
63
+
64
+ try {
65
+ const response = await slaConditionsService.listSLAConditions(
66
+ parentId,
67
+ page,
68
+ size,
69
+ fields,
70
+ sort,
71
+ id,
72
+ q,
73
+ slaConditionId,
74
+ priorityId,
75
+ );
76
+ const { items, next } = applyTransform(response.data, [
77
+ merge(getDefaultGetListResponse()),
78
+ ]);
79
+ return {
80
+ items: applyTransform(items, [snakeToCamel()]),
81
+ next,
82
+ };
83
+ } catch (err) {
84
+ throw applyTransform(err, [notify]);
85
+ }
86
+ };
87
+
88
+ const getCondition = async ({ parentId, itemId: id }) => {
89
+ const itemResponseHandler = (item) => {
90
+ return item.slaCondition;
91
+ };
92
+
93
+ try {
94
+ const response = await slaConditionsService.locateSLACondition(
95
+ parentId,
96
+ id,
97
+ fieldsToSend,
98
+ );
99
+ return applyTransform(response.data, [snakeToCamel(), itemResponseHandler]);
100
+ } catch (err) {
101
+ throw applyTransform(err, [notify]);
102
+ }
103
+ };
104
+
105
+ const updateCondition = async ({ itemInstance, itemId: id }) => {
106
+ const item = applyTransform(itemInstance, [
107
+ camelToSnake(),
108
+ sanitize(fieldsToSend),
109
+ ]);
110
+
111
+ try {
112
+ const response = await slaConditionsService.updateSLACondition(
113
+ itemInstance.slaId,
114
+ id,
115
+ item,
116
+ );
117
+ return applyTransform(response.data, [snakeToCamel()]);
118
+ } catch (err) {
119
+ throw applyTransform(err, [notify]);
120
+ }
121
+ };
122
+
123
+ const addCondition = async ({ itemInstance, parentId }) => {
124
+ const item = applyTransform(itemInstance, [
125
+ camelToSnake(),
126
+ sanitize(fieldsToSend),
127
+ ]);
128
+
129
+ try {
130
+ const response = await slaConditionsService.createSLACondition(
131
+ parentId,
132
+ item,
133
+ );
134
+ return applyTransform(response.data, [snakeToCamel()]);
135
+ } catch (err) {
136
+ throw applyTransform(err, [notify]);
137
+ }
138
+ };
139
+
140
+ const deleteCondition = async ({ id, parentId }) => {
141
+ try {
142
+ const response = await slaConditionsService.deleteSLACondition(
143
+ parentId,
144
+ id,
145
+ );
146
+ return applyTransform(response.data, []);
147
+ } catch (err) {
148
+ throw applyTransform(err, [notify]);
149
+ }
150
+ };
151
+
152
+ const getLookup = async (params) =>
153
+ getConditionsList({
154
+ ...params,
155
+ fields: params.fields || ['id', 'name'],
156
+ });
157
+
158
+ const SLAConditionsAPI = {
159
+ getList: getConditionsList,
160
+ get: getCondition,
161
+ update: updateCondition,
162
+ delete: deleteCondition,
163
+ add: addCondition,
164
+ getLookup,
165
+ };
166
+
167
+ export default SLAConditionsAPI;
@@ -0,0 +1,129 @@
1
+ import {
2
+ getDefaultGetListResponse,
3
+ getDefaultGetParams,
4
+ getDefaultInstance,
5
+ getDefaultOpenAPIConfig,
6
+ } from '../../defaults/index.js';
7
+ import applyTransform, {
8
+ camelToSnake,
9
+ merge,
10
+ notify,
11
+ sanitize,
12
+ snakeToCamel,
13
+ starToSearch,
14
+ } from '../../transformers/index.js';
15
+ import { SLAsApiFactory } from 'webitel-sdk';
16
+
17
+ const instance = getDefaultInstance();
18
+ const configuration = getDefaultOpenAPIConfig();
19
+
20
+ const slaService = new SLAsApiFactory(configuration, '', instance);
21
+
22
+ const fieldsToSend = ['name', 'description', 'valid_from', 'valid_to', 'calendar', 'reaction_time', 'resolution_time'];
23
+
24
+ const getSlasList = async (params) => {
25
+ const fieldsToSend = ['page', 'size', 'q', 'sort', 'fields', 'id'];
26
+
27
+ const {
28
+ page,
29
+ size,
30
+ fields,
31
+ sort,
32
+ id,
33
+ q,
34
+ } = applyTransform(params, [
35
+ merge(getDefaultGetParams()),
36
+ starToSearch('search'),
37
+ (params) => ({ ...params, q: params.search }),
38
+ sanitize(fieldsToSend),
39
+ camelToSnake(),
40
+ ]);
41
+ try {
42
+ const response = await slaService.listSLAs(
43
+ page,
44
+ size,
45
+ fields,
46
+ sort,
47
+ id,
48
+ q,
49
+ );
50
+ const { items, next } = applyTransform(response.data, [
51
+ merge(getDefaultGetListResponse()),
52
+ ]);
53
+ return {
54
+ items: applyTransform(items, []),
55
+ next,
56
+ };
57
+ } catch (err) {
58
+ throw applyTransform(err, [notify]);
59
+ }
60
+ };
61
+
62
+ const getSla = async ({ itemId: id }) => {
63
+ const itemResponseHandler = (item) => {
64
+ return item.sla;
65
+ };
66
+
67
+ try {
68
+ const response = await slaService.locateSLA(id, fieldsToSend);
69
+ return applyTransform(response.data, [
70
+ snakeToCamel(),
71
+ itemResponseHandler,
72
+ ]);
73
+ } catch (err) {
74
+ throw applyTransform(err, [notify]);
75
+ }
76
+ };
77
+
78
+ const addSla = async ({ itemInstance }) => {
79
+ const item = applyTransform(itemInstance, [
80
+ camelToSnake(),
81
+ sanitize(fieldsToSend),
82
+ ]);
83
+ try {
84
+ const response = await slaService.createSLA(item);
85
+ return applyTransform(response.data, [
86
+ snakeToCamel()
87
+ ]);
88
+ } catch (err) {
89
+ throw applyTransform(err, [notify]);
90
+ }
91
+ };
92
+
93
+ const updateSla = async ({ itemInstance, itemId: id }) => {
94
+ const item = applyTransform(itemInstance, [
95
+ camelToSnake(),
96
+ sanitize(fieldsToSend)]);
97
+ try {
98
+ const response = await slaService.updateSLA(id, item);
99
+ return applyTransform(response.data, [snakeToCamel()]);
100
+ } catch (err) {
101
+ throw applyTransform(err, [notify]);
102
+ }
103
+ };
104
+
105
+ const deleteSla = async ({ id }) => {
106
+ try {
107
+ const response = await slaService.deleteSLA(id);
108
+ return applyTransform(response.data, []);
109
+ } catch (err) {
110
+ throw applyTransform(err, [notify]);
111
+ }
112
+ };
113
+
114
+ const getSlasLookup = (params) =>
115
+ getSlasList({
116
+ ...params,
117
+ fields: params.fields || ['id', 'name'],
118
+ });
119
+
120
+ const SlasAPI = {
121
+ getList: getSlasList,
122
+ getLookup: getSlasLookup,
123
+ get: getSla,
124
+ add: addSla,
125
+ update: updateSla,
126
+ delete: deleteSla,
127
+ }
128
+
129
+ export default SlasAPI;
@@ -80,6 +80,8 @@ export default {
80
80
  read: 'Read',
81
81
  create: 'Create',
82
82
  draggable: 'Draggable',
83
+ unassigned: 'Unassigned',
84
+ showUnassigned: 'Show unassigned',
83
85
  },
84
86
  // yak zhe ya zaebalsya povtoriaty odni i ti sami slova!!!!
85
87
  vocabulary: {
@@ -153,11 +155,11 @@ export default {
153
155
  hasOption: 'Has option',
154
156
  hasRecording: 'Has recording',
155
157
  amdResult: 'AMD result',
156
- evaluation: 'Evaluation',
157
158
  ratedBy: 'Rated by',
158
159
  talkDuration: 'Talk duration',
159
160
  totalDuration: 'Total duration',
160
161
  transcription: 'Transcription',
162
+ attachment: 'Attachment | Attachments',
161
163
  queue: {
162
164
  queue: 'Queue | Queues',
163
165
  type: {
@@ -227,6 +229,24 @@ export default {
227
229
  [CallDirection.Outbound]: 'Outbound',
228
230
  },
229
231
  },
232
+ cases: {
233
+ status: 'Status',
234
+ source: 'Source',
235
+ author: 'Author',
236
+ reporter: 'Reporter',
237
+ impacted: 'Impacted',
238
+ assignee: 'Assignee',
239
+ group: 'Group',
240
+ reason: 'Reason | Reasons',
241
+ rating: 'Rating',
242
+ service: 'Service | Services',
243
+ appliedSLA: 'Applied SLA',
244
+ appliedCondition: 'Applied condition',
245
+ reactionTime: 'Reaction time',
246
+ resolutionTime: 'Resolution time',
247
+ actualReactionTime: 'Actual reaction time',
248
+ actualResolutionTime: 'Actual resolution time',
249
+ },
230
250
  // describes Webitel FRONTEND applications + their navs
231
251
  WebitelApplications: {
232
252
  [WebitelApplications.AGENT]: { name: 'Agent Workspace' },
@@ -478,67 +498,121 @@ export default {
478
498
  filterLabel: ({ linked }) => {
479
499
  return linked('vocabulary.labels');
480
500
  },
481
- agent: ({ linked }) => {
501
+ actualReactionTime: ({ linked }) => {
502
+ return linked('cases.actualReactionTime');
503
+ },
504
+ actualResolutionTime: ({ linked }) => {
505
+ return linked('cases.actualResolutionTime');
506
+ },
507
+ agent : ({ linked }) => {
482
508
  return linked('objects.agent.agent');
483
509
  },
484
- amdResult: ({ linked }) => {
510
+ amdResult : ({ linked }) => {
485
511
  return linked('objects.amdResult');
486
512
  },
487
- contact: ({ linked }) => {
513
+ assignee: ({ linked }) => {
514
+ return linked('cases.assignee');
515
+ },
516
+ author: ({ linked }) => {
517
+ return linked('cases.author');
518
+ },
519
+ cause : ({ linked }) => {
520
+ return linked('objects.hangupCause');
521
+ },
522
+ closeReasonGroupsCase: ({ linked }) => {
523
+ return linked('cases.reason');
524
+ },
525
+ contact : ({ linked }) => {
488
526
  return linked('vocabulary.contact');
489
527
  },
490
- createdAtFrom: ({ linked }) => {
528
+ contactGroup: ({ linked }) => {
529
+ return linked('cases.group');
530
+ },
531
+ createdAtFrom : ({ linked }) => {
491
532
  return linked('reusable.from');
492
533
  },
493
- createdAtTo: ({ linked }) => {
534
+ createdAtTo : ({ linked }) => {
494
535
  return linked('reusable.to');
495
536
  },
496
- direction: ({ linked }) => {
497
- return linked('objects.direction');
537
+ direction : ({ linked }) => {
538
+ return linked('calls.direction');
498
539
  },
499
- rated: ({ linked }) => {
500
- return linked('objects.evaluation');
501
- },
502
- gateway: ({ linked }) => {
503
- return linked('objects.gateway');
540
+ gateway : ({ linked }) => {
541
+ return linked('vocabulary.gateway');
504
542
  },
505
- grantee: ({ linked }) => {
543
+ grantee : ({ linked }) => {
506
544
  return linked('objects.grantee');
507
545
  },
508
- cause: ({ linked }) => {
509
- return linked('objects.hangupCause');
546
+ hasAttachment: ({ linked }) => {
547
+ return linked('objects.attachment');
548
+ },
549
+ hasFile: ({ linked }) => {
550
+ return linked('objects.hasRecording');
551
+ },
552
+ hasTranscription: ({ linked }) => {
553
+ return linked('objects.transcription');
510
554
  },
511
- queue: ({ linked }) => {
555
+ impacted: ({ linked }) => {
556
+ return linked('cases.impacted');
557
+ },
558
+ priorityCase: ({ linked }) => {
559
+ return linked('vocabulary.priority');
560
+ },
561
+ queue : ({ linked }) => {
512
562
  return linked('objects.queue.queue');
513
563
  },
514
- ratedBy: ({ linked }) => {
564
+ rated: ({ linked }) => {
565
+ return linked('objects.rated');
566
+ },
567
+ ratedBy : ({ linked }) => {
515
568
  return linked('objects.ratedBy');
516
569
  },
517
- hasFile: ({ linked }) => {
518
- return linked('objects.hasRecording');
570
+ rating: ({ linked }) => {
571
+ return linked('cases.rating');
572
+ },
573
+ reactionTime: ({ linked }) => {
574
+ return linked('cases.reactionTime');
575
+ },
576
+ reporter: ({ linked }) => {
577
+ return linked('cases.reporter');
578
+ },
579
+ resolutionTime: ({ linked }) => {
580
+ return linked('cases.resolutionTime');
519
581
  },
520
- score: ({ linked }) => {
582
+ score : ({ linked }) => {
521
583
  return linked('webitelUI.auditForm.score');
522
584
  },
523
- tags: ({ linked }) => {
585
+ serviceCase: ({ linked }) => {
586
+ return linked('cases.service');
587
+ },
588
+ sla: ({ linked }) => {
589
+ return linked('cases.appliedSLA');
590
+ },
591
+ slaCondition: ({ linked }) => {
592
+ return linked('cases.appliedCondition');
593
+ },
594
+ sourceCase: ({ linked }) => {
595
+ return linked('cases.source');
596
+ },
597
+ statusCase: ({ linked }) => {
598
+ return linked('cases.status');
599
+ },
600
+ tag : ({ linked }) => {
524
601
  return linked('vocabulary.tag');
525
602
  },
526
- talkSec: ({ linked }) => {
603
+ talkDuration: ({ linked }) => {
527
604
  return linked('objects.talkDuration');
528
605
  },
529
- team: ({ linked }) => {
606
+ team : ({ linked }) => {
530
607
  return linked('objects.team');
531
608
  },
532
- duration: ({ linked }) => {
609
+ totalDuration: ({ linked }) => {
533
610
  return linked('objects.totalDuration');
534
611
  },
535
- hasTranscription: ({ linked }) => {
536
- return linked('objects.transcription');
537
- },
538
- user: ({ linked }) => {
612
+ user : ({ linked }) => {
539
613
  return linked('objects.user');
540
614
  },
541
- variable: ({ linked }) => {
615
+ variable : ({ linked }) => {
542
616
  return linked('vocabulary.variables');
543
617
  },
544
618
  },