@progress/kendo-angular-treelist 13.0.0-develop.1 → 13.0.0-develop.11

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 (185) hide show
  1. package/binding-directives/base-binding.directive.d.ts +5 -1
  2. package/binding-directives/data-bound-tree-component.d.ts +9 -0
  3. package/binding-directives/flat-binding.directive.d.ts +14 -3
  4. package/binding-directives/hierarchy-binding.directive.d.ts +12 -3
  5. package/column-menu/column-chooser.component.d.ts +10 -6
  6. package/column-menu/column-menu-chooser.component.d.ts +6 -10
  7. package/column-menu/column-menu-filter.component.d.ts +6 -10
  8. package/column-menu/column-menu-item-content-template.directive.d.ts +1 -1
  9. package/column-menu/column-menu-item.component.d.ts +8 -6
  10. package/column-menu/column-menu-lock.component.d.ts +5 -11
  11. package/column-menu/column-menu-settings.interface.d.ts +7 -10
  12. package/column-menu/column-menu-sort.component.d.ts +5 -11
  13. package/column-menu/column-menu.component.d.ts +1 -1
  14. package/column-menu/column-menu.service.d.ts +1 -1
  15. package/column-resizing/column-resize.interface.d.ts +1 -1
  16. package/columns/checkbox-column.component.d.ts +1 -1
  17. package/columns/column-base.d.ts +4 -0
  18. package/columns/column-group.component.d.ts +9 -6
  19. package/columns/column.component.d.ts +16 -66
  20. package/columns/command-column.component.d.ts +13 -15
  21. package/columns/rowreorder-column.component.d.ts +19 -0
  22. package/columns/span-column.component.d.ts +10 -81
  23. package/data/change-event-args.interface.d.ts +2 -2
  24. package/data/data.collection.d.ts +6 -0
  25. package/dragdrop/column-reorder-config.d.ts +1 -1
  26. package/editing/add-command.directive.d.ts +1 -1
  27. package/editing/cancel-command.directive.d.ts +1 -1
  28. package/editing/edit-command.directive.d.ts +1 -1
  29. package/editing/edit-event-args.interface.d.ts +1 -1
  30. package/editing/edit-template.directive.d.ts +11 -0
  31. package/editing/remove-command.directive.d.ts +1 -1
  32. package/editing/remove-event-args.interface.d.ts +1 -1
  33. package/editing/save-command.directive.d.ts +1 -1
  34. package/editing/save-event-args.interface.d.ts +1 -1
  35. package/esm2020/binding-directives/base-binding.directive.mjs +9 -3
  36. package/esm2020/binding-directives/flat-binding.directive.mjs +56 -6
  37. package/esm2020/binding-directives/hierarchy-binding.directive.mjs +46 -6
  38. package/esm2020/column-menu/column-chooser.component.mjs +10 -6
  39. package/esm2020/column-menu/column-menu-chooser.component.mjs +8 -12
  40. package/esm2020/column-menu/column-menu-filter.component.mjs +6 -10
  41. package/esm2020/column-menu/column-menu-item-content-template.directive.mjs +1 -1
  42. package/esm2020/column-menu/column-menu-item.component.mjs +9 -7
  43. package/esm2020/column-menu/column-menu-lock.component.mjs +5 -11
  44. package/esm2020/column-menu/column-menu-sort.component.mjs +5 -11
  45. package/esm2020/column-menu/column-menu.component.mjs +2 -2
  46. package/esm2020/column-menu/column-menu.service.mjs +1 -1
  47. package/esm2020/columns/checkbox-column.component.mjs +1 -1
  48. package/esm2020/columns/column-base.mjs +4 -0
  49. package/esm2020/columns/column-group.component.mjs +9 -6
  50. package/esm2020/columns/column.component.mjs +16 -39
  51. package/esm2020/columns/command-column.component.mjs +13 -15
  52. package/esm2020/columns/rowreorder-column.component.mjs +47 -0
  53. package/esm2020/columns/span-column.component.mjs +10 -81
  54. package/esm2020/data/data.collection.mjs +41 -28
  55. package/esm2020/editing/add-command.directive.mjs +2 -2
  56. package/esm2020/editing/base-command.directive.mjs +1 -1
  57. package/esm2020/editing/cancel-command.directive.mjs +2 -2
  58. package/esm2020/editing/edit-command.directive.mjs +2 -2
  59. package/esm2020/editing/edit-template.directive.mjs +11 -0
  60. package/esm2020/editing/remove-command.directive.mjs +2 -2
  61. package/esm2020/editing/save-command.directive.mjs +2 -2
  62. package/esm2020/excel/excel-command.directive.mjs +2 -2
  63. package/esm2020/filtering/cell/boolean-filter-cell.component.mjs +11 -11
  64. package/esm2020/filtering/cell/date-filter-cell.component.mjs +11 -11
  65. package/esm2020/filtering/cell/filter-cell-operators.component.mjs +15 -0
  66. package/esm2020/filtering/cell/numeric-filter-cell.component.mjs +13 -12
  67. package/esm2020/filtering/cell/string-filter-cell.component.mjs +14 -13
  68. package/esm2020/filtering/date-filter.component.mjs +6 -1
  69. package/esm2020/filtering/menu/boolean-filter-menu.component.mjs +11 -12
  70. package/esm2020/filtering/menu/date-filter-menu.component.mjs +12 -12
  71. package/esm2020/filtering/menu/filter-menu.component.mjs +1 -1
  72. package/esm2020/filtering/menu/numeric-filter-menu.component.mjs +12 -12
  73. package/esm2020/filtering/menu/string-filter-menu.component.mjs +15 -0
  74. package/esm2020/filtering/numeric-filter.component.mjs +4 -1
  75. package/esm2020/filtering/operators/after-eq-filter-operator.component.mjs +2 -5
  76. package/esm2020/filtering/operators/after-filter-operator.component.mjs +2 -5
  77. package/esm2020/filtering/operators/before-eq-filter-operator.component.mjs +2 -5
  78. package/esm2020/filtering/operators/before-filter-operator.component.mjs +3 -6
  79. package/esm2020/filtering/operators/contains-filter-operator.component.mjs +1 -4
  80. package/esm2020/filtering/operators/ends-with-filter-operator.component.mjs +1 -4
  81. package/esm2020/filtering/operators/eq-filter-operator.component.mjs +1 -4
  82. package/esm2020/filtering/operators/gt-filter-operator.component.mjs +1 -4
  83. package/esm2020/filtering/operators/gte-filter-operator.component.mjs +1 -4
  84. package/esm2020/filtering/operators/is-empty-filter-operator.component.mjs +1 -4
  85. package/esm2020/filtering/operators/is-not-empty-filter-operator.component.mjs +1 -4
  86. package/esm2020/filtering/operators/is-not-null-filter-operator.component.mjs +1 -4
  87. package/esm2020/filtering/operators/isnull-filter-operator.component.mjs +1 -4
  88. package/esm2020/filtering/operators/lt-filter-operator.component.mjs +2 -5
  89. package/esm2020/filtering/operators/lte-filter-operator.component.mjs +1 -4
  90. package/esm2020/filtering/operators/neq-filter-operator.component.mjs +1 -4
  91. package/esm2020/filtering/operators/not-contains-filter-operator.component.mjs +1 -4
  92. package/esm2020/filtering/operators/starts-with-filter-operator.component.mjs +1 -4
  93. package/esm2020/filtering/string-filter.component.mjs +2 -1
  94. package/esm2020/index.mjs +2 -0
  95. package/esm2020/localization/custom-messages.component.mjs +1 -1
  96. package/esm2020/localization/messages.mjs +3 -1
  97. package/esm2020/package-metadata.mjs +2 -2
  98. package/esm2020/pager/pager-element.component.mjs +17 -0
  99. package/esm2020/pager/pager-next-buttons.component.mjs +8 -11
  100. package/esm2020/pager/pager-numeric-buttons.component.mjs +1 -1
  101. package/esm2020/pager/pager-page-sizes.component.mjs +1 -1
  102. package/esm2020/pager/pager-prev-buttons.component.mjs +8 -11
  103. package/esm2020/pager/pager-template.directive.mjs +1 -1
  104. package/esm2020/pdf/pdf-command.directive.mjs +2 -2
  105. package/esm2020/pdf/pdf-margin.component.mjs +9 -0
  106. package/esm2020/rendering/cell-template.directive.mjs +1 -1
  107. package/esm2020/rendering/cell.component.mjs +68 -20
  108. package/esm2020/rendering/common/spacer.component.mjs +1 -1
  109. package/esm2020/rendering/constants.mjs +4 -0
  110. package/esm2020/rendering/header/header.component.mjs +1 -1
  111. package/esm2020/rendering/table-body.component.mjs +5 -3
  112. package/esm2020/row-reordering/flat-reorder.service.mjs +48 -0
  113. package/esm2020/row-reordering/hierarchical-reorder.service.mjs +55 -0
  114. package/esm2020/row-reordering/row-reorder.service.mjs +220 -0
  115. package/esm2020/row-reordering/types.mjs +5 -0
  116. package/esm2020/row-reordering/utils.mjs +129 -0
  117. package/esm2020/shared.module.mjs +8 -3
  118. package/esm2020/treelist.component.mjs +185 -311
  119. package/esm2020/treelist.module.mjs +71 -66
  120. package/excel/excel-command.directive.d.ts +1 -1
  121. package/excel/excel-export-data.interface.d.ts +1 -1
  122. package/excel/excel.component.d.ts +9 -8
  123. package/fesm2015/progress-kendo-angular-treelist.mjs +1215 -792
  124. package/fesm2020/progress-kendo-angular-treelist.mjs +1205 -791
  125. package/filtering/cell/boolean-filter-cell.component.d.ts +11 -11
  126. package/filtering/cell/date-filter-cell.component.d.ts +11 -11
  127. package/filtering/cell/filter-cell-operators.component.d.ts +15 -0
  128. package/filtering/cell/numeric-filter-cell.component.d.ts +13 -12
  129. package/filtering/cell/string-filter-cell.component.d.ts +12 -11
  130. package/filtering/date-filter.component.d.ts +7 -11
  131. package/filtering/menu/boolean-filter-menu.component.d.ts +11 -12
  132. package/filtering/menu/date-filter-menu.component.d.ts +12 -12
  133. package/filtering/menu/numeric-filter-menu.component.d.ts +12 -12
  134. package/filtering/menu/string-filter-menu.component.d.ts +15 -0
  135. package/filtering/numeric-filter.component.d.ts +4 -1
  136. package/filtering/operators/after-eq-filter-operator.component.d.ts +4 -0
  137. package/filtering/operators/after-filter-operator.component.d.ts +4 -0
  138. package/filtering/operators/before-eq-filter-operator.component.d.ts +4 -0
  139. package/filtering/operators/before-filter-operator.component.d.ts +4 -0
  140. package/filtering/operators/contains-filter-operator.component.d.ts +1 -4
  141. package/filtering/operators/ends-with-filter-operator.component.d.ts +1 -4
  142. package/filtering/operators/eq-filter-operator.component.d.ts +1 -4
  143. package/filtering/operators/gte-filter-operator.component.d.ts +1 -4
  144. package/filtering/operators/is-empty-filter-operator.component.d.ts +1 -4
  145. package/filtering/operators/is-not-empty-filter-operator.component.d.ts +1 -4
  146. package/filtering/operators/is-not-null-filter-operator.component.d.ts +1 -4
  147. package/filtering/operators/isnull-filter-operator.component.d.ts +1 -4
  148. package/filtering/operators/lt-filter-operator.component.d.ts +4 -0
  149. package/filtering/operators/neq-filter-operator.component.d.ts +1 -4
  150. package/filtering/operators/not-contains-filter-operator.component.d.ts +1 -4
  151. package/filtering/operators/starts-with-filter-operator.component.d.ts +1 -4
  152. package/filtering/string-filter.component.d.ts +2 -1
  153. package/index.d.ts +2 -0
  154. package/localization/custom-messages.component.d.ts +1 -1
  155. package/localization/messages.d.ts +6 -2
  156. package/navigation/navigation-cell.interface.d.ts +1 -4
  157. package/navigation/navigation-row.interface.d.ts +1 -4
  158. package/package.json +16 -15
  159. package/pager/pager-element.component.d.ts +9 -0
  160. package/pager/pager-next-buttons.component.d.ts +0 -3
  161. package/pager/pager-numeric-buttons.component.d.ts +1 -1
  162. package/pager/pager-prev-buttons.component.d.ts +0 -3
  163. package/pager/pager-settings.d.ts +1 -15
  164. package/pager/pager-template.directive.d.ts +1 -1
  165. package/pdf/pdf-command.directive.d.ts +1 -1
  166. package/pdf/pdf-margin.component.d.ts +9 -0
  167. package/rendering/cell-template.directive.d.ts +1 -1
  168. package/rendering/cell.component.d.ts +9 -1
  169. package/rendering/common/spacer.component.d.ts +1 -1
  170. package/rendering/constants.d.ts +4 -0
  171. package/row-reordering/flat-reorder.service.d.ts +16 -0
  172. package/row-reordering/hierarchical-reorder.service.d.ts +16 -0
  173. package/row-reordering/row-reorder.service.d.ts +61 -0
  174. package/row-reordering/types.d.ts +39 -0
  175. package/row-reordering/utils.d.ts +85 -0
  176. package/schematics/ngAdd/index.js +3 -3
  177. package/scrolling/content-scroll-event.d.ts +1 -1
  178. package/scrolling/scroll-bottom-event.d.ts +1 -1
  179. package/scrolling/scroll-request.service.d.ts +6 -0
  180. package/selection/selectable-settings.d.ts +5 -15
  181. package/selection/selectable.directive.d.ts +1 -1
  182. package/selection/selection-change-event.d.ts +1 -1
  183. package/shared.module.d.ts +5 -4
  184. package/treelist.component.d.ts +66 -289
  185. package/treelist.module.d.ts +68 -66
@@ -0,0 +1,129 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2023 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { cancelIcon, insertMiddleIcon, plusIcon } from '@progress/kendo-svg-icons';
6
+ /**
7
+ * @hidden
8
+ */
9
+ export const isNextSibling = (dropTarget, dragTarget) => dropTarget === dragTarget.nextElementSibling;
10
+ /**
11
+ * @hidden
12
+ */
13
+ export const isPreviousSibling = (dropTarget, dragTarget) => dropTarget === dragTarget.previousElementSibling;
14
+ /**
15
+ * @hidden
16
+ */
17
+ export function getOffset(element) {
18
+ const { clientTop, clientLeft } = getDocument(element);
19
+ const { pageYOffset, pageXOffset } = getWindow(element);
20
+ const { top, left } = element.getBoundingClientRect();
21
+ return {
22
+ top: top + pageYOffset - clientTop,
23
+ left: left + pageXOffset - clientLeft
24
+ };
25
+ }
26
+ ;
27
+ /**
28
+ * @hidden
29
+ */
30
+ export const hintIcons = {
31
+ forbidden: 'cancel',
32
+ before: 'insert-middle',
33
+ after: 'insert-middle',
34
+ over: 'plus'
35
+ };
36
+ /**
37
+ * @hidden
38
+ */
39
+ export const hintSVGIcons = {
40
+ forbidden: cancelIcon,
41
+ before: insertMiddleIcon,
42
+ after: insertMiddleIcon,
43
+ over: plusIcon
44
+ };
45
+ /**
46
+ * @hidden
47
+ */
48
+ export const dropPosition = {
49
+ forbidden: 'forbidden',
50
+ before: 'before',
51
+ after: 'after',
52
+ over: 'over'
53
+ };
54
+ /**
55
+ * @hidden
56
+ */
57
+ export const hintStyles = {
58
+ zIndex: '20000',
59
+ display: 'flex',
60
+ position: 'fixed'
61
+ };
62
+ /**
63
+ * @hidden
64
+ */
65
+ export const hintClasses = ['k-drag-clue', 'k-reorder-clue'];
66
+ /**
67
+ * @hidden
68
+ */
69
+ export const dropIndicatorStyles = {
70
+ zIndex: '19000',
71
+ position: 'absolute'
72
+ };
73
+ /**
74
+ * @hidden
75
+ */
76
+ export const dropIndicatorClasses = ['k-drop-hint', 'k-drop-hint-h'];
77
+ /**
78
+ * @hidden
79
+ */
80
+ export const defaultSelectors = {
81
+ handle: '.k-table-td.k-drag-cell',
82
+ dragTarget: '.k-table-row[data-treelist-view-index]',
83
+ dropTarget: '.k-table-row[data-treelist-view-index]'
84
+ };
85
+ /**
86
+ * @hidden
87
+ */
88
+ export const rowIndexAttr = 'data-treelist-view-index';
89
+ /**
90
+ * @hidden
91
+ */
92
+ export const findParent = (collection, searchItem, field) => {
93
+ let parent = null;
94
+ for (const item of collection) {
95
+ if (searchItem === item) {
96
+ return null;
97
+ }
98
+ const checked = [];
99
+ const queue = [];
100
+ queue.push(item);
101
+ while (queue.length !== 0) {
102
+ const current = queue.shift();
103
+ if (!current) {
104
+ continue;
105
+ }
106
+ checked.push(current);
107
+ if (current === searchItem) {
108
+ return item;
109
+ }
110
+ if (current.hasOwnProperty(field)) {
111
+ current[field].forEach(node => {
112
+ if (checked.indexOf(node) === -1) {
113
+ checked.push(node);
114
+ queue.push(node);
115
+ if (node === searchItem) {
116
+ parent = current;
117
+ return;
118
+ }
119
+ }
120
+ });
121
+ }
122
+ if (parent) {
123
+ return parent;
124
+ }
125
+ }
126
+ }
127
+ };
128
+ const getDocument = element => element?.ownerDocument.documentElement;
129
+ const getWindow = element => element?.ownerDocument.defaultView;
@@ -19,6 +19,7 @@ import { FieldAccessorPipe } from "./rendering/common/field-accessor.pipe";
19
19
  import { TableDirective } from "./column-resizing/table.directive";
20
20
  import { FocusableDirective } from "./navigation/focusable.directive";
21
21
  import { IconsModule } from '@progress/kendo-angular-icons';
22
+ import { RowReorderColumnComponent } from './columns/rowreorder-column.component';
22
23
  import * as i0 from "@angular/core";
23
24
  const exportedModules = [
24
25
  ColumnComponent,
@@ -33,7 +34,8 @@ const exportedModules = [
33
34
  SpanColumnComponent,
34
35
  TableDirective,
35
36
  LoadingComponent,
36
- CheckboxColumnComponent
37
+ CheckboxColumnComponent,
38
+ RowReorderColumnComponent
37
39
  ];
38
40
  /**
39
41
  * @hidden
@@ -44,6 +46,7 @@ export class SharedModule {
44
46
  ColumnComponent,
45
47
  SpanColumnComponent,
46
48
  CheckboxColumnComponent,
49
+ RowReorderColumnComponent,
47
50
  ColumnGroupComponent,
48
51
  FocusableDirective
49
52
  ];
@@ -62,7 +65,8 @@ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
62
65
  SpanColumnComponent,
63
66
  TableDirective,
64
67
  LoadingComponent,
65
- CheckboxColumnComponent], imports: [CommonModule, IconsModule], exports: [ColumnComponent,
68
+ CheckboxColumnComponent,
69
+ RowReorderColumnComponent], imports: [CommonModule, IconsModule], exports: [ColumnComponent,
66
70
  ColumnGroupComponent,
67
71
  LogicalCellDirective,
68
72
  LogicalRowDirective,
@@ -74,7 +78,8 @@ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
74
78
  SpanColumnComponent,
75
79
  TableDirective,
76
80
  LoadingComponent,
77
- CheckboxColumnComponent, DraggableModule, IconsModule] });
81
+ CheckboxColumnComponent,
82
+ RowReorderColumnComponent, DraggableModule, IconsModule] });
78
83
  SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SharedModule, imports: [[CommonModule, IconsModule], DraggableModule, IconsModule] });
79
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SharedModule, decorators: [{
80
85
  type: NgModule,