@toolbox-web/grid-angular 0.7.0 → 0.7.2
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.
- package/fesm2022/toolbox-web-grid-angular-features-clipboard.mjs +30 -0
- package/fesm2022/toolbox-web-grid-angular-features-clipboard.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-column-virtualization.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-column-virtualization.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-context-menu.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-context-menu.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-editing.mjs +33 -0
- package/fesm2022/toolbox-web-grid-angular-features-editing.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-export.mjs +29 -0
- package/fesm2022/toolbox-web-grid-angular-features-export.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-filtering.mjs +29 -0
- package/fesm2022/toolbox-web-grid-angular-features-filtering.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-grouping-columns.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-grouping-columns.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-grouping-rows.mjs +25 -0
- package/fesm2022/toolbox-web-grid-angular-features-grouping-rows.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-master-detail.mjs +25 -0
- package/fesm2022/toolbox-web-grid-angular-features-master-detail.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-multi-sort.mjs +40 -0
- package/fesm2022/toolbox-web-grid-angular-features-multi-sort.mjs.map +1 -0
- package/{features/pinned-columns.d.ts → fesm2022/toolbox-web-grid-angular-features-pinned-columns.mjs} +11 -2
- package/fesm2022/toolbox-web-grid-angular-features-pinned-columns.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-pinned-rows.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-pinned-rows.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-pivot.mjs +25 -0
- package/fesm2022/toolbox-web-grid-angular-features-pivot.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-print.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-print.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-reorder.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-reorder.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-responsive.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-responsive.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-row-reorder.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-row-reorder.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-selection.mjs +30 -0
- package/fesm2022/toolbox-web-grid-angular-features-selection.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-server-side.mjs +25 -0
- package/fesm2022/toolbox-web-grid-angular-features-server-side.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-sorting.mjs +25 -0
- package/fesm2022/toolbox-web-grid-angular-features-sorting.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-tree.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-tree.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-undo-redo.mjs +30 -0
- package/fesm2022/toolbox-web-grid-angular-features-undo-redo.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular-features-visibility.mjs +28 -0
- package/fesm2022/toolbox-web-grid-angular-features-visibility.mjs.map +1 -0
- package/fesm2022/toolbox-web-grid-angular.mjs +3189 -0
- package/fesm2022/toolbox-web-grid-angular.mjs.map +1 -0
- package/package.json +109 -35
- package/types/toolbox-web-grid-angular-features-clipboard.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-clipboard.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-column-virtualization.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-column-virtualization.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-context-menu.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-context-menu.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-editing.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-editing.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-export.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-export.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-filtering.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-filtering.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-grouping-columns.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-grouping-columns.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-grouping-rows.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-grouping-rows.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-master-detail.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-master-detail.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-multi-sort.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-multi-sort.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-pinned-columns.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-pinned-columns.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-pinned-rows.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-pinned-rows.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-pivot.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-pivot.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-print.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-print.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-reorder.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-reorder.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-responsive.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-responsive.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-row-reorder.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-row-reorder.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-selection.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-selection.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-server-side.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-server-side.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-sorting.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-sorting.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-tree.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-tree.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-undo-redo.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-undo-redo.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular-features-visibility.d.ts +3 -0
- package/types/toolbox-web-grid-angular-features-visibility.d.ts.map +1 -0
- package/types/toolbox-web-grid-angular.d.ts +2325 -0
- package/types/toolbox-web-grid-angular.d.ts.map +1 -0
- package/feature-registry-C-cKloXB.js +0 -45
- package/features/clipboard.d.ts +0 -18
- package/features/clipboard.d.ts.map +0 -1
- package/features/clipboard.js +0 -3
- package/features/column-virtualization.d.ts +0 -16
- package/features/column-virtualization.d.ts.map +0 -1
- package/features/column-virtualization.js +0 -3
- package/features/context-menu.d.ts +0 -16
- package/features/context-menu.d.ts.map +0 -1
- package/features/context-menu.js +0 -3
- package/features/editing.d.ts +0 -16
- package/features/editing.d.ts.map +0 -1
- package/features/editing.js +0 -3
- package/features/export.d.ts +0 -17
- package/features/export.d.ts.map +0 -1
- package/features/export.js +0 -3
- package/features/filtering.d.ts +0 -17
- package/features/filtering.d.ts.map +0 -1
- package/features/filtering.js +0 -3
- package/features/grouping-columns.d.ts +0 -16
- package/features/grouping-columns.d.ts.map +0 -1
- package/features/grouping-columns.js +0 -3
- package/features/grouping-rows.d.ts +0 -16
- package/features/grouping-rows.d.ts.map +0 -1
- package/features/grouping-rows.js +0 -3
- package/features/index.d.ts +0 -1
- package/features/index.d.ts.map +0 -1
- package/features/index.js +0 -22
- package/features/master-detail.d.ts +0 -16
- package/features/master-detail.d.ts.map +0 -1
- package/features/master-detail.js +0 -3
- package/features/multi-sort.d.ts +0 -22
- package/features/multi-sort.d.ts.map +0 -1
- package/features/pinned-columns.d.ts.map +0 -1
- package/features/pinned-columns.js +0 -3
- package/features/pinned-rows.d.ts +0 -16
- package/features/pinned-rows.d.ts.map +0 -1
- package/features/pinned-rows.js +0 -3
- package/features/pivot.d.ts +0 -16
- package/features/pivot.d.ts.map +0 -1
- package/features/pivot.js +0 -3
- package/features/print.d.ts +0 -16
- package/features/print.d.ts.map +0 -1
- package/features/print.js +0 -3
- package/features/reorder.d.ts +0 -16
- package/features/reorder.d.ts.map +0 -1
- package/features/reorder.js +0 -3
- package/features/responsive.d.ts +0 -16
- package/features/responsive.d.ts.map +0 -1
- package/features/responsive.js +0 -3
- package/features/row-reorder.d.ts +0 -16
- package/features/row-reorder.d.ts.map +0 -1
- package/features/row-reorder.js +0 -3
- package/features/selection.d.ts +0 -16
- package/features/selection.d.ts.map +0 -1
- package/features/selection.js +0 -3
- package/features/server-side.d.ts +0 -16
- package/features/server-side.d.ts.map +0 -1
- package/features/server-side.js +0 -3
- package/features/sorting.d.ts +0 -1
- package/features/sorting.d.ts.map +0 -1
- package/features/sorting.js +0 -1
- package/features/tree.d.ts +0 -16
- package/features/tree.d.ts.map +0 -1
- package/features/tree.js +0 -3
- package/features/undo-redo.d.ts +0 -18
- package/features/undo-redo.d.ts.map +0 -1
- package/features/undo-redo.js +0 -3
- package/features/visibility.d.ts +0 -16
- package/features/visibility.d.ts.map +0 -1
- package/features/visibility.js +0 -3
- package/index.d.ts +0 -34
- package/index.d.ts.map +0 -1
- package/index.js +0 -1916
- package/lib/angular-column-config.d.ts +0 -140
- package/lib/angular-column-config.d.ts.map +0 -1
- package/lib/angular-grid-adapter.d.ts +0 -220
- package/lib/angular-grid-adapter.d.ts.map +0 -1
- package/lib/base-grid-editor.d.ts +0 -145
- package/lib/base-grid-editor.d.ts.map +0 -1
- package/lib/component-registry.d.ts +0 -63
- package/lib/component-registry.d.ts.map +0 -1
- package/lib/directives/grid-column-editor.directive.d.ts +0 -113
- package/lib/directives/grid-column-editor.directive.d.ts.map +0 -1
- package/lib/directives/grid-column-view.directive.d.ts +0 -69
- package/lib/directives/grid-column-view.directive.d.ts.map +0 -1
- package/lib/directives/grid-detail-view.directive.d.ts +0 -75
- package/lib/directives/grid-detail-view.directive.d.ts.map +0 -1
- package/lib/directives/grid-form-array.directive.d.ts +0 -141
- package/lib/directives/grid-form-array.directive.d.ts.map +0 -1
- package/lib/directives/grid-responsive-card.directive.d.ts +0 -92
- package/lib/directives/grid-responsive-card.directive.d.ts.map +0 -1
- package/lib/directives/grid-tool-panel.directive.d.ts +0 -91
- package/lib/directives/grid-tool-panel.directive.d.ts.map +0 -1
- package/lib/directives/grid.directive.d.ts +0 -808
- package/lib/directives/grid.directive.d.ts.map +0 -1
- package/lib/directives/index.d.ts +0 -9
- package/lib/directives/index.d.ts.map +0 -1
- package/lib/directives/structural-directives.d.ts +0 -174
- package/lib/directives/structural-directives.d.ts.map +0 -1
- package/lib/feature-registry.d.ts +0 -72
- package/lib/feature-registry.d.ts.map +0 -1
- package/lib/grid-type-registry.d.ts +0 -110
- package/lib/grid-type-registry.d.ts.map +0 -1
- package/lib/inject-grid.d.ts +0 -109
- package/lib/inject-grid.d.ts.map +0 -1
- package/lib/interfaces/grid-cell-editor.d.ts +0 -85
- package/lib/interfaces/grid-cell-editor.d.ts.map +0 -1
- package/lib/interfaces/grid-cell-renderer.d.ts +0 -63
- package/lib/interfaces/grid-cell-renderer.d.ts.map +0 -1
- package/lib/interfaces/index.d.ts +0 -5
- package/lib/interfaces/index.d.ts.map +0 -1
- package/multi-sort-DPbW58yz.js +0 -3
|
@@ -1,808 +0,0 @@
|
|
|
1
|
-
import { AfterContentInit, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
-
import { CellActivateDetail, CellChangeDetail, CellClickDetail, ChangedRowsResetDetail, ColumnResizeDetail, GridColumnState, RowClickDetail, SortChangeDetail } from '@toolbox-web/grid';
|
|
3
|
-
import { ClipboardConfig, ColumnMoveDetail, ColumnVirtualizationConfig, ColumnVisibilityDetail, ContextMenuConfig, CopyDetail, DetailExpandDetail, ExportCompleteDetail, ExportConfig, FilterChangeDetail, FilterConfig, GroupingColumnsConfig, GroupingRowsConfig, GroupToggleDetail, MasterDetailConfig, MultiSortConfig, PasteDetail, PinnedRowsConfig, PivotConfig, PrintCompleteDetail, PrintConfig, PrintStartDetail, ReorderConfig, ResponsiveChangeDetail, ResponsivePluginConfig, RowMoveDetail, RowReorderConfig, SelectionChangeDetail, SelectionConfig, ServerSideConfig, TreeConfig, TreeExpandDetail, UndoRedoConfig, UndoRedoDetail, VisibilityConfig } from '@toolbox-web/grid/all';
|
|
4
|
-
import { AngularGridConfig } from '../angular-column-config';
|
|
5
|
-
/**
|
|
6
|
-
* Event detail for cell commit events.
|
|
7
|
-
*/
|
|
8
|
-
export interface CellCommitEvent<TRow = unknown, TValue = unknown> {
|
|
9
|
-
/** The row data object */
|
|
10
|
-
row: TRow;
|
|
11
|
-
/** The field name of the edited column */
|
|
12
|
-
field: string;
|
|
13
|
-
/** The new value after edit */
|
|
14
|
-
value: TValue;
|
|
15
|
-
/** The row index in the data array */
|
|
16
|
-
rowIndex: number;
|
|
17
|
-
/** Array of all rows that have been modified */
|
|
18
|
-
changedRows: TRow[];
|
|
19
|
-
/** Set of row indices that have been modified */
|
|
20
|
-
changedRowIndices: Set<number>;
|
|
21
|
-
/** Whether this is the first modification to this row */
|
|
22
|
-
firstTimeForRow: boolean;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Event detail for row commit events (bulk editing).
|
|
26
|
-
*/
|
|
27
|
-
export interface RowCommitEvent<TRow = unknown> {
|
|
28
|
-
/** The row data object */
|
|
29
|
-
row: TRow;
|
|
30
|
-
/** The row index in the data array */
|
|
31
|
-
rowIndex: number;
|
|
32
|
-
/** Array of all rows that have been modified */
|
|
33
|
-
changedRows: TRow[];
|
|
34
|
-
/** Set of row indices that have been modified */
|
|
35
|
-
changedRowIndices: Set<number>;
|
|
36
|
-
/** Whether this is the first modification to this row */
|
|
37
|
-
firstTimeForRow: boolean;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Directive that automatically registers the Angular adapter with tbw-grid elements.
|
|
41
|
-
*
|
|
42
|
-
* This directive eliminates the need to manually register the adapter in your component
|
|
43
|
-
* constructor. Simply import this directive and it will handle adapter registration.
|
|
44
|
-
*
|
|
45
|
-
* ## Usage
|
|
46
|
-
*
|
|
47
|
-
* ```typescript
|
|
48
|
-
* import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
49
|
-
* import { Grid } from '@toolbox-web/grid-angular';
|
|
50
|
-
*
|
|
51
|
-
* @Component({
|
|
52
|
-
* selector: 'app-root',
|
|
53
|
-
* imports: [Grid],
|
|
54
|
-
* schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
55
|
-
* template: `
|
|
56
|
-
* <tbw-grid [rows]="rows" [gridConfig]="config" [customStyles]="myStyles">
|
|
57
|
-
* <!-- column templates -->
|
|
58
|
-
* </tbw-grid>
|
|
59
|
-
* `
|
|
60
|
-
* })
|
|
61
|
-
* export class AppComponent {
|
|
62
|
-
* rows = [...];
|
|
63
|
-
* config = {...};
|
|
64
|
-
* myStyles = `.my-class { color: red; }`;
|
|
65
|
-
* }
|
|
66
|
-
* ```
|
|
67
|
-
*
|
|
68
|
-
* The directive automatically:
|
|
69
|
-
* - Creates an AngularGridAdapter instance
|
|
70
|
-
* - Registers it with the GridElement
|
|
71
|
-
* - Injects custom styles into the grid
|
|
72
|
-
* - Handles cleanup on destruction
|
|
73
|
-
*/
|
|
74
|
-
export declare class Grid implements OnInit, AfterContentInit, OnDestroy {
|
|
75
|
-
private elementRef;
|
|
76
|
-
private injector;
|
|
77
|
-
private appRef;
|
|
78
|
-
private viewContainerRef;
|
|
79
|
-
private adapter;
|
|
80
|
-
constructor();
|
|
81
|
-
/**
|
|
82
|
-
* Custom CSS styles to inject into the grid.
|
|
83
|
-
* Use this to style custom cell renderers, editors, or detail panels.
|
|
84
|
-
*
|
|
85
|
-
* @example
|
|
86
|
-
* ```typescript
|
|
87
|
-
* // In your component
|
|
88
|
-
* customStyles = `
|
|
89
|
-
* .my-detail-panel { padding: 16px; }
|
|
90
|
-
* .my-status-badge { border-radius: 4px; }
|
|
91
|
-
* `;
|
|
92
|
-
* ```
|
|
93
|
-
*
|
|
94
|
-
* ```html
|
|
95
|
-
* <tbw-grid [customStyles]="customStyles">...</tbw-grid>
|
|
96
|
-
* ```
|
|
97
|
-
*/
|
|
98
|
-
customStyles: import('@angular/core').InputSignal<string | undefined>;
|
|
99
|
-
/**
|
|
100
|
-
* Grid-wide sorting toggle.
|
|
101
|
-
* When false, disables sorting for all columns regardless of their individual `sortable` setting.
|
|
102
|
-
* When true (default), columns with `sortable: true` can be sorted.
|
|
103
|
-
*
|
|
104
|
-
* This is a core grid config property, not a plugin feature.
|
|
105
|
-
* For multi-column sorting, also add the `[multiSort]` feature.
|
|
106
|
-
*
|
|
107
|
-
* @default true
|
|
108
|
-
*
|
|
109
|
-
* @example
|
|
110
|
-
* ```html
|
|
111
|
-
* <!-- Disable all sorting -->
|
|
112
|
-
* <tbw-grid [sortable]="false" />
|
|
113
|
-
*
|
|
114
|
-
* <!-- Enable sorting (default) - columns still need sortable: true -->
|
|
115
|
-
* <tbw-grid [sortable]="true" />
|
|
116
|
-
*
|
|
117
|
-
* <!-- Enable multi-column sorting -->
|
|
118
|
-
* <tbw-grid [sortable]="true" [multiSort]="true" />
|
|
119
|
-
* ```
|
|
120
|
-
*/
|
|
121
|
-
sortable: import('@angular/core').InputSignal<boolean | undefined>;
|
|
122
|
-
/**
|
|
123
|
-
* Grid-wide filtering toggle.
|
|
124
|
-
* When false, disables filtering for all columns regardless of their individual `filterable` setting.
|
|
125
|
-
* When true (default), columns with `filterable: true` can be filtered.
|
|
126
|
-
*
|
|
127
|
-
* Requires the FilteringPlugin to be loaded.
|
|
128
|
-
*
|
|
129
|
-
* @default true
|
|
130
|
-
*
|
|
131
|
-
* @example
|
|
132
|
-
* ```html
|
|
133
|
-
* <!-- Disable all filtering -->
|
|
134
|
-
* <tbw-grid [filterable]="false" [filtering]="true" />
|
|
135
|
-
*
|
|
136
|
-
* <!-- Enable filtering (default) -->
|
|
137
|
-
* <tbw-grid [filterable]="true" [filtering]="true" />
|
|
138
|
-
* ```
|
|
139
|
-
*/
|
|
140
|
-
filterable: import('@angular/core').InputSignal<boolean | undefined>;
|
|
141
|
-
/**
|
|
142
|
-
* Grid-wide selection toggle.
|
|
143
|
-
* When false, disables selection for all rows/cells.
|
|
144
|
-
* When true (default), selection is enabled based on plugin mode.
|
|
145
|
-
*
|
|
146
|
-
* Requires the SelectionPlugin to be loaded.
|
|
147
|
-
*
|
|
148
|
-
* @default true
|
|
149
|
-
*
|
|
150
|
-
* @example
|
|
151
|
-
* ```html
|
|
152
|
-
* <!-- Disable all selection -->
|
|
153
|
-
* <tbw-grid [selectable]="false" [selection]="'range'" />
|
|
154
|
-
*
|
|
155
|
-
* <!-- Enable selection (default) -->
|
|
156
|
-
* <tbw-grid [selectable]="true" [selection]="'range'" />
|
|
157
|
-
* ```
|
|
158
|
-
*/
|
|
159
|
-
selectable: import('@angular/core').InputSignal<boolean | undefined>;
|
|
160
|
-
/**
|
|
161
|
-
* Angular-specific grid configuration that supports component classes for renderers/editors.
|
|
162
|
-
*
|
|
163
|
-
* Use this input when you want to specify Angular component classes directly in column configs.
|
|
164
|
-
* Components must implement the appropriate interfaces:
|
|
165
|
-
* - Renderers: `AngularCellRenderer<TRow, TValue>` - requires `value()` and `row()` signal inputs
|
|
166
|
-
* - Editors: `AngularCellEditor<TRow, TValue>` - adds `commit` and `cancel` outputs
|
|
167
|
-
*
|
|
168
|
-
* The directive automatically processes component classes and converts them to grid-compatible
|
|
169
|
-
* renderer/editor functions before applying to the grid.
|
|
170
|
-
*
|
|
171
|
-
* @example
|
|
172
|
-
* ```typescript
|
|
173
|
-
* // Component that implements AngularCellEditor
|
|
174
|
-
* @Component({...})
|
|
175
|
-
* export class BonusEditorComponent implements AngularCellEditor<Employee, number> {
|
|
176
|
-
* value = input.required<number>();
|
|
177
|
-
* row = input.required<Employee>();
|
|
178
|
-
* commit = output<number>();
|
|
179
|
-
* cancel = output<void>();
|
|
180
|
-
* }
|
|
181
|
-
*
|
|
182
|
-
* // In your grid config
|
|
183
|
-
* config: AngularGridConfig<Employee> = {
|
|
184
|
-
* columns: [
|
|
185
|
-
* { field: 'name', header: 'Name' },
|
|
186
|
-
* { field: 'bonus', header: 'Bonus', editable: true, editor: BonusEditorComponent }
|
|
187
|
-
* ]
|
|
188
|
-
* };
|
|
189
|
-
* ```
|
|
190
|
-
*
|
|
191
|
-
* ```html
|
|
192
|
-
* <tbw-grid [angularConfig]="config" [rows]="employees"></tbw-grid>
|
|
193
|
-
* ```
|
|
194
|
-
*/
|
|
195
|
-
angularConfig: import('@angular/core').InputSignal<AngularGridConfig<any> | undefined>;
|
|
196
|
-
/**
|
|
197
|
-
* Enable cell/row/range selection.
|
|
198
|
-
*
|
|
199
|
-
* **Requires feature import:**
|
|
200
|
-
* ```typescript
|
|
201
|
-
* import '@toolbox-web/grid-angular/features/selection';
|
|
202
|
-
* ```
|
|
203
|
-
*
|
|
204
|
-
* @example
|
|
205
|
-
* ```html
|
|
206
|
-
* <!-- Shorthand - just the mode -->
|
|
207
|
-
* <tbw-grid [selection]="'range'" />
|
|
208
|
-
*
|
|
209
|
-
* <!-- Full config object -->
|
|
210
|
-
* <tbw-grid [selection]="{ mode: 'range', checkbox: true }" />
|
|
211
|
-
* ```
|
|
212
|
-
*/
|
|
213
|
-
selection: import('@angular/core').InputSignal<"row" | "range" | "cell" | SelectionConfig<any> | undefined>;
|
|
214
|
-
/**
|
|
215
|
-
* Enable inline cell editing.
|
|
216
|
-
*
|
|
217
|
-
* **Requires feature import:**
|
|
218
|
-
* ```typescript
|
|
219
|
-
* import '@toolbox-web/grid-angular/features/editing';
|
|
220
|
-
* ```
|
|
221
|
-
*
|
|
222
|
-
* @example
|
|
223
|
-
* ```html
|
|
224
|
-
* <!-- Enable with default trigger (dblclick) -->
|
|
225
|
-
* <tbw-grid [editing]="true" />
|
|
226
|
-
*
|
|
227
|
-
* <!-- Specify trigger -->
|
|
228
|
-
* <tbw-grid [editing]="'click'" />
|
|
229
|
-
* <tbw-grid [editing]="'dblclick'" />
|
|
230
|
-
* <tbw-grid [editing]="'manual'" />
|
|
231
|
-
* ```
|
|
232
|
-
*/
|
|
233
|
-
editing: import('@angular/core').InputSignal<boolean | "click" | "dblclick" | "manual" | undefined>;
|
|
234
|
-
/**
|
|
235
|
-
* Enable clipboard copy/paste. Requires selection to be enabled.
|
|
236
|
-
*
|
|
237
|
-
* **Requires feature import:**
|
|
238
|
-
* ```typescript
|
|
239
|
-
* import '@toolbox-web/grid-angular/features/clipboard';
|
|
240
|
-
* ```
|
|
241
|
-
*
|
|
242
|
-
* @example
|
|
243
|
-
* ```html
|
|
244
|
-
* <tbw-grid [selection]="'range'" [clipboard]="true" />
|
|
245
|
-
* ```
|
|
246
|
-
*/
|
|
247
|
-
clipboard: import('@angular/core').InputSignal<boolean | ClipboardConfig | undefined>;
|
|
248
|
-
/**
|
|
249
|
-
* Enable right-click context menu.
|
|
250
|
-
*
|
|
251
|
-
* **Requires feature import:**
|
|
252
|
-
* ```typescript
|
|
253
|
-
* import '@toolbox-web/grid-angular/features/context-menu';
|
|
254
|
-
* ```
|
|
255
|
-
*
|
|
256
|
-
* @example
|
|
257
|
-
* ```html
|
|
258
|
-
* <tbw-grid [contextMenu]="true" />
|
|
259
|
-
* ```
|
|
260
|
-
*/
|
|
261
|
-
contextMenu: import('@angular/core').InputSignal<boolean | ContextMenuConfig | undefined>;
|
|
262
|
-
/**
|
|
263
|
-
* Enable multi-column sorting.
|
|
264
|
-
*
|
|
265
|
-
* Multi-sort allows users to sort by multiple columns simultaneously.
|
|
266
|
-
* For basic single-column sorting, columns with `sortable: true` work without this plugin.
|
|
267
|
-
*
|
|
268
|
-
* **Requires feature import:**
|
|
269
|
-
* ```typescript
|
|
270
|
-
* import '@toolbox-web/grid-angular/features/multi-sort';
|
|
271
|
-
* ```
|
|
272
|
-
*
|
|
273
|
-
* @example
|
|
274
|
-
* ```html
|
|
275
|
-
* <!-- Enable multi-column sorting -->
|
|
276
|
-
* <tbw-grid [multiSort]="true" />
|
|
277
|
-
*
|
|
278
|
-
* <!-- Limit to single column (uses plugin but restricts to 1 column) -->
|
|
279
|
-
* <tbw-grid [multiSort]="'single'" />
|
|
280
|
-
*
|
|
281
|
-
* <!-- Full config -->
|
|
282
|
-
* <tbw-grid [multiSort]="{ maxSortColumns: 3 }" />
|
|
283
|
-
* ```
|
|
284
|
-
*/
|
|
285
|
-
multiSort: import('@angular/core').InputSignal<boolean | "multi" | MultiSortConfig | "single" | undefined>;
|
|
286
|
-
/**
|
|
287
|
-
* @deprecated Use `[multiSort]` instead. Will be removed in a future version.
|
|
288
|
-
*
|
|
289
|
-
* Enable column sorting. This is an alias for `[multiSort]`.
|
|
290
|
-
*
|
|
291
|
-
* **Requires feature import:**
|
|
292
|
-
* ```typescript
|
|
293
|
-
* import '@toolbox-web/grid-angular/features/multi-sort';
|
|
294
|
-
* ```
|
|
295
|
-
*/
|
|
296
|
-
sorting: import('@angular/core').InputSignal<boolean | "multi" | MultiSortConfig | "single" | undefined>;
|
|
297
|
-
/**
|
|
298
|
-
* Enable column filtering.
|
|
299
|
-
*
|
|
300
|
-
* **Requires feature import:**
|
|
301
|
-
* ```typescript
|
|
302
|
-
* import '@toolbox-web/grid-angular/features/filtering';
|
|
303
|
-
* ```
|
|
304
|
-
*
|
|
305
|
-
* @example
|
|
306
|
-
* ```html
|
|
307
|
-
* <tbw-grid [filtering]="true" />
|
|
308
|
-
* <tbw-grid [filtering]="{ debounceMs: 200 }" />
|
|
309
|
-
* ```
|
|
310
|
-
*/
|
|
311
|
-
filtering: import('@angular/core').InputSignal<boolean | FilterConfig<any> | undefined>;
|
|
312
|
-
/**
|
|
313
|
-
* Enable column drag-to-reorder.
|
|
314
|
-
*
|
|
315
|
-
* **Requires feature import:**
|
|
316
|
-
* ```typescript
|
|
317
|
-
* import '@toolbox-web/grid-angular/features/reorder';
|
|
318
|
-
* ```
|
|
319
|
-
*
|
|
320
|
-
* @example
|
|
321
|
-
* ```html
|
|
322
|
-
* <tbw-grid [reorder]="true" />
|
|
323
|
-
* ```
|
|
324
|
-
*/
|
|
325
|
-
reorder: import('@angular/core').InputSignal<boolean | ReorderConfig | undefined>;
|
|
326
|
-
/**
|
|
327
|
-
* Enable column visibility toggle panel.
|
|
328
|
-
*
|
|
329
|
-
* **Requires feature import:**
|
|
330
|
-
* ```typescript
|
|
331
|
-
* import '@toolbox-web/grid-angular/features/visibility';
|
|
332
|
-
* ```
|
|
333
|
-
*
|
|
334
|
-
* @example
|
|
335
|
-
* ```html
|
|
336
|
-
* <tbw-grid [visibility]="true" />
|
|
337
|
-
* ```
|
|
338
|
-
*/
|
|
339
|
-
visibility: import('@angular/core').InputSignal<boolean | VisibilityConfig | undefined>;
|
|
340
|
-
/**
|
|
341
|
-
* Enable pinned/sticky columns.
|
|
342
|
-
* Columns are pinned via the `sticky` column property.
|
|
343
|
-
*
|
|
344
|
-
* **Requires feature import:**
|
|
345
|
-
* ```typescript
|
|
346
|
-
* import '@toolbox-web/grid-angular/features/pinned-columns';
|
|
347
|
-
* ```
|
|
348
|
-
*
|
|
349
|
-
* @example
|
|
350
|
-
* ```html
|
|
351
|
-
* <tbw-grid [pinnedColumns]="true" [columns]="[
|
|
352
|
-
* { field: 'id', sticky: 'left' },
|
|
353
|
-
* { field: 'name' },
|
|
354
|
-
* { field: 'actions', sticky: 'right' }
|
|
355
|
-
* ]" />
|
|
356
|
-
* ```
|
|
357
|
-
*/
|
|
358
|
-
pinnedColumns: import('@angular/core').InputSignal<boolean | undefined>;
|
|
359
|
-
/**
|
|
360
|
-
* Enable multi-level column headers (column groups).
|
|
361
|
-
*
|
|
362
|
-
* **Requires feature import:**
|
|
363
|
-
* ```typescript
|
|
364
|
-
* import '@toolbox-web/grid-angular/features/grouping-columns';
|
|
365
|
-
* ```
|
|
366
|
-
*
|
|
367
|
-
* @example
|
|
368
|
-
* ```html
|
|
369
|
-
* <tbw-grid [groupingColumns]="{ columnGroups: [...] }" />
|
|
370
|
-
* ```
|
|
371
|
-
*/
|
|
372
|
-
groupingColumns: import('@angular/core').InputSignal<boolean | GroupingColumnsConfig | undefined>;
|
|
373
|
-
/**
|
|
374
|
-
* Enable horizontal column virtualization for wide grids.
|
|
375
|
-
*
|
|
376
|
-
* **Requires feature import:**
|
|
377
|
-
* ```typescript
|
|
378
|
-
* import '@toolbox-web/grid-angular/features/column-virtualization';
|
|
379
|
-
* ```
|
|
380
|
-
*
|
|
381
|
-
* @example
|
|
382
|
-
* ```html
|
|
383
|
-
* <tbw-grid [columnVirtualization]="true" />
|
|
384
|
-
* ```
|
|
385
|
-
*/
|
|
386
|
-
columnVirtualization: import('@angular/core').InputSignal<boolean | ColumnVirtualizationConfig | undefined>;
|
|
387
|
-
/**
|
|
388
|
-
* Enable row drag-to-reorder.
|
|
389
|
-
*
|
|
390
|
-
* **Requires feature import:**
|
|
391
|
-
* ```typescript
|
|
392
|
-
* import '@toolbox-web/grid-angular/features/row-reorder';
|
|
393
|
-
* ```
|
|
394
|
-
*
|
|
395
|
-
* @example
|
|
396
|
-
* ```html
|
|
397
|
-
* <tbw-grid [rowReorder]="true" />
|
|
398
|
-
* ```
|
|
399
|
-
*/
|
|
400
|
-
rowReorder: import('@angular/core').InputSignal<boolean | RowReorderConfig | undefined>;
|
|
401
|
-
/**
|
|
402
|
-
* Enable row grouping by field values.
|
|
403
|
-
*
|
|
404
|
-
* **Requires feature import:**
|
|
405
|
-
* ```typescript
|
|
406
|
-
* import '@toolbox-web/grid-angular/features/grouping-rows';
|
|
407
|
-
* ```
|
|
408
|
-
*
|
|
409
|
-
* @example
|
|
410
|
-
* ```html
|
|
411
|
-
* <tbw-grid [groupingRows]="{ groupBy: ['department'] }" />
|
|
412
|
-
* ```
|
|
413
|
-
*/
|
|
414
|
-
groupingRows: import('@angular/core').InputSignal<GroupingRowsConfig | undefined>;
|
|
415
|
-
/**
|
|
416
|
-
* Enable pinned rows (aggregation/status bar).
|
|
417
|
-
*
|
|
418
|
-
* **Requires feature import:**
|
|
419
|
-
* ```typescript
|
|
420
|
-
* import '@toolbox-web/grid-angular/features/pinned-rows';
|
|
421
|
-
* ```
|
|
422
|
-
*
|
|
423
|
-
* @example
|
|
424
|
-
* ```html
|
|
425
|
-
* <tbw-grid [pinnedRows]="{ bottom: [{ type: 'aggregation' }] }" />
|
|
426
|
-
* ```
|
|
427
|
-
*/
|
|
428
|
-
pinnedRows: import('@angular/core').InputSignal<boolean | PinnedRowsConfig | undefined>;
|
|
429
|
-
/**
|
|
430
|
-
* Enable hierarchical tree view.
|
|
431
|
-
*
|
|
432
|
-
* **Requires feature import:**
|
|
433
|
-
* ```typescript
|
|
434
|
-
* import '@toolbox-web/grid-angular/features/tree';
|
|
435
|
-
* ```
|
|
436
|
-
*
|
|
437
|
-
* @example
|
|
438
|
-
* ```html
|
|
439
|
-
* <tbw-grid [tree]="{ childrenField: 'children' }" />
|
|
440
|
-
* ```
|
|
441
|
-
*/
|
|
442
|
-
tree: import('@angular/core').InputSignal<boolean | TreeConfig | undefined>;
|
|
443
|
-
/**
|
|
444
|
-
* Enable master-detail expandable rows.
|
|
445
|
-
*
|
|
446
|
-
* **Requires feature import:**
|
|
447
|
-
* ```typescript
|
|
448
|
-
* import '@toolbox-web/grid-angular/features/master-detail';
|
|
449
|
-
* ```
|
|
450
|
-
*
|
|
451
|
-
* @example
|
|
452
|
-
* ```html
|
|
453
|
-
* <tbw-grid [masterDetail]="{ detailRenderer: detailFn }" />
|
|
454
|
-
* ```
|
|
455
|
-
*/
|
|
456
|
-
masterDetail: import('@angular/core').InputSignal<MasterDetailConfig | undefined>;
|
|
457
|
-
/**
|
|
458
|
-
* Enable responsive card layout for narrow viewports.
|
|
459
|
-
*
|
|
460
|
-
* **Requires feature import:**
|
|
461
|
-
* ```typescript
|
|
462
|
-
* import '@toolbox-web/grid-angular/features/responsive';
|
|
463
|
-
* ```
|
|
464
|
-
*
|
|
465
|
-
* @example
|
|
466
|
-
* ```html
|
|
467
|
-
* <tbw-grid [responsive]="{ breakpoint: 768 }" />
|
|
468
|
-
* ```
|
|
469
|
-
*/
|
|
470
|
-
responsive: import('@angular/core').InputSignal<boolean | ResponsivePluginConfig<unknown> | undefined>;
|
|
471
|
-
/**
|
|
472
|
-
* Enable undo/redo for cell edits. Requires editing to be enabled.
|
|
473
|
-
*
|
|
474
|
-
* **Requires feature import:**
|
|
475
|
-
* ```typescript
|
|
476
|
-
* import '@toolbox-web/grid-angular/features/undo-redo';
|
|
477
|
-
* ```
|
|
478
|
-
*
|
|
479
|
-
* @example
|
|
480
|
-
* ```html
|
|
481
|
-
* <tbw-grid [editing]="'dblclick'" [undoRedo]="true" />
|
|
482
|
-
* ```
|
|
483
|
-
*/
|
|
484
|
-
undoRedo: import('@angular/core').InputSignal<boolean | UndoRedoConfig | undefined>;
|
|
485
|
-
/**
|
|
486
|
-
* Enable CSV/JSON export functionality.
|
|
487
|
-
*
|
|
488
|
-
* **Requires feature import:**
|
|
489
|
-
* ```typescript
|
|
490
|
-
* import '@toolbox-web/grid-angular/features/export';
|
|
491
|
-
* ```
|
|
492
|
-
*
|
|
493
|
-
* @example
|
|
494
|
-
* ```html
|
|
495
|
-
* <tbw-grid [export]="true" />
|
|
496
|
-
* <tbw-grid [export]="{ filename: 'data.csv' }" />
|
|
497
|
-
* ```
|
|
498
|
-
*/
|
|
499
|
-
exportFeature: import('@angular/core').InputSignal<boolean | ExportConfig | undefined>;
|
|
500
|
-
/**
|
|
501
|
-
* Enable print functionality.
|
|
502
|
-
*
|
|
503
|
-
* **Requires feature import:**
|
|
504
|
-
* ```typescript
|
|
505
|
-
* import '@toolbox-web/grid-angular/features/print';
|
|
506
|
-
* ```
|
|
507
|
-
*
|
|
508
|
-
* @example
|
|
509
|
-
* ```html
|
|
510
|
-
* <tbw-grid [print]="true" />
|
|
511
|
-
* ```
|
|
512
|
-
*/
|
|
513
|
-
print: import('@angular/core').InputSignal<boolean | PrintConfig | undefined>;
|
|
514
|
-
/**
|
|
515
|
-
* Enable pivot table functionality.
|
|
516
|
-
*
|
|
517
|
-
* **Requires feature import:**
|
|
518
|
-
* ```typescript
|
|
519
|
-
* import '@toolbox-web/grid-angular/features/pivot';
|
|
520
|
-
* ```
|
|
521
|
-
*
|
|
522
|
-
* @example
|
|
523
|
-
* ```html
|
|
524
|
-
* <tbw-grid [pivot]="{ rowFields: ['category'], valueField: 'sales' }" />
|
|
525
|
-
* ```
|
|
526
|
-
*/
|
|
527
|
-
pivot: import('@angular/core').InputSignal<PivotConfig | undefined>;
|
|
528
|
-
/**
|
|
529
|
-
* Enable server-side data operations.
|
|
530
|
-
*
|
|
531
|
-
* **Requires feature import:**
|
|
532
|
-
* ```typescript
|
|
533
|
-
* import '@toolbox-web/grid-angular/features/server-side';
|
|
534
|
-
* ```
|
|
535
|
-
*
|
|
536
|
-
* @example
|
|
537
|
-
* ```html
|
|
538
|
-
* <tbw-grid [serverSide]="{ dataSource: fetchDataFn }" />
|
|
539
|
-
* ```
|
|
540
|
-
*/
|
|
541
|
-
serverSide: import('@angular/core').InputSignal<ServerSideConfig | undefined>;
|
|
542
|
-
/**
|
|
543
|
-
* Emitted when a cell is clicked.
|
|
544
|
-
*
|
|
545
|
-
* @example
|
|
546
|
-
* ```html
|
|
547
|
-
* <tbw-grid (cellClick)="onCellClick($event)">...</tbw-grid>
|
|
548
|
-
* ```
|
|
549
|
-
*/
|
|
550
|
-
cellClick: import('@angular/core').OutputEmitterRef<CellClickDetail<any>>;
|
|
551
|
-
/**
|
|
552
|
-
* Emitted when a row is clicked.
|
|
553
|
-
*
|
|
554
|
-
* @example
|
|
555
|
-
* ```html
|
|
556
|
-
* <tbw-grid (rowClick)="onRowClick($event)">...</tbw-grid>
|
|
557
|
-
* ```
|
|
558
|
-
*/
|
|
559
|
-
rowClick: import('@angular/core').OutputEmitterRef<RowClickDetail<any>>;
|
|
560
|
-
/**
|
|
561
|
-
* Emitted when a cell is activated (Enter key or double-click).
|
|
562
|
-
*
|
|
563
|
-
* @example
|
|
564
|
-
* ```html
|
|
565
|
-
* <tbw-grid (cellActivate)="onCellActivate($event)">...</tbw-grid>
|
|
566
|
-
* ```
|
|
567
|
-
*/
|
|
568
|
-
cellActivate: import('@angular/core').OutputEmitterRef<CellActivateDetail<any>>;
|
|
569
|
-
/**
|
|
570
|
-
* Emitted when a cell value changes (before commit).
|
|
571
|
-
*
|
|
572
|
-
* @example
|
|
573
|
-
* ```html
|
|
574
|
-
* <tbw-grid (cellChange)="onCellChange($event)">...</tbw-grid>
|
|
575
|
-
* ```
|
|
576
|
-
*/
|
|
577
|
-
cellChange: import('@angular/core').OutputEmitterRef<CellChangeDetail<any>>;
|
|
578
|
-
/**
|
|
579
|
-
* Emitted when a cell value is committed (inline editing).
|
|
580
|
-
* Provides the row, field, new value, and change tracking information.
|
|
581
|
-
*
|
|
582
|
-
* @example
|
|
583
|
-
* ```html
|
|
584
|
-
* <tbw-grid (cellCommit)="onCellCommit($event)">...</tbw-grid>
|
|
585
|
-
* ```
|
|
586
|
-
*
|
|
587
|
-
* ```typescript
|
|
588
|
-
* onCellCommit(event: CellCommitEvent) {
|
|
589
|
-
* console.log(`Changed ${event.field} to ${event.value} in row ${event.rowIndex}`);
|
|
590
|
-
* }
|
|
591
|
-
* ```
|
|
592
|
-
*/
|
|
593
|
-
cellCommit: import('@angular/core').OutputEmitterRef<CellCommitEvent<unknown, unknown>>;
|
|
594
|
-
/**
|
|
595
|
-
* Emitted when a row's values are committed (bulk/row editing).
|
|
596
|
-
* Provides the row data and change tracking information.
|
|
597
|
-
*
|
|
598
|
-
* @example
|
|
599
|
-
* ```html
|
|
600
|
-
* <tbw-grid (rowCommit)="onRowCommit($event)">...</tbw-grid>
|
|
601
|
-
* ```
|
|
602
|
-
*/
|
|
603
|
-
rowCommit: import('@angular/core').OutputEmitterRef<RowCommitEvent<unknown>>;
|
|
604
|
-
/**
|
|
605
|
-
* Emitted when the changed rows are reset.
|
|
606
|
-
*
|
|
607
|
-
* @example
|
|
608
|
-
* ```html
|
|
609
|
-
* <tbw-grid (changedRowsReset)="onChangedRowsReset($event)">...</tbw-grid>
|
|
610
|
-
* ```
|
|
611
|
-
*/
|
|
612
|
-
changedRowsReset: import('@angular/core').OutputEmitterRef<ChangedRowsResetDetail<unknown>>;
|
|
613
|
-
/**
|
|
614
|
-
* Emitted when sort state changes.
|
|
615
|
-
*
|
|
616
|
-
* @example
|
|
617
|
-
* ```html
|
|
618
|
-
* <tbw-grid (sortChange)="onSortChange($event)">...</tbw-grid>
|
|
619
|
-
* ```
|
|
620
|
-
*/
|
|
621
|
-
sortChange: import('@angular/core').OutputEmitterRef<SortChangeDetail>;
|
|
622
|
-
/**
|
|
623
|
-
* Emitted when filter values change.
|
|
624
|
-
*
|
|
625
|
-
* @example
|
|
626
|
-
* ```html
|
|
627
|
-
* <tbw-grid (filterChange)="onFilterChange($event)">...</tbw-grid>
|
|
628
|
-
* ```
|
|
629
|
-
*/
|
|
630
|
-
filterChange: import('@angular/core').OutputEmitterRef<FilterChangeDetail>;
|
|
631
|
-
/**
|
|
632
|
-
* Emitted when a column is resized.
|
|
633
|
-
*
|
|
634
|
-
* @example
|
|
635
|
-
* ```html
|
|
636
|
-
* <tbw-grid (columnResize)="onColumnResize($event)">...</tbw-grid>
|
|
637
|
-
* ```
|
|
638
|
-
*/
|
|
639
|
-
columnResize: import('@angular/core').OutputEmitterRef<ColumnResizeDetail>;
|
|
640
|
-
/**
|
|
641
|
-
* Emitted when a column is moved via drag-and-drop.
|
|
642
|
-
*
|
|
643
|
-
* @example
|
|
644
|
-
* ```html
|
|
645
|
-
* <tbw-grid (columnMove)="onColumnMove($event)">...</tbw-grid>
|
|
646
|
-
* ```
|
|
647
|
-
*/
|
|
648
|
-
columnMove: import('@angular/core').OutputEmitterRef<ColumnMoveDetail>;
|
|
649
|
-
/**
|
|
650
|
-
* Emitted when column visibility changes.
|
|
651
|
-
*
|
|
652
|
-
* @example
|
|
653
|
-
* ```html
|
|
654
|
-
* <tbw-grid (columnVisibility)="onColumnVisibility($event)">...</tbw-grid>
|
|
655
|
-
* ```
|
|
656
|
-
*/
|
|
657
|
-
columnVisibility: import('@angular/core').OutputEmitterRef<ColumnVisibilityDetail>;
|
|
658
|
-
/**
|
|
659
|
-
* Emitted when column state changes (resize, reorder, visibility).
|
|
660
|
-
*
|
|
661
|
-
* @example
|
|
662
|
-
* ```html
|
|
663
|
-
* <tbw-grid (columnStateChange)="onColumnStateChange($event)">...</tbw-grid>
|
|
664
|
-
* ```
|
|
665
|
-
*/
|
|
666
|
-
columnStateChange: import('@angular/core').OutputEmitterRef<GridColumnState>;
|
|
667
|
-
/**
|
|
668
|
-
* Emitted when selection changes.
|
|
669
|
-
*
|
|
670
|
-
* @example
|
|
671
|
-
* ```html
|
|
672
|
-
* <tbw-grid (selectionChange)="onSelectionChange($event)">...</tbw-grid>
|
|
673
|
-
* ```
|
|
674
|
-
*/
|
|
675
|
-
selectionChange: import('@angular/core').OutputEmitterRef<SelectionChangeDetail>;
|
|
676
|
-
/**
|
|
677
|
-
* Emitted when a row is moved via drag-and-drop.
|
|
678
|
-
*
|
|
679
|
-
* @example
|
|
680
|
-
* ```html
|
|
681
|
-
* <tbw-grid (rowMove)="onRowMove($event)">...</tbw-grid>
|
|
682
|
-
* ```
|
|
683
|
-
*/
|
|
684
|
-
rowMove: import('@angular/core').OutputEmitterRef<RowMoveDetail<any>>;
|
|
685
|
-
/**
|
|
686
|
-
* Emitted when a group is expanded or collapsed.
|
|
687
|
-
*
|
|
688
|
-
* @example
|
|
689
|
-
* ```html
|
|
690
|
-
* <tbw-grid (groupToggle)="onGroupToggle($event)">...</tbw-grid>
|
|
691
|
-
* ```
|
|
692
|
-
*/
|
|
693
|
-
groupToggle: import('@angular/core').OutputEmitterRef<GroupToggleDetail>;
|
|
694
|
-
/**
|
|
695
|
-
* Emitted when a tree node is expanded.
|
|
696
|
-
*
|
|
697
|
-
* @example
|
|
698
|
-
* ```html
|
|
699
|
-
* <tbw-grid (treeExpand)="onTreeExpand($event)">...</tbw-grid>
|
|
700
|
-
* ```
|
|
701
|
-
*/
|
|
702
|
-
treeExpand: import('@angular/core').OutputEmitterRef<TreeExpandDetail<any>>;
|
|
703
|
-
/**
|
|
704
|
-
* Emitted when a detail panel is expanded or collapsed.
|
|
705
|
-
*
|
|
706
|
-
* @example
|
|
707
|
-
* ```html
|
|
708
|
-
* <tbw-grid (detailExpand)="onDetailExpand($event)">...</tbw-grid>
|
|
709
|
-
* ```
|
|
710
|
-
*/
|
|
711
|
-
detailExpand: import('@angular/core').OutputEmitterRef<DetailExpandDetail>;
|
|
712
|
-
/**
|
|
713
|
-
* Emitted when responsive mode changes (table ↔ card).
|
|
714
|
-
*
|
|
715
|
-
* @example
|
|
716
|
-
* ```html
|
|
717
|
-
* <tbw-grid (responsiveChange)="onResponsiveChange($event)">...</tbw-grid>
|
|
718
|
-
* ```
|
|
719
|
-
*/
|
|
720
|
-
responsiveChange: import('@angular/core').OutputEmitterRef<ResponsiveChangeDetail>;
|
|
721
|
-
/**
|
|
722
|
-
* Emitted when cells are copied to clipboard.
|
|
723
|
-
*
|
|
724
|
-
* @example
|
|
725
|
-
* ```html
|
|
726
|
-
* <tbw-grid (copy)="onCopy($event)">...</tbw-grid>
|
|
727
|
-
* ```
|
|
728
|
-
*/
|
|
729
|
-
copy: import('@angular/core').OutputEmitterRef<CopyDetail>;
|
|
730
|
-
/**
|
|
731
|
-
* Emitted when cells are pasted from clipboard.
|
|
732
|
-
*
|
|
733
|
-
* @example
|
|
734
|
-
* ```html
|
|
735
|
-
* <tbw-grid (paste)="onPaste($event)">...</tbw-grid>
|
|
736
|
-
* ```
|
|
737
|
-
*/
|
|
738
|
-
paste: import('@angular/core').OutputEmitterRef<PasteDetail>;
|
|
739
|
-
/**
|
|
740
|
-
* Emitted when undo/redo is performed.
|
|
741
|
-
*
|
|
742
|
-
* @example
|
|
743
|
-
* ```html
|
|
744
|
-
* <tbw-grid (undoRedoAction)="onUndoRedo($event)">...</tbw-grid>
|
|
745
|
-
* ```
|
|
746
|
-
*/
|
|
747
|
-
undoRedoAction: import('@angular/core').OutputEmitterRef<UndoRedoDetail>;
|
|
748
|
-
/**
|
|
749
|
-
* Emitted when export completes.
|
|
750
|
-
*
|
|
751
|
-
* @example
|
|
752
|
-
* ```html
|
|
753
|
-
* <tbw-grid (exportComplete)="onExportComplete($event)">...</tbw-grid>
|
|
754
|
-
* ```
|
|
755
|
-
*/
|
|
756
|
-
exportComplete: import('@angular/core').OutputEmitterRef<ExportCompleteDetail>;
|
|
757
|
-
/**
|
|
758
|
-
* Emitted when print starts.
|
|
759
|
-
*
|
|
760
|
-
* @example
|
|
761
|
-
* ```html
|
|
762
|
-
* <tbw-grid (printStart)="onPrintStart($event)">...</tbw-grid>
|
|
763
|
-
* ```
|
|
764
|
-
*/
|
|
765
|
-
printStart: import('@angular/core').OutputEmitterRef<PrintStartDetail>;
|
|
766
|
-
/**
|
|
767
|
-
* Emitted when print completes.
|
|
768
|
-
*
|
|
769
|
-
* @example
|
|
770
|
-
* ```html
|
|
771
|
-
* <tbw-grid (printComplete)="onPrintComplete($event)">...</tbw-grid>
|
|
772
|
-
* ```
|
|
773
|
-
*/
|
|
774
|
-
printComplete: import('@angular/core').OutputEmitterRef<PrintCompleteDetail>;
|
|
775
|
-
private readonly eventOutputMap;
|
|
776
|
-
private eventListeners;
|
|
777
|
-
ngOnInit(): void;
|
|
778
|
-
/**
|
|
779
|
-
* Sets up event listeners for all outputs using the eventOutputMap.
|
|
780
|
-
*/
|
|
781
|
-
private setupEventListeners;
|
|
782
|
-
/**
|
|
783
|
-
* Creates plugins from feature inputs.
|
|
784
|
-
* Uses the feature registry to allow tree-shaking - only imported features are bundled.
|
|
785
|
-
* Returns the array of created plugins (doesn't modify grid).
|
|
786
|
-
*/
|
|
787
|
-
private createFeaturePlugins;
|
|
788
|
-
ngAfterContentInit(): void;
|
|
789
|
-
/**
|
|
790
|
-
* Registers custom styles into the grid.
|
|
791
|
-
* Uses the grid's registerStyles() API for clean encapsulation.
|
|
792
|
-
*/
|
|
793
|
-
private registerCustomStyles;
|
|
794
|
-
/**
|
|
795
|
-
* Configures the MasterDetailPlugin after Angular templates are registered.
|
|
796
|
-
* - If plugin exists: refresh its detail renderer
|
|
797
|
-
* - If plugin doesn't exist but <tbw-grid-detail> is present: dynamically import and add the plugin
|
|
798
|
-
*/
|
|
799
|
-
private configureMasterDetail;
|
|
800
|
-
/**
|
|
801
|
-
* Configures the ResponsivePlugin with Angular template-based card renderer.
|
|
802
|
-
* - If plugin exists: updates its cardRenderer configuration
|
|
803
|
-
* - If plugin doesn't exist but <tbw-grid-responsive-card> is present: logs a warning
|
|
804
|
-
*/
|
|
805
|
-
private configureResponsiveCard;
|
|
806
|
-
ngOnDestroy(): void;
|
|
807
|
-
}
|
|
808
|
-
//# sourceMappingURL=grid.directive.d.ts.map
|