@webitel/ui-sdk 26.4.17 → 26.4.19

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 (185) hide show
  1. package/dist/displayText-Cbh4IOfM.js +5 -0
  2. package/dist/{index-eEFER0lI.js → index-CeADjYK9.js} +1 -1
  3. package/dist/{index-B_bOPX3o.js → index-DZ_bvNVs.js} +1 -1
  4. package/dist/{install-C_4PcYy4.js → install-Dofcp90y.js} +1749 -1752
  5. package/dist/{isObject-Bc_zejYi.js → isObject-B2zd2O3f.js} +1 -1
  6. package/dist/ui-sdk.css +1 -1
  7. package/dist/ui-sdk.js +1 -1
  8. package/dist/ui-sdk.umd.cjs +232 -232
  9. package/dist/{useVidstackSrc-BjBi-Z6a.js → useVidstackSrc-D9uo15mF.js} +3 -4
  10. package/dist/{vidstack-Bq6c3Bam-Do_GZqV0.js → vidstack-Bq6c3Bam-Bs73fRdp.js} +3 -3
  11. package/dist/{vidstack-D2pY00kU-DtEQuJNJ.js → vidstack-D2pY00kU-BVC5bxHL.js} +3 -3
  12. package/dist/{vidstack-DDXt6fpN-BjUme5OE.js → vidstack-DDXt6fpN-DA-lnlhX.js} +2 -2
  13. package/dist/{vidstack-D_-9AA6_-BUgV5EDC.js → vidstack-D_-9AA6_-C0QZLaX5.js} +2 -2
  14. package/dist/{vidstack-DqAw8m9J-D5-emHfz.js → vidstack-DqAw8m9J-DAs7LwX_.js} +1 -1
  15. package/dist/{vidstack-audio-DmysFuAQ.js → vidstack-audio-BrbZotHa.js} +2 -2
  16. package/dist/{vidstack-dash-CF4d8BuX.js → vidstack-dash-KNjyvq2R.js} +4 -4
  17. package/dist/{vidstack-google-cast-CNPyXY9S.js → vidstack-google-cast-DMZQ1jRD.js} +4 -4
  18. package/dist/{vidstack-hls-BLaXkLiF.js → vidstack-hls-BfOysul0.js} +4 -4
  19. package/dist/{vidstack-video-v_RKZWR5.js → vidstack-video-PWMSQ3Gk.js} +3 -3
  20. package/dist/{vidstack-vimeo-BCNYIpmz.js → vidstack-vimeo-C5Khtd48.js} +4 -4
  21. package/dist/{vidstack-youtube-C1DaWOJU.js → vidstack-youtube-CPcpsir2.js} +3 -3
  22. package/dist/{wt-action-bar-Ckg4xWY1.js → wt-action-bar-By55sdZf.js} +1 -1
  23. package/dist/{wt-button-select-DHqtUP4R.js → wt-button-select-C34W0lYV.js} +1 -1
  24. package/dist/{wt-chat-emoji-BVMxNx8W.js → wt-chat-emoji-DjgWXA_2.js} +2 -2
  25. package/dist/{wt-confirm-dialog-BNjF-amp.js → wt-confirm-dialog-GNka4gxY.js} +1 -1
  26. package/dist/{wt-context-menu-DkK9-qLI.js → wt-context-menu-Bjl5aGzG.js} +1 -1
  27. package/dist/{wt-copy-action-7hL0mEvW.js → wt-copy-action-Xo2DsqJZ.js} +1 -1
  28. package/dist/{wt-datepicker-Bvde1_4k.js → wt-datepicker-CL3jLy5h.js} +1 -1
  29. package/dist/wt-display-chip-items-CCNWd5Nt.js +47 -0
  30. package/dist/{wt-dual-panel-C6E7X3c8.js → wt-dual-panel-CMUeBmf-.js} +1 -1
  31. package/dist/{wt-dummy-oCvw9ZAO.js → wt-dummy-BOgeleXm.js} +1 -1
  32. package/dist/{wt-error-page-BWRGUdsV.js → wt-error-page-Ctl0-_Yp.js} +1 -1
  33. package/dist/{wt-expansion-card-DqdyzBFB.js → wt-expansion-card-BCOBdTuS.js} +1 -1
  34. package/dist/{wt-expansion-panel-CGYB7-8V.js → wt-expansion-panel-C7W_5dxd.js} +1 -1
  35. package/dist/{wt-filters-panel-wrapper-BdWYuFBU.js → wt-filters-panel-wrapper-CkLHeV4o.js} +1 -1
  36. package/dist/{wt-galleria-BBSNSwsR.js → wt-galleria-Bls8Xxh4.js} +2 -2
  37. package/dist/{wt-navigation-menu-CubDPnaE.js → wt-navigation-menu-CFPMD9o1.js} +1 -1
  38. package/dist/{wt-notifications-bar-B9gUZbnG.js → wt-notifications-bar-BTDN7hSn.js} +2 -2
  39. package/dist/{wt-pagination-Dafsnmhz.js → wt-pagination-DtjeKcpO.js} +1 -1
  40. package/dist/{wt-player-DxvKDEYJ.js → wt-player-Co3Ib7qU.js} +13 -13
  41. package/dist/wt-screen-recordings-action-CmY7R2B-.js +55 -0
  42. package/dist/{wt-search-bar-BSTKSDBo.js → wt-search-bar-CmN8Nq-n.js} +1 -1
  43. package/dist/{wt-selection-popup-D_mDRYjd.js → wt-selection-popup-BNKNa5jy.js} +1 -1
  44. package/dist/{wt-start-page-BYGMWDsS.js → wt-start-page-BC4r_EPK.js} +1 -1
  45. package/dist/{wt-status-select-BDFd1JE-.js → wt-status-select-CBq_ihcS.js} +11 -14
  46. package/dist/{wt-stepper-Db5aEz47.js → wt-stepper-DvmRISSE.js} +1 -1
  47. package/dist/{wt-table-92BKexHp.js → wt-table-BDnXcyai.js} +14 -14
  48. package/dist/{wt-table-actions-BTmBjf1Q.js → wt-table-actions-52X557c8.js} +1 -1
  49. package/dist/{wt-table-column-select-abILUxUr.js → wt-table-column-select-vKGXHla2.js} +2 -2
  50. package/dist/{wt-tabs-B21sWbPs.js → wt-tabs-zXlsvaeU.js} +16 -17
  51. package/dist/{wt-tags-input-DNA22dSR.js → wt-tags-input-B8w0KXPv.js} +2 -2
  52. package/dist/{wt-timepicker-CgowHF74.js → wt-timepicker-Cm4aLsPK.js} +1 -1
  53. package/dist/{wt-tree-CvHw827i.js → wt-tree-IVOTwA3x.js} +4 -4
  54. package/dist/{wt-tree-table-DWgEjAUG.js → wt-tree-table-zA7HHvru.js} +3 -3
  55. package/dist/{wt-type-extension-value-input-BvHowj58.js → wt-type-extension-value-input-DTmneCoP.js} +4 -7
  56. package/dist/{wt-vidstack-player-BnK8NLH3.js → wt-vidstack-player-DHmGgiDL.js} +13 -13
  57. package/package.json +7 -3
  58. package/src/api/clients/agents/agentChats.js +0 -1
  59. package/src/api/clients/agents/agents.js +1 -1
  60. package/src/api/clients/caseSources/caseSources.ts +1 -1
  61. package/src/api/clients/chatGateways/defaults/webChatGateway.js +5 -5
  62. package/src/api/clients/contactGroups/contactGroups.js +0 -1
  63. package/src/api/clients/queues/queues.js +16 -22
  64. package/src/api/clients/users/__tests__/users.spec.js +1 -1
  65. package/src/api/clients/users/users.js +10 -2
  66. package/src/api/clients//321/201ontacts/contacts.js +0 -1
  67. package/src/api/clients//321/201ontacts/index.js +1 -1
  68. package/src/api/defaults/getDefaultGetListResponse/getDefaultGetListResponse.js +1 -1
  69. package/src/api/transformers/addQueryParamsToUrl/addQueryParamsToUrl.transformer.js +2 -2
  70. package/src/api/transformers/sanitize/sanitize.transformer.js +2 -4
  71. package/src/api/websocket/WebSocketClientController.ts +6 -4
  72. package/src/components/index.js +10 -2
  73. package/src/components/on-demand/wt-screen-recordings-action/wt-screen-recordings-action.vue +72 -0
  74. package/src/components/wt-app-header/wt-app-navigator.vue +8 -11
  75. package/src/components/wt-button/__tests__/WtButton.spec.js +10 -5
  76. package/src/components/wt-button-select/__tests__/WtButtonSelect.spec.js +13 -16
  77. package/src/components/wt-checkbox/__tests__/WtCheckbox.spec.js +6 -2
  78. package/src/components/wt-chip/__tests__/WtChip.spec.js +3 -3
  79. package/src/components/wt-filters-panel-wrapper/__tests__/WtFiltersPanelWrapper.spec.js +4 -17
  80. package/src/components/wt-galleria/wt-galleria.vue +1 -1
  81. package/src/components/wt-icon/__tests__/WtIcon.spec.js +19 -2
  82. package/src/components/wt-intersection-observer/wt-intersection-observer.vue +1 -1
  83. package/src/components/wt-pagination/__tests__/WtPagination.spec.js +80 -16
  84. package/src/components/wt-player/src/components/buttons/mute-button.vue +0 -1
  85. package/src/components/wt-radio/__tests__/WtRadio.spec.js +8 -2
  86. package/src/components/wt-rounded-action/__tests__/WtRoundedAction.spec.js +98 -0
  87. package/src/components/wt-rounded-action/_variables.css +0 -3
  88. package/src/components/wt-select/mixins/multiselectMixin.js +0 -1
  89. package/src/components/wt-select/multiselect.css +2 -0
  90. package/src/components/wt-select/wt-select-v2.vue +3 -2
  91. package/src/components/wt-status-select/wt-status-select.vue +2 -4
  92. package/src/components/wt-switcher/__tests__/WtSwitcher.spec.js +9 -11
  93. package/src/components/wt-switcher/wt-switcher.vue +1 -1
  94. package/src/components/wt-table/wt-table.vue +1 -1
  95. package/src/components/wt-tabs/wt-tabs.vue +1 -2
  96. package/src/components/wt-textarea/__tests__/WtTextarea.spec.js +2 -2
  97. package/src/components/wt-textarea/wt-textarea.vue +3 -4
  98. package/src/components/wt-time-input/__tests__/WtTimeInput.spec.js +18 -1
  99. package/src/components/wt-timepicker/__tests__/WtTimepicker.spec.js +9 -15
  100. package/src/components/wt-tree/__tests__/WtTree.spec.js +1 -1
  101. package/src/components/wt-tree/wt-tree.vue +92 -60
  102. package/src/components/wt-tree-line/wt-tree-line.vue +2 -2
  103. package/src/components/wt-tree-table/wt-tree-table.vue +90 -84
  104. package/src/components/wt-tree-table-row/wt-tree-table-row.vue +2 -2
  105. package/src/components/wt-vidstack-player/components/panels/video-display-panel/video-display-panel.vue +2 -2
  106. package/src/components/wt-vidstack-player/composables/useVidstackSrc.ts +1 -1
  107. package/src/composables/useCachedInterval/__tests__/useCachedInterval.spec.js +1 -1
  108. package/src/composables/useCard/useCardComponent.js +1 -1
  109. package/src/composables/useInputControl/useInputControl.ts +1 -1
  110. package/src/composables/useRepresentableAgentPauseCause/__tests__/useRepresentableAgentPauseCause.spec.js +60 -80
  111. package/src/composables/useRepresentableAgentPauseCause/useRepresentableAgentPauseCause.js +1 -1
  112. package/src/composables/useTableColumnDrag/useTableColumnDrag.ts +1 -1
  113. package/src/enums/index.ts +0 -1
  114. package/src/install.ts +1 -1
  115. package/src/locale/kz/kz.js +2 -4
  116. package/src/locale/pl/pl.js +2 -4
  117. package/src/mixins/dataFilterMixins/__tests__/sortFilterMixin.spec.js +1 -1
  118. package/src/modules/AgentPdfs/components/agent-pdfs-tab.vue +104 -96
  119. package/src/modules/AgentStatusSelect/api/agent-status.js +9 -13
  120. package/src/modules/AgentStatusSelect/components/__tests__/wt-cc-agent-status-select.spec.js +6 -47
  121. package/src/modules/AgentStatusSelect/components/__tests__/wt-cc-pause-cause-popup.spec.js +31 -3
  122. package/src/modules/Appearance/components/__tests__/wt-dark-mode-switcher.spec.js +16 -10
  123. package/src/modules/AuditForm/components/audit-form.vue +1 -1
  124. package/src/modules/AuditForm/components/form-answers/answer-editing-info/audit-form-answer-editing-info.vue +1 -1
  125. package/src/modules/AuditForm/components/form-questions/options/__tests__/audit-form-question-options.spec.js +4 -6
  126. package/src/modules/AuditForm/components/form-questions/score/__tests__/audit-form-question-score.spec.js +2 -2
  127. package/src/modules/CSVExport/XLSExport.js +5 -7
  128. package/src/modules/CSVExport/composables/useCSVExport.ts +3 -3
  129. package/src/modules/CSVExport/mixins/exportCSVMixin.js +1 -5
  130. package/src/modules/CSVExport/mixins/exportXLSMixin.js +1 -5
  131. package/src/modules/DeleteConfirmationPopup/__tests__/delete-confirmation-popup.spec.js +7 -51
  132. package/src/modules/FilesExport/composables/useFilesExport.ts +1 -1
  133. package/src/modules/FilesExport/types/types.ts +1 -1
  134. package/src/modules/Filters/store/FiltersStoreModule.js +27 -27
  135. package/src/modules/Notifications/store/NotificationsStoreModule.js +1 -1
  136. package/src/modules/ObjectPermissions/_internals/store/helpers/createObjectPermissionsStoreModule.js +0 -4
  137. package/src/modules/ObjectPermissions/components/permissions-tab.vue +5 -7
  138. package/src/modules/QueryFilters/mixins/__tests__/apiFilterMixin.spec.js +2 -2
  139. package/src/modules/QueryFilters/mixins/__tests__/sortFilterMixin.spec.js +1 -1
  140. package/src/modules/QueryFilters/store/QueryFiltersStoreModule.js +5 -6
  141. package/src/modules/QueryFilters/store/__tests__/QueryFiltersStoreModule.spec.js +12 -8
  142. package/src/modules/TableStoreModule/store/TableStoreModule.js +10 -18
  143. package/src/modules/UploadCsvPopup/scripts/normalizeCSVData.ts +9 -9
  144. package/src/modules/UploadCsvPopup/scripts/parseCSV.ts +1 -1
  145. package/src/modules/Userinfo/composables/createUserAccessControl.ts +2 -2
  146. package/src/modules/Userinfo/composables/types/CreateUserAccessControl.d.ts +2 -4
  147. package/src/modules/Userinfo/scripts/utils.ts +4 -2
  148. package/src/scripts/compareSize.ts +7 -6
  149. package/src/store/new/modules/tableStoreModule/tableStoreModule.js +17 -29
  150. package/src/validations/vuelidate/validators/decimalValidator.js +2 -1
  151. package/src/validations/vuelidate/validators/websocketValidator/websocketValidator.js +1 -1
  152. package/types/api/clients//321/201ontacts/index.d.ts +2 -2
  153. package/types/api/defaults/getDefaultGetListResponse/getDefaultGetListResponse.d.ts +1 -1
  154. package/types/components/on-demand/wt-screen-recordings-action/wt-screen-recordings-action.vue.d.ts +10 -0
  155. package/types/components/wt-switcher/wt-switcher.vue.d.ts +1 -1
  156. package/types/components/wt-table/wt-table.vue.d.ts +1 -1
  157. package/types/components/wt-textarea/wt-textarea.vue.d.ts +3 -4
  158. package/types/components/wt-tree/wt-tree.vue.d.ts +6 -6
  159. package/types/components/wt-tree-line/wt-tree-line.vue.d.ts +2 -2
  160. package/types/components/wt-tree-table/wt-tree-table.vue.d.ts +2 -2
  161. package/types/components/wt-tree-table-row/wt-tree-table-row.vue.d.ts +1 -1
  162. package/types/install.d.ts +1 -2
  163. package/types/modules/AgentPdfs/components/agent-pdfs-tab.vue.d.ts +1 -1
  164. package/types/modules/CSVExport/composables/useCSVExport.d.ts +3 -3
  165. package/types/modules/FilesExport/composables/useFilesExport.d.ts +1 -1
  166. package/types/modules/FilesExport/types/types.d.ts +1 -1
  167. package/types/modules/Filters/store/FiltersStoreModule.d.ts +2 -2
  168. package/types/modules/Notifications/store/NotificationsStoreModule.d.ts +1 -1
  169. package/types/modules/TableStoreModule/store/TableStoreModule.d.ts +2 -2
  170. package/types/modules/Userinfo/composables/createUserAccessControl.d.ts +2 -2
  171. package/types/modules/Userinfo/scripts/utils.d.ts +1 -1
  172. package/types/store/new/modules/tableStoreModule/tableStoreModule.d.ts +2 -2
  173. package/dist/wt-display-chip-items-DPoEtUZ-.js +0 -46
  174. package/src/components/wt-copy-action/__tests__/WtCopyAction.spec.js +0 -15
  175. package/src/components/wt-divider/__tests__/WtDivider.spec.js +0 -10
  176. package/src/components/wt-slider/__tests__/WtSlider.spec.js +0 -10
  177. package/src/components/wt-table/__tests__/WtTable.spec.js +0 -140
  178. package/src/modules/Filters/components/__tests__/filter-pagination.spec.js +0 -109
  179. package/src/modules/Filters/components/__tests__/filter-table-fields.spec.js +0 -112
  180. package/types/components/wt-copy-action/__tests__/WtCopyAction.spec.d.ts +0 -1
  181. package/types/components/wt-divider/__tests__/WtDivider.spec.d.ts +0 -1
  182. package/types/components/wt-slider/__tests__/WtSlider.spec.d.ts +0 -1
  183. package/types/components/wt-table/__tests__/WtTable.spec.d.ts +0 -1
  184. package/types/modules/Filters/components/__tests__/filter-pagination.spec.d.ts +0 -1
  185. package/types/modules/Filters/components/__tests__/filter-table-fields.spec.d.ts +0 -1
@@ -2,137 +2,117 @@ import { useRepresentableAgentPauseCause } from '../useRepresentableAgentPauseCa
2
2
 
3
3
  describe('useRepresentableAgentPauseCause', () => {
4
4
  it('correctly computes duration', () => {
5
- const pauseCauses = {
6
- value: [
7
- {
8
- durationMin: 10,
9
- limitMin: 12,
10
- },
11
- ],
12
- };
5
+ const pauseCauses = [
6
+ {
7
+ durationMin: 10,
8
+ limitMin: 12,
9
+ },
10
+ ];
13
11
  const { representablePauseCause } =
14
12
  useRepresentableAgentPauseCause(pauseCauses);
15
13
  expect(representablePauseCause.value[0].duration).toBe('00:10');
16
14
  });
17
15
  it('isOverflow with limit = 0 returns false', () => {
18
- const pauseCauses = {
19
- value: [
20
- {
21
- durationMin: 10,
22
- limitMin: 0,
23
- },
24
- ],
25
- };
16
+ const pauseCauses = [
17
+ {
18
+ durationMin: 10,
19
+ limitMin: 0,
20
+ },
21
+ ];
26
22
  const { representablePauseCause } =
27
23
  useRepresentableAgentPauseCause(pauseCauses);
28
24
  expect(representablePauseCause.value[0].isOverflow).toBe(false);
29
25
  });
30
26
  it('isOverflow with duration < limit returns false', () => {
31
- const pauseCauses = {
32
- value: [
33
- {
34
- durationMin: 10,
35
- limitMin: 12,
36
- },
37
- ],
38
- };
27
+ const pauseCauses = [
28
+ {
29
+ durationMin: 10,
30
+ limitMin: 12,
31
+ },
32
+ ];
39
33
  const { representablePauseCause } =
40
34
  useRepresentableAgentPauseCause(pauseCauses);
41
35
  expect(representablePauseCause.value[0].isOverflow).toBe(false);
42
36
  });
43
37
  it('isOverflow with duration > limit returns true', () => {
44
- const pauseCauses = {
45
- value: [
46
- {
47
- durationMin: 14,
48
- limitMin: 12,
49
- },
50
- ],
51
- };
38
+ const pauseCauses = [
39
+ {
40
+ durationMin: 14,
41
+ limitMin: 12,
42
+ },
43
+ ];
52
44
  const { representablePauseCause } =
53
45
  useRepresentableAgentPauseCause(pauseCauses);
54
46
  expect(representablePauseCause.value[0].isOverflow).toBe(true);
55
47
  });
56
48
 
57
49
  it('isOverflow with duration = limit returns false', () => {
58
- const pauseCauses = {
59
- value: [
60
- {
61
- durationMin: 12,
62
- limitMin: 12,
63
- },
64
- ],
65
- };
50
+ const pauseCauses = [
51
+ {
52
+ durationMin: 12,
53
+ limitMin: 12,
54
+ },
55
+ ];
66
56
  const { representablePauseCause } =
67
57
  useRepresentableAgentPauseCause(pauseCauses);
68
58
  expect(representablePauseCause.value[0].isOverflow).toBe(false);
69
59
  });
70
60
 
71
61
  it('correctly computes progressColor', () => {
72
- const pauseCauses = {
73
- value: [
74
- {
75
- durationMin: 10,
76
- limitMin: 12,
77
- },
78
- ],
79
- };
62
+ const pauseCauses = [
63
+ {
64
+ durationMin: 10,
65
+ limitMin: 12,
66
+ },
67
+ ];
80
68
  const { representablePauseCause } =
81
69
  useRepresentableAgentPauseCause(pauseCauses);
82
70
  expect(representablePauseCause.value[0].progressColor).toBe('primary');
83
71
  });
84
72
 
85
73
  it('correctly computes progressColor with duration > limit', () => {
86
- const pauseCauses = {
87
- value: [
88
- {
89
- durationMin: 14,
90
- limitMin: 12,
91
- },
92
- ],
93
- };
74
+ const pauseCauses = [
75
+ {
76
+ durationMin: 14,
77
+ limitMin: 12,
78
+ },
79
+ ];
94
80
  const { representablePauseCause } =
95
81
  useRepresentableAgentPauseCause(pauseCauses);
96
82
  expect(representablePauseCause.value[0].progressColor).toBe('error');
97
83
  });
98
84
 
99
85
  it('correctly computes progressColor with duration < limit', () => {
100
- const pauseCauses = {
101
- value: [
102
- {
103
- durationMin: 3,
104
- limitMin: 12,
105
- },
106
- ],
107
- };
86
+ const pauseCauses = [
87
+ {
88
+ durationMin: 3,
89
+ limitMin: 12,
90
+ },
91
+ ];
108
92
  const { representablePauseCause } =
109
93
  useRepresentableAgentPauseCause(pauseCauses);
110
94
  expect(representablePauseCause.value[0].progressColor).toBe('success');
111
95
  });
112
96
 
113
97
  it('correctly computes progressColor with duration = limit', () => {
114
- const pauseCauses = {
115
- value: [
116
- {
117
- durationMin: 12,
118
- limitMin: 12,
119
- },
120
- ],
121
- };
98
+ const pauseCauses = [
99
+ {
100
+ durationMin: 12,
101
+ limitMin: 12,
102
+ },
103
+ ];
122
104
  const { representablePauseCause } =
123
105
  useRepresentableAgentPauseCause(pauseCauses);
124
106
  expect(representablePauseCause.value[0].progressColor).toBe('primary');
125
107
  });
126
108
 
127
109
  it('correctly computes limit', () => {
128
- const pauseCauses = {
129
- value: [
130
- {
131
- durationMin: 12,
132
- limitMin: 12,
133
- },
134
- ],
135
- };
110
+ const pauseCauses = [
111
+ {
112
+ durationMin: 12,
113
+ limitMin: 12,
114
+ },
115
+ ];
136
116
  const { representablePauseCause } =
137
117
  useRepresentableAgentPauseCause(pauseCauses);
138
118
  expect(representablePauseCause.value[0].limit).toBe('00:12');
@@ -12,7 +12,7 @@ const isDurationOverflow = ({ durationMin, limitMin }) => {
12
12
  return durationMin > limitMin && limitMin !== 0;
13
13
  };
14
14
 
15
- const duration = ({ durationMin, limitMin }) => {
15
+ const duration = ({ durationMin /* limitMin */ }) => {
16
16
  return prettifyPauseCauseDuration(durationMin);
17
17
  };
18
18
 
@@ -52,7 +52,7 @@ export const useTableColumnDrag = (table, reorderableColumns) => {
52
52
  copyEl.style.position = 'absolute';
53
53
  copyEl.style.top = '-9999px';
54
54
  copyEl.style.background = 'var(--p-datatable-header-cell-drag-background)';
55
- copyEl.style.width = event.target.offsetWidth + 'px';
55
+ copyEl.style.width = `${event.target.offsetWidth}px`;
56
56
  document.body.appendChild(copyEl);
57
57
  event.dataTransfer.setDragImage(copyEl, event.offsetX, event.offsetY);
58
58
  // Clean up after drag starts
@@ -1,7 +1,6 @@
1
1
  import AbstractUserStatus from './AbstractUserStatus/AbstractUserStatus.enum.js';
2
2
  import AgentStatus from './AgentStatus/AgentStatus.enum.js';
3
3
  import { ButtonColor } from './ButtonColor/ButtonColor';
4
- import { ButtonSize } from './ButtonSize/ButtonSize';
5
4
  import { ButtonVariant } from './ButtonVariant/ButtonVariant';
6
5
  import ChatGatewayProvider from './ChatGatewayProvider/ChatGatewayProvider.enum.js';
7
6
  import ProviderIconType from './ChatGatewayProvider/ProviderIconType.enum';
package/src/install.ts CHANGED
@@ -13,7 +13,7 @@ import initPrimevue from './plugins/primevue/primevue.plugin';
13
13
  export { fillIconsRepository };
14
14
 
15
15
  export default {
16
- install(app, { eventBus, router, globals = {} }) {
16
+ install(app, { eventBus, globals = {} }) {
17
17
  Object.keys(Directives).forEach((name) => {
18
18
  app.directive(name, Directives[name]);
19
19
  });
@@ -321,11 +321,9 @@ export default {
321
321
  ': ' +
322
322
  linked('objects.case'),
323
323
  [CrmSectionsNew.ContactsExtensions]: ({ linked }) =>
324
- linked('objects.customization.customization') +
325
- ': ' +
326
- linked('objects.contact'),
324
+ `${linked('objects.customization.customization')}: ${linked('objects.contact')}`,
327
325
  [CrmSectionsNew.CustomLookups]: ({ linked }) =>
328
- linked('objects.customization.customization') + ': Жекелендірулер', // dont use linked: objects.customLookup.customLookup, coz "linked" doesnt support pluralization
326
+ `${linked('objects.customization.customization')}: Жекелендірулер`, // dont use linked: objects.customLookup.customLookup, coz "linked" doesnt support pluralization
329
327
  },
330
328
  },
331
329
  },
@@ -321,11 +321,9 @@ export default {
321
321
  ': ' +
322
322
  linked('objects.case'),
323
323
  [CrmSectionsNew.ContactsExtensions]: ({ linked }) =>
324
- linked('objects.customization.customization') +
325
- ': ' +
326
- linked('objects.contact'),
324
+ `${linked('objects.customization.customization')}: ${linked('objects.contact')}`,
327
325
  [CrmSectionsNew.CustomLookups]: ({ linked }) =>
328
- linked('objects.customization.customization') + ': Dostosowania', // dont use linked: objects.customLookup.customLookup, coz "linked" doesnt support pluralization
326
+ `${linked('objects.customization.customization')}: Dostosowania`, // dont use linked: objects.customLookup.customLookup, coz "linked" doesnt support pluralization
329
327
  },
330
328
  },
331
329
  },
@@ -69,7 +69,7 @@ describe('Sort filter mixin', () => {
69
69
  sort: '+queue',
70
70
  },
71
71
  });
72
- const wrapper = shallowMount(Component, {
72
+ shallowMount(Component, {
73
73
  global: {
74
74
  plugins: [
75
75
  router,
@@ -1,99 +1,105 @@
1
1
  <template>
2
- <section class="table-wrapper table-page table-wrapper--tab-table">
3
- <slot
4
- name="header"
5
- :selected="selected"
6
- :load-data-list="loadDataList"
7
- :ask-delete-confirmation="askDeleteConfirmation"
8
- :handle-delete="handleDelete"
9
- />
10
-
11
- <delete-confirmation-popup
12
- :shown="isDeleteConfirmationPopup"
13
- :callback="deleteCallback"
14
- :delete-count="deleteCount"
15
- @close="closeDelete"
16
- />
17
-
18
- <wt-loader v-show="isLoading" />
19
-
20
- <wt-empty
21
- v-show="showEmpty"
22
- :image="imageEmpty"
23
- :headline="textEmpty"
24
- />
25
-
26
- <div v-if="dataList?.length" class="table-section__table-wrapper">
27
- <wt-table
28
- v-if="dataList?.length"
29
- :data="dataList"
30
- :headers="shownHeaders"
31
- :selected="selected"
32
- sortable
33
- @sort="updateSort"
34
- @update:selected="updateSelected"
35
- >
36
- <template #preview="{ item }">
37
- <pdf-status-preview
38
- :status="item.status"
39
- :clickable="item.status === WebitelMediaExporterExportStatus.Done"
40
- @click="openPdfInNewWindow(item.fileId)"
41
- />
42
- </template>
43
-
44
- <template #name="{ item }">
45
- {{ item.name }}
46
- </template>
47
-
48
- <template #status="{ item }">
49
- <pdf-status :status="item.status" />
50
- </template>
51
-
52
- <template #valid_until="{ item }">
53
- {{ prettifyTimestamp(item.validUntil) }}
54
- </template>
55
-
56
- <template #created_at="{ item }">
57
- {{ prettifyTimestamp(item.createdAt) }}
58
- </template>
59
-
60
- <template #created_by="{ item }">
61
- {{ item.createdBy }}
62
- </template>
63
-
64
- <template #actions="{ item }">
65
- <wt-icon-action
66
- action="download"
67
- :disabled="isDownloadDisabled(item)"
68
- @click="downloadPdf(item.fileId)"
69
- />
70
- <wt-icon-action
71
- action="delete"
72
- :disabled="isDeleteDisabled(item) || !hasDeleteAccess"
73
- @click="
74
- askDeleteConfirmation({
75
- deleted: [item],
76
- callback: () => handleDelete([item]),
77
- })
78
- "
79
- />
80
- </template>
81
- </wt-table>
82
-
83
- <wt-pagination
84
- :next="next"
85
- :prev="page > 1"
86
- :size="size"
87
- debounce
88
- @change="updateSize"
89
- @next="updatePage(page + 1)"
90
- @prev="updatePage(page - 1)"
91
- />
92
- </div>
93
- </section>
2
+ <section class="table-wrapper table-page table-wrapper--tab-table">
3
+ <slot
4
+ name="header"
5
+ :selected="selected"
6
+ :load-data-list="loadDataList"
7
+ :ask-delete-confirmation="askDeleteConfirmation"
8
+ :handle-delete="handleDelete"
9
+ />
10
+
11
+ <delete-confirmation-popup
12
+ :shown="isDeleteConfirmationPopup"
13
+ :callback="deleteCallback"
14
+ :delete-count="deleteCount"
15
+ @close="closeDelete"
16
+ />
17
+
18
+ <wt-loader v-show="isLoading" />
19
+
20
+ <wt-empty
21
+ v-show="showEmpty"
22
+ :image="imageEmpty"
23
+ :headline="textEmpty"
24
+ />
25
+
26
+ <div
27
+ v-if="dataList?.length"
28
+ class="table-section__table-wrapper"
29
+ >
30
+ <wt-table
31
+ v-if="dataList?.length"
32
+ :data="dataList"
33
+ :headers="shownHeaders"
34
+ :selected="selected"
35
+ sortable
36
+ @sort="updateSort"
37
+ @update:selected="updateSelected"
38
+ >
39
+ <template #preview="{ item }">
40
+ <pdf-status-preview
41
+ :status="item.status"
42
+ :clickable="item.status === WebitelMediaExporterExportStatus.Done"
43
+ @click="openPdfInNewWindow(item.fileId)"
44
+ />
45
+ </template>
46
+
47
+ <template #name="{ item }">
48
+ {{ item.name }}
49
+ </template>
50
+
51
+ <template #status="{ item }">
52
+ <pdf-status :status="item.status" />
53
+ </template>
54
+
55
+ <template #valid_until="{ item }">
56
+ {{ prettifyTimestamp(item.validUntil) }}
57
+ </template>
58
+
59
+ <template #created_at="{ item }">
60
+ {{ prettifyTimestamp(item.createdAt) }}
61
+ </template>
62
+
63
+ <template #created_by="{ item }">
64
+ {{ item.createdBy }}
65
+ </template>
66
+
67
+ <template #actions="{ item }">
68
+ <wt-icon-action
69
+ action="download"
70
+ :disabled="isDownloadDisabled(item)"
71
+ @click="downloadPdf(item.fileId)"
72
+ />
73
+ <wt-icon-action
74
+ action="delete"
75
+ :disabled="isDeleteDisabled(item) || !hasDeleteAccess"
76
+ @click="
77
+ askDeleteConfirmation({
78
+ deleted: [item],
79
+ callback: () => handleDelete([item]),
80
+ })
81
+ "
82
+ />
83
+ </template>
84
+ </wt-table>
85
+
86
+ <wt-pagination
87
+ :next="next"
88
+ :prev="page > 1"
89
+ :size="size"
90
+ debounce
91
+ @change="updateSize"
92
+ @next="updatePage(page + 1)"
93
+ @prev="updatePage(page - 1)"
94
+ />
95
+ </div>
96
+ </section>
94
97
  </template>
95
98
 
96
- <script lang="ts" setup>
99
+ <script
100
+ lang="ts"
101
+ setup
102
+ >
97
103
  import {
98
104
  downloadFile,
99
105
  FileServicesAPI,
@@ -120,7 +126,7 @@ import PdfStatus from './pdf-status.vue';
120
126
  import PdfStatusPreview from './pdf-status-preview.vue';
121
127
 
122
128
  const props = defineProps<{
123
- store?: any;
129
+ store?: unknown;
124
130
  entityIdKey?: string;
125
131
  entityIdValue?: string | number;
126
132
  isCreatedAtFilter: boolean;
@@ -275,5 +281,7 @@ const openPdfInNewWindow = (fileId: string) => {
275
281
  };
276
282
  </script>
277
283
 
278
- <style lang="scss" scoped></style>
279
-
284
+ <style
285
+ lang="scss"
286
+ scoped
287
+ ></style>
@@ -9,19 +9,15 @@ const AgentStatusAPIFactory = ({ instance, OpenAPIConfig }) => {
9
9
  pauseCause,
10
10
  statusComment,
11
11
  }) => {
12
- try {
13
- const res = await service.updateAgentStatus(agentId, {
14
- status,
15
- id: agentId,
16
- payload: pauseCause,
17
- status_comment: statusComment,
18
- });
19
- return {
20
- success: !!res,
21
- };
22
- } catch (err) {
23
- throw err;
24
- }
12
+ const res = await service.updateAgentStatus(agentId, {
13
+ status,
14
+ id: agentId,
15
+ payload: pauseCause,
16
+ status_comment: statusComment,
17
+ });
18
+ return {
19
+ success: !!res,
20
+ };
25
21
  };
26
22
 
27
23
  return {
@@ -54,53 +54,8 @@ describe('Wt Cc Agent Status Select', () => {
54
54
  const wrapper = shallowMount(WtCcAgentStatusSelect, mountOptions);
55
55
  expect(wrapper.exists()).toBe(true);
56
56
  });
57
- it(`at wt-status-select "change" to "online" event, triggers agent status patch
58
- with "online" status`, () => {
59
- const wrapper = shallowMount(WtCcAgentStatusSelect, mountOptions);
60
- wrapper
61
- .findComponent({
62
- name: 'wt-status-select',
63
- })
64
- .vm.$emit('change', AgentStatus.ONLINE);
65
- const reqPayload = {
66
- status: AgentStatus.ONLINE,
67
- agentId: agent.agentId,
68
- payload: undefined,
69
- };
70
- expect(agentStatusMock).toHaveBeenCalledWith(reqPayload);
71
- });
72
- it('at wt-status-select "change" to "pause" event, pause causes are loaded', async () => {
73
- const wrapper = shallowMount(WtCcAgentStatusSelect, mountOptions);
74
- wrapper
75
- .findComponent({
76
- name: 'wt-status-select',
77
- })
78
- .vm.$emit('change', AgentStatus.PAUSE);
79
- await wrapper.vm.$nextTick();
80
- expect(getAgentPauseCausesMock).toHaveBeenCalled();
81
- });
82
- it(`at wt-status-select "change" to "pause" event and pause causes truthy response,
83
- pause-cause-popup appears`, async () => {
84
- const wrapper = mount(WtCcAgentStatusSelect, mountOptions);
85
- wrapper
86
- .findComponent({
87
- name: 'wt-status-select',
88
- })
89
- .vm.$emit('change', AgentStatus.PAUSE);
90
- await wrapper.vm.$nextTick(); // load pause causes
91
- await wrapper.vm.$nextTick();
92
- await wrapper.vm.$nextTick(); // render popup
93
- expect(
94
- wrapper
95
- .findComponent({
96
- name: 'pause-cause-popup',
97
- })
98
- .isVisible(),
99
- ).toBe(true);
100
- });
101
57
  it(`at pause-cause-popup "change" event, triggers patch agent status
102
58
  with "pause" status and passed pauseCause`, async () => {
103
- const pauseCause = 'jest';
104
59
  const wrapper = mount(WtCcAgentStatusSelect, mountOptions);
105
60
  wrapper.vm.openPauseCausePopup();
106
61
  await wrapper.vm.$nextTick();
@@ -109,11 +64,15 @@ describe('Wt Cc Agent Status Select', () => {
109
64
  .findComponent({
110
65
  name: 'pause-cause-popup',
111
66
  })
112
- .vm.$emit('change', pauseCause);
67
+ .vm.$emit('change', {
68
+ pauseCause: 'coffee',
69
+ statusComment: 'brb',
70
+ });
113
71
  const reqPayload = {
114
72
  status: AgentStatus.PAUSE,
115
73
  agentId: agent.agentId,
116
- pauseCause,
74
+ pauseCause: 'coffee',
75
+ statusComment: 'brb',
117
76
  };
118
77
  expect(agentStatusMock).toHaveBeenCalledWith(reqPayload);
119
78
  });
@@ -13,7 +13,8 @@ describe('Pause cause popup', () => {
13
13
  props: {
14
14
  options: [
15
15
  {
16
- value,
16
+ id: 1,
17
+ name: value,
17
18
  },
18
19
  ],
19
20
  },
@@ -22,7 +23,34 @@ describe('Pause cause popup', () => {
22
23
  .findComponent({
23
24
  name: 'wt-radio',
24
25
  })
25
- .vm.$emit('input');
26
- expect(wrapper.vm.selected.value).toEqual(value);
26
+ .vm.$emit('update:selected');
27
+ expect(wrapper.vm.selected.name).toEqual(value);
28
+ });
29
+
30
+ it('emits payload and close on setPause', async () => {
31
+ const wrapper = mount(WtCcPauseCausePopup, {
32
+ props: {
33
+ options: [
34
+ {
35
+ id: 1,
36
+ name: 'coffee',
37
+ },
38
+ ],
39
+ },
40
+ });
41
+
42
+ wrapper.vm.select({
43
+ id: 1,
44
+ name: 'coffee',
45
+ statusComment: 'brb',
46
+ });
47
+ wrapper.vm.setPause();
48
+ await wrapper.vm.$nextTick();
49
+
50
+ expect(wrapper.emitted().change[0][0]).toEqual({
51
+ pauseCause: 'coffee',
52
+ statusComment: 'brb',
53
+ });
54
+ expect(wrapper.emitted().close).toBeTruthy();
27
55
  });
28
56
  });