@swimlane/ngx-datatable 21.1.0 → 22.0.0-alpha.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 (66) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/assets/app.css +0 -2
  3. package/fesm2022/swimlane-ngx-datatable.mjs +1173 -1683
  4. package/fesm2022/swimlane-ngx-datatable.mjs.map +1 -1
  5. package/index.css +1 -247
  6. package/index.d.ts +1678 -3
  7. package/index.scss +1 -319
  8. package/package.json +4 -4
  9. package/themes/bootstrap.css +5 -0
  10. package/themes/bootstrap.scss +7 -0
  11. package/themes/dark.css +5 -1
  12. package/themes/dark.scss +6 -1
  13. package/themes/material.css +5 -17
  14. package/themes/material.scss +6 -17
  15. package/lib/components/body/body-cell.component.d.ts +0 -73
  16. package/lib/components/body/body-group-header-template.directive.d.ts +0 -7
  17. package/lib/components/body/body-group-header.directive.d.ts +0 -34
  18. package/lib/components/body/body-row-def.component.d.ts +0 -34
  19. package/lib/components/body/body-row-wrapper.component.d.ts +0 -44
  20. package/lib/components/body/body-row.component.d.ts +0 -47
  21. package/lib/components/body/body.component.d.ts +0 -231
  22. package/lib/components/body/ghost-loader/ghost-loader.component.d.ts +0 -12
  23. package/lib/components/body/progress-bar.component.d.ts +0 -5
  24. package/lib/components/body/scroller.component.d.ts +0 -24
  25. package/lib/components/body/selection.component.d.ts +0 -28
  26. package/lib/components/body/summary/summary-row.component.d.ts +0 -24
  27. package/lib/components/columns/column-cell.directive.d.ts +0 -9
  28. package/lib/components/columns/column-ghost-cell.directive.d.ts +0 -6
  29. package/lib/components/columns/column-header.directive.d.ts +0 -7
  30. package/lib/components/columns/column.directive.d.ts +0 -68
  31. package/lib/components/columns/tree.directive.d.ts +0 -7
  32. package/lib/components/datatable.component.d.ts +0 -591
  33. package/lib/components/footer/footer-template.directive.d.ts +0 -7
  34. package/lib/components/footer/footer.component.d.ts +0 -23
  35. package/lib/components/footer/footer.directive.d.ts +0 -18
  36. package/lib/components/footer/pager.component.d.ts +0 -30
  37. package/lib/components/header/header-cell.component.d.ts +0 -52
  38. package/lib/components/header/header.component.d.ts +0 -75
  39. package/lib/components/row-detail/row-detail-template.directive.d.ts +0 -7
  40. package/lib/components/row-detail/row-detail.directive.d.ts +0 -31
  41. package/lib/directives/disable-row.directive.d.ts +0 -22
  42. package/lib/directives/draggable.directive.d.ts +0 -38
  43. package/lib/directives/long-press.directive.d.ts +0 -39
  44. package/lib/directives/orderable.directive.d.ts +0 -34
  45. package/lib/directives/resizeable.directive.d.ts +0 -25
  46. package/lib/directives/visibility.directive.d.ts +0 -26
  47. package/lib/ngx-datatable.module.d.ts +0 -50
  48. package/lib/services/column-changes.service.d.ts +0 -13
  49. package/lib/services/scrollbar-helper.service.d.ts +0 -12
  50. package/lib/types/internal.types.d.ts +0 -31
  51. package/lib/types/public.types.d.ts +0 -142
  52. package/lib/types/table-column.type.d.ts +0 -163
  53. package/lib/utils/camel-case.d.ts +0 -10
  54. package/lib/utils/column-helper.d.ts +0 -11
  55. package/lib/utils/column-prop-getters.d.ts +0 -29
  56. package/lib/utils/column.d.ts +0 -19
  57. package/lib/utils/id.d.ts +0 -5
  58. package/lib/utils/keys.d.ts +0 -8
  59. package/lib/utils/math.d.ts +0 -30
  60. package/lib/utils/row-height-cache.d.ts +0 -52
  61. package/lib/utils/selection.d.ts +0 -2
  62. package/lib/utils/sort.d.ts +0 -17
  63. package/lib/utils/table-token.d.ts +0 -7
  64. package/lib/utils/throttle.d.ts +0 -17
  65. package/lib/utils/tree.d.ts +0 -40
  66. package/public-api.d.ts +0 -48
package/index.scss CHANGED
@@ -1,325 +1,7 @@
1
- .ngx-datatable {
1
+ :host {
2
2
  display: block;
3
3
  overflow: hidden;
4
4
  justify-content: center;
5
5
  position: relative;
6
6
  transform: translate3d(0, 0, 0);
7
-
8
- [hidden] {
9
- display: none !important;
10
- }
11
-
12
- *,
13
- *:before,
14
- *:after {
15
- -moz-box-sizing: border-box;
16
- -webkit-box-sizing: border-box;
17
- box-sizing: border-box;
18
- }
19
-
20
- /**
21
- * Vertical Scrolling Adjustments
22
- */
23
- &.scroll-vertical {
24
- .datatable-body {
25
- overflow-y: auto;
26
- }
27
- &.virtualized {
28
- .datatable-body {
29
- .datatable-row-wrapper {
30
- position: absolute;
31
- }
32
- }
33
- }
34
- }
35
-
36
- /**
37
- * Horizontal Scrolling Adjustments
38
- */
39
- &.scroll-horz {
40
- .datatable-body {
41
- overflow-x: auto;
42
- -webkit-overflow-scrolling: touch;
43
- }
44
- }
45
-
46
- /**
47
- * Fixed Header Height Adjustments
48
- */
49
- &.fixed-header {
50
- .datatable-header {
51
- .datatable-header-inner {
52
- white-space: nowrap;
53
- .datatable-header-cell {
54
- white-space: nowrap;
55
- overflow: hidden;
56
- text-overflow: ellipsis;
57
- }
58
- }
59
- }
60
- }
61
-
62
- /**
63
- * Fixed row height adjustments
64
- */
65
- &.fixed-row {
66
- .datatable-scroll {
67
- white-space: nowrap;
68
-
69
- .datatable-body-row {
70
- white-space: nowrap;
71
-
72
- .datatable-body-cell {
73
- overflow: hidden;
74
- white-space: nowrap;
75
- text-overflow: ellipsis;
76
- }
77
-
78
- .datatable-body-group-cell {
79
- overflow: hidden;
80
- white-space: nowrap;
81
- text-overflow: ellipsis;
82
- }
83
- }
84
- }
85
- }
86
-
87
- /**
88
- * Shared Styles
89
- */
90
- .datatable-body-row,
91
- .datatable-row-center,
92
- .datatable-header-inner {
93
- display: -webkit-box;
94
- display: -moz-box;
95
- display: -ms-flexbox;
96
- display: -webkit-flex;
97
- display: flex;
98
-
99
- flex-direction: row;
100
- -webkit-flex-flow: row;
101
- -moz-flex-flow: row;
102
- -ms-flex-flow: row;
103
- -o-flex-flow: row;
104
- flex-flow: row;
105
- }
106
-
107
- .datatable-body-cell,
108
- .datatable-header-cell {
109
- overflow-x: hidden;
110
- vertical-align: top;
111
- display: inline-block;
112
- line-height: 1.625;
113
-
114
- &:focus {
115
- outline: none;
116
- }
117
- }
118
-
119
- .datatable-row-left,
120
- .datatable-row-right,
121
- .datatable-group-header {
122
- z-index: 9;
123
- position: sticky !important;
124
- }
125
-
126
- .datatable-row-left,
127
- .datatable-group-header {
128
- left: 0;
129
- }
130
-
131
- .datatable-row-right {
132
- right: 0;
133
- }
134
-
135
- .datatable-row-center,
136
- .datatable-row-group {
137
- position: relative;
138
- }
139
-
140
- /**
141
- * Header Styles
142
- */
143
- .datatable-header {
144
- display: block;
145
- overflow: hidden;
146
-
147
- .datatable-header-inner {
148
- align-items: stretch;
149
- -webkit-align-items: stretch;
150
- }
151
-
152
- .datatable-header-cell {
153
- position: relative;
154
- display: inline-block;
155
-
156
- &.sortable {
157
- .datatable-header-cell-wrapper {
158
- cursor: pointer;
159
- }
160
- }
161
-
162
- &.longpress .datatable-header-cell-wrapper {
163
- cursor: move;
164
- }
165
-
166
- .sort-btn {
167
- line-height: 100%;
168
- vertical-align: middle;
169
- display: inline-block;
170
- cursor: pointer;
171
- }
172
-
173
- .resize-handle,
174
- .resize-handle--not-resizable {
175
- display: inline-block;
176
- position: absolute;
177
- right: 0;
178
- top: 0;
179
- bottom: 0;
180
- width: 5px;
181
- padding: 0 4px;
182
- visibility: hidden;
183
- }
184
-
185
- .resize-handle {
186
- cursor: ew-resize;
187
- }
188
-
189
- &.resizeable:hover {
190
- .resize-handle {
191
- visibility: visible;
192
- }
193
- }
194
-
195
- &:hover {
196
- .resize-handle--not-resizable {
197
- visibility: visible;
198
- }
199
- }
200
-
201
- .targetMarker {
202
- position: absolute;
203
- top: 0;
204
- bottom: 0;
205
-
206
- &.dragFromLeft {
207
- right: 0;
208
- }
209
-
210
- &.dragFromRight {
211
- left: 0;
212
- }
213
- }
214
-
215
- .datatable-header-cell-template-wrap {
216
- height: inherit;
217
- }
218
- }
219
- }
220
-
221
- /**
222
- * Body Styles
223
- */
224
- .datatable-body {
225
- position: relative;
226
- z-index: 10;
227
- display: block;
228
- overflow: hidden;
229
-
230
- .datatable-scroll {
231
- display: inline-block;
232
- }
233
-
234
- .datatable-row-detail {
235
- overflow-y: hidden;
236
- }
237
-
238
- .datatable-row-wrapper {
239
- display: -webkit-box;
240
- display: -moz-box;
241
- display: -ms-flexbox;
242
- display: -webkit-flex;
243
- display: flex;
244
-
245
- -webkit-box-orient: vertical;
246
- -webkit-box-direction: normal;
247
- -webkit-flex-direction: column;
248
- -moz-box-orient: vertical;
249
- -moz-box-direction: normal;
250
- -ms-flex-direction: column;
251
- flex-direction: column;
252
- }
253
-
254
- .datatable-body-row {
255
- outline: none;
256
-
257
- > div {
258
- display: -webkit-box;
259
- display: -moz-box;
260
- display: -ms-flexbox;
261
- display: -webkit-flex;
262
- display: flex;
263
- }
264
- }
265
- }
266
-
267
- /**
268
- * Footer Styles
269
- */
270
- .datatable-footer {
271
- display: block;
272
- width: 100%;
273
- overflow: auto;
274
-
275
- .datatable-footer-inner {
276
- display: flex;
277
- align-items: center;
278
- width: 100%;
279
- }
280
-
281
- .selected-count {
282
- .page-count {
283
- flex: 1 1 40%;
284
- }
285
- .datatable-pager {
286
- flex: 1 1 60%;
287
- }
288
- }
289
-
290
- .page-count {
291
- flex: 1 1 20%;
292
- }
293
-
294
- .datatable-pager {
295
- flex: 1 1 80%;
296
- text-align: right;
297
-
298
- .pager,
299
- .pager li {
300
- padding: 0;
301
- margin: 0;
302
- display: inline-block;
303
- list-style: none;
304
- }
305
-
306
- .pager {
307
- li,
308
- li a {
309
- outline: none;
310
- }
311
-
312
- li {
313
- a {
314
- cursor: pointer;
315
- display: inline-block;
316
- }
317
-
318
- &.disabled a {
319
- cursor: not-allowed;
320
- }
321
- }
322
- }
323
- }
324
- }
325
7
  }
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@swimlane/ngx-datatable",
3
- "version": "21.1.0",
3
+ "version": "22.0.0-alpha.0",
4
4
  "description": "ngx-datatable is an Angular table grid component for presenting large and complex data.",
5
5
  "peerDependencies": {
6
- "@angular/common": "17.x || 18.x || 19.x",
7
- "@angular/core": "17.x || 18.x || 19.x",
8
- "@angular/platform-browser": "17.x || 18.x || 19.x",
6
+ "@angular/common": "18.x || 19.x || 20.x",
7
+ "@angular/core": "18.x || 19.x || 20.x",
8
+ "@angular/platform-browser": "18.x || 19.x || 20.x",
9
9
  "rxjs": "7.x"
10
10
  },
11
11
  "dependencies": {
@@ -28,6 +28,11 @@
28
28
  box-shadow: none;
29
29
  font-size: 13px;
30
30
  }
31
+ .ngx-datatable.bootstrap *,
32
+ .ngx-datatable.bootstrap *:before,
33
+ .ngx-datatable.bootstrap *:after {
34
+ box-sizing: border-box;
35
+ }
31
36
  .ngx-datatable.bootstrap .datatable-header {
32
37
  height: unset !important;
33
38
  }
@@ -17,6 +17,13 @@ $datatble-ghost-cell-animation-duration: 10s;
17
17
  .ngx-datatable.bootstrap {
18
18
  box-shadow: none;
19
19
  font-size: 13px;
20
+
21
+ *,
22
+ *:before,
23
+ *:after {
24
+ box-sizing: border-box;
25
+ }
26
+
20
27
  .datatable-header {
21
28
  height: unset !important;
22
29
  .datatable-header-cell {
package/themes/dark.css CHANGED
@@ -5,6 +5,11 @@
5
5
  color: #fff;
6
6
  font-size: 13px;
7
7
  }
8
+ .ngx-datatable.dark *,
9
+ .ngx-datatable.dark *:before,
10
+ .ngx-datatable.dark *:after {
11
+ box-sizing: border-box;
12
+ }
8
13
  .ngx-datatable.dark .datatable-header {
9
14
  background: #181b24;
10
15
  color: #72809b;
@@ -82,7 +87,6 @@
82
87
  border-radius: 3px;
83
88
  margin: 0 3px;
84
89
  text-align: center;
85
- vertical-align: top;
86
90
  text-decoration: none;
87
91
  vertical-align: bottom;
88
92
  color: #72809b;
package/themes/dark.scss CHANGED
@@ -5,6 +5,12 @@
5
5
  color: #fff;
6
6
  font-size: 13px;
7
7
 
8
+ *,
9
+ *:before,
10
+ *:after {
11
+ box-sizing: border-box;
12
+ }
13
+
8
14
  .datatable-header {
9
15
  background: #181b24;
10
16
  color: #72809b;
@@ -99,7 +105,6 @@
99
105
  border-radius: 3px;
100
106
  margin: 0 3px;
101
107
  text-align: center;
102
- vertical-align: top;
103
108
  text-decoration: none;
104
109
  vertical-align: bottom;
105
110
  color: #72809b;
@@ -60,6 +60,11 @@ That's all.
60
60
  * Footer Styles
61
61
  */
62
62
  }
63
+ .ngx-datatable.material *,
64
+ .ngx-datatable.material *:before,
65
+ .ngx-datatable.material *:after {
66
+ box-sizing: border-box;
67
+ }
63
68
  .ngx-datatable.material.striped .datatable-row-odd {
64
69
  background: #eee;
65
70
  }
@@ -209,16 +214,6 @@ That's all.
209
214
  font-size: 14px;
210
215
  font-weight: 400;
211
216
  }
212
- .ngx-datatable.material .datatable-body .datatable-body-row .datatable-body-group-cell {
213
- text-align: left;
214
- padding: 0.9rem 1.2rem;
215
- vertical-align: top;
216
- border-top: 0;
217
- color: rgba(0, 0, 0, 0.87);
218
- transition: width 0.3s ease;
219
- font-size: 14px;
220
- font-weight: 400;
221
- }
222
217
  .ngx-datatable.material .datatable-body .progress-linear {
223
218
  display: block;
224
219
  position: sticky;
@@ -235,13 +230,11 @@ That's all.
235
230
  overflow: hidden;
236
231
  width: 100%;
237
232
  height: 5px;
238
- -webkit-transform: translate(0, 0) scale(1, 1);
239
233
  transform: translate(0, 0) scale(1, 1);
240
234
  background-color: rgb(170, 209, 249);
241
235
  }
242
236
  .ngx-datatable.material .datatable-body .progress-linear .container .bar {
243
237
  transition: all 0.2s linear;
244
- -webkit-animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1);
245
238
  animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1);
246
239
  transition: -webkit-transform 0.2s linear;
247
240
  transition: transform 0.2s linear;
@@ -342,8 +335,6 @@ That's all.
342
335
  outline: none;
343
336
  }
344
337
  .datatable-checkbox input[type=checkbox]:before {
345
- -webkit-transition: all 0.3s ease-in-out;
346
- -moz-transition: all 0.3s ease-in-out;
347
338
  transition: all 0.3s ease-in-out;
348
339
  content: "";
349
340
  position: absolute;
@@ -354,9 +345,6 @@ That's all.
354
345
  border: 2px solid #f2f2f2;
355
346
  }
356
347
  .datatable-checkbox input[type=checkbox]:checked:before {
357
- -webkit-transform: rotate(-45deg);
358
- -moz-transform: rotate(-45deg);
359
- -ms-transform: rotate(-45deg);
360
348
  transform: rotate(-45deg);
361
349
  height: 0.5rem;
362
350
  border-color: #009688;
@@ -86,6 +86,12 @@ $datatble-ghost-cell-animation-duration: 10s;
86
86
  background: $ngx-datatable-background;
87
87
  box-shadow: $ngx-datatable-box-shadow;
88
88
 
89
+ *,
90
+ *:before,
91
+ *:after {
92
+ box-sizing: border-box;
93
+ }
94
+
89
95
  &.striped {
90
96
  .datatable-row-odd {
91
97
  background: $ngx-datatable-row-odd-background;
@@ -309,16 +315,6 @@ $datatble-ghost-cell-animation-duration: 10s;
309
315
  // background: #0829e0
310
316
  // }
311
317
  }
312
- .datatable-body-group-cell {
313
- text-align: left;
314
- padding: 0.9rem 1.2rem;
315
- vertical-align: top;
316
- border-top: 0;
317
- color: $datatable-body-cell-color;
318
- transition: width 0.3s ease;
319
- font-size: 14px;
320
- font-weight: 400;
321
- }
322
318
  }
323
319
 
324
320
  .progress-linear {
@@ -337,13 +333,11 @@ $datatble-ghost-cell-animation-duration: 10s;
337
333
  overflow: hidden;
338
334
  width: 100%;
339
335
  height: 5px;
340
- -webkit-transform: translate(0, 0) scale(1, 1);
341
336
  transform: translate(0, 0) scale(1, 1);
342
337
  background-color: rgb(170, 209, 249);
343
338
 
344
339
  .bar {
345
340
  transition: all 0.2s linear;
346
- -webkit-animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1);
347
341
  animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1);
348
342
 
349
343
  transition: -webkit-transform 0.2s linear;
@@ -469,8 +463,6 @@ $datatble-ghost-cell-animation-duration: 10s;
469
463
  outline: none;
470
464
 
471
465
  &:before {
472
- -webkit-transition: all 0.3s ease-in-out;
473
- -moz-transition: all 0.3s ease-in-out;
474
466
  transition: all 0.3s ease-in-out;
475
467
  content: '';
476
468
  position: absolute;
@@ -482,9 +474,6 @@ $datatble-ghost-cell-animation-duration: 10s;
482
474
  }
483
475
 
484
476
  &:checked:before {
485
- -webkit-transform: rotate(-45deg);
486
- -moz-transform: rotate(-45deg);
487
- -ms-transform: rotate(-45deg);
488
477
  transform: rotate(-45deg);
489
478
  height: 0.5rem;
490
479
  border-color: #009688;
@@ -1,73 +0,0 @@
1
- import { DoCheck, EventEmitter, OnDestroy, ViewContainerRef } from '@angular/core';
2
- import { TableColumn } from '../../types/table-column.type';
3
- import { BehaviorSubject } from 'rxjs';
4
- import { ActivateEvent, CellContext, RowOrGroup, SortDirection, SortPropDir, TreeStatus } from '../../types/public.types';
5
- import * as i0 from "@angular/core";
6
- export declare class DataTableBodyCellComponent<TRow extends {
7
- level?: number;
8
- } = any> implements DoCheck, OnDestroy {
9
- private cd;
10
- displayCheck: (row: RowOrGroup<TRow>, column: TableColumn, value: any) => boolean;
11
- _disable$: BehaviorSubject<boolean>;
12
- set disable$(val: BehaviorSubject<boolean>);
13
- get disable$(): BehaviorSubject<boolean>;
14
- set group(group: TRow[]);
15
- get group(): TRow[];
16
- set rowHeight(val: number);
17
- get rowHeight(): number;
18
- set isSelected(val: boolean);
19
- get isSelected(): boolean;
20
- set expanded(val: boolean);
21
- get expanded(): boolean;
22
- set rowIndex(val: number);
23
- get rowIndex(): number;
24
- set column(column: TableColumn);
25
- get column(): TableColumn;
26
- set row(row: TRow);
27
- get row(): TRow;
28
- set sorts(val: SortPropDir[]);
29
- get sorts(): SortPropDir[];
30
- set treeStatus(status: TreeStatus);
31
- get treeStatus(): TreeStatus;
32
- ghostLoadingIndicator: boolean;
33
- activate: EventEmitter<ActivateEvent<TRow>>;
34
- treeAction: EventEmitter<any>;
35
- cellTemplate: ViewContainerRef;
36
- ghostLoaderTemplate: ViewContainerRef;
37
- get columnCssClasses(): string;
38
- get width(): number;
39
- get minWidth(): number;
40
- get maxWidth(): number;
41
- get height(): string | number;
42
- sanitizedValue: string;
43
- value: any;
44
- sortDir: SortDirection;
45
- isFocused: boolean;
46
- cellContext: CellContext<TRow>;
47
- private _isSelected;
48
- private _sorts;
49
- private _column;
50
- private _row;
51
- private _group;
52
- private _rowHeight;
53
- private _rowIndex;
54
- private _expanded;
55
- private _element;
56
- private _treeStatus;
57
- constructor();
58
- ngDoCheck(): void;
59
- ngOnDestroy(): void;
60
- checkValueUpdates(): void;
61
- onFocus(): void;
62
- onBlur(): void;
63
- onClick(event: MouseEvent): void;
64
- onDblClick(event: MouseEvent): void;
65
- onKeyDown(event: KeyboardEvent): void;
66
- onCheckboxChange(event: MouseEvent | KeyboardEvent): void;
67
- calcSortDir(sorts: SortPropDir[]): SortDirection;
68
- stripHtml(html: string): string;
69
- onTreeAction(): void;
70
- calcLeftMargin(column: TableColumn, row: RowOrGroup<TRow>): number;
71
- static ɵfac: i0.ɵɵFactoryDeclaration<DataTableBodyCellComponent<any>, never>;
72
- static ɵcmp: i0.ɵɵComponentDeclaration<DataTableBodyCellComponent<any>, "datatable-body-cell", never, { "displayCheck": { "alias": "displayCheck"; "required": false; }; "disable$": { "alias": "disable$"; "required": false; }; "group": { "alias": "group"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "isSelected": { "alias": "isSelected"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; "rowIndex": { "alias": "rowIndex"; "required": false; }; "column": { "alias": "column"; "required": false; }; "row": { "alias": "row"; "required": false; }; "sorts": { "alias": "sorts"; "required": false; }; "treeStatus": { "alias": "treeStatus"; "required": false; }; "ghostLoadingIndicator": { "alias": "ghostLoadingIndicator"; "required": false; }; }, { "activate": "activate"; "treeAction": "treeAction"; }, never, never, true, never>;
73
- }
@@ -1,7 +0,0 @@
1
- import { GroupContext } from '../../types/public.types';
2
- import * as i0 from "@angular/core";
3
- export declare class DatatableGroupHeaderTemplateDirective {
4
- static ngTemplateContextGuard(directive: DatatableGroupHeaderTemplateDirective, context: unknown): context is GroupContext;
5
- static ɵfac: i0.ɵɵFactoryDeclaration<DatatableGroupHeaderTemplateDirective, never>;
6
- static ɵdir: i0.ɵɵDirectiveDeclaration<DatatableGroupHeaderTemplateDirective, "[ngx-datatable-group-header-template]", never, {}, {}, never, never, true, never>;
7
- }
@@ -1,34 +0,0 @@
1
- import { EventEmitter, TemplateRef } from '@angular/core';
2
- import { Group, GroupContext, GroupToggleEvents } from '../../types/public.types';
3
- import * as i0 from "@angular/core";
4
- export declare class DatatableGroupHeaderDirective<TRow = any> {
5
- /**
6
- * Row height is required when virtual scroll is enabled.
7
- */
8
- rowHeight: number | ((group?: Group<TRow>, index?: number) => number);
9
- /**
10
- * Show checkbox at group header to select all rows of the group.
11
- */
12
- checkboxable: boolean;
13
- _templateInput: TemplateRef<GroupContext<TRow>>;
14
- _templateQuery: TemplateRef<GroupContext<TRow>>;
15
- get template(): TemplateRef<GroupContext<TRow>>;
16
- /**
17
- * Track toggling of group visibility
18
- */
19
- toggle: EventEmitter<GroupToggleEvents<TRow>>;
20
- /**
21
- * Toggle the expansion of a group
22
- */
23
- toggleExpandGroup(group: Group<TRow>): void;
24
- /**
25
- * Expand all groups
26
- */
27
- expandAllGroups(): void;
28
- /**
29
- * Collapse all groups
30
- */
31
- collapseAllGroups(): void;
32
- static ɵfac: i0.ɵɵFactoryDeclaration<DatatableGroupHeaderDirective<any>, never>;
33
- static ɵdir: i0.ɵɵDirectiveDeclaration<DatatableGroupHeaderDirective<any>, "ngx-datatable-group-header", never, { "rowHeight": { "alias": "rowHeight"; "required": false; }; "checkboxable": { "alias": "checkboxable"; "required": false; }; "_templateInput": { "alias": "template"; "required": false; }; }, { "toggle": "toggle"; }, ["_templateQuery"], never, true, never>;
34
- }
@@ -1,34 +0,0 @@
1
- import { OnInit, TemplateRef, ViewContainerRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * This component is passed as ng-template and rendered by BodyComponent.
5
- * BodyComponent uses rowDefInternal to first inject actual row template.
6
- * This component will render that actual row template.
7
- */
8
- export declare class DatatableRowDefComponent {
9
- rowDef: DatatableRowDefInternalDirective;
10
- static ɵfac: i0.ɵɵFactoryDeclaration<DatatableRowDefComponent, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<DatatableRowDefComponent, "datatable-row-def", never, {}, {}, never, never, true, never>;
12
- }
13
- export declare class DatatableRowDefDirective {
14
- static ngTemplateContextGuard(_dir: DatatableRowDefDirective, ctx: unknown): ctx is RowDefContext;
15
- static ɵfac: i0.ɵɵFactoryDeclaration<DatatableRowDefDirective, never>;
16
- static ɵdir: i0.ɵɵDirectiveDeclaration<DatatableRowDefDirective, "[rowDef]", never, {}, {}, never, never, true, never>;
17
- }
18
- /**
19
- * @internal To be used internally by ngx-datatable.
20
- */
21
- export declare class DatatableRowDefInternalDirective implements OnInit {
22
- vc: ViewContainerRef;
23
- rowDefInternal?: RowDefContext;
24
- ngOnInit(): void;
25
- static ɵfac: i0.ɵɵFactoryDeclaration<DatatableRowDefInternalDirective, never>;
26
- static ɵdir: i0.ɵɵDirectiveDeclaration<DatatableRowDefInternalDirective, "[rowDefInternal]", never, { "rowDefInternal": { "alias": "rowDefInternal"; "required": false; }; }, {}, never, never, true, never>;
27
- }
28
- type RowDefContext = {
29
- template: TemplateRef<unknown>;
30
- rowTemplate: TemplateRef<unknown>;
31
- row: any;
32
- index: number;
33
- };
34
- export {};