@progress/kendo-angular-grid 21.4.1 → 22.0.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 (354) hide show
  1. package/column-menu/column-menu-item-base.d.ts +1 -1
  2. package/columns/column-base.d.ts +1 -1
  3. package/common/toolbar-tool-base.directive.d.ts +1 -1
  4. package/editing/toolbar-editing-tool-base.directive.d.ts +1 -1
  5. package/editing-directives/editing-directive-base.d.ts +1 -1
  6. package/editing-directives/row-editing-directive-base.d.ts +1 -1
  7. package/fesm2022/progress-kendo-angular-grid.mjs +666 -666
  8. package/filtering/base-filter-cell.component.d.ts +1 -1
  9. package/filtering/boolean-filter.component.d.ts +1 -1
  10. package/filtering/date-filter.component.d.ts +1 -1
  11. package/filtering/filter-host.directive.d.ts +1 -1
  12. package/filtering/filter-input-wrapper.component.d.ts +1 -1
  13. package/filtering/numeric-filter.component.d.ts +1 -1
  14. package/filtering/operators/filter-operator.base.d.ts +1 -1
  15. package/filtering/string-filter.component.d.ts +1 -1
  16. package/localization/messages.d.ts +1 -1
  17. package/package.json +28 -36
  18. package/schematics/ngAdd/index.js +7 -7
  19. package/selection/selection-default.d.ts +1 -1
  20. package/esm2022/adaptiveness/adaptive-mode.mjs +0 -5
  21. package/esm2022/adaptiveness/adaptive-renderer.component.mjs +0 -1270
  22. package/esm2022/aggregates/aggregate-types.mjs +0 -5
  23. package/esm2022/aggregates/selection-aggregate.service.mjs +0 -200
  24. package/esm2022/aggregates/status-bar-template.directive.mjs +0 -30
  25. package/esm2022/aggregates/status-bar.component.mjs +0 -70
  26. package/esm2022/column-menu/column-chooser-content.component.mjs +0 -318
  27. package/esm2022/column-menu/column-chooser.component.mjs +0 -230
  28. package/esm2022/column-menu/column-list-kb-nav.service.mjs +0 -40
  29. package/esm2022/column-menu/column-list.component.mjs +0 -478
  30. package/esm2022/column-menu/column-locked-change-event.mjs +0 -19
  31. package/esm2022/column-menu/column-menu-autosize-all.component.mjs +0 -89
  32. package/esm2022/column-menu/column-menu-autosize.component.mjs +0 -97
  33. package/esm2022/column-menu/column-menu-chooser.component.mjs +0 -151
  34. package/esm2022/column-menu/column-menu-container.component.mjs +0 -67
  35. package/esm2022/column-menu/column-menu-expandable-item.interface.mjs +0 -5
  36. package/esm2022/column-menu/column-menu-filter.component.mjs +0 -152
  37. package/esm2022/column-menu/column-menu-item-base.mjs +0 -44
  38. package/esm2022/column-menu/column-menu-item-content-template.directive.mjs +0 -45
  39. package/esm2022/column-menu/column-menu-item.component.mjs +0 -514
  40. package/esm2022/column-menu/column-menu-item.directive.mjs +0 -164
  41. package/esm2022/column-menu/column-menu-lock.component.mjs +0 -118
  42. package/esm2022/column-menu/column-menu-position.component.mjs +0 -196
  43. package/esm2022/column-menu/column-menu-settings.interface.mjs +0 -5
  44. package/esm2022/column-menu/column-menu-sort.component.mjs +0 -119
  45. package/esm2022/column-menu/column-menu-stick.component.mjs +0 -120
  46. package/esm2022/column-menu/column-menu-template.directive.mjs +0 -47
  47. package/esm2022/column-menu/column-menu.component.mjs +0 -839
  48. package/esm2022/column-menu/column-menu.service.mjs +0 -71
  49. package/esm2022/column-menu/column-sticky-change-event.mjs +0 -19
  50. package/esm2022/column-menu/column-visibility-change-event.mjs +0 -19
  51. package/esm2022/column-menu/utils.mjs +0 -52
  52. package/esm2022/column-resizing/column-handle.directive.mjs +0 -499
  53. package/esm2022/column-resizing/column-resize.interface.mjs +0 -5
  54. package/esm2022/column-resizing/column-resizing.service.mjs +0 -214
  55. package/esm2022/column-resizing/table.directive.mjs +0 -141
  56. package/esm2022/columns/cell-rowspan.mjs +0 -5
  57. package/esm2022/columns/checkbox-column.component.mjs +0 -106
  58. package/esm2022/columns/column-base.mjs +0 -432
  59. package/esm2022/columns/column-common.mjs +0 -73
  60. package/esm2022/columns/column-group.component.mjs +0 -135
  61. package/esm2022/columns/column-list.mjs +0 -94
  62. package/esm2022/columns/column.component.mjs +0 -198
  63. package/esm2022/columns/columns-container.mjs +0 -101
  64. package/esm2022/columns/command-column.component.mjs +0 -80
  65. package/esm2022/columns/reorder-column.component.mjs +0 -114
  66. package/esm2022/columns/sort-settings.mjs +0 -18
  67. package/esm2022/columns/span-column.component.mjs +0 -195
  68. package/esm2022/common/adaptiveness.service.mjs +0 -72
  69. package/esm2022/common/cell-click-event-args.interface.mjs +0 -5
  70. package/esm2022/common/clipboard-types.mjs +0 -5
  71. package/esm2022/common/clipboard.directive.mjs +0 -197
  72. package/esm2022/common/clipboard.service.mjs +0 -221
  73. package/esm2022/common/column-info.service.mjs +0 -92
  74. package/esm2022/common/create-form-group.mjs +0 -5
  75. package/esm2022/common/data-layout-mode.mjs +0 -5
  76. package/esm2022/common/default-track-by.mjs +0 -13
  77. package/esm2022/common/dom-events.service.mjs +0 -27
  78. package/esm2022/common/error-messages.mjs +0 -64
  79. package/esm2022/common/event-emitter.mjs +0 -39
  80. package/esm2022/common/fetch-data-callback.mjs +0 -5
  81. package/esm2022/common/field-datatype.mjs +0 -5
  82. package/esm2022/common/filter-descriptor-differ.mjs +0 -69
  83. package/esm2022/common/filter-operator.interface.mjs +0 -5
  84. package/esm2022/common/grid-col-size.mjs +0 -5
  85. package/esm2022/common/id.service.mjs +0 -59
  86. package/esm2022/common/pager-settings.mjs +0 -20
  87. package/esm2022/common/preventable-event.mjs +0 -24
  88. package/esm2022/common/provider.service.mjs +0 -42
  89. package/esm2022/common/remove-confirmation.mjs +0 -5
  90. package/esm2022/common/resizable-settings.mjs +0 -9
  91. package/esm2022/common/single-popup.service.mjs +0 -158
  92. package/esm2022/common/size-options.mjs +0 -5
  93. package/esm2022/common/sort.service.mjs +0 -14
  94. package/esm2022/common/toolbar-tool-base.directive.mjs +0 -85
  95. package/esm2022/constants.mjs +0 -16
  96. package/esm2022/data/change-event-args.interface.mjs +0 -5
  97. package/esm2022/data/change-notification.service.mjs +0 -30
  98. package/esm2022/data/data-item.interface.mjs +0 -5
  99. package/esm2022/data/data-mapping.service.mjs +0 -136
  100. package/esm2022/data/data.collection.mjs +0 -87
  101. package/esm2022/data/data.iterators.mjs +0 -221
  102. package/esm2022/data/grid-item.interface.mjs +0 -5
  103. package/esm2022/data/group-footer-item.interface.mjs +0 -5
  104. package/esm2022/data/group-item.interface.mjs +0 -5
  105. package/esm2022/databinding.directive.mjs +0 -233
  106. package/esm2022/directives.mjs +0 -504
  107. package/esm2022/dragdrop/column-reorder-config.mjs +0 -5
  108. package/esm2022/dragdrop/column-reorder-event.mjs +0 -31
  109. package/esm2022/dragdrop/column-reorder.service.mjs +0 -20
  110. package/esm2022/dragdrop/common.mjs +0 -69
  111. package/esm2022/dragdrop/context-types.mjs +0 -5
  112. package/esm2022/dragdrop/drag-and-drop.service.mjs +0 -65
  113. package/esm2022/dragdrop/drag-hint.service.mjs +0 -137
  114. package/esm2022/dragdrop/draggable-column.directive.mjs +0 -137
  115. package/esm2022/dragdrop/drop-cue.service.mjs +0 -46
  116. package/esm2022/dragdrop/drop-target.directive.mjs +0 -71
  117. package/esm2022/editing/add-command-tool.directive.mjs +0 -59
  118. package/esm2022/editing/add-command.directive.mjs +0 -93
  119. package/esm2022/editing/add-event-args.interface.mjs +0 -5
  120. package/esm2022/editing/cancel-command-tool.directive.mjs +0 -64
  121. package/esm2022/editing/cancel-command.directive.mjs +0 -127
  122. package/esm2022/editing/cancel-event-args.interface.mjs +0 -5
  123. package/esm2022/editing/cell-close-event.mjs +0 -38
  124. package/esm2022/editing/edit-command-tool.directive.mjs +0 -60
  125. package/esm2022/editing/edit-command.directive.mjs +0 -124
  126. package/esm2022/editing/edit-event-args.interface.mjs +0 -5
  127. package/esm2022/editing/edit-row-options.interface.mjs +0 -5
  128. package/esm2022/editing/edit-template.directive.mjs +0 -43
  129. package/esm2022/editing/edit.service.mjs +0 -182
  130. package/esm2022/editing/form/dialog-form.component.mjs +0 -102
  131. package/esm2022/editing/form/form-formfield.component.mjs +0 -188
  132. package/esm2022/editing/form/form.component.mjs +0 -169
  133. package/esm2022/editing/form/index.mjs +0 -8
  134. package/esm2022/editing/form/models.mjs +0 -5
  135. package/esm2022/editing/local-data-changes.service.mjs +0 -18
  136. package/esm2022/editing/remove-command-tool.directive.mjs +0 -61
  137. package/esm2022/editing/remove-command.directive.mjs +0 -123
  138. package/esm2022/editing/remove-event-args.interface.mjs +0 -5
  139. package/esm2022/editing/save-command-tool.directive.mjs +0 -65
  140. package/esm2022/editing/save-command.directive.mjs +0 -126
  141. package/esm2022/editing/save-event-args.interface.mjs +0 -5
  142. package/esm2022/editing/toolbar-editing-tool-base.directive.mjs +0 -99
  143. package/esm2022/editing-directives/create-form-group-args.interface.mjs +0 -5
  144. package/esm2022/editing-directives/edit-service.interface.mjs +0 -5
  145. package/esm2022/editing-directives/editing-directive-base.mjs +0 -167
  146. package/esm2022/editing-directives/external-editing.directive.mjs +0 -151
  147. package/esm2022/editing-directives/in-cell-editing.directive.mjs +0 -97
  148. package/esm2022/editing-directives/local-edit.service.mjs +0 -64
  149. package/esm2022/editing-directives/local-row-edit.service.mjs +0 -13
  150. package/esm2022/editing-directives/reactive-editing.directive.mjs +0 -60
  151. package/esm2022/editing-directives/row-editing-directive-base.mjs +0 -53
  152. package/esm2022/editing-directives/template-editing.directive.mjs +0 -72
  153. package/esm2022/editing-directives/utils.mjs +0 -18
  154. package/esm2022/excel/excel-command-tool.directive.mjs +0 -58
  155. package/esm2022/excel/excel-command.directive.mjs +0 -98
  156. package/esm2022/excel/excel-export-event.mjs +0 -18
  157. package/esm2022/excel/excel.component.mjs +0 -223
  158. package/esm2022/excel/excel.module.mjs +0 -45
  159. package/esm2022/excel/excel.service.mjs +0 -29
  160. package/esm2022/filtering/base-filter-cell.component.mjs +0 -174
  161. package/esm2022/filtering/boolean-filter.component.mjs +0 -83
  162. package/esm2022/filtering/cell/autocomplete-filter-cell.component.mjs +0 -114
  163. package/esm2022/filtering/cell/boolean-filter-cell.component.mjs +0 -113
  164. package/esm2022/filtering/cell/date-filter-cell.component.mjs +0 -141
  165. package/esm2022/filtering/cell/filter-cell-component.factory.mjs +0 -19
  166. package/esm2022/filtering/cell/filter-cell-host.directive.mjs +0 -33
  167. package/esm2022/filtering/cell/filter-cell-operators.component.mjs +0 -242
  168. package/esm2022/filtering/cell/filter-cell-template.directive.mjs +0 -46
  169. package/esm2022/filtering/cell/filter-cell-wrapper.component.mjs +0 -74
  170. package/esm2022/filtering/cell/filter-cell.component.mjs +0 -91
  171. package/esm2022/filtering/cell/numeric-filter-cell.component.mjs +0 -155
  172. package/esm2022/filtering/cell/string-filter-cell.component.mjs +0 -127
  173. package/esm2022/filtering/date-filter.component.mjs +0 -172
  174. package/esm2022/filtering/filter-component.interface.mjs +0 -5
  175. package/esm2022/filtering/filter-host.directive.mjs +0 -58
  176. package/esm2022/filtering/filter-input-wrapper.component.mjs +0 -119
  177. package/esm2022/filtering/filter-input.directive.mjs +0 -123
  178. package/esm2022/filtering/filter-row.component.mjs +0 -131
  179. package/esm2022/filtering/filter.service.mjs +0 -44
  180. package/esm2022/filtering/filterable.mjs +0 -16
  181. package/esm2022/filtering/menu/boolean-filter-menu.component.mjs +0 -167
  182. package/esm2022/filtering/menu/date-filter-menu-input.component.mjs +0 -179
  183. package/esm2022/filtering/menu/date-filter-menu.component.mjs +0 -212
  184. package/esm2022/filtering/menu/filter-menu-component.factory.mjs +0 -19
  185. package/esm2022/filtering/menu/filter-menu-container.component.mjs +0 -418
  186. package/esm2022/filtering/menu/filter-menu-dropdownlist.directive.mjs +0 -44
  187. package/esm2022/filtering/menu/filter-menu-host.directive.mjs +0 -46
  188. package/esm2022/filtering/menu/filter-menu-input-wrapper.component.mjs +0 -158
  189. package/esm2022/filtering/menu/filter-menu-template.directive.mjs +0 -48
  190. package/esm2022/filtering/menu/filter-menu.component.mjs +0 -221
  191. package/esm2022/filtering/menu/filter-radio-button.directive.mjs +0 -34
  192. package/esm2022/filtering/menu/menu-tabbing.service.mjs +0 -22
  193. package/esm2022/filtering/menu/numeric-filter-menu-input.component.mjs +0 -184
  194. package/esm2022/filtering/menu/numeric-filter-menu.component.mjs +0 -230
  195. package/esm2022/filtering/menu/string-filter-menu-input.component.mjs +0 -107
  196. package/esm2022/filtering/menu/string-filter-menu.component.mjs +0 -198
  197. package/esm2022/filtering/multicheckbox-filter.component.mjs +0 -324
  198. package/esm2022/filtering/numeric-filter.component.mjs +0 -145
  199. package/esm2022/filtering/operators/after-eq-filter-operator.component.mjs +0 -72
  200. package/esm2022/filtering/operators/after-filter-operator.component.mjs +0 -72
  201. package/esm2022/filtering/operators/before-eq-filter-operator.component.mjs +0 -72
  202. package/esm2022/filtering/operators/before-filter-operator.component.mjs +0 -72
  203. package/esm2022/filtering/operators/contains-filter-operator.component.mjs +0 -63
  204. package/esm2022/filtering/operators/ends-with-filter-operator.component.mjs +0 -63
  205. package/esm2022/filtering/operators/eq-filter-operator.component.mjs +0 -111
  206. package/esm2022/filtering/operators/filter-operator.base.mjs +0 -101
  207. package/esm2022/filtering/operators/gt-filter-operator.component.mjs +0 -63
  208. package/esm2022/filtering/operators/gte-filter-operator.component.mjs +0 -63
  209. package/esm2022/filtering/operators/is-empty-filter-operator.component.mjs +0 -63
  210. package/esm2022/filtering/operators/is-not-empty-filter-operator.component.mjs +0 -63
  211. package/esm2022/filtering/operators/is-not-null-filter-operator.component.mjs +0 -110
  212. package/esm2022/filtering/operators/isnull-filter-operator.component.mjs +0 -110
  213. package/esm2022/filtering/operators/lt-filter-operator.component.mjs +0 -63
  214. package/esm2022/filtering/operators/lte-filter-operator.component.mjs +0 -63
  215. package/esm2022/filtering/operators/neq-filter-operator.component.mjs +0 -110
  216. package/esm2022/filtering/operators/not-contains-filter-operator.component.mjs +0 -63
  217. package/esm2022/filtering/operators/starts-with-filter-operator.component.mjs +0 -63
  218. package/esm2022/filtering/string-filter.component.mjs +0 -90
  219. package/esm2022/grid.component.mjs +0 -4598
  220. package/esm2022/grid.module.mjs +0 -241
  221. package/esm2022/grouping/group-footer-template.directive.mjs +0 -44
  222. package/esm2022/grouping/group-header-column-template.directive.mjs +0 -45
  223. package/esm2022/grouping/group-header-template.directive.mjs +0 -46
  224. package/esm2022/grouping/group-header.component.mjs +0 -351
  225. package/esm2022/grouping/group-info.service.mjs +0 -43
  226. package/esm2022/grouping/group-key.interface.mjs +0 -5
  227. package/esm2022/grouping/group-panel.component.mjs +0 -487
  228. package/esm2022/grouping/group-rows-args.interface.mjs +0 -5
  229. package/esm2022/grouping/group-settings.mjs +0 -5
  230. package/esm2022/grouping/groups.service.mjs +0 -69
  231. package/esm2022/grouping/utils.mjs +0 -14
  232. package/esm2022/highlight/highlight-item.mjs +0 -5
  233. package/esm2022/highlight/highlight.directive.mjs +0 -132
  234. package/esm2022/index.mjs +0 -221
  235. package/esm2022/layout/browser-support.service.mjs +0 -94
  236. package/esm2022/layout/resizable.directive.mjs +0 -83
  237. package/esm2022/layout/resize.service.mjs +0 -29
  238. package/esm2022/layout/responsive.service.mjs +0 -34
  239. package/esm2022/layout/row-sync.mjs +0 -47
  240. package/esm2022/layout/sizing-options.service.mjs +0 -18
  241. package/esm2022/localization/custom-messages.component.mjs +0 -54
  242. package/esm2022/localization/localized-messages.directive.mjs +0 -39
  243. package/esm2022/localization/messages.mjs +0 -895
  244. package/esm2022/navigation/default-focusable-element.mjs +0 -50
  245. package/esm2022/navigation/focus-group.mjs +0 -73
  246. package/esm2022/navigation/focus-root.mjs +0 -50
  247. package/esm2022/navigation/focusable-element.interface.mjs +0 -5
  248. package/esm2022/navigation/focusable.directive.mjs +0 -150
  249. package/esm2022/navigation/grid-focusable-element.mjs +0 -28
  250. package/esm2022/navigation/item-map.mjs +0 -59
  251. package/esm2022/navigation/logical-cell.directive.mjs +0 -224
  252. package/esm2022/navigation/logical-cell.interface.mjs +0 -5
  253. package/esm2022/navigation/logical-row.directive.mjs +0 -131
  254. package/esm2022/navigation/logical-row.interface.mjs +0 -5
  255. package/esm2022/navigation/navigable-settings.mjs +0 -5
  256. package/esm2022/navigation/navigation-cell.interface.mjs +0 -5
  257. package/esm2022/navigation/navigation-change.interface.mjs +0 -5
  258. package/esm2022/navigation/navigation-cursor.mjs +0 -224
  259. package/esm2022/navigation/navigation-metadata.mjs +0 -35
  260. package/esm2022/navigation/navigation-mode.mjs +0 -5
  261. package/esm2022/navigation/navigation-model.mjs +0 -138
  262. package/esm2022/navigation/navigation-row.interface.mjs +0 -5
  263. package/esm2022/navigation/navigation.service.mjs +0 -998
  264. package/esm2022/navigation/toolbar-tool-name.mjs +0 -18
  265. package/esm2022/package-metadata.mjs +0 -16
  266. package/esm2022/pdf/export-element.mjs +0 -135
  267. package/esm2022/pdf/grid-query.mjs +0 -45
  268. package/esm2022/pdf/pdf-command-tool.directive.mjs +0 -60
  269. package/esm2022/pdf/pdf-command.directive.mjs +0 -98
  270. package/esm2022/pdf/pdf-export-event.mjs +0 -16
  271. package/esm2022/pdf/pdf-margin.component.mjs +0 -38
  272. package/esm2022/pdf/pdf-margin.interface.mjs +0 -5
  273. package/esm2022/pdf/pdf-template.directive.mjs +0 -43
  274. package/esm2022/pdf/pdf.component.mjs +0 -331
  275. package/esm2022/pdf/pdf.module.mjs +0 -47
  276. package/esm2022/pdf/pdf.service.mjs +0 -42
  277. package/esm2022/progress-kendo-angular-grid.mjs +0 -8
  278. package/esm2022/rendering/cell-loading.template.directive.mjs +0 -39
  279. package/esm2022/rendering/cell-template.directive.mjs +0 -44
  280. package/esm2022/rendering/cell.component.mjs +0 -717
  281. package/esm2022/rendering/common/cell-context.mjs +0 -13
  282. package/esm2022/rendering/common/col-group.component.mjs +0 -98
  283. package/esm2022/rendering/common/dom-queries.mjs +0 -162
  284. package/esm2022/rendering/common/field-accessor.pipe.mjs +0 -48
  285. package/esm2022/rendering/common/format.pipe.mjs +0 -37
  286. package/esm2022/rendering/common/loading.component.mjs +0 -60
  287. package/esm2022/rendering/common/row-args.mjs +0 -5
  288. package/esm2022/rendering/common/row-class.mjs +0 -5
  289. package/esm2022/rendering/common/spacer.component.mjs +0 -62
  290. package/esm2022/rendering/constants.mjs +0 -20
  291. package/esm2022/rendering/details/detail-collapse-event.mjs +0 -27
  292. package/esm2022/rendering/details/detail-expand-event.mjs +0 -27
  293. package/esm2022/rendering/details/detail-template.directive.mjs +0 -61
  294. package/esm2022/rendering/details/details.service.mjs +0 -56
  295. package/esm2022/rendering/details-expand.directive.mjs +0 -136
  296. package/esm2022/rendering/footer/footer-template.directive.mjs +0 -48
  297. package/esm2022/rendering/footer/footer.component.mjs +0 -266
  298. package/esm2022/rendering/grid-table.directive.mjs +0 -52
  299. package/esm2022/rendering/groups-expand.directive.mjs +0 -149
  300. package/esm2022/rendering/header/header-template.directive.mjs +0 -45
  301. package/esm2022/rendering/header/header.component.mjs +0 -1055
  302. package/esm2022/rendering/list.component.mjs +0 -1176
  303. package/esm2022/rendering/loading-template.directive.mjs +0 -38
  304. package/esm2022/rendering/no-records-template.directive.mjs +0 -38
  305. package/esm2022/rendering/rowspan.service.mjs +0 -24
  306. package/esm2022/rendering/table-body.component.mjs +0 -1250
  307. package/esm2022/rendering/toolbar/toolbar-focusable.directive.mjs +0 -83
  308. package/esm2022/rendering/toolbar/toolbar-navigation.service.mjs +0 -58
  309. package/esm2022/rendering/toolbar/toolbar-position.mjs +0 -5
  310. package/esm2022/rendering/toolbar/toolbar-template.directive.mjs +0 -55
  311. package/esm2022/rendering/toolbar/toolbar.component.mjs +0 -159
  312. package/esm2022/rendering/toolbar/tools/ai-assistant/ai-assistant.component.mjs +0 -272
  313. package/esm2022/rendering/toolbar/tools/ai-assistant/ai-request-response.service.mjs +0 -624
  314. package/esm2022/rendering/toolbar/tools/ai-assistant/ai-tool.directive.mjs +0 -273
  315. package/esm2022/rendering/toolbar/tools/ai-assistant/models.mjs +0 -43
  316. package/esm2022/rendering/toolbar/tools/ai-assistant/utils.mjs +0 -92
  317. package/esm2022/rendering/toolbar/tools/column-chooser-tool.directive.mjs +0 -238
  318. package/esm2022/rendering/toolbar/tools/filter-command-tool.directive.mjs +0 -219
  319. package/esm2022/rendering/toolbar/tools/filter-tool-wrapper.component.mjs +0 -151
  320. package/esm2022/rendering/toolbar/tools/filter-toolbar-tool.component.mjs +0 -223
  321. package/esm2022/rendering/toolbar/tools/group-command-tool.directive.mjs +0 -208
  322. package/esm2022/rendering/toolbar/tools/group-toolbar-tool.component.mjs +0 -451
  323. package/esm2022/rendering/toolbar/tools/select-all-command-tool.directive.mjs +0 -93
  324. package/esm2022/rendering/toolbar/tools/sort-command-tool.directive.mjs +0 -222
  325. package/esm2022/rendering/toolbar/tools/sort-toolbar-tool.component.mjs +0 -245
  326. package/esm2022/row-reordering/drag-handle-template.directive.mjs +0 -44
  327. package/esm2022/row-reordering/drag-hint-template.directive.mjs +0 -42
  328. package/esm2022/row-reordering/row-reorder.service.mjs +0 -280
  329. package/esm2022/row-reordering/types.mjs +0 -5
  330. package/esm2022/row-reordering/utils.mjs +0 -88
  331. package/esm2022/scrolling/content-scroll-event.mjs +0 -5
  332. package/esm2022/scrolling/row-height.service.mjs +0 -55
  333. package/esm2022/scrolling/scroll-bottom-event.mjs +0 -5
  334. package/esm2022/scrolling/scroll-request.service.mjs +0 -24
  335. package/esm2022/scrolling/scroll-sync.service.mjs +0 -80
  336. package/esm2022/scrolling/scroller.service.mjs +0 -254
  337. package/esm2022/scrolling/scrollmode.mjs +0 -5
  338. package/esm2022/scrolling/suspend.service.mjs +0 -17
  339. package/esm2022/selection/cell-selection.service.mjs +0 -349
  340. package/esm2022/selection/marquee.directive.mjs +0 -188
  341. package/esm2022/selection/pair-set.mjs +0 -158
  342. package/esm2022/selection/selectall-checkbox.directive.mjs +0 -143
  343. package/esm2022/selection/selection-checkbox.directive.mjs +0 -132
  344. package/esm2022/selection/selection-default.mjs +0 -208
  345. package/esm2022/selection/selection.directive.mjs +0 -53
  346. package/esm2022/selection/selection.service.mjs +0 -466
  347. package/esm2022/selection/types.mjs +0 -5
  348. package/esm2022/state-management/grid-state.models.mjs +0 -26
  349. package/esm2022/state-management/redo-command-tool.mjs +0 -74
  350. package/esm2022/state-management/undo-command-tool.mjs +0 -74
  351. package/esm2022/state-management/undo-redo.directive.mjs +0 -249
  352. package/esm2022/state-management/undo-redo.service.mjs +0 -21
  353. package/esm2022/state-management/undo-redo.stack.mjs +0 -238
  354. package/esm2022/utils.mjs +0 -216
@@ -1,71 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { MenuTabbingService } from './../filtering/menu/menu-tabbing.service';
6
- import { Injectable, EventEmitter } from '@angular/core';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./../filtering/menu/menu-tabbing.service";
9
- /**
10
- * Represents the service passed to the [`ColumnMenuTemplate`]({% slug api_grid_columnmenutemplatedirective %}) directive.
11
- *
12
- * Use this service to interact with the column menu from a custom template.
13
- *
14
- * @example
15
- * ```html
16
- * <kendo-grid [data]="data" [columnMenu]="true">
17
- * <ng-template kendoGridColumnMenuTemplate let-service="service">
18
- * <span class="k-icon k-font-icon k-i-x" (click)="service.close()"></span>
19
- * <kendo-grid-columnmenu-sort [service]="service"></kendo-grid-columnmenu-sort>
20
- * </ng-template>
21
- * <kendo-grid-column field="Field1"></kendo-grid-column>
22
- * </kendo-grid>
23
- * ```
24
- */
25
- export class ColumnMenuService {
26
- /**
27
- * @hidden
28
- */
29
- menuTabbingService;
30
- /**
31
- * @hidden
32
- */
33
- closeMenu = new EventEmitter();
34
- /**
35
- * @hidden
36
- */
37
- column;
38
- /**
39
- * @hidden
40
- */
41
- sort;
42
- /**
43
- * @hidden
44
- */
45
- filter;
46
- /**
47
- * @hidden
48
- */
49
- sortable;
50
- /**
51
- * @hidden
52
- */
53
- columnMenuContainer;
54
- /**
55
- * @hidden
56
- */
57
- constructor(menuTabbingService) {
58
- this.menuTabbingService = menuTabbingService;
59
- }
60
- /**
61
- * Closes the column menu.
62
- */
63
- close() {
64
- this.closeMenu.emit();
65
- }
66
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuService, deps: [{ token: i1.MenuTabbingService }], target: i0.ɵɵFactoryTarget.Injectable });
67
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuService });
68
- }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuService, decorators: [{
70
- type: Injectable
71
- }], ctorParameters: () => [{ type: i1.MenuTabbingService }] });
@@ -1,19 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- /**
6
- * Arguments for the `columnStickyChange` event.
7
- */
8
- export class ColumnStickyChangeEvent {
9
- /**
10
- * The columns whose sticky state is changed.
11
- */
12
- columns;
13
- /**
14
- * @hidden
15
- */
16
- constructor(columns) {
17
- this.columns = columns;
18
- }
19
- }
@@ -1,19 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- /**
6
- * Arguments for the `columnVisibilityChange` event.
7
- */
8
- export class ColumnVisibilityChangeEvent {
9
- /**
10
- * The columns whose visibility is changed.
11
- */
12
- columns;
13
- /**
14
- * @hidden
15
- */
16
- constructor(columns) {
17
- this.columns = columns;
18
- }
19
- }
@@ -1,52 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 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
- */
8
- export const hasFilter = (settings, column) => settings.filter !== false && column.field && column.filterable;
9
- /**
10
- * @hidden
11
- */
12
- export const hasSort = (settings, column) => settings.sort !== false && column.field && column.sortable;
13
- /**
14
- * @hidden
15
- */
16
- export const hasLock = (settings, column) => settings.lock && column.lockable && !(column.parent && !column.parent.isSpanColumn);
17
- /**
18
- * @hidden
19
- */
20
- export const hasStick = (settings, column) => settings.stick && column.stickable && !(column.parent && !column.parent.isSpanColumn);
21
- /**
22
- * @hidden
23
- */
24
- export const hasPosition = (settings, column) => settings.setColumnPosition && (column.stickable || column.lockable) && !(column.parent && !column.parent.isSpanColumn);
25
- /**
26
- * @hidden
27
- */
28
- export const hasColumnChooser = (settings) => settings.columnChooser !== false;
29
- /**
30
- * @hidden
31
- */
32
- export const hasAutoSizeColumn = (settings) => settings.autoSizeColumn;
33
- /**
34
- * @hidden
35
- */
36
- export const hasAutoSizeAllColumns = (settings) => settings.autoSizeAllColumns;
37
- /**
38
- * @hidden
39
- */
40
- export const autoSizeColumn = (grid, service, column) => {
41
- column ? grid.autoFitColumn(column) : grid.autoFitColumns();
42
- service.close();
43
- };
44
- /**
45
- * @hidden
46
- */
47
- export const hasItems = (settings, column) => hasAutoSizeAllColumns(settings) ||
48
- hasColumnChooser(settings) ||
49
- hasFilter(settings, column) ||
50
- hasAutoSizeColumn(settings) ||
51
- hasLock(settings, column) ||
52
- hasSort(settings, column);
@@ -1,499 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { ChangeDetectorRef, Directive, ElementRef, Host, HostBinding, HostListener, Input, NgZone } from '@angular/core';
6
- import { Subscription, of } from 'rxjs';
7
- import { isBlank, isPresent, isTruthy } from '../utils';
8
- import { ColumnBase } from '../columns/column-base';
9
- import { expandColumns, leafColumns, columnsToRender } from '../columns/column-common';
10
- import { DraggableDirective, isDocumentAvailable } from '@progress/kendo-angular-common';
11
- import { ColumnResizingService } from './column-resizing.service';
12
- import { delay, takeUntil, filter, take, tap, switchMap, map } from 'rxjs/operators';
13
- import { ColumnInfoService } from '../common/column-info.service';
14
- import { ContextService } from '../common/provider.service';
15
- import * as i0 from "@angular/core";
16
- import * as i1 from "@progress/kendo-angular-common";
17
- import * as i2 from "./column-resizing.service";
18
- import * as i3 from "../common/provider.service";
19
- import * as i4 from "../common/column-info.service";
20
- /**
21
- * @hidden
22
- */
23
- const fromPercentage = (value, percent) => {
24
- const sign = percent < 0 ? -1 : 1;
25
- return Math.ceil((Math.abs(percent) / 100) * value) * sign;
26
- };
27
- /**
28
- * @hidden
29
- */
30
- const toPercentage = (value, whole) => (value / whole) * 100;
31
- /**
32
- * @hidden
33
- */
34
- const headerWidth = (handle) => handle.nativeElement.parentElement.getBoundingClientRect().width;
35
- /**
36
- * @hidden
37
- */
38
- const adjacentColumnWidth = (handle) => handle.nativeElement.parentElement.nextElementSibling?.getBoundingClientRect().width;
39
- /**
40
- * @hidden
41
- */
42
- const adjacentColumnInGroupWidth = (handle, rowIndex, colIndex) => {
43
- const tableElement = handle.nativeElement.closest('.k-grid-header-table');
44
- const selector = (rowAttribute) => `tr[${rowAttribute}="${rowIndex}"] th[aria-colindex="${colIndex}"]`;
45
- const thElement = tableElement.querySelector([selector('aria-rowindex'), selector('data-kendo-grid-row-index')]);
46
- return thElement.getBoundingClientRect().width;
47
- };
48
- /**
49
- * @hidden
50
- */
51
- const allLeafColumns = columns => expandColumns(columns)
52
- .filter(c => !c.isColumnGroup);
53
- /**
54
- * @hidden
55
- */
56
- const createMoveStream = (service, draggable) => mouseDown => draggable.kendoDrag.pipe(takeUntil(draggable.kendoRelease.pipe(tap(() => service.end()))), map(({ pageX }) => ({
57
- originalX: mouseDown.pageX,
58
- pageX
59
- })));
60
- /**
61
- * @hidden
62
- */
63
- const preventOnDblClick = release => mouseDown => of(mouseDown).pipe(delay(150), takeUntil(release));
64
- /**
65
- * @hidden
66
- */
67
- const isInSpanColumn = column => !!(column.parent && column.parent.isSpanColumn);
68
- /**
69
- * @hidden
70
- *
71
- * Calculates the column index. If the column is stated in `SpanColumn`,
72
- * the index for all child columns equals the index of the first child.
73
- */
74
- const indexOf = (target, list) => {
75
- let index = 0;
76
- let ignore = 0;
77
- let skip = 0;
78
- while (index < list.length) {
79
- const current = list[index];
80
- const isParentSpanColumn = isInSpanColumn(current);
81
- if (current === target) {
82
- break;
83
- }
84
- if ((ignore-- <= 0) && isParentSpanColumn) {
85
- ignore = current.parent.children.length - 1;
86
- skip += ignore;
87
- }
88
- index++;
89
- }
90
- return index - skip;
91
- };
92
- /**
93
- * @hidden
94
- */
95
- export class ColumnHandleDirective {
96
- draggable;
97
- element;
98
- service;
99
- zone;
100
- cdr;
101
- ctx;
102
- columnInfoService;
103
- isLast;
104
- columns = [];
105
- column;
106
- get visible() {
107
- if (this.isConstrainedMode && (this.isLast || this.isLastInGroup(this.column))) {
108
- return 'none';
109
- }
110
- return this.column.resizable ? 'block' : 'none';
111
- }
112
- get leftStyle() {
113
- return isTruthy(this.rtl) ? 0 : null;
114
- }
115
- get rightStyle() {
116
- return isTruthy(this.rtl) ? null : 0;
117
- }
118
- get isConstrainedMode() {
119
- const isConstrainedMode = this.ctx.grid?.resizable === 'constrained';
120
- const isUnconstrainedMode = this.ctx.grid?.resizable === true || this.ctx.grid?.resizable === 'unconstrained';
121
- const constrainedNoShift = isConstrainedMode && !this.service.isShiftPressed;
122
- const unconstrainedWithShift = isUnconstrainedMode && this.service.isShiftPressed;
123
- return constrainedNoShift || unconstrainedWithShift;
124
- }
125
- subscriptions = new Subscription();
126
- rtl = false;
127
- totalChildrenSum = 0;
128
- childrenColumns = [];
129
- minWidthTotal = 0;
130
- foundColumn;
131
- autoFit() {
132
- this.service.autoFitResize = true;
133
- const allLeafs = allLeafColumns(this.columns);
134
- const currentLeafs = leafColumns([this.column]).filter(column => isTruthy(column.resizable));
135
- const columnInfo = currentLeafs.map(column => {
136
- const isParentSpan = isInSpanColumn(column);
137
- const isLastInSpan = isParentSpan ? column.parent.children.last === column : false;
138
- const index = indexOf(column, allLeafs);
139
- return {
140
- column,
141
- headerIndex: this.columnsForLevel(column.level).indexOf(column),
142
- index,
143
- isLastInSpan,
144
- isParentSpan,
145
- level: column.level
146
- };
147
- });
148
- currentLeafs.forEach(column => column.width = 0);
149
- this.service.measureColumns(columnInfo);
150
- }
151
- constructor(draggable, element, service, zone, cdr, ctx, columnInfoService) {
152
- this.draggable = draggable;
153
- this.element = element;
154
- this.service = service;
155
- this.zone = zone;
156
- this.cdr = cdr;
157
- this.ctx = ctx;
158
- this.columnInfoService = columnInfoService;
159
- }
160
- ngOnInit() {
161
- if (isDocumentAvailable() && isBlank(this.column.width)) {
162
- this.column.implicitWidth = headerWidth(this.element);
163
- }
164
- const service = this.service.changes.pipe(filter(() => this.column.resizable), filter(e => isPresent(e.columns.find(column => column === this.column))));
165
- this.subscriptions.add(service.pipe(filter(e => e.type === 'start'))
166
- .subscribe(this.initState.bind(this)));
167
- this.subscriptions.add(service.pipe(filter(e => e.type === 'resizeColumn'))
168
- .subscribe(this.resize.bind(this)));
169
- this.subscriptions.add(this.service.changes.pipe(filter(e => e.type === 'start'), filter(this.shouldUpdate.bind(this)), take(1) //on first resize only
170
- ).subscribe(this.initColumnWidth.bind(this)));
171
- this.subscriptions.add(this.zone.runOutsideAngular(() => this.draggable.kendoPress.pipe(tap(this.stopPropagation), tap(() => this.service.start(this.column)), switchMap(preventOnDblClick(this.draggable.kendoRelease)), switchMap(createMoveStream(this.service, this.draggable)))
172
- .subscribe(({ pageX, originalX }) => {
173
- const delta = pageX - originalX;
174
- const percent = toPercentage(delta, this.column.resizeStartWidth || this.column.width);
175
- this.service.resizeColumns(percent);
176
- })));
177
- this.subscriptions.add(service.pipe(filter(e => e.type === 'autoFitComplete'))
178
- .subscribe(this.sizeToFit.bind(this)));
179
- this.subscriptions.add(service.pipe(filter(e => e.type === 'triggerAutoFit'))
180
- .subscribe(this.autoFit.bind(this)));
181
- this.subscriptions.add(this.ctx.localization.changes.subscribe(({ rtl }) => this.rtl = rtl));
182
- }
183
- ngOnDestroy() {
184
- if (this.subscriptions) {
185
- this.subscriptions.unsubscribe();
186
- }
187
- }
188
- shouldUpdate() {
189
- return !allLeafColumns(this.columns)
190
- .map(column => column.width || (this.isConstrainedMode && !column.width && column.implicitWidth))
191
- .some(isBlank);
192
- }
193
- initColumnWidth() {
194
- if (!isDocumentAvailable()) {
195
- return;
196
- }
197
- this.column.width = headerWidth(this.element);
198
- if (this.isConstrainedMode) {
199
- this.column.resizeStartWidth = this.column.width;
200
- }
201
- }
202
- initState() {
203
- if (!isDocumentAvailable()) {
204
- return;
205
- }
206
- this.column.resizeStartWidth = headerWidth(this.element);
207
- if (this.isConstrainedMode && !this.service.adjacentColumn) {
208
- this.setAdjacentColumn();
209
- }
210
- this.service.resizedColumn({
211
- column: this.column,
212
- oldWidth: this.column.resizeStartWidth
213
- });
214
- }
215
- resize({ deltaPercent }) {
216
- let delta = fromPercentage(this.column.resizeStartWidth, deltaPercent);
217
- if (isTruthy(this.rtl)) {
218
- delta *= -1;
219
- }
220
- let newWidth = Math.max(this.column.resizeStartWidth + delta, this.column.minResizableWidth);
221
- if (isPresent(this.column.maxResizableWidth)) {
222
- newWidth = Math.min(newWidth, this.column.maxResizableWidth);
223
- }
224
- if (this.isConstrainedMode) {
225
- newWidth = this.calcNewColumnWidth(newWidth);
226
- }
227
- const tableDelta = this.getTableDelta(newWidth, delta);
228
- this.updateWidth(this.column, newWidth);
229
- this.service.resizeTable(this.column, tableDelta);
230
- }
231
- sizeToFit({ columns, widths }) {
232
- const index = columns.indexOf(this.column);
233
- const width = Math.max(...widths.map(w => w[index])) + 1; //add 1px for IE
234
- const tableDelta = width - this.column.resizeStartWidth;
235
- this.updateWidth(this.column, width);
236
- this.service.resizeTable(this.column, tableDelta);
237
- }
238
- updateWidth(column, width) {
239
- if (this.isConstrainedMode && this.service.adjacentColumn && !this.service.autoFitResize) {
240
- this.updateWidthsOfResizedColumns(column, width);
241
- }
242
- column.width = width;
243
- this.columnInfoService.hiddenColumns.forEach((col) => {
244
- if (isBlank(col.width) && isPresent(col.implicitWidth)) {
245
- // Resize hidden columns to their implicit width so they
246
- // can be displayed with the same width if made visible.
247
- col.width = col.implicitWidth;
248
- }
249
- });
250
- this.cdr.markForCheck(); //force CD cycle
251
- }
252
- updateWidthsOfResizedColumns(column, width) {
253
- let adjacentColumnNewWidth = column.resizeStartWidth + this.service.adjacentColumn.resizeStartWidth - width;
254
- if (this.service.draggedGroupColumn && column.parent) {
255
- this.updateWidthOfDraggedColumn(column, width);
256
- this.setGroupWidths(this.service.draggedGroupColumn);
257
- }
258
- else if (!this.service.draggedGroupColumn && !column.parent && this.service.adjacentColumn.parent) {
259
- this.service.adjacentColumn.parent.width = column.width + this.service.adjacentColumn.parent.width - width;
260
- this.service.adjacentColumn.width = adjacentColumnNewWidth;
261
- }
262
- else if (!this.service.draggedGroupColumn && column.parent && this.service.adjacentColumn.parent) {
263
- adjacentColumnNewWidth = column.width + this.service.adjacentColumn.width - width;
264
- this.service.adjacentColumn.width = adjacentColumnNewWidth;
265
- const filteredColumns = this.service.adjacentColumn.parent.children.filter(c => c !== this.service.adjacentColumn);
266
- const filteredColumnsWidth = filteredColumns.reduce((acc, c) => acc + c.width, 0);
267
- this.service.adjacentColumn.parent.width = adjacentColumnNewWidth + filteredColumnsWidth;
268
- this.setGroupWidths(this.service.adjacentColumn.parent);
269
- }
270
- else if (adjacentColumnNewWidth > this.service.adjacentColumn.minResizableWidth) {
271
- this.service.adjacentColumn.width = adjacentColumnNewWidth;
272
- }
273
- }
274
- calcNewColumnWidth(newWidth) {
275
- let maxAllowedResizableWidth;
276
- if (!this.service.adjacentColumn.parent) {
277
- maxAllowedResizableWidth = this.column.width + this.service.adjacentColumn.width - this.service.adjacentColumn.minResizableWidth;
278
- if (!this.column.parent) {
279
- maxAllowedResizableWidth = this.column.resizeStartWidth + this.service.adjacentColumn.resizeStartWidth - this.service.adjacentColumn.minResizableWidth;
280
- if (this.service.adjacentColumn.maxResizableWidth) {
281
- const minResizableWidth = this.column.resizeStartWidth + this.service.adjacentColumn.resizeStartWidth - this.service.adjacentColumn.maxResizableWidth;
282
- maxAllowedResizableWidth = this.column.resizeStartWidth + this.service.adjacentColumn.resizeStartWidth - this.service.adjacentColumn.minResizableWidth;
283
- this.column.minResizableWidth = minResizableWidth;
284
- this.column.maxResizableWidth = maxAllowedResizableWidth;
285
- }
286
- }
287
- }
288
- else {
289
- maxAllowedResizableWidth = this.column.width + this.service.adjacentColumn.width;
290
- newWidth = Math.min(newWidth, maxAllowedResizableWidth);
291
- this.minWidthTotal = 0;
292
- const minResizableWidth = this.minAdjacentColumnWidth(this.service.adjacentColumn);
293
- maxAllowedResizableWidth -= minResizableWidth;
294
- }
295
- return Math.min(newWidth, maxAllowedResizableWidth - 1);
296
- }
297
- setAdjacentColumn() {
298
- const columnsForLevel = this.columnsForLevel(this.column.level);
299
- if (this.column.parent) {
300
- if (this.column.isReordered) {
301
- this.service.adjacentColumn = columnsForLevel.find(c => c.orderIndex === this.column.orderIndex + 1);
302
- this.service.adjacentColumn.resizeStartWidth = this.service.adjacentColumn.width;
303
- }
304
- else {
305
- const columnIndex = columnsForLevel.indexOf(this.column);
306
- this.service.adjacentColumn = columnsForLevel[columnIndex + 1];
307
- this.service.adjacentColumn.resizeStartWidth = adjacentColumnWidth(this.element);
308
- const parentColumnChildren = Array.from(this.column.parent.children);
309
- const indexOfCurrentColumn = parentColumnChildren.indexOf(this.column);
310
- let adjacentColumn;
311
- if (indexOfCurrentColumn + 1 <= parentColumnChildren.length - 1) {
312
- adjacentColumn = parentColumnChildren[indexOfCurrentColumn + 1];
313
- if (adjacentColumn?.isColumnGroup) {
314
- this.service.adjacentColumn = adjacentColumn;
315
- }
316
- }
317
- }
318
- if (this.service.adjacentColumn.isColumnGroup) {
319
- this.foundColumn = null;
320
- this.service.adjacentColumn = this.firstGroupChild(this.service.adjacentColumn);
321
- }
322
- if (this.column.isColumnGroup) {
323
- this.service.draggedGroupColumn = this.column;
324
- }
325
- }
326
- else if (this.column.isColumnGroup) {
327
- if (this.column.isReordered) {
328
- this.service.adjacentColumn = columnsForLevel.find(c => c.orderIndex === this.column.orderIndex + 1);
329
- }
330
- else {
331
- this.service.adjacentColumn = columnsForLevel[columnsForLevel.indexOf(this.column) + 1];
332
- }
333
- this.service.adjacentColumn.resizeStartWidth = adjacentColumnWidth(this.element);
334
- if (this.service.adjacentColumn.isColumnGroup) {
335
- this.foundColumn = null;
336
- this.service.adjacentColumn = this.firstGroupChild(this.service.adjacentColumn);
337
- }
338
- this.service.adjacentColumn.resizeStartWidth = this.service.adjacentColumn.width;
339
- this.service.draggedGroupColumn = this.column;
340
- }
341
- else {
342
- if (this.column.isReordered) {
343
- this.service.adjacentColumn = columnsForLevel.find(col => col.orderIndex === this.column.orderIndex + 1);
344
- }
345
- else {
346
- let adjacentColumn = columnsForLevel.find(c => c.leafIndex === this.column.leafIndex + 1);
347
- if (!adjacentColumn) {
348
- const indexOfCurrentColumn = columnsForLevel.indexOf(this.column);
349
- adjacentColumn = columnsForLevel[indexOfCurrentColumn + 1];
350
- }
351
- this.service.adjacentColumn = adjacentColumn;
352
- }
353
- if (!this.service.adjacentColumn.parent) {
354
- this.service.adjacentColumn.resizeStartWidth = adjacentColumnWidth(this.element);
355
- }
356
- if (this.service.adjacentColumn.isColumnGroup) {
357
- this.foundColumn = null;
358
- this.service.adjacentColumn = this.firstGroupChild(this.service.adjacentColumn);
359
- const rowIndex = this.service.adjacentColumn.level + 1;
360
- const colIndex = this.service.adjacentColumn.leafIndex + 1;
361
- this.service.adjacentColumn.resizeStartWidth = adjacentColumnInGroupWidth(this.element, rowIndex, colIndex);
362
- }
363
- }
364
- this.service.resizedColumn({
365
- column: this.service.adjacentColumn,
366
- oldWidth: this.service.adjacentColumn.resizeStartWidth
367
- });
368
- }
369
- firstGroupChild(column) {
370
- Array.from(column.children).sort((a, b) => a.orderIndex - b.orderIndex).forEach((c, idx) => {
371
- if (idx === 0 && !c.isColumnGroup) {
372
- if (!this.foundColumn) {
373
- this.foundColumn = c;
374
- }
375
- }
376
- else if (c.isColumnGroup) {
377
- this.firstGroupChild(c);
378
- }
379
- });
380
- return this.foundColumn;
381
- }
382
- setGroupWidths(column) {
383
- const childrenWidths = column.children.reduce((acc, c) => acc + c.width, 0);
384
- column.width = childrenWidths;
385
- column.children.forEach(c => {
386
- if (c.isColumnGroup) {
387
- this.setGroupWidths(c);
388
- }
389
- });
390
- }
391
- updateWidthOfDraggedColumn(column, width) {
392
- this.totalChildrenSum = 0;
393
- this.childrenColumns = [];
394
- this.calcChildrenWidth(this.service.draggedGroupColumn);
395
- const childrenWidthNotIncludingColumn = this.childrenColumns.reduce((acc, col) => {
396
- return col !== column ? acc + col.width : acc;
397
- }, 0);
398
- this.service.draggedGroupColumn.width = childrenWidthNotIncludingColumn + width;
399
- if (this.service.adjacentColumn.minResizableWidth <= this.totalChildrenSum + this.service.adjacentColumn.resizeStartWidth - width - childrenWidthNotIncludingColumn) {
400
- this.service.adjacentColumn.width = this.totalChildrenSum + this.service.adjacentColumn.resizeStartWidth - width - childrenWidthNotIncludingColumn;
401
- }
402
- }
403
- calcChildrenWidth(column) {
404
- const columnChildren = Array.from(column.children);
405
- const childrenNoGroups = columnChildren.filter(c => !c.isColumnGroup);
406
- const childrenGroups = columnChildren.filter(c => c.isColumnGroup);
407
- childrenNoGroups.forEach(col => {
408
- if (this.childrenColumns.indexOf(col) === -1) {
409
- this.childrenColumns.push(col);
410
- }
411
- });
412
- this.totalChildrenSum += childrenNoGroups.reduce((acc, col) => acc + col.resizeStartWidth, 0);
413
- childrenGroups.forEach((col) => {
414
- this.calcChildrenWidth(col);
415
- });
416
- }
417
- columnsForLevel(level) {
418
- return columnsToRender(this.columns ? this.columns.filter(column => column.level === level) : []);
419
- }
420
- minAdjacentColumnWidth(column) {
421
- if (column.isColumnGroup) {
422
- Array.from(column.children).forEach(c => {
423
- this.minAdjacentColumnWidth(c);
424
- });
425
- }
426
- else {
427
- this.minWidthTotal += column.minResizableWidth;
428
- if (column.width < column.minResizableWidth) {
429
- column.width = column.minResizableWidth;
430
- }
431
- }
432
- return this.minWidthTotal;
433
- }
434
- getTableDelta(newWidth, delta) {
435
- const minWidth = this.column.minResizableWidth;
436
- const maxWidth = this.column.maxResizableWidth;
437
- const startWidth = this.column.resizeStartWidth;
438
- const isAboveMin = newWidth > minWidth;
439
- const isBelowMax = newWidth < maxWidth;
440
- const isInBoundaries = isPresent(maxWidth) ?
441
- isAboveMin && isBelowMax :
442
- isAboveMin;
443
- if (isInBoundaries) {
444
- return delta;
445
- }
446
- else if (newWidth <= minWidth) {
447
- return minWidth - startWidth;
448
- }
449
- else {
450
- return startWidth - maxWidth;
451
- }
452
- }
453
- stopPropagation = ({ originalEvent: event }) => {
454
- this.service.isShiftPressed = event.shiftKey;
455
- event.stopPropagation();
456
- event.preventDefault();
457
- };
458
- isLastInGroup(column) {
459
- if (column.parent) {
460
- const groupChildren = Array.from(column.parent.children);
461
- const indexOfCurrentColumn = groupChildren.indexOf(column);
462
- if (column.isReordered || column.orderIndex > 0 || (column.isReordered && column.orderIndex === 0)) {
463
- return (column.orderIndex - groupChildren[0].orderIndex) === groupChildren.length - 1;
464
- }
465
- else {
466
- return indexOfCurrentColumn === groupChildren.length - 1;
467
- }
468
- }
469
- }
470
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnHandleDirective, deps: [{ token: i1.DraggableDirective, host: true }, { token: i0.ElementRef }, { token: i2.ColumnResizingService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i3.ContextService }, { token: i4.ColumnInfoService }], target: i0.ɵɵFactoryTarget.Directive });
471
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ColumnHandleDirective, isStandalone: true, selector: "[kendoGridColumnHandle]", inputs: { isLast: "isLast", columns: "columns", column: "column" }, host: { listeners: { "dblclick": "autoFit()" }, properties: { "style.display": "this.visible", "style.left": "this.leftStyle", "style.right": "this.rightStyle" } }, ngImport: i0 });
472
- }
473
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnHandleDirective, decorators: [{
474
- type: Directive,
475
- args: [{
476
- selector: '[kendoGridColumnHandle]',
477
- standalone: true
478
- }]
479
- }], ctorParameters: () => [{ type: i1.DraggableDirective, decorators: [{
480
- type: Host
481
- }] }, { type: i0.ElementRef }, { type: i2.ColumnResizingService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i3.ContextService }, { type: i4.ColumnInfoService }], propDecorators: { isLast: [{
482
- type: Input
483
- }], columns: [{
484
- type: Input
485
- }], column: [{
486
- type: Input
487
- }], visible: [{
488
- type: HostBinding,
489
- args: ['style.display']
490
- }], leftStyle: [{
491
- type: HostBinding,
492
- args: ['style.left']
493
- }], rightStyle: [{
494
- type: HostBinding,
495
- args: ['style.right']
496
- }], autoFit: [{
497
- type: HostListener,
498
- args: ['dblclick']
499
- }] } });
@@ -1,5 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- export {};