@progress/kendo-angular-grid 17.0.0-develop.9 → 17.0.0

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 (464) hide show
  1. package/README.md +46 -36
  2. package/aggregates/aggregate-types.d.ts +1 -1
  3. package/aggregates/status-bar.component.d.ts +1 -1
  4. package/column-menu/column-chooser-item-checked.directive.d.ts +5 -4
  5. package/column-menu/column-chooser.component.d.ts +1 -1
  6. package/column-menu/column-list.component.d.ts +2 -2
  7. package/column-menu/column-menu-autosize.component.d.ts +1 -1
  8. package/column-menu/column-menu-chooser.component.d.ts +1 -1
  9. package/column-menu/column-menu-filter.component.d.ts +1 -1
  10. package/column-menu/column-menu-item-base.d.ts +1 -1
  11. package/column-menu/column-menu-item.component.d.ts +1 -1
  12. package/column-menu/column-menu-item.directive.d.ts +1 -1
  13. package/column-menu/column-menu-position.component.d.ts +1 -1
  14. package/column-menu/column-menu.component.d.ts +1 -1
  15. package/column-resizing/column-handle.directive.d.ts +1 -1
  16. package/column-resizing/column-resize.interface.d.ts +3 -3
  17. package/column-resizing/table.directive.d.ts +1 -1
  18. package/columns/checkbox-column.component.d.ts +1 -1
  19. package/columns/column-base.d.ts +1 -1
  20. package/columns/column.component.d.ts +1 -1
  21. package/columns/reorder-column.component.d.ts +1 -1
  22. package/columns/sort-settings.d.ts +2 -2
  23. package/columns/span-column.component.d.ts +1 -1
  24. package/common/clipboard-types.d.ts +2 -2
  25. package/common/clipboard.directive.d.ts +1 -1
  26. package/common/create-form-group.d.ts +1 -1
  27. package/common/fetch-data-callback.d.ts +1 -1
  28. package/{pager → common}/pager-settings.d.ts +15 -2
  29. package/common/remove-confirmation.d.ts +1 -1
  30. package/common/size-options.d.ts +1 -1
  31. package/data/data.iterators.d.ts +1 -1
  32. package/data/grid-item.interface.d.ts +1 -1
  33. package/databinding.directive.d.ts +1 -1
  34. package/directives.d.ts +8 -21
  35. package/dragdrop/context-types.d.ts +1 -1
  36. package/dragdrop/draggable-column.directive.d.ts +1 -1
  37. package/dragdrop/drop-target.directive.d.ts +1 -1
  38. package/editing/add-command-tool.directive.d.ts +39 -0
  39. package/editing/edit.service.d.ts +3 -3
  40. package/editing-directives/editing-directive-base.d.ts +1 -1
  41. package/editing-directives/in-cell-editing.directive.d.ts +1 -1
  42. package/editing-directives/reactive-editing.directive.d.ts +1 -1
  43. package/editing-directives/template-editing.directive.d.ts +1 -1
  44. package/{esm2020 → esm2022}/aggregates/selection-aggregate.service.mjs +20 -17
  45. package/{esm2020 → esm2022}/aggregates/status-bar-template.directive.mjs +4 -3
  46. package/{esm2020 → esm2022}/aggregates/status-bar.component.mjs +10 -8
  47. package/esm2022/column-menu/column-chooser-item-checked.directive.mjs +45 -0
  48. package/{esm2020 → esm2022}/column-menu/column-chooser.component.mjs +35 -23
  49. package/{esm2020 → esm2022}/column-menu/column-list-kb-nav.service.mjs +6 -4
  50. package/{esm2020 → esm2022}/column-menu/column-list.component.mjs +108 -96
  51. package/{esm2020 → esm2022}/column-menu/column-locked-change-event.mjs +4 -0
  52. package/{esm2020 → esm2022}/column-menu/column-menu-autosize-all.component.mjs +6 -5
  53. package/{esm2020 → esm2022}/column-menu/column-menu-autosize.component.mjs +10 -5
  54. package/{esm2020 → esm2022}/column-menu/column-menu-chooser.component.mjs +33 -29
  55. package/{esm2020 → esm2022}/column-menu/column-menu-container.component.mjs +8 -5
  56. package/{esm2020 → esm2022}/column-menu/column-menu-filter.component.mjs +28 -26
  57. package/{esm2020 → esm2022}/column-menu/column-menu-item-base.mjs +9 -6
  58. package/{esm2020 → esm2022}/column-menu/column-menu-item-content-template.directive.mjs +4 -3
  59. package/{esm2020 → esm2022}/column-menu/column-menu-item.component.mjs +73 -42
  60. package/{esm2020 → esm2022}/column-menu/column-menu-item.directive.mjs +38 -28
  61. package/{esm2020 → esm2022}/column-menu/column-menu-lock.component.mjs +9 -6
  62. package/{esm2020 → esm2022}/column-menu/column-menu-position.component.mjs +38 -28
  63. package/{esm2020 → esm2022}/column-menu/column-menu-sort.component.mjs +9 -6
  64. package/{esm2020 → esm2022}/column-menu/column-menu-stick.component.mjs +9 -6
  65. package/{esm2020 → esm2022}/column-menu/column-menu-template.directive.mjs +4 -3
  66. package/{esm2020 → esm2022}/column-menu/column-menu.component.mjs +97 -63
  67. package/{esm2020 → esm2022}/column-menu/column-menu.service.mjs +34 -10
  68. package/{esm2020 → esm2022}/column-menu/column-sticky-change-event.mjs +4 -0
  69. package/{esm2020 → esm2022}/column-menu/column-visibility-change-event.mjs +4 -0
  70. package/{esm2020 → esm2022}/column-resizing/column-handle.directive.mjs +23 -15
  71. package/{esm2020 → esm2022}/column-resizing/column-resizing.service.mjs +8 -8
  72. package/{esm2020 → esm2022}/column-resizing/table.directive.mjs +17 -8
  73. package/{esm2020 → esm2022}/columns/checkbox-column.component.mjs +24 -16
  74. package/{esm2020 → esm2022}/columns/column-base.mjs +188 -84
  75. package/{esm2020 → esm2022}/columns/column-group.component.mjs +29 -20
  76. package/{esm2020 → esm2022}/columns/column-list.mjs +4 -3
  77. package/{esm2020 → esm2022}/columns/column.component.mjs +62 -46
  78. package/{esm2020 → esm2022}/columns/columns-container.mjs +16 -15
  79. package/{esm2020 → esm2022}/columns/command-column.component.mjs +10 -8
  80. package/{esm2020 → esm2022}/columns/reorder-column.component.mjs +23 -12
  81. package/{esm2020 → esm2022}/columns/span-column.component.mjs +49 -29
  82. package/esm2022/common/clipboard.directive.mjs +190 -0
  83. package/{esm2020 → esm2022}/common/clipboard.service.mjs +12 -9
  84. package/{esm2020 → esm2022}/common/column-info.service.mjs +10 -10
  85. package/esm2022/common/dom-events.service.mjs +26 -0
  86. package/{esm2020 → esm2022}/common/error-messages.mjs +4 -1
  87. package/{esm2020 → esm2022}/common/event-emitter.mjs +1 -0
  88. package/{esm2020 → esm2022}/common/id.service.mjs +4 -3
  89. package/{esm2020 → esm2022}/common/preventable-event.mjs +1 -3
  90. package/{esm2020 → esm2022}/common/provider.service.mjs +10 -3
  91. package/{esm2020 → esm2022}/common/single-popup.service.mjs +21 -10
  92. package/{esm2020 → esm2022}/common/sort.service.mjs +1 -3
  93. package/{esm2020 → esm2022}/data/change-notification.service.mjs +6 -4
  94. package/{esm2020 → esm2022}/data/data.collection.mjs +5 -0
  95. package/{esm2020 → esm2022}/data/data.iterators.mjs +16 -1
  96. package/{esm2020 → esm2022}/databinding.directive.mjs +24 -16
  97. package/{esm2020 → esm2022}/directives.mjs +8 -30
  98. package/{esm2020 → esm2022}/dragdrop/column-reorder-event.mjs +14 -0
  99. package/{esm2020 → esm2022}/dragdrop/column-reorder.service.mjs +4 -6
  100. package/{esm2020 → esm2022}/dragdrop/drag-and-drop.service.mjs +6 -8
  101. package/{esm2020 → esm2022}/dragdrop/drag-hint.service.mjs +7 -4
  102. package/{esm2020 → esm2022}/dragdrop/draggable-column.directive.mjs +22 -13
  103. package/{esm2020 → esm2022}/dragdrop/drop-cue.service.mjs +4 -3
  104. package/{esm2020 → esm2022}/dragdrop/drop-target.directive.mjs +10 -8
  105. package/esm2022/editing/add-command-tool.directive.mjs +64 -0
  106. package/{esm2020 → esm2022}/editing/add-command.directive.mjs +9 -8
  107. package/{esm2020 → esm2022}/editing/cancel-command.directive.mjs +17 -13
  108. package/{esm2020 → esm2022}/editing/cell-close-event.mjs +21 -4
  109. package/{esm2020 → esm2022}/editing/edit-command.directive.mjs +17 -13
  110. package/{esm2020 → esm2022}/editing/edit-template.directive.mjs +4 -3
  111. package/{esm2020 → esm2022}/editing/edit.service.mjs +13 -8
  112. package/{esm2020 → esm2022}/editing/local-data-changes.service.mjs +5 -6
  113. package/{esm2020 → esm2022}/editing/remove-command.directive.mjs +17 -13
  114. package/{esm2020 → esm2022}/editing/save-command.directive.mjs +17 -13
  115. package/{esm2020 → esm2022}/editing-directives/editing-directive-base.mjs +17 -9
  116. package/{esm2020 → esm2022}/editing-directives/in-cell-editing.directive.mjs +10 -3
  117. package/{esm2020 → esm2022}/editing-directives/local-edit.service.mjs +2 -0
  118. package/{esm2020 → esm2022}/editing-directives/reactive-editing.directive.mjs +9 -3
  119. package/{esm2020 → esm2022}/editing-directives/row-editing-directive-base.mjs +4 -3
  120. package/{esm2020 → esm2022}/editing-directives/template-editing.directive.mjs +11 -3
  121. package/esm2022/excel/excel-command-tool.directive.mjs +66 -0
  122. package/{esm2020 → esm2022}/excel/excel-command.directive.mjs +11 -10
  123. package/{esm2020 → esm2022}/excel/excel-export-event.mjs +1 -0
  124. package/{esm2020 → esm2022}/excel/excel.component.mjs +66 -12
  125. package/{esm2020 → esm2022}/excel/excel.module.mjs +9 -7
  126. package/{esm2020 → esm2022}/excel/excel.service.mjs +5 -7
  127. package/{esm2020 → esm2022}/filtering/base-filter-cell.component.mjs +22 -11
  128. package/{esm2020 → esm2022}/filtering/boolean-filter.component.mjs +24 -32
  129. package/{esm2020 → esm2022}/filtering/cell/autocomplete-filter-cell.component.mjs +18 -15
  130. package/{esm2020 → esm2022}/filtering/cell/boolean-filter-cell.component.mjs +10 -8
  131. package/{esm2020 → esm2022}/filtering/cell/date-filter-cell.component.mjs +25 -23
  132. package/{esm2020 → esm2022}/filtering/cell/filter-cell-host.directive.mjs +3 -3
  133. package/{esm2020 → esm2022}/filtering/cell/filter-cell-operators.component.mjs +59 -38
  134. package/{esm2020 → esm2022}/filtering/cell/filter-cell-template.directive.mjs +4 -3
  135. package/{esm2020 → esm2022}/filtering/cell/filter-cell-wrapper.component.mjs +8 -8
  136. package/{esm2020 → esm2022}/filtering/cell/filter-cell.component.mjs +9 -9
  137. package/{esm2020 → esm2022}/filtering/cell/numeric-filter-cell.component.mjs +25 -18
  138. package/{esm2020 → esm2022}/filtering/cell/string-filter-cell.component.mjs +27 -19
  139. package/{esm2020 → esm2022}/filtering/date-filter.component.mjs +64 -38
  140. package/{esm2020 → esm2022}/filtering/filter-host.directive.mjs +8 -3
  141. package/{esm2020 → esm2022}/filtering/filter-input-wrapper.component.mjs +11 -8
  142. package/{esm2020 → esm2022}/filtering/filter-input.directive.mjs +20 -13
  143. package/{esm2020 → esm2022}/filtering/filter-row.component.mjs +17 -15
  144. package/{esm2020 → esm2022}/filtering/filter.service.mjs +14 -10
  145. package/{esm2020 → esm2022}/filtering/menu/boolean-filter-menu.component.mjs +33 -23
  146. package/{esm2020 → esm2022}/filtering/menu/date-filter-menu-input.component.mjs +24 -5
  147. package/{esm2020 → esm2022}/filtering/menu/date-filter-menu.component.mjs +26 -21
  148. package/{esm2020 → esm2022}/filtering/menu/filter-menu-container.component.mjs +46 -20
  149. package/{esm2020 → esm2022}/filtering/menu/filter-menu-dropdownlist.directive.mjs +11 -9
  150. package/{esm2020 → esm2022}/filtering/menu/filter-menu-host.directive.mjs +5 -3
  151. package/{esm2020 → esm2022}/filtering/menu/filter-menu-input-wrapper.component.mjs +14 -8
  152. package/{esm2020 → esm2022}/filtering/menu/filter-menu-template.directive.mjs +4 -3
  153. package/{esm2020 → esm2022}/filtering/menu/filter-menu.component.mjs +27 -6
  154. package/{esm2020 → esm2022}/filtering/menu/filter-radio-button.directive.mjs +7 -3
  155. package/{esm2020 → esm2022}/filtering/menu/menu-tabbing.service.mjs +9 -8
  156. package/{esm2020 → esm2022}/filtering/menu/numeric-filter-menu-input.component.mjs +51 -15
  157. package/{esm2020 → esm2022}/filtering/menu/numeric-filter-menu.component.mjs +42 -37
  158. package/{esm2020 → esm2022}/filtering/menu/string-filter-menu-input.component.mjs +25 -16
  159. package/{esm2020 → esm2022}/filtering/menu/string-filter-menu.component.mjs +36 -21
  160. package/{esm2020 → esm2022}/filtering/numeric-filter.component.mjs +51 -28
  161. package/{esm2020 → esm2022}/filtering/operators/after-eq-filter-operator.component.mjs +8 -8
  162. package/{esm2020 → esm2022}/filtering/operators/after-filter-operator.component.mjs +8 -8
  163. package/{esm2020 → esm2022}/filtering/operators/before-eq-filter-operator.component.mjs +8 -8
  164. package/{esm2020 → esm2022}/filtering/operators/before-filter-operator.component.mjs +8 -8
  165. package/{esm2020 → esm2022}/filtering/operators/contains-filter-operator.component.mjs +8 -8
  166. package/{esm2020 → esm2022}/filtering/operators/ends-with-filter-operator.component.mjs +8 -8
  167. package/{esm2020 → esm2022}/filtering/operators/eq-filter-operator.component.mjs +8 -8
  168. package/{esm2020 → esm2022}/filtering/operators/filter-operator.base.mjs +15 -10
  169. package/{esm2020 → esm2022}/filtering/operators/gt-filter-operator.component.mjs +8 -8
  170. package/{esm2020 → esm2022}/filtering/operators/gte-filter-operator.component.mjs +8 -8
  171. package/{esm2020 → esm2022}/filtering/operators/is-empty-filter-operator.component.mjs +8 -8
  172. package/{esm2020 → esm2022}/filtering/operators/is-not-empty-filter-operator.component.mjs +8 -8
  173. package/{esm2020 → esm2022}/filtering/operators/is-not-null-filter-operator.component.mjs +8 -8
  174. package/{esm2020 → esm2022}/filtering/operators/isnull-filter-operator.component.mjs +8 -8
  175. package/{esm2020 → esm2022}/filtering/operators/lt-filter-operator.component.mjs +8 -8
  176. package/{esm2020 → esm2022}/filtering/operators/lte-filter-operator.component.mjs +8 -8
  177. package/{esm2020 → esm2022}/filtering/operators/neq-filter-operator.component.mjs +8 -8
  178. package/{esm2020 → esm2022}/filtering/operators/not-contains-filter-operator.component.mjs +8 -8
  179. package/{esm2020 → esm2022}/filtering/operators/starts-with-filter-operator.component.mjs +8 -8
  180. package/{esm2020 → esm2022}/filtering/string-filter.component.mjs +20 -15
  181. package/{esm2020 → esm2022}/grid.component.mjs +648 -396
  182. package/esm2022/grid.module.mjs +216 -0
  183. package/{esm2020 → esm2022}/grouping/group-footer-template.directive.mjs +4 -3
  184. package/{esm2020 → esm2022}/grouping/group-header-column-template.directive.mjs +4 -3
  185. package/{esm2020 → esm2022}/grouping/group-header-template.directive.mjs +4 -3
  186. package/{esm2020 → esm2022}/grouping/group-header.component.mjs +25 -16
  187. package/{esm2020 → esm2022}/grouping/group-info.service.mjs +1 -3
  188. package/{esm2020 → esm2022}/grouping/group-panel.component.mjs +71 -53
  189. package/{esm2020 → esm2022}/grouping/group-scroll-binding.directive.mjs +11 -9
  190. package/{esm2020 → esm2022}/grouping/groups.service.mjs +6 -7
  191. package/{esm2020 → esm2022}/index.mjs +6 -24
  192. package/{esm2020 → esm2022}/layout/browser-support.service.mjs +7 -4
  193. package/{esm2020 → esm2022}/layout/resizable.directive.mjs +16 -10
  194. package/{esm2020 → esm2022}/layout/resize.service.mjs +6 -8
  195. package/{esm2020 → esm2022}/layout/responsive.service.mjs +7 -9
  196. package/{esm2020 → esm2022}/layout/sizing-options.service.mjs +4 -6
  197. package/{esm2020 → esm2022}/localization/custom-messages.component.mjs +9 -8
  198. package/{esm2020 → esm2022}/localization/localized-messages.directive.mjs +9 -8
  199. package/esm2022/localization/messages.mjs +591 -0
  200. package/{esm2020 → esm2022}/navigation/default-focusable-element.mjs +10 -6
  201. package/{esm2020 → esm2022}/navigation/focus-group.mjs +10 -9
  202. package/{esm2020 → esm2022}/navigation/focus-root.mjs +5 -4
  203. package/{esm2020 → esm2022}/navigation/focusable.directive.mjs +23 -17
  204. package/{esm2020 → esm2022}/navigation/grid-focusable-element.mjs +1 -0
  205. package/{esm2020 → esm2022}/navigation/item-map.mjs +2 -4
  206. package/{esm2020 → esm2022}/navigation/logical-cell.directive.mjs +38 -23
  207. package/{esm2020 → esm2022}/navigation/logical-row.directive.mjs +18 -12
  208. package/{esm2020 → esm2022}/navigation/navigation-cursor.mjs +10 -8
  209. package/{esm2020 → esm2022}/navigation/navigation-metadata.mjs +12 -4
  210. package/{esm2020 → esm2022}/navigation/navigation-model.mjs +1 -3
  211. package/{esm2020 → esm2022}/navigation/navigation.service.mjs +49 -29
  212. package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
  213. package/{esm2020 → esm2022}/pdf/grid-query.mjs +4 -0
  214. package/esm2022/pdf/pdf-command-tool.directive.mjs +66 -0
  215. package/{esm2020 → esm2022}/pdf/pdf-command.directive.mjs +10 -9
  216. package/{esm2020 → esm2022}/pdf/pdf-margin.component.mjs +3 -3
  217. package/{esm2020 → esm2022}/pdf/pdf-template.directive.mjs +3 -3
  218. package/{esm2020 → esm2022}/pdf/pdf.component.mjs +39 -12
  219. package/{esm2020 → esm2022}/pdf/pdf.module.mjs +5 -4
  220. package/{esm2020 → esm2022}/pdf/pdf.service.mjs +8 -9
  221. package/{esm2020 → esm2022}/rendering/cell-loading.template.directive.mjs +4 -3
  222. package/{esm2020 → esm2022}/rendering/cell-template.directive.mjs +4 -3
  223. package/{esm2020 → esm2022}/rendering/cell.component.mjs +64 -75
  224. package/{esm2020 → esm2022}/rendering/common/col-group.component.mjs +8 -9
  225. package/{esm2020 → esm2022}/rendering/common/field-accessor.pipe.mjs +4 -3
  226. package/{esm2020 → esm2022}/rendering/common/loading.component.mjs +10 -8
  227. package/{esm2020 → esm2022}/rendering/common/spacer.component.mjs +12 -7
  228. package/{esm2020 → esm2022}/rendering/details/detail-collapse-event.mjs +8 -0
  229. package/{esm2020 → esm2022}/rendering/details/detail-expand-event.mjs +8 -0
  230. package/{esm2020 → esm2022}/rendering/details/detail-template.directive.mjs +8 -7
  231. package/{esm2020 → esm2022}/rendering/details/details.service.mjs +6 -7
  232. package/{esm2020 → esm2022}/rendering/details-expand.directive.mjs +28 -25
  233. package/{esm2020 → esm2022}/rendering/footer/footer-template.directive.mjs +4 -3
  234. package/{esm2020 → esm2022}/rendering/footer/footer.component.mjs +19 -15
  235. package/{esm2020 → esm2022}/rendering/grid-table.directive.mjs +9 -8
  236. package/{esm2020 → esm2022}/rendering/groups-expand.directive.mjs +21 -18
  237. package/{esm2020 → esm2022}/rendering/header/header-template.directive.mjs +4 -3
  238. package/{esm2020 → esm2022}/rendering/header/header.component.mjs +78 -55
  239. package/{esm2020 → esm2022}/rendering/list.component.mjs +99 -52
  240. package/{esm2020 → esm2022}/rendering/loading-template.directive.mjs +4 -3
  241. package/{esm2020 → esm2022}/rendering/no-records-template.directive.mjs +4 -3
  242. package/{esm2020 → esm2022}/rendering/table-body.component.mjs +60 -29
  243. package/{esm2020 → esm2022}/rendering/toolbar/toolbar-focusable.directive.mjs +9 -7
  244. package/{esm2020 → esm2022}/rendering/toolbar/toolbar-navigation.service.mjs +9 -8
  245. package/{esm2020 → esm2022}/rendering/toolbar/toolbar-template.directive.mjs +8 -7
  246. package/{esm2020 → esm2022}/rendering/toolbar/toolbar.component.mjs +17 -13
  247. package/{esm2020 → esm2022}/row-reordering/row-reorder.service.mjs +14 -10
  248. package/{esm2020 → esm2022}/scrolling/row-height.service.mjs +5 -2
  249. package/{esm2020 → esm2022}/scrolling/scroll-request.service.mjs +4 -6
  250. package/{esm2020 → esm2022}/scrolling/scroll-sync.service.mjs +10 -8
  251. package/{esm2020 → esm2022}/scrolling/scroller.service.mjs +12 -1
  252. package/{esm2020 → esm2022}/scrolling/suspend.service.mjs +4 -6
  253. package/{esm2020 → esm2022}/selection/cell-selection.service.mjs +31 -20
  254. package/{esm2020 → esm2022}/selection/marquee.directive.mjs +16 -4
  255. package/{esm2020 → esm2022}/selection/pair-set.mjs +16 -16
  256. package/esm2022/selection/selectall-checkbox.directive.mjs +144 -0
  257. package/{esm2020 → esm2022}/selection/selection-checkbox.directive.mjs +36 -15
  258. package/{esm2020 → esm2022}/selection/selection-default.mjs +46 -25
  259. package/{esm2020 → esm2022}/selection/selection.directive.mjs +4 -3
  260. package/{esm2020 → esm2022}/selection/selection.service.mjs +31 -18
  261. package/excel/excel-command-tool.directive.d.ts +41 -0
  262. package/excel/excel-command.directive.d.ts +1 -1
  263. package/excel/excel.component.d.ts +1 -1
  264. package/excel/excel.module.d.ts +3 -2
  265. package/{fesm2020 → fesm2022}/progress-kendo-angular-grid.mjs +5338 -5029
  266. package/filtering/base-filter-cell.component.d.ts +5 -1
  267. package/filtering/boolean-filter.component.d.ts +2 -17
  268. package/filtering/cell/autocomplete-filter-cell.component.d.ts +2 -7
  269. package/filtering/cell/date-filter-cell.component.d.ts +1 -1
  270. package/filtering/cell/filter-cell-operators.component.d.ts +1 -1
  271. package/filtering/cell/filter-cell-wrapper.component.d.ts +1 -1
  272. package/filtering/cell/filter-cell.component.d.ts +1 -1
  273. package/filtering/cell/numeric-filter-cell.component.d.ts +1 -1
  274. package/filtering/cell/string-filter-cell.component.d.ts +1 -1
  275. package/filtering/date-filter.component.d.ts +2 -11
  276. package/filtering/filter-host.directive.d.ts +2 -2
  277. package/filtering/filter-input-wrapper.component.d.ts +1 -2
  278. package/filtering/filter-input.directive.d.ts +1 -1
  279. package/filtering/filter-row.component.d.ts +1 -1
  280. package/filtering/filterable.d.ts +1 -1
  281. package/filtering/menu/boolean-filter-menu.component.d.ts +3 -2
  282. package/filtering/menu/date-filter-menu-input.component.d.ts +1 -1
  283. package/filtering/menu/date-filter-menu.component.d.ts +1 -7
  284. package/filtering/menu/filter-menu-container.component.d.ts +1 -1
  285. package/filtering/menu/filter-menu-dropdownlist.directive.d.ts +1 -1
  286. package/filtering/menu/filter-menu-host.directive.d.ts +1 -1
  287. package/filtering/menu/filter-menu-input-wrapper.component.d.ts +1 -1
  288. package/filtering/menu/filter-menu.component.d.ts +1 -1
  289. package/filtering/menu/filter-radio-button.directive.d.ts +1 -1
  290. package/filtering/menu/numeric-filter-menu-input.component.d.ts +1 -1
  291. package/filtering/menu/numeric-filter-menu.component.d.ts +1 -7
  292. package/filtering/menu/string-filter-menu-input.component.d.ts +1 -1
  293. package/filtering/menu/string-filter-menu.component.d.ts +1 -7
  294. package/filtering/numeric-filter.component.d.ts +2 -11
  295. package/filtering/operators/filter-operator.base.d.ts +1 -1
  296. package/filtering/string-filter.component.d.ts +2 -11
  297. package/grid.component.d.ts +5 -6
  298. package/grid.module.d.ts +94 -101
  299. package/grouping/group-header.component.d.ts +1 -1
  300. package/grouping/group-panel.component.d.ts +1 -1
  301. package/grouping/group-scroll-binding.directive.d.ts +1 -1
  302. package/index.d.ts +7 -27
  303. package/layout/resizable.directive.d.ts +1 -1
  304. package/localization/messages.d.ts +10 -6
  305. package/navigation/focusable.directive.d.ts +1 -1
  306. package/navigation/logical-cell.directive.d.ts +1 -1
  307. package/navigation/logical-row.directive.d.ts +1 -1
  308. package/navigation/navigable-settings.d.ts +2 -2
  309. package/navigation/navigation.service.d.ts +1 -1
  310. package/package.json +29 -33
  311. package/pdf/pdf-command-tool.directive.d.ts +41 -0
  312. package/pdf/pdf.component.d.ts +1 -1
  313. package/pdf/pdf.module.d.ts +2 -1
  314. package/rendering/cell.component.d.ts +1 -1
  315. package/rendering/common/cell-context.d.ts +1 -1
  316. package/rendering/common/col-group.component.d.ts +1 -1
  317. package/rendering/common/loading.component.d.ts +1 -1
  318. package/rendering/common/row-class.d.ts +4 -4
  319. package/rendering/common/spacer.component.d.ts +1 -1
  320. package/rendering/details/detail-template.directive.d.ts +2 -2
  321. package/rendering/details-expand.directive.d.ts +1 -1
  322. package/rendering/footer/footer.component.d.ts +1 -1
  323. package/rendering/grid-table.directive.d.ts +1 -1
  324. package/rendering/groups-expand.directive.d.ts +1 -1
  325. package/rendering/header/header.component.d.ts +1 -1
  326. package/rendering/list.component.d.ts +1 -1
  327. package/rendering/table-body.component.d.ts +1 -1
  328. package/rendering/toolbar/toolbar-position.d.ts +1 -1
  329. package/rendering/toolbar/toolbar-template.directive.d.ts +1 -1
  330. package/rendering/toolbar/toolbar.component.d.ts +1 -1
  331. package/row-reordering/types.d.ts +1 -1
  332. package/schematics/ngAdd/index.js +5 -5
  333. package/scrolling/scroll-sync.service.d.ts +1 -1
  334. package/scrolling/scroller.service.d.ts +1 -1
  335. package/scrolling/scrollmode.d.ts +1 -1
  336. package/selection/cell-selection.service.d.ts +1 -1
  337. package/selection/selectall-checkbox.directive.d.ts +9 -7
  338. package/selection/selection-checkbox.directive.d.ts +6 -5
  339. package/selection/selection-default.d.ts +1 -1
  340. package/selection/selection.service.d.ts +1 -1
  341. package/selection/types.d.ts +4 -4
  342. package/utils.d.ts +1 -1
  343. package/esm2020/column-menu/column-chooser-item-checked.directive.mjs +0 -39
  344. package/esm2020/common/clipboard.directive.mjs +0 -186
  345. package/esm2020/common/dom-events.service.mjs +0 -28
  346. package/esm2020/filtering/cell/row-filtering.module.mjs +0 -112
  347. package/esm2020/filtering/menu/filter-menu.module.mjs +0 -116
  348. package/esm2020/filtering/shared-filtering.module.mjs +0 -92
  349. package/esm2020/grid.module.mjs +0 -219
  350. package/esm2020/grouping/group.module.mjs +0 -53
  351. package/esm2020/localization/messages.mjs +0 -187
  352. package/esm2020/pager/pager-context.service.mjs +0 -41
  353. package/esm2020/pager/pager-dropdown.directive.mjs +0 -39
  354. package/esm2020/pager/pager-element.component.mjs +0 -109
  355. package/esm2020/pager/pager-info.component.mjs +0 -76
  356. package/esm2020/pager/pager-input.component.mjs +0 -142
  357. package/esm2020/pager/pager-input.directive.mjs +0 -30
  358. package/esm2020/pager/pager-next-buttons.component.mjs +0 -114
  359. package/esm2020/pager/pager-numeric-buttons.component.mjs +0 -257
  360. package/esm2020/pager/pager-page-sizes.component.mjs +0 -145
  361. package/esm2020/pager/pager-prev-buttons.component.mjs +0 -116
  362. package/esm2020/pager/pager-template.directive.mjs +0 -48
  363. package/esm2020/pager/pager.component.mjs +0 -457
  364. package/esm2020/pager/pager.module.mjs +0 -51
  365. package/esm2020/pager/pagesize-item.interface.mjs +0 -5
  366. package/esm2020/rendering/body.module.mjs +0 -88
  367. package/esm2020/rendering/footer/footer.module.mjs +0 -41
  368. package/esm2020/rendering/header/header.module.mjs +0 -152
  369. package/esm2020/selection/selectall-checkbox.directive.mjs +0 -115
  370. package/esm2020/shared.module.mjs +0 -41
  371. package/fesm2015/progress-kendo-angular-grid.mjs +0 -28474
  372. package/filtering/cell/row-filtering.module.d.ts +0 -59
  373. package/filtering/menu/filter-menu.module.d.ts +0 -63
  374. package/filtering/shared-filtering.module.d.ts +0 -49
  375. package/grouping/group.module.d.ts +0 -38
  376. package/pager/pager-context.service.d.ts +0 -30
  377. package/pager/pager-dropdown.directive.d.ts +0 -18
  378. package/pager/pager-element.component.d.ts +0 -79
  379. package/pager/pager-info.component.d.ts +0 -43
  380. package/pager/pager-input.component.d.ts +0 -45
  381. package/pager/pager-input.directive.d.ts +0 -18
  382. package/pager/pager-next-buttons.component.d.ts +0 -28
  383. package/pager/pager-numeric-buttons.component.d.ts +0 -52
  384. package/pager/pager-page-sizes.component.d.ts +0 -49
  385. package/pager/pager-prev-buttons.component.d.ts +0 -28
  386. package/pager/pager-template.directive.d.ts +0 -38
  387. package/pager/pager.component.d.ts +0 -80
  388. package/pager/pager.module.d.ts +0 -37
  389. package/pager/pagesize-item.interface.d.ts +0 -14
  390. package/rendering/body.module.d.ts +0 -50
  391. package/rendering/footer/footer.module.d.ts +0 -30
  392. package/rendering/header/header.module.d.ts +0 -101
  393. package/shared.module.d.ts +0 -29
  394. /package/{esm2020 → esm2022}/aggregates/aggregate-types.mjs +0 -0
  395. /package/{esm2020 → esm2022}/column-menu/column-menu-expandable-item.interface.mjs +0 -0
  396. /package/{esm2020 → esm2022}/column-menu/column-menu-settings.interface.mjs +0 -0
  397. /package/{esm2020 → esm2022}/column-menu/utils.mjs +0 -0
  398. /package/{esm2020 → esm2022}/column-resizing/column-resize.interface.mjs +0 -0
  399. /package/{esm2020 → esm2022}/columns/column-common.mjs +0 -0
  400. /package/{esm2020 → esm2022}/columns/sort-settings.mjs +0 -0
  401. /package/{esm2020 → esm2022}/common/cell-click-event-args.interface.mjs +0 -0
  402. /package/{esm2020 → esm2022}/common/clipboard-types.mjs +0 -0
  403. /package/{esm2020 → esm2022}/common/create-form-group.mjs +0 -0
  404. /package/{esm2020 → esm2022}/common/default-track-by.mjs +0 -0
  405. /package/{esm2020 → esm2022}/common/fetch-data-callback.mjs +0 -0
  406. /package/{esm2020 → esm2022}/common/filter-descriptor-differ.mjs +0 -0
  407. /package/{esm2020 → esm2022}/common/filter-operator.interface.mjs +0 -0
  408. /package/{esm2020/pager → esm2022/common}/pager-settings.mjs +0 -0
  409. /package/{esm2020 → esm2022}/common/remove-confirmation.mjs +0 -0
  410. /package/{esm2020 → esm2022}/common/size-options.mjs +0 -0
  411. /package/{esm2020 → esm2022}/constants.mjs +0 -0
  412. /package/{esm2020 → esm2022}/data/change-event-args.interface.mjs +0 -0
  413. /package/{esm2020 → esm2022}/data/data-item.interface.mjs +0 -0
  414. /package/{esm2020 → esm2022}/data/grid-item.interface.mjs +0 -0
  415. /package/{esm2020 → esm2022}/data/group-footer-item.interface.mjs +0 -0
  416. /package/{esm2020 → esm2022}/data/group-item.interface.mjs +0 -0
  417. /package/{esm2020 → esm2022}/dragdrop/column-reorder-config.mjs +0 -0
  418. /package/{esm2020 → esm2022}/dragdrop/common.mjs +0 -0
  419. /package/{esm2020 → esm2022}/dragdrop/context-types.mjs +0 -0
  420. /package/{esm2020 → esm2022}/editing/add-event-args.interface.mjs +0 -0
  421. /package/{esm2020 → esm2022}/editing/cancel-event-args.interface.mjs +0 -0
  422. /package/{esm2020 → esm2022}/editing/edit-event-args.interface.mjs +0 -0
  423. /package/{esm2020 → esm2022}/editing/edit-row-options.interface.mjs +0 -0
  424. /package/{esm2020 → esm2022}/editing/remove-event-args.interface.mjs +0 -0
  425. /package/{esm2020 → esm2022}/editing/save-event-args.interface.mjs +0 -0
  426. /package/{esm2020 → esm2022}/editing-directives/create-form-group-args.interface.mjs +0 -0
  427. /package/{esm2020 → esm2022}/editing-directives/edit-service.interface.mjs +0 -0
  428. /package/{esm2020 → esm2022}/editing-directives/local-row-edit.service.mjs +0 -0
  429. /package/{esm2020 → esm2022}/editing-directives/utils.mjs +0 -0
  430. /package/{esm2020 → esm2022}/filtering/cell/filter-cell-component.factory.mjs +0 -0
  431. /package/{esm2020 → esm2022}/filtering/filter-component.interface.mjs +0 -0
  432. /package/{esm2020 → esm2022}/filtering/filterable.mjs +0 -0
  433. /package/{esm2020 → esm2022}/filtering/menu/filter-menu-component.factory.mjs +0 -0
  434. /package/{esm2020 → esm2022}/grouping/group-key.interface.mjs +0 -0
  435. /package/{esm2020 → esm2022}/grouping/group-rows-args.interface.mjs +0 -0
  436. /package/{esm2020 → esm2022}/grouping/group-settings.mjs +0 -0
  437. /package/{esm2020 → esm2022}/grouping/utils.mjs +0 -0
  438. /package/{esm2020 → esm2022}/grouping/virtual-group-result.interface.mjs +0 -0
  439. /package/{esm2020 → esm2022}/layout/row-sync.mjs +0 -0
  440. /package/{esm2020 → esm2022}/navigation/focusable-element.interface.mjs +0 -0
  441. /package/{esm2020 → esm2022}/navigation/logical-cell.interface.mjs +0 -0
  442. /package/{esm2020 → esm2022}/navigation/logical-row.interface.mjs +0 -0
  443. /package/{esm2020 → esm2022}/navigation/navigable-settings.mjs +0 -0
  444. /package/{esm2020 → esm2022}/navigation/navigation-cell.interface.mjs +0 -0
  445. /package/{esm2020 → esm2022}/navigation/navigation-change.interface.mjs +0 -0
  446. /package/{esm2020 → esm2022}/navigation/navigation-mode.mjs +0 -0
  447. /package/{esm2020 → esm2022}/navigation/navigation-row.interface.mjs +0 -0
  448. /package/{esm2020 → esm2022}/pdf/export-element.mjs +0 -0
  449. /package/{esm2020 → esm2022}/pdf/pdf-export-event.mjs +0 -0
  450. /package/{esm2020 → esm2022}/pdf/pdf-margin.interface.mjs +0 -0
  451. /package/{esm2020 → esm2022}/progress-kendo-angular-grid.mjs +0 -0
  452. /package/{esm2020 → esm2022}/rendering/common/cell-context.mjs +0 -0
  453. /package/{esm2020 → esm2022}/rendering/common/dom-queries.mjs +0 -0
  454. /package/{esm2020 → esm2022}/rendering/common/row-args.mjs +0 -0
  455. /package/{esm2020 → esm2022}/rendering/common/row-class.mjs +0 -0
  456. /package/{esm2020 → esm2022}/rendering/constants.mjs +0 -0
  457. /package/{esm2020 → esm2022}/rendering/toolbar/toolbar-position.mjs +0 -0
  458. /package/{esm2020 → esm2022}/row-reordering/types.mjs +0 -0
  459. /package/{esm2020 → esm2022}/row-reordering/utils.mjs +0 -0
  460. /package/{esm2020 → esm2022}/scrolling/content-scroll-event.mjs +0 -0
  461. /package/{esm2020 → esm2022}/scrolling/scroll-bottom-event.mjs +0 -0
  462. /package/{esm2020 → esm2022}/scrolling/scrollmode.mjs +0 -0
  463. /package/{esm2020 → esm2022}/selection/types.mjs +0 -0
  464. /package/{esm2020 → esm2022}/utils.mjs +0 -0
@@ -39,27 +39,40 @@ export function isSpanColumnComponent(column) {
39
39
  * ```
40
40
  */
41
41
  export class SpanColumnComponent extends ColumnBase {
42
- constructor(parent, idService) {
43
- super(parent, idService);
44
- /*
45
- * @hidden
46
- */
47
- this.isSpanColumn = true;
48
- this.template = new QueryList();
49
- this.editTemplate = new QueryList();
50
- /**
51
- * @hidden
52
- */
53
- this.childColumns = new QueryList();
54
- /**
55
- * @hidden
56
- */
57
- this.includeInChooser = false;
58
- this._editable = true;
59
- if (parent && parent.isSpanColumn) {
60
- throw new Error(ColumnConfigurationErrorMessages.nestedInside('SpanColumnComponent', 'SpanColumnComponent'));
61
- }
62
- }
42
+ /*
43
+ * @hidden
44
+ */
45
+ isSpanColumn = true;
46
+ template = new QueryList();
47
+ editTemplate = new QueryList();
48
+ /**
49
+ * @hidden
50
+ */
51
+ childColumns = new QueryList();
52
+ /**
53
+ * @hidden
54
+ */
55
+ title;
56
+ /**
57
+ * @hidden
58
+ */
59
+ headerStyle;
60
+ /**
61
+ * @hidden
62
+ */
63
+ footerStyle;
64
+ /**
65
+ * @hidden
66
+ */
67
+ headerClass;
68
+ /**
69
+ * @hidden
70
+ */
71
+ footerClass;
72
+ /**
73
+ * @hidden
74
+ */
75
+ includeInChooser = false;
63
76
  /**
64
77
  * Defines whether the edit template of the column will be rendered.
65
78
  * To enable the editing functionality for a spanned column, set an edit template for it ([see example](slug:custom_reactive_editing_grid)).
@@ -86,6 +99,13 @@ export class SpanColumnComponent extends ColumnBase {
86
99
  get leafIndex() {
87
100
  return this.childColumns.first.leafIndex;
88
101
  }
102
+ _editable = true;
103
+ constructor(parent, idService) {
104
+ super(parent, idService);
105
+ if (parent && parent.isSpanColumn) {
106
+ throw new Error(ColumnConfigurationErrorMessages.nestedInside('SpanColumnComponent', 'SpanColumnComponent'));
107
+ }
108
+ }
89
109
  /**
90
110
  * @hidden
91
111
  */
@@ -122,15 +142,15 @@ export class SpanColumnComponent extends ColumnBase {
122
142
  get hasChildren() {
123
143
  return this.childColumns.length > 0;
124
144
  }
145
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SpanColumnComponent, deps: [{ token: i1.ColumnBase, host: true, optional: true, skipSelf: true }, { token: i2.IdService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
146
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SpanColumnComponent, isStandalone: true, selector: "kendo-grid-span-column", inputs: { editable: "editable", locked: "locked" }, providers: [
147
+ {
148
+ provide: ColumnBase,
149
+ useExisting: forwardRef(() => SpanColumnComponent)
150
+ }
151
+ ], queries: [{ propertyName: "template", predicate: CellTemplateDirective }, { propertyName: "editTemplate", predicate: EditTemplateDirective }, { propertyName: "childColumns", predicate: ColumnComponent }], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
125
152
  }
126
- SpanColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpanColumnComponent, deps: [{ token: i1.ColumnBase, host: true, optional: true, skipSelf: true }, { token: i2.IdService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
127
- SpanColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SpanColumnComponent, isStandalone: true, selector: "kendo-grid-span-column", inputs: { editable: "editable", locked: "locked" }, providers: [
128
- {
129
- provide: ColumnBase,
130
- useExisting: forwardRef(() => SpanColumnComponent)
131
- }
132
- ], queries: [{ propertyName: "template", predicate: CellTemplateDirective }, { propertyName: "editTemplate", predicate: EditTemplateDirective }, { propertyName: "childColumns", predicate: ColumnComponent }], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SpanColumnComponent, decorators: [{
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SpanColumnComponent, decorators: [{
134
154
  type: Component,
135
155
  args: [{
136
156
  providers: [
@@ -0,0 +1,190 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { Directive, EventEmitter, Input, NgZone, Output, Renderer2, isDevMode } from '@angular/core';
6
+ import { ClipboardService } from './clipboard.service';
7
+ import { GridComponent } from '../grid.component';
8
+ import { hasObservers, isDocumentAvailable } from '@progress/kendo-angular-common';
9
+ import { Subscription } from 'rxjs';
10
+ import { take } from 'rxjs/operators';
11
+ import { closest, contains } from '../rendering/common/dom-queries';
12
+ import { recursiveFlatMap } from '../utils';
13
+ import { ClipboardErrorMessages } from './error-messages';
14
+ import * as i0 from "@angular/core";
15
+ import * as i1 from "../grid.component";
16
+ import * as i2 from "./clipboard.service";
17
+ /**
18
+ * The directive that enables the Grid built-in clipboard support. Allows copy, cut, and paste interactions
19
+ * with the Grid.
20
+ */
21
+ export class GridClipboardDirective {
22
+ host;
23
+ clipboardService;
24
+ renderer;
25
+ zone;
26
+ /**
27
+ * Determines the target of the clipboard operation ([see example]({% slug clipboard_grid %}#toc-clipboard-target)). The possible options are:
28
+ * - `activeCell`
29
+ * - `selection`
30
+ *
31
+ * @default 'selection'
32
+ */
33
+ set clipboardTarget(value) {
34
+ if (isDevMode()) {
35
+ this.zone.onStable.pipe(take(1)).subscribe(() => {
36
+ if (value === 'activeCell' && !(this.host.navigable.length)) {
37
+ console.warn(ClipboardErrorMessages.clipboardTarget.activeCellNavigable);
38
+ }
39
+ else if (value === 'selection' && !(this.host.selectable || this.host.selectionDirective)) {
40
+ console.warn(ClipboardErrorMessages.selectionSelectable);
41
+ }
42
+ });
43
+ }
44
+ this._target = value;
45
+ }
46
+ get clipboardTarget() {
47
+ return this._target;
48
+ }
49
+ /**
50
+ * The `GridClipboardDirective` settings.
51
+ *
52
+ * @default { wholeRow: false, copyHeaders: false copy: true, cut: true, paste: true }
53
+ */
54
+ set clipboardSettings(value) {
55
+ this._clipboardSettings = Object.assign({}, this._clipboardSettings, value);
56
+ }
57
+ get clipboardSettings() {
58
+ return this._clipboardSettings;
59
+ }
60
+ /**
61
+ * Fires when the user performs `cut`, `copy` or `paste` action within the Grid content area.
62
+ */
63
+ clipboard = new EventEmitter();
64
+ _target = 'selection';
65
+ _clipboardSettings = {
66
+ wholeRow: false,
67
+ copyHeaders: false,
68
+ copy: true,
69
+ cut: true,
70
+ paste: true
71
+ };
72
+ subs = new Subscription();
73
+ constructor(host, clipboardService, renderer, zone) {
74
+ this.host = host;
75
+ this.clipboardService = clipboardService;
76
+ this.renderer = renderer;
77
+ this.zone = zone;
78
+ }
79
+ ngAfterViewInit() {
80
+ if (!isDocumentAvailable()) {
81
+ return;
82
+ }
83
+ if (this.clipboardTarget === 'selection' && !(this.host.selectable || this.host.selectionDirective)) {
84
+ console.warn(ClipboardErrorMessages.selectionSelectable);
85
+ }
86
+ // needed due to the following issue in Chrome
87
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=1156117&q=focus%20programmatically%20paste&can=2
88
+ this.zone.runOutsideAngular(() => {
89
+ this.subs.add(this.renderer.listen(document, 'copy', (args) => this.onClipboard('copy', args)));
90
+ this.subs.add(this.renderer.listen(document, 'cut', (args) => this.onClipboard('cut', args)));
91
+ this.subs.add(this.renderer.listen(document, 'paste', (args) => this.onClipboard('paste', args)));
92
+ });
93
+ }
94
+ ngOnDestroy() {
95
+ this.subs.unsubscribe();
96
+ }
97
+ onClipboard = (operationType, args) => {
98
+ if (!this.clipboardSettings[operationType] || !this.inGrid(args)) {
99
+ return;
100
+ }
101
+ const gridData = Array.isArray(this.host.data) ? this.host.data : this.host.data.data;
102
+ const gridDataItems = gridData.flatMap(recursiveFlatMap);
103
+ const selection = this.host.selection;
104
+ const selectionDirective = this.host.selectionDirective;
105
+ const targetType = this.clipboardTarget;
106
+ const isCellSelection = (this.host.selectable?.cell || selectionDirective.isCellSelectionMode);
107
+ let clipboardData = [];
108
+ switch (targetType) {
109
+ case 'activeCell':
110
+ {
111
+ const targetCell = { ...this.host.activeCell };
112
+ clipboardData = targetCell && [{ dataItem: targetCell.dataItem, dataRowIndex: targetCell.dataRowIndex, colIndex: targetCell.colIndex }];
113
+ }
114
+ break;
115
+ case 'selection':
116
+ {
117
+ const identifier = selectionDirective.selectionKey;
118
+ clipboardData = gridDataItems.flatMap((item, index) => {
119
+ if (identifier) {
120
+ const key = typeof identifier === 'string' ? item[identifier] : identifier({ index: index + this.host.skip, dataItem: item });
121
+ return isCellSelection ?
122
+ selection.some(s => s.itemKey === key) ? [{ dataItem: item, dataRowIndex: index + this.host.skip }] : [] :
123
+ selection.indexOf(key) > -1 ? [{ dataItem: item, dataRowIndex: index + this.host.skip }] : [];
124
+ }
125
+ return isCellSelection ?
126
+ selection.some(s => s.itemKey === index + this.host.skip) ? [{ dataItem: item, dataRowIndex: index + this.host.skip }] : [] :
127
+ selection.indexOf(index + this.host.skip) > -1 ? [{ dataItem: item, dataRowIndex: index + this.host.skip }] : [];
128
+ });
129
+ }
130
+ break;
131
+ }
132
+ const isPaste = operationType === 'paste';
133
+ const pastedData = args.clipboardData.getData('text');
134
+ const visibleCols = this.host.columns.toArray().filter(c => c.isVisible);
135
+ const data = isPaste ?
136
+ {
137
+ dataString: pastedData,
138
+ gridItems: this.clipboardService.getGridData(pastedData, visibleCols, this.clipboardTarget, clipboardData[0]?.dataRowIndex, {
139
+ wholeRow: this.clipboardSettings.wholeRow,
140
+ isCellSelection
141
+ })
142
+ } :
143
+ this.clipboardService.createClipboardData(clipboardData || [], visibleCols, {
144
+ wholeRow: this.clipboardSettings.wholeRow || (this.clipboardTarget === 'selection' && !isCellSelection),
145
+ target: this.clipboardTarget,
146
+ copyHeaders: this.clipboardSettings.copyHeaders,
147
+ operationType
148
+ });
149
+ !isPaste && navigator.clipboard.writeText(data.dataString);
150
+ if (hasObservers(this.clipboard)) {
151
+ this.zone.run(() => {
152
+ this.clipboard.emit({
153
+ type: operationType,
154
+ originalEvent: args,
155
+ clipboardData: data.dataString,
156
+ gridData: data.gridItems,
157
+ target: {
158
+ dataRowIndex: this.clipboardService.targetRowIndex,
159
+ colField: this.clipboardService.targetColField,
160
+ dataItem: clipboardData.find(item => item.dataRowIndex === this.clipboardService.targetRowIndex)?.dataItem
161
+ }
162
+ });
163
+ });
164
+ }
165
+ this.clipboardService.targetColField = this.clipboardService.targetRowIndex = null;
166
+ };
167
+ inGrid = (args) => {
168
+ const target = document.activeElement.matches('.k-table-td') ? document.activeElement : args.target;
169
+ const inContentArea = closest(target, node => node.parentElement?.classList.contains('k-grid-container'));
170
+ const inHost = contains(this.host.wrapper.nativeElement, target);
171
+ return target && inHost && inContentArea;
172
+ };
173
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridClipboardDirective, deps: [{ token: i1.GridComponent }, { token: i2.ClipboardService }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
174
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GridClipboardDirective, isStandalone: true, selector: "[kendoGridClipboard]", inputs: { clipboardTarget: "clipboardTarget", clipboardSettings: "clipboardSettings" }, outputs: { clipboard: "clipboard" }, providers: [ClipboardService], exportAs: ["kendoGridClipboard"], ngImport: i0 });
175
+ }
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridClipboardDirective, decorators: [{
177
+ type: Directive,
178
+ args: [{
179
+ selector: '[kendoGridClipboard]',
180
+ exportAs: 'kendoGridClipboard',
181
+ providers: [ClipboardService],
182
+ standalone: true
183
+ }]
184
+ }], ctorParameters: function () { return [{ type: i1.GridComponent }, { type: i2.ClipboardService }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { clipboardTarget: [{
185
+ type: Input
186
+ }], clipboardSettings: [{
187
+ type: Input
188
+ }], clipboard: [{
189
+ type: Output
190
+ }] } });
@@ -13,14 +13,11 @@ import * as i1 from "./provider.service";
13
13
  * @hidden
14
14
  */
15
15
  export class ClipboardService {
16
+ contextService;
17
+ targetColField;
18
+ targetRowIndex;
16
19
  constructor(contextService) {
17
20
  this.contextService = contextService;
18
- this.itemToString = (item, cols) => {
19
- if (!cols.length) {
20
- return null;
21
- }
22
- return cols.map(col => item[col.field]).join(`\t`);
23
- };
24
21
  }
25
22
  createClipboardData(data, columns, options) {
26
23
  let result = {
@@ -175,6 +172,12 @@ export class ClipboardService {
175
172
  });
176
173
  return items;
177
174
  }
175
+ itemToString = (item, cols) => {
176
+ if (!cols.length) {
177
+ return null;
178
+ }
179
+ return cols.map(col => item[col.field]).join(`\t`);
180
+ };
178
181
  groupSelection() {
179
182
  const selection = this.contextService.grid.selection;
180
183
  const groups = groupBy(selection, [{ field: 'itemKey' }])
@@ -210,9 +213,9 @@ export class ClipboardService {
210
213
  const headersRowData = cols.map(c => c.title || c.field).join(`\t`);
211
214
  return `${headersRowData}\r\n${initialData}`;
212
215
  }
216
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ClipboardService, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Injectable });
217
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ClipboardService });
213
218
  }
214
- ClipboardService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ClipboardService, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Injectable });
215
- ClipboardService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ClipboardService });
216
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ClipboardService, decorators: [{
219
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ClipboardService, decorators: [{
217
220
  type: Injectable
218
221
  }], ctorParameters: function () { return [{ type: i1.ContextService }]; } });
@@ -12,13 +12,13 @@ const NO_STICKY = { left: '0px', right: '0px' };
12
12
  * @hidden
13
13
  */
14
14
  export class ColumnInfoService {
15
- constructor() {
16
- this.visibilityChange = new EventEmitter();
17
- this.lockedChange = new EventEmitter();
18
- this.stickyChange = new EventEmitter();
19
- this.columnRangeChange = new EventEmitter();
20
- this.columnsContainer = new ColumnsContainer(() => []);
21
- }
15
+ visibilityChange = new EventEmitter();
16
+ lockedChange = new EventEmitter();
17
+ stickyChange = new EventEmitter();
18
+ columnRangeChange = new EventEmitter();
19
+ columnsContainer = new ColumnsContainer(() => []);
20
+ list;
21
+ stickyColumns;
22
22
  get lockedLeafColumns() {
23
23
  return this.columnsContainer.lockedLeafColumns;
24
24
  }
@@ -81,9 +81,9 @@ export class ColumnInfoService {
81
81
  this.stickyColumns = null;
82
82
  this.stickyChange.emit(columns);
83
83
  }
84
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnInfoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
85
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnInfoService });
84
86
  }
85
- ColumnInfoService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnInfoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
86
- ColumnInfoService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnInfoService });
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnInfoService, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnInfoService, decorators: [{
88
88
  type: Injectable
89
89
  }] });
@@ -0,0 +1,26 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { Injectable, EventEmitter } from '@angular/core';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * @hidden
9
+ */
10
+ export class DomEventsService {
11
+ cellClick = new EventEmitter();
12
+ cellMousedown = new EventEmitter();
13
+ cellMouseup = new EventEmitter();
14
+ click = new EventEmitter();
15
+ keydown = new EventEmitter();
16
+ focus = new EventEmitter();
17
+ focusIn = new EventEmitter();
18
+ focusOut = new EventEmitter();
19
+ windowBlur = new EventEmitter();
20
+ paste = new EventEmitter();
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DomEventsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
22
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DomEventsService });
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DomEventsService, decorators: [{
25
+ type: Injectable
26
+ }] });
@@ -60,5 +60,8 @@ export const GridConfigurationErrorMessages = {
60
60
  groupBindingDirectives: `Using the "kendoGridGroupBinding" directive in combination with the "kendoGridExpandGroupBy" directive
61
61
  or the "isGroupExpanded" callback is not supported. To use grouping with the "kendoGridGroupBinding" directive,
62
62
  set the Grid "groupable" property to "true".`,
63
- unsupportedMethod: (methodName, suggestedMethodName) => `Using ${methodName} in this context is not supported. Use ${suggestedMethodName} instead.`
63
+ unsupportedMethod: (methodName, suggestedMethodName) => `Using ${methodName} in this context is not supported. Use ${suggestedMethodName} instead.`,
64
+ unsupportedToolbarConfig: `
65
+ Defining both a toolbar template and a ToolBarComponent within the Grid is not supported.
66
+ Please use either the ToolBarComponent or a custom template.`
64
67
  };
@@ -7,6 +7,7 @@ import { EventEmitter } from "@angular/core";
7
7
  * @hidden
8
8
  */
9
9
  export class ZoneAwareEventEmitter extends EventEmitter {
10
+ ngZone;
10
11
  constructor(ngZone, isAsync = false) {
11
12
  super(isAsync);
12
13
  this.ngZone = ngZone;
@@ -10,6 +10,7 @@ let sequence = 0;
10
10
  * @hidden
11
11
  */
12
12
  export class IdService {
13
+ prefix;
13
14
  constructor() {
14
15
  this.prefix = `k-grid${sequence++}`;
15
16
  }
@@ -25,9 +26,9 @@ export class IdService {
25
26
  selectAllCheckboxId() {
26
27
  return `${this.prefix}-select-all`;
27
28
  }
29
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
30
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IdService });
28
31
  }
29
- IdService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
30
- IdService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IdService });
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IdService, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IdService, decorators: [{
32
33
  type: Injectable
33
34
  }], ctorParameters: function () { return []; } });
@@ -6,9 +6,7 @@
6
6
  * @hidden
7
7
  */
8
8
  export class PreventableEvent {
9
- constructor() {
10
- this.prevented = false;
11
- }
9
+ prevented = false;
12
10
  /**
13
11
  * Prevents the default action for a specified event.
14
12
  * In this way, the source component suppresses
@@ -17,15 +17,22 @@ import * as i1 from "@progress/kendo-angular-l10n";
17
17
  * and a avoids dependency cycles between components.
18
18
  */
19
19
  export class ContextService {
20
+ renderer;
21
+ localization;
22
+ grid;
23
+ topToolbarNavigation;
24
+ bottomToolbarNavigation;
25
+ navigable;
26
+ groupBindingDirective;
20
27
  constructor(renderer, localization) {
21
28
  this.renderer = renderer;
22
29
  this.localization = localization;
23
30
  this.topToolbarNavigation = new GridToolbarNavigationService(this.renderer);
24
31
  this.bottomToolbarNavigation = new GridToolbarNavigationService(this.renderer);
25
32
  }
33
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContextService, deps: [{ token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
34
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContextService });
26
35
  }
27
- ContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ContextService, deps: [{ token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
28
- ContextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ContextService });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ContextService, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContextService, decorators: [{
30
37
  type: Injectable
31
38
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.LocalizationService }]; } });
@@ -28,6 +28,10 @@ const contains = (node, predicate) => {
28
28
  * Arguments for the `close` event of the filter and column-menu popup.
29
29
  */
30
30
  export class PopupCloseEvent extends PreventableEvent {
31
+ /**
32
+ * The original DOM event that causes the popup to close.
33
+ */
34
+ originalEvent;
31
35
  constructor(e) {
32
36
  super();
33
37
  this.originalEvent = e;
@@ -39,6 +43,20 @@ const DEFAULT_POPUP_CLASS = 'k-grid-filter-popup';
39
43
  * ([see example]({% slug filter_menu %}#toc-filter-menu-with-popup)).
40
44
  */
41
45
  export class SinglePopupService {
46
+ popupService;
47
+ renderer;
48
+ ngZone;
49
+ ctx;
50
+ /**
51
+ * Fires when the filter or column menus are about to close because the user clicked outside their popups.
52
+ * Used to prevent the popup from closing.
53
+ */
54
+ onClose = new Subject();
55
+ removeClick;
56
+ pointerEventsSub = new Subscription();
57
+ popupRef;
58
+ scrollSubscription;
59
+ canClosePopup = true;
42
60
  /**
43
61
  * @hidden
44
62
  */
@@ -47,13 +65,6 @@ export class SinglePopupService {
47
65
  this.renderer = renderer;
48
66
  this.ngZone = ngZone;
49
67
  this.ctx = ctx;
50
- /**
51
- * Fires when the filter or column menus are about to close because the user clicked outside their popups.
52
- * Used to prevent the popup from closing.
53
- */
54
- this.onClose = new Subject();
55
- this.pointerEventsSub = new Subscription();
56
- this.canClosePopup = true;
57
68
  this.scrollSubscription = scrollSyncService.changes.pipe(skip(1)).subscribe(() => this.destroy());
58
69
  }
59
70
  /**
@@ -130,9 +141,9 @@ export class SinglePopupService {
130
141
  }));
131
142
  });
132
143
  }
144
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SinglePopupService, deps: [{ token: i1.PopupService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i2.ScrollSyncService }, { token: i3.ContextService }], target: i0.ɵɵFactoryTarget.Injectable });
145
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SinglePopupService });
133
146
  }
134
- SinglePopupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SinglePopupService, deps: [{ token: i1.PopupService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i2.ScrollSyncService }, { token: i3.ContextService }], target: i0.ɵɵFactoryTarget.Injectable });
135
- SinglePopupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SinglePopupService });
136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SinglePopupService, decorators: [{
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SinglePopupService, decorators: [{
137
148
  type: Injectable
138
149
  }], ctorParameters: function () { return [{ type: i1.PopupService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i2.ScrollSyncService }, { type: i3.ContextService }]; } });
@@ -7,9 +7,7 @@ import { Subject } from 'rxjs';
7
7
  * @hidden
8
8
  */
9
9
  export class SortService {
10
- constructor() {
11
- this.changes = new Subject();
12
- }
10
+ changes = new Subject();
13
11
  sort(value) {
14
12
  this.changes.next(value);
15
13
  }
@@ -9,9 +9,11 @@ import * as i0 from "@angular/core";
9
9
  * @hidden
10
10
  */
11
11
  export class ChangeNotificationService {
12
+ ngZone;
13
+ changes = new EventEmitter();
14
+ subscription;
12
15
  constructor(ngZone) {
13
16
  this.ngZone = ngZone;
14
- this.changes = new EventEmitter();
15
17
  }
16
18
  notify() {
17
19
  if (!this.subscription || this.subscription.closed) {
@@ -20,9 +22,9 @@ export class ChangeNotificationService {
20
22
  .subscribe(() => this.changes.emit());
21
23
  }
22
24
  }
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangeNotificationService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
26
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangeNotificationService });
23
27
  }
24
- ChangeNotificationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChangeNotificationService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
25
- ChangeNotificationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChangeNotificationService });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChangeNotificationService, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangeNotificationService, decorators: [{
27
29
  type: Injectable
28
30
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
@@ -8,6 +8,10 @@ import { getIterator, itemAt } from './data.iterators';
8
8
  * @hidden
9
9
  */
10
10
  export class DataResultIterator {
11
+ source;
12
+ skip;
13
+ groupFooters;
14
+ isObject;
11
15
  constructor(source, skip = 0, groupFooters = false) {
12
16
  this.source = source;
13
17
  this.skip = skip;
@@ -52,6 +56,7 @@ export class DataResultIterator {
52
56
  * @hidden
53
57
  */
54
58
  export class DataCollection {
59
+ accessor;
55
60
  constructor(accessor) {
56
61
  this.accessor = accessor;
57
62
  }
@@ -42,6 +42,8 @@ export const getIterator = (data, { footers, level, dataIndex, parentGroupIndex,
42
42
  return new ItemIterator(data, dataIndex, parentGroupIndex, parentGroup);
43
43
  };
44
44
  class ArrayIterator {
45
+ arr;
46
+ idx;
45
47
  constructor(arr, idx = 0) {
46
48
  this.arr = arr;
47
49
  this.idx = idx;
@@ -61,6 +63,9 @@ class ArrayIterator {
61
63
  * @hidden
62
64
  */
63
65
  export class Iterator {
66
+ dataIndex;
67
+ resultMap;
68
+ _innerIterator;
64
69
  constructor(arr, dataIndex = 0, resultMap = (x) => x) {
65
70
  this.dataIndex = dataIndex;
66
71
  this.resultMap = resultMap;
@@ -107,6 +112,17 @@ const prefix = (s, n) => {
107
112
  * @hidden
108
113
  */
109
114
  export class GroupIterator {
115
+ arr;
116
+ outputFooters;
117
+ level;
118
+ dataIndex;
119
+ parentIndex;
120
+ groupIndex;
121
+ parentGroup;
122
+ current;
123
+ _innerIterator;
124
+ _iterator;
125
+ currentGroupIndex = "";
110
126
  constructor(arr, outputFooters = false, level = 0, dataIndex = 0, parentIndex = '', groupIndex = 0, parentGroup = undefined) {
111
127
  this.arr = arr;
112
128
  this.outputFooters = outputFooters;
@@ -115,7 +131,6 @@ export class GroupIterator {
115
131
  this.parentIndex = parentIndex;
116
132
  this.groupIndex = groupIndex;
117
133
  this.parentGroup = parentGroup;
118
- this.currentGroupIndex = "";
119
134
  this.arr = arr || [];
120
135
  this._iterator = new Iterator(this.arr, this.dataIndex);
121
136
  }