@progress/kendo-angular-treeview 6.0.3-dev.202203091032 → 7.0.0-dev.202204131935

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 (328) hide show
  1. package/bundles/kendo-angular-treeview.umd.js +5 -0
  2. package/{dist/es2015/check-mode.d.ts → check-mode.d.ts} +0 -0
  3. package/{dist/es2015/check.directive.d.ts → check.directive.d.ts} +5 -2
  4. package/{dist/es2015/checkable-settings.d.ts → checkable-settings.d.ts} +0 -0
  5. package/{dist/es2015/checkbox → checkbox}/checkbox.component.d.ts +7 -4
  6. package/{dist/es2015/checkbox → checkbox}/checkbox.module.d.ts +5 -0
  7. package/{dist/es2015/checkbox → checkbox}/checked-state.d.ts +0 -0
  8. package/{dist/es2015/data-bound-component.d.ts → data-bound-component.d.ts} +3 -0
  9. package/{dist/es2015/data-change-notification.service.d.ts → data-change-notification.service.d.ts} +0 -0
  10. package/{dist/es2015/default-callbacks.d.ts → default-callbacks.d.ts} +0 -0
  11. package/{dist/es2015/disable.directive.d.ts → disable.directive.d.ts} +4 -1
  12. package/{dist/es2015/drag-and-drop → drag-and-drop}/drag-and-drop-editing.directive.d.ts +4 -1
  13. package/{dist/es2015/drag-and-drop → drag-and-drop}/drag-and-drop-utils.d.ts +0 -0
  14. package/{dist/es2015/drag-and-drop → drag-and-drop}/drag-and-drop.directive.d.ts +4 -1
  15. package/{dist/es2015/drag-and-drop → drag-and-drop}/drag-clue/drag-clue-template.directive.d.ts +3 -0
  16. package/{dist/es2015/drag-and-drop → drag-and-drop}/drag-clue/drag-clue.component.d.ts +4 -1
  17. package/{dist/es2015/drag-and-drop → drag-and-drop}/drag-clue/drag-clue.service.d.ts +3 -0
  18. package/{dist/es2015/drag-and-drop → drag-and-drop}/drop-hint/drop-hint-template.directive.d.ts +3 -0
  19. package/{dist/es2015/drag-and-drop → drag-and-drop}/drop-hint/drop-hint.component.d.ts +3 -0
  20. package/{dist/es2015/drag-and-drop → drag-and-drop}/drop-hint/drop-hint.service.d.ts +3 -0
  21. package/{dist/es2015/drag-and-drop → drag-and-drop}/editing-services/drag-and-drop-asset.service.d.ts +6 -2
  22. package/{dist/es2015/drag-and-drop → drag-and-drop}/editing-services/flat-editing.service.d.ts +0 -0
  23. package/{dist/es2015/drag-and-drop → drag-and-drop}/editing-services/hierarchy-editing.service.d.ts +0 -0
  24. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/drop-action.d.ts +0 -0
  25. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/drop-position.d.ts +0 -0
  26. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/editing-service.d.ts +0 -0
  27. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/preventable-event.d.ts +0 -0
  28. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/scroll-direction.d.ts +0 -0
  29. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/scroll-settings.d.ts +0 -0
  30. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/tree-item-filter-state.d.ts +0 -0
  31. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/treeitem-add-remove-args.d.ts +0 -0
  32. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/treeitem-drag-event.d.ts +2 -0
  33. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/treeitem-drag-start-event.d.ts +0 -0
  34. package/{dist/es2015/drag-and-drop → drag-and-drop}/models/treeitem-drop-event.d.ts +0 -0
  35. package/{dist/es2015/drag-and-drop → drag-and-drop}/models.d.ts +0 -0
  36. package/{dist/es2015 → esm2015}/check-mode.js +1 -0
  37. package/{dist/es2015 → esm2015}/check.directive.js +23 -35
  38. package/{dist/es → esm2015}/checkable-settings.js +1 -0
  39. package/{dist/es2015 → esm2015}/checkbox/checkbox.component.js +47 -51
  40. package/esm2015/checkbox/checkbox.module.js +27 -0
  41. package/{dist/es2015 → esm2015}/checkbox/checked-state.js +1 -0
  42. package/esm2015/data-bound-component.js +19 -0
  43. package/{dist/es2015 → esm2015}/data-change-notification.service.js +0 -0
  44. package/{dist/es2015 → esm2015}/default-callbacks.js +0 -0
  45. package/{dist/es2015 → esm2015}/disable.directive.js +18 -24
  46. package/{dist/es2015 → esm2015}/drag-and-drop/drag-and-drop-editing.directive.js +14 -16
  47. package/{dist/es2015 → esm2015}/drag-and-drop/drag-and-drop-utils.js +7 -11
  48. package/{dist/es2015 → esm2015}/drag-and-drop/drag-and-drop.directive.js +48 -51
  49. package/{dist/es2015 → esm2015}/drag-and-drop/drag-clue/drag-clue-template.directive.js +14 -12
  50. package/esm2015/drag-and-drop/drag-clue/drag-clue.component.js +85 -0
  51. package/{dist/es2015 → esm2015}/drag-and-drop/drag-clue/drag-clue.service.js +9 -9
  52. package/{dist/es2015 → esm2015}/drag-and-drop/drop-hint/drop-hint-template.directive.js +14 -12
  53. package/esm2015/drag-and-drop/drop-hint/drop-hint.component.js +79 -0
  54. package/{dist/es2015 → esm2015}/drag-and-drop/drop-hint/drop-hint.service.js +9 -9
  55. package/{dist/es2015 → esm2015}/drag-and-drop/editing-services/drag-and-drop-asset.service.js +7 -0
  56. package/{dist/es2015 → esm2015}/drag-and-drop/editing-services/flat-editing.service.js +0 -0
  57. package/{dist/es2015 → esm2015}/drag-and-drop/editing-services/hierarchy-editing.service.js +0 -0
  58. package/{dist/es → esm2015}/drag-and-drop/models/drop-action.js +0 -0
  59. package/{dist/es → esm2015}/drag-and-drop/models/drop-position.js +0 -0
  60. package/{dist/es2015 → esm2015}/drag-and-drop/models/editing-service.js +1 -0
  61. package/{dist/es2015 → esm2015}/drag-and-drop/models/preventable-event.js +0 -0
  62. package/{dist/es → esm2015}/drag-and-drop/models/scroll-direction.js +0 -0
  63. package/{dist/es → esm2015}/drag-and-drop/models/scroll-settings.js +1 -0
  64. package/{dist/es → esm2015}/drag-and-drop/models/tree-item-filter-state.js +1 -0
  65. package/{dist/es → esm2015}/drag-and-drop/models/treeitem-add-remove-args.js +1 -0
  66. package/{dist/es2015 → esm2015}/drag-and-drop/models/treeitem-drag-event.js +2 -0
  67. package/{dist/es2015 → esm2015}/drag-and-drop/models/treeitem-drag-start-event.js +0 -0
  68. package/{dist/es2015 → esm2015}/drag-and-drop/models/treeitem-drop-event.js +0 -0
  69. package/{dist/es → esm2015}/drag-and-drop/models.js +3 -0
  70. package/{dist/es2015 → esm2015}/expand-state.service.js +8 -10
  71. package/{dist/es2015 → esm2015}/expand.directive.js +22 -31
  72. package/esm2015/expandable-component.js +19 -0
  73. package/{dist/es → esm2015}/filter-expand-settings.interface.js +1 -0
  74. package/{dist/es → esm2015}/filter-state.interface.js +1 -0
  75. package/{dist/es2015 → esm2015}/filtering-base.js +13 -13
  76. package/{dist/es2015 → esm2015}/flat-binding.directive.js +20 -34
  77. package/{dist/es2015 → esm2015}/funcs.js +0 -0
  78. package/{dist/es2015 → esm2015}/hierarchy-binding.directive.js +23 -33
  79. package/{dist/es2015 → esm2015}/index-builder.service.js +8 -10
  80. package/{dist/es2015/shared.module.d.ts → esm2015/kendo-angular-treeview.js} +2 -3
  81. package/esm2015/load-more/load-more-button-template.directive.js +31 -0
  82. package/{dist/es → esm2015}/load-more/load-more-request-args.js +1 -0
  83. package/{dist/es2015 → esm2015}/load-more/load-more-utils.js +0 -0
  84. package/{dist/es2015 → esm2015}/load-more/load-more.directive.js +21 -28
  85. package/{dist/es → esm2015}/load-more/load-more.service.js +1 -0
  86. package/{dist/es2015 → esm2015}/loading-indicator.directive.js +18 -22
  87. package/esm2015/loading-notification.service.js +23 -0
  88. package/{dist/es → esm2015}/main.js +0 -0
  89. package/{dist/es → esm2015}/navigation/navigation-item.interface.js +1 -0
  90. package/{dist/es2015 → esm2015}/navigation/navigation-model.js +0 -4
  91. package/{dist/es → esm2015}/navigation/navigation-state.interface.js +1 -0
  92. package/{dist/es2015 → esm2015}/navigation/navigation.service.js +9 -9
  93. package/{dist/es2015 → esm2015}/node-children.service.js +8 -10
  94. package/{dist/es → esm2015}/node-click-event.interface.js +1 -0
  95. package/{dist/es2015 → esm2015}/node-template.directive.js +14 -12
  96. package/{dist/es2015 → esm2015}/package-metadata.js +1 -1
  97. package/{dist/es2015 → esm2015}/selection/select.directive.js +25 -35
  98. package/{dist/es → esm2015}/selection/selectable-settings.js +1 -0
  99. package/{dist/es → esm2015}/selection/selection-mode.js +1 -0
  100. package/{dist/es2015 → esm2015}/selection/selection.service.js +8 -10
  101. package/{dist/es2015 → esm2015}/shared.module.js +63 -16
  102. package/{dist/es → esm2015}/size.js +1 -0
  103. package/{dist/es → esm2015}/treeitem-lookup.interface.js +1 -0
  104. package/{dist/es → esm2015}/treeitem.interface.js +1 -0
  105. package/{dist/es2015 → esm2015}/treeview-filter-settings.js +0 -0
  106. package/{dist/es2015 → esm2015}/treeview-group.component.js +264 -135
  107. package/{dist/es2015 → esm2015}/treeview-item-content.directive.js +20 -30
  108. package/{dist/es2015 → esm2015}/treeview-item.directive.js +43 -81
  109. package/{dist/es2015 → esm2015}/treeview-lookup.service.js +8 -10
  110. package/{dist/es2015 → esm2015}/treeview.component.js +173 -213
  111. package/{dist/es2015 → esm2015}/treeview.module.js +26 -10
  112. package/{dist/es2015 → esm2015}/utils.js +6 -12
  113. package/{dist/es2015/expand-state.service.d.ts → expand-state.service.d.ts} +3 -0
  114. package/{dist/es2015/expand.directive.d.ts → expand.directive.d.ts} +5 -2
  115. package/{dist/es2015/expandable-component.d.ts → expandable-component.d.ts} +3 -0
  116. package/{dist/fesm2015/index.js → fesm2015/kendo-angular-treeview.js} +3415 -3313
  117. package/{dist/es2015/filter-expand-settings.interface.d.ts → filter-expand-settings.interface.d.ts} +0 -0
  118. package/{dist/es2015/filter-state.interface.d.ts → filter-state.interface.d.ts} +0 -0
  119. package/{dist/es2015/filtering-base.d.ts → filtering-base.d.ts} +6 -2
  120. package/{dist/es2015/flat-binding.directive.d.ts → flat-binding.directive.d.ts} +5 -2
  121. package/{dist/es2015/funcs.d.ts → funcs.d.ts} +0 -0
  122. package/{dist/es2015/hierarchy-binding.directive.d.ts → hierarchy-binding.directive.d.ts} +10 -6
  123. package/{dist/es2015/index-builder.service.d.ts → index-builder.service.d.ts} +3 -0
  124. package/{dist/es/treeview-filter-settings.js → kendo-angular-treeview.d.ts} +3 -6
  125. package/{dist/es2015/load-more → load-more}/load-more-button-template.directive.d.ts +3 -0
  126. package/{dist/es2015/load-more → load-more}/load-more-request-args.d.ts +0 -0
  127. package/{dist/es2015/load-more → load-more}/load-more-utils.d.ts +0 -0
  128. package/{dist/es2015/load-more → load-more}/load-more.directive.d.ts +4 -1
  129. package/{dist/es2015/load-more → load-more}/load-more.service.d.ts +0 -0
  130. package/{dist/es2015/loading-indicator.directive.d.ts → loading-indicator.directive.d.ts} +5 -1
  131. package/{dist/es2015/loading-notification.service.d.ts → loading-notification.service.d.ts} +3 -0
  132. package/{dist/es2015/main.d.ts → main.d.ts} +0 -0
  133. package/{dist/es2015/navigation → navigation}/navigation-item.interface.d.ts +0 -0
  134. package/{dist/es2015/navigation → navigation}/navigation-model.d.ts +0 -0
  135. package/{dist/es2015/navigation → navigation}/navigation-state.interface.d.ts +0 -0
  136. package/{dist/es2015/navigation → navigation}/navigation.service.d.ts +9 -5
  137. package/{dist/es2015/node-children.service.d.ts → node-children.service.d.ts} +3 -0
  138. package/{dist/es2015/node-click-event.interface.d.ts → node-click-event.interface.d.ts} +0 -0
  139. package/{dist/es2015/node-template.directive.d.ts → node-template.directive.d.ts} +3 -0
  140. package/{dist/es2015/package-metadata.d.ts → package-metadata.d.ts} +0 -0
  141. package/package.json +36 -104
  142. package/schematics/ngAdd/index.js +5 -2
  143. package/schematics/ngAdd/index.js.map +1 -1
  144. package/{dist/es2015/selection → selection}/select.directive.d.ts +6 -3
  145. package/{dist/es2015/selection → selection}/selectable-settings.d.ts +0 -0
  146. package/{dist/es2015/selection → selection}/selection-mode.d.ts +0 -0
  147. package/{dist/es2015/selection → selection}/selection.service.d.ts +3 -0
  148. package/shared.module.d.ts +36 -0
  149. package/size.d.ts +8 -0
  150. package/{dist/es2015/treeitem-lookup.interface.d.ts → treeitem-lookup.interface.d.ts} +0 -0
  151. package/{dist/es2015/treeitem.interface.d.ts → treeitem.interface.d.ts} +0 -0
  152. package/{dist/es2015/treeview-filter-settings.d.ts → treeview-filter-settings.d.ts} +0 -0
  153. package/{dist/es2015/treeview-group.component.d.ts → treeview-group.component.d.ts} +16 -7
  154. package/{dist/es2015/treeview-item-content.directive.d.ts → treeview-item-content.directive.d.ts} +3 -0
  155. package/{dist/es2015/treeview-item.directive.d.ts → treeview-item.directive.d.ts} +11 -6
  156. package/{dist/es2015/treeview-lookup.service.d.ts → treeview-lookup.service.d.ts} +3 -0
  157. package/{dist/es2015/treeview.component.d.ts → treeview.component.d.ts} +26 -15
  158. package/treeview.module.d.ts +28 -0
  159. package/{dist/es2015/utils.d.ts → utils.d.ts} +1 -1
  160. package/dist/cdn/js/kendo-angular-treeview.js +0 -20
  161. package/dist/cdn/main.js +0 -5
  162. package/dist/es/check-mode.js +0 -4
  163. package/dist/es/check.directive.js +0 -282
  164. package/dist/es/checkbox/checkbox.component.js +0 -127
  165. package/dist/es/checkbox/checkbox.module.js +0 -27
  166. package/dist/es/checkbox/checked-state.js +0 -4
  167. package/dist/es/data-bound-component.js +0 -21
  168. package/dist/es/data-change-notification.service.js +0 -18
  169. package/dist/es/default-callbacks.js +0 -32
  170. package/dist/es/disable.directive.js +0 -71
  171. package/dist/es/drag-and-drop/drag-and-drop-editing.directive.js +0 -65
  172. package/dist/es/drag-and-drop/drag-and-drop-utils.js +0 -274
  173. package/dist/es/drag-and-drop/drag-and-drop.directive.js +0 -334
  174. package/dist/es/drag-and-drop/drag-clue/drag-clue-template.directive.js +0 -34
  175. package/dist/es/drag-and-drop/drag-clue/drag-clue.component.js +0 -54
  176. package/dist/es/drag-and-drop/drag-clue/drag-clue.service.js +0 -132
  177. package/dist/es/drag-and-drop/drop-hint/drop-hint-template.directive.js +0 -31
  178. package/dist/es/drag-and-drop/drop-hint/drop-hint.component.js +0 -43
  179. package/dist/es/drag-and-drop/drop-hint/drop-hint.service.js +0 -46
  180. package/dist/es/drag-and-drop/editing-services/drag-and-drop-asset.service.js +0 -53
  181. package/dist/es/drag-and-drop/editing-services/flat-editing.service.js +0 -145
  182. package/dist/es/drag-and-drop/editing-services/hierarchy-editing.service.js +0 -90
  183. package/dist/es/drag-and-drop/models/editing-service.js +0 -4
  184. package/dist/es/drag-and-drop/models/preventable-event.js +0 -29
  185. package/dist/es/drag-and-drop/models/treeitem-drag-event.js +0 -14
  186. package/dist/es/drag-and-drop/models/treeitem-drag-start-event.js +0 -22
  187. package/dist/es/drag-and-drop/models/treeitem-drop-event.js +0 -36
  188. package/dist/es/expand-state.service.js +0 -26
  189. package/dist/es/expand.directive.js +0 -219
  190. package/dist/es/expandable-component.js +0 -21
  191. package/dist/es/filtering-base.js +0 -95
  192. package/dist/es/flat-binding.directive.js +0 -151
  193. package/dist/es/funcs.js +0 -15
  194. package/dist/es/hierarchy-binding.directive.js +0 -152
  195. package/dist/es/index-builder.service.js +0 -38
  196. package/dist/es/index.js +0 -30
  197. package/dist/es/load-more/load-more-button-template.directive.js +0 -30
  198. package/dist/es/load-more/load-more-utils.js +0 -35
  199. package/dist/es/load-more/load-more.directive.js +0 -114
  200. package/dist/es/loading-indicator.directive.js +0 -76
  201. package/dist/es/loading-notification.service.js +0 -23
  202. package/dist/es/navigation/navigation-model.js +0 -162
  203. package/dist/es/navigation/navigation.service.js +0 -243
  204. package/dist/es/node-children.service.js +0 -23
  205. package/dist/es/node-template.directive.js +0 -74
  206. package/dist/es/package-metadata.js +0 -15
  207. package/dist/es/selection/select.directive.js +0 -152
  208. package/dist/es/selection/selection.service.js +0 -34
  209. package/dist/es/shared.module.js +0 -75
  210. package/dist/es/treeview-group.component.js +0 -393
  211. package/dist/es/treeview-item-content.directive.js +0 -85
  212. package/dist/es/treeview-item.directive.js +0 -306
  213. package/dist/es/treeview-lookup.service.js +0 -93
  214. package/dist/es/treeview.component.js +0 -853
  215. package/dist/es/treeview.module.js +0 -52
  216. package/dist/es/utils.js +0 -311
  217. package/dist/es2015/checkable-settings.js +0 -4
  218. package/dist/es2015/checkbox/checkbox.module.js +0 -24
  219. package/dist/es2015/data-bound-component.js +0 -18
  220. package/dist/es2015/drag-and-drop/drag-clue/drag-clue.component.js +0 -66
  221. package/dist/es2015/drag-and-drop/drop-hint/drop-hint.component.js +0 -61
  222. package/dist/es2015/drag-and-drop/models/drop-action.js +0 -17
  223. package/dist/es2015/drag-and-drop/models/drop-position.js +0 -13
  224. package/dist/es2015/drag-and-drop/models/scroll-direction.js +0 -12
  225. package/dist/es2015/drag-and-drop/models/scroll-settings.js +0 -4
  226. package/dist/es2015/drag-and-drop/models/tree-item-filter-state.js +0 -4
  227. package/dist/es2015/drag-and-drop/models/treeitem-add-remove-args.js +0 -4
  228. package/dist/es2015/drag-and-drop/models.js +0 -11
  229. package/dist/es2015/expandable-component.js +0 -18
  230. package/dist/es2015/filter-expand-settings.interface.js +0 -4
  231. package/dist/es2015/filter-state.interface.js +0 -4
  232. package/dist/es2015/index.d.ts +0 -30
  233. package/dist/es2015/index.js +0 -30
  234. package/dist/es2015/index.metadata.json +0 -1
  235. package/dist/es2015/load-more/load-more-button-template.directive.js +0 -29
  236. package/dist/es2015/load-more/load-more-request-args.js +0 -4
  237. package/dist/es2015/load-more/load-more.service.js +0 -4
  238. package/dist/es2015/loading-notification.service.js +0 -25
  239. package/dist/es2015/main.js +0 -26
  240. package/dist/es2015/navigation/navigation-item.interface.js +0 -4
  241. package/dist/es2015/navigation/navigation-state.interface.js +0 -4
  242. package/dist/es2015/node-click-event.interface.js +0 -4
  243. package/dist/es2015/selection/selectable-settings.js +0 -4
  244. package/dist/es2015/selection/selection-mode.js +0 -4
  245. package/dist/es2015/size.d.ts +0 -14
  246. package/dist/es2015/size.js +0 -4
  247. package/dist/es2015/treeitem-lookup.interface.js +0 -4
  248. package/dist/es2015/treeitem.interface.js +0 -4
  249. package/dist/es2015/treeview.module.d.ts +0 -9
  250. package/dist/fesm5/index.js +0 -5426
  251. package/dist/npm/check-mode.js +0 -6
  252. package/dist/npm/check.directive.js +0 -285
  253. package/dist/npm/checkable-settings.js +0 -6
  254. package/dist/npm/checkbox/checkbox.component.js +0 -129
  255. package/dist/npm/checkbox/checkbox.module.js +0 -29
  256. package/dist/npm/checkbox/checked-state.js +0 -6
  257. package/dist/npm/data-bound-component.js +0 -23
  258. package/dist/npm/data-change-notification.service.js +0 -20
  259. package/dist/npm/default-callbacks.js +0 -34
  260. package/dist/npm/disable.directive.js +0 -73
  261. package/dist/npm/drag-and-drop/drag-and-drop-editing.directive.js +0 -67
  262. package/dist/npm/drag-and-drop/drag-and-drop-utils.js +0 -278
  263. package/dist/npm/drag-and-drop/drag-and-drop.directive.js +0 -336
  264. package/dist/npm/drag-and-drop/drag-clue/drag-clue-template.directive.js +0 -36
  265. package/dist/npm/drag-and-drop/drag-clue/drag-clue.component.js +0 -56
  266. package/dist/npm/drag-and-drop/drag-clue/drag-clue.service.js +0 -134
  267. package/dist/npm/drag-and-drop/drop-hint/drop-hint-template.directive.js +0 -33
  268. package/dist/npm/drag-and-drop/drop-hint/drop-hint.component.js +0 -45
  269. package/dist/npm/drag-and-drop/drop-hint/drop-hint.service.js +0 -48
  270. package/dist/npm/drag-and-drop/editing-services/drag-and-drop-asset.service.js +0 -55
  271. package/dist/npm/drag-and-drop/editing-services/flat-editing.service.js +0 -147
  272. package/dist/npm/drag-and-drop/editing-services/hierarchy-editing.service.js +0 -92
  273. package/dist/npm/drag-and-drop/models/drop-action.js +0 -19
  274. package/dist/npm/drag-and-drop/models/drop-position.js +0 -15
  275. package/dist/npm/drag-and-drop/models/editing-service.js +0 -6
  276. package/dist/npm/drag-and-drop/models/preventable-event.js +0 -31
  277. package/dist/npm/drag-and-drop/models/scroll-direction.js +0 -14
  278. package/dist/npm/drag-and-drop/models/scroll-settings.js +0 -6
  279. package/dist/npm/drag-and-drop/models/tree-item-filter-state.js +0 -6
  280. package/dist/npm/drag-and-drop/models/treeitem-add-remove-args.js +0 -6
  281. package/dist/npm/drag-and-drop/models/treeitem-drag-event.js +0 -16
  282. package/dist/npm/drag-and-drop/models/treeitem-drag-start-event.js +0 -24
  283. package/dist/npm/drag-and-drop/models/treeitem-drop-event.js +0 -38
  284. package/dist/npm/drag-and-drop/models.js +0 -14
  285. package/dist/npm/expand-state.service.js +0 -28
  286. package/dist/npm/expand.directive.js +0 -221
  287. package/dist/npm/expandable-component.js +0 -23
  288. package/dist/npm/filter-expand-settings.interface.js +0 -6
  289. package/dist/npm/filter-state.interface.js +0 -6
  290. package/dist/npm/filtering-base.js +0 -97
  291. package/dist/npm/flat-binding.directive.js +0 -154
  292. package/dist/npm/funcs.js +0 -17
  293. package/dist/npm/hierarchy-binding.directive.js +0 -154
  294. package/dist/npm/index-builder.service.js +0 -40
  295. package/dist/npm/index.js +0 -55
  296. package/dist/npm/load-more/load-more-button-template.directive.js +0 -32
  297. package/dist/npm/load-more/load-more-request-args.js +0 -6
  298. package/dist/npm/load-more/load-more-utils.js +0 -37
  299. package/dist/npm/load-more/load-more.directive.js +0 -116
  300. package/dist/npm/load-more/load-more.service.js +0 -6
  301. package/dist/npm/loading-indicator.directive.js +0 -78
  302. package/dist/npm/loading-notification.service.js +0 -25
  303. package/dist/npm/main.js +0 -50
  304. package/dist/npm/navigation/navigation-item.interface.js +0 -6
  305. package/dist/npm/navigation/navigation-model.js +0 -166
  306. package/dist/npm/navigation/navigation-state.interface.js +0 -6
  307. package/dist/npm/navigation/navigation.service.js +0 -245
  308. package/dist/npm/node-children.service.js +0 -25
  309. package/dist/npm/node-click-event.interface.js +0 -6
  310. package/dist/npm/node-template.directive.js +0 -76
  311. package/dist/npm/package-metadata.js +0 -17
  312. package/dist/npm/selection/select.directive.js +0 -154
  313. package/dist/npm/selection/selectable-settings.js +0 -6
  314. package/dist/npm/selection/selection-mode.js +0 -6
  315. package/dist/npm/selection/selection.service.js +0 -36
  316. package/dist/npm/shared.module.js +0 -77
  317. package/dist/npm/size.js +0 -6
  318. package/dist/npm/treeitem-lookup.interface.js +0 -6
  319. package/dist/npm/treeitem.interface.js +0 -6
  320. package/dist/npm/treeview-filter-settings.js +0 -14
  321. package/dist/npm/treeview-group.component.js +0 -395
  322. package/dist/npm/treeview-item-content.directive.js +0 -87
  323. package/dist/npm/treeview-item.directive.js +0 -308
  324. package/dist/npm/treeview-lookup.service.js +0 -95
  325. package/dist/npm/treeview.component.js +0 -855
  326. package/dist/npm/treeview.module.js +0 -54
  327. package/dist/npm/utils.js +0 -322
  328. package/dist/systemjs/kendo-angular-treeview.js +0 -5
@@ -1,219 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import * as tslib_1 from "tslib";
6
- import { Directive, EventEmitter, Input, Output } from '@angular/core';
7
- import { ExpandableComponent } from './expandable-component';
8
- import { Subscription, merge } from 'rxjs';
9
- import { map } from 'rxjs/operators';
10
- import { isArrayWithAtLeastOneItem, isBoolean, sameValues } from './utils';
11
- import { isChanged } from '@progress/kendo-angular-common';
12
- var DEFAULT_FILTER_EXPAND_SETTINGS = {
13
- maxAutoExpandResults: -1,
14
- expandMatches: false,
15
- expandedOnClear: "none"
16
- };
17
- /**
18
- * A directive which manages the expanded state of the TreeView.
19
- * ([see example]({% slug expandedstate_treeview %})).
20
- */
21
- var ExpandDirective = /** @class */ (function () {
22
- function ExpandDirective(component) {
23
- var _this = this;
24
- this.component = component;
25
- /**
26
- * Whether or not to auto-expand the nodes leading from the root node to each filter result.
27
- * To fine-tune this behavior, pass a [`FilterExpandSettings`]({% slug api_treeview_filterexpandsettings %}) object to this input.
28
- * @default false
29
- */
30
- this.expandOnFilter = false;
31
- /**
32
- * Fires when the `expandedKeys` collection was updated.
33
- */
34
- this.expandedKeysChange = new EventEmitter();
35
- this.subscriptions = new Subscription();
36
- /**
37
- * Reflectes the internal `expandedKeys` state.
38
- */
39
- this.state = new Set();
40
- this.originalExpandedKeys = new Set();
41
- this.isFiltered = false;
42
- /**
43
- * Fills array with the correct expand keys according to wrapper metadata.
44
- */
45
- this.updateExpandedNodes = function (collection, node, autoExpandMatches) {
46
- if (node.containsMatches || node.isMatch && autoExpandMatches && isArrayWithAtLeastOneItem(node.children)) {
47
- collection.push(_this.itemKey({ dataItem: node.dataItem, index: node.index }));
48
- }
49
- if (isArrayWithAtLeastOneItem(node.children)) {
50
- node.children.forEach(function (child) {
51
- _this.updateExpandedNodes(collection, child, autoExpandMatches);
52
- });
53
- }
54
- };
55
- /**
56
- * Fills array with the expand key of every node.
57
- */
58
- this.getEveryExpandKey = function (collection, node) {
59
- if (isArrayWithAtLeastOneItem(node.children)) {
60
- collection.push(_this.itemKey({ dataItem: node.dataItem, index: node.index }));
61
- }
62
- if (isArrayWithAtLeastOneItem(node.children)) {
63
- node.children.forEach(function (child) {
64
- _this.getEveryExpandKey(collection, child);
65
- });
66
- }
67
- };
68
- this.subscriptions.add(merge(this.component.expand.pipe(map(function (e) { return (tslib_1.__assign({ expand: true }, e)); })), this.component.collapse.pipe(map(function (e) { return (tslib_1.__assign({ expand: false }, e)); }))).subscribe(this.toggleExpand.bind(this)));
69
- if (this.component.filterStateChange) {
70
- this.subscriptions.add(this.component.filterStateChange.subscribe(this.handleAutoExpand.bind(this)));
71
- }
72
- this.component.isExpanded = function (dataItem, index) {
73
- return _this.state.has(_this.itemKey({ dataItem: dataItem, index: index }));
74
- };
75
- }
76
- Object.defineProperty(ExpandDirective.prototype, "isExpanded", {
77
- /**
78
- * @hidden
79
- */
80
- set: function (value) {
81
- this.component.isExpanded = value;
82
- },
83
- enumerable: true,
84
- configurable: true
85
- });
86
- Object.defineProperty(ExpandDirective.prototype, "filterExpandSettings", {
87
- get: function () {
88
- var settings = isBoolean(this.expandOnFilter) ? { enabled: this.expandOnFilter } : tslib_1.__assign({}, this.expandOnFilter, { enabled: true });
89
- return Object.assign({}, DEFAULT_FILTER_EXPAND_SETTINGS, settings);
90
- },
91
- enumerable: true,
92
- configurable: true
93
- });
94
- ExpandDirective.prototype.ngOnChanges = function (changes) {
95
- if (isChanged('expandedKeys', changes, false) && changes.expandedKeys.currentValue !== this.lastChange) {
96
- this.state = new Set(changes.expandedKeys.currentValue);
97
- }
98
- };
99
- ExpandDirective.prototype.ngOnDestroy = function () {
100
- this.subscriptions.unsubscribe();
101
- };
102
- /**
103
- * @hidden
104
- */
105
- ExpandDirective.prototype.itemKey = function (e) {
106
- if (this.expandKey) {
107
- if (typeof this.expandKey === "string") {
108
- return e.dataItem[this.expandKey];
109
- }
110
- if (typeof this.expandKey === "function") {
111
- return this.expandKey(e);
112
- }
113
- }
114
- return e.index;
115
- };
116
- ExpandDirective.prototype.toggleExpand = function (_a) {
117
- var index = _a.index, dataItem = _a.dataItem, expand = _a.expand;
118
- var key = this.itemKey({ index: index, dataItem: dataItem });
119
- var isExpanded = this.state.has(key);
120
- var notify = false;
121
- if (isExpanded && !expand) {
122
- this.state.delete(key);
123
- notify = true;
124
- }
125
- else if (!isExpanded && expand) {
126
- this.state.add(key);
127
- notify = true;
128
- }
129
- if (notify) {
130
- this.notify();
131
- }
132
- };
133
- ExpandDirective.prototype.handleAutoExpand = function (_a) {
134
- var _this = this;
135
- var nodes = _a.nodes, matchCount = _a.matchCount, term = _a.term;
136
- if (!this.filterExpandSettings.enabled) {
137
- return;
138
- }
139
- var _b = this.filterExpandSettings, maxAutoExpandResults = _b.maxAutoExpandResults, autoExpandMatches = _b.expandMatches, expandedOnClear = _b.expandedOnClear;
140
- if (!this.isFiltered) {
141
- this.originalExpandedKeys = new Set(this.state);
142
- }
143
- var exitingFilteredState = this.isFiltered && !term;
144
- var maxExceeded = maxAutoExpandResults !== -1 && matchCount > maxAutoExpandResults;
145
- var exitAutoExpandedState = exitingFilteredState || maxExceeded;
146
- if (exitAutoExpandedState) {
147
- switch (expandedOnClear) {
148
- case "initial": {
149
- if (!sameValues(this.state, this.originalExpandedKeys)) {
150
- this.state = this.originalExpandedKeys;
151
- this.notify();
152
- }
153
- break;
154
- }
155
- case "all": {
156
- this.state = new Set(nodes.reduce(function (acc, rootNode) {
157
- _this.getEveryExpandKey(acc, rootNode);
158
- return acc;
159
- }, []));
160
- this.notify();
161
- break;
162
- }
163
- case "unchanged": {
164
- break;
165
- }
166
- case "none":
167
- default: {
168
- if (this.state.size !== 0) {
169
- this.state.clear();
170
- this.notify();
171
- }
172
- break;
173
- }
174
- }
175
- this.isFiltered = false;
176
- return;
177
- }
178
- var indicesToExpand = new Set(nodes.reduce(function (acc, rootNode) {
179
- _this.updateExpandedNodes(acc, rootNode, autoExpandMatches);
180
- return acc;
181
- }, []));
182
- if (!sameValues(this.state, indicesToExpand)) {
183
- this.state = indicesToExpand;
184
- this.notify();
185
- }
186
- this.isFiltered = true;
187
- };
188
- ExpandDirective.prototype.notify = function () {
189
- this.lastChange = Array.from(this.state);
190
- this.expandedKeysChange.emit(this.lastChange);
191
- };
192
- tslib_1.__decorate([
193
- Input(),
194
- tslib_1.__metadata("design:type", Function),
195
- tslib_1.__metadata("design:paramtypes", [Function])
196
- ], ExpandDirective.prototype, "isExpanded", null);
197
- tslib_1.__decorate([
198
- Input("expandBy"),
199
- tslib_1.__metadata("design:type", Object)
200
- ], ExpandDirective.prototype, "expandKey", void 0);
201
- tslib_1.__decorate([
202
- Input(),
203
- tslib_1.__metadata("design:type", Object)
204
- ], ExpandDirective.prototype, "expandOnFilter", void 0);
205
- tslib_1.__decorate([
206
- Output(),
207
- tslib_1.__metadata("design:type", EventEmitter)
208
- ], ExpandDirective.prototype, "expandedKeysChange", void 0);
209
- tslib_1.__decorate([
210
- Input(),
211
- tslib_1.__metadata("design:type", Array)
212
- ], ExpandDirective.prototype, "expandedKeys", void 0);
213
- ExpandDirective = tslib_1.__decorate([
214
- Directive({ selector: '[kendoTreeViewExpandable]' }),
215
- tslib_1.__metadata("design:paramtypes", [ExpandableComponent])
216
- ], ExpandDirective);
217
- return ExpandDirective;
218
- }());
219
- export { ExpandDirective };
@@ -1,21 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import * as tslib_1 from "tslib";
6
- import { Injectable } from '@angular/core';
7
- /**
8
- * @hidden
9
- *
10
- * An injection token used by the expand-directive to interface with
11
- * the TreeView or the DropDownTree components.
12
- */
13
- var ExpandableComponent = /** @class */ (function () {
14
- function ExpandableComponent() {
15
- }
16
- ExpandableComponent = tslib_1.__decorate([
17
- Injectable()
18
- ], ExpandableComponent);
19
- return ExpandableComponent;
20
- }());
21
- export { ExpandableComponent };
@@ -1,95 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import * as tslib_1 from "tslib";
6
- import { Input } from "@angular/core";
7
- import { DEFAULT_FILTER_SETTINGS } from "./treeview-filter-settings";
8
- import { filterTree, isPresent } from "./utils";
9
- /**
10
- * @hidden
11
- */
12
- var FilteringBase = /** @class */ (function () {
13
- function FilteringBase(component) {
14
- this.component = component;
15
- this.visibleNodes = new Set();
16
- this._filterSettings = DEFAULT_FILTER_SETTINGS;
17
- }
18
- Object.defineProperty(FilteringBase.prototype, "filterSettings", {
19
- get: function () {
20
- return this._filterSettings;
21
- },
22
- /**
23
- * The settings which are applied when performing a filter on the component's data.
24
- */
25
- set: function (settings) {
26
- this._filterSettings = tslib_1.__assign({}, DEFAULT_FILTER_SETTINGS, settings);
27
- },
28
- enumerable: true,
29
- configurable: true
30
- });
31
- Object.defineProperty(FilteringBase.prototype, "filter", {
32
- /**
33
- * Applies a filter and changes the visibility of the component's nodes accordingly.
34
- */
35
- set: function (term) {
36
- this.handleFilterChange(term);
37
- },
38
- enumerable: true,
39
- configurable: true
40
- });
41
- /**
42
- * @hidden
43
- */
44
- FilteringBase.prototype.handleFilterChange = function (term) {
45
- if (!this.filterData) {
46
- return;
47
- }
48
- this.resetNodesVisibility(this.filterData);
49
- if (term) {
50
- filterTree(this.filterData, term, this.filterSettings, this.component.textField);
51
- }
52
- this.updateVisibleNodes(this.filterData);
53
- if (isPresent(this.component.filterStateChange)) {
54
- this.component.filterStateChange.emit({
55
- nodes: this.filterData,
56
- matchCount: this.visibleNodes.size,
57
- term: term,
58
- filterSettings: this.filterSettings
59
- });
60
- }
61
- };
62
- FilteringBase.prototype.updateVisibleNodes = function (items) {
63
- var _this = this;
64
- items.forEach(function (wrapper) {
65
- if (wrapper.visible) {
66
- _this.visibleNodes.add(wrapper.dataItem);
67
- }
68
- if (wrapper.children) {
69
- _this.updateVisibleNodes(wrapper.children);
70
- }
71
- });
72
- };
73
- FilteringBase.prototype.resetNodesVisibility = function (items) {
74
- var _this = this;
75
- this.visibleNodes.clear();
76
- items.forEach(function (wrapper) {
77
- wrapper.visible = true;
78
- if (wrapper.children) {
79
- _this.resetNodesVisibility(wrapper.children);
80
- }
81
- });
82
- };
83
- tslib_1.__decorate([
84
- Input(),
85
- tslib_1.__metadata("design:type", Object),
86
- tslib_1.__metadata("design:paramtypes", [Object])
87
- ], FilteringBase.prototype, "filterSettings", null);
88
- tslib_1.__decorate([
89
- Input(),
90
- tslib_1.__metadata("design:type", String),
91
- tslib_1.__metadata("design:paramtypes", [String])
92
- ], FilteringBase.prototype, "filter", null);
93
- return FilteringBase;
94
- }());
95
- export { FilteringBase };
@@ -1,151 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import * as tslib_1 from "tslib";
6
- import { anyChanged, isChanged } from '@progress/kendo-angular-common';
7
- import { Directive, Input } from '@angular/core';
8
- import { getter } from '@progress/kendo-common';
9
- import { of } from 'rxjs';
10
- import { compose } from './funcs';
11
- import { DataBoundComponent } from './data-bound-component';
12
- import { isBlank, isNullOrEmptyString, isPresent, isArrayWithAtLeastOneItem } from './utils';
13
- import { FlatEditingService } from "./drag-and-drop/editing-services/flat-editing.service";
14
- import { IndexBuilderService } from './index-builder.service';
15
- import { FilteringBase } from './filtering-base';
16
- var findChildren = function (prop, nodes, value) { return nodes.filter(function (x) { return prop(x) === value; }); };
17
- var ɵ0 = findChildren;
18
- var indexBuilder = new IndexBuilderService();
19
- var mapToTree = function (currentLevelNodes, allNodes, parentIdField, idField, parent, parentIndex) {
20
- if (parent === void 0) { parent = null; }
21
- if (parentIndex === void 0) { parentIndex = ''; }
22
- if (!isArrayWithAtLeastOneItem(currentLevelNodes)) {
23
- return [];
24
- }
25
- return currentLevelNodes.map(function (node, idx) {
26
- var index = indexBuilder.nodeIndex(idx.toString(), parentIndex);
27
- var wrapper = {
28
- dataItem: node,
29
- index: index,
30
- parent: parent,
31
- visible: true
32
- };
33
- wrapper.children = mapToTree(findChildren(getter(parentIdField), allNodes || [], getter(idField)(node)), allNodes, parentIdField, idField, wrapper, index);
34
- return wrapper;
35
- });
36
- };
37
- var ɵ1 = mapToTree;
38
- /**
39
- * A directive which encapsulates the retrieval of the child nodes.
40
- */
41
- var FlatDataBindingDirective = /** @class */ (function (_super) {
42
- tslib_1.__extends(FlatDataBindingDirective, _super);
43
- function FlatDataBindingDirective(component) {
44
- var _this = _super.call(this, component) || this;
45
- _this.component = component;
46
- /**
47
- * @hidden
48
- */
49
- _this.loadOnDemand = true;
50
- /**
51
- * @hidden
52
- */
53
- _this.originalData = [];
54
- _this.component.isVisible = function (node) { return _this.visibleNodes.has(node); };
55
- return _this;
56
- }
57
- Object.defineProperty(FlatDataBindingDirective.prototype, "nodes", {
58
- /**
59
- * The nodes which will be displayed by the TreeView.
60
- */
61
- set: function (values) {
62
- this.originalData = values || [];
63
- if (!isNullOrEmptyString(this.parentIdField)) {
64
- var prop = getter(this.parentIdField);
65
- this.component.nodes = this.originalData.filter(compose(isBlank, prop));
66
- this.filterData = mapToTree(this.component.nodes, this.originalData, this.parentIdField, this.idField);
67
- this.updateVisibleNodes(this.filterData);
68
- }
69
- else {
70
- this.component.nodes = this.originalData.slice(0);
71
- }
72
- },
73
- enumerable: true,
74
- configurable: true
75
- });
76
- Object.defineProperty(FlatDataBindingDirective.prototype, "isVisible", {
77
- /**
78
- * @hidden
79
- * A callback which determines whether a TreeView node should be rendered as hidden.
80
- */
81
- set: function (fn) {
82
- this.component.isVisible = fn;
83
- },
84
- enumerable: true,
85
- configurable: true
86
- });
87
- /**
88
- * @hidden
89
- */
90
- FlatDataBindingDirective.prototype.ngOnInit = function () {
91
- var _this = this;
92
- if (isPresent(this.parentIdField) && isPresent(this.idField)) {
93
- var fetchChildren_1 = function (node) {
94
- return findChildren(getter(_this.parentIdField), _this.originalData || [], getter(_this.idField)(node));
95
- };
96
- this.component.hasChildren = function (node) {
97
- return fetchChildren_1(node).length > 0;
98
- };
99
- this.component.children = function (node) { return of(fetchChildren_1(node)); };
100
- this.component.editService = new FlatEditingService(this);
101
- this.component.filterChange.subscribe(this.handleFilterChange.bind(this));
102
- if (this.component.filter) {
103
- this.handleFilterChange(this.component.filter);
104
- }
105
- if (!this.loadOnDemand && isPresent(this.component.preloadChildNodes)) {
106
- this.component.preloadChildNodes();
107
- }
108
- }
109
- };
110
- /**
111
- * @hidden
112
- */
113
- FlatDataBindingDirective.prototype.ngOnChanges = function (changes) {
114
- if (isChanged('parentIdField', changes, false)) {
115
- this.nodes = this.originalData;
116
- }
117
- // should react to changes.loadOnDemand as well - should preload the data or clear the already cached items
118
- if (anyChanged(['nodes', 'loadOnDemand'], changes) && !this.loadOnDemand && isPresent(this.component.preloadChildNodes)) {
119
- this.component.preloadChildNodes();
120
- }
121
- };
122
- tslib_1.__decorate([
123
- Input(),
124
- tslib_1.__metadata("design:type", Array),
125
- tslib_1.__metadata("design:paramtypes", [Array])
126
- ], FlatDataBindingDirective.prototype, "nodes", null);
127
- tslib_1.__decorate([
128
- Input(),
129
- tslib_1.__metadata("design:type", String)
130
- ], FlatDataBindingDirective.prototype, "parentIdField", void 0);
131
- tslib_1.__decorate([
132
- Input(),
133
- tslib_1.__metadata("design:type", String)
134
- ], FlatDataBindingDirective.prototype, "idField", void 0);
135
- tslib_1.__decorate([
136
- Input(),
137
- tslib_1.__metadata("design:type", Boolean)
138
- ], FlatDataBindingDirective.prototype, "loadOnDemand", void 0);
139
- tslib_1.__decorate([
140
- Input(),
141
- tslib_1.__metadata("design:type", Function),
142
- tslib_1.__metadata("design:paramtypes", [Function])
143
- ], FlatDataBindingDirective.prototype, "isVisible", null);
144
- FlatDataBindingDirective = tslib_1.__decorate([
145
- Directive({ selector: "[kendoTreeViewFlatDataBinding]" }),
146
- tslib_1.__metadata("design:paramtypes", [DataBoundComponent])
147
- ], FlatDataBindingDirective);
148
- return FlatDataBindingDirective;
149
- }(FilteringBase));
150
- export { FlatDataBindingDirective };
151
- export { ɵ0, ɵ1 };
package/dist/es/funcs.js DELETED
@@ -1,15 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- /**
6
- * @hidden
7
- * Performs the right-to-left function composition. Functions must have a unary.
8
- */
9
- export var compose = function () {
10
- var args = [];
11
- for (var _i = 0; _i < arguments.length; _i++) {
12
- args[_i] = arguments[_i];
13
- }
14
- return function (data) { return args.reduceRight(function (acc, curr) { return curr(acc); }, data); };
15
- };
@@ -1,152 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import * as tslib_1 from "tslib";
6
- import { Directive, Input, Optional, Host } from '@angular/core';
7
- import { getter } from '@progress/kendo-common';
8
- import { anyChanged, isChanged } from '@progress/kendo-angular-common';
9
- import { DataBoundComponent } from './data-bound-component';
10
- import { isArrayWithAtLeastOneItem, isPresent } from './utils';
11
- import { of } from 'rxjs';
12
- import { HierarchyEditingService } from './drag-and-drop/editing-services/hierarchy-editing.service';
13
- import { DragAndDropDirective } from './drag-and-drop/drag-and-drop.directive';
14
- import { isVisible } from './default-callbacks';
15
- import { IndexBuilderService } from './index-builder.service';
16
- import { FilteringBase } from './filtering-base';
17
- var indexBuilder = new IndexBuilderService();
18
- var mapToWrappers = function (currentLevelNodes, childrenField, parent, parentIndex) {
19
- if (parent === void 0) { parent = null; }
20
- if (parentIndex === void 0) { parentIndex = ''; }
21
- if (!isArrayWithAtLeastOneItem(currentLevelNodes)) {
22
- return [];
23
- }
24
- return currentLevelNodes.map(function (node, idx) {
25
- var index = indexBuilder.nodeIndex(idx.toString(), parentIndex);
26
- var wrapper = {
27
- dataItem: node,
28
- index: index,
29
- parent: parent,
30
- visible: true
31
- };
32
- wrapper.children = mapToWrappers(getter(childrenField)(node), childrenField, wrapper, index);
33
- return wrapper;
34
- });
35
- };
36
- var ɵ0 = mapToWrappers;
37
- /**
38
- * A directive which encapsulates the retrieval of child nodes.
39
- */
40
- var HierarchyBindingDirective = /** @class */ (function (_super) {
41
- tslib_1.__extends(HierarchyBindingDirective, _super);
42
- function HierarchyBindingDirective(component, dragAndDropDirective) {
43
- var _this = _super.call(this, component) || this;
44
- _this.component = component;
45
- _this.dragAndDropDirective = dragAndDropDirective;
46
- /**
47
- * @hidden
48
- */
49
- _this.loadOnDemand = true;
50
- _this.originalData = [];
51
- var shouldFilter = !isPresent(_this.dragAndDropDirective);
52
- _this.component.isVisible = shouldFilter ? function (node) { return _this.visibleNodes.has(node); } : isVisible;
53
- return _this;
54
- }
55
- Object.defineProperty(HierarchyBindingDirective.prototype, "childrenField", {
56
- /**
57
- * The field name which holds the data items of the child component.
58
- */
59
- get: function () {
60
- return this._childrenField;
61
- },
62
- /**
63
- * The field name which holds the data items of the child component.
64
- */
65
- set: function (value) {
66
- if (!value) {
67
- throw new Error("'childrenField' cannot be empty");
68
- }
69
- this._childrenField = value;
70
- },
71
- enumerable: true,
72
- configurable: true
73
- });
74
- Object.defineProperty(HierarchyBindingDirective.prototype, "nodes", {
75
- /**
76
- * The nodes which will be displayed by the TreeView.
77
- */
78
- set: function (values) {
79
- this.originalData = values || [];
80
- this.filterData = mapToWrappers(values, this.childrenField) || [];
81
- this.updateVisibleNodes(this.filterData);
82
- },
83
- enumerable: true,
84
- configurable: true
85
- });
86
- Object.defineProperty(HierarchyBindingDirective.prototype, "isVisible", {
87
- /**
88
- * @hidden
89
- * A callback which determines whether a TreeView node should be rendered as hidden.
90
- */
91
- set: function (fn) {
92
- this.component.isVisible = fn;
93
- },
94
- enumerable: true,
95
- configurable: true
96
- });
97
- HierarchyBindingDirective.prototype.ngOnInit = function () {
98
- var _this = this;
99
- if (isPresent(this.childrenField)) {
100
- this.component.children = function (item) { return of(getter(_this.childrenField)(item)); };
101
- this.component.hasChildren = function (item) {
102
- var children = getter(_this.childrenField)(item);
103
- return Boolean(children && children.length);
104
- };
105
- this.component.editService = new HierarchyEditingService(this);
106
- this.component.filterChange.subscribe(this.handleFilterChange.bind(this));
107
- if (this.component.filter) {
108
- this.handleFilterChange(this.component.filter);
109
- }
110
- if (!this.loadOnDemand && isPresent(this.component.preloadChildNodes)) {
111
- this.component.preloadChildNodes();
112
- }
113
- }
114
- };
115
- HierarchyBindingDirective.prototype.ngOnChanges = function (changes) {
116
- if (isChanged('childrenField', changes, false)) {
117
- this.nodes = this.originalData;
118
- }
119
- // should react to changes.loadOnDemand as well - should preload the data or clear the already cached items
120
- if (anyChanged(['nodes', 'loadOnDemand'], changes) && !this.loadOnDemand && isPresent(this.component.preloadChildNodes)) {
121
- this.component.preloadChildNodes();
122
- }
123
- };
124
- tslib_1.__decorate([
125
- Input(),
126
- tslib_1.__metadata("design:type", String),
127
- tslib_1.__metadata("design:paramtypes", [String])
128
- ], HierarchyBindingDirective.prototype, "childrenField", null);
129
- tslib_1.__decorate([
130
- Input(),
131
- tslib_1.__metadata("design:type", Array),
132
- tslib_1.__metadata("design:paramtypes", [Array])
133
- ], HierarchyBindingDirective.prototype, "nodes", null);
134
- tslib_1.__decorate([
135
- Input(),
136
- tslib_1.__metadata("design:type", Function),
137
- tslib_1.__metadata("design:paramtypes", [Function])
138
- ], HierarchyBindingDirective.prototype, "isVisible", null);
139
- tslib_1.__decorate([
140
- Input(),
141
- tslib_1.__metadata("design:type", Boolean)
142
- ], HierarchyBindingDirective.prototype, "loadOnDemand", void 0);
143
- HierarchyBindingDirective = tslib_1.__decorate([
144
- Directive({ selector: '[kendoTreeViewHierarchyBinding]' }),
145
- tslib_1.__param(1, Optional()), tslib_1.__param(1, Host()),
146
- tslib_1.__metadata("design:paramtypes", [DataBoundComponent,
147
- DragAndDropDirective])
148
- ], HierarchyBindingDirective);
149
- return HierarchyBindingDirective;
150
- }(FilteringBase));
151
- export { HierarchyBindingDirective };
152
- export { ɵ0 };