@webitel/ui-sdk 26.8.21 → 26.8.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{clients-Ba7VhTMH.js → clients-Cgrz-ee-.js} +707 -22
- package/dist/{components-ABAwRPPa.js → components-Q-Lkl5tb.js} +882 -846
- package/dist/{composables-C_OatTQJ.js → composables-BtWSAI5D.js} +14 -12
- package/dist/ui-sdk.css +1 -1
- package/dist/ui-sdk.js +51 -50
- package/dist/ui-sdk.umd.cjs +695 -594
- package/dist/useEventBus-B-ZeklLu.js +5 -0
- package/dist/{useValidation-DgSm80YX.js → useValidation-C_F39G5j.js} +5 -5
- package/dist/{useVidstackSrc-B4mUti_c.js → useVidstackSrc-aQcqC_v0.js} +5 -5
- package/dist/{vidstack-C6nBVWwn-cKiWT0KJ.js → vidstack-C6nBVWwn-DNsvM1pU.js} +2 -2
- package/dist/{vidstack-CI5oafcm-DfWpvayJ.js → vidstack-CI5oafcm-EXmYmdjq.js} +1 -1
- package/dist/{vidstack-DUnfBERX2-BJtKHFxc.js → vidstack-DUnfBERX2-jgzDS0Hg.js} +1 -1
- package/dist/{vidstack-audio-BCPraiiR.js → vidstack-audio-CPO0A50Q.js} +1 -1
- package/dist/{vidstack-dash-MBx5aEEA.js → vidstack-dash-DHt7tTPh.js} +2 -2
- package/dist/{vidstack-hls-BbZsbfaO.js → vidstack-hls-WW1jeu5R.js} +2 -2
- package/dist/vidstack-video-Bwash4bY.js +2 -0
- package/dist/vue-router-Dwey8MMv.js +16 -0
- package/dist/{wt-button-G2Q1uf_y.js → wt-button-OZTROX1W.js} +3 -3
- package/dist/{wt-chat-emoji-DM6G80G_.js → wt-chat-emoji-CiL3CTCQ.js} +3 -3
- package/dist/{wt-datepicker-DTUMTWJK.js → wt-datepicker-BwjMwR9-.js} +38 -34
- package/dist/{wt-display-chip-items-3GRXkRfT.js → wt-display-chip-items-DXfs6aQp.js} +2 -2
- package/dist/{wt-dual-panel-Dhj8Eg_y.js → wt-dual-panel-BEGLGU7F.js} +1 -1
- package/dist/{wt-expansion-card-BzhcCehz.js → wt-expansion-card-CpmnVJ03.js} +1 -1
- package/dist/{wt-galleria-qPHnXPx7.js → wt-galleria-CgY38PPx.js} +3 -6
- package/dist/{wt-icon-btn-BJl5VlM9.js → wt-icon-btn-hAWVJdNG.js} +2 -2
- package/dist/{wt-navigation-menu-CenQi_-T.js → wt-navigation-menu-BMupOW07.js} +2 -2
- package/dist/{wt-notifications-bar-C7cK0wEL.js → wt-notifications-bar-CqVk9cm7.js} +1 -1
- package/dist/{wt-player-Ca2x4geU.js → wt-player-vsOVUgi7.js} +17 -15
- package/dist/{wt-screen-recordings-action-Dzzo0eqW.js → wt-screen-recordings-action-Dj6ITuhE.js} +1 -1
- package/dist/{wt-search-bar-DtJL-csc.js → wt-search-bar-DaBSWvlP.js} +3 -3
- package/dist/wt-send-message-popup-BvnTPEeX.js +1208 -0
- package/dist/wt-start-page-BFQExFUj.js +73 -0
- package/dist/{wt-status-select-D1hAjCAS.js → wt-status-select-B-N9Fvz4.js} +2 -2
- package/dist/{wt-table-DJ3yOWZV.js → wt-table-C4PZJ3rP.js} +49 -47
- package/dist/{wt-table-column-select-CgEh5BAF.js → wt-table-column-select-D4c56HPB.js} +2 -2
- package/dist/{wt-time-input-u5Ay5_X5.js → wt-time-input-BEBrSugB.js} +9 -2
- package/dist/{wt-timepicker-CB8HzUZw.js → wt-timepicker-CS5S9HHJ.js} +11 -4
- package/dist/{wt-toast-BbaZZWKt.js → wt-toast-Cb15-PN4.js} +1 -1
- package/dist/{wt-tree-DZ9ErOGj.js → wt-tree-CMIpbXBo.js} +40 -40
- package/dist/{wt-tree-table-C0ZIJXcv.js → wt-tree-table-CVvWMduu.js} +7 -7
- package/dist/{wt-type-extension-value-input-kzX2hJY_.js → wt-type-extension-value-input-bsEXPInV.js} +14 -9
- package/dist/{wt-vidstack-player-DbRHboYo.js → wt-vidstack-player-BymuGcAX.js} +46 -42
- package/package.json +4 -1
- package/src/api/clients/_shared/types.ts +30 -0
- package/src/api/clients/caseSources/caseSources.ts +17 -8
- package/src/api/clients/quickReplies/quickReplies.ts +17 -8
- package/src/api/clients/roles/roles.ts +21 -12
- package/src/api/clients/wtTypes/sysTypes/sysTypes.ts +16 -4
- package/src/api/clients/wtTypes/typeExtensions/typeExtensions.ts +27 -9
- package/src/api/websocket/WebSocketClientController.ts +13 -5
- package/src/api/websocket/{config.js → config.ts} +5 -3
- package/src/api/websocket/websocketErrorEventHandler.ts +1 -1
- package/src/components/_internals/composables/useExpansion/useExpansion.ts +6 -1
- package/src/components/_internals/composables/useGalleriaMaskClick/useGalleriaMaskClick.ts +5 -3
- package/src/components/_internals/composables/useInputControl/useInputControl.ts +5 -3
- package/src/components/_internals/composables/useSelect/types.ts +69 -0
- package/src/components/_internals/composables/useSelect/useSelect.ts +4 -2
- package/src/components/_internals/composables/useSelect/useSelectCustomValues.ts +3 -2
- package/src/components/_internals/composables/useSelect/useSelectDropdown.ts +4 -3
- package/src/components/_internals/composables/useSelect/useSelectOptions.ts +20 -14
- package/src/components/_internals/composables/useSelect/useSelectUtils.ts +20 -7
- package/src/components/_internals/composables/useTableColumnDrag/useTableColumnDrag.ts +22 -12
- package/src/components/_internals/composables/useWtTable/useWtTable.ts +6 -2
- package/src/components/_internals/types/PrimevueInstance.ts +15 -0
- package/src/components/_shared/settings-panel/components/speed-settings/speed-settings.vue +6 -1
- package/src/components/on-demand/wt-display-chip-items/wt-display-chip-items.vue +6 -1
- package/src/components/on-demand/wt-navigation-menu/components/_internals/nav-menu-lvl-1.vue +0 -2
- package/src/components/on-demand/wt-navigation-menu/components/_internals/nav-menu-lvl-2.vue +0 -2
- package/src/components/on-demand/wt-screen-recordings-action/wt-screen-recordings-action.vue +12 -4
- package/src/components/on-demand/wt-send-message-popup/wt-send-message-popup.vue +17 -7
- package/src/components/on-demand/wt-type-extension-value-input/wt-type-extension-value-input.vue +36 -15
- package/src/components/on-demand/wt-upload-file-icon-btn/wt-upload-file-icon-btn.vue +1 -1
- package/src/components/wt-badge-new/wt-badge.vue +1 -1
- package/src/components/wt-button/wt-button.vue +5 -5
- package/src/components/wt-checkbox/wt-checkbox.vue +4 -2
- package/src/components/wt-chip/wt-chip.vue +1 -1
- package/src/components/wt-datepicker/wt-datepicker.vue +30 -20
- package/src/components/wt-dual-panel/wt-dual-panel.vue +1 -1
- package/src/components/wt-galleria/wt-galleria.vue +1 -11
- package/src/components/wt-image/wt-image.vue +3 -3
- package/src/components/wt-input-number/wt-input-number.vue +8 -13
- package/src/components/wt-input-text/wt-input-text.vue +15 -17
- package/src/components/wt-intersection-observer/wt-intersection-observer.vue +1 -1
- package/src/components/wt-message/wt-message.vue +1 -1
- package/src/components/wt-multi-select/wt-multi-select.vue +22 -12
- package/src/components/wt-navigation-bar/types/WtNavigationBar.ts +3 -1
- package/src/components/wt-navigation-bar/wt-navigation-bar.vue +34 -18
- package/src/components/wt-password/wt-password.vue +12 -13
- package/src/components/wt-player/wt-player.vue +7 -2
- package/src/components/wt-popover/wt-popover.vue +5 -1
- package/src/components/wt-popup/wt-popup.vue +5 -1
- package/src/components/wt-radio/wt-radio.vue +1 -1
- package/src/components/wt-search-bar/wt-search-bar.vue +17 -10
- package/src/components/wt-single-select/wt-single-select.vue +19 -12
- package/src/components/wt-status-select/wt-status-select.vue +2 -2
- package/src/components/wt-table/types/WtTable.ts +11 -1
- package/src/components/wt-table/wt-table.vue +43 -24
- package/src/components/wt-table-column-select/wt-table-column-select.vue +3 -5
- package/src/components/wt-textarea/wt-textarea.vue +9 -15
- package/src/components/wt-time-input/wt-time-input.vue +7 -4
- package/src/components/wt-timepicker/wt-timepicker.vue +6 -3
- package/src/components/wt-toast/wt-toast.vue +2 -2
- package/src/components/wt-tree/wt-tree.vue +6 -5
- package/src/components/wt-tree-line/types/wt-tree-node.ts +6 -0
- package/src/components/wt-tree-line/wt-tree-line.vue +29 -15
- package/src/components/wt-tree-table/wt-tree-table.vue +16 -18
- package/src/components/wt-tree-table-row/wt-tree-table-row.vue +9 -4
- package/src/components/wt-vidstack-player/components/buttons/fullscreen-button.vue +2 -3
- package/src/components/wt-vidstack-player/components/buttons/play-button.vue +1 -5
- package/src/components/wt-vidstack-player/components/controls-group/controls-group.vue +2 -4
- package/src/components/wt-vidstack-player/components/layouts/video-layout.vue +2 -4
- package/src/components/wt-vidstack-player/components/panels/playback-controls-panel/components/buttons/fullscreen-button.vue +0 -2
- package/src/components/wt-vidstack-player/components/panels/playback-controls-panel/components/buttons/play-button.vue +2 -4
- package/src/components/wt-vidstack-player/components/panels/screen-sharing-controls-panel/screen-sharing-controls-panel.vue +4 -4
- package/src/components/wt-vidstack-player/components/panels/video-call-controls-panel/video-call-controls-panel.vue +3 -3
- package/src/components/wt-vidstack-player/components/panels/video-display-panel/video-display-panel.vue +4 -4
- package/src/components/wt-vidstack-player/components/screenshot-box/screenshot-box.vue +1 -1
- package/src/components/wt-vidstack-player/composables/useVidstackPlayerSize.ts +11 -0
- package/src/components/wt-vidstack-player/composables/useVidstackSrc.ts +27 -6
- package/src/components/wt-vidstack-player/wt-vidstack-player.vue +7 -4
- package/src/enums/MessageColor/MessageColor.ts +1 -1
- package/src/enums/MessageVariant/MessageVariant.ts +2 -1
- package/src/install.ts +6 -2
- package/src/locale/en/en.js +3 -0
- package/src/locale/es/es.js +3 -0
- package/src/locale/kz/kz.js +3 -0
- package/src/locale/pl/pl.js +3 -0
- package/src/locale/ro/ro.js +3 -0
- package/src/locale/ru/ru.js +3 -0
- package/src/locale/uk/uk.js +3 -0
- package/src/locale/uz/uz.js +3 -0
- package/src/locale/vi/vi.js +3 -0
- package/src/mixins/validationMixin/regle/useRegleValidation.ts +2 -2
- package/src/mixins/validationMixin/useValidation.ts +1 -1
- package/src/mixins/validationMixin/vuelidate/useVuelidateValidation.ts +25 -8
- package/src/modules/CSVExport/CSVExport.js +1 -1
- package/src/modules/CallSession/modules/VideoCall/video-call.vue +34 -16
- package/src/modules/DeleteConfirmationPopup/composables/useDeleteConfirmationPopup.js +1 -1
- package/src/modules/FilesExport/composables/useFilesExport.ts +1 -1
- package/src/modules/UploadCsvPopup/components/wt-upload-csv-popup.vue +2 -2
- package/src/modules/UploadCsvPopup/composable/useUploadCsv.ts +39 -12
- package/src/modules/UploadCsvPopup/scripts/normalizeCSVData.ts +20 -17
- package/src/modules/UploadCsvPopup/scripts/parseCSV.ts +2 -2
- package/src/modules/UploadCsvPopup/scripts/processFile.ts +2 -2
- package/src/modules/UploadCsvPopup/scripts/splitAndSaveData.ts +8 -2
- package/src/modules/UserNotifications/stores/userNotificationsStore.ts +9 -1
- package/src/modules/Userinfo/classes/ApplicationsAccess.ts +12 -6
- package/src/modules/Userinfo/mappings/mappings.ts +10 -3
- package/src/modules/Userinfo/scripts/utils.ts +8 -4
- package/src/modules/Userinfo/stores/accessStore.ts +16 -16
- package/src/modules/Userinfo/types/UserAccess.ts +1 -1
- package/src/plugins/breakpoint/breakpoint.plugin.ts +1 -1
- package/src/scripts/compareSize.ts +4 -4
- package/src/scripts/downloadFile/downloadFile.ts +1 -1
- package/src/scripts/normalizeDatetime.ts +2 -2
- package/src/utils/displayText.ts +1 -1
- package/types/.tsbuildinfo +1 -1
- package/types/api/clients/_shared/types.d.ts +23 -0
- package/types/api/clients/caseSources/caseSources.d.ts +7 -15
- package/types/api/clients/chatGateways/defaults/webChatGateway.d.ts +1 -1
- package/types/api/clients/gateways/defaults/trunkingGateway.d.ts +1 -1
- package/types/api/clients/quickReplies/quickReplies.d.ts +7 -15
- package/types/api/clients/roles/roles.d.ts +8 -16
- package/types/api/clients/wtTypes/sysTypes/sysTypes.d.ts +11 -12
- package/types/api/clients/wtTypes/typeExtensions/typeExtensions.d.ts +19 -18
- package/types/api/defaults/getDefaultGetListResponse/getDefaultGetListResponse.d.ts +1 -1
- package/types/api/defaults/getDefaultGetParams/getDefaultGetParams.d.ts +2 -2
- package/types/api/transformers/applyTransform.d.ts +2 -2
- package/types/api/websocket/WebSocketClientController.d.ts +10 -9
- package/types/api/websocket/config.d.ts +3 -2
- package/types/api/websocket/websocketErrorEventHandler.d.ts +5 -1
- package/types/assets/icons/iconsRepository.d.ts +1 -1
- package/types/components/_internals/composables/useExpansion/useExpansion.d.ts +6 -1
- package/types/components/_internals/composables/useGalleriaMaskClick/useGalleriaMaskClick.d.ts +2 -1
- package/types/components/_internals/composables/useInputControl/useInputControl.d.ts +4 -2
- package/types/components/_internals/composables/useSelect/types.d.ts +52 -0
- package/types/components/_internals/composables/useSelect/useSelect.d.ts +4 -18
- package/types/components/_internals/composables/useSelect/useSelectCustomValues.d.ts +2 -12
- package/types/components/_internals/composables/useSelect/useSelectDropdown.d.ts +2 -14
- package/types/components/_internals/composables/useSelect/useSelectOptions.d.ts +6 -14
- package/types/components/_internals/composables/useSelect/useSelectUtils.d.ts +5 -4
- package/types/components/_internals/composables/useTableColumnDrag/useTableColumnDrag.d.ts +3 -1
- package/types/components/_internals/composables/useWtTable/useWtTable.d.ts +3 -2
- package/types/components/_internals/types/PrimevueInstance.d.ts +14 -0
- package/types/components/_shared/settings-panel/components/speed-settings/speed-settings.vue.d.ts +2 -2
- package/types/components/_shared/settings-panel/settings-panel.vue.d.ts +1 -1
- package/types/components/on-demand/wt-call-media-action/wt-call-media-action.vue.d.ts +2 -2
- package/types/components/on-demand/wt-chat-emoji/wt-chat-emoji.vue.d.ts +1 -1
- package/types/components/on-demand/wt-display-chip-items/wt-display-chip-items.vue.d.ts +6 -2
- package/types/components/on-demand/wt-navigation-menu/components/_internals/nav-menu-lvl-1.vue.d.ts +6 -6
- package/types/components/on-demand/wt-navigation-menu/components/_internals/nav-menu-lvl-2.vue.d.ts +2 -2
- package/types/components/on-demand/wt-navigation-menu/components/wt-navigation-menu.vue.d.ts +2 -2
- package/types/components/on-demand/wt-route-transition/wt-route-transition.vue.d.ts +1 -1
- package/types/components/on-demand/wt-save-failed-popup/wt-save-failed-popup.vue.d.ts +3 -3
- package/types/components/on-demand/wt-screen-recordings-action/wt-screen-recordings-action.vue.d.ts +10 -2
- package/types/components/on-demand/wt-selection-popup/wt-selection-popup.vue.d.ts +8 -8
- package/types/components/on-demand/wt-send-message-popup/wt-send-message-popup.vue.d.ts +1 -1
- package/types/components/on-demand/wt-table-transition/wt-table-transition.vue.d.ts +1 -1
- package/types/components/on-demand/wt-type-extension-value-input/wt-type-extension-value-input.vue.d.ts +18 -11
- package/types/components/on-demand/wt-upload-file-icon-btn/wt-upload-file-icon-btn.vue.d.ts +3 -3
- package/types/components/transitions/cases/wt-replace-transition.vue.d.ts +1 -1
- package/types/components/transitions/wt-transition.vue.d.ts +1 -1
- package/types/components/wt-action-bar/WtActionBarActionsOrder.d.ts +2 -2
- package/types/components/wt-action-bar/wt-action-bar.vue.d.ts +64 -64
- package/types/components/wt-app-header/wt-app-header.vue.d.ts +1 -1
- package/types/components/wt-app-header/wt-header-actions.vue.d.ts +6 -9
- package/types/components/wt-badge/wt-badge.vue.d.ts +1 -1
- package/types/components/wt-badge-new/wt-badge.vue.d.ts +3 -3
- package/types/components/wt-breadcrumb/wt-breadcrumb.vue.d.ts +1 -1
- package/types/components/wt-button/wt-button.vue.d.ts +2 -2
- package/types/components/wt-button-select/wt-button-select.vue.d.ts +3 -3
- package/types/components/wt-call-media-metric/wt-call-media-metric.vue.d.ts +1 -1
- package/types/components/wt-checkbox/wt-checkbox.vue.d.ts +3 -3
- package/types/components/wt-chip/wt-chip.vue.d.ts +2 -2
- package/types/components/wt-confirm-dialog/wt-confirm-dialog.vue.d.ts +5 -5
- package/types/components/wt-context-menu/wt-context-menu.vue.d.ts +7 -7
- package/types/components/wt-datepicker/wt-datepicker.vue.d.ts +20 -19
- package/types/components/wt-divider/wt-divider.vue.d.ts +1 -1
- package/types/components/wt-dual-panel/wt-dual-panel.vue.d.ts +5 -5
- package/types/components/wt-empty/wt-empty.vue.d.ts +38 -38
- package/types/components/wt-expansion-card/wt-expansion-card.vue.d.ts +3 -3
- package/types/components/wt-expansion-panel/wt-expansion-panel.vue.d.ts +3 -3
- package/types/components/wt-galleria/wt-galleria.vue.d.ts +2 -2
- package/types/components/wt-icon/wt-icon.vue.d.ts +1 -1
- package/types/components/wt-icon-action/wt-icon-action.vue.d.ts +4 -4
- package/types/components/wt-icon-btn/wt-icon-btn.vue.d.ts +3 -3
- package/types/components/wt-image/wt-image.vue.d.ts +2 -2
- package/types/components/wt-inline-add-panel/wt-inline-add-panel.vue.d.ts +3 -3
- package/types/components/wt-input-number/wt-input-number.vue.d.ts +9 -9
- package/types/components/wt-input-text/wt-input-text.vue.d.ts +11 -9
- package/types/components/wt-intersection-observer/wt-intersection-observer.vue.d.ts +1 -1
- package/types/components/wt-item-link/wt-item-link.vue.d.ts +1 -1
- package/types/components/wt-label/mixins/labelUsageMixin.d.ts +1 -1
- package/types/components/wt-label/wt-label.vue.d.ts +1 -1
- package/types/components/wt-menubar/wt-menubar.vue.d.ts +1 -1
- package/types/components/wt-message/wt-message.vue.d.ts +1 -1
- package/types/components/wt-multi-select/wt-multi-select.vue.d.ts +19 -19
- package/types/components/wt-navigation-bar/types/WtNavigationBar.d.ts +2 -1
- package/types/components/wt-navigation-bar/wt-navigation-bar.vue.d.ts +22 -45
- package/types/components/wt-page-header/wt-page-header.vue.d.ts +4 -4
- package/types/components/wt-password/wt-password.vue.d.ts +11 -9
- package/types/components/wt-player/wt-player.vue.d.ts +6 -6
- package/types/components/wt-popover/wt-popover.vue.d.ts +13 -9
- package/types/components/wt-popup/wt-popup.vue.d.ts +8 -4
- package/types/components/wt-radio/wt-radio.vue.d.ts +2 -2
- package/types/components/wt-search-bar/wt-search-bar.vue.d.ts +25 -18
- package/types/components/wt-single-select/wt-single-select.vue.d.ts +18 -15
- package/types/components/wt-slider/wt-slider.vue.d.ts +3 -3
- package/types/components/wt-status-select/wt-status-select.vue.d.ts +3 -3
- package/types/components/wt-stepper/wt-stepper.vue.d.ts +2 -2
- package/types/components/wt-switcher/wt-switcher.vue.d.ts +4 -4
- package/types/components/wt-table/types/WtTable.d.ts +7 -1
- package/types/components/wt-table/wt-table.vue.d.ts +12 -12
- package/types/components/wt-table-actions/wt-table-actions.vue.d.ts +2 -2
- package/types/components/wt-table-column-select/wt-table-column-select.vue.d.ts +1 -1
- package/types/components/wt-tabs/wt-tabs.vue.d.ts +3 -3
- package/types/components/wt-textarea/wt-textarea.vue.d.ts +9 -14
- package/types/components/wt-time-input/wt-time-input.vue.d.ts +9 -9
- package/types/components/wt-timepicker/wt-timepicker.vue.d.ts +8 -8
- package/types/components/wt-tooltip/_internals/wt-tooltip-floating.vue.d.ts +5 -5
- package/types/components/wt-tooltip/wt-tooltip.vue.d.ts +7 -7
- package/types/components/wt-tree/wt-tree.vue.d.ts +5 -3
- package/types/components/wt-tree-line/types/wt-tree-node.d.ts +5 -0
- package/types/components/wt-tree-line/wt-tree-line.vue.d.ts +8 -18
- package/types/components/wt-tree-table/wt-tree-table.vue.d.ts +2 -2
- package/types/components/wt-tree-table-row/wt-tree-table-row.vue.d.ts +3 -18
- package/types/components/wt-vidstack-player/components/buttons/fullscreen-button.vue.d.ts +1 -1
- package/types/components/wt-vidstack-player/components/layouts/video-layout.vue.d.ts +5 -5
- package/types/components/wt-vidstack-player/components/panels/playback-controls-panel/components/buttons/fullscreen-button.vue.d.ts +1 -1
- package/types/components/wt-vidstack-player/components/panels/playback-controls-panel/components/time-group.vue.d.ts +1 -1
- package/types/components/wt-vidstack-player/components/panels/playback-controls-panel/playback-controls-panel.vue.d.ts +1 -1
- package/types/components/wt-vidstack-player/components/panels/screen-sharing-controls-panel/screen-sharing-controls-panel.vue.d.ts +3 -3
- package/types/components/wt-vidstack-player/components/panels/video-call-controls-panel/video-call-controls-panel.vue.d.ts +14 -14
- package/types/components/wt-vidstack-player/components/panels/video-display-panel/video-display-panel.vue.d.ts +2 -2
- package/types/components/wt-vidstack-player/components/screenshot-box/screenshot-box.vue.d.ts +2 -2
- package/types/components/wt-vidstack-player/components/toggle-button.vue.d.ts +1 -1
- package/types/components/wt-vidstack-player/composables/useVidstackPlayerSize.d.ts +2 -0
- package/types/components/wt-vidstack-player/composables/useVidstackSrc.d.ts +11 -4
- package/types/components/wt-vidstack-player/wt-vidstack-player.vue.d.ts +8 -7
- package/types/composables/useCachedInterval/useCachedInterval.d.ts +1 -1
- package/types/composables/useCachedItemInstanceName/useCachedItemInstanceName.d.ts +1 -1
- package/types/composables/useCard/useCardTabs.d.ts +1 -1
- package/types/composables/useClose/useClose.d.ts +1 -1
- package/types/enums/MessageColor/MessageColor.d.ts +1 -1
- package/types/enums/MessageVariant/MessageVariant.d.ts +1 -1
- package/types/locale/en/en.d.ts +4 -2
- package/types/locale/es/es.d.ts +4 -2
- package/types/locale/i18n.d.ts +36 -18
- package/types/locale/index.d.ts +36 -18
- package/types/locale/kz/kz.d.ts +4 -2
- package/types/locale/pl/pl.d.ts +4 -2
- package/types/locale/ro/ro.d.ts +4 -2
- package/types/locale/ru/ru.d.ts +4 -2
- package/types/locale/uk/uk.d.ts +4 -2
- package/types/locale/uz/uz.d.ts +4 -2
- package/types/locale/vi/vi.d.ts +4 -2
- package/types/mixins/dataFilterMixins/_urlControllerMixin/_urlControllerMixin.d.ts +1 -1
- package/types/mixins/dataFilterMixins/apiFilterMixin.d.ts +3 -3
- package/types/mixins/dataFilterMixins/baseFilterMixin/baseFilterMixin.d.ts +1 -1
- package/types/mixins/dataFilterMixins/enumFilterMixin.d.ts +4 -4
- package/types/mixins/dataFilterMixins/paginationFilterMixin.d.ts +2 -2
- package/types/mixins/dataFilterMixins/sortFilterMixin.d.ts +1 -1
- package/types/mixins/validationMixin/regle/useRegleValidation.d.ts +1 -1
- package/types/mixins/validationMixin/useValidation.d.ts +2 -2
- package/types/mixins/validationMixin/validationMixin.d.ts +1 -1
- package/types/mixins/validationMixin/vuelidate/useVuelidateValidation.d.ts +9 -5
- package/types/modules/AgentPdfs/components/agent-pdfs-tab.vue.d.ts +1 -1
- package/types/modules/AgentPdfs/components/pdf-status-preview.vue.d.ts +1 -1
- package/types/modules/AgentStatusSelect/components/_internals/wt-cc-pause-cause-popup.vue.d.ts +4 -4
- package/types/modules/AgentStatusSelect/components/_internals/wt-cc-status-select-error-popup.vue.d.ts +1 -1
- package/types/modules/AgentStatusSelect/components/wt-cc-agent-status-select.vue.d.ts +1 -1
- package/types/modules/Appearance/components/wt-dark-mode-switcher.vue.d.ts +1 -1
- package/types/modules/Appearance/pinia/store/AppearanceStore.d.ts +3 -3
- package/types/modules/Appearance/store/AppearanceStoreModule.d.ts +1 -1
- package/types/modules/AuditForm/components/audit-form-question-read-wrapper.vue.d.ts +3 -3
- package/types/modules/AuditForm/components/audit-form-question-write-wrapper.vue.d.ts +2 -2
- package/types/modules/AuditForm/components/audit-form-question.vue.d.ts +7 -7
- package/types/modules/AuditForm/components/audit-form.vue.d.ts +6 -6
- package/types/modules/AuditForm/components/form/form-footer/audit-form-footer.vue.d.ts +3 -3
- package/types/modules/AuditForm/components/form-questions/options/audit-form-question-options-write-row.vue.d.ts +2 -2
- package/types/modules/AuditForm/components/form-questions/options/audit-form-question-options.vue.d.ts +4 -4
- package/types/modules/AuditForm/components/form-questions/score/audit-form-question-score.vue.d.ts +6 -6
- package/types/modules/AuditForm/components/form-questions/yes/audit-form-question-yes.vue.d.ts +2 -2
- package/types/modules/CSVExport/CSVExport.d.ts +3 -6
- package/types/modules/CSVExport/XLSExport.d.ts +1 -1
- package/types/modules/CSVExport/composables/useCSVExport.d.ts +6 -6
- package/types/modules/CSVExport/mixins/exportCSVMixin.d.ts +1 -1
- package/types/modules/CSVExport/mixins/exportXLSMixin.d.ts +1 -1
- package/types/modules/CallSession/modules/ScreenSharing/screen-sharing.vue.d.ts +3 -3
- package/types/modules/CallSession/modules/VideoCall/composables/useReceiverLiveStream.d.ts +6 -6
- package/types/modules/CallSession/modules/VideoCall/video-call.vue.d.ts +17 -17
- package/types/modules/CardStoreModule/store/CardStoreModule.d.ts +1 -1
- package/types/modules/DeleteConfirmationPopup/components/delete-confirmation-popup.vue.d.ts +2 -2
- package/types/modules/DeleteConfirmationPopup/composables/useDeleteConfirmationPopup.d.ts +1 -1
- package/types/modules/Filters/classes/BaseFilterSchema.d.ts +7 -7
- package/types/modules/Filters/components/filter-search.vue.d.ts +2 -2
- package/types/modules/Filters/components/filter-table-fields.vue.d.ts +3 -3
- package/types/modules/Filters/scripts/getters/localStorageGetter.d.ts +1 -1
- package/types/modules/Filters/store/FiltersStoreModule.d.ts +1 -1
- package/types/modules/Notifications/assets/audio/triggerSound.d.ts +1 -1
- package/types/modules/Notifications/store/NotificationsStoreModule.d.ts +9 -9
- package/types/modules/ObjectPermissions/components/_internal/permissions-role-row.vue.d.ts +1 -1
- package/types/modules/ObjectPermissions/components/_internal/permissions-role-select.vue.d.ts +1 -1
- package/types/modules/ObjectPermissions/components/_internal/permissions-tab-content.vue.d.ts +5 -5
- package/types/modules/ObjectPermissions/components/_internal/permissions-tab-role-popup.vue.d.ts +2 -2
- package/types/modules/ObjectPermissions/headers/headers.d.ts +1 -1
- package/types/modules/ObjectPermissions/store/objectPermissionsStoreModule.d.ts +2 -2
- package/types/modules/QueryFilters/classes/BaseFilterSchema.d.ts +2 -2
- package/types/modules/QueryFilters/components/abstract-api-filter.vue.d.ts +1 -1
- package/types/modules/QueryFilters/components/abstract-enum-filter.vue.d.ts +1 -1
- package/types/modules/QueryFilters/components/filter-datetime.vue.d.ts +1 -1
- package/types/modules/QueryFilters/components/filter-from-to.vue.d.ts +1 -1
- package/types/modules/QueryFilters/components/filter-search.vue.d.ts +1 -1
- package/types/modules/QueryFilters/components/filter-table-fields.vue.d.ts +3 -3
- package/types/modules/QueryFilters/mixins/_urlControllerMixin/_urlControllerMixin.d.ts +1 -1
- package/types/modules/QueryFilters/mixins/apiFilterMixin.d.ts +1 -1
- package/types/modules/QueryFilters/mixins/baseFilterMixin/baseFilterMixin.d.ts +1 -1
- package/types/modules/QueryFilters/mixins/enumFilterMixin.d.ts +1 -1
- package/types/modules/QueryFilters/mixins/paginationFilterMixin.d.ts +2 -2
- package/types/modules/QueryFilters/mixins/sortFilterMixin.d.ts +1 -1
- package/types/modules/QueryFilters/store/QueryFiltersStoreModule.d.ts +4 -4
- package/types/modules/TableComponentModule/composables/useTableEmpty.d.ts +7 -7
- package/types/modules/TableStoreModule/store/TableStoreModule.d.ts +5 -5
- package/types/modules/UploadCsvPopup/components/wt-upload-csv-popup.vue.d.ts +5 -5
- package/types/modules/UploadCsvPopup/composable/useUploadCsv.d.ts +21 -11
- package/types/modules/UploadCsvPopup/scripts/normalizeCSVData.d.ts +15 -20
- package/types/modules/UploadCsvPopup/scripts/parseCSV.d.ts +2 -1
- package/types/modules/UploadCsvPopup/scripts/processFile.d.ts +2 -2
- package/types/modules/UploadCsvPopup/scripts/splitAndSaveData.d.ts +3 -3
- package/types/modules/Userinfo/classes/ApplicationsAccess.d.ts +2 -10
- package/types/modules/Userinfo/mappings/mappings.d.ts +12 -24
- package/types/modules/Userinfo/scripts/utils.d.ts +2 -2
- package/types/modules/Userinfo/stores/settingsStore.d.ts +4 -4
- package/types/modules/Userinfo/stores/userinfoStore.d.ts +3 -3
- package/types/modules/Userinfo/types/UserAccess.d.ts +1 -1
- package/types/scripts/compareSize.d.ts +4 -4
- package/types/scripts/debounce.d.ts +1 -1
- package/types/scripts/sortQueryAdapters.d.ts +3 -3
- package/types/store/BaseStoreModules/BaseStoreModule.d.ts +6 -6
- package/types/store/new/modules/apiStoreModule/apiStoreModule.d.ts +12 -12
- package/types/store/new/modules/tableStoreModule/tableStoreModule.d.ts +4 -4
- package/types/utils/displayText.d.ts +1 -1
- package/types/validations/config/errors/customZodErrorsHandler.d.ts +1 -1
- package/dist/vidstack-video-DwlbGwN7.js +0 -2
- package/dist/wt-send-message-popup-MbV1uq6H.js +0 -77
- package/dist/wt-start-page-DMXRhA9E.js +0 -86
- package/dist/{wt-popover-ChCN6b1o.js → wt-popover-lP-AhF8l.js} +3 -3
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
@update:expanded-rows="expandedRows = $event"
|
|
25
25
|
@column-resize-end="columnResize"
|
|
26
26
|
@column-reorder="columnReorder"
|
|
27
|
-
@row-reorder="
|
|
27
|
+
@row-reorder="onRowReorder"
|
|
28
28
|
>
|
|
29
29
|
<p-column
|
|
30
30
|
v-if="rowExpansion"
|
|
@@ -230,7 +230,7 @@ import {
|
|
|
230
230
|
import { useI18n } from 'vue-i18n';
|
|
231
231
|
import { getNextSortOrder } from '../../scripts/sortQueryAdapters.js';
|
|
232
232
|
import { useTableColumnDrag } from '../_internals/composables';
|
|
233
|
-
import type { WtTableHeader } from './types/WtTable';
|
|
233
|
+
import type { WtTableHeader, WtTableRow } from './types/WtTable';
|
|
234
234
|
|
|
235
235
|
const DEFAULT_ITEM_SIZE = 40;
|
|
236
236
|
|
|
@@ -242,7 +242,7 @@ interface Props extends DataTableProps {
|
|
|
242
242
|
/**
|
|
243
243
|
* 'List of data, represented by table. '
|
|
244
244
|
*/
|
|
245
|
-
data?:
|
|
245
|
+
data?: WtTableRow[];
|
|
246
246
|
/**
|
|
247
247
|
* 'If true, draws sorting arrows and sends sorting events at header click. Draws a sorting arrow by "sort": "asc"/"desc" header value. '
|
|
248
248
|
*/
|
|
@@ -281,7 +281,7 @@ interface Props extends DataTableProps {
|
|
|
281
281
|
/**
|
|
282
282
|
* 'If true, restrict sprecific row reorder.'
|
|
283
283
|
*/
|
|
284
|
-
isRowReorderDisabled?: (row) => boolean;
|
|
284
|
+
isRowReorderDisabled?: (row: WtTableRow) => boolean;
|
|
285
285
|
rowExpansion?: boolean;
|
|
286
286
|
rowClass?: () => string;
|
|
287
287
|
rowStyle?: () => {
|
|
@@ -331,9 +331,21 @@ const emit = defineEmits([
|
|
|
331
331
|
'column-reorder',
|
|
332
332
|
]);
|
|
333
333
|
|
|
334
|
+
const onRowReorder = ({
|
|
335
|
+
dragIndex,
|
|
336
|
+
dropIndex,
|
|
337
|
+
}: {
|
|
338
|
+
dragIndex: number;
|
|
339
|
+
dropIndex: number;
|
|
340
|
+
}) =>
|
|
341
|
+
emit('reorder:row', {
|
|
342
|
+
oldIndex: dragIndex,
|
|
343
|
+
newIndex: dropIndex,
|
|
344
|
+
});
|
|
345
|
+
|
|
334
346
|
const table = useTemplateRef('table');
|
|
335
347
|
const tableKey = ref(0);
|
|
336
|
-
const expandedRows = ref([]);
|
|
348
|
+
const expandedRows = ref<WtTableRow[]>([]);
|
|
337
349
|
|
|
338
350
|
const { addTableDragListener, removeTableDragListener } = useTableColumnDrag(
|
|
339
351
|
table,
|
|
@@ -351,7 +363,8 @@ const excludeColumnsFromReorder = [
|
|
|
351
363
|
const _selected = computed(() => {
|
|
352
364
|
// _isSelected for backwards compatibility
|
|
353
365
|
return props.selectable
|
|
354
|
-
? props.selected ||
|
|
366
|
+
? props.selected ||
|
|
367
|
+
props.data.filter((item: WtTableRow) => item._isSelected)
|
|
355
368
|
: [];
|
|
356
369
|
});
|
|
357
370
|
|
|
@@ -363,17 +376,21 @@ const dataHeaders = computed(() => {
|
|
|
363
376
|
text:
|
|
364
377
|
typeof header.locale === 'string'
|
|
365
378
|
? t(header.locale)
|
|
366
|
-
: t(
|
|
379
|
+
: t(
|
|
380
|
+
...(header.locale as [
|
|
381
|
+
string,
|
|
382
|
+
]),
|
|
383
|
+
),
|
|
367
384
|
};
|
|
368
385
|
return header;
|
|
369
386
|
});
|
|
370
387
|
});
|
|
371
388
|
|
|
372
|
-
const isColumnHidden = (col) => {
|
|
389
|
+
const isColumnHidden = (col: WtTableHeader) => {
|
|
373
390
|
return col.show === false;
|
|
374
391
|
};
|
|
375
392
|
|
|
376
|
-
const columnStyle = (col) => {
|
|
393
|
+
const columnStyle = (col: WtTableHeader) => {
|
|
377
394
|
const baseWidth = 140;
|
|
378
395
|
|
|
379
396
|
return {
|
|
@@ -405,14 +422,14 @@ const sortField = computed(() => {
|
|
|
405
422
|
return sortedCol?.field ?? null;
|
|
406
423
|
});
|
|
407
424
|
|
|
408
|
-
const sort = ({ sortField }) => {
|
|
425
|
+
const sort = ({ sortField }: { sortField: string }) => {
|
|
409
426
|
const col = dataHeaders.value.find((header) => header.field === sortField);
|
|
410
|
-
if (!isColSortable(col)) return;
|
|
427
|
+
if (!col || !isColSortable(col)) return;
|
|
411
428
|
const nextSort = getNextSortOrder(col.sort);
|
|
412
429
|
emit('sort', col, nextSort);
|
|
413
430
|
};
|
|
414
431
|
|
|
415
|
-
const isColSortable = ({ sort }) => {
|
|
432
|
+
const isColSortable = ({ sort }: Pick<WtTableHeader, 'sort'>) => {
|
|
416
433
|
/* --sortable = sortable && col.sort === undefined cause there may be some columns we don't want to sort
|
|
417
434
|
strict check for === undefined is used because col.sort = null is sort order too (actualu, without sort)
|
|
418
435
|
so we need to check if this property is present
|
|
@@ -437,18 +454,18 @@ const selectAll = () => {
|
|
|
437
454
|
// Because allSelected recomputes after each change
|
|
438
455
|
|
|
439
456
|
if (isAllSelected.value) {
|
|
440
|
-
props.data.forEach((item) => {
|
|
457
|
+
props.data.forEach((item: WtTableRow) => {
|
|
441
458
|
item._isSelected = false;
|
|
442
459
|
});
|
|
443
460
|
} else {
|
|
444
|
-
props.data.forEach((item) => {
|
|
461
|
+
props.data.forEach((item: WtTableRow) => {
|
|
445
462
|
item._isSelected = true;
|
|
446
463
|
});
|
|
447
464
|
}
|
|
448
465
|
}
|
|
449
466
|
};
|
|
450
467
|
|
|
451
|
-
const handleSelection = (row, select) => {
|
|
468
|
+
const handleSelection = (row: WtTableRow, select: boolean) => {
|
|
452
469
|
if (props.selected) {
|
|
453
470
|
if (select) {
|
|
454
471
|
emit('update:selected', [
|
|
@@ -467,7 +484,7 @@ const handleSelection = (row, select) => {
|
|
|
467
484
|
}
|
|
468
485
|
};
|
|
469
486
|
|
|
470
|
-
const columnResize = ({ element }) => {
|
|
487
|
+
const columnResize = ({ element }: { element: HTMLElement }) => {
|
|
471
488
|
// getting column name by custom attribute due Primevue does not provide it
|
|
472
489
|
const field = element.getAttribute('data-column-field');
|
|
473
490
|
|
|
@@ -484,27 +501,29 @@ const columnResize = ({ element }) => {
|
|
|
484
501
|
};
|
|
485
502
|
|
|
486
503
|
const columnReorder = () => {
|
|
487
|
-
const containerEl = table.value
|
|
504
|
+
const containerEl = table.value?.$el?.querySelector(
|
|
488
505
|
'.p-datatable-table-container',
|
|
489
506
|
);
|
|
490
|
-
const containerElScrollLeft = containerEl
|
|
491
|
-
const newOrder = table.value
|
|
492
|
-
(col) => !excludeColumnsFromReorder.includes(col),
|
|
507
|
+
const containerElScrollLeft = containerEl?.scrollLeft;
|
|
508
|
+
const newOrder = table.value?.d_columnOrder.filter(
|
|
509
|
+
(col: string) => !excludeColumnsFromReorder.includes(col),
|
|
493
510
|
);
|
|
494
511
|
tableKey.value += 1;
|
|
495
512
|
emit('column-reorder', newOrder);
|
|
496
513
|
nextTick(() => {
|
|
497
514
|
addTableDragListener();
|
|
498
|
-
table.value
|
|
499
|
-
|
|
515
|
+
const container = table.value?.$el?.querySelector(
|
|
516
|
+
'.p-datatable-table-container',
|
|
517
|
+
);
|
|
518
|
+
if (container) container.scrollLeft = containerElScrollLeft;
|
|
500
519
|
});
|
|
501
520
|
};
|
|
502
521
|
|
|
503
|
-
const isRowExpanded = (row) => {
|
|
522
|
+
const isRowExpanded = (row: WtTableRow) => {
|
|
504
523
|
return expandedRows.value.some((r) => r?.id === row?.id);
|
|
505
524
|
};
|
|
506
525
|
|
|
507
|
-
const toggleRow = (row) => {
|
|
526
|
+
const toggleRow = (row: WtTableRow) => {
|
|
508
527
|
const index = expandedRows.value.findIndex((r) => r.id === row.id);
|
|
509
528
|
if (index !== -1) {
|
|
510
529
|
expandedRows.value.splice(index, 1);
|
|
@@ -126,11 +126,9 @@ function shownColLabel({ text, locale }: Header): string | undefined {
|
|
|
126
126
|
if (!text && locale)
|
|
127
127
|
return typeof locale === 'string'
|
|
128
128
|
? t(locale)
|
|
129
|
-
: t(
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
...unknown[],
|
|
133
|
-
]),
|
|
129
|
+
: (t as (key: string, ...args: unknown[]) => string)(
|
|
130
|
+
String(locale[0]),
|
|
131
|
+
...locale.slice(1),
|
|
134
132
|
);
|
|
135
133
|
return text;
|
|
136
134
|
}
|
|
@@ -52,16 +52,13 @@
|
|
|
52
52
|
|
|
53
53
|
<script setup lang="ts">
|
|
54
54
|
import type { TextareaProps } from 'primevue/textarea';
|
|
55
|
-
import {
|
|
56
|
-
computed,
|
|
57
|
-
defineModel,
|
|
58
|
-
onMounted,
|
|
59
|
-
ref,
|
|
60
|
-
useSlots,
|
|
61
|
-
useTemplateRef,
|
|
62
|
-
} from 'vue';
|
|
55
|
+
import { computed, onMounted, ref, toRef, useSlots, useTemplateRef } from 'vue';
|
|
63
56
|
import { ComponentSize, MessageVariant } from '../../enums';
|
|
64
57
|
import { useValidation } from '../../mixins/validationMixin/useValidation';
|
|
58
|
+
import type {
|
|
59
|
+
CompatCustomValidator,
|
|
60
|
+
VuelidateFieldLike,
|
|
61
|
+
} from '../../mixins/validationMixin/vuelidate/useVuelidateValidation';
|
|
65
62
|
|
|
66
63
|
/**
|
|
67
64
|
* @emits {string} input - Fires when textarea value changes. Emits value
|
|
@@ -128,16 +125,13 @@ interface Props extends /* @vue-ignore */ TextareaProps {
|
|
|
128
125
|
/**
|
|
129
126
|
* Validation rules
|
|
130
127
|
*/
|
|
131
|
-
v?:
|
|
128
|
+
v?: VuelidateFieldLike;
|
|
132
129
|
/**
|
|
133
130
|
* Custom validators array
|
|
134
131
|
* @type {Array<{name: string, text: string}>}
|
|
135
132
|
* @default []
|
|
136
133
|
*/
|
|
137
|
-
customValidators?:
|
|
138
|
-
name: string;
|
|
139
|
-
text: string;
|
|
140
|
-
}>;
|
|
134
|
+
customValidators?: CompatCustomValidator[];
|
|
141
135
|
}
|
|
142
136
|
|
|
143
137
|
const props = withDefaults(defineProps<Props>(), {
|
|
@@ -179,8 +173,8 @@ const hasLabel = computed(() => {
|
|
|
179
173
|
|
|
180
174
|
const { isValidation, invalid, validationText, validationTextColor } =
|
|
181
175
|
useValidation({
|
|
182
|
-
v: props
|
|
183
|
-
customValidators: props
|
|
176
|
+
v: toRef(props, 'v'),
|
|
177
|
+
customValidators: toRef(props, 'customValidators'),
|
|
184
178
|
});
|
|
185
179
|
|
|
186
180
|
const handleKeypress = (event: KeyboardEvent) => {
|
|
@@ -15,6 +15,10 @@
|
|
|
15
15
|
|
|
16
16
|
<script setup lang="ts">
|
|
17
17
|
import type { SuperCompatibleRegleFieldStatus } from '@regle/core';
|
|
18
|
+
import type {
|
|
19
|
+
CompatCustomValidator,
|
|
20
|
+
VuelidateFieldLike,
|
|
21
|
+
} from '../../mixins/validationMixin/vuelidate/useVuelidateValidation';
|
|
18
22
|
|
|
19
23
|
interface WtTimeInputProps {
|
|
20
24
|
/**
|
|
@@ -52,7 +56,7 @@ interface WtTimeInputProps {
|
|
|
52
56
|
/**
|
|
53
57
|
* Vuelidate validation object
|
|
54
58
|
*/
|
|
55
|
-
v?:
|
|
59
|
+
v?: VuelidateFieldLike;
|
|
56
60
|
/**
|
|
57
61
|
* Regle validation object
|
|
58
62
|
*/
|
|
@@ -60,10 +64,10 @@ interface WtTimeInputProps {
|
|
|
60
64
|
/**
|
|
61
65
|
* Custom validators for vuelidate
|
|
62
66
|
*/
|
|
63
|
-
customValidators?:
|
|
67
|
+
customValidators?: CompatCustomValidator[];
|
|
64
68
|
}
|
|
65
69
|
|
|
66
|
-
|
|
70
|
+
withDefaults(defineProps<WtTimeInputProps>(), {
|
|
67
71
|
label: '',
|
|
68
72
|
name: '',
|
|
69
73
|
maxValue: undefined,
|
|
@@ -73,7 +77,6 @@ const props = withDefaults(defineProps<WtTimeInputProps>(), {
|
|
|
73
77
|
labelProps: () => ({}),
|
|
74
78
|
hideInputInfo: false,
|
|
75
79
|
v: null,
|
|
76
|
-
regleValidation: null,
|
|
77
80
|
customValidators: () => [],
|
|
78
81
|
});
|
|
79
82
|
|
|
@@ -77,6 +77,10 @@ import { computed, nextTick, toRefs } from 'vue';
|
|
|
77
77
|
import { useI18n } from 'vue-i18n';
|
|
78
78
|
import { ComponentSize, MessageVariant } from '../../enums';
|
|
79
79
|
import { useValidation } from '../../mixins/validationMixin/useValidation';
|
|
80
|
+
import type {
|
|
81
|
+
CompatCustomValidator,
|
|
82
|
+
VuelidateFieldLike,
|
|
83
|
+
} from '../../mixins/validationMixin/vuelidate/useVuelidateValidation';
|
|
80
84
|
|
|
81
85
|
// const SEC_IN_DAY = 60 * 60 * 24;
|
|
82
86
|
const SEC_IN_HOUR = 60 * 60;
|
|
@@ -118,7 +122,7 @@ interface WtTimepickerProps {
|
|
|
118
122
|
/**
|
|
119
123
|
* Vuelidate validation object
|
|
120
124
|
*/
|
|
121
|
-
v?:
|
|
125
|
+
v?: VuelidateFieldLike;
|
|
122
126
|
/**
|
|
123
127
|
* Regle validation object
|
|
124
128
|
*/
|
|
@@ -126,7 +130,7 @@ interface WtTimepickerProps {
|
|
|
126
130
|
/**
|
|
127
131
|
* Custom validators for vuelidate
|
|
128
132
|
*/
|
|
129
|
-
customValidators?:
|
|
133
|
+
customValidators?: CompatCustomValidator[];
|
|
130
134
|
}
|
|
131
135
|
|
|
132
136
|
const props = withDefaults(defineProps<WtTimepickerProps>(), {
|
|
@@ -139,7 +143,6 @@ const props = withDefaults(defineProps<WtTimepickerProps>(), {
|
|
|
139
143
|
noLabel: false,
|
|
140
144
|
required: false,
|
|
141
145
|
v: null,
|
|
142
|
-
regleValidation: null,
|
|
143
146
|
customValidators: () => [],
|
|
144
147
|
});
|
|
145
148
|
|
|
@@ -47,8 +47,8 @@ const severityToIconColorMap: Record<string, string> = {
|
|
|
47
47
|
secondary: MessageColor.SECONDARY,
|
|
48
48
|
};
|
|
49
49
|
|
|
50
|
-
const getIconColor = (message) =>
|
|
51
|
-
`fill: var(--p-toast-${severityToIconColorMap[message.severity]}-icon-color)`;
|
|
50
|
+
const getIconColor = (message: { severity?: string }) =>
|
|
51
|
+
`fill: var(--p-toast-${message.severity ? severityToIconColorMap[message.severity] : ''}-icon-color)`;
|
|
52
52
|
</script>
|
|
53
53
|
|
|
54
54
|
<style>
|
|
@@ -60,6 +60,7 @@
|
|
|
60
60
|
import deepEqual from 'deep-equal';
|
|
61
61
|
import { computed } from 'vue';
|
|
62
62
|
|
|
63
|
+
import type { WtTreeNode } from '../wt-tree-line/types/wt-tree-node';
|
|
63
64
|
import WtTreeLine from '../wt-tree-line/wt-tree-line.vue';
|
|
64
65
|
import { WtTreeMode } from './types/WtTreeMode';
|
|
65
66
|
|
|
@@ -106,13 +107,13 @@ const emit = defineEmits<{
|
|
|
106
107
|
}>();
|
|
107
108
|
|
|
108
109
|
const allData = computed(() => {
|
|
109
|
-
const result = [];
|
|
110
|
+
const result: WtTreeNode[] = [];
|
|
110
111
|
|
|
111
|
-
const getNestedItems = (item:
|
|
112
|
+
const getNestedItems = (item: WtTreeNode) => {
|
|
112
113
|
result.push(item);
|
|
113
114
|
|
|
114
115
|
if (item[props.childrenProp]) {
|
|
115
|
-
item[props.childrenProp].forEach((child:
|
|
116
|
+
item[props.childrenProp].forEach((child: WtTreeNode) => {
|
|
116
117
|
getNestedItems(child);
|
|
117
118
|
});
|
|
118
119
|
}
|
|
@@ -125,11 +126,11 @@ const allData = computed(() => {
|
|
|
125
126
|
return result;
|
|
126
127
|
});
|
|
127
128
|
|
|
128
|
-
const selectElement = (item:
|
|
129
|
+
const selectElement = (item: WtTreeNode) => {
|
|
129
130
|
emit('update:modelValue', props.itemData ? item[props.itemData] : item);
|
|
130
131
|
};
|
|
131
132
|
|
|
132
|
-
const compareSelectElement = (item:
|
|
133
|
+
const compareSelectElement = (item: WtTreeNode) => {
|
|
133
134
|
if (props.itemData) {
|
|
134
135
|
return item[props.itemData] === props.modelValue;
|
|
135
136
|
}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
:icon="lastChild ? 'tree-corner' : 'tree-cross'"
|
|
14
14
|
/>
|
|
15
15
|
<wt-icon-btn
|
|
16
|
-
v-if="
|
|
16
|
+
v-if="children.length"
|
|
17
17
|
:icon="collapsed ? 'plus' : 'minus'"
|
|
18
18
|
@click="collapsed = !collapsed"
|
|
19
19
|
/>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
:root-data="rootData || data"
|
|
26
26
|
:nested-level="nestedLevel"
|
|
27
27
|
:active="displayActiveState"
|
|
28
|
-
:has-children="!!
|
|
28
|
+
:has-children="!!children.length"
|
|
29
29
|
:selected-parent="selectedParent"
|
|
30
30
|
/>
|
|
31
31
|
<div
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
<wt-expand-transition v-show="!collapsed">
|
|
49
49
|
<div>
|
|
50
50
|
<wt-tree-line
|
|
51
|
-
v-for="(child, index) in
|
|
51
|
+
v-for="(child, index) in children"
|
|
52
52
|
:key="index"
|
|
53
53
|
:model-value="modelValue"
|
|
54
54
|
:data="child"
|
|
@@ -57,9 +57,9 @@
|
|
|
57
57
|
:item-data="itemData"
|
|
58
58
|
:nested-level="nestedLevel + 1"
|
|
59
59
|
:selected-parent="isSelected || selectedParent"
|
|
60
|
-
:next-element="!!
|
|
60
|
+
:next-element="!!children[index + 1]"
|
|
61
61
|
:nested-icons="displayIcons"
|
|
62
|
-
:last-child="index ===
|
|
62
|
+
:last-child="index === children.length - 1"
|
|
63
63
|
:multiple="multiple"
|
|
64
64
|
:allow-parent="allowParent"
|
|
65
65
|
:root-data="rootData || data"
|
|
@@ -86,11 +86,12 @@ import { computed, onMounted, ref, watch } from 'vue';
|
|
|
86
86
|
|
|
87
87
|
import WtExpandTransition from '../transitions/wt-expand-transition.vue';
|
|
88
88
|
import type { WtTreeNestedIcons } from './types/wt-tree-nested-icons.ts';
|
|
89
|
+
import type { WtTreeNode } from './types/wt-tree-node.ts';
|
|
89
90
|
|
|
90
91
|
const props = withDefaults(
|
|
91
92
|
defineProps<{
|
|
92
|
-
modelValue:
|
|
93
|
-
data:
|
|
93
|
+
modelValue: WtTreeNode | WtTreeNode[] | null;
|
|
94
|
+
data: WtTreeNode;
|
|
94
95
|
itemLabel?: string | undefined;
|
|
95
96
|
itemData?: string | undefined;
|
|
96
97
|
childrenProp?: string;
|
|
@@ -105,7 +106,7 @@ const props = withDefaults(
|
|
|
105
106
|
* 'It's a key in data object, which contains field what display searched elements. By this field, table will be opened to elements with this field value. '
|
|
106
107
|
*/
|
|
107
108
|
searchedProp?: string;
|
|
108
|
-
rootData?:
|
|
109
|
+
rootData?: WtTreeNode;
|
|
109
110
|
}>(),
|
|
110
111
|
{
|
|
111
112
|
nestedLevel: 0,
|
|
@@ -124,6 +125,15 @@ const emit = defineEmits<{
|
|
|
124
125
|
(e: 'update:modelValue', value: unknown): void;
|
|
125
126
|
}>();
|
|
126
127
|
|
|
128
|
+
// typed explicitly: the component renders itself, so inference would be circular
|
|
129
|
+
defineSlots<{
|
|
130
|
+
'item-prefix'(props: Record<string, unknown>): unknown;
|
|
131
|
+
}>();
|
|
132
|
+
|
|
133
|
+
const children = computed<WtTreeNode[]>(
|
|
134
|
+
() => props.data?.[props.childrenProp] ?? [],
|
|
135
|
+
);
|
|
136
|
+
|
|
127
137
|
const label = computed(() =>
|
|
128
138
|
props.itemLabel ? props.data[props.itemLabel] : props.data,
|
|
129
139
|
);
|
|
@@ -181,9 +191,9 @@ const displayActiveState = computed(() => {
|
|
|
181
191
|
});
|
|
182
192
|
|
|
183
193
|
const toggleSelectionWithChildren = (
|
|
184
|
-
node:
|
|
194
|
+
node: WtTreeNode,
|
|
185
195
|
select: boolean,
|
|
186
|
-
result:
|
|
196
|
+
result: WtTreeNode[],
|
|
187
197
|
) => {
|
|
188
198
|
const value = props.itemData ? node[props.itemData] : node;
|
|
189
199
|
|
|
@@ -208,10 +218,14 @@ const toggleSelectionWithChildren = (
|
|
|
208
218
|
}
|
|
209
219
|
};
|
|
210
220
|
|
|
211
|
-
const deselectParents = (
|
|
221
|
+
const deselectParents = (
|
|
222
|
+
node: WtTreeNode,
|
|
223
|
+
root: WtTreeNode,
|
|
224
|
+
result: WtTreeNode[],
|
|
225
|
+
) => {
|
|
212
226
|
const findAndDeselect = (
|
|
213
|
-
current:
|
|
214
|
-
parent:
|
|
227
|
+
current: WtTreeNode,
|
|
228
|
+
parent: WtTreeNode | null,
|
|
215
229
|
): boolean => {
|
|
216
230
|
if (current === node) {
|
|
217
231
|
if (parent) {
|
|
@@ -265,7 +279,7 @@ const setMultipleModelValue = () => {
|
|
|
265
279
|
if (props.itemData) {
|
|
266
280
|
existingIndex = props.modelValue.indexOf(props.data[props.itemData]);
|
|
267
281
|
} else {
|
|
268
|
-
existingIndex = props.modelValue.findIndex((item) =>
|
|
282
|
+
existingIndex = props.modelValue.findIndex((item: WtTreeNode) =>
|
|
269
283
|
deepEqual(item, props.data),
|
|
270
284
|
);
|
|
271
285
|
}
|
|
@@ -325,7 +339,7 @@ const onOpenParent = () => {
|
|
|
325
339
|
openParent();
|
|
326
340
|
};
|
|
327
341
|
|
|
328
|
-
const hasSearchedElement = (data:
|
|
342
|
+
const hasSearchedElement = (data: WtTreeNode, nestedLevel = 0) => {
|
|
329
343
|
// Check if the object itself has searched
|
|
330
344
|
if (data[props.searchedProp] && nestedLevel) return true;
|
|
331
345
|
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
]"
|
|
15
15
|
:style="col.width ? `min-width:${col.width}` : ''"
|
|
16
16
|
class="wt-tree-table-th typo-body-1"
|
|
17
|
-
@click="sort(col
|
|
17
|
+
@click="sort(col)"
|
|
18
18
|
>
|
|
19
19
|
<div
|
|
20
20
|
class="wt-tree-table-th__content"
|
|
@@ -77,8 +77,8 @@
|
|
|
77
77
|
/>
|
|
78
78
|
</template>
|
|
79
79
|
<template
|
|
80
|
-
v-for="
|
|
81
|
-
:key="
|
|
80
|
+
v-for="col of dataHeaders"
|
|
81
|
+
:key="col.value"
|
|
82
82
|
#[col.value]="{ item }"
|
|
83
83
|
>
|
|
84
84
|
<slot
|
|
@@ -104,6 +104,7 @@ import { getNextSortOrder } from '../../scripts/sortQueryAdapters';
|
|
|
104
104
|
import { useWtTable } from '../_internals/composables/useWtTable/useWtTable';
|
|
105
105
|
import WtCheckbox from '../wt-checkbox/wt-checkbox.vue';
|
|
106
106
|
import type { WtTableHeader } from '../wt-table/types/WtTable';
|
|
107
|
+
import type { WtTreeNode } from '../wt-tree-line/types/wt-tree-node';
|
|
107
108
|
import WtTreeTableRow from '../wt-tree-table-row/wt-tree-table-row.vue';
|
|
108
109
|
|
|
109
110
|
const props = withDefaults(
|
|
@@ -151,14 +152,14 @@ const emit = defineEmits([
|
|
|
151
152
|
'update:selected',
|
|
152
153
|
]);
|
|
153
154
|
|
|
154
|
-
const checkHasChildItems = (item:
|
|
155
|
+
const checkHasChildItems = (item: WtTreeNode) => {
|
|
155
156
|
return item[props.childrenProp] && Array.isArray(item[props.childrenProp]);
|
|
156
157
|
};
|
|
157
158
|
|
|
158
|
-
const getSelectedValue = (items:
|
|
159
|
-
const selected = [];
|
|
159
|
+
const getSelectedValue = (items: WtTreeNode[]) => {
|
|
160
|
+
const selected: WtTreeNode[] = [];
|
|
160
161
|
|
|
161
|
-
const pushSelectedElement = (item:
|
|
162
|
+
const pushSelectedElement = (item: WtTreeNode) => {
|
|
162
163
|
if (item._isSelected) {
|
|
163
164
|
return [
|
|
164
165
|
item,
|
|
@@ -175,10 +176,10 @@ const getSelectedValue = (items: Record<string, unknown>[]) => {
|
|
|
175
176
|
return selected;
|
|
176
177
|
};
|
|
177
178
|
|
|
178
|
-
const getAllNestedElements = (
|
|
179
|
-
const nested = [];
|
|
179
|
+
const getAllNestedElements = (items: WtTreeNode[]) => {
|
|
180
|
+
const nested: WtTreeNode[] = [];
|
|
180
181
|
|
|
181
|
-
const pushElement = (item:
|
|
182
|
+
const pushElement = (item: WtTreeNode) => {
|
|
182
183
|
nested.push(item);
|
|
183
184
|
|
|
184
185
|
if (checkHasChildItems(item)) {
|
|
@@ -186,12 +187,12 @@ const getAllNestedElements = (item: Record<string, unknown>) => {
|
|
|
186
187
|
}
|
|
187
188
|
};
|
|
188
189
|
|
|
189
|
-
|
|
190
|
+
items.forEach(pushElement);
|
|
190
191
|
|
|
191
192
|
return nested;
|
|
192
193
|
};
|
|
193
194
|
|
|
194
|
-
const selectedElements = computed<
|
|
195
|
+
const selectedElements = computed<WtTreeNode[]>(() => {
|
|
195
196
|
// _isSelected for backwards compatibility
|
|
196
197
|
return props.selected || getSelectedValue(props.data);
|
|
197
198
|
});
|
|
@@ -222,11 +223,8 @@ const sort = (col: WtTableHeader) => {
|
|
|
222
223
|
emit('sort', col, nextSort);
|
|
223
224
|
};
|
|
224
225
|
|
|
225
|
-
const changeSelectItem = (
|
|
226
|
-
items:
|
|
227
|
-
selected: boolean,
|
|
228
|
-
) => {
|
|
229
|
-
items.forEach((item) => {
|
|
226
|
+
const changeSelectItem = (items: WtTreeNode[], selected: boolean) => {
|
|
227
|
+
items.forEach((item: WtTreeNode) => {
|
|
230
228
|
item._isSelected = selected;
|
|
231
229
|
|
|
232
230
|
if (checkHasChildItems(item)) {
|
|
@@ -261,7 +259,7 @@ const selectAll = () => {
|
|
|
261
259
|
}
|
|
262
260
|
};
|
|
263
261
|
|
|
264
|
-
const handleSelection = (row, select) => {
|
|
262
|
+
const handleSelection = (row: WtTreeNode, select: boolean) => {
|
|
265
263
|
if (props.selected) {
|
|
266
264
|
if (select) {
|
|
267
265
|
emit('update:selected', [
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
>
|
|
6
6
|
<td
|
|
7
7
|
v-for="(col, headerKey) of dataHeaders"
|
|
8
|
-
:key="
|
|
8
|
+
:key="col.value"
|
|
9
9
|
class="wt-tree-table-td typo-body-1"
|
|
10
10
|
>
|
|
11
11
|
<div class="wt-tree-table-td__content">
|
|
@@ -79,8 +79,8 @@
|
|
|
79
79
|
"
|
|
80
80
|
>
|
|
81
81
|
<template
|
|
82
|
-
v-for="
|
|
83
|
-
:key="
|
|
82
|
+
v-for="col of dataHeaders"
|
|
83
|
+
:key="col.value"
|
|
84
84
|
#[col.value]="{ item }"
|
|
85
85
|
>
|
|
86
86
|
<slot
|
|
@@ -108,6 +108,7 @@ import { computed, onMounted, ref } from 'vue';
|
|
|
108
108
|
import WtCheckbox from '../wt-checkbox/wt-checkbox.vue';
|
|
109
109
|
import WtIconBtn from '../wt-icon-btn/wt-icon-btn.vue';
|
|
110
110
|
import type { WtTableHeader } from '../wt-table/types/WtTable';
|
|
111
|
+
import type { WtTreeNode } from '../wt-tree-line/types/wt-tree-node';
|
|
111
112
|
|
|
112
113
|
const props = withDefaults(
|
|
113
114
|
defineProps<{
|
|
@@ -149,6 +150,10 @@ const emit = defineEmits([
|
|
|
149
150
|
'expanded-collapse',
|
|
150
151
|
]);
|
|
151
152
|
|
|
153
|
+
// typed explicitly: the row renders itself, so inference would be circular
|
|
154
|
+
// biome-ignore lint/suspicious/noExplicitAny: slot payloads vary per column
|
|
155
|
+
defineSlots<Record<string, (props: Record<string, any>) => unknown>>();
|
|
156
|
+
|
|
152
157
|
const collapsed = ref(true);
|
|
153
158
|
const lineCount = computed(() => {
|
|
154
159
|
return props.nestingLevel;
|
|
@@ -166,7 +171,7 @@ const openCollapse = () => {
|
|
|
166
171
|
emit('expanded-collapse');
|
|
167
172
|
};
|
|
168
173
|
|
|
169
|
-
const hasSearchedElement = (data:
|
|
174
|
+
const hasSearchedElement = (data: WtTreeNode, nestedLevel = 0) => {
|
|
170
175
|
// Check if the object itself has searched
|
|
171
176
|
if (data[props.searchedProp] && nestedLevel) return true;
|
|
172
177
|
|
|
@@ -18,11 +18,10 @@
|
|
|
18
18
|
</template>
|
|
19
19
|
|
|
20
20
|
<script setup lang="ts">
|
|
21
|
-
import { inject } from 'vue';
|
|
22
21
|
import WtIconBtn from '../../../wt-icon-btn/wt-icon-btn.vue';
|
|
23
|
-
import
|
|
22
|
+
import { useVidstackPlayerSize } from '../../composables/useVidstackPlayerSize';
|
|
24
23
|
|
|
25
|
-
const { fullscreen } =
|
|
24
|
+
const { fullscreen } = useVidstackPlayerSize();
|
|
26
25
|
|
|
27
26
|
const emit = defineEmits<{
|
|
28
27
|
toggle: [
|
|
@@ -25,11 +25,7 @@
|
|
|
25
25
|
</template>
|
|
26
26
|
|
|
27
27
|
<script setup lang="ts">
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
import type { WtVidstackPlayerSizeProvider } from '../../types/WtVidstackPlayerSizeProvider';
|
|
31
|
-
|
|
32
|
-
const { size } = inject<WtVidstackPlayerSizeProvider>('size');
|
|
28
|
+
const { size } = useVidstackPlayerSize();
|
|
33
29
|
</script>
|
|
34
30
|
|
|
35
31
|
<style scoped>.play-button {
|