@webitel/ui-sdk 23.12.38 → 23.12.39-vite-1

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 (277) hide show
  1. package/dist/favicon.ico +0 -0
  2. package/dist/img/sprite/sprite/index.js +147 -0
  3. package/dist/plyr.svg +70 -0
  4. package/dist/style.css +1 -0
  5. package/dist/ui-sdk.mjs +22666 -0
  6. package/dist/ui-sdk.umd.js +37 -43322
  7. package/package.json +19 -37
  8. package/src/components/on-demand/wt-cc-agent-status-timers/wt-cc-agent-status-timers.vue +3 -3
  9. package/src/components/transitions/wt-expand-transition.vue +2 -2
  10. package/src/components/wt-app-header/wt-app-header.vue +2 -2
  11. package/src/components/wt-app-header/wt-app-navigator.vue +6 -5
  12. package/src/components/wt-app-header/wt-header-actions.vue +30 -14
  13. package/src/components/wt-avatar/wt-avatar.vue +2 -2
  14. package/src/components/wt-badge/wt-badge.vue +3 -3
  15. package/src/components/wt-button/wt-button.vue +5 -3
  16. package/src/components/wt-button-select/__tests__/WtButtonSelect.spec.js +4 -4
  17. package/src/components/wt-button-select/wt-button-select.vue +3 -3
  18. package/src/components/wt-checkbox/wt-checkbox.vue +12 -7
  19. package/src/components/wt-chip/wt-chip.vue +6 -3
  20. package/src/components/wt-context-menu/wt-context-menu.vue +4 -4
  21. package/src/components/wt-copy-action/wt-copy-action.vue +6 -6
  22. package/src/components/wt-datepicker/wt-datepicker.vue +14 -12
  23. package/src/components/wt-divider/wt-divider.vue +1 -1
  24. package/src/components/wt-dummy/wt-dummy.vue +6 -2
  25. package/src/components/wt-error-page/wt-error-page.vue +10 -4
  26. package/src/components/wt-expansion-panel/wt-expansion-panel.vue +4 -4
  27. package/src/components/wt-filters-panel-wrapper/wt-filters-panel-wrapper.vue +7 -4
  28. package/src/components/wt-headline/wt-headline.vue +4 -4
  29. package/src/components/wt-headline-nav/wt-headline-nav.vue +11 -4
  30. package/src/components/wt-hint/wt-hint.vue +4 -4
  31. package/src/components/wt-icon/wt-icon.vue +5 -5
  32. package/src/components/wt-icon-action/_internals/wt-add-icon-action.vue +2 -2
  33. package/src/components/wt-icon-action/_internals/wt-delete-icon-action.vue +2 -2
  34. package/src/components/wt-icon-action/_internals/wt-download-icon-action.vue +2 -2
  35. package/src/components/wt-icon-action/_internals/wt-edit-icon-action.vue +2 -2
  36. package/src/components/wt-icon-action/_internals/wt-history-icon-action.vue +2 -2
  37. package/src/components/wt-icon-action/_internals/wt-refresh-icon-action.vue +2 -2
  38. package/src/components/wt-icon-action/wt-icon-action.vue +1 -1
  39. package/src/components/wt-icon-btn/wt-icon-btn.vue +1 -1
  40. package/src/components/wt-indicator/wt-indicator.vue +6 -3
  41. package/src/components/wt-input/Readme.md +96 -0
  42. package/src/components/wt-input/wt-input.vue +193 -182
  43. package/src/components/wt-input-info/wt-input-info.vue +2 -2
  44. package/src/components/wt-item-link/wt-item-link.vue +1 -1
  45. package/src/components/wt-label/wt-label.vue +2 -2
  46. package/src/components/wt-load-bar/wt-load-bar.vue +5 -2
  47. package/src/components/wt-loader/_internals/wt-loader--md.vue +11 -2
  48. package/src/components/wt-loader/_internals/wt-loader--sm.vue +9 -2
  49. package/src/components/wt-loader/wt-loader.vue +10 -3
  50. package/src/components/wt-navigation-bar/wt-navigation-bar.vue +16 -8
  51. package/src/components/wt-notification/wt-notification.vue +3 -3
  52. package/src/components/wt-notifications-bar/wt-notifications-bar.vue +9 -5
  53. package/src/components/wt-page-header/wt-page-header.vue +7 -8
  54. package/src/components/wt-page-wrapper/wt-page-wrapper.vue +8 -5
  55. package/src/components/wt-pagination/wt-pagination.vue +17 -15
  56. package/src/components/wt-player/wt-player.vue +16 -16
  57. package/src/components/wt-popup/wt-popup.vue +13 -7
  58. package/src/components/wt-progress-bar/wt-progress-bar.vue +11 -7
  59. package/src/components/wt-radio/wt-radio.vue +15 -7
  60. package/src/components/wt-rounded-action/wt-rounded-action.vue +2 -2
  61. package/src/components/wt-search-bar/__tests__/WtSearchBar.spec.js +1 -1
  62. package/src/components/wt-search-bar/wt-search-bar.vue +6 -5
  63. package/src/components/wt-select/_multiselect.scss +0 -1
  64. package/src/components/wt-select/wt-select.vue +33 -19
  65. package/src/components/wt-slider/wt-slider.vue +5 -5
  66. package/src/components/wt-status-select/wt-status-select.vue +9 -9
  67. package/src/components/wt-stepper/wt-stepper.vue +8 -6
  68. package/src/components/wt-switcher/wt-switcher.vue +12 -7
  69. package/src/components/wt-table/wt-table.vue +110 -72
  70. package/src/components/wt-table-actions/wt-table-actions.vue +14 -14
  71. package/src/components/wt-table-column-select/wt-table-column-select.vue +28 -26
  72. package/src/components/wt-tabs/wt-tabs.vue +7 -7
  73. package/src/components/wt-tags-input/wt-tags-input.vue +23 -15
  74. package/src/components/wt-textarea/wt-textarea.vue +15 -10
  75. package/src/components/wt-time-input/wt-time-input.vue +7 -4
  76. package/src/components/wt-timepicker/wt-timepicker.vue +19 -15
  77. package/src/components/wt-tooltip/_internals/wt-tooltip-floating.vue +2 -2
  78. package/src/components/wt-tooltip/wt-tooltip.vue +4 -4
  79. package/src/composables/useCachedInterval/__tests__/useCachedInterval.spec.js +5 -5
  80. package/src/css/styleguide/colors/_colors.scss +9 -8
  81. package/src/css/styleguide/colors/reusable/_text-field.scss +20 -0
  82. package/src/locale/en/en.js +1 -0
  83. package/src/locale/es/es.js +1 -0
  84. package/src/locale/i18n.js +1 -1
  85. package/src/locale/kz/kz.js +4 -0
  86. package/src/locale/ru/ru.js +1 -0
  87. package/src/locale/ua/ua.js +1 -0
  88. package/src/mixins/validationMixin/useValidation.js +2 -2
  89. package/src/modules/AgentStatusSelect/components/__tests__/wt-cc-agent-status-select.spec.js +4 -4
  90. package/src/modules/AgentStatusSelect/components/_internals/wt-cc-pause-cause-popup.vue +11 -9
  91. package/src/modules/AgentStatusSelect/components/_internals/wt-cc-status-select-error-popup.vue +6 -5
  92. package/src/modules/AgentStatusSelect/components/wt-cc-agent-status-select.vue +3 -3
  93. package/src/modules/AuditForm/components/__tests__/audit-form.spec.js +1 -1
  94. package/src/modules/AuditForm/components/audit-form-question-read-wrapper.vue +10 -6
  95. package/src/modules/AuditForm/components/audit-form-question-write-wrapper.vue +8 -8
  96. package/src/modules/AuditForm/components/audit-form-question.vue +8 -8
  97. package/src/modules/AuditForm/components/audit-form.vue +6 -5
  98. package/src/modules/AuditForm/components/questions/options/audit-form-question-options-write-row.vue +4 -4
  99. package/src/modules/AuditForm/components/questions/options/audit-form-question-options.vue +7 -4
  100. package/src/modules/AuditForm/components/questions/score/audit-form-question-score.vue +3 -3
  101. package/src/modules/CSVExport/__tests__/CSVExport.spec.js +2 -2
  102. package/src/modules/DeleteConfirmationPopup/__tests__/delete-confirmation-popup.spec.js +6 -6
  103. package/src/modules/DeleteConfirmationPopup/components/delete-confirmation-popup.vue +13 -6
  104. package/src/modules/FilesExport/__tests__/FilesExport.spec.js +3 -3
  105. package/src/modules/Filters/components/filter-pagination.vue +1 -1
  106. package/src/modules/Filters/components/filter-table-fields.vue +1 -1
  107. package/src/modules/Notifications/store/__tests__/NotificationsStoreModule.actions.spec.js +3 -3
  108. package/src/modules/QueryFilters/classes/__tests__/ApiFilterSchema.spec.js +1 -1
  109. package/src/modules/QueryFilters/components/__tests__/abstract-api-filter.spec.js +4 -4
  110. package/src/modules/QueryFilters/components/__tests__/filter-datetime.spec.js +2 -2
  111. package/src/modules/QueryFilters/components/__tests__/filter-from-to.spec.js +4 -4
  112. package/src/modules/QueryFilters/components/__tests__/filter-search.spec.js +2 -2
  113. package/src/modules/QueryFilters/components/abstract-api-filter.vue +2 -2
  114. package/src/modules/QueryFilters/components/abstract-enum-filter.vue +2 -2
  115. package/src/modules/QueryFilters/components/filter-datetime.vue +2 -2
  116. package/src/modules/QueryFilters/components/filter-from-to.vue +12 -10
  117. package/src/modules/QueryFilters/components/filter-search.vue +2 -2
  118. package/src/modules/QueryFilters/components/filter-table-fields.vue +7 -7
  119. package/src/modules/QueryFilters/mixins/__tests__/apiFilterMixin.spec.js +1 -1
  120. package/src/modules/QueryFilters/mixins/__tests__/enumFilterMixin.spec.js +2 -2
  121. package/src/modules/QueryFilters/mixins/__tests__/paginationFilterMixin.spec.js +2 -2
  122. package/src/modules/QueryFilters/mixins/__tests__/sortFilterMixin.spec.js +1 -1
  123. package/src/modules/QueryFilters/store/__tests__/QueryFiltersStoreModule.spec.js +2 -2
  124. package/src/modules/Userinfo/components/__tests__/auth.spec.js +4 -4
  125. package/src/modules/Userinfo/components/the-auth.vue +7 -4
  126. package/src/store/BaseStoreModules/__tests__/BaseStoreModule.spec.js +6 -6
  127. package/dist/demo.html +0 -1
  128. package/dist/img/sprite/index.js +0 -1
  129. package/dist/ui-sdk.common.js +0 -43304
  130. package/dist/ui-sdk.common.js.map +0 -1
  131. package/dist/ui-sdk.css +0 -1
  132. package/dist/ui-sdk.umd.js.map +0 -1
  133. package/dist/ui-sdk.umd.min.js +0 -35
  134. package/dist/ui-sdk.umd.min.js.map +0 -1
  135. /package/dist/img/sprite/{account.svg → sprite/account.svg} +0 -0
  136. /package/dist/img/sprite/{adfs.svg → sprite/adfs.svg} +0 -0
  137. /package/dist/img/sprite/{app-navigator.svg → sprite/app-navigator.svg} +0 -0
  138. /package/dist/img/sprite/{arrow-down.svg → sprite/arrow-down.svg} +0 -0
  139. /package/dist/img/sprite/{arrow-left.svg → sprite/arrow-left.svg} +0 -0
  140. /package/dist/img/sprite/{arrow-mix.svg → sprite/arrow-mix.svg} +0 -0
  141. /package/dist/img/sprite/{arrow-right.svg → sprite/arrow-right.svg} +0 -0
  142. /package/dist/img/sprite/{arrow-up.svg → sprite/arrow-up.svg} +0 -0
  143. /package/dist/img/sprite/{attach.svg → sprite/attach.svg} +0 -0
  144. /package/dist/img/sprite/{attention.svg → sprite/attention.svg} +0 -0
  145. /package/dist/img/sprite/{azure.svg → sprite/azure.svg} +0 -0
  146. /package/dist/img/sprite/{back.svg → sprite/back.svg} +0 -0
  147. /package/dist/img/sprite/{bell-badged.svg → sprite/bell-badged.svg} +0 -0
  148. /package/dist/img/sprite/{bell.svg → sprite/bell.svg} +0 -0
  149. /package/dist/img/sprite/{bucket.svg → sprite/bucket.svg} +0 -0
  150. /package/dist/img/sprite/{calendar.svg → sprite/calendar.svg} +0 -0
  151. /package/dist/img/sprite/{call--filled.svg → sprite/call--filled.svg} +0 -0
  152. /package/dist/img/sprite/{call-add-to--filled.svg → sprite/call-add-to--filled.svg} +0 -0
  153. /package/dist/img/sprite/{call-add-to.svg → sprite/call-add-to.svg} +0 -0
  154. /package/dist/img/sprite/{call-disconnect--filled.svg → sprite/call-disconnect--filled.svg} +0 -0
  155. /package/dist/img/sprite/{call-disconnect.svg → sprite/call-disconnect.svg} +0 -0
  156. /package/dist/img/sprite/{call-end--filled.svg → sprite/call-end--filled.svg} +0 -0
  157. /package/dist/img/sprite/{call-end.svg → sprite/call-end.svg} +0 -0
  158. /package/dist/img/sprite/{call-inbound--filled.svg → sprite/call-inbound--filled.svg} +0 -0
  159. /package/dist/img/sprite/{call-inbound.svg → sprite/call-inbound.svg} +0 -0
  160. /package/dist/img/sprite/{call-missed--filled.svg → sprite/call-missed--filled.svg} +0 -0
  161. /package/dist/img/sprite/{call-missed.svg → sprite/call-missed.svg} +0 -0
  162. /package/dist/img/sprite/{call-outbound--filled.svg → sprite/call-outbound--filled.svg} +0 -0
  163. /package/dist/img/sprite/{call-outbound.svg → sprite/call-outbound.svg} +0 -0
  164. /package/dist/img/sprite/{call-ringing--filled.svg → sprite/call-ringing--filled.svg} +0 -0
  165. /package/dist/img/sprite/{call-ringing.svg → sprite/call-ringing.svg} +0 -0
  166. /package/dist/img/sprite/{call-transfer--filled.svg → sprite/call-transfer--filled.svg} +0 -0
  167. /package/dist/img/sprite/{call-transfer.svg → sprite/call-transfer.svg} +0 -0
  168. /package/dist/img/sprite/{call.svg → sprite/call.svg} +0 -0
  169. /package/dist/img/sprite/{chat--filled.svg → sprite/chat--filled.svg} +0 -0
  170. /package/dist/img/sprite/{chat-emoji.svg → sprite/chat-emoji.svg} +0 -0
  171. /package/dist/img/sprite/{chat-end--filled.svg → sprite/chat-end--filled.svg} +0 -0
  172. /package/dist/img/sprite/{chat-end.svg → sprite/chat-end.svg} +0 -0
  173. /package/dist/img/sprite/{chat-group.svg → sprite/chat-group.svg} +0 -0
  174. /package/dist/img/sprite/{chat-join.svg → sprite/chat-join.svg} +0 -0
  175. /package/dist/img/sprite/{chat-message-status-read.svg → sprite/chat-message-status-read.svg} +0 -0
  176. /package/dist/img/sprite/{chat-message-status-sent.svg → sprite/chat-message-status-sent.svg} +0 -0
  177. /package/dist/img/sprite/{chat-quick-response--filled.svg → sprite/chat-quick-response--filled.svg} +0 -0
  178. /package/dist/img/sprite/{chat-quick-response.svg → sprite/chat-quick-response.svg} +0 -0
  179. /package/dist/img/sprite/{chat-reply.svg → sprite/chat-reply.svg} +0 -0
  180. /package/dist/img/sprite/{chat-send.svg → sprite/chat-send.svg} +0 -0
  181. /package/dist/img/sprite/{chat-transfer--filled.svg → sprite/chat-transfer--filled.svg} +0 -0
  182. /package/dist/img/sprite/{chat-transfer.svg → sprite/chat-transfer.svg} +0 -0
  183. /package/dist/img/sprite/{chat.svg → sprite/chat.svg} +0 -0
  184. /package/dist/img/sprite/{checkbox--checked--filled.svg → sprite/checkbox--checked--filled.svg} +0 -0
  185. /package/dist/img/sprite/{checkbox--checked.svg → sprite/checkbox--checked.svg} +0 -0
  186. /package/dist/img/sprite/{checkbox.svg → sprite/checkbox.svg} +0 -0
  187. /package/dist/img/sprite/{clear.svg → sprite/clear.svg} +0 -0
  188. /package/dist/img/sprite/{close--filled.svg → sprite/close--filled.svg} +0 -0
  189. /package/dist/img/sprite/{close.svg → sprite/close.svg} +0 -0
  190. /package/dist/img/sprite/{collapse.svg → sprite/collapse.svg} +0 -0
  191. /package/dist/img/sprite/{column-select.svg → sprite/column-select.svg} +0 -0
  192. /package/dist/img/sprite/{conference.svg → sprite/conference.svg} +0 -0
  193. /package/dist/img/sprite/{contacts.svg → sprite/contacts.svg} +0 -0
  194. /package/dist/img/sprite/{copy.svg → sprite/copy.svg} +0 -0
  195. /package/dist/img/sprite/{docs.svg → sprite/docs.svg} +0 -0
  196. /package/dist/img/sprite/{done.svg → sprite/done.svg} +0 -0
  197. /package/dist/img/sprite/{download.svg → sprite/download.svg} +0 -0
  198. /package/dist/img/sprite/{edit.svg → sprite/edit.svg} +0 -0
  199. /package/dist/img/sprite/{email.svg → sprite/email.svg} +0 -0
  200. /package/dist/img/sprite/{expand.svg → sprite/expand.svg} +0 -0
  201. /package/dist/img/sprite/{eye--closed.svg → sprite/eye--closed.svg} +0 -0
  202. /package/dist/img/sprite/{eye--opened.svg → sprite/eye--opened.svg} +0 -0
  203. /package/dist/img/sprite/{filter.svg → sprite/filter.svg} +0 -0
  204. /package/dist/img/sprite/{generate.svg → sprite/generate.svg} +0 -0
  205. /package/dist/img/sprite/{google.svg → sprite/google.svg} +0 -0
  206. /package/dist/img/sprite/{history.svg → sprite/history.svg} +0 -0
  207. /package/dist/img/sprite/{hold.svg → sprite/hold.svg} +0 -0
  208. /package/dist/img/sprite/{idle.svg → sprite/idle.svg} +0 -0
  209. /package/dist/img/sprite/{instagram.svg → sprite/instagram.svg} +0 -0
  210. /package/dist/img/sprite/{job--accept.svg → sprite/job--accept.svg} +0 -0
  211. /package/dist/img/sprite/{job--end.svg → sprite/job--end.svg} +0 -0
  212. /package/dist/img/sprite/{job.svg → sprite/job.svg} +0 -0
  213. /package/dist/img/sprite/{link.svg → sprite/link.svg} +0 -0
  214. /package/dist/img/sprite/{lock.svg → sprite/lock.svg} +0 -0
  215. /package/dist/img/sprite/{logout.svg → sprite/logout.svg} +0 -0
  216. /package/dist/img/sprite/{mail--color.svg → sprite/mail--color.svg} +0 -0
  217. /package/dist/img/sprite/{mail.svg → sprite/mail.svg} +0 -0
  218. /package/dist/img/sprite/{menu.svg → sprite/menu.svg} +0 -0
  219. /package/dist/img/sprite/{messenger-facebook--filled.svg → sprite/messenger-facebook--filled.svg} +0 -0
  220. /package/dist/img/sprite/{messenger-facebook.svg → sprite/messenger-facebook.svg} +0 -0
  221. /package/dist/img/sprite/{messenger-infobip.svg → sprite/messenger-infobip.svg} +0 -0
  222. /package/dist/img/sprite/{messenger-messenger.svg → sprite/messenger-messenger.svg} +0 -0
  223. /package/dist/img/sprite/{messenger-telegram--filled.svg → sprite/messenger-telegram--filled.svg} +0 -0
  224. /package/dist/img/sprite/{messenger-telegram.svg → sprite/messenger-telegram.svg} +0 -0
  225. /package/dist/img/sprite/{messenger-viber--filled.svg → sprite/messenger-viber--filled.svg} +0 -0
  226. /package/dist/img/sprite/{messenger-viber.svg → sprite/messenger-viber.svg} +0 -0
  227. /package/dist/img/sprite/{messenger-web-chat.svg → sprite/messenger-web-chat.svg} +0 -0
  228. /package/dist/img/sprite/{messenger-whatsapp--filled.svg → sprite/messenger-whatsapp--filled.svg} +0 -0
  229. /package/dist/img/sprite/{messenger-whatsapp.svg → sprite/messenger-whatsapp.svg} +0 -0
  230. /package/dist/img/sprite/{meta.svg → sprite/meta.svg} +0 -0
  231. /package/dist/img/sprite/{mic-muted.svg → sprite/mic-muted.svg} +0 -0
  232. /package/dist/img/sprite/{mic.svg → sprite/mic.svg} +0 -0
  233. /package/dist/img/sprite/{move.svg → sprite/move.svg} +0 -0
  234. /package/dist/img/sprite/{note.svg → sprite/note.svg} +0 -0
  235. /package/dist/img/sprite/{numpad.svg → sprite/numpad.svg} +0 -0
  236. /package/dist/img/sprite/{options.svg → sprite/options.svg} +0 -0
  237. /package/dist/img/sprite/{pause.svg → sprite/pause.svg} +0 -0
  238. /package/dist/img/sprite/{pin.svg → sprite/pin.svg} +0 -0
  239. /package/dist/img/sprite/{play.svg → sprite/play.svg} +0 -0
  240. /package/dist/img/sprite/{plus.svg → sprite/plus.svg} +0 -0
  241. /package/dist/img/sprite/{preview-tag-application.svg → sprite/preview-tag-application.svg} +0 -0
  242. /package/dist/img/sprite/{preview-tag-audio.svg → sprite/preview-tag-audio.svg} +0 -0
  243. /package/dist/img/sprite/{preview-tag-image.svg → sprite/preview-tag-image.svg} +0 -0
  244. /package/dist/img/sprite/{preview-tag-video.svg → sprite/preview-tag-video.svg} +0 -0
  245. /package/dist/img/sprite/{prompter.svg → sprite/prompter.svg} +0 -0
  246. /package/dist/img/sprite/{queue-member.svg → sprite/queue-member.svg} +0 -0
  247. /package/dist/img/sprite/{radio--checked.svg → sprite/radio--checked.svg} +0 -0
  248. /package/dist/img/sprite/{radio.svg → sprite/radio.svg} +0 -0
  249. /package/dist/img/sprite/{rec-off.svg → sprite/rec-off.svg} +0 -0
  250. /package/dist/img/sprite/{rec.svg → sprite/rec.svg} +0 -0
  251. /package/dist/img/sprite/{refresh.svg → sprite/refresh.svg} +0 -0
  252. /package/dist/img/sprite/{role.svg → sprite/role.svg} +0 -0
  253. /package/dist/img/sprite/{rounded-info.svg → sprite/rounded-info.svg} +0 -0
  254. /package/dist/img/sprite/{scorecard.svg → sprite/scorecard.svg} +0 -0
  255. /package/dist/img/sprite/{search.svg → sprite/search.svg} +0 -0
  256. /package/dist/img/sprite/{send-arrow.svg → sprite/send-arrow.svg} +0 -0
  257. /package/dist/img/sprite/{settings.svg → sprite/settings.svg} +0 -0
  258. /package/dist/img/sprite/{sort-arrow-down.svg → sprite/sort-arrow-down.svg} +0 -0
  259. /package/dist/img/sprite/{sort-arrow-up.svg → sprite/sort-arrow-up.svg} +0 -0
  260. /package/dist/img/sprite/{sound-off.svg → sprite/sound-off.svg} +0 -0
  261. /package/dist/img/sprite/{sound-on.svg → sprite/sound-on.svg} +0 -0
  262. /package/dist/img/sprite/{star--filled.svg → sprite/star--filled.svg} +0 -0
  263. /package/dist/img/sprite/{star.svg → sprite/star.svg} +0 -0
  264. /package/dist/img/sprite/{stop.svg → sprite/stop.svg} +0 -0
  265. /package/dist/img/sprite/{stt-download.svg → sprite/stt-download.svg} +0 -0
  266. /package/dist/img/sprite/{stt-search.svg → sprite/stt-search.svg} +0 -0
  267. /package/dist/img/sprite/{stt.svg → sprite/stt.svg} +0 -0
  268. /package/dist/img/sprite/{telegram-bot.svg → sprite/telegram-bot.svg} +0 -0
  269. /package/dist/img/sprite/{tick.svg → sprite/tick.svg} +0 -0
  270. /package/dist/img/sprite/{tts-download.svg → sprite/tts-download.svg} +0 -0
  271. /package/dist/img/sprite/{unpin.svg → sprite/unpin.svg} +0 -0
  272. /package/dist/img/sprite/{upload.svg → sprite/upload.svg} +0 -0
  273. /package/dist/img/sprite/{user.svg → sprite/user.svg} +0 -0
  274. /package/dist/img/sprite/{video-cam-off.svg → sprite/video-cam-off.svg} +0 -0
  275. /package/dist/img/sprite/{video-cam.svg → sprite/video-cam.svg} +0 -0
  276. /package/dist/img/sprite/{zoom-in.svg → sprite/zoom-in.svg} +0 -0
  277. /package/dist/img/sprite/{zoom-out.svg → sprite/zoom-out.svg} +0 -0
@@ -19,13 +19,14 @@
19
19
  <slot
20
20
  name="label"
21
21
  v-bind="{ label }"
22
- >{{ requiredLabel }}
22
+ >
23
+ {{ requiredLabel }}
23
24
  </slot>
24
25
  </wt-label>
25
26
  <div class="wt-input__wrapper">
26
27
  <input
27
28
  :id="name"
28
- ref="wt-input"
29
+ ref="WtInput"
29
30
  :class="{
30
31
  'wt-input--is-password': isPassword,
31
32
  }"
@@ -41,212 +42,234 @@
41
42
  @keyup="$emit('keyup', $event)"
42
43
  >
43
44
  <div
44
- ref="after-wrapper"
45
+ ref="AfterWrapper"
45
46
  class="wt-input__after-wrapper"
46
47
  >
47
48
  <slot
48
49
  name="after-input"
49
- ></slot>
50
+ />
50
51
  <slot
51
52
  v-if="isPassword"
52
53
  name="show-password"
53
54
  v-bind="{
54
- isPasswordVisible,
55
- switchVisibilityPassword,
56
- }"
55
+ isPasswordVisible,
56
+ switchVisibilityPassword,
57
+ }"
57
58
  >
58
59
  <wt-icon-btn
59
60
  :disabled="disabled"
60
61
  :icon="showPasswordIcon"
61
62
  @click="switchVisibilityPassword"
62
- ></wt-icon-btn>
63
+ />
63
64
  </slot>
64
65
  </div>
65
66
  </div>
66
67
  <wt-input-info
67
68
  v-if="isValidation"
68
69
  :invalid="invalid"
69
- >{{ validationText }}
70
+ >
71
+ {{ validationText }}
70
72
  </wt-input-info>
71
73
  </div>
72
74
  </template>
73
75
 
74
- <script>
75
- import validationMixin from '../../mixins/validationMixin/validationMixin';
76
+ <script setup>
77
+ import {
78
+ ref, computed, useSlots, onMounted,
79
+ } from 'vue';
80
+ import { useValidation } from '../../mixins/validationMixin/useValidation';
76
81
 
77
82
  /*
78
83
  * IMPORTANT: WT-INPUT SHOULD SUPPORT VUE 3 AND VUE 2 V-MODEL INTERFACES SO THAT THERE'S
79
84
  * TWO PROPS: VALUE AND MODELVALUE, AND 2 EVENTS: @UPDATE:MODELVALUE AND @INPUT
80
85
  * */
81
- export default {
82
- name: 'wt-input',
83
- mixins: [validationMixin],
84
- props: {
85
- value: {
86
- type: [String, Number],
87
- },
88
- /**
89
- * Current input modelValue (`v-model`)
90
- */
91
- modelValue: {
92
- type: [String, Number],
93
- },
94
- /**
95
- * Form input label
96
- */
97
- label: {
98
- type: String,
99
- default: '',
100
- },
101
- /**
102
- * Form input placeholder
103
- */
104
- placeholder: {
105
- type: String,
106
- },
107
- /**
108
- * Form input name
109
- */
110
- name: {
111
- type: String,
112
- default: '',
113
- },
114
- /**
115
- * Form input type
116
- */
117
- type: {
118
- type: String,
119
- default: 'text',
120
- },
121
- /**
122
- * Native input required attribute
123
- */
124
- required: {
125
- type: Boolean,
126
- default: false,
127
- description: 'Native input required attribute',
128
- },
129
- /**
130
- * Native input disabled attribute
131
- */
132
- disabled: {
133
- type: Boolean,
134
- default: false,
135
- description: 'Native input disabled attribute',
136
- },
137
- /**
138
- * Status of show password icon display
139
- */
140
- hasShowPassword: {
141
- type: Boolean,
142
- default: false,
143
- },
144
-
145
- /**
146
- * Native number input restrictions
147
- */
148
- numberMin: {
149
- type: Number,
150
- default: 0,
151
- },
152
-
153
- /**
154
- * Native number input restrictions
155
- */
156
- numberMax: {
157
- type: Number,
158
- },
159
-
160
- outline: {
161
- type: Boolean,
162
- default: false,
163
- },
164
-
165
- labelProps: {
166
- type: Object,
167
- description: 'Object with props, passed down to wt-label as props',
168
- },
169
-
170
- preventTrim: {
171
- type: Boolean,
172
- default: false,
173
- },
86
+ const props = defineProps({
87
+ value: {
88
+ type: [String, Number],
89
+ },
90
+ /**
91
+ * Current input modelValue (`v-model`)
92
+ */
93
+ modelValue: {
94
+ type: [String, Number],
95
+ },
96
+ /**
97
+ * Form input label
98
+ */
99
+ label: {
100
+ type: String,
101
+ default: '',
102
+ },
103
+ /**
104
+ * Form input placeholder
105
+ */
106
+ placeholder: {
107
+ type: String,
108
+ },
109
+ /**
110
+ * Form input name
111
+ */
112
+ name: {
113
+ type: String,
114
+ default: '',
115
+ },
116
+ /**
117
+ * Form input type
118
+ */
119
+ type: {
120
+ type: String,
121
+ default: 'text',
122
+ },
123
+ /**
124
+ * Native input required attribute
125
+ */
126
+ required: {
127
+ type: Boolean,
128
+ default: false,
129
+ description: 'Native input required attribute',
130
+ },
131
+ /**
132
+ * Native input disabled attribute
133
+ */
134
+ disabled: {
135
+ type: Boolean,
136
+ default: false,
137
+ description: 'Native input disabled attribute',
174
138
  },
175
- emits: ['update:modelValue', 'input', 'keyup'],
176
- data: () => ({
177
- inputType: '',
178
- isPasswordVisible: false,
179
- }),
180
-
181
- watch: {
182
- type: {
183
- immediate: true,
184
- handler(type) {
185
- let inputType = type;
186
- // Safari has bug for number input
187
- if (typeof window !== 'undefined' || typeof document !== 'undefined') {
188
- const ua = navigator.userAgent.toLocaleLowerCase();
189
- if (
190
- ua.indexOf('safari') !== -1
191
- && ua.indexOf('chrome') === -1
192
- && type === 'number'
193
- ) {
194
- this.isNumberTypeSafari = true;
195
- inputType = 'text';
196
- }
197
- }
198
- this.inputType = inputType;
199
- },
200
- },
139
+ /**
140
+ * Status of show password icon display
141
+ */
142
+ hasShowPassword: {
143
+ type: Boolean,
144
+ default: false,
201
145
  },
202
146
 
203
- computed: {
204
- inputValue() {
205
- return this.value !== undefined ? this.value : this.modelValue;
206
- },
147
+ /**
148
+ * Native number input restrictions
149
+ */
150
+ numberMin: {
151
+ type: Number,
152
+ default: 0,
153
+ },
207
154
 
208
- hasLabel() {
209
- return !!(this.label || this.$slots.label);
210
- },
155
+ /**
156
+ * Native number input restrictions
157
+ */
158
+ numberMax: {
159
+ type: Number,
160
+ },
211
161
 
212
- requiredLabel() {
213
- return this.required ? `${this.label}*` : this.label;
214
- },
162
+ outline: {
163
+ type: Boolean,
164
+ default: false,
165
+ },
215
166
 
216
- isPassword() {
217
- return this.type === 'password' && this.hasShowPassword;
218
- },
167
+ labelProps: {
168
+ type: Object,
169
+ description: 'Object with props, passed down to wt-label as props',
170
+ },
219
171
 
220
- showPasswordIcon() {
221
- return this.isPasswordVisible ? 'eye--closed' : 'eye--opened';
222
- },
172
+ preventTrim: {
173
+ type: Boolean,
174
+ default: false,
223
175
  },
224
- methods: {
225
- inputHandler(event) {
226
- const value = this.preventTrim ? event.target.value : event.target.value.trim();
227
- this.$emit('update:modelValue', value);
228
- this.$emit('input', value);
229
- },
230
-
231
- switchVisibilityPassword() {
232
- this.isPasswordVisible = !this.isPasswordVisible;
233
- this.inputType = this.isPasswordVisible ? 'text' : 'password';
234
- },
235
-
236
- async updateInputPaddings() {
237
- // cant test this thing cause vue test utils doesnt render elements width :/
238
- const afterWrapperWidth = this.$refs['after-wrapper'].offsetWidth;
239
- const inputEl = this.$refs['wt-input'];
240
- const defaultInputPadding = getComputedStyle(document.documentElement)
241
- .getPropertyValue('--input-padding');
242
- if (afterWrapperWidth >= inputEl.offsetWidth) return; // fixes https://my.webitel.com/browse/WTEL-2635
243
- inputEl.style.paddingRight = `calc(${defaultInputPadding} * 2 + ${afterWrapperWidth}px)`;
244
- },
176
+
177
+ // validation rules
178
+ // TODO: move to separate file to make it reusable
179
+ v: {
180
+ type: Object,
245
181
  },
246
- mounted() {
247
- this.updateInputPaddings();
182
+ customValidators: {
183
+ type: Array,
184
+ default: () => [],
248
185
  },
249
- };
186
+ });
187
+ const emit = defineEmits(['update:modelValue', 'input', 'keyup']);
188
+
189
+ const slots = useSlots();
190
+ const {
191
+ isValidation,
192
+ invalid,
193
+ validationText,
194
+ } = useValidation({ v: props.v, customValidators: props.customValidators });
195
+
196
+ // toggles password <-> text at showPassword
197
+ const inputType = ref('');
198
+ inputType.value = props.type;
199
+
200
+ // template ref
201
+ const AfterWrapper = ref(null);
202
+ // template ref
203
+ const WtInput = ref(null);
204
+
205
+ const isPasswordVisible = ref(false);
206
+
207
+ // FIXME: uncomment and test, because this code was copy-pasted from vue-storefront long ago
208
+ // watch: {
209
+ // type: {
210
+ // immediate: true,
211
+ // handler(type) {
212
+ // let inputType = type;
213
+ // // Safari has bug for number input
214
+ // if (typeof window !== 'undefined' || typeof document !== 'undefined') {
215
+ // const ua = navigator.userAgent.toLocaleLowerCase();
216
+ // if (
217
+ // ua.indexOf('safari') !== -1
218
+ // && ua.indexOf('chrome') === -1
219
+ // && type === 'number'
220
+ // ) {
221
+ // inputType = 'text';
222
+ // }
223
+ // }
224
+ // this.inputType = inputType;
225
+ // },
226
+ // },
227
+ // },
228
+
229
+ const inputValue = computed(() => {
230
+ return props.value !== undefined ? props.value : props.modelValue;
231
+ });
232
+
233
+ const hasLabel = computed(() => {
234
+ return !!(props.label || slots.label);
235
+ });
236
+
237
+ const requiredLabel = computed(() => {
238
+ return props.required ? `${props.label}*` : props.label;
239
+ });
240
+
241
+ const isPassword = computed(() => {
242
+ return props.type === 'password' && props.hasShowPassword;
243
+ });
244
+
245
+ const showPasswordIcon = computed(() => {
246
+ return isPasswordVisible.value ? 'eye--closed' : 'eye--opened';
247
+ });
248
+
249
+ function inputHandler(event) {
250
+ const value = props.preventTrim ? event.target.value : event.target.value.trim();
251
+ emit('update:modelValue', value);
252
+ emit('input', value);
253
+ }
254
+
255
+ function switchVisibilityPassword() {
256
+ isPasswordVisible.value = !isPasswordVisible.value;
257
+ inputType.value = isPasswordVisible.value ? 'text' : 'password';
258
+ }
259
+
260
+ function updateInputPaddings() {
261
+ // cant test this thing cause vue test utils doesnt render elements width :/
262
+ const afterWrapperWidth = AfterWrapper.value.offsetWidth;
263
+ const inputEl = WtInput.value;
264
+ const defaultInputPadding = getComputedStyle(document.documentElement)
265
+ .getPropertyValue('--input-padding');
266
+ if (afterWrapperWidth >= inputEl.offsetWidth) return; // fixes https://my.webitel.com/browse/WTEL-2635
267
+ inputEl.style.paddingRight = `calc(${defaultInputPadding} * 2 + ${afterWrapperWidth}px)`;
268
+ }
269
+
270
+ onMounted(() => {
271
+ updateInputPaddings();
272
+ });
250
273
  </script>
251
274
 
252
275
  <style lang="scss">
@@ -267,18 +290,6 @@ export default {
267
290
  position: relative;
268
291
  }
269
292
 
270
- .wt-label {
271
- .wt-input:hover &,
272
- .wt-input:focus-within & {
273
- color: var(--form-label--hover-color);
274
- }
275
-
276
- .wt-input--invalid:hover &,
277
- .wt-input--invalid:focus-within & {
278
- color: var(--label--invalid-color);
279
- }
280
- }
281
-
282
293
  .wt-input__input {
283
294
  @extend %typo-body-1;
284
295
  @include wt-placeholder;
@@ -5,13 +5,13 @@
5
5
  'wt-input-info--invalid': invalid,
6
6
  }"
7
7
  >
8
- <slot></slot>
8
+ <slot />
9
9
  </div>
10
10
  </template>
11
11
 
12
12
  <script>
13
13
  export default {
14
- name: 'wt-input-info',
14
+ name: 'WtInputInfo',
15
15
  props: {
16
16
  invalid: {
17
17
  type: Boolean,
@@ -5,7 +5,7 @@
5
5
  :class="{ 'wt-item-link--disabled': disabled }"
6
6
  class="wt-item-link"
7
7
  >
8
- <slot></slot>
8
+ <slot />
9
9
  </router-link>
10
10
  </template>
11
11
 
@@ -8,7 +8,7 @@
8
8
  }"
9
9
  :for="this.for"
10
10
  >
11
- <slot></slot>
11
+ <slot />
12
12
  <wt-hint
13
13
  v-if="hint"
14
14
  >{{ hint }}
@@ -18,7 +18,7 @@
18
18
 
19
19
  <script>
20
20
  export default {
21
- name: 'wt-label',
21
+ name: 'WtLabel',
22
22
  props: {
23
23
  for: {
24
24
  type: String,
@@ -1,12 +1,15 @@
1
1
  <template>
2
2
  <div class="wt-load-bar">
3
- <span :style="`width: ${this.progressWidth}%;`" class="wt-load-bar__progress"></span>
3
+ <span
4
+ :style="`width: ${progressWidth}%;`"
5
+ class="wt-load-bar__progress"
6
+ />
4
7
  </div>
5
8
  </template>
6
9
 
7
10
  <script>
8
11
  export default {
9
- name: 'wt-load-bar',
12
+ name: 'WtLoadBar',
10
13
  props: {
11
14
  max: {
12
15
  type: [Number, String],
@@ -1,7 +1,16 @@
1
1
  <template>
2
2
  <div class="wt-loader wt-loader--md">
3
- <svg class="wt-loader--md__svg" viewBox="0 0 80 80">
4
- <rect class="wt-loader--md__svg__rect" x="8" y="8" width="64" height="64"></rect>
3
+ <svg
4
+ class="wt-loader--md__svg"
5
+ viewBox="0 0 80 80"
6
+ >
7
+ <rect
8
+ class="wt-loader--md__svg__rect"
9
+ x="8"
10
+ y="8"
11
+ width="64"
12
+ height="64"
13
+ />
5
14
  </svg>
6
15
  </div>
7
16
  </template>
@@ -1,9 +1,16 @@
1
1
  <!--https://codepen.io/zapdev/pen/MYJRaj-->
2
2
 
3
3
  <template>
4
- <div class="wt-loader--sm" :class="`wt-loader--sm--${color}`">
4
+ <div
5
+ class="wt-loader--sm"
6
+ :class="`wt-loader--sm--${color}`"
7
+ >
5
8
  <svg viewBox="0 0 24 24">
6
- <circle cx="12" cy="12" r="8" />
9
+ <circle
10
+ cx="12"
11
+ cy="12"
12
+ r="8"
13
+ />
7
14
  </svg>
8
15
  </div>
9
16
  </template>
@@ -1,6 +1,13 @@
1
1
  <template>
2
- <wt-loader-sm class="wt-loader" v-if="size === 'sm'" :color="color"></wt-loader-sm>
3
- <wt-loader-md class="wt-loader" v-else-if="size === 'md'"></wt-loader-md>
2
+ <wt-loader-sm
3
+ v-if="size === 'sm'"
4
+ class="wt-loader"
5
+ :color="color"
6
+ />
7
+ <wt-loader-md
8
+ v-else-if="size === 'md'"
9
+ class="wt-loader"
10
+ />
4
11
  </template>
5
12
 
6
13
  <script>
@@ -8,7 +15,7 @@ import WtLoaderSm from './_internals/wt-loader--sm.vue';
8
15
  import WtLoaderMd from './_internals/wt-loader--md.vue';
9
16
 
10
17
  export default {
11
- name: 'wt-loader',
18
+ name: 'WtLoader',
12
19
  components: {
13
20
  WtLoaderSm,
14
21
  WtLoaderMd,
@@ -1,13 +1,19 @@
1
1
  <template>
2
- <aside v-clickaway="close" class="wt-navigation-bar">
2
+ <aside
3
+ v-clickaway="close"
4
+ class="wt-navigation-bar"
5
+ >
3
6
  <wt-icon-btn
4
7
  :class="{'active': isOpened}"
5
8
  class="wt-navigation-bar__menu-btn"
6
9
  icon="menu"
7
10
  @click="isOpened = !isOpened"
8
- ></wt-icon-btn>
11
+ />
9
12
  <transition name="fade">
10
- <nav v-show="isOpened" class="wt-navigation-bar__nav">
13
+ <nav
14
+ v-show="isOpened"
15
+ class="wt-navigation-bar__nav"
16
+ >
11
17
  <header class="wt-navigation-bar__nav-header">
12
18
  <!-- vue cli build target lib cant handle dynamic require :( -->
13
19
  <img
@@ -50,7 +56,7 @@
50
56
  class="wt-navigation-bar__nav-close"
51
57
  icon="close"
52
58
  @click="isOpened = false"
53
- ></wt-icon-btn>
59
+ />
54
60
  </header>
55
61
  <wt-divider />
56
62
  <ul class="wt-navigation-bar__nav-list">
@@ -66,7 +72,8 @@
66
72
  :to="navItem.route"
67
73
  class="wt-navigation-bar__nav-item-link"
68
74
  @click="close"
69
- > {{ navItem.name || navItem.value }}
75
+ >
76
+ {{ navItem.name || navItem.value }}
70
77
  </router-link>
71
78
  </div>
72
79
  </div>
@@ -85,7 +92,7 @@
85
92
  class="wt-navigation-bar__expansion-arrow"
86
93
  color="active"
87
94
  icon="arrow-right"
88
- ></wt-icon>
95
+ />
89
96
  </button>
90
97
  <expand-transition>
91
98
  <ul v-if="isExpanded(navItem)">
@@ -100,7 +107,8 @@
100
107
  :to="nestedRoute(subNavItem, navItem)"
101
108
  class="wt-navigation-bar__nav-item-link wt-navigation-bar__nav-item-link--subnav"
102
109
  @click="close"
103
- >{{ subNavItem.name || subNavItem.value }}
110
+ >
111
+ {{ subNavItem.name || subNavItem.value }}
104
112
  </router-link>
105
113
  </div>
106
114
  </li>
@@ -118,7 +126,7 @@
118
126
  import ExpandTransition from '../transitions/wt-expand-transition.vue';
119
127
 
120
128
  export default {
121
- name: 'wt-navigation-bar',
129
+ name: 'WtNavigationBar',
122
130
  components: { ExpandTransition },
123
131
  props: {
124
132
  currentApp: {
@@ -7,10 +7,10 @@
7
7
  class="wt-notification__icon"
8
8
  :icon="notificationIcon"
9
9
  :color="notificationIconColor"
10
- ></wt-icon>
10
+ />
11
11
 
12
12
  <p class="wt-notification__text">
13
- <slot></slot>
13
+ <slot />
14
14
  </p>
15
15
  </article>
16
16
  </template>
@@ -18,7 +18,7 @@
18
18
  <script>
19
19
 
20
20
  export default {
21
- name: 'wt-notification',
21
+ name: 'WtNotification',
22
22
  props: {
23
23
  type: {
24
24
  type: String,