@webitel/ui-sdk 23.12.39-vite-6 → 23.12.40

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 (135) hide show
  1. package/dist/demo.html +1 -0
  2. package/dist/img/sprite/index.js +1 -147
  3. package/dist/ui-sdk.common.js +43304 -0
  4. package/dist/ui-sdk.common.js.map +1 -0
  5. package/dist/ui-sdk.css +1 -1
  6. package/dist/ui-sdk.umd.js +43303 -18
  7. package/dist/ui-sdk.umd.js.map +1 -0
  8. package/dist/ui-sdk.umd.min.js +35 -0
  9. package/dist/ui-sdk.umd.min.js.map +1 -0
  10. package/package.json +38 -20
  11. package/src/components/on-demand/wt-cc-agent-status-timers/wt-cc-agent-status-timers.vue +3 -3
  12. package/src/components/on-demand/wt-save-failed-popup/__tests__/WtPopup.spec.js +9 -0
  13. package/src/components/on-demand/wt-save-failed-popup/wt-save-failed-popup.vue +70 -0
  14. package/src/components/transitions/wt-expand-transition.vue +2 -2
  15. package/src/components/wt-app-header/wt-app-header.vue +2 -2
  16. package/src/components/wt-app-header/wt-app-navigator.vue +5 -6
  17. package/src/components/wt-app-header/wt-header-actions.vue +14 -30
  18. package/src/components/wt-avatar/wt-avatar.vue +2 -2
  19. package/src/components/wt-badge/wt-badge.vue +3 -3
  20. package/src/components/wt-button/wt-button.vue +3 -5
  21. package/src/components/wt-button-select/__tests__/WtButtonSelect.spec.js +4 -4
  22. package/src/components/wt-button-select/wt-button-select.vue +3 -3
  23. package/src/components/wt-checkbox/wt-checkbox.vue +7 -12
  24. package/src/components/wt-chip/wt-chip.vue +3 -6
  25. package/src/components/wt-context-menu/wt-context-menu.vue +4 -4
  26. package/src/components/wt-copy-action/wt-copy-action.vue +6 -6
  27. package/src/components/wt-datepicker/wt-datepicker.vue +12 -14
  28. package/src/components/wt-divider/wt-divider.vue +1 -1
  29. package/src/components/wt-dummy/wt-dummy.vue +2 -6
  30. package/src/components/wt-error-page/wt-error-page.vue +4 -10
  31. package/src/components/wt-expansion-panel/wt-expansion-panel.vue +4 -4
  32. package/src/components/wt-filters-panel-wrapper/wt-filters-panel-wrapper.vue +4 -7
  33. package/src/components/wt-headline/wt-headline.vue +4 -4
  34. package/src/components/wt-headline-nav/wt-headline-nav.vue +4 -11
  35. package/src/components/wt-hint/wt-hint.vue +4 -4
  36. package/src/components/wt-icon/wt-icon.vue +5 -5
  37. package/src/components/wt-icon-action/_internals/wt-add-icon-action.vue +2 -2
  38. package/src/components/wt-icon-action/_internals/wt-delete-icon-action.vue +2 -2
  39. package/src/components/wt-icon-action/_internals/wt-download-icon-action.vue +2 -2
  40. package/src/components/wt-icon-action/_internals/wt-edit-icon-action.vue +2 -2
  41. package/src/components/wt-icon-action/_internals/wt-history-icon-action.vue +2 -2
  42. package/src/components/wt-icon-action/_internals/wt-refresh-icon-action.vue +2 -2
  43. package/src/components/wt-icon-action/wt-icon-action.vue +1 -1
  44. package/src/components/wt-icon-btn/wt-icon-btn.vue +1 -1
  45. package/src/components/wt-indicator/wt-indicator.vue +3 -6
  46. package/src/components/wt-input/wt-input.vue +182 -193
  47. package/src/components/wt-input-info/wt-input-info.vue +2 -2
  48. package/src/components/wt-item-link/wt-item-link.vue +1 -1
  49. package/src/components/wt-label/wt-label.vue +2 -2
  50. package/src/components/wt-load-bar/wt-load-bar.vue +2 -5
  51. package/src/components/wt-loader/_internals/wt-loader--md.vue +2 -11
  52. package/src/components/wt-loader/_internals/wt-loader--sm.vue +2 -9
  53. package/src/components/wt-loader/wt-loader.vue +3 -10
  54. package/src/components/wt-navigation-bar/wt-navigation-bar.vue +8 -16
  55. package/src/components/wt-notification/wt-notification.vue +3 -3
  56. package/src/components/wt-notifications-bar/wt-notifications-bar.vue +5 -9
  57. package/src/components/wt-page-header/wt-page-header.vue +8 -7
  58. package/src/components/wt-page-wrapper/wt-page-wrapper.vue +5 -8
  59. package/src/components/wt-pagination/wt-pagination.vue +15 -17
  60. package/src/components/wt-player/wt-player.vue +16 -16
  61. package/src/components/wt-popup/wt-popup.vue +7 -13
  62. package/src/components/wt-progress-bar/wt-progress-bar.vue +7 -11
  63. package/src/components/wt-radio/wt-radio.vue +7 -15
  64. package/src/components/wt-rounded-action/wt-rounded-action.vue +2 -2
  65. package/src/components/wt-search-bar/__tests__/WtSearchBar.spec.js +1 -1
  66. package/src/components/wt-search-bar/wt-search-bar.vue +5 -6
  67. package/src/components/wt-select/_multiselect.scss +1 -0
  68. package/src/components/wt-select/wt-select.vue +19 -33
  69. package/src/components/wt-slider/wt-slider.vue +5 -5
  70. package/src/components/wt-status-select/wt-status-select.vue +9 -9
  71. package/src/components/wt-stepper/wt-stepper.vue +6 -8
  72. package/src/components/wt-switcher/wt-switcher.vue +7 -12
  73. package/src/components/wt-table/wt-table.vue +72 -110
  74. package/src/components/wt-table-actions/wt-table-actions.vue +14 -14
  75. package/src/components/wt-table-column-select/wt-table-column-select.vue +26 -28
  76. package/src/components/wt-tabs/wt-tabs.vue +7 -7
  77. package/src/components/wt-tags-input/wt-tags-input.vue +15 -23
  78. package/src/components/wt-textarea/wt-textarea.vue +10 -15
  79. package/src/components/wt-time-input/wt-time-input.vue +4 -7
  80. package/src/components/wt-timepicker/wt-timepicker.vue +15 -19
  81. package/src/components/wt-tooltip/_internals/wt-tooltip-floating.vue +2 -2
  82. package/src/components/wt-tooltip/wt-tooltip.vue +4 -4
  83. package/src/composables/useCachedInterval/__tests__/useCachedInterval.spec.js +5 -5
  84. package/src/css/styleguide/colors/_colors.scss +8 -9
  85. package/src/locale/en/en.js +5 -0
  86. package/src/locale/i18n.js +1 -1
  87. package/src/locale/kz/kz.js +5 -0
  88. package/src/locale/ru/ru.js +5 -0
  89. package/src/locale/ua/ua.js +5 -0
  90. package/src/mixins/validationMixin/useValidation.js +2 -2
  91. package/src/modules/AgentStatusSelect/components/__tests__/wt-cc-agent-status-select.spec.js +4 -4
  92. package/src/modules/AgentStatusSelect/components/_internals/wt-cc-pause-cause-popup.vue +9 -11
  93. package/src/modules/AgentStatusSelect/components/_internals/wt-cc-status-select-error-popup.vue +5 -6
  94. package/src/modules/AgentStatusSelect/components/wt-cc-agent-status-select.vue +3 -3
  95. package/src/modules/AuditForm/components/__tests__/audit-form.spec.js +1 -1
  96. package/src/modules/AuditForm/components/audit-form-question-read-wrapper.vue +6 -10
  97. package/src/modules/AuditForm/components/audit-form-question-write-wrapper.vue +8 -8
  98. package/src/modules/AuditForm/components/audit-form-question.vue +8 -8
  99. package/src/modules/AuditForm/components/audit-form.vue +5 -6
  100. package/src/modules/AuditForm/components/questions/options/audit-form-question-options-write-row.vue +4 -4
  101. package/src/modules/AuditForm/components/questions/options/audit-form-question-options.vue +4 -7
  102. package/src/modules/AuditForm/components/questions/score/audit-form-question-score.vue +3 -3
  103. package/src/modules/CSVExport/__tests__/CSVExport.spec.js +2 -2
  104. package/src/modules/DeleteConfirmationPopup/__tests__/delete-confirmation-popup.spec.js +6 -6
  105. package/src/modules/DeleteConfirmationPopup/components/delete-confirmation-popup.vue +6 -13
  106. package/src/modules/FilesExport/__tests__/FilesExport.spec.js +3 -3
  107. package/src/modules/Filters/components/filter-pagination.vue +1 -1
  108. package/src/modules/Filters/components/filter-table-fields.vue +1 -1
  109. package/src/modules/Notifications/store/__tests__/NotificationsStoreModule.actions.spec.js +3 -3
  110. package/src/modules/QueryFilters/classes/__tests__/ApiFilterSchema.spec.js +1 -1
  111. package/src/modules/QueryFilters/components/__tests__/abstract-api-filter.spec.js +4 -4
  112. package/src/modules/QueryFilters/components/__tests__/filter-datetime.spec.js +2 -2
  113. package/src/modules/QueryFilters/components/__tests__/filter-from-to.spec.js +4 -4
  114. package/src/modules/QueryFilters/components/__tests__/filter-search.spec.js +2 -2
  115. package/src/modules/QueryFilters/components/abstract-api-filter.vue +2 -2
  116. package/src/modules/QueryFilters/components/abstract-enum-filter.vue +2 -2
  117. package/src/modules/QueryFilters/components/filter-datetime.vue +2 -2
  118. package/src/modules/QueryFilters/components/filter-from-to.vue +10 -12
  119. package/src/modules/QueryFilters/components/filter-search.vue +2 -2
  120. package/src/modules/QueryFilters/components/filter-table-fields.vue +7 -7
  121. package/src/modules/QueryFilters/mixins/__tests__/apiFilterMixin.spec.js +1 -1
  122. package/src/modules/QueryFilters/mixins/__tests__/enumFilterMixin.spec.js +2 -2
  123. package/src/modules/QueryFilters/mixins/__tests__/paginationFilterMixin.spec.js +2 -2
  124. package/src/modules/QueryFilters/mixins/__tests__/sortFilterMixin.spec.js +1 -1
  125. package/src/modules/QueryFilters/store/__tests__/QueryFiltersStoreModule.spec.js +2 -2
  126. package/src/modules/Userinfo/components/__tests__/auth.spec.js +4 -4
  127. package/src/modules/Userinfo/components/the-auth.vue +4 -7
  128. package/src/scripts/saveAsJSON.js +7 -0
  129. package/src/store/BaseStoreModules/__tests__/BaseStoreModule.spec.js +6 -6
  130. package/dist/favicon.ico +0 -0
  131. package/dist/plyr.svg +0 -70
  132. package/dist/ui-sdk.mjs +0 -22678
  133. package/src/components/wt-input/Readme.md +0 -96
  134. package/src/css/styleguide/colors/reusable/_text-field.scss +0 -20
  135. package/src/locale/.DS_Store +0 -0
@@ -1,16 +1,12 @@
1
1
  <template>
2
2
  <aside class="wt-notifications-bar">
3
- <transition-group
4
- name="wt-notifications-transition"
5
- tag="div"
6
- >
3
+ <transition-group name="wt-notifications-transition" tag="div">
7
4
  <wt-notification
8
5
  v-for="(notification, key) of notifications"
9
- :key="key+notification.text"
10
6
  :type="notification.type"
7
+ :key="key+notification.text"
11
8
  @close="closeNotification(notification)"
12
- >
13
- {{ notification.text }}
9
+ >{{ notification.text }}
14
10
  </wt-notification>
15
11
  </transition-group>
16
12
  </aside>
@@ -18,7 +14,7 @@
18
14
 
19
15
  <script>
20
16
  export default {
21
- name: 'WtNotificationsBar',
17
+ name: 'wt-notifications-bar',
22
18
  inject: ['$eventBus'],
23
19
  data: () => ({
24
20
  notificationDuration: 4000,
@@ -31,7 +27,7 @@ export default {
31
27
  console.error('wt-notifications-bar cannot work without globally registered eventBus', err);
32
28
  }
33
29
  },
34
- unmounted() {
30
+ destroyed() {
35
31
  this.$eventBus.$off('notification', this.showNotification);
36
32
  },
37
33
  methods: {
@@ -1,16 +1,17 @@
1
1
  <template>
2
2
  <wt-headline>
3
- <template #title-wrapper>
4
- <slot />
3
+ <template v-slot:title-wrapper>
4
+ <slot>
5
+ </slot>
5
6
  </template>
6
- <template #title>
7
- <slot name="title" />
7
+ <template v-slot:title>
8
+ <slot name="title"></slot>
8
9
  </template>
9
- <template #actions>
10
- <slot name="actions" />
10
+ <template v-slot:actions>
11
+ <slot name="actions"></slot>
11
12
  <slot
12
- v-if="!hidePrimary"
13
13
  name="primary-action"
14
+ v-if="!hidePrimary"
14
15
  >
15
16
  <wt-button
16
17
  :disabled="primaryDisabled"
@@ -1,23 +1,20 @@
1
1
  <template>
2
2
  <section class="wt-page-wrapper">
3
3
  <div class="wt-page-wrapper__header">
4
- <slot name="header" />
4
+ <slot name="header"></slot>
5
5
  </div>
6
- <div
7
- v-if="actionsPanel"
8
- class="wt-page-wrapper__actions-panel"
9
- >
10
- <slot name="actions-panel" />
6
+ <div v-if="actionsPanel" class="wt-page-wrapper__actions-panel">
7
+ <slot name="actions-panel"></slot>
11
8
  </div>
12
9
  <div class="wt-page-wrapper__main">
13
- <slot name="main" />
10
+ <slot name="main"></slot>
14
11
  </div>
15
12
  </section>
16
13
  </template>
17
14
 
18
15
  <script>
19
16
  export default {
20
- name: 'WtPageWrapper',
17
+ name: 'wt-page-wrapper',
21
18
  props: {
22
19
  actionsPanel: {
23
20
  type: Boolean,
@@ -1,9 +1,7 @@
1
1
  <template>
2
2
  <footer class="wt-pagination">
3
3
  <div class="wt-pagination__size">
4
- <div class="wt-pagination__size-text">
5
- {{ $t('webitelUI.pagination.sizeText') }}
6
- </div>
4
+ <div class="wt-pagination__size-text">{{ $t('webitelUI.pagination.sizeText') }}</div>
7
5
  <wt-input
8
6
  :number-max="1000"
9
7
  :number-min="1"
@@ -11,28 +9,28 @@
11
9
  class="wt-pagination__size-input"
12
10
  type="number"
13
11
  @input="inputHandler"
14
- />
12
+ ></wt-input>
15
13
  </div>
16
14
  <div class="wt-pagination__page-controls">
17
15
  <wt-tooltip>
18
- <template #activator>
16
+ <template v-slot:activator>
19
17
  <wt-icon-btn
20
18
  :disabled="!prev"
21
19
  class="wt-pagination__page-control"
22
20
  icon="arrow-left"
23
21
  @click="goPrev"
24
- />
22
+ ></wt-icon-btn>
25
23
  </template>
26
24
  {{ $t('webitelUI.pagination.prev') }}
27
25
  </wt-tooltip>
28
26
  <wt-tooltip>
29
- <template #activator>
27
+ <template v-slot:activator>
30
28
  <wt-icon-btn
31
29
  :disabled="!next"
32
30
  class="wt-pagination__page-control"
33
31
  icon="arrow-right"
34
32
  @click="goNext"
35
- />
33
+ ></wt-icon-btn>
36
34
  </template>
37
35
  {{ $t('webitelUI.pagination.next') }}
38
36
  </wt-tooltip>
@@ -44,11 +42,7 @@
44
42
  import debounce from '../../scripts/debounce';
45
43
 
46
44
  export default {
47
- name: 'WtPagination',
48
- model: {
49
- prop: 'size',
50
- event: 'change',
51
- },
45
+ name: 'wt-pagination',
52
46
  props: {
53
47
  size: {
54
48
  type: [String, Number],
@@ -71,10 +65,10 @@ export default {
71
65
  },
72
66
  },
73
67
  emits: ['change', 'input', 'prev', 'next'],
74
-
75
- data: () => ({
76
- defaultSize: '10',
77
- }),
68
+ model: {
69
+ prop: 'size',
70
+ event: 'change',
71
+ },
78
72
 
79
73
  watch: {
80
74
  size(value) {
@@ -82,6 +76,10 @@ export default {
82
76
  },
83
77
  },
84
78
 
79
+ data: () => ({
80
+ defaultSize: '10',
81
+ }),
82
+
85
83
  created() {
86
84
  if (this.debounce) this.changeSize = debounce(this.changeSize, this.debounceDelay);
87
85
  },
@@ -5,22 +5,22 @@
5
5
  >
6
6
  <component
7
7
  :is="playerType"
8
- ref="player"
9
8
  class="wt-player__player"
9
+ ref="player"
10
10
  :src="src"
11
11
  :autoplay="autoplay"
12
12
  controls
13
13
  v-on="listeners"
14
- />
14
+ ></component>
15
15
 
16
16
  <!-- The "wt-icon-btn" component is append in to "audio" element by "setCloseIcon" method-->
17
17
  <wt-icon-btn
18
18
  v-if="closable"
19
- ref="close-icon"
20
19
  class="wt-player__close-icon"
20
+ ref="close-icon"
21
21
  icon="close"
22
22
  @click="$emit('close')"
23
- />
23
+ ></wt-icon-btn>
24
24
  </aside>
25
25
  </template>
26
26
 
@@ -28,7 +28,7 @@
28
28
  import Plyr from 'plyr';
29
29
 
30
30
  export default {
31
- name: 'WtPlayer',
31
+ name: 'wt-player',
32
32
  props: {
33
33
  src: {},
34
34
  autoplay: {
@@ -74,17 +74,6 @@ export default {
74
74
  player: null,
75
75
  }),
76
76
 
77
- computed: {
78
- listeners() {
79
- return {
80
- ...this.$listeners,
81
- };
82
- },
83
- playerType() {
84
- return this.mime.includes('video') ? 'video' : 'audio';
85
- },
86
- },
87
-
88
77
  watch: {
89
78
  src() {
90
79
  this.setupDownload();
@@ -98,6 +87,17 @@ export default {
98
87
  this.setupPlayer();
99
88
  },
100
89
 
90
+ computed: {
91
+ listeners() {
92
+ return {
93
+ ...this.$listeners,
94
+ };
95
+ },
96
+ playerType() {
97
+ return this.mime.includes('video') ? 'video' : 'audio';
98
+ },
99
+ },
100
+
101
101
  methods: {
102
102
  async setupPlayer() {
103
103
  await this.$nextTick(); // test is failing to render component if element is passed to Plyr as Vue $ref
@@ -10,26 +10,20 @@
10
10
  <header class="wt-popup__header">
11
11
  <slot name="header">
12
12
  <h3 class="wt-popup__title">
13
- <slot name="title" />
13
+ <slot name="title"></slot>
14
14
  </h3>
15
15
  </slot>
16
16
  <wt-icon-btn
17
17
  class="wt-popup__close-btn"
18
18
  icon="close"
19
19
  @click="$emit('close')"
20
- />
20
+ ></wt-icon-btn>
21
21
  </header>
22
- <section
23
- v-if="$slots.main"
24
- class="wt-popup__main"
25
- >
26
- <slot name="main" />
22
+ <section v-if="$slots.main" class="wt-popup__main">
23
+ <slot name="main"></slot>
27
24
  </section>
28
- <footer
29
- v-if="$slots.actions"
30
- class="wt-popup__actions"
31
- >
32
- <slot name="actions" />
25
+ <footer v-if="$slots.actions" class="wt-popup__actions">
26
+ <slot name="actions"></slot>
33
27
  </footer>
34
28
  </aside>
35
29
  </div>
@@ -37,7 +31,7 @@
37
31
 
38
32
  <script>
39
33
  export default {
40
- name: 'WtPopup',
34
+ name: 'wt-popup',
41
35
  props: {
42
36
  minWidth: {
43
37
  type: [Number, String],
@@ -1,22 +1,18 @@
1
1
  <template>
2
2
  <div
3
- class="wt-progress-bar"
4
- :class="[{
5
- 'wt-progress-bar--overflow': isOverflow,
6
- },
7
- `wt-progress-bar--${color}`
8
- ]"
3
+ class="wt-progress-bar" :class="[{
4
+ 'wt-progress-bar--overflow': isOverflow,
5
+ },
6
+ `wt-progress-bar--${color}`
7
+ ]"
9
8
  >
10
- <span
11
- class="wt-progress-bar__progress"
12
- :style="`width: ${progressWidth}%;`"
13
- />
9
+ <span class="wt-progress-bar__progress" :style="`width: ${this.progressWidth}%;`"></span>
14
10
  </div>
15
11
  </template>
16
12
 
17
13
  <script>
18
14
  export default {
19
- name: 'WtProgressBar',
15
+ name: 'wt-progress-bar',
20
16
  props: {
21
17
  max: {
22
18
  type: [Number, String],
@@ -16,21 +16,13 @@
16
16
  :disabled="disabled"
17
17
  @input="inputHandler"
18
18
  >
19
- <wt-icon
20
- class="wt-radio__icon"
21
- :icon="radioIcon"
22
- />
19
+ <wt-icon class="wt-radio__icon" :icon="radioIcon"></wt-icon>
23
20
  <!-- @slot Custom input label -->
24
21
  <slot
25
22
  v-bind="{ label, isChecked, disabled }"
26
23
  name="label"
27
24
  >
28
- <div
29
- v-if="label"
30
- class="wt-radio__label"
31
- >
32
- {{ label }}
33
- </div>
25
+ <div v-if="label" class="wt-radio__label">{{ label }}</div>
34
26
  </slot>
35
27
  </wt-label>
36
28
  </div>
@@ -38,11 +30,7 @@
38
30
 
39
31
  <script>
40
32
  export default {
41
- name: 'WtRadio',
42
- model: {
43
- prop: 'selected',
44
- event: 'input',
45
- },
33
+ name: 'wt-radio',
46
34
  props: {
47
35
  // value, set by radio
48
36
  value: {
@@ -71,6 +59,10 @@ export default {
71
59
  default: false,
72
60
  },
73
61
  },
62
+ model: {
63
+ prop: 'selected',
64
+ event: 'input',
65
+ },
74
66
  computed: {
75
67
  isChecked() {
76
68
  return this.value === this.selected;
@@ -15,13 +15,13 @@
15
15
  v-if="loading"
16
16
  size="sm"
17
17
  :color="loaderColor"
18
- />
18
+ ></wt-loader>
19
19
  <wt-icon
20
20
  v-else
21
21
  :color="iColor"
22
22
  :icon="icon"
23
23
  :size="size"
24
- />
24
+ ></wt-icon>
25
25
  </button>
26
26
  </template>
27
27
 
@@ -3,7 +3,7 @@ import { shallowMount } from '@vue/test-utils';
3
3
  import WtSearchBar from '../wt-search-bar.vue';
4
4
  import { useValidation } from '../../../mixins/validationMixin/useValidation';
5
5
 
6
- vi.mock('../../../mixins/validationMixin/useValidation');
6
+ jest.mock('../../../mixins/validationMixin/useValidation');
7
7
  useValidation.mockImplementation(() => ({
8
8
  isValidation: ref(false),
9
9
  invalid: ref(false),
@@ -15,7 +15,7 @@
15
15
  <wt-icon
16
16
  :color="invalidColorProvider"
17
17
  icon="search"
18
- />
18
+ ></wt-icon>
19
19
  </slot>
20
20
  </div>
21
21
  <input
@@ -33,17 +33,16 @@
33
33
  class="wt-search-bar__reset-icon-btn"
34
34
  icon="close"
35
35
  @click="handleInput('')"
36
- />
36
+ ></wt-icon-btn>
37
37
  <wt-hint
38
38
  v-if="hint"
39
- :icon-color="invalidColorProvider"
40
- >
41
- {{ hint }}
39
+ :iconColor="invalidColorProvider"
40
+ >{{ hint }}
42
41
  </wt-hint>
43
42
  <slot
44
43
  :invalid="invalid"
45
44
  name="additional-actions"
46
- />
45
+ ></slot>
47
46
  </div>
48
47
  </div>
49
48
  </div>
@@ -1,3 +1,4 @@
1
+ @import '~vue-multiselect/dist/vue3-multiselect.css';
1
2
 
2
3
  .multiselect ::v-deep {
3
4
  cursor: pointer;
@@ -10,8 +10,8 @@
10
10
  class="wt-select"
11
11
  >
12
12
  <wt-label
13
- v-if="hasLabel"
14
13
  v-bind="labelProps"
14
+ v-if="hasLabel"
15
15
  :disabled="disabled"
16
16
  :invalid="invalid"
17
17
  class="wt-select__label"
@@ -20,9 +20,7 @@
20
20
  <slot
21
21
  v-bind="{ label }"
22
22
  name="label"
23
- >
24
- {{ requiredLabel }}
25
- </slot>
23
+ >{{ requiredLabel }}</slot>
26
24
  </wt-label>
27
25
  <vue-multiselect
28
26
  v-bind="$attrs"
@@ -43,24 +41,19 @@
43
41
  @open="isOpened = true"
44
42
  v-on="listeners"
45
43
  >
46
- <template
47
- v-if="!isOpened"
48
- #limit
49
- >
50
- <wt-chip class="multiselect__limit">
51
- +{{ value.length - 1 }}
52
- </wt-chip>
44
+ <template v-if="!isOpened" v-slot:limit>
45
+ <wt-chip class="multiselect__limit">+{{ value.length - 1 }}</wt-chip>
53
46
  </template>
54
47
 
55
48
  <!-- Slot that is used for all selected options (tags)-->
56
- <template #tag="{ option }">
49
+ <template v-slot:tag="{ option }">
57
50
  <span class="multiselect__custom-tag">
58
- {{ getOptionLabel({ option, optionLabel }) }}
51
+ {{ getOptionLabel({ option, optionLabel }) }}
59
52
  </span>
60
53
  </template>
61
54
 
62
55
  <!-- Slot for custom label template for single select-->
63
- <template #singleLabel="{ option }">
56
+ <template v-slot:singleLabel="{ option }">
64
57
  <slot
65
58
  v-bind="{ option, optionLabel }"
66
59
  name="singleLabel"
@@ -72,7 +65,7 @@
72
65
  </template>
73
66
 
74
67
  <!-- Slot for custom option template -->
75
- <template #option="{ option }">
68
+ <template v-slot:option="{ option }">
76
69
  <slot
77
70
  v-bind="{ option, optionLabel }"
78
71
  name="option"
@@ -82,18 +75,18 @@
82
75
  </template>
83
76
 
84
77
  <!-- Element for opening and closing the dropdown -->
85
- <template #caret="{ toggle }">
78
+ <template v-slot:caret="{ toggle }">
86
79
  <!-- @mousedown.native.prevent.stop="toggle": https://github.com/shentao/vue-multiselect/issues/1204#issuecomment-615114727 -->
87
80
  <wt-icon-btn
88
81
  :disabled="disabled"
89
82
  class="multiselect__select"
90
83
  icon="arrow-down"
91
84
  @mousedown.prevent.stop="toggle"
92
- />
85
+ ></wt-icon-btn>
93
86
  </template>
94
87
 
95
88
  <!-- Slot located before the tags -->
96
- <template #clear="{}">
89
+ <template v-slot:clear="{}">
97
90
  <wt-icon-btn
98
91
  v-if="clearable"
99
92
  :class="{ 'hidden': !isValue }"
@@ -101,30 +94,23 @@
101
94
  class="multiselect__clear"
102
95
  icon="close"
103
96
  @click="clearValue"
104
- />
97
+ ></wt-icon-btn>
105
98
  </template>
106
99
 
107
- <template #beforeList>
108
- <div
109
- v-show="isLoading"
110
- class="multiselect__loading-wrapper"
111
- >
112
- <wt-loader size="sm" />
100
+ <template v-slot:beforeList>
101
+ <div v-show="isLoading" class="multiselect__loading-wrapper">
102
+ <wt-loader size="sm"></wt-loader>
113
103
  </div>
114
104
  </template>
115
105
 
116
- <template
117
- v-if="showIntersectionObserver"
118
- #afterList
119
- >
120
- <div v-observe-visibility="handleAfterListIntersect" />
106
+ <template v-if="showIntersectionObserver" v-slot:afterList>
107
+ <div v-observe-visibility="handleAfterListIntersect"></div>
121
108
  </template>
122
109
  </vue-multiselect>
123
110
  <wt-input-info
124
111
  v-if="isValidation"
125
112
  :invalid="invalid"
126
- >
127
- {{ validationText }}
113
+ >{{ validationText }}
128
114
  </wt-input-info>
129
115
  </div>
130
116
  </template>
@@ -133,7 +119,7 @@
133
119
  import multiselectMixin from './mixins/multiselectMixin';
134
120
 
135
121
  export default {
136
- name: 'WtSelect',
122
+ name: 'wt-select',
137
123
  mixins: [multiselectMixin],
138
124
  props: {
139
125
  value: {},
@@ -17,9 +17,9 @@ and swapping height/width of this component in order to have the correct output.
17
17
  <template>
18
18
  <div
19
19
  :class="{
20
- 'wt-slider--disabled': disabled,
21
- 'wt-slider--vertical': vertical,
22
- }"
20
+ 'wt-slider--disabled': disabled,
21
+ 'wt-slider--vertical': vertical,
22
+ }"
23
23
  :style="{ height: vertical && verticalHeight }"
24
24
  class="wt-slider"
25
25
  >
@@ -38,14 +38,14 @@ and swapping height/width of this component in order to have the correct output.
38
38
  class="wt-slider__slider"
39
39
  type="range"
40
40
  @input="inputHandler"
41
- >
41
+ />
42
42
  </div>
43
43
  </div>
44
44
  </template>
45
45
 
46
46
  <script>
47
47
  export default {
48
- name: 'WtSlider',
48
+ name: 'wt-slider',
49
49
  props: {
50
50
  value: {
51
51
  type: Number,
@@ -8,17 +8,17 @@
8
8
  :searchable="false"
9
9
  @input="inputHandler"
10
10
  >
11
- <template #singleLabel="{ option }">
11
+ <template v-slot:singleLabel="{ option }">
12
12
  <wt-indicator
13
13
  :color="option.color"
14
14
  :text="duration"
15
- />
15
+ ></wt-indicator>
16
16
  </template>
17
- <template #option="{ option }">
17
+ <template v-slot:option="{ option }">
18
18
  <wt-indicator
19
19
  :color="option.color"
20
20
  :text="option.text"
21
- />
21
+ ></wt-indicator>
22
22
  </template>
23
23
  </wt-select>
24
24
  </template>
@@ -29,11 +29,7 @@ import convertDuration from '../../scripts/convertDuration';
29
29
  import StatusOptions from './_internals/StatusOptions.lookup';
30
30
 
31
31
  export default {
32
- name: 'WtStatusSelect',
33
- model: {
34
- prop: 'status',
35
- event: 'change',
36
- },
32
+ name: 'wt-status-select',
37
33
  props: {
38
34
  status: {
39
35
  type: String,
@@ -52,6 +48,10 @@ export default {
52
48
  // options: ['sm', 'md'],
53
49
  // },
54
50
  },
51
+ model: {
52
+ prop: 'status',
53
+ event: 'change',
54
+ },
55
55
  computed: {
56
56
  selectedOption() {
57
57
  return this.statusOptions.find((option) => option.value === this.status);
@@ -5,31 +5,29 @@
5
5
  class="wt-stepper-steps"
6
6
  >
7
7
  <div
8
- v-for="({name, completed}, idx) in stepWithCompleted"
9
8
  class="wt-stepper-steps__wrapper"
9
+ v-for="({name, completed}, idx) in stepWithCompleted"
10
10
  >
11
11
  <div
12
12
  v-if="idx !== 0"
13
13
  class="wt-stepper-steps__divider"
14
14
  :class="{ 'wt-stepper-steps__divider--completed': completed }"
15
- />
15
+ ></div>
16
16
  <wt-chip
17
17
  class="wt-stepper-steps__item"
18
18
  :color="!completed && 'secondary'"
19
- >
20
- {{ name }}
19
+ >{{ name }}
21
20
  </wt-chip>
22
21
  </div>
23
22
  </div>
24
23
  </div>
25
24
 
26
25
  <slot name="description">
27
- <p class="wt-stepper-description">
28
- {{ description }}
29
- </p>
26
+ <p class="wt-stepper-description">{{ description }}</p>
30
27
  </slot>
31
28
 
32
- <slot name="main" />
29
+ <slot name="main"></slot>
30
+
33
31
  </div>
34
32
  </template>
35
33
  <script setup>