@progress/kendo-vue-dropdowns 5.3.0-dev.202409130647 → 5.3.0-develop.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 (273) hide show
  1. package/AutoComplete/AutoComplete.js +8 -0
  2. package/AutoComplete/AutoComplete.mjs +526 -0
  3. package/ComboBox/ComboBox.js +8 -0
  4. package/ComboBox/ComboBox.mjs +776 -0
  5. package/DropDownList/DropDownList.js +8 -0
  6. package/DropDownList/DropDownList.mjs +781 -0
  7. package/DropDownTree/DropDownTree.js +8 -0
  8. package/DropDownTree/DropDownTree.mjs +709 -0
  9. package/DropDownTree/ListNoData.js +8 -0
  10. package/DropDownTree/ListNoData.mjs +21 -0
  11. package/MultiSelect/MultiSelect.js +8 -0
  12. package/MultiSelect/MultiSelect.mjs +872 -0
  13. package/MultiSelect/TagList.js +8 -0
  14. package/MultiSelect/TagList.mjs +119 -0
  15. package/MultiSelectTree/MultiSelectTree.js +8 -0
  16. package/MultiSelectTree/MultiSelectTree.mjs +759 -0
  17. package/MultiSelectTree/utils.js +8 -0
  18. package/MultiSelectTree/utils.mjs +73 -0
  19. package/README.md +28 -43
  20. package/common/ClearButton.js +8 -0
  21. package/common/ClearButton.mjs +54 -0
  22. package/common/DropDownBase.js +8 -0
  23. package/common/DropDownBase.mjs +193 -0
  24. package/common/GroupStickyHeader.js +8 -0
  25. package/common/GroupStickyHeader.mjs +38 -0
  26. package/common/List.js +8 -0
  27. package/common/List.mjs +139 -0
  28. package/common/ListContainer.js +8 -0
  29. package/common/ListContainer.mjs +103 -0
  30. package/common/ListDefaultItem.js +8 -0
  31. package/common/ListDefaultItem.mjs +47 -0
  32. package/common/ListFilter.js +8 -0
  33. package/common/ListFilter.mjs +147 -0
  34. package/common/ListGroupItem.js +8 -0
  35. package/common/ListGroupItem.mjs +46 -0
  36. package/common/ListItem.js +8 -0
  37. package/common/ListItem.mjs +73 -0
  38. package/common/Navigation.js +8 -0
  39. package/common/Navigation.mjs +28 -0
  40. package/common/SearchBar.js +8 -0
  41. package/common/SearchBar.mjs +129 -0
  42. package/common/VirtualScroll.js +8 -0
  43. package/common/VirtualScroll.mjs +95 -0
  44. package/common/constants.js +8 -0
  45. package/common/constants.mjs +12 -0
  46. package/common/settings.js +8 -0
  47. package/common/settings.mjs +11 -0
  48. package/common/utils.js +8 -0
  49. package/common/utils.mjs +104 -0
  50. package/dist/cdn/js/kendo-vue-dropdowns.js +8 -1
  51. package/index.d.mts +4037 -0
  52. package/index.d.ts +4037 -0
  53. package/index.js +8 -0
  54. package/index.mjs +25 -0
  55. package/messages/main.js +8 -0
  56. package/messages/main.mjs +26 -0
  57. package/package-metadata.js +8 -0
  58. package/package-metadata.mjs +18 -0
  59. package/package.json +24 -58
  60. package/dist/es/AutoComplete/AutoComplete.d.ts +0 -107
  61. package/dist/es/AutoComplete/AutoComplete.js +0 -825
  62. package/dist/es/AutoComplete/AutoCompleteProps.d.ts +0 -234
  63. package/dist/es/AutoComplete/AutoCompleteProps.js +0 -2
  64. package/dist/es/ComboBox/ComboBox.d.ts +0 -99
  65. package/dist/es/ComboBox/ComboBox.js +0 -1315
  66. package/dist/es/ComboBox/ComboBoxProps.d.ts +0 -277
  67. package/dist/es/ComboBox/ComboBoxProps.js +0 -2
  68. package/dist/es/DropDownList/DropDownList.d.ts +0 -103
  69. package/dist/es/DropDownList/DropDownList.js +0 -1314
  70. package/dist/es/DropDownList/DropDownListProps.d.ts +0 -307
  71. package/dist/es/DropDownList/DropDownListProps.js +0 -2
  72. package/dist/es/DropDownTree/DropDownTree.d.ts +0 -49
  73. package/dist/es/DropDownTree/DropDownTree.js +0 -1090
  74. package/dist/es/DropDownTree/DropDownTreeProps.d.ts +0 -301
  75. package/dist/es/DropDownTree/DropDownTreeProps.js +0 -2
  76. package/dist/es/DropDownTree/ListNoData.d.ts +0 -42
  77. package/dist/es/DropDownTree/ListNoData.js +0 -32
  78. package/dist/es/MultiSelect/MultiSelect.d.ts +0 -115
  79. package/dist/es/MultiSelect/MultiSelect.js +0 -1515
  80. package/dist/es/MultiSelect/MultiSelectProps.d.ts +0 -290
  81. package/dist/es/MultiSelect/MultiSelectProps.js +0 -2
  82. package/dist/es/MultiSelect/TagList.d.ts +0 -54
  83. package/dist/es/MultiSelect/TagList.js +0 -176
  84. package/dist/es/MultiSelectTree/MultiSelectTree.d.ts +0 -48
  85. package/dist/es/MultiSelectTree/MultiSelectTree.js +0 -1220
  86. package/dist/es/MultiSelectTree/MultiSelectTreeProps.d.ts +0 -322
  87. package/dist/es/MultiSelectTree/MultiSelectTreeProps.js +0 -2
  88. package/dist/es/MultiSelectTree/utils.d.ts +0 -17
  89. package/dist/es/MultiSelectTree/utils.js +0 -109
  90. package/dist/es/additionalTypes.ts +0 -21
  91. package/dist/es/common/ClearButton.d.ts +0 -21
  92. package/dist/es/common/ClearButton.js +0 -73
  93. package/dist/es/common/DropDownBase.d.ts +0 -95
  94. package/dist/es/common/DropDownBase.js +0 -298
  95. package/dist/es/common/GroupStickyHeader.d.ts +0 -32
  96. package/dist/es/common/GroupStickyHeader.js +0 -60
  97. package/dist/es/common/List.d.ts +0 -60
  98. package/dist/es/common/List.js +0 -201
  99. package/dist/es/common/ListContainer.d.ts +0 -40
  100. package/dist/es/common/ListContainer.js +0 -161
  101. package/dist/es/common/ListDefaultItem.d.ts +0 -29
  102. package/dist/es/common/ListDefaultItem.js +0 -60
  103. package/dist/es/common/ListFilter.d.ts +0 -49
  104. package/dist/es/common/ListFilter.js +0 -175
  105. package/dist/es/common/ListGroupItem.d.ts +0 -41
  106. package/dist/es/common/ListGroupItem.js +0 -71
  107. package/dist/es/common/ListItem.d.ts +0 -71
  108. package/dist/es/common/ListItem.js +0 -101
  109. package/dist/es/common/Navigation.d.ts +0 -12
  110. package/dist/es/common/Navigation.js +0 -34
  111. package/dist/es/common/SearchBar.d.ts +0 -66
  112. package/dist/es/common/SearchBar.js +0 -177
  113. package/dist/es/common/VirtualScroll.d.ts +0 -42
  114. package/dist/es/common/VirtualScroll.js +0 -163
  115. package/dist/es/common/constants.d.ts +0 -4
  116. package/dist/es/common/constants.js +0 -4
  117. package/dist/es/common/events.d.ts +0 -63
  118. package/dist/es/common/events.js +0 -1
  119. package/dist/es/common/filterDescriptor.d.ts +0 -41
  120. package/dist/es/common/filterDescriptor.js +0 -2
  121. package/dist/es/common/settings.d.ts +0 -107
  122. package/dist/es/common/settings.js +0 -8
  123. package/dist/es/common/utils.d.ts +0 -70
  124. package/dist/es/common/utils.js +0 -202
  125. package/dist/es/main.d.ts +0 -18
  126. package/dist/es/main.js +0 -10
  127. package/dist/es/messages/main.d.ts +0 -40
  128. package/dist/es/messages/main.js +0 -41
  129. package/dist/es/package-metadata.d.ts +0 -5
  130. package/dist/es/package-metadata.js +0 -11
  131. package/dist/esm/AutoComplete/AutoComplete.d.ts +0 -107
  132. package/dist/esm/AutoComplete/AutoComplete.js +0 -825
  133. package/dist/esm/AutoComplete/AutoCompleteProps.d.ts +0 -234
  134. package/dist/esm/AutoComplete/AutoCompleteProps.js +0 -2
  135. package/dist/esm/ComboBox/ComboBox.d.ts +0 -99
  136. package/dist/esm/ComboBox/ComboBox.js +0 -1315
  137. package/dist/esm/ComboBox/ComboBoxProps.d.ts +0 -277
  138. package/dist/esm/ComboBox/ComboBoxProps.js +0 -2
  139. package/dist/esm/DropDownList/DropDownList.d.ts +0 -103
  140. package/dist/esm/DropDownList/DropDownList.js +0 -1314
  141. package/dist/esm/DropDownList/DropDownListProps.d.ts +0 -307
  142. package/dist/esm/DropDownList/DropDownListProps.js +0 -2
  143. package/dist/esm/DropDownTree/DropDownTree.d.ts +0 -49
  144. package/dist/esm/DropDownTree/DropDownTree.js +0 -1090
  145. package/dist/esm/DropDownTree/DropDownTreeProps.d.ts +0 -301
  146. package/dist/esm/DropDownTree/DropDownTreeProps.js +0 -2
  147. package/dist/esm/DropDownTree/ListNoData.d.ts +0 -42
  148. package/dist/esm/DropDownTree/ListNoData.js +0 -32
  149. package/dist/esm/MultiSelect/MultiSelect.d.ts +0 -115
  150. package/dist/esm/MultiSelect/MultiSelect.js +0 -1515
  151. package/dist/esm/MultiSelect/MultiSelectProps.d.ts +0 -290
  152. package/dist/esm/MultiSelect/MultiSelectProps.js +0 -2
  153. package/dist/esm/MultiSelect/TagList.d.ts +0 -54
  154. package/dist/esm/MultiSelect/TagList.js +0 -176
  155. package/dist/esm/MultiSelectTree/MultiSelectTree.d.ts +0 -48
  156. package/dist/esm/MultiSelectTree/MultiSelectTree.js +0 -1220
  157. package/dist/esm/MultiSelectTree/MultiSelectTreeProps.d.ts +0 -322
  158. package/dist/esm/MultiSelectTree/MultiSelectTreeProps.js +0 -2
  159. package/dist/esm/MultiSelectTree/utils.d.ts +0 -17
  160. package/dist/esm/MultiSelectTree/utils.js +0 -109
  161. package/dist/esm/additionalTypes.ts +0 -21
  162. package/dist/esm/common/ClearButton.d.ts +0 -21
  163. package/dist/esm/common/ClearButton.js +0 -73
  164. package/dist/esm/common/DropDownBase.d.ts +0 -95
  165. package/dist/esm/common/DropDownBase.js +0 -298
  166. package/dist/esm/common/GroupStickyHeader.d.ts +0 -32
  167. package/dist/esm/common/GroupStickyHeader.js +0 -60
  168. package/dist/esm/common/List.d.ts +0 -60
  169. package/dist/esm/common/List.js +0 -201
  170. package/dist/esm/common/ListContainer.d.ts +0 -40
  171. package/dist/esm/common/ListContainer.js +0 -161
  172. package/dist/esm/common/ListDefaultItem.d.ts +0 -29
  173. package/dist/esm/common/ListDefaultItem.js +0 -60
  174. package/dist/esm/common/ListFilter.d.ts +0 -49
  175. package/dist/esm/common/ListFilter.js +0 -175
  176. package/dist/esm/common/ListGroupItem.d.ts +0 -41
  177. package/dist/esm/common/ListGroupItem.js +0 -71
  178. package/dist/esm/common/ListItem.d.ts +0 -71
  179. package/dist/esm/common/ListItem.js +0 -101
  180. package/dist/esm/common/Navigation.d.ts +0 -12
  181. package/dist/esm/common/Navigation.js +0 -34
  182. package/dist/esm/common/SearchBar.d.ts +0 -66
  183. package/dist/esm/common/SearchBar.js +0 -177
  184. package/dist/esm/common/VirtualScroll.d.ts +0 -42
  185. package/dist/esm/common/VirtualScroll.js +0 -163
  186. package/dist/esm/common/constants.d.ts +0 -4
  187. package/dist/esm/common/constants.js +0 -4
  188. package/dist/esm/common/events.d.ts +0 -63
  189. package/dist/esm/common/events.js +0 -1
  190. package/dist/esm/common/filterDescriptor.d.ts +0 -41
  191. package/dist/esm/common/filterDescriptor.js +0 -2
  192. package/dist/esm/common/settings.d.ts +0 -107
  193. package/dist/esm/common/settings.js +0 -8
  194. package/dist/esm/common/utils.d.ts +0 -70
  195. package/dist/esm/common/utils.js +0 -202
  196. package/dist/esm/main.d.ts +0 -18
  197. package/dist/esm/main.js +0 -10
  198. package/dist/esm/messages/main.d.ts +0 -40
  199. package/dist/esm/messages/main.js +0 -41
  200. package/dist/esm/package-metadata.d.ts +0 -5
  201. package/dist/esm/package-metadata.js +0 -11
  202. package/dist/esm/package.json +0 -3
  203. package/dist/npm/AutoComplete/AutoComplete.d.ts +0 -107
  204. package/dist/npm/AutoComplete/AutoComplete.js +0 -832
  205. package/dist/npm/AutoComplete/AutoCompleteProps.d.ts +0 -234
  206. package/dist/npm/AutoComplete/AutoCompleteProps.js +0 -3
  207. package/dist/npm/ComboBox/ComboBox.d.ts +0 -99
  208. package/dist/npm/ComboBox/ComboBox.js +0 -1322
  209. package/dist/npm/ComboBox/ComboBoxProps.d.ts +0 -277
  210. package/dist/npm/ComboBox/ComboBoxProps.js +0 -3
  211. package/dist/npm/DropDownList/DropDownList.d.ts +0 -103
  212. package/dist/npm/DropDownList/DropDownList.js +0 -1321
  213. package/dist/npm/DropDownList/DropDownListProps.d.ts +0 -307
  214. package/dist/npm/DropDownList/DropDownListProps.js +0 -3
  215. package/dist/npm/DropDownTree/DropDownTree.d.ts +0 -49
  216. package/dist/npm/DropDownTree/DropDownTree.js +0 -1095
  217. package/dist/npm/DropDownTree/DropDownTreeProps.d.ts +0 -301
  218. package/dist/npm/DropDownTree/DropDownTreeProps.js +0 -3
  219. package/dist/npm/DropDownTree/ListNoData.d.ts +0 -42
  220. package/dist/npm/DropDownTree/ListNoData.js +0 -39
  221. package/dist/npm/MultiSelect/MultiSelect.d.ts +0 -115
  222. package/dist/npm/MultiSelect/MultiSelect.js +0 -1522
  223. package/dist/npm/MultiSelect/MultiSelectProps.d.ts +0 -290
  224. package/dist/npm/MultiSelect/MultiSelectProps.js +0 -3
  225. package/dist/npm/MultiSelect/TagList.d.ts +0 -54
  226. package/dist/npm/MultiSelect/TagList.js +0 -183
  227. package/dist/npm/MultiSelectTree/MultiSelectTree.d.ts +0 -48
  228. package/dist/npm/MultiSelectTree/MultiSelectTree.js +0 -1227
  229. package/dist/npm/MultiSelectTree/MultiSelectTreeProps.d.ts +0 -322
  230. package/dist/npm/MultiSelectTree/MultiSelectTreeProps.js +0 -3
  231. package/dist/npm/MultiSelectTree/utils.d.ts +0 -17
  232. package/dist/npm/MultiSelectTree/utils.js +0 -114
  233. package/dist/npm/additionalTypes.ts +0 -21
  234. package/dist/npm/common/ClearButton.d.ts +0 -21
  235. package/dist/npm/common/ClearButton.js +0 -80
  236. package/dist/npm/common/DropDownBase.d.ts +0 -95
  237. package/dist/npm/common/DropDownBase.js +0 -303
  238. package/dist/npm/common/GroupStickyHeader.d.ts +0 -32
  239. package/dist/npm/common/GroupStickyHeader.js +0 -67
  240. package/dist/npm/common/List.d.ts +0 -60
  241. package/dist/npm/common/List.js +0 -208
  242. package/dist/npm/common/ListContainer.d.ts +0 -40
  243. package/dist/npm/common/ListContainer.js +0 -168
  244. package/dist/npm/common/ListDefaultItem.d.ts +0 -29
  245. package/dist/npm/common/ListDefaultItem.js +0 -67
  246. package/dist/npm/common/ListFilter.d.ts +0 -49
  247. package/dist/npm/common/ListFilter.js +0 -182
  248. package/dist/npm/common/ListGroupItem.d.ts +0 -41
  249. package/dist/npm/common/ListGroupItem.js +0 -78
  250. package/dist/npm/common/ListItem.d.ts +0 -71
  251. package/dist/npm/common/ListItem.js +0 -108
  252. package/dist/npm/common/Navigation.d.ts +0 -12
  253. package/dist/npm/common/Navigation.js +0 -37
  254. package/dist/npm/common/SearchBar.d.ts +0 -66
  255. package/dist/npm/common/SearchBar.js +0 -184
  256. package/dist/npm/common/VirtualScroll.d.ts +0 -42
  257. package/dist/npm/common/VirtualScroll.js +0 -168
  258. package/dist/npm/common/constants.d.ts +0 -4
  259. package/dist/npm/common/constants.js +0 -10
  260. package/dist/npm/common/events.d.ts +0 -63
  261. package/dist/npm/common/events.js +0 -2
  262. package/dist/npm/common/filterDescriptor.d.ts +0 -41
  263. package/dist/npm/common/filterDescriptor.js +0 -3
  264. package/dist/npm/common/settings.d.ts +0 -107
  265. package/dist/npm/common/settings.js +0 -11
  266. package/dist/npm/common/utils.d.ts +0 -70
  267. package/dist/npm/common/utils.js +0 -221
  268. package/dist/npm/main.d.ts +0 -18
  269. package/dist/npm/main.js +0 -36
  270. package/dist/npm/messages/main.d.ts +0 -40
  271. package/dist/npm/messages/main.js +0 -44
  272. package/dist/npm/package-metadata.d.ts +0 -5
  273. package/dist/npm/package-metadata.js +0 -14
@@ -0,0 +1,872 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { defineComponent as $e, ref as Q, inject as Fe, h as _, createVNode as r, isVNode as Te } from "vue";
9
+ import { guid as X, canUseDOM as Oe, getRef as Z, Keys as f, templateRendering as b, getListeners as I, classNames as R, setRef as Ve, kendoThemeMaps as we, Icon as Re } from "@progress/kendo-vue-common";
10
+ import { ListContainer as De } from "../common/ListContainer.mjs";
11
+ import { List as Be } from "../common/List.mjs";
12
+ import { TagList as Me } from "./TagList.mjs";
13
+ import { SearchBar as Le } from "../common/SearchBar.mjs";
14
+ import Ae from "../common/DropDownBase.mjs";
15
+ import { GroupStickyHeader as ee } from "../common/GroupStickyHeader.mjs";
16
+ import { ClearButton as He } from "../common/ClearButton.mjs";
17
+ import { ActiveDescendant as A } from "../common/settings.mjs";
18
+ import { getItemValue as x, areSame as te, removeDataItems as H, isPresent as Ee, matchDataCollections as Pe, itemIndexStartsWith as Ne, preventDefaultNonInputs as Ke } from "../common/utils.mjs";
19
+ import { xIcon as _e, plusIcon as ze } from "@progress/kendo-svg-icons";
20
+ import { Button as z } from "@progress/kendo-vue-buttons";
21
+ import { MOBILE_SMALL_DEVICE as se, MOBILE_MEDIUM_DEVICE as je } from "../common/constants.mjs";
22
+ import { ActionSheet as We } from "@progress/kendo-vue-layout";
23
+ import { ListFilter as Ge } from "../common/ListFilter.mjs";
24
+ import { provideLocalizationService as qe } from "@progress/kendo-vue-intl";
25
+ import { adaptiveModeFooterCancel as ie, messages as ne, adaptiveModeFooterApply as ae } from "../messages/main.mjs";
26
+ const {
27
+ sizeMap: j,
28
+ roundedMap: Ue
29
+ } = we;
30
+ function E(e) {
31
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !Te(e);
32
+ }
33
+ const Ye = "Please enter a valid value!", Je = (e) => e.preventDefault(), oe = (e, t, s) => !!e != !!t || e.text !== t.text ? !1 : e === t || Pe(e.data, t.data, s), le = (e) => e === S.CustomItem;
34
+ var S = /* @__PURE__ */ function(e) {
35
+ return e[e.None = 0] = "None", e[e.ListItem = 1] = "ListItem", e[e.CustomItem = 2] = "CustomItem", e;
36
+ }(S || {});
37
+ const mt = /* @__PURE__ */ $e({
38
+ name: "KendoMultiSelect",
39
+ emits: {
40
+ changemodel: null,
41
+ "update:modelValue": null,
42
+ filterchange: null,
43
+ change: null,
44
+ pagechange: null,
45
+ focus: null,
46
+ blur: null,
47
+ open: null,
48
+ close: null,
49
+ scroll: null
50
+ },
51
+ model: {
52
+ event: "changemodel"
53
+ },
54
+ props: {
55
+ autoClose: {
56
+ type: Boolean,
57
+ default: !0
58
+ },
59
+ removeTagIcon: String,
60
+ allowCustom: Boolean,
61
+ modelValue: Array,
62
+ opened: {
63
+ type: Boolean,
64
+ default: void 0
65
+ },
66
+ disabled: Boolean,
67
+ dir: String,
68
+ tabIndex: {
69
+ type: Number,
70
+ default: 0
71
+ },
72
+ accessKey: String,
73
+ dataItems: Array,
74
+ textField: String,
75
+ label: String,
76
+ loading: Boolean,
77
+ name: String,
78
+ value: Array,
79
+ defaultValue: Array,
80
+ valueField: String,
81
+ valuePrimitive: Boolean,
82
+ dataItemKey: String,
83
+ placeholder: String,
84
+ tags: Array,
85
+ required: {
86
+ type: Boolean,
87
+ default: !1
88
+ },
89
+ valid: {
90
+ type: Boolean,
91
+ default: void 0
92
+ },
93
+ validate: {
94
+ type: Boolean
95
+ },
96
+ validationMessage: {
97
+ type: String,
98
+ default: void 0
99
+ },
100
+ validityStyles: {
101
+ type: Boolean,
102
+ default: !0
103
+ },
104
+ tagRender: [String, Function, Object],
105
+ id: String,
106
+ popupSettings: {
107
+ type: Object,
108
+ default: function() {
109
+ return {
110
+ animate: !0,
111
+ height: "200px",
112
+ anchor: ""
113
+ };
114
+ }
115
+ },
116
+ itemRender: [String, Function, Object],
117
+ groupHeaderItemRender: [String, Function, Object],
118
+ groupStickyHeaderItemRender: [String, Function, Object],
119
+ listNoDataRender: [String, Function, Object],
120
+ focusedItemIndex: Function,
121
+ virtual: {
122
+ type: Object,
123
+ default: void 0
124
+ },
125
+ header: [String, Function, Object],
126
+ footer: [String, Function, Object],
127
+ filterable: Boolean,
128
+ filter: {
129
+ type: String,
130
+ default: void 0
131
+ },
132
+ ariaLabel: {
133
+ type: String,
134
+ default: void 0
135
+ },
136
+ ariaLabelledBy: String,
137
+ ariaDescribedBy: String,
138
+ rounded: {
139
+ type: String,
140
+ default: "medium",
141
+ validator: function(e) {
142
+ return ["small", "medium", "large", "full"].includes(e);
143
+ }
144
+ },
145
+ tagsRounded: {
146
+ type: String,
147
+ default: "medium",
148
+ validator: function(e) {
149
+ return ["small", "medium", "large", "full"].includes(e);
150
+ }
151
+ },
152
+ fillMode: {
153
+ type: String,
154
+ default: "solid",
155
+ validator: function(e) {
156
+ return ["solid", "flat", "outline"].includes(e);
157
+ }
158
+ },
159
+ size: {
160
+ type: String,
161
+ default: "medium",
162
+ validator: function(e) {
163
+ return ["small", "medium", "large"].includes(e);
164
+ }
165
+ },
166
+ groupField: {
167
+ type: String
168
+ },
169
+ adaptive: {
170
+ type: Boolean,
171
+ default: void 0
172
+ },
173
+ adaptiveTitle: {
174
+ type: String,
175
+ default: void 0
176
+ }
177
+ },
178
+ setup() {
179
+ const e = Q(null), t = Q(null), s = Fe("kendoLocalizationService", {});
180
+ return {
181
+ inputRef: e,
182
+ kendoAnchorRef: t,
183
+ kendoLocalizationService: s
184
+ };
185
+ },
186
+ computed: {
187
+ spanClassNames() {
188
+ const e = !this.hasMounted || !this.$props.validityStyles || this.validity().valid, t = this.currentText || x(this.computedValue()[0], this.$props.textField);
189
+ return {
190
+ "k-floating-label-container": !0,
191
+ "k-focus": this.currentFocused,
192
+ "k-empty": !(t && t !== 0),
193
+ "k-invalid": !e && e !== void 0,
194
+ "k-rtl": this.$props.dir === "rtl"
195
+ };
196
+ },
197
+ isOpen() {
198
+ return this.$props.opened !== void 0 ? this.$props.opened : this.currentOpened;
199
+ },
200
+ animationStyles() {
201
+ return this.windowWidth <= se ? {
202
+ top: 0,
203
+ width: "100%",
204
+ height: "100%"
205
+ } : void 0;
206
+ },
207
+ classNameAdaptive() {
208
+ return this.windowWidth <= se ? "k-adaptive-actionsheet k-actionsheet-fullscreen" : "k-adaptive-actionsheet k-actionsheet-bottom";
209
+ },
210
+ adaptiveState() {
211
+ return this.windowWidth <= je && this.$props.adaptive;
212
+ }
213
+ },
214
+ created() {
215
+ this.observer = null, this.valuesItemsDuringOnChange = null, this._tags = [], this._skipFocusEvent = !1, this.scrollToFocused = !1, this.base = new Ae(this), this.anchor = X(), this.inputId = X();
216
+ },
217
+ inject: {
218
+ kendoLocalizationService: {
219
+ default: null
220
+ }
221
+ },
222
+ data() {
223
+ return {
224
+ hasMounted: !1,
225
+ currentText: "",
226
+ currentValue: "",
227
+ currentFocused: !1,
228
+ currentOpened: !1,
229
+ currentFocusedIndex: void 0,
230
+ currentFocusedTag: void 0,
231
+ searchState: {
232
+ word: "",
233
+ last: ""
234
+ },
235
+ suggested: "",
236
+ activedescendant: A.PopupList,
237
+ group: void 0,
238
+ isScrolling: !1,
239
+ itemHeight: 0,
240
+ windowWidth: 0,
241
+ popupWidth: void 0,
242
+ initialAdaptiveRenderingValues: void 0
243
+ };
244
+ },
245
+ watch: {
246
+ currentOpened: function(e, t) {
247
+ this.prevCurrentOpened = t;
248
+ },
249
+ opened: function(e, t) {
250
+ this.prevOpened = t;
251
+ },
252
+ virtual: function(e, t) {
253
+ e && t && e.total !== t.total && (this.virtualTotalHasChanged = !0);
254
+ },
255
+ isOpen: function(e) {
256
+ e ? this.initialAdaptiveRenderingValues = this.base.component.currentValue : this.initialAdaptiveRenderingValues = void 0, setTimeout(() => {
257
+ const t = document.querySelector(".k-list-item");
258
+ this.itemHeight = this.base.getListItemHeight(t);
259
+ }, 100);
260
+ }
261
+ },
262
+ updated() {
263
+ var g;
264
+ const {
265
+ virtual: e,
266
+ groupField: t = "",
267
+ dataItems: s = []
268
+ } = this.$props, i = e ? e.skip : 0, n = this.isOpen, o = this.prevOpened !== void 0 ? this.prevOpened : this.prevCurrentOpened, l = !o && n, d = o && !n, c = Object.assign({}, {
269
+ animate: !0,
270
+ height: "200px"
271
+ }, this.$props.popupSettings), a = this.$refs.list, p = this.$refs.scrollElement;
272
+ if (a && (this.base.vs.list = a.list, this.base.list = a.list), p && (this.base.vs.scrollElement = p), a && s.length && this.base.vs.scrollerRef(a.$el), !c.animate && d && this.onPopupClosed(), !this.isScrolling)
273
+ if (e && this.virtualTotalHasChanged)
274
+ this.base.vs.calcScrollElementHeight(), this.base.vs.reset(), this.virtualTotalHasChanged = !1;
275
+ else {
276
+ let {
277
+ focusedItem: m,
278
+ focusedIndex: $
279
+ } = this.getFocusedState();
280
+ t !== "" && ($ = (g = this.base.getGroupedDataModernMode(s, t)) == null ? void 0 : g.indexOf(m)), l && e ? (this.base.scrollToVirtualItem(e, $ - i), this.prevCurrentOpened = !0) : l && !e ? (s && s.length !== 0 && this.base.resetGroupStickyHeader(s[0][t], this), this.base.scrollToItem($), this.prevCurrentOpened = !0) : n && o && m && this.base.scrollToItem($ - i);
281
+ }
282
+ this.scrollToFocused = !1, this.searchBarRef(), this.setValidity();
283
+ },
284
+ mounted() {
285
+ this.observer = Oe && window.ResizeObserver && new ResizeObserver(this.calculateMedia), document != null && document.body && this.observer && this.observer.observe(document.body), this.hasMounted = !0, this.input = this.inputRef.input, this.base.wrapper = Z(this, "kendoAnchor"), this.element = Z(this, "kendoAnchor"), this.base.didMount(), this.searchBarRef(), this.setValidity();
286
+ },
287
+ methods: {
288
+ clearFilter(e) {
289
+ this.currentText && (e.data.currentText = ""), this.base.filterChanged("", e);
290
+ },
291
+ computedValue() {
292
+ const e = [];
293
+ return this.valuesItemsDuringOnChange ? e.push(...this.valuesItemsDuringOnChange) : this.$props.value ? e.push(...this.$props.value) : this.$props.modelValue !== void 0 ? e.push(...this.$props.modelValue) : this.currentValue ? e.push(...this.currentValue) : this.$props.defaultValue && e.push(...this.$props.defaultValue), this.valuePrimitive && this.findByFieldValue(this.valueField, e) || e;
294
+ },
295
+ findByFieldValue(e, t) {
296
+ return t.map((i) => {
297
+ const n = this.dataItems.findIndex((o) => x(o, e) === i);
298
+ return this.dataItems[n] || i;
299
+ });
300
+ },
301
+ primitiveValue() {
302
+ const e = this.computedValue(), t = e.map((s) => x(s, this.valueField));
303
+ return this.valuePrimitive ? t : e;
304
+ },
305
+ validity() {
306
+ const e = this.$props.validationMessage !== void 0, t = this.computedValue(), s = !this.$props.required || t !== null && t.length > 0 && t !== void 0, i = this.$props.valid !== void 0 ? this.$props.valid : s;
307
+ return {
308
+ customError: e,
309
+ valid: i,
310
+ valueMissing: t === null
311
+ };
312
+ },
313
+ handleItemSelect(e, t) {
314
+ const {
315
+ dataItems: s = [],
316
+ dataItemKey: i,
317
+ virtual: n
318
+ } = this.$props, o = this.computedValue(), l = n ? n.skip : 0, d = s[e - l], c = o.findIndex((g) => te(g, d, i));
319
+ let a = [];
320
+ c !== -1 ? (a = o, a.splice(c, 1)) : a = [...o, d], (this.$props.filter !== void 0 ? this.$props.filter : this.currentText) && !this.adaptiveState && this.clearFilter(t), this.currentFocusedIndex !== void 0 && (t.data.currentFocusedIndex = void 0), this.triggerOnChange(a, t), this.base.triggerPageChangeCornerItems(d, t);
321
+ },
322
+ onTagDelete(e, t) {
323
+ const s = this.isOpen, i = this.base.initState();
324
+ i.event = t, s && this.base.togglePopup(i), this.currentFocused || (i.data.currentFocused = !0);
325
+ const n = this.computedValue();
326
+ H(n, e, this.$props.dataItemKey), this.triggerOnChange(n, i), this.applyState(i);
327
+ },
328
+ onNavigate(e, t) {
329
+ const {
330
+ allowCustom: s,
331
+ dataItems: i = []
332
+ } = this.$props, n = this.isOpen, o = this.$props.filter !== void 0 ? this.$props.filter : this.currentText, {
333
+ focusedType: l,
334
+ focusedIndex: d
335
+ } = this.getFocusedState(), c = s && o, a = le(l), p = this.base, g = p.vs;
336
+ if (n && t === f.up && a)
337
+ this.currentFocusedIndex !== void 0 && (e.data.currentFocusedIndex = void 0);
338
+ else {
339
+ const m = p.navigation.navigate({
340
+ keyCode: t,
341
+ current: d,
342
+ max: (g.enabled ? g.total : i.length) - 1,
343
+ min: c ? -1 : 0
344
+ });
345
+ m !== void 0 && (this.itemFocus(m, e), this.scrollToFocused = !0);
346
+ }
347
+ this.applyState(e);
348
+ },
349
+ itemFocus(e, t) {
350
+ const {
351
+ dataItems: s = [],
352
+ allowCustom: i,
353
+ virtual: n
354
+ } = this.$props, o = n ? n.skip : 0, l = this.$props.filter !== void 0 ? this.$props.filter : this.currentText, {
355
+ focusedIndex: d
356
+ } = this.getFocusedState(), c = i && l, a = s[e - o];
357
+ a && d !== e ? this.currentFocusedIndex !== e && (t.data.currentFocusedIndex = e, t.data.activedescendant = A.PopupList) : c && e === -1 && this.currentFocusedIndex !== void 0 && (t.data.currentFocusedIndex = void 0), this.base.triggerPageChangeCornerItems(a, t);
358
+ },
359
+ searchBarRef() {
360
+ this.input && this.currentFocused && setTimeout(() => this.input.focus(), 0);
361
+ },
362
+ onChangeHandler(e) {
363
+ const t = this.base.initState(), s = e && (e.currentTarget && e.currentTarget.value || e.value), i = this.isOpen;
364
+ t.event = e, this.$props.filter === void 0 && (t.data.currentText = s), t.data.currentFocusedIndex = void 0, i || this.base.togglePopup(t), this.base.filterChanged(s, t), this.$props.filterable && (t.data.group = void 0), this.applyState(t);
365
+ },
366
+ clearButtonClick(e) {
367
+ const t = this.isOpen, s = this.base.initState();
368
+ s.event = e, e.stopPropagation(), this.computedValue().length > 0 && this.triggerOnChange([], s), this.currentFocusedIndex !== void 0 && (s.data.currentFocusedIndex = void 0), t && this.base.togglePopup(s);
369
+ const i = this.$props.filter !== void 0 ? this.$props.filter : this.currentText;
370
+ Ee(i) && i !== "" && this.base.filterChanged("", s), this.currentText && (s.data.currentText = ""), this.applyState(s);
371
+ },
372
+ onInputKeyDown(e) {
373
+ this.isScrolling && (this.isScrolling = !1);
374
+ const t = e.keyCode, s = this.$props.filter !== void 0 ? this.$props.filter : this.currentText, i = this.isOpen, {
375
+ focusedItem: n
376
+ } = this.getFocusedState(), o = this.base.initState();
377
+ if (o.event = e, !s && this.computedValue().length > 0 && (t === f.left || t === f.right || t === f.home || t === f.end || t === f.delete || t === f.backspace))
378
+ return this.onTagsNavigate(e, o);
379
+ const l = () => {
380
+ e.preventDefault(), this.base.togglePopup(o), this.applyState(o);
381
+ };
382
+ i ? e.altKey && t === f.up ? l() : t === f.up || t === f.down ? (e.preventDefault(), this.onNavigate(o, t)) : t === f.enter ? (e.preventDefault(), this.$props.allowCustom && s && n === null ? this.customItemSelect(e) : this.selectFocusedItem(e)) : t === f.esc && (this.adaptiveState && this.handleWrapperClick(e), l()) : e.altKey && t === f.down && l();
383
+ },
384
+ onTagsNavigate(e, t) {
385
+ const s = e.keyCode, i = this.currentFocusedTag, n = this._tags, o = this.$props.dataItemKey;
386
+ let l = i ? n.findIndex((a) => oe(a, i, o)) : -1, d;
387
+ const c = l !== -1;
388
+ if (s === f.left)
389
+ c ? l = Math.max(0, l - 1) : l = n.length - 1, d = n[l];
390
+ else if (s === f.right)
391
+ l === n.length - 1 ? d = void 0 : c && (l = Math.min(n.length - 1, l + 1), d = n[l]);
392
+ else if (s === f.home)
393
+ d = n[0];
394
+ else if (s === f.end)
395
+ d = n[n.length - 1];
396
+ else if (s === f.delete) {
397
+ if (c) {
398
+ const a = this.computedValue();
399
+ H(a, n[l].data, o), this.triggerOnChange(a, t);
400
+ }
401
+ } else if (s === f.backspace) {
402
+ const a = this.computedValue();
403
+ if (c)
404
+ H(a, n[l].data, o), this.triggerOnChange(a, t);
405
+ else if (!c && n.length) {
406
+ const p = n.pop();
407
+ H(a, p.data, o), this.triggerOnChange(a, t);
408
+ }
409
+ }
410
+ d !== i && (t.data.currentFocusedTag = d, t.data.activedescendant = A.TagsList), this.applyState(t);
411
+ },
412
+ triggerOnChange(e, t) {
413
+ this.$props.value === void 0 && (t.data.currentValue = [...e]), this.valuesItemsDuringOnChange = [], this.setItems(e, this.valuesItemsDuringOnChange), t.events.push({
414
+ type: "change"
415
+ });
416
+ },
417
+ selectFocusedItem(e) {
418
+ const {
419
+ dataItems: t = [],
420
+ virtual: s
421
+ } = this.$props, {
422
+ focusedIndex: i
423
+ } = this.getFocusedState(), n = s ? s.skip : 0;
424
+ t[i - n] !== void 0 && this.handleItemClick(i, e);
425
+ },
426
+ setItems(e, t) {
427
+ t.length = 0, t.push(...e);
428
+ },
429
+ getFocusedState() {
430
+ const e = this.currentFocusedIndex, t = this.$props.filter !== void 0 ? this.$props.filter : this.currentText, {
431
+ allowCustom: s,
432
+ dataItems: i = [],
433
+ dataItemKey: n,
434
+ virtual: o,
435
+ textField: l,
436
+ focusedItemIndex: d = Ne
437
+ } = this.$props, c = o && o.skip || 0;
438
+ let a;
439
+ if (e !== void 0)
440
+ return {
441
+ focusedIndex: e,
442
+ focusedItem: i[e - c],
443
+ focusedType: S.ListItem
444
+ };
445
+ const p = this.computedValue();
446
+ if (s && t)
447
+ return {
448
+ focusedItem: null,
449
+ focusedIndex: -1,
450
+ focusedType: S.CustomItem
451
+ };
452
+ if (t)
453
+ return a = d(i, t, l), {
454
+ focusedItem: i[a],
455
+ focusedIndex: a + c,
456
+ focusedType: S.ListItem
457
+ };
458
+ if (p.length) {
459
+ const g = p[p.length - 1];
460
+ return a = i.findIndex((m) => te(m, g, n)), i[a] !== void 0 ? {
461
+ focusedIndex: a + c,
462
+ focusedItem: i[a],
463
+ focusedType: S.ListItem
464
+ } : {
465
+ focusedType: S.None,
466
+ focusedIndex: -1
467
+ };
468
+ }
469
+ return c === 0 ? {
470
+ focusedItem: i[0],
471
+ focusedIndex: 0,
472
+ focusedType: S.ListItem
473
+ } : {
474
+ focusedType: S.None,
475
+ focusedIndex: -1
476
+ };
477
+ },
478
+ customItemSelect(e) {
479
+ const t = this.$props.filter !== void 0 ? this.$props.filter : this.currentText, {
480
+ textField: s
481
+ } = this.$props;
482
+ if (!t)
483
+ return;
484
+ const i = this.base.initState();
485
+ i.event = e;
486
+ const n = s ? {
487
+ [s]: t
488
+ } : t;
489
+ this.currentText !== void 0 && (i.data.currentText = ""), i.data.currentFocusedIndex = void 0, this.base.filterChanged("", i);
490
+ const o = [...this.computedValue(), n];
491
+ this.triggerOnChange(o, i), this.base.togglePopup(i), this.applyState(i);
492
+ },
493
+ handleWrapperClick(e) {
494
+ const t = this.isOpen, s = this.input;
495
+ !t && s && this.focusElement(s);
496
+ const i = this.base.initState();
497
+ i.event = e, this.currentFocused || (i.events.push({
498
+ type: "focus"
499
+ }), i.data.currentFocused = !0), this.clearFilter(i), this.base.togglePopup(i), this.applyState(i);
500
+ },
501
+ onCancel(e) {
502
+ const t = this.base.initState();
503
+ t.event = e, e.stopPropagation();
504
+ const s = this.isOpen;
505
+ t.focusedIndex !== void 0 && (t.data.focusedIndex = void 0), s && this.base.togglePopup(t), t.events.push({
506
+ type: "onCancel"
507
+ }), this.clearFilter(t), this.triggerOnChange([...this.initialAdaptiveRenderingValues], t), this.base.triggerPageChangeCornerItems([...this.initialAdaptiveRenderingValues], t), this.applyState(t);
508
+ },
509
+ handleItemClick(e, t) {
510
+ const s = this.base.initState();
511
+ s.event = t, this.handleItemSelect(e, s), this.$props.autoClose && !this.adaptiveState && this.base.togglePopup(s), this.applyState(s);
512
+ },
513
+ handleBlur(e) {
514
+ if (!this.currentFocused || this._skipFocusEvent)
515
+ return;
516
+ const t = this.isOpen, s = this.base.initState(), {
517
+ allowCustom: i,
518
+ filterable: n
519
+ } = this.$props;
520
+ s.event = e, s.data.currentFocused = !1, s.events.push({
521
+ type: "blur"
522
+ }), t && !this.adaptiveState && (this.currentOpened && (s.data.currentOpened = !1), s.events.push({
523
+ type: "close"
524
+ })), !i && !n && this.currentText && (s.data.currentText = ""), this.applyState(s);
525
+ },
526
+ handleFocus(e) {
527
+ this._skipFocusEvent || this.base.handleFocus(e);
528
+ },
529
+ onPopupOpened() {
530
+ this.input && this.currentFocused && this.focusElement(this.input);
531
+ },
532
+ onPopupClosed() {
533
+ this.currentFocused && setTimeout(() => {
534
+ this.currentFocused && this.focusElement(this.input);
535
+ }, 0);
536
+ },
537
+ focusElement(e) {
538
+ this._skipFocusEvent = !0, e.focus(), setTimeout(() => this._skipFocusEvent = !1, 30);
539
+ },
540
+ applyState(e) {
541
+ this.base.applyState(e), this.valuesItemsDuringOnChange = null;
542
+ },
543
+ setValidity() {
544
+ this.input && this.input.setCustomValidity && this.input.setCustomValidity(this.validity().valid ? "" : this.$props.validationMessage || Ye);
545
+ },
546
+ focus() {
547
+ this.input && this.input.focus();
548
+ },
549
+ calculateMedia(e) {
550
+ for (let t of e)
551
+ this.windowWidth = t.target.clientWidth;
552
+ },
553
+ repositionPopup() {
554
+ this.base.repositionPopup();
555
+ },
556
+ onScroll(e) {
557
+ this.isScrolling = !0;
558
+ const {
559
+ vs: t,
560
+ list: s
561
+ } = this.base;
562
+ t.scrollHandler(e);
563
+ const i = this.base.initState(), {
564
+ groupField: n
565
+ } = this.$props;
566
+ let {
567
+ dataItems: o = []
568
+ } = this.$props, l;
569
+ if (!n || !o.length)
570
+ return;
571
+ const d = this.itemHeight = this.itemHeight || (t.enabled ? t.itemHeight : s ? s.children[0].offsetHeight : 0), a = e.target.scrollTop - t.skip * d;
572
+ n && (o = this.base.getGroupedDataModernMode(o, n), o = this.base.getGroupedDataModernMode(o, n), l = o[0][n]);
573
+ for (let p = 1; p < o.length && !(d * p > a); p++)
574
+ o[p] && o[p][n] && (l = o[p][n]);
575
+ l !== this.group && (i.data.group = l, this.applyState(i));
576
+ }
577
+ },
578
+ render() {
579
+ const {
580
+ style: e,
581
+ label: t,
582
+ dir: s,
583
+ disabled: i,
584
+ tags: n,
585
+ textField: o,
586
+ dataItemKey: l,
587
+ virtual: d,
588
+ loading: c,
589
+ size: a,
590
+ fillMode: p,
591
+ rounded: g,
592
+ tagsRounded: m,
593
+ removeTagIcon: $,
594
+ adaptiveTitle: re,
595
+ header: P,
596
+ footer: W,
597
+ groupStickyHeaderItemRender: de,
598
+ dataItems: F = []
599
+ } = this.$props, ue = this.currentFocused, D = Object.assign({}, {
600
+ animate: !0,
601
+ height: "200px"
602
+ }, this.$props.popupSettings), B = this.currentFocusedTag, G = this.computedValue(), M = (this.$props.filter !== void 0 ? this.$props.filter : this.currentText) || "", ce = !c && (!!M || G.length > 0), y = this.base.vs, N = this.$props.id || this.inputId, pe = b.call(this, this.$props.tagRender, I.call(this)), L = this.isOpen, T = this.adaptiveState, q = qe(this);
603
+ this.group === void 0 && this.$props.groupField !== void 0 && (this.group = x(this.$props.dataItems[0], this.$props.groupField)), y.enabled = d !== void 0, d !== void 0 && (y.skip = d.skip, y.total = d.total, y.pageSize = d.pageSize);
604
+ let v = [];
605
+ this.initialAdaptiveRenderingValues ? [...this.initialAdaptiveRenderingValues].forEach((h) => {
606
+ v.push({
607
+ text: x(h, o),
608
+ data: [h]
609
+ });
610
+ }) : n === void 0 ? this.computedValue().forEach((u) => {
611
+ v.push({
612
+ text: x(u, o),
613
+ data: [u]
614
+ });
615
+ }) : v.push(...n), v.length > 0 && this.setItems(v, this._tags);
616
+ const he = !this.$props.validityStyles || this.validity().valid, fe = function(u) {
617
+ const h = this.activedescendant, {
618
+ placeholder: k
619
+ } = this.$props, {
620
+ focusedIndex: O
621
+ } = this.getFocusedState(), C = v.length === 0 || G.length === 0 && !M ? k : void 0, V = h === A.TagsList && B !== void 0 ? `tag-${this.base.guid}-${B.text.replace(/\s+/g, "-")}` : `option-${this.base.guid}-${O}`;
622
+ return r(Le, {
623
+ id: u,
624
+ size: Math.max((C || "").length, M.length, 1),
625
+ tabIndex: this.$props.tabIndex,
626
+ accessKey: this.$props.accessKey,
627
+ placeholder: C,
628
+ value: T ? "" : M,
629
+ onChange: this.onChangeHandler,
630
+ onBlur: this.handleBlur,
631
+ onKeydown: this.onInputKeyDown,
632
+ ref: (w) => {
633
+ this.inputRef = w;
634
+ },
635
+ disabled: i,
636
+ expanded: L,
637
+ owns: this.base.listBoxId,
638
+ activedescendant: V,
639
+ "aria-describedBy": `tagslist-${this.base.guid}${this.$props.ariaDescribedBy ? " " + this.$props.ariaDescribedBy : ""}`,
640
+ "aria-labelledBy": this.$props.ariaLabelledBy,
641
+ "aria-label": this.$props.ariaLabel
642
+ }, null);
643
+ }, U = function() {
644
+ let u;
645
+ const {
646
+ groupField: h
647
+ } = this.$props, k = b.call(this, this.$props.itemRender, I.call(this)), O = b.call(this, this.$props.groupHeaderItemRender, I.call(this)), C = b.call(this, this.$props.listNoDataRender, I.call(this)), V = d ? d.skip : 0, {
648
+ focusedIndex: w
649
+ } = this.getFocusedState(), K = `translateY(${y.translate}px)`;
650
+ let J = F;
651
+ return h && (J = this.base.getGroupedDataModernMode(F, h)), r(Be, {
652
+ id: this.base.listBoxId,
653
+ show: L,
654
+ dataItems: J.slice(),
655
+ focusedIndex: w,
656
+ value: this.computedValue(),
657
+ textField: o,
658
+ valueField: l,
659
+ optionsGuid: this.base.guid,
660
+ ref: "list",
661
+ wrapperStyle: {
662
+ maxHeight: T ? void 0 : D.height
663
+ },
664
+ wrapperCssClass: "k-list-content",
665
+ listStyle: y.enabled ? {
666
+ transform: K
667
+ } : void 0,
668
+ key: "listKey",
669
+ skip: V,
670
+ onListclick: this.handleItemClick,
671
+ itemRender: k,
672
+ groupHeaderItemRender: O,
673
+ noDataRender: C,
674
+ groupField: h,
675
+ onScroll: this.onScroll
676
+ }, E(u = ge.call(this)) ? u : {
677
+ default: () => [u]
678
+ });
679
+ }, ge = function() {
680
+ return y.enabled && r("div", {
681
+ ref: "scrollElement",
682
+ key: "scrollElementKey"
683
+ }, null);
684
+ }, me = function() {
685
+ const u = this.base, {
686
+ allowCustom: h
687
+ } = this.$props, k = b.call(this, this.$props.groupStickyHeaderItemRender, I.call(this)), O = u.getTemplateDef.call(this, P), C = u.getTemplateDef.call(this, W), V = this.$props.filter !== void 0 ? this.$props.filter : this.currentText, {
688
+ focusedType: w
689
+ } = this.getFocusedState(), K = h && V && r("div", {
690
+ class: "k-list",
691
+ key: "customitem",
692
+ onClick: this.customItemSelect
693
+ }, [r("div", {
694
+ class: R("k-item k-custom-item", {
695
+ "k-focus": le(w)
696
+ })
697
+ }, [V, r(Re, {
698
+ name: "plus",
699
+ icon: ze,
700
+ style: {
701
+ float: "right"
702
+ }
703
+ }, null)])]);
704
+ return this.group === void 0 && this.$props.groupField !== void 0 && (this.group = x(F[0], this.$props.groupField)), r(De, {
705
+ ref: "container",
706
+ onMousedown: Je,
707
+ dir: s !== void 0 ? s : u.dirCalculated,
708
+ onBlur: this.handleBlur,
709
+ width: this.popupWidth,
710
+ popupSettings: {
711
+ ...D,
712
+ anchor: this.anchor,
713
+ show: L,
714
+ onOpen: this.onPopupOpened,
715
+ onClose: this.onPopupClosed,
716
+ popupClass: R(D.popupClass, "k-list", {
717
+ [`k-list-${j[a] || a}`]: a,
718
+ "k-virtual-list": this.base.vs.enabled
719
+ }),
720
+ className: R("k-list-container", D.className)
721
+ },
722
+ itemsCount: F.length
723
+ }, {
724
+ default: () => [O && r("div", {
725
+ class: "k-list-header"
726
+ }, [O]), K, this.group && F.length !== 0 && r(ee, {
727
+ group: this.group,
728
+ render: k
729
+ }, null), U.call(this), C && r("div", {
730
+ class: "k-list-footer"
731
+ }, [C]), d && P]
732
+ });
733
+ }, ve = function() {
734
+ const u = this.$props.filter !== void 0 ? this.$props.filter : this.currentText;
735
+ return this.$props.filterable && r(Ge, {
736
+ value: u,
737
+ ref: "filterInput",
738
+ onChange: this.onChangeHandler,
739
+ onKeydown: this.onInputKeyDown,
740
+ size: a,
741
+ rounded: g,
742
+ fillMode: p
743
+ }, null);
744
+ }, be = () => [r("div", {
745
+ class: "k-actionsheet-titlebar-group k-hbox"
746
+ }, [r("div", {
747
+ class: "k-actionsheet-title"
748
+ }, [r("div", {
749
+ class: "k-text-center"
750
+ }, [re]), r("div", {
751
+ class: "k-actionsheet-subtitle k-text-center"
752
+ }, null)]), r("div", {
753
+ class: "k-actionsheet-actions"
754
+ }, [r(z, {
755
+ tabIndex: 5,
756
+ "aria-label": "Cancel",
757
+ "aria-disabled": "false",
758
+ type: "button",
759
+ fillMode: "flat",
760
+ onClick: this.onCancel,
761
+ icon: "x",
762
+ svgIcon: _e
763
+ }, null)])]), r("div", {
764
+ class: "k-actionsheet-titlebar-group k-actionsheet-filter"
765
+ }, [ve.call(this)])], Ie = b.call(this, be, I.call(this)), Se = () => {
766
+ const u = q.toLanguageString(ie, ne[ie]), h = q.toLanguageString(ae, ne[ae]);
767
+ return [r(z, {
768
+ size: "large",
769
+ "aria-label": u,
770
+ "aria-disabled": "false",
771
+ type: "button",
772
+ onClick: this.onCancel
773
+ }, E(u) ? u : {
774
+ default: () => [u]
775
+ }), r(z, {
776
+ themeColor: "primary",
777
+ size: "large",
778
+ "aria-label": h,
779
+ "aria-disabled": "false",
780
+ type: "button",
781
+ onClick: this.handleWrapperClick
782
+ }, E(h) ? h : {
783
+ default: () => [h]
784
+ })];
785
+ }, ye = b.call(this, Se, I.call(this)), ke = () => {
786
+ const u = this.base.getTemplateDef.call(this, P, _), h = this.base.getTemplateDef.call(this, W, _), k = b.call(this, de, I.call(this));
787
+ return r("div", {
788
+ class: "k-list-container"
789
+ }, [u && r("div", {
790
+ class: "k-list-header"
791
+ }, [u]), r("div", {
792
+ class: R("k-list", {
793
+ [`k-list-${j[a] || a}`]: T ? !1 : a,
794
+ "k-list-lg": !!T,
795
+ "k-virtual-list": y.enabled
796
+ })
797
+ }, [this.group && F.length !== 0 && r(ee, {
798
+ group: this.group,
799
+ render: k
800
+ }, null), U.call(this), h && r("div", {
801
+ class: "k-list-footer"
802
+ }, [h])])]);
803
+ }, Ce = b.call(this, ke, I.call(this)), xe = function() {
804
+ return r(We, {
805
+ expand: L,
806
+ animation: !0,
807
+ animationStyles: this.animationStyles,
808
+ className: this.classNameAdaptive,
809
+ contentClassName: "!k-overflow-hidden",
810
+ footerClassName: "k-actions k-actions-stretched",
811
+ header: Ie,
812
+ content: Ce,
813
+ footer: ye,
814
+ onClose: this.onCancel,
815
+ navigatableElements: ["input.k-input-inner", ".k-actionsheet-actions > button"]
816
+ }, null);
817
+ }, Y = [_(function() {
818
+ let u;
819
+ return r("span", {
820
+ ref: Ve(this, "kendoAnchor"),
821
+ class: R("k-multiselect", "k-input", {
822
+ [`k-input-${j[a] || a}`]: a,
823
+ [`k-rounded-${Ue[g] || g}`]: g,
824
+ [`k-input-${p}`]: p,
825
+ "k-focus": ue && !i,
826
+ "k-disabled": i,
827
+ "k-invalid": !he,
828
+ "k-loading": c,
829
+ "k-required": this.required
830
+ }),
831
+ style: t ? {
832
+ ...e,
833
+ width: void 0
834
+ } : e,
835
+ dir: s,
836
+ onFocusin: this.handleFocus,
837
+ onClick: this.handleWrapperClick,
838
+ onMousedown: Ke
839
+ }, [r(Me, {
840
+ removeTagIcon: $,
841
+ tagsRounded: m,
842
+ size: a,
843
+ fillMode: p,
844
+ tagRender: pe,
845
+ onTagdelete: this.onTagDelete,
846
+ dataItems: v,
847
+ guid: this.base.guid,
848
+ focused: B ? v.find((h) => oe(h, B, l)) : void 0
849
+ }, E(u = fe.call(this, N)) ? u : {
850
+ default: () => [u]
851
+ }), v.length > 0 && ce && r(He, {
852
+ onClearclick: this.clearButtonClick
853
+ }, null), r("span", {
854
+ class: c ? "k-input-loading-icon k-icon k-i-loading" : void 0
855
+ }, null), !T && me.call(this)]);
856
+ }.call(this), {
857
+ ...this.$attrs
858
+ }), T && xe.call(this)];
859
+ return t ? r("span", {
860
+ class: this.spanClassNames,
861
+ dir: this.$props.dir
862
+ }, [Y, this.$props.label ? N ? r("label", {
863
+ for: N,
864
+ class: "k-floating-label"
865
+ }, [this.$props.label]) : r("span", {
866
+ class: "k-label"
867
+ }, [this.$props.label]) : null]) : Y;
868
+ }
869
+ });
870
+ export {
871
+ mt as MultiSelect
872
+ };