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