@progress/kendo-vue-dropdowns 5.3.0-dev.202410141143 → 5.3.0-develop.2

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
@@ -1,1227 +0,0 @@
1
- "use strict";
2
-
3
- var __assign = undefined && undefined.__assign || function () {
4
- __assign = Object.assign || function (t) {
5
- for (var s, i = 1, n = arguments.length; i < n; i++) {
6
- s = arguments[i];
7
- for (var p in s) {
8
- if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
9
- }
10
- }
11
- return t;
12
- };
13
- return __assign.apply(this, arguments);
14
- };
15
- var __spreadArray = undefined && undefined.__spreadArray || function (to, from, pack) {
16
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
17
- if (ar || !(i in from)) {
18
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
19
- ar[i] = from[i];
20
- }
21
- }
22
- return to.concat(ar || Array.prototype.slice.call(from));
23
- };
24
- Object.defineProperty(exports, "__esModule", {
25
- value: true
26
- });
27
- exports.MultiSelectTreeVue2 = exports.MultiSelectTree = void 0;
28
- // @ts-ignore
29
- var Vue = require("vue");
30
- var allVue = Vue;
31
- var gh = allVue.h;
32
- var isV3 = allVue.version && allVue.version[0] === '3';
33
- var kendo_vue_common_1 = require("@progress/kendo-vue-common");
34
- var kendo_vue_popup_1 = require("@progress/kendo-vue-popup");
35
- var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
36
- var kendo_vue_treeview_1 = require("@progress/kendo-vue-treeview");
37
- var package_metadata_1 = require("./../package-metadata");
38
- var utils_1 = require("../common/utils");
39
- var ListNoData_1 = require("./../DropDownTree/ListNoData");
40
- var main_1 = require("./../messages/main");
41
- var kendo_vue_labels_1 = require("@progress/kendo-vue-labels");
42
- var kendo_vue_buttons_1 = require("@progress/kendo-vue-buttons");
43
- var TagList_1 = require("../MultiSelect/TagList");
44
- var ClearButton_1 = require("../common/ClearButton");
45
- var ListFilter_1 = require("../common/ListFilter");
46
- var utils_2 = require("./utils");
47
- var constants_1 = require("../common/constants");
48
- var kendo_vue_layout_1 = require("@progress/kendo-vue-layout");
49
- var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
50
- var DropDownBase_1 = require("../common/DropDownBase");
51
- var VALIDATION_MESSAGE = 'Please select a value from the list!';
52
- var sizeMap = kendo_vue_common_1.kendoThemeMaps.sizeMap,
53
- roundedMap = kendo_vue_common_1.kendoThemeMaps.roundedMap;
54
- var toLevel = function toLevel(hierarchicalIndex) {
55
- return hierarchicalIndex.split('_').map(function (i) {
56
- return parseInt(i, 10);
57
- });
58
- };
59
- var getValidity = function getValidity(parameters, hasValue) {
60
- var validationMessage = parameters.validationMessage,
61
- valid = parameters.valid,
62
- required = parameters.required;
63
- return {
64
- customError: validationMessage !== undefined,
65
- valid: Boolean(valid !== undefined ? valid : !required || hasValue),
66
- valueMissing: !hasValue
67
- };
68
- };
69
- /**
70
- * @hidden
71
- */
72
- var MultiSelectTreeVue2 = {
73
- name: 'KendoMultiSelectTree',
74
- model: {
75
- event: 'changemodel'
76
- },
77
- // @ts-ignore
78
- emits: {
79
- open: null,
80
- close: null,
81
- focus: null,
82
- blur: null,
83
- change: null,
84
- filterchange: null,
85
- expandchange: null,
86
- 'changemodel': null,
87
- 'update:modelValue': null
88
- },
89
- props: {
90
- opened: {
91
- type: Boolean,
92
- default: undefined
93
- },
94
- disabled: Boolean,
95
- dir: String,
96
- tabIndex: Number,
97
- accessKey: String,
98
- dataItems: {
99
- type: Array,
100
- default: function _default() {
101
- return [];
102
- }
103
- },
104
- value: Array,
105
- modelValue: Array,
106
- valueMap: Function,
107
- placeholder: String,
108
- dataItemKey: {
109
- type: String,
110
- required: true
111
- },
112
- textField: {
113
- type: String,
114
- required: true
115
- },
116
- checkField: {
117
- type: String,
118
- default: 'checkField'
119
- },
120
- checkIndeterminateField: {
121
- type: String,
122
- default: 'checkIndeterminateField'
123
- },
124
- expandField: String,
125
- subItemsField: {
126
- type: String,
127
- default: 'items'
128
- },
129
- className: String,
130
- label: String,
131
- validationMessage: String,
132
- validityStyles: {
133
- type: Boolean,
134
- default: true
135
- },
136
- valid: {
137
- type: Boolean,
138
- default: undefined
139
- },
140
- required: Boolean,
141
- name: String,
142
- id: String,
143
- ariaLabelledBy: String,
144
- ariaDescribedBy: String,
145
- filterable: Boolean,
146
- filter: String,
147
- loading: Boolean,
148
- tags: Array,
149
- popupSettings: {
150
- type: Object,
151
- default: function _default() {
152
- return {
153
- animate: true,
154
- height: '200px',
155
- anchor: ''
156
- };
157
- }
158
- },
159
- size: {
160
- type: String,
161
- default: 'medium',
162
- validator: function validator(value) {
163
- return [null, 'small', 'medium', 'large'].includes(value);
164
- }
165
- },
166
- rounded: {
167
- type: String,
168
- default: 'medium',
169
- validator: function validator(value) {
170
- return [null, 'small', 'medium', 'large', 'full'].includes(value);
171
- }
172
- },
173
- fillMode: {
174
- type: String,
175
- default: 'solid',
176
- validator: function validator(value) {
177
- return [null, 'flat', 'outline', 'solid'].includes(value);
178
- }
179
- },
180
- item: [String, Function, Object],
181
- tag: [String, Function, Object],
182
- header: [String, Function, Object],
183
- footer: [String, Function, Object],
184
- listNoData: [String, Function, Object],
185
- adaptive: {
186
- type: Boolean,
187
- default: undefined
188
- },
189
- adaptiveTitle: {
190
- type: String,
191
- default: undefined
192
- }
193
- },
194
- inject: {
195
- kendoLocalizationService: {
196
- default: null
197
- }
198
- },
199
- created: function created() {
200
- this.observer = null;
201
- (0, kendo_vue_common_1.validatePackage)(package_metadata_1.packageMetadata);
202
- this.base = new DropDownBase_1.default(this);
203
- this.componentGuid = (0, kendo_vue_common_1.guid)();
204
- this.anchor = (0, kendo_vue_common_1.guid)();
205
- },
206
- data: function data() {
207
- return {
208
- focusedTagState: undefined,
209
- openState: false,
210
- focusedState: false,
211
- filterState: '',
212
- currentValue: [],
213
- popupWidth: '200px',
214
- windowWidth: 0,
215
- initialAdaptiveRenderingValues: undefined
216
- };
217
- },
218
- computed: {
219
- animationStyles: {
220
- get: function get() {
221
- return this.windowWidth <= constants_1.MOBILE_SMALL_DEVICE ? {
222
- top: 0,
223
- width: '100%',
224
- height: '100%'
225
- } : undefined;
226
- }
227
- },
228
- classNameAdaptive: {
229
- get: function get() {
230
- return this.windowWidth <= constants_1.MOBILE_SMALL_DEVICE ? 'k-adaptive-actionsheet k-actionsheet-fullscreen' : 'k-adaptive-actionsheet k-actionsheet-bottom';
231
- }
232
- },
233
- adaptiveState: {
234
- get: function get() {
235
- return this.windowWidth <= constants_1.MOBILE_MEDIUM_DEVICE && this.$props.adaptive;
236
- }
237
- },
238
- isOpen: function isOpen() {
239
- return this.opened !== undefined ? this.opened : this.openState;
240
- },
241
- computedValue: function computedValue() {
242
- return this.value !== undefined ? this.value : this.$props.modelValue !== undefined ? this.$props.modelValue : this.currentValue;
243
- },
244
- hasValue: function hasValue() {
245
- return !!this.computedValue.length;
246
- },
247
- tagsToRenderRef: function tagsToRenderRef() {
248
- var _this = this;
249
- if (this.initialAdaptiveRenderingValues === undefined) {
250
- return this.tags === undefined ? this.computedValue.map(function (item) {
251
- return {
252
- text: (0, utils_1.getItemValue)(item, _this.$props.textField),
253
- data: [item]
254
- };
255
- }) : __spreadArray([], this.tags, true);
256
- } else {
257
- var valuesBeforeAdaptiveRendering = this.initialAdaptiveRenderingValues;
258
- return valuesBeforeAdaptiveRendering.length > 0 && valuesBeforeAdaptiveRendering.map(function (item) {
259
- return {
260
- text: (0, utils_1.getItemValue)(item, _this.$props.textField),
261
- data: [item]
262
- };
263
- });
264
- }
265
- }
266
- },
267
- watch: {
268
- // This watch gets the state of the data when the adaptive mode is activated
269
- isOpen: function isOpen(newValue) {
270
- if (newValue && this.value) {
271
- this.initialAdaptiveRenderingValues = __spreadArray([], this.value, true);
272
- } else {
273
- this.initialAdaptiveRenderingValues = undefined;
274
- }
275
- }
276
- },
277
- mounted: function mounted() {
278
- this.observer = kendo_vue_common_1.canUseDOM && new ResizeObserver(this.calculateMedia);
279
- if ((document === null || document === void 0 ? void 0 : document.body) && this.observer) {
280
- this.observer.observe(document.body);
281
- }
282
- this.elementRef = (0, kendo_vue_common_1.getRef)(this, 'kendoAnchor', this.anchor);
283
- this.inputRef = (0, kendo_vue_common_1.getRef)(this, 'input');
284
- this.selectRef = (0, kendo_vue_common_1.getRef)(this, 'select');
285
- this.treeViewRef = (0, kendo_vue_common_1.getRef)(this, 'treeView');
286
- this.skipFocusRef = false;
287
- this.popupRef = (0, kendo_vue_common_1.getRef)(this, 'popup');
288
- this.calculatePopupWidth();
289
- },
290
- destroyed: !!isV3 ? undefined : function () {
291
- if (this.observer) {
292
- this.observer.disconnect();
293
- }
294
- },
295
- updated: function updated() {
296
- this.inputRef = (0, kendo_vue_common_1.getRef)(this, 'input');
297
- this.treeViewRef = (0, kendo_vue_common_1.getRef)(this, 'treeView');
298
- if (this.popupRef && this.isOpen && this.hasValue) {
299
- this.popupRef.reposition();
300
- }
301
- this.setValidity();
302
- this.calculatePopupWidth();
303
- },
304
- // @ts-ignore
305
- setup: !isV3 ? undefined : function () {
306
- var v3 = !!isV3;
307
- return {
308
- v3: v3
309
- };
310
- },
311
- // @ts-ignore
312
- render: function render(createElement) {
313
- var _this = this;
314
- var h = gh || createElement;
315
- var id = this.$props.id || this.componentGuid;
316
- var _a = this.$props,
317
- dataItems = _a.dataItems,
318
- dataItemKey = _a.dataItemKey,
319
- _b = _a.popupSettings,
320
- popupSettings = _b === void 0 ? {} : _b,
321
- disabled = _a.disabled,
322
- placeholder = _a.placeholder,
323
- label = _a.label,
324
- name = _a.name,
325
- checkField = _a.checkField,
326
- checkIndeterminateField = _a.checkIndeterminateField,
327
- subItemsField = _a.subItemsField,
328
- validationMessage = _a.validationMessage,
329
- valid = _a.valid,
330
- value = _a.value,
331
- required = _a.required,
332
- validityStyles = _a.validityStyles,
333
- adaptiveTitle = _a.adaptiveTitle;
334
- var tabIndex = (0, kendo_vue_common_1.getTabIndex)(this.$props.tabIndex, disabled);
335
- var localization = (0, kendo_vue_intl_1.provideLocalizationService)(this);
336
- var validity = getValidity({
337
- validationMessage: validationMessage,
338
- valid: valid,
339
- required: required
340
- }, this.hasValue);
341
- var dir = this.$props.dir; // useRtl(elementRef,this.$props.dir);
342
- var renderAdaptive = this.adaptiveState;
343
- var itemTemplate = kendo_vue_common_1.templateRendering.call(this, this.item, kendo_vue_common_1.getListeners.call(this));
344
- var tagTemplate = kendo_vue_common_1.templateRendering.call(this, this.tag, kendo_vue_common_1.getListeners.call(this));
345
- var headerTemplate = kendo_vue_common_1.templateRendering.call(this, this.$props.header, kendo_vue_common_1.getListeners.call(this));
346
- var footerTemplate = kendo_vue_common_1.templateRendering.call(this, this.$props.footer, kendo_vue_common_1.getListeners.call(this));
347
- var header = kendo_vue_common_1.getTemplate.call(this, {
348
- h: h,
349
- template: headerTemplate
350
- });
351
- var footer = kendo_vue_common_1.getTemplate.call(this, {
352
- h: h,
353
- template: footerTemplate
354
- });
355
- var listNoDataRender = kendo_vue_common_1.templateRendering.call(this, this.$props.listNoData, kendo_vue_common_1.getListeners.call(this));
356
- var noDataDefault =
357
- // @ts-ignore function children
358
- h(ListNoData_1.ListNoData, this.v3 ? function () {
359
- return [localization.toLanguageString(main_1.nodata, main_1.messages[main_1.nodata])];
360
- } : [localization.toLanguageString(main_1.nodata, main_1.messages[main_1.nodata])]);
361
- var noDataTemplate = kendo_vue_common_1.getTemplate.call(this, {
362
- h: h,
363
- defaultRendering: noDataDefault,
364
- template: listNoDataRender
365
- });
366
- var isValid = !validityStyles || validity.valid;
367
- var _c = this.$props,
368
- size = _c.size,
369
- rounded = _c.rounded,
370
- fillMode = _c.fillMode;
371
- var adaptiveActionSheetHeaderTemplateDef = function adaptiveActionSheetHeaderTemplateDef() {
372
- return [h("div", {
373
- "class": "k-actionsheet-titlebar-group k-hbox"
374
- }, [h("div", {
375
- "class": "k-actionsheet-title"
376
- }, [h("div", {
377
- "class": "k-text-center"
378
- }, [adaptiveTitle]), h("div", {
379
- "class": "k-actionsheet-subtitle k-text-center"
380
- }, [placeholder])]), h("div", {
381
- "class": "k-actionsheet-actions"
382
- }, [h(kendo_vue_buttons_1.Button, {
383
- tabindex: 5,
384
- attrs: this.v3 ? undefined : {
385
- tabindex: 5,
386
- "aria-label": "Cancel",
387
- "aria-disabled": "false",
388
- type: "button",
389
- fillMode: "flat",
390
- icon: "x",
391
- svgIcon: kendo_svg_icons_1.xIcon
392
- },
393
- "aria-label": "Cancel",
394
- "aria-disabled": "false",
395
- type: "button",
396
- fillMode: "flat",
397
- onClick: _this.onCancel,
398
- on: this.v3 ? undefined : {
399
- "click": _this.onCancel
400
- },
401
- icon: "x",
402
- svgIcon: kendo_svg_icons_1.xIcon
403
- })])]), h("div", {
404
- "class": "k-actionsheet-titlebar-group k-actionsheet-filter"
405
- }, [_this.$props.filterable &&
406
- // @ts-ignore
407
- h(ListFilter_1.ListFilter, {
408
- value: _this.$props.filter === undefined ? _this.filterState : _this.$props.filter,
409
- attrs: this.v3 ? undefined : {
410
- value: _this.$props.filter === undefined ? _this.filterState : _this.$props.filter,
411
- size: size,
412
- rounded: rounded,
413
- fillMode: fillMode
414
- },
415
- ref: (0, kendo_vue_common_1.setRef)(_this, 'input'),
416
- onChange: _this.onFilterChange,
417
- on: this.v3 ? undefined : {
418
- "change": _this.onFilterChange,
419
- "keydown": _this.onInputKeyDown,
420
- "focus": _this.onFocus,
421
- "blur": _this.onBlur
422
- },
423
- onKeydown: _this.onInputKeyDown,
424
- size: size,
425
- rounded: rounded,
426
- fillMode: fillMode,
427
- onFocus: _this.onFocus,
428
- onBlur: _this.onBlur
429
- })])];
430
- };
431
- var adaptiveActionSheetHeaderTemplate = kendo_vue_common_1.templateRendering.call(this, adaptiveActionSheetHeaderTemplateDef, kendo_vue_common_1.getListeners.call(this));
432
- var adaptiveActionSheetFooterTemplateDef = function adaptiveActionSheetFooterTemplateDef() {
433
- var cancelText = localization.toLanguageString(main_1.adaptiveModeFooterCancel, main_1.messages[main_1.adaptiveModeFooterCancel]);
434
- var applyText = localization.toLanguageString(main_1.adaptiveModeFooterApply, main_1.messages[main_1.adaptiveModeFooterApply]);
435
- return [h(kendo_vue_buttons_1.Button, {
436
- size: "large",
437
- attrs: this.v3 ? undefined : {
438
- size: "large",
439
- "aria-label": cancelText,
440
- "aria-disabled": "false",
441
- type: "button"
442
- },
443
- "aria-label": cancelText,
444
- "aria-disabled": "false",
445
- type: "button",
446
- onClick: _this.onCancel,
447
- on: this.v3 ? undefined : {
448
- "click": _this.onCancel
449
- }
450
- }, [cancelText]), h(kendo_vue_buttons_1.Button, {
451
- themeColor: "primary",
452
- attrs: this.v3 ? undefined : {
453
- themeColor: "primary",
454
- size: "large",
455
- "aria-label": applyText,
456
- "aria-disabled": "false",
457
- type: "button"
458
- },
459
- size: "large",
460
- "aria-label": applyText,
461
- "aria-disabled": "false",
462
- type: "button",
463
- onClick: _this.closePopup,
464
- on: this.v3 ? undefined : {
465
- "click": _this.closePopup
466
- }
467
- }, [applyText])];
468
- };
469
- var adaptiveActionSheetFooterTemplate = kendo_vue_common_1.templateRendering.call(this, adaptiveActionSheetFooterTemplateDef, kendo_vue_common_1.getListeners.call(this));
470
- var adaptiveActionSheetContentTemplateDef = function adaptiveActionSheetContentTemplateDef() {
471
- var headerToRender = _this.base.getTemplateDef.call(_this, header, h);
472
- var footerToRender = _this.base.getTemplateDef.call(_this, footer, h);
473
- return [headerToRender && h("div", {
474
- "class": "k-list-header"
475
- }, [headerToRender]), dataItems.length > 0 ?
476
- // @ts-ignore
477
- h(kendo_vue_treeview_1.TreeView, {
478
- ref: (0, kendo_vue_common_1.setRef)(_this, 'treeView'),
479
- tabIndex: tabIndex,
480
- attrs: this.v3 ? undefined : {
481
- tabIndex: tabIndex,
482
- dataItems: dataItems,
483
- focusIdField: dataItemKey,
484
- textField: _this.$props.textField,
485
- checkField: checkField,
486
- checkIndeterminateField: checkIndeterminateField,
487
- expandField: _this.$props.expandField,
488
- childrenField: subItemsField,
489
- expandIcons: true,
490
- checkboxes: true,
491
- size: 'large',
492
- item: itemTemplate
493
- },
494
- dataItems: dataItems,
495
- focusIdField: dataItemKey,
496
- textField: _this.$props.textField,
497
- checkField: checkField,
498
- checkIndeterminateField: checkIndeterminateField,
499
- expandField: _this.$props.expandField,
500
- childrenField: subItemsField,
501
- expandIcons: true,
502
- onItemclick: _this.onChange,
503
- on: this.v3 ? undefined : {
504
- "itemclick": _this.onChange,
505
- "checkchange": _this.onChange,
506
- "expandchange": _this.onExpand,
507
- "focus": _this.onFocus,
508
- "blur": _this.onBlur,
509
- "keydown": _this.onWrapperKeyDown
510
- },
511
- onCheckchange: _this.onChange,
512
- onExpandchange: _this.onExpand,
513
- onFocus: _this.onFocus,
514
- onBlur: _this.onBlur,
515
- onKeydown: _this.onWrapperKeyDown,
516
- checkboxes: true,
517
- size: 'large',
518
- item: itemTemplate
519
- }) : noDataTemplate, footerToRender && h("div", {
520
- className: "k-list-footer",
521
- attrs: this.v3 ? undefined : {
522
- className: "k-list-footer"
523
- }
524
- }, [footerToRender])];
525
- };
526
- var adaptiveActionSheetContentTemplate = kendo_vue_common_1.templateRendering.call(this, adaptiveActionSheetContentTemplateDef, kendo_vue_common_1.getListeners.call(this));
527
- var renderAdaptiveListContainer = function renderAdaptiveListContainer() {
528
- return h(kendo_vue_layout_1.ActionSheet, {
529
- expand: this.isOpen,
530
- attrs: this.v3 ? undefined : {
531
- expand: this.isOpen,
532
- animation: true,
533
- animationStyles: this.animationStyles,
534
- className: this.classNameAdaptive,
535
- footerClassName: 'k-actions k-actions-stretched',
536
- contentClassName: '!k-overflow-hidden',
537
- header: adaptiveActionSheetHeaderTemplate,
538
- content: adaptiveActionSheetContentTemplate,
539
- footer: adaptiveActionSheetFooterTemplate,
540
- navigatableElements: ['input.k-input-inner', '.k-actionsheet-actions > button']
541
- },
542
- animation: true,
543
- animationStyles: this.animationStyles,
544
- className: this.classNameAdaptive,
545
- footerClassName: 'k-actions k-actions-stretched',
546
- contentClassName: '!k-overflow-hidden',
547
- header: adaptiveActionSheetHeaderTemplate,
548
- content: adaptiveActionSheetContentTemplate,
549
- footer: adaptiveActionSheetFooterTemplate,
550
- onClose: this.onCancel,
551
- on: this.v3 ? undefined : {
552
- "close": this.onCancel
553
- },
554
- navigatableElements: ['input.k-input-inner', '.k-actionsheet-actions > button']
555
- });
556
- };
557
- var component = function component() {
558
- var _this2 = this;
559
- var _a, _b;
560
- var _this = this;
561
- return h("span", {
562
- ref: (0, kendo_vue_common_1.setRef)(this, 'kendoAnchor', this.anchor),
563
- "class": (0, kendo_vue_common_1.classNames)('k-multiselecttree k-input', this.$props.className, (_a = {}, _a["k-input-".concat(sizeMap[size] || size)] = size, _a["k-rounded-".concat(roundedMap[rounded] || rounded)] = rounded, _a["k-input-".concat(fillMode)] = fillMode, _a['k-focus'] = this.focusedState && !disabled, _a['k-invalid'] = !isValid, _a['k-disabled'] = disabled, _a['k-loading'] = this.$props.loading, _a['k-required'] = required, _a)),
564
- tabIndex: tabIndex,
565
- attrs: this.v3 ? undefined : {
566
- tabIndex: tabIndex,
567
- accessKey: this.$props.accessKey,
568
- id: id,
569
- dir: dir,
570
- role: "combobox",
571
- "aria-haspopup": "tree",
572
- "aria-expanded": this.isOpen,
573
- "aria-disabled": disabled,
574
- "aria-label": label,
575
- "aria-labelledby": this.$props.ariaLabelledBy,
576
- "aria-describedby": this.$props.ariaLabelledBy ? this.$props.ariaLabelledBy : 'tagslist-' + id,
577
- "aria-required": this.$props.required
578
- },
579
- accessKey: this.$props.accessKey,
580
- id: id,
581
- dir: dir,
582
- onKeydown: this.onWrapperKeyDown,
583
- on: this.v3 ? undefined : {
584
- "keydown": this.onWrapperKeyDown,
585
- "mousedown": this.onWrapperMouseDown,
586
- "focusin": this.onFocus,
587
- "focusout": this.onBlur,
588
- "click": this.onWrapperClick
589
- },
590
- onMousedown: this.onWrapperMouseDown,
591
- onFocusin: this.onFocus,
592
- onFocusout: this.onBlur,
593
- role: "combobox",
594
- "aria-haspopup": "tree",
595
- "aria-expanded": this.isOpen,
596
- "aria-disabled": disabled,
597
- "aria-label": label,
598
- "aria-labelledby": this.$props.ariaLabelledBy,
599
- "aria-describedby": this.$props.ariaLabelledBy ? this.$props.ariaLabelledBy : 'tagslist-' + id,
600
- "aria-required": this.$props.required,
601
- onClick: this.onWrapperClick
602
- }, [this.tagsToRenderRef.length > 0 && h(TagList_1.TagList, {
603
- id: 'tagslist-' + id,
604
- attrs: this.v3 ? undefined : {
605
- id: 'tagslist-' + id,
606
- tagRender: tagTemplate,
607
- dataItems: this.tagsToRenderRef,
608
- guid: id,
609
- focused: this.focusedTagState ? this.tagsToRenderRef.find(function (t) {
610
- return _this.focusedTagState && (0, utils_1.matchTags)(t, _this.focusedTagState, dataItemKey);
611
- }) : undefined,
612
- tagsRounded: rounded,
613
- size: size,
614
- fillMode: fillMode
615
- },
616
- "class": (0, kendo_vue_common_1.classNames)('k-input-values k-chip-list k-selection-multiple', (_b = {}, _b["k-chip-list-".concat(sizeMap[size] || size)] = size, _b['k-readonly'] = this.hasValue, _b)),
617
- tagRender: tagTemplate,
618
- onTagdelete: this.onTagDelete,
619
- on: this.v3 ? undefined : {
620
- "tagdelete": this.onTagDelete
621
- },
622
- dataItems: this.tagsToRenderRef,
623
- guid: id,
624
- focused: this.focusedTagState ? this.tagsToRenderRef.find(function (t) {
625
- return _this.focusedTagState && (0, utils_1.matchTags)(t, _this.focusedTagState, dataItemKey);
626
- }) : undefined,
627
- tagsRounded: rounded,
628
- size: size,
629
- fillMode: fillMode
630
- }), h("span", {
631
- "class": "k-input-inner",
632
- role: 'combobox',
633
- attrs: this.v3 ? undefined : {
634
- role: 'combobox',
635
- tabIndex: tabIndex,
636
- "aria-expanded": this.isOpen,
637
- "aria-describedby": 'tagslist-' + id,
638
- "aria-label": this.$props.ariaLabelledBy
639
- },
640
- tabIndex: tabIndex,
641
- "aria-expanded": this.isOpen,
642
- "aria-describedby": 'tagslist-' + id,
643
- "aria-label": this.$props.ariaLabelledBy
644
- }, [this.tagsToRenderRef.length === 0 && h("span", {
645
- "class": "k-input-value-text"
646
- }, [placeholder])]), this.$props.loading && h(kendo_vue_common_1.Icon, {
647
- "class": "k-input-loading-icon",
648
- name: "loading",
649
- attrs: this.v3 ? undefined : {
650
- name: "loading"
651
- }
652
- }), this.hasValue && !disabled && h(ClearButton_1.ClearButton, {
653
- onClearclick: this.onClear,
654
- on: this.v3 ? undefined : {
655
- "clearclick": this.onClear
656
- }
657
- }), /* Dummy component to support forms */h("select", {
658
- name: name,
659
- attrs: this.v3 ? undefined : {
660
- name: name,
661
- tabIndex: -1,
662
- "aria-hidden": true,
663
- required: required,
664
- title: label
665
- },
666
- ref: (0, kendo_vue_common_1.setRef)(this, 'select'),
667
- tabIndex: -1,
668
- "aria-hidden": true,
669
- required: required,
670
- title: label,
671
- style: {
672
- opacity: 0,
673
- width: 1,
674
- border: 0,
675
- zIndex: -1,
676
- position: 'absolute',
677
- left: '50%'
678
- }
679
- }, [h("option", {
680
- value: this.v3 ? this.$props.valueMap ? this.$props.valueMap.call(undefined, value) : value : null,
681
- domProps: this.v3 ? undefined : {
682
- "value": this.$props.valueMap ? this.$props.valueMap.call(undefined, value) : value
683
- }
684
- })]), !renderAdaptive &&
685
- // @ts-ignore function children
686
- h(kendo_vue_popup_1.Popup, {
687
- style: {
688
- width: this.popupWidth,
689
- direction: dir
690
- },
691
- popupClass: (0, kendo_vue_common_1.classNames)(popupSettings.popupClass, 'k-multiselecttree-popup', 'popup-' + this.componentGuid),
692
- attrs: this.v3 ? undefined : {
693
- popupClass: (0, kendo_vue_common_1.classNames)(popupSettings.popupClass, 'k-multiselecttree-popup', 'popup-' + this.componentGuid),
694
- animate: popupSettings.animate,
695
- anchor: this.anchor,
696
- show: this.isOpen,
697
- appendTo: popupSettings.appendTo
698
- },
699
- "class": (0, kendo_vue_common_1.classNames)(popupSettings.className, {
700
- 'k-rtl': dir === 'rtl'
701
- }),
702
- animate: popupSettings.animate,
703
- anchor: this.anchor,
704
- show: this.isOpen,
705
- onOpen: this.onPopupOpened,
706
- on: this.v3 ? undefined : {
707
- "open": this.onPopupOpened,
708
- "close": this.onPopupClosed
709
- },
710
- onClose: this.onPopupClosed,
711
- appendTo: popupSettings.appendTo,
712
- ref: (0, kendo_vue_common_1.setRef)(this, 'popup')
713
- }, this.v3 ? function () {
714
- return [_this2.$props.filterable &&
715
- // @ts-ignore
716
- h(ListFilter_1.ListFilter, {
717
- value: _this2.$props.filter === undefined ? _this2.filterState : _this2.$props.filter,
718
- attrs: _this2.v3 ? undefined : {
719
- value: _this2.$props.filter === undefined ? _this2.filterState : _this2.$props.filter,
720
- size: size,
721
- rounded: rounded,
722
- fillMode: fillMode
723
- },
724
- ref: (0, kendo_vue_common_1.setRef)(_this2, 'input'),
725
- onChange: _this2.onFilterChange,
726
- on: _this2.v3 ? undefined : {
727
- "change": _this2.onFilterChange,
728
- "keydown": _this2.onInputKeyDown,
729
- "focus": _this2.onFocus,
730
- "blur": _this2.onBlur
731
- },
732
- onKeydown: _this2.onInputKeyDown,
733
- size: size,
734
- rounded: rounded,
735
- fillMode: fillMode,
736
- onFocus: _this2.onFocus,
737
- onBlur: _this2.onBlur
738
- }), header && h("div", {
739
- "class": "k-list-header"
740
- }, [header]), dataItems.length > 0 ?
741
- // @ts-ignore
742
- h(kendo_vue_treeview_1.TreeView, {
743
- ref: (0, kendo_vue_common_1.setRef)(_this2, 'treeView'),
744
- tabIndex: tabIndex,
745
- attrs: _this2.v3 ? undefined : {
746
- tabIndex: tabIndex,
747
- dataItems: dataItems,
748
- focusIdField: dataItemKey,
749
- textField: _this2.$props.textField,
750
- checkField: checkField,
751
- checkIndeterminateField: checkIndeterminateField,
752
- expandField: _this2.$props.expandField,
753
- childrenField: subItemsField,
754
- expandIcons: true,
755
- checkboxes: true,
756
- size: size,
757
- item: itemTemplate
758
- },
759
- dataItems: dataItems,
760
- focusIdField: dataItemKey,
761
- textField: _this2.$props.textField,
762
- checkField: checkField,
763
- checkIndeterminateField: checkIndeterminateField,
764
- expandField: _this2.$props.expandField,
765
- childrenField: subItemsField,
766
- expandIcons: true,
767
- onItemclick: _this2.onChange,
768
- on: _this2.v3 ? undefined : {
769
- "itemclick": _this2.onChange,
770
- "checkchange": _this2.onChange,
771
- "expandchange": _this2.onExpand,
772
- "focus": _this2.onFocus,
773
- "blur": _this2.onBlur,
774
- "keydown": _this2.onWrapperKeyDown
775
- },
776
- onCheckchange: _this2.onChange,
777
- onExpandchange: _this2.onExpand,
778
- onFocus: _this2.onFocus,
779
- onBlur: _this2.onBlur,
780
- onKeydown: _this2.onWrapperKeyDown,
781
- checkboxes: true,
782
- size: size,
783
- item: itemTemplate
784
- }) : noDataTemplate, footer && h("div", {
785
- "class": "k-list-footer"
786
- }, [footer])];
787
- } : [_this2.$props.filterable && h(ListFilter_1.ListFilter, {
788
- value: _this2.$props.filter === undefined ? _this2.filterState : _this2.$props.filter,
789
- attrs: _this2.v3 ? undefined : {
790
- value: _this2.$props.filter === undefined ? _this2.filterState : _this2.$props.filter,
791
- size: size,
792
- rounded: rounded,
793
- fillMode: fillMode
794
- },
795
- ref: (0, kendo_vue_common_1.setRef)(_this2, 'input'),
796
- onChange: _this2.onFilterChange,
797
- on: _this2.v3 ? undefined : {
798
- "change": _this2.onFilterChange,
799
- "keydown": _this2.onInputKeyDown,
800
- "focus": _this2.onFocus,
801
- "blur": _this2.onBlur
802
- },
803
- onKeydown: _this2.onInputKeyDown,
804
- size: size,
805
- rounded: rounded,
806
- fillMode: fillMode,
807
- onFocus: _this2.onFocus,
808
- onBlur: _this2.onBlur
809
- }), header && h("div", {
810
- "class": "k-list-header"
811
- }, [header]), dataItems.length > 0 ? h(kendo_vue_treeview_1.TreeView, {
812
- ref: (0, kendo_vue_common_1.setRef)(_this2, 'treeView'),
813
- tabIndex: tabIndex,
814
- attrs: _this2.v3 ? undefined : {
815
- tabIndex: tabIndex,
816
- dataItems: dataItems,
817
- focusIdField: dataItemKey,
818
- textField: _this2.$props.textField,
819
- checkField: checkField,
820
- checkIndeterminateField: checkIndeterminateField,
821
- expandField: _this2.$props.expandField,
822
- childrenField: subItemsField,
823
- expandIcons: true,
824
- checkboxes: true,
825
- size: size,
826
- item: itemTemplate
827
- },
828
- dataItems: dataItems,
829
- focusIdField: dataItemKey,
830
- textField: _this2.$props.textField,
831
- checkField: checkField,
832
- checkIndeterminateField: checkIndeterminateField,
833
- expandField: _this2.$props.expandField,
834
- childrenField: subItemsField,
835
- expandIcons: true,
836
- onItemclick: _this2.onChange,
837
- on: _this2.v3 ? undefined : {
838
- "itemclick": _this2.onChange,
839
- "checkchange": _this2.onChange,
840
- "expandchange": _this2.onExpand,
841
- "focus": _this2.onFocus,
842
- "blur": _this2.onBlur,
843
- "keydown": _this2.onWrapperKeyDown
844
- },
845
- onCheckchange: _this2.onChange,
846
- onExpandchange: _this2.onExpand,
847
- onFocus: _this2.onFocus,
848
- onBlur: _this2.onBlur,
849
- onKeydown: _this2.onWrapperKeyDown,
850
- checkboxes: true,
851
- size: size,
852
- item: itemTemplate
853
- }) : noDataTemplate, footer && h("div", {
854
- "class": "k-list-footer"
855
- }, [footer])])]);
856
- };
857
- // The following one combines the default rendering of the MultiSelect and the Adaptive rendering.
858
- // This is needed because of Vue 2 specifics
859
- var multiselecttree = [isV3 ? h(component.call(this), __assign({}, this.$attrs)) : component.call(this), renderAdaptive && renderAdaptiveListContainer.call(this)];
860
- var multiselecttreeToRender = isV3 ? multiselecttree : this.$props.adaptive ? h("span", [multiselecttree]) : component.call(this);
861
- return label ?
862
- // @ts-ignore function children
863
- h(kendo_vue_labels_1.FloatingLabel, {
864
- label: label,
865
- attrs: this.v3 ? undefined : {
866
- label: label,
867
- editorValue: this.hasValue,
868
- editorPlaceholder: placeholder,
869
- editorValid: isValid,
870
- editorDisabled: disabled,
871
- editorId: id,
872
- dir: dir
873
- },
874
- editorValue: this.hasValue,
875
- editorPlaceholder: placeholder,
876
- editorValid: isValid,
877
- editorDisabled: disabled,
878
- editorId: id,
879
- dir: dir
880
- }, this.v3 ? function () {
881
- return [multiselecttreeToRender];
882
- } : [multiselecttreeToRender]) : multiselecttreeToRender;
883
- },
884
- methods: {
885
- clearFilter: function clearFilter(event) {
886
- this.onFilterChange(event, '');
887
- },
888
- onCancel: function onCancel(event) {
889
- var dropdownEvent = {
890
- event: event,
891
- target: this
892
- };
893
- var changeEvent = __assign({
894
- items: [],
895
- operation: 'toggle',
896
- value: this.initialAdaptiveRenderingValues
897
- }, dropdownEvent);
898
- this.$emit('change', changeEvent);
899
- this.closePopup(event);
900
- },
901
- calculateMedia: function calculateMedia(entries) {
902
- for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {
903
- var entry = entries_1[_i];
904
- this.windowWidth = entry.target.clientWidth;
905
- }
906
- },
907
- calculatePopupWidth: function calculatePopupWidth() {
908
- if (this.elementRef) {
909
- this.popupWidth = this.popupSettings.width !== undefined ? this.popupSettings.width : this.elementRef.offsetWidth + 'px';
910
- }
911
- },
912
- focus: function focus() {
913
- if (this.$el) {
914
- this.$el.focus();
915
- }
916
- },
917
- setValidity: function setValidity() {
918
- if (this.selectRef && this.selectRef.setCustomValidity) {
919
- var _a = this.$props,
920
- validationMessage = _a.validationMessage,
921
- valid = _a.valid,
922
- required = _a.required;
923
- var validity = getValidity({
924
- validationMessage: validationMessage,
925
- valid: valid,
926
- required: required
927
- }, this.hasValue);
928
- this.selectRef.setCustomValidity(validity.valid ? '' : this.validationMessage === undefined ? VALIDATION_MESSAGE : this.validationMessage);
929
- }
930
- },
931
- changeValue: function changeValue(event, items, operation) {
932
- var fields = {
933
- dataItemKey: this.dataItemKey,
934
- checkField: this.checkField,
935
- checkIndeterminateField: this.checkIndeterminateField,
936
- expandField: this.expandField,
937
- subItemsField: this.subItemsField
938
- };
939
- var value = (0, utils_2.getMultiSelectTreeValue)(this.dataItems, __assign(__assign({}, fields), {
940
- items: items,
941
- operation: operation,
942
- value: this.computedValue
943
- }));
944
- var changeEvent = __assign({
945
- items: items,
946
- operation: operation,
947
- value: value
948
- }, event);
949
- this.$emit('changemodel', value);
950
- this.$emit('update:modelValue', value);
951
- this.$emit('change', changeEvent);
952
- },
953
- onChange: function onChange(e) {
954
- if ((0, utils_1.areSame)(e.item, this.computedValue, this.dataItemKey)) {
955
- return;
956
- }
957
- var item = e.item,
958
- event = e.event;
959
- var ev = {
960
- event: event,
961
- target: this
962
- };
963
- this.changeValue(ev, [item], 'toggle');
964
- },
965
- openPopup: function openPopup(event) {
966
- if (!this.isOpen) {
967
- var openEvent = __assign({}, event);
968
- this.$emit('open', openEvent);
969
- if (this.opened === undefined) {
970
- this.openState = true;
971
- }
972
- }
973
- },
974
- closePopup: function closePopup(event) {
975
- if (this.$props.filterable) {
976
- this.clearFilter(event);
977
- }
978
- if (this.isOpen) {
979
- var closeEvent = __assign({}, event);
980
- this.$emit('close', closeEvent);
981
- if (this.opened === undefined) {
982
- this.openState = false;
983
- }
984
- }
985
- },
986
- switchFocus: function switchFocus(focusFn) {
987
- var _this = this;
988
- this.skipFocusRef = true;
989
- focusFn();
990
- window.setTimeout(function () {
991
- return _this.skipFocusRef = false;
992
- }, 0);
993
- },
994
- focusElement: function focusElement(element) {
995
- if (element) {
996
- this.switchFocus(function () {
997
- return element.focus();
998
- });
999
- }
1000
- },
1001
- onPopupOpened: function onPopupOpened() {
1002
- if (!this.focusedState && this.isOpen) {
1003
- this.closePopup({
1004
- target: this
1005
- });
1006
- } else {
1007
- if (this.$props.filterable) {
1008
- var inputElement = this.inputRef && this.inputRef.input;
1009
- this.focusElement(inputElement);
1010
- } else {
1011
- this.focusElement(this.treeViewRef && this.treeViewRef.input);
1012
- }
1013
- }
1014
- },
1015
- onPopupClosed: function onPopupClosed() {
1016
- if (this.focusedState) {
1017
- // Move the focus from treeview to dropdown without triggering Focus or Blur events.
1018
- this.focusElement(this.elementRef);
1019
- }
1020
- },
1021
- onFocus: function onFocus(event) {
1022
- if (!this.focusedState && !this.skipFocusRef) {
1023
- this.focusedState = true;
1024
- var focusEvent = {
1025
- event: event,
1026
- target: this
1027
- };
1028
- this.$emit('focus', focusEvent);
1029
- }
1030
- },
1031
- onBlur: function onBlur(event) {
1032
- if (this.focusedState && !this.skipFocusRef && !this.adaptiveState) {
1033
- this.focusedTagState = undefined;
1034
- this.focusedState = false;
1035
- var ev = {
1036
- event: event,
1037
- target: this
1038
- };
1039
- var focusEvent = __assign({}, ev);
1040
- if (!event.relatedTarget || !event.relatedTarget.closest('.popup-' + this.componentGuid)) {
1041
- this.$emit('blur', focusEvent);
1042
- this.closePopup(ev);
1043
- }
1044
- }
1045
- },
1046
- onWrapperMouseDown: function onWrapperMouseDown() {
1047
- if (this.focusedState) {
1048
- // moving focus from treeview to dropdown triggers Focus and Blur events.
1049
- this.switchFocus(kendo_vue_common_1.noop);
1050
- }
1051
- },
1052
- onWrapperClick: function onWrapperClick(event) {
1053
- if (!this.$props.disabled && !event.defaultPrevented) {
1054
- this.focusedState = true;
1055
- var ev = {
1056
- event: event,
1057
- target: this
1058
- };
1059
- if (!this.isOpen) {
1060
- this.openPopup(ev);
1061
- }
1062
- }
1063
- },
1064
- onWrapperKeyDown: function onWrapperKeyDown(event) {
1065
- var _this = this;
1066
- var keyCode = event.keyCode,
1067
- altKey = event.altKey;
1068
- var treeviewElement = this.treeViewRef && this.treeViewRef.$el;
1069
- var inputElement = this.inputRef && this.inputRef.input;
1070
- if (this.$props.disabled || event.defaultPrevented && inputElement === event.target) {
1071
- return;
1072
- }
1073
- var ev = {
1074
- event: event,
1075
- target: this
1076
- };
1077
- if (this.computedValue && this.computedValue.length > 0 && (keyCode === kendo_vue_common_1.Keys.left || keyCode === kendo_vue_common_1.Keys.right || keyCode === kendo_vue_common_1.Keys.home || keyCode === kendo_vue_common_1.Keys.end || keyCode === kendo_vue_common_1.Keys.delete || keyCode === kendo_vue_common_1.Keys.backspace)) {
1078
- var tagsToRender = this.tagsToRenderRef;
1079
- var focusedIndex = this.focusedTagState ? tagsToRender.findIndex(function (t) {
1080
- return (0, utils_1.matchTags)(t, _this.focusedTagState, _this.dataItemKey);
1081
- }) : -1;
1082
- var newFocusedTag = undefined;
1083
- var hasFocused = focusedIndex !== -1;
1084
- if (keyCode === kendo_vue_common_1.Keys.left) {
1085
- if (hasFocused) {
1086
- focusedIndex = Math.max(0, focusedIndex - 1);
1087
- } else {
1088
- focusedIndex = tagsToRender.length - 1;
1089
- }
1090
- newFocusedTag = tagsToRender[focusedIndex];
1091
- } else if (keyCode === kendo_vue_common_1.Keys.right) {
1092
- if (hasFocused) {
1093
- focusedIndex = Math.min(tagsToRender.length - 1, focusedIndex + 1);
1094
- newFocusedTag = tagsToRender[focusedIndex];
1095
- } else {
1096
- newFocusedTag = tagsToRender[0];
1097
- }
1098
- } else if (keyCode === kendo_vue_common_1.Keys.home) {
1099
- newFocusedTag = tagsToRender[0];
1100
- } else if (keyCode === kendo_vue_common_1.Keys.end) {
1101
- newFocusedTag = tagsToRender[tagsToRender.length - 1];
1102
- } else if (keyCode === kendo_vue_common_1.Keys.delete || keyCode === kendo_vue_common_1.Keys.backspace) {
1103
- if (hasFocused) {
1104
- this.changeValue(ev, tagsToRender[focusedIndex].data, 'delete');
1105
- }
1106
- }
1107
- if (newFocusedTag !== this.focusedTagState) {
1108
- this.focusedTagState = newFocusedTag;
1109
- }
1110
- }
1111
- if (this.isOpen) {
1112
- if (keyCode === kendo_vue_common_1.Keys.esc || altKey && keyCode === kendo_vue_common_1.Keys.up) {
1113
- event.preventDefault();
1114
- this.switchFocus(function () {
1115
- _this.focusElement(_this.elementRef);
1116
- });
1117
- this.closePopup(ev);
1118
- } else if (treeviewElement && treeviewElement.querySelector('.k-focus') && (keyCode === kendo_vue_common_1.Keys.up || keyCode === kendo_vue_common_1.Keys.down || keyCode === kendo_vue_common_1.Keys.left || keyCode === kendo_vue_common_1.Keys.right || keyCode === kendo_vue_common_1.Keys.home || keyCode === kendo_vue_common_1.Keys.end)) {
1119
- if (keyCode === kendo_vue_common_1.Keys.up) {
1120
- var items = Array.from(treeviewElement.querySelectorAll('.k-treeview-item'));
1121
- var focusedItem = __spreadArray([], items, true).reverse().find(function (i) {
1122
- return Boolean(i && i.querySelector('.k-focus'));
1123
- });
1124
- if (focusedItem && items.indexOf(focusedItem) === 0) {
1125
- return this.switchFocus(function () {
1126
- _this.focusElement(inputElement || _this.elementRef);
1127
- });
1128
- }
1129
- }
1130
- this.switchFocus(kendo_vue_common_1.noop);
1131
- } else if (keyCode === kendo_vue_common_1.Keys.down) {
1132
- this.switchFocus(function () {
1133
- _this.focusElement(inputElement || treeviewElement);
1134
- });
1135
- }
1136
- } else {
1137
- if (altKey && keyCode === kendo_vue_common_1.Keys.down) {
1138
- event.preventDefault();
1139
- this.openPopup(ev);
1140
- }
1141
- }
1142
- },
1143
- onInputKeyDown: function onInputKeyDown(event) {
1144
- var _this = this;
1145
- var keyCode = event.keyCode,
1146
- altKey = event.altKey;
1147
- if (keyCode === kendo_vue_common_1.Keys.esc || altKey && keyCode === kendo_vue_common_1.Keys.up) {
1148
- event.preventDefault();
1149
- this.switchFocus(function () {
1150
- _this.focusElement(_this.elementRef);
1151
- });
1152
- if (keyCode === kendo_vue_common_1.Keys.esc && this.adaptiveState) {
1153
- this.onCancel(event);
1154
- } else {
1155
- this.closePopup(event);
1156
- }
1157
- }
1158
- if (altKey || keyCode !== kendo_vue_common_1.Keys.up && keyCode !== kendo_vue_common_1.Keys.down) {
1159
- return;
1160
- }
1161
- event.preventDefault();
1162
- this.switchFocus(keyCode === kendo_vue_common_1.Keys.up ? function () {
1163
- _this.focusElement(_this.elementRef);
1164
- } : function () {
1165
- _this.focusElement(_this.treeViewRef && _this.treeViewRef.$el);
1166
- });
1167
- },
1168
- onClear: function onClear(event) {
1169
- var ev = {
1170
- event: event,
1171
- target: this
1172
- };
1173
- this.changeValue(ev, [], 'clear');
1174
- this.closePopup(ev);
1175
- this.filterState = '';
1176
- event.preventDefault();
1177
- },
1178
- onTagDelete: function onTagDelete(itemsToRemove, event) {
1179
- this.closePopup({
1180
- target: this
1181
- });
1182
- if (!this.focusedState) {
1183
- var inputElement = this.inputRef && this.inputRef.input;
1184
- this.focusElement(inputElement);
1185
- }
1186
- this.changeValue({
1187
- event: event,
1188
- target: this
1189
- }, itemsToRemove, 'delete');
1190
- },
1191
- onExpand: function onExpand(e) {
1192
- var item = e.item,
1193
- itemHierarchicalIndex = e.itemHierarchicalIndex,
1194
- event = e.event;
1195
- var expandEvent = {
1196
- level: toLevel(itemHierarchicalIndex),
1197
- item: item,
1198
- event: event,
1199
- target: this
1200
- };
1201
- this.$emit('expandchange', expandEvent);
1202
- },
1203
- onFilterChange: function onFilterChange(event, emptyValue) {
1204
- var newValue = emptyValue ? '' : event.target.value;
1205
- var filterDesc = {
1206
- field: this.$props.textField,
1207
- operator: 'contains',
1208
- value: newValue
1209
- };
1210
- var ev = {
1211
- filter: filterDesc,
1212
- event: event,
1213
- target: this
1214
- };
1215
- this.$emit('filterchange', ev);
1216
- if (this.$props.filter === undefined) {
1217
- this.filterState = newValue;
1218
- }
1219
- }
1220
- }
1221
- };
1222
- exports.MultiSelectTreeVue2 = MultiSelectTreeVue2;
1223
- /**
1224
- * @hidden
1225
- */
1226
- var MultiSelectTree = MultiSelectTreeVue2;
1227
- exports.MultiSelectTree = MultiSelectTree;