@toolbox-web/grid-angular 0.18.3 → 0.18.4

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 (40) hide show
  1. package/fesm2022/toolbox-web-grid-angular-features-export.mjs +1 -1
  2. package/fesm2022/toolbox-web-grid-angular-features-export.mjs.map +1 -1
  3. package/fesm2022/toolbox-web-grid-angular-features-filtering.mjs +13 -1
  4. package/fesm2022/toolbox-web-grid-angular-features-filtering.mjs.map +1 -1
  5. package/fesm2022/toolbox-web-grid-angular-features-print.mjs +1 -1
  6. package/fesm2022/toolbox-web-grid-angular-features-print.mjs.map +1 -1
  7. package/fesm2022/toolbox-web-grid-angular-features-selection.mjs +4 -4
  8. package/fesm2022/toolbox-web-grid-angular-features-selection.mjs.map +1 -1
  9. package/fesm2022/toolbox-web-grid-angular-features-undo-redo.mjs +3 -3
  10. package/fesm2022/toolbox-web-grid-angular-features-undo-redo.mjs.map +1 -1
  11. package/fesm2022/toolbox-web-grid-angular.mjs +134 -134
  12. package/fesm2022/toolbox-web-grid-angular.mjs.map +1 -1
  13. package/package.json +1 -1
  14. package/types/toolbox-web-grid-angular-features-clipboard.d.ts.map +1 -1
  15. package/types/toolbox-web-grid-angular-features-column-virtualization.d.ts.map +1 -1
  16. package/types/toolbox-web-grid-angular-features-context-menu.d.ts.map +1 -1
  17. package/types/toolbox-web-grid-angular-features-editing.d.ts.map +1 -1
  18. package/types/toolbox-web-grid-angular-features-export.d.ts.map +1 -1
  19. package/types/toolbox-web-grid-angular-features-filtering.d.ts +13 -1
  20. package/types/toolbox-web-grid-angular-features-filtering.d.ts.map +1 -1
  21. package/types/toolbox-web-grid-angular-features-grouping-columns.d.ts.map +1 -1
  22. package/types/toolbox-web-grid-angular-features-grouping-rows.d.ts.map +1 -1
  23. package/types/toolbox-web-grid-angular-features-master-detail.d.ts.map +1 -1
  24. package/types/toolbox-web-grid-angular-features-multi-sort.d.ts.map +1 -1
  25. package/types/toolbox-web-grid-angular-features-pinned-columns.d.ts.map +1 -1
  26. package/types/toolbox-web-grid-angular-features-pinned-rows.d.ts.map +1 -1
  27. package/types/toolbox-web-grid-angular-features-pivot.d.ts.map +1 -1
  28. package/types/toolbox-web-grid-angular-features-print.d.ts.map +1 -1
  29. package/types/toolbox-web-grid-angular-features-reorder-columns.d.ts.map +1 -1
  30. package/types/toolbox-web-grid-angular-features-reorder-rows.d.ts.map +1 -1
  31. package/types/toolbox-web-grid-angular-features-reorder.d.ts.map +1 -1
  32. package/types/toolbox-web-grid-angular-features-responsive.d.ts.map +1 -1
  33. package/types/toolbox-web-grid-angular-features-row-reorder.d.ts.map +1 -1
  34. package/types/toolbox-web-grid-angular-features-selection.d.ts.map +1 -1
  35. package/types/toolbox-web-grid-angular-features-server-side.d.ts.map +1 -1
  36. package/types/toolbox-web-grid-angular-features-sorting.d.ts.map +1 -1
  37. package/types/toolbox-web-grid-angular-features-tree.d.ts.map +1 -1
  38. package/types/toolbox-web-grid-angular-features-undo-redo.d.ts.map +1 -1
  39. package/types/toolbox-web-grid-angular-features-visibility.d.ts.map +1 -1
  40. package/types/toolbox-web-grid-angular.d.ts.map +1 -1
@@ -91,7 +91,7 @@ class GridColumnEditor {
91
91
  /**
92
92
  * Query for the ng-template content child.
93
93
  */
94
- template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : []));
94
+ template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : /* istanbul ignore next */ []));
95
95
  /** Effect that triggers when the template is available */
96
96
  onTemplateReceived = effect(() => {
97
97
  const template = this.template();
@@ -99,7 +99,7 @@ class GridColumnEditor {
99
99
  // Register the template for this element
100
100
  editorTemplateRegistry.set(this.elementRef.nativeElement, template);
101
101
  }
102
- }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : []));
102
+ }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : /* istanbul ignore next */ []));
103
103
  /**
104
104
  * Static type guard for template context.
105
105
  * Enables type inference in templates.
@@ -107,10 +107,10 @@ class GridColumnEditor {
107
107
  static ngTemplateContextGuard(dir, ctx) {
108
108
  return true;
109
109
  }
110
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridColumnEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
111
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.1", type: GridColumnEditor, isStandalone: true, selector: "tbw-grid-column-editor", queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
110
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridColumnEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
111
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.5", type: GridColumnEditor, isStandalone: true, selector: "tbw-grid-column-editor", queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
112
112
  }
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridColumnEditor, decorators: [{
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridColumnEditor, decorators: [{
114
114
  type: Directive,
115
115
  args: [{ selector: 'tbw-grid-column-editor' }]
116
116
  }], propDecorators: { template: [{ type: i0.ContentChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
@@ -165,7 +165,7 @@ class GridColumnView {
165
165
  /**
166
166
  * Query for the ng-template content child.
167
167
  */
168
- template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : []));
168
+ template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : /* istanbul ignore next */ []));
169
169
  /** Effect that triggers when the template is available */
170
170
  onTemplateReceived = effect(() => {
171
171
  const template = this.template();
@@ -173,7 +173,7 @@ class GridColumnView {
173
173
  // Register the template for this element
174
174
  templateRegistry.set(this.elementRef.nativeElement, template);
175
175
  }
176
- }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : []));
176
+ }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : /* istanbul ignore next */ []));
177
177
  /**
178
178
  * Static type guard for template context.
179
179
  * Enables type inference in templates.
@@ -181,10 +181,10 @@ class GridColumnView {
181
181
  static ngTemplateContextGuard(dir, ctx) {
182
182
  return true;
183
183
  }
184
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridColumnView, deps: [], target: i0.ɵɵFactoryTarget.Directive });
185
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.1", type: GridColumnView, isStandalone: true, selector: "tbw-grid-column-view", queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
184
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridColumnView, deps: [], target: i0.ɵɵFactoryTarget.Directive });
185
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.5", type: GridColumnView, isStandalone: true, selector: "tbw-grid-column-view", queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
186
186
  }
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridColumnView, decorators: [{
187
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridColumnView, decorators: [{
188
188
  type: Directive,
189
189
  args: [{ selector: 'tbw-grid-column-view' }]
190
190
  }], propDecorators: { template: [{ type: i0.ContentChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
@@ -261,13 +261,13 @@ function getDetailConfig(gridElement) {
261
261
  class GridDetailView {
262
262
  elementRef = inject((ElementRef));
263
263
  /** Whether to show the expand/collapse column. Default: true */
264
- showExpandColumn = input(true, ...(ngDevMode ? [{ debugName: "showExpandColumn" }] : []));
264
+ showExpandColumn = input(true, ...(ngDevMode ? [{ debugName: "showExpandColumn" }] : /* istanbul ignore next */ []));
265
265
  /** Animation style for expand/collapse. Default: 'slide' */
266
- animation = input('slide', ...(ngDevMode ? [{ debugName: "animation" }] : []));
266
+ animation = input('slide', ...(ngDevMode ? [{ debugName: "animation" }] : /* istanbul ignore next */ []));
267
267
  /**
268
268
  * Query for the ng-template content child.
269
269
  */
270
- template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : []));
270
+ template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : /* istanbul ignore next */ []));
271
271
  /** Effect that triggers when the template is available */
272
272
  onTemplateReceived = effect(() => {
273
273
  const template = this.template();
@@ -275,7 +275,7 @@ class GridDetailView {
275
275
  // Register the template for this element
276
276
  detailTemplateRegistry.set(this.elementRef.nativeElement, template);
277
277
  }
278
- }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : []));
278
+ }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : /* istanbul ignore next */ []));
279
279
  /**
280
280
  * Static type guard for template context.
281
281
  * Enables type inference in templates.
@@ -283,10 +283,10 @@ class GridDetailView {
283
283
  static ngTemplateContextGuard(dir, ctx) {
284
284
  return true;
285
285
  }
286
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridDetailView, deps: [], target: i0.ɵɵFactoryTarget.Directive });
287
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.1", type: GridDetailView, isStandalone: true, selector: "tbw-grid-detail", inputs: { showExpandColumn: { classPropertyName: "showExpandColumn", publicName: "showExpandColumn", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
286
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridDetailView, deps: [], target: i0.ɵɵFactoryTarget.Directive });
287
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.5", type: GridDetailView, isStandalone: true, selector: "tbw-grid-detail", inputs: { showExpandColumn: { classPropertyName: "showExpandColumn", publicName: "showExpandColumn", isSignal: true, isRequired: false, transformFunction: null }, animation: { classPropertyName: "animation", publicName: "animation", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
288
288
  }
289
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridDetailView, decorators: [{
289
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridDetailView, decorators: [{
290
290
  type: Directive,
291
291
  args: [{ selector: 'tbw-grid-detail' }]
292
292
  }], propDecorators: { showExpandColumn: [{ type: i0.Input, args: [{ isSignal: true, alias: "showExpandColumn", required: false }] }], animation: [{ type: i0.Input, args: [{ isSignal: true, alias: "animation", required: false }] }], template: [{ type: i0.ContentChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
@@ -365,7 +365,7 @@ class GridFormArray {
365
365
  /**
366
366
  * The FormArray to bind to the grid.
367
367
  */
368
- formArray = input.required(...(ngDevMode ? [{ debugName: "formArray" }] : []));
368
+ formArray = input.required(...(ngDevMode ? [{ debugName: "formArray" }] : /* istanbul ignore next */ []));
369
369
  /**
370
370
  * Whether to automatically sync Angular validation state to grid's visual invalid styling.
371
371
  *
@@ -377,7 +377,7 @@ class GridFormArray {
377
377
  *
378
378
  * @default true
379
379
  */
380
- syncValidation = input(true, ...(ngDevMode ? [{ debugName: "syncValidation" }] : []));
380
+ syncValidation = input(true, ...(ngDevMode ? [{ debugName: "syncValidation" }] : /* istanbul ignore next */ []));
381
381
  /**
382
382
  * Effect that sets up valueChanges subscription when FormArray changes.
383
383
  * This handles both initial binding and when the FormArray reference changes.
@@ -408,7 +408,7 @@ class GridFormArray {
408
408
  return;
409
409
  grid.rows = formArray.getRawValue();
410
410
  });
411
- }, ...(ngDevMode ? [{ debugName: "syncFormArrayToGrid" }] : []));
411
+ }, ...(ngDevMode ? [{ debugName: "syncFormArrayToGrid" }] : /* istanbul ignore next */ []));
412
412
  ngOnInit() {
413
413
  const grid = this.elementRef.nativeElement;
414
414
  if (!grid)
@@ -757,10 +757,10 @@ class GridFormArray {
757
757
  return typeof error === 'string' ? error : (error?.message ?? `Validation error: ${firstKey}`);
758
758
  }
759
759
  }
760
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridFormArray, deps: [], target: i0.ɵɵFactoryTarget.Directive });
761
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.1", type: GridFormArray, isStandalone: true, selector: "tbw-grid[formArray]", inputs: { formArray: { classPropertyName: "formArray", publicName: "formArray", isSignal: true, isRequired: true, transformFunction: null }, syncValidation: { classPropertyName: "syncValidation", publicName: "syncValidation", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
760
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridFormArray, deps: [], target: i0.ɵɵFactoryTarget.Directive });
761
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.5", type: GridFormArray, isStandalone: true, selector: "tbw-grid[formArray]", inputs: { formArray: { classPropertyName: "formArray", publicName: "formArray", isSignal: true, isRequired: true, transformFunction: null }, syncValidation: { classPropertyName: "syncValidation", publicName: "syncValidation", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
762
762
  }
763
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridFormArray, decorators: [{
763
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridFormArray, decorators: [{
764
764
  type: Directive,
765
765
  args: [{
766
766
  selector: 'tbw-grid[formArray]',
@@ -823,7 +823,7 @@ class GridResponsiveCard {
823
823
  /**
824
824
  * The ng-template containing the card content.
825
825
  */
826
- template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : []));
826
+ template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : /* istanbul ignore next */ []));
827
827
  /**
828
828
  * Effect that registers the template when it becomes available.
829
829
  */
@@ -832,17 +832,17 @@ class GridResponsiveCard {
832
832
  if (template) {
833
833
  responsiveCardTemplateRegistry.set(this.elementRef.nativeElement, template);
834
834
  }
835
- }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : []));
835
+ }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : /* istanbul ignore next */ []));
836
836
  /**
837
837
  * Type guard for template context inference.
838
838
  */
839
839
  static ngTemplateContextGuard(_directive, context) {
840
840
  return true;
841
841
  }
842
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridResponsiveCard, deps: [], target: i0.ɵɵFactoryTarget.Directive });
843
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.1", type: GridResponsiveCard, isStandalone: true, selector: "tbw-grid-responsive-card", queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
842
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridResponsiveCard, deps: [], target: i0.ɵɵFactoryTarget.Directive });
843
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.5", type: GridResponsiveCard, isStandalone: true, selector: "tbw-grid-responsive-card", queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
844
844
  }
845
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridResponsiveCard, decorators: [{
845
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridResponsiveCard, decorators: [{
846
846
  type: Directive,
847
847
  args: [{
848
848
  selector: 'tbw-grid-responsive-card',
@@ -916,19 +916,19 @@ function getToolPanelElements(gridElement) {
916
916
  class GridToolPanel {
917
917
  elementRef = inject((ElementRef));
918
918
  /** Unique panel identifier (required) */
919
- id = input.required({ ...(ngDevMode ? { debugName: "id" } : {}), alias: 'id' });
919
+ id = input.required({ ...(ngDevMode ? { debugName: "id" } : /* istanbul ignore next */ {}), alias: 'id' });
920
920
  /** Panel title shown in accordion header (required) */
921
- title = input.required({ ...(ngDevMode ? { debugName: "title" } : {}), alias: 'title' });
921
+ title = input.required({ ...(ngDevMode ? { debugName: "title" } : /* istanbul ignore next */ {}), alias: 'title' });
922
922
  /** Icon for accordion section header (emoji or text) */
923
- icon = input(...(ngDevMode ? [undefined, { debugName: "icon" }] : []));
923
+ icon = input(...(ngDevMode ? [undefined, { debugName: "icon" }] : /* istanbul ignore next */ []));
924
924
  /** Tooltip for accordion section header */
925
- tooltip = input(...(ngDevMode ? [undefined, { debugName: "tooltip" }] : []));
925
+ tooltip = input(...(ngDevMode ? [undefined, { debugName: "tooltip" }] : /* istanbul ignore next */ []));
926
926
  /** Panel order priority (lower = first, default: 100) */
927
- order = input(100, ...(ngDevMode ? [{ debugName: "order" }] : []));
927
+ order = input(100, ...(ngDevMode ? [{ debugName: "order" }] : /* istanbul ignore next */ []));
928
928
  /**
929
929
  * Query for the ng-template content child.
930
930
  */
931
- template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : []));
931
+ template = contentChild((TemplateRef), ...(ngDevMode ? [{ debugName: "template" }] : /* istanbul ignore next */ []));
932
932
  /** Effect that triggers when the template is available */
933
933
  onTemplateReceived = effect(() => {
934
934
  const template = this.template();
@@ -947,7 +947,7 @@ class GridToolPanel {
947
947
  // Register the template for this element
948
948
  toolPanelTemplateRegistry.set(element, template);
949
949
  }
950
- }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : []));
950
+ }, ...(ngDevMode ? [{ debugName: "onTemplateReceived" }] : /* istanbul ignore next */ []));
951
951
  /**
952
952
  * Static type guard for template context.
953
953
  * Enables type inference in templates.
@@ -955,10 +955,10 @@ class GridToolPanel {
955
955
  static ngTemplateContextGuard(dir, ctx) {
956
956
  return true;
957
957
  }
958
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridToolPanel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
959
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.1", type: GridToolPanel, isStandalone: true, selector: "tbw-grid-tool-panel", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, order: { classPropertyName: "order", publicName: "order", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
958
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridToolPanel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
959
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.5", type: GridToolPanel, isStandalone: true, selector: "tbw-grid-tool-panel", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, order: { classPropertyName: "order", publicName: "order", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "template", first: true, predicate: (TemplateRef), descendants: true, isSignal: true }], ngImport: i0 });
960
960
  }
961
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridToolPanel, decorators: [{
961
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridToolPanel, decorators: [{
962
962
  type: Directive,
963
963
  args: [{ selector: 'tbw-grid-tool-panel' }]
964
964
  }], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: true }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], tooltip: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltip", required: false }] }], order: [{ type: i0.Input, args: [{ isSignal: true, alias: "order", required: false }] }], template: [{ type: i0.ContentChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
@@ -1078,10 +1078,10 @@ class TbwRenderer {
1078
1078
  static ngTemplateContextGuard(dir, ctx) {
1079
1079
  return true;
1080
1080
  }
1081
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1082
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TbwRenderer, isStandalone: true, selector: "[tbwRenderer]", ngImport: i0 });
1081
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwRenderer, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1082
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.5", type: TbwRenderer, isStandalone: true, selector: "[tbwRenderer]", ngImport: i0 });
1083
1083
  }
1084
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwRenderer, decorators: [{
1084
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwRenderer, decorators: [{
1085
1085
  type: Directive,
1086
1086
  args: [{ selector: '[tbwRenderer]' }]
1087
1087
  }], ctorParameters: () => [] });
@@ -1163,10 +1163,10 @@ class TbwEditor {
1163
1163
  static ngTemplateContextGuard(dir, ctx) {
1164
1164
  return true;
1165
1165
  }
1166
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1167
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TbwEditor, isStandalone: true, selector: "[tbwEditor]", ngImport: i0 });
1166
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1167
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.5", type: TbwEditor, isStandalone: true, selector: "[tbwEditor]", ngImport: i0 });
1168
1168
  }
1169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwEditor, decorators: [{
1169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwEditor, decorators: [{
1170
1170
  type: Directive,
1171
1171
  args: [{ selector: '[tbwEditor]' }]
1172
1172
  }], ctorParameters: () => [] });
@@ -1361,10 +1361,10 @@ class GridTypeRegistry {
1361
1361
  // the actual functions that instantiate Angular components
1362
1362
  };
1363
1363
  }
1364
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridTypeRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1365
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridTypeRegistry, providedIn: 'root' });
1364
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridTypeRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1365
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridTypeRegistry, providedIn: 'root' });
1366
1366
  }
1367
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridTypeRegistry, decorators: [{
1367
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridTypeRegistry, decorators: [{
1368
1368
  type: Injectable,
1369
1369
  args: [{ providedIn: 'root' }]
1370
1370
  }], ctorParameters: () => [] });
@@ -2528,10 +2528,10 @@ class GridIconRegistry {
2528
2528
  getRegisteredIcons() {
2529
2529
  return Array.from(this.icons.keys());
2530
2530
  }
2531
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridIconRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2532
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridIconRegistry, providedIn: 'root' });
2531
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridIconRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2532
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridIconRegistry, providedIn: 'root' });
2533
2533
  }
2534
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridIconRegistry, decorators: [{
2534
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridIconRegistry, decorators: [{
2535
2535
  type: Injectable,
2536
2536
  args: [{ providedIn: 'root' }]
2537
2537
  }], ctorParameters: () => [] });
@@ -2613,9 +2613,9 @@ function provideGridIcons(icons) {
2613
2613
  function injectGrid() {
2614
2614
  const elementRef = inject(ElementRef);
2615
2615
  // Reactive signals
2616
- const isReady = signal(false, ...(ngDevMode ? [{ debugName: "isReady" }] : []));
2617
- const config = signal(null, ...(ngDevMode ? [{ debugName: "config" }] : []));
2618
- const element = signal(null, ...(ngDevMode ? [{ debugName: "element" }] : []));
2616
+ const isReady = signal(false, ...(ngDevMode ? [{ debugName: "isReady" }] : /* istanbul ignore next */ []));
2617
+ const config = signal(null, ...(ngDevMode ? [{ debugName: "config" }] : /* istanbul ignore next */ []));
2618
+ const element = signal(null, ...(ngDevMode ? [{ debugName: "element" }] : /* istanbul ignore next */ []));
2619
2619
  // Initialize after render
2620
2620
  afterNextRender(() => {
2621
2621
  const gridElement = elementRef.nativeElement.querySelector('tbw-grid');
@@ -2639,7 +2639,7 @@ function injectGrid() {
2639
2639
  if (!currentConfig?.columns)
2640
2640
  return [];
2641
2641
  return currentConfig.columns.filter((col) => !col.hidden);
2642
- }, ...(ngDevMode ? [{ debugName: "visibleColumns" }] : []));
2642
+ }, ...(ngDevMode ? [{ debugName: "visibleColumns" }] : /* istanbul ignore next */ []));
2643
2643
  // ═══════════════════════════════════════════════════════════════════
2644
2644
  // CORE METHODS
2645
2645
  // ═══════════════════════════════════════════════════════════════════
@@ -2853,7 +2853,7 @@ class BaseFilterPanel {
2853
2853
  * - `clearFilter()` — clear the filter for this column
2854
2854
  * - `closePanel()` — close the filter panel
2855
2855
  */
2856
- params = input.required(...(ngDevMode ? [{ debugName: "params" }] : []));
2856
+ params = input.required(...(ngDevMode ? [{ debugName: "params" }] : /* istanbul ignore next */ []));
2857
2857
  /**
2858
2858
  * Apply the filter then close the panel.
2859
2859
  *
@@ -2874,10 +2874,10 @@ class BaseFilterPanel {
2874
2874
  this.params().clearFilter();
2875
2875
  this.params().closePanel();
2876
2876
  }
2877
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseFilterPanel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2878
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.1", type: BaseFilterPanel, isStandalone: true, inputs: { params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });
2877
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseFilterPanel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2878
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.5", type: BaseFilterPanel, isStandalone: true, inputs: { params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });
2879
2879
  }
2880
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseFilterPanel, decorators: [{
2880
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseFilterPanel, decorators: [{
2881
2881
  type: Directive
2882
2882
  }], propDecorators: { params: [{ type: i0.Input, args: [{ isSignal: true, alias: "params", required: true }] }] } });
2883
2883
 
@@ -2953,20 +2953,20 @@ class BaseGridEditor {
2953
2953
  * The cell value. Used when FormControl is not available.
2954
2954
  * When a FormControl is provided, value is derived from control.value instead.
2955
2955
  */
2956
- value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
2956
+ value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : /* istanbul ignore next */ []));
2957
2957
  /**
2958
2958
  * The full row data object.
2959
2959
  */
2960
- row = input(...(ngDevMode ? [undefined, { debugName: "row" }] : []));
2960
+ row = input(...(ngDevMode ? [undefined, { debugName: "row" }] : /* istanbul ignore next */ []));
2961
2961
  /**
2962
2962
  * The column configuration.
2963
2963
  */
2964
- column = input(...(ngDevMode ? [undefined, { debugName: "column" }] : []));
2964
+ column = input(...(ngDevMode ? [undefined, { debugName: "column" }] : /* istanbul ignore next */ []));
2965
2965
  /**
2966
2966
  * The FormControl for this cell, if the grid is bound to a FormArray.
2967
2967
  * When provided, the editor uses control.value instead of the value input.
2968
2968
  */
2969
- control = input(...(ngDevMode ? [undefined, { debugName: "control" }] : []));
2969
+ control = input(...(ngDevMode ? [undefined, { debugName: "control" }] : /* istanbul ignore next */ []));
2970
2970
  // ============================================================================
2971
2971
  // Outputs
2972
2972
  // ============================================================================
@@ -2992,35 +2992,35 @@ class BaseGridEditor {
2992
2992
  return ctrl.value;
2993
2993
  }
2994
2994
  return this.value();
2995
- }, ...(ngDevMode ? [{ debugName: "currentValue" }] : []));
2995
+ }, ...(ngDevMode ? [{ debugName: "currentValue" }] : /* istanbul ignore next */ []));
2996
2996
  /**
2997
2997
  * Whether the control is invalid (has validation errors).
2998
2998
  * Returns false if no FormControl is available.
2999
2999
  */
3000
3000
  isInvalid = computed(() => {
3001
3001
  return this.control()?.invalid ?? false;
3002
- }, ...(ngDevMode ? [{ debugName: "isInvalid" }] : []));
3002
+ }, ...(ngDevMode ? [{ debugName: "isInvalid" }] : /* istanbul ignore next */ []));
3003
3003
  /**
3004
3004
  * Whether the control is dirty (has been modified).
3005
3005
  * Returns false if no FormControl is available.
3006
3006
  */
3007
3007
  isDirty = computed(() => {
3008
3008
  return this.control()?.dirty ?? false;
3009
- }, ...(ngDevMode ? [{ debugName: "isDirty" }] : []));
3009
+ }, ...(ngDevMode ? [{ debugName: "isDirty" }] : /* istanbul ignore next */ []));
3010
3010
  /**
3011
3011
  * Whether the control has been touched.
3012
3012
  * Returns false if no FormControl is available.
3013
3013
  */
3014
3014
  isTouched = computed(() => {
3015
3015
  return this.control()?.touched ?? false;
3016
- }, ...(ngDevMode ? [{ debugName: "isTouched" }] : []));
3016
+ }, ...(ngDevMode ? [{ debugName: "isTouched" }] : /* istanbul ignore next */ []));
3017
3017
  /**
3018
3018
  * Whether the control has any validation errors.
3019
3019
  */
3020
3020
  hasErrors = computed(() => {
3021
3021
  const ctrl = this.control();
3022
3022
  return ctrl?.errors != null && Object.keys(ctrl.errors).length > 0;
3023
- }, ...(ngDevMode ? [{ debugName: "hasErrors" }] : []));
3023
+ }, ...(ngDevMode ? [{ debugName: "hasErrors" }] : /* istanbul ignore next */ []));
3024
3024
  /**
3025
3025
  * The first error message from the control's validation errors.
3026
3026
  * Returns an empty string if no errors.
@@ -3031,7 +3031,7 @@ class BaseGridEditor {
3031
3031
  return '';
3032
3032
  const firstKey = Object.keys(ctrl.errors)[0];
3033
3033
  return this.getErrorMessage(firstKey, ctrl.errors[firstKey]);
3034
- }, ...(ngDevMode ? [{ debugName: "firstErrorMessage" }] : []));
3034
+ }, ...(ngDevMode ? [{ debugName: "firstErrorMessage" }] : /* istanbul ignore next */ []));
3035
3035
  /**
3036
3036
  * All error messages from the control's validation errors.
3037
3037
  */
@@ -3040,7 +3040,7 @@ class BaseGridEditor {
3040
3040
  if (!ctrl?.errors)
3041
3041
  return [];
3042
3042
  return Object.entries(ctrl.errors).map(([key, value]) => this.getErrorMessage(key, value));
3043
- }, ...(ngDevMode ? [{ debugName: "allErrorMessages" }] : []));
3043
+ }, ...(ngDevMode ? [{ debugName: "allErrorMessages" }] : /* istanbul ignore next */ []));
3044
3044
  // ============================================================================
3045
3045
  // Lifecycle
3046
3046
  // ============================================================================
@@ -3186,10 +3186,10 @@ class BaseGridEditor {
3186
3186
  return `Invalid value (${errorKey})`;
3187
3187
  }
3188
3188
  }
3189
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseGridEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3190
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.1", type: BaseGridEditor, isStandalone: true, inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, row: { classPropertyName: "row", publicName: "row", isSignal: true, isRequired: false, transformFunction: null }, column: { classPropertyName: "column", publicName: "column", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { commit: "commit", cancel: "cancel" }, ngImport: i0 });
3189
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseGridEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3190
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.5", type: BaseGridEditor, isStandalone: true, inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, row: { classPropertyName: "row", publicName: "row", isSignal: true, isRequired: false, transformFunction: null }, column: { classPropertyName: "column", publicName: "column", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { commit: "commit", cancel: "cancel" }, ngImport: i0 });
3191
3191
  }
3192
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseGridEditor, decorators: [{
3192
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseGridEditor, decorators: [{
3193
3193
  type: Directive
3194
3194
  }], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], row: [{ type: i0.Input, args: [{ isSignal: true, alias: "row", required: false }] }], column: [{ type: i0.Input, args: [{ isSignal: true, alias: "column", required: false }] }], control: [{ type: i0.Input, args: [{ isSignal: true, alias: "control", required: false }] }], commit: [{ type: i0.Output, args: ["commit"] }], cancel: [{ type: i0.Output, args: ["cancel"] }] } });
3195
3195
 
@@ -3257,12 +3257,12 @@ class BaseGridEditorCVA extends BaseGridEditor {
3257
3257
  * Signal holding the value written by the form control via `writeValue()`.
3258
3258
  * Updated when the form control pushes a new value (e.g. `patchValue`, `setValue`).
3259
3259
  */
3260
- cvaValue = signal(null, ...(ngDevMode ? [{ debugName: "cvaValue" }] : []));
3260
+ cvaValue = signal(null, ...(ngDevMode ? [{ debugName: "cvaValue" }] : /* istanbul ignore next */ []));
3261
3261
  /**
3262
3262
  * Signal tracking the disabled state set by the form control.
3263
3263
  * Updated when `setDisabledState()` is called by Angular's forms module.
3264
3264
  */
3265
- disabledState = signal(false, ...(ngDevMode ? [{ debugName: "disabledState" }] : []));
3265
+ disabledState = signal(false, ...(ngDevMode ? [{ debugName: "disabledState" }] : /* istanbul ignore next */ []));
3266
3266
  /**
3267
3267
  * Resolved display value.
3268
3268
  *
@@ -3274,7 +3274,7 @@ class BaseGridEditorCVA extends BaseGridEditor {
3274
3274
  */
3275
3275
  displayValue = computed(() => {
3276
3276
  return this.currentValue() ?? this.cvaValue();
3277
- }, ...(ngDevMode ? [{ debugName: "displayValue" }] : []));
3277
+ }, ...(ngDevMode ? [{ debugName: "displayValue" }] : /* istanbul ignore next */ []));
3278
3278
  // ============================================================================
3279
3279
  // ControlValueAccessor Implementation
3280
3280
  // ============================================================================
@@ -3325,10 +3325,10 @@ class BaseGridEditorCVA extends BaseGridEditor {
3325
3325
  // handler and EditingPlugin will apply it correctly)
3326
3326
  this.commitValue(value);
3327
3327
  }
3328
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseGridEditorCVA, deps: null, target: i0.ɵɵFactoryTarget.Directive });
3329
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: BaseGridEditorCVA, isStandalone: true, usesInheritance: true, ngImport: i0 });
3328
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseGridEditorCVA, deps: null, target: i0.ɵɵFactoryTarget.Directive });
3329
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.5", type: BaseGridEditorCVA, isStandalone: true, usesInheritance: true, ngImport: i0 });
3330
3330
  }
3331
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseGridEditorCVA, decorators: [{
3331
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseGridEditorCVA, decorators: [{
3332
3332
  type: Directive
3333
3333
  }] });
3334
3334
 
@@ -3862,10 +3862,10 @@ class BaseOverlayEditor extends BaseGridEditor {
3862
3862
  });
3863
3863
  this._focusObserver.observe(cell, { attributes: true, attributeFilter: ['class'] });
3864
3864
  }
3865
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseOverlayEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3866
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: BaseOverlayEditor, isStandalone: true, usesInheritance: true, ngImport: i0 });
3865
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseOverlayEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3866
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.5", type: BaseOverlayEditor, isStandalone: true, usesInheritance: true, ngImport: i0 });
3867
3867
  }
3868
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BaseOverlayEditor, decorators: [{
3868
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: BaseOverlayEditor, decorators: [{
3869
3869
  type: Directive
3870
3870
  }], ctorParameters: () => [] });
3871
3871
 
@@ -3900,10 +3900,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
3900
3900
  * @category Directive
3901
3901
  */
3902
3902
  class TbwGridColumn {
3903
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwGridColumn, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3904
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TbwGridColumn, isStandalone: true, selector: "tbw-grid-column", ngImport: i0 });
3903
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwGridColumn, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3904
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.5", type: TbwGridColumn, isStandalone: true, selector: "tbw-grid-column", ngImport: i0 });
3905
3905
  }
3906
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwGridColumn, decorators: [{
3906
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwGridColumn, decorators: [{
3907
3907
  type: Directive,
3908
3908
  args: [{
3909
3909
  selector: 'tbw-grid-column',
@@ -3938,10 +3938,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
3938
3938
  * @category Directive
3939
3939
  */
3940
3940
  class TbwGridHeader {
3941
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwGridHeader, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3942
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TbwGridHeader, isStandalone: true, selector: "tbw-grid-header", ngImport: i0 });
3941
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwGridHeader, deps: [], target: i0.ɵɵFactoryTarget.Directive });
3942
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.5", type: TbwGridHeader, isStandalone: true, selector: "tbw-grid-header", ngImport: i0 });
3943
3943
  }
3944
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwGridHeader, decorators: [{
3944
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwGridHeader, decorators: [{
3945
3945
  type: Directive,
3946
3946
  args: [{
3947
3947
  selector: 'tbw-grid-header',
@@ -4052,7 +4052,7 @@ class GridLazyForm {
4052
4052
  * });
4053
4053
  * ```
4054
4054
  */
4055
- lazyForm = input.required(...(ngDevMode ? [{ debugName: "lazyForm" }] : []));
4055
+ lazyForm = input.required(...(ngDevMode ? [{ debugName: "lazyForm" }] : /* istanbul ignore next */ []));
4056
4056
  /**
4057
4057
  * Whether to automatically sync Angular validation state to grid's visual invalid styling.
4058
4058
  *
@@ -4063,7 +4063,7 @@ class GridLazyForm {
4063
4063
  *
4064
4064
  * @default true
4065
4065
  */
4066
- syncValidation = input(true, ...(ngDevMode ? [{ debugName: "syncValidation" }] : []));
4066
+ syncValidation = input(true, ...(ngDevMode ? [{ debugName: "syncValidation" }] : /* istanbul ignore next */ []));
4067
4067
  /**
4068
4068
  * Whether to keep FormGroups cached after a row exits edit mode.
4069
4069
  *
@@ -4072,7 +4072,7 @@ class GridLazyForm {
4072
4072
  *
4073
4073
  * @default false
4074
4074
  */
4075
- keepFormGroups = input(false, ...(ngDevMode ? [{ debugName: "keepFormGroups" }] : []));
4075
+ keepFormGroups = input(false, ...(ngDevMode ? [{ debugName: "keepFormGroups" }] : /* istanbul ignore next */ []));
4076
4076
  /**
4077
4077
  * Emitted when a row's form values change.
4078
4078
  * Useful for auto-save, validation display, or syncing to external state.
@@ -4412,10 +4412,10 @@ class GridLazyForm {
4412
4412
  }
4413
4413
  return true;
4414
4414
  }
4415
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridLazyForm, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4416
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.1", type: GridLazyForm, isStandalone: true, selector: "tbw-grid[lazyForm]", inputs: { lazyForm: { classPropertyName: "lazyForm", publicName: "lazyForm", isSignal: true, isRequired: true, transformFunction: null }, syncValidation: { classPropertyName: "syncValidation", publicName: "syncValidation", isSignal: true, isRequired: false, transformFunction: null }, keepFormGroups: { classPropertyName: "keepFormGroups", publicName: "keepFormGroups", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { rowFormChange: "rowFormChange" }, ngImport: i0 });
4415
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridLazyForm, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4416
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.5", type: GridLazyForm, isStandalone: true, selector: "tbw-grid[lazyForm]", inputs: { lazyForm: { classPropertyName: "lazyForm", publicName: "lazyForm", isSignal: true, isRequired: true, transformFunction: null }, syncValidation: { classPropertyName: "syncValidation", publicName: "syncValidation", isSignal: true, isRequired: false, transformFunction: null }, keepFormGroups: { classPropertyName: "keepFormGroups", publicName: "keepFormGroups", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { rowFormChange: "rowFormChange" }, ngImport: i0 });
4417
4417
  }
4418
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: GridLazyForm, decorators: [{
4418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: GridLazyForm, decorators: [{
4419
4419
  type: Directive,
4420
4420
  args: [{
4421
4421
  selector: 'tbw-grid[lazyForm]',
@@ -4451,10 +4451,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
4451
4451
  * @category Directive
4452
4452
  */
4453
4453
  class TbwGridToolButtons {
4454
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwGridToolButtons, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4455
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TbwGridToolButtons, isStandalone: true, selector: "tbw-grid-tool-buttons", ngImport: i0 });
4454
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwGridToolButtons, deps: [], target: i0.ɵɵFactoryTarget.Directive });
4455
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.5", type: TbwGridToolButtons, isStandalone: true, selector: "tbw-grid-tool-buttons", ngImport: i0 });
4456
4456
  }
4457
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TbwGridToolButtons, decorators: [{
4457
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: TbwGridToolButtons, decorators: [{
4458
4458
  type: Directive,
4459
4459
  args: [{
4460
4460
  selector: 'tbw-grid-tool-buttons',
@@ -4620,7 +4620,7 @@ class Grid {
4620
4620
  * <tbw-grid [customStyles]="customStyles">...</tbw-grid>
4621
4621
  * ```
4622
4622
  */
4623
- customStyles = input(...(ngDevMode ? [undefined, { debugName: "customStyles" }] : []));
4623
+ customStyles = input(...(ngDevMode ? [undefined, { debugName: "customStyles" }] : /* istanbul ignore next */ []));
4624
4624
  /**
4625
4625
  * Grid-wide sorting toggle.
4626
4626
  * When false, disables sorting for all columns regardless of their individual `sortable` setting.
@@ -4643,7 +4643,7 @@ class Grid {
4643
4643
  * <tbw-grid [sortable]="true" [multiSort]="true" />
4644
4644
  * ```
4645
4645
  */
4646
- sortable = input(...(ngDevMode ? [undefined, { debugName: "sortable" }] : []));
4646
+ sortable = input(...(ngDevMode ? [undefined, { debugName: "sortable" }] : /* istanbul ignore next */ []));
4647
4647
  /**
4648
4648
  * Grid-wide filtering toggle.
4649
4649
  * When false, disables filtering for all columns regardless of their individual `filterable` setting.
@@ -4662,7 +4662,7 @@ class Grid {
4662
4662
  * <tbw-grid [filterable]="true" [filtering]="true" />
4663
4663
  * ```
4664
4664
  */
4665
- filterable = input(...(ngDevMode ? [undefined, { debugName: "filterable" }] : []));
4665
+ filterable = input(...(ngDevMode ? [undefined, { debugName: "filterable" }] : /* istanbul ignore next */ []));
4666
4666
  /**
4667
4667
  * Grid-wide selection toggle.
4668
4668
  * When false, disables selection for all rows/cells.
@@ -4681,7 +4681,7 @@ class Grid {
4681
4681
  * <tbw-grid [selectable]="true" [selection]="'range'" />
4682
4682
  * ```
4683
4683
  */
4684
- selectable = input(...(ngDevMode ? [undefined, { debugName: "selectable" }] : []));
4684
+ selectable = input(...(ngDevMode ? [undefined, { debugName: "selectable" }] : /* istanbul ignore next */ []));
4685
4685
  /**
4686
4686
  * Show a loading overlay on the grid.
4687
4687
  * Use this during initial data fetch or refresh operations.
@@ -4709,7 +4709,7 @@ class Grid {
4709
4709
  * }
4710
4710
  * ```
4711
4711
  */
4712
- loading = input(...(ngDevMode ? [undefined, { debugName: "loading" }] : []));
4712
+ loading = input(...(ngDevMode ? [undefined, { debugName: "loading" }] : /* istanbul ignore next */ []));
4713
4713
  /**
4714
4714
  * The data rows to display in the grid.
4715
4715
  *
@@ -4722,7 +4722,7 @@ class Grid {
4722
4722
  * ```
4723
4723
  */
4724
4724
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4725
- rows = input(...(ngDevMode ? [undefined, { debugName: "rows" }] : []));
4725
+ rows = input(...(ngDevMode ? [undefined, { debugName: "rows" }] : /* istanbul ignore next */ []));
4726
4726
  /**
4727
4727
  * Column configuration array.
4728
4728
  *
@@ -4740,7 +4740,7 @@ class Grid {
4740
4740
  * ```
4741
4741
  */
4742
4742
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4743
- columns = input(...(ngDevMode ? [undefined, { debugName: "columns" }] : []));
4743
+ columns = input(...(ngDevMode ? [undefined, { debugName: "columns" }] : /* istanbul ignore next */ []));
4744
4744
  /**
4745
4745
  * Column sizing strategy.
4746
4746
  *
@@ -4756,7 +4756,7 @@ class Grid {
4756
4756
  * <tbw-grid [rows]="data" [fitMode]="dynamicMode()" />
4757
4757
  * ```
4758
4758
  */
4759
- fitMode = input(...(ngDevMode ? [undefined, { debugName: "fitMode" }] : []));
4759
+ fitMode = input(...(ngDevMode ? [undefined, { debugName: "fitMode" }] : /* istanbul ignore next */ []));
4760
4760
  /**
4761
4761
  * Grid configuration object with optional Angular-specific extensions.
4762
4762
  *
@@ -4794,7 +4794,7 @@ class Grid {
4794
4794
  * ```
4795
4795
  */
4796
4796
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4797
- gridConfig = input(...(ngDevMode ? [undefined, { debugName: "gridConfig" }] : []));
4797
+ gridConfig = input(...(ngDevMode ? [undefined, { debugName: "gridConfig" }] : /* istanbul ignore next */ []));
4798
4798
  /**
4799
4799
  * @deprecated Use `gridConfig` instead. This input will be removed in v2.
4800
4800
  *
@@ -4810,7 +4810,7 @@ class Grid {
4810
4810
  * ```
4811
4811
  */
4812
4812
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4813
- angularConfig = input(...(ngDevMode ? [undefined, { debugName: "angularConfig" }] : []));
4813
+ angularConfig = input(...(ngDevMode ? [undefined, { debugName: "angularConfig" }] : /* istanbul ignore next */ []));
4814
4814
  // ═══════════════════════════════════════════════════════════════════════════
4815
4815
  // FEATURE INPUTS - Declarative plugin configuration
4816
4816
  // ═══════════════════════════════════════════════════════════════════════════
@@ -4832,7 +4832,7 @@ class Grid {
4832
4832
  * ```
4833
4833
  */
4834
4834
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4835
- selection = input(...(ngDevMode ? [undefined, { debugName: "selection" }] : []));
4835
+ selection = input(...(ngDevMode ? [undefined, { debugName: "selection" }] : /* istanbul ignore next */ []));
4836
4836
  /**
4837
4837
  * Enable inline cell editing.
4838
4838
  *
@@ -4855,7 +4855,7 @@ class Grid {
4855
4855
  * <tbw-grid [editing]="{ editOn: 'dblclick', onBeforeEditClose: myCallback }" />
4856
4856
  * ```
4857
4857
  */
4858
- editing = input(...(ngDevMode ? [undefined, { debugName: "editing" }] : []));
4858
+ editing = input(...(ngDevMode ? [undefined, { debugName: "editing" }] : /* istanbul ignore next */ []));
4859
4859
  /**
4860
4860
  * Enable clipboard copy/paste. Requires selection to be enabled.
4861
4861
  *
@@ -4869,7 +4869,7 @@ class Grid {
4869
4869
  * <tbw-grid [selection]="'range'" [clipboard]="true" />
4870
4870
  * ```
4871
4871
  */
4872
- clipboard = input(...(ngDevMode ? [undefined, { debugName: "clipboard" }] : []));
4872
+ clipboard = input(...(ngDevMode ? [undefined, { debugName: "clipboard" }] : /* istanbul ignore next */ []));
4873
4873
  /**
4874
4874
  * Enable right-click context menu.
4875
4875
  *
@@ -4883,7 +4883,7 @@ class Grid {
4883
4883
  * <tbw-grid [contextMenu]="true" />
4884
4884
  * ```
4885
4885
  */
4886
- contextMenu = input(...(ngDevMode ? [undefined, { debugName: "contextMenu" }] : []));
4886
+ contextMenu = input(...(ngDevMode ? [undefined, { debugName: "contextMenu" }] : /* istanbul ignore next */ []));
4887
4887
  /**
4888
4888
  * Enable multi-column sorting.
4889
4889
  *
@@ -4907,7 +4907,7 @@ class Grid {
4907
4907
  * <tbw-grid [multiSort]="{ maxSortColumns: 3 }" />
4908
4908
  * ```
4909
4909
  */
4910
- multiSort = input(...(ngDevMode ? [undefined, { debugName: "multiSort" }] : []));
4910
+ multiSort = input(...(ngDevMode ? [undefined, { debugName: "multiSort" }] : /* istanbul ignore next */ []));
4911
4911
  /**
4912
4912
  * @deprecated Use `[multiSort]` instead. Will be removed in v2.
4913
4913
  *
@@ -4918,7 +4918,7 @@ class Grid {
4918
4918
  * import '@toolbox-web/grid-angular/features/multi-sort';
4919
4919
  * ```
4920
4920
  */
4921
- sorting = input(...(ngDevMode ? [undefined, { debugName: "sorting" }] : []));
4921
+ sorting = input(...(ngDevMode ? [undefined, { debugName: "sorting" }] : /* istanbul ignore next */ []));
4922
4922
  /**
4923
4923
  * Enable column filtering.
4924
4924
  *
@@ -4934,7 +4934,7 @@ class Grid {
4934
4934
  * ```
4935
4935
  */
4936
4936
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
4937
- filtering = input(...(ngDevMode ? [undefined, { debugName: "filtering" }] : []));
4937
+ filtering = input(...(ngDevMode ? [undefined, { debugName: "filtering" }] : /* istanbul ignore next */ []));
4938
4938
  /**
4939
4939
  * Enable column drag-to-reorder.
4940
4940
  *
@@ -4948,11 +4948,11 @@ class Grid {
4948
4948
  * <tbw-grid [reorderColumns]="true" />
4949
4949
  * ```
4950
4950
  */
4951
- reorderColumns = input(...(ngDevMode ? [undefined, { debugName: "reorderColumns" }] : []));
4951
+ reorderColumns = input(...(ngDevMode ? [undefined, { debugName: "reorderColumns" }] : /* istanbul ignore next */ []));
4952
4952
  /**
4953
4953
  * @deprecated Use `reorderColumns` instead. Will be removed in v2.
4954
4954
  */
4955
- reorder = input(...(ngDevMode ? [undefined, { debugName: "reorder" }] : []));
4955
+ reorder = input(...(ngDevMode ? [undefined, { debugName: "reorder" }] : /* istanbul ignore next */ []));
4956
4956
  /**
4957
4957
  * Enable column visibility toggle panel.
4958
4958
  *
@@ -4966,7 +4966,7 @@ class Grid {
4966
4966
  * <tbw-grid [visibility]="true" />
4967
4967
  * ```
4968
4968
  */
4969
- visibility = input(...(ngDevMode ? [undefined, { debugName: "visibility" }] : []));
4969
+ visibility = input(...(ngDevMode ? [undefined, { debugName: "visibility" }] : /* istanbul ignore next */ []));
4970
4970
  /**
4971
4971
  * Enable pinned/sticky columns.
4972
4972
  * Columns are pinned via the `sticky` column property.
@@ -4985,7 +4985,7 @@ class Grid {
4985
4985
  * ]" />
4986
4986
  * ```
4987
4987
  */
4988
- pinnedColumns = input(...(ngDevMode ? [undefined, { debugName: "pinnedColumns" }] : []));
4988
+ pinnedColumns = input(...(ngDevMode ? [undefined, { debugName: "pinnedColumns" }] : /* istanbul ignore next */ []));
4989
4989
  /**
4990
4990
  * Enable multi-level column headers (column groups).
4991
4991
  *
@@ -4999,7 +4999,7 @@ class Grid {
4999
4999
  * <tbw-grid [groupingColumns]="true" />
5000
5000
  * ```
5001
5001
  */
5002
- groupingColumns = input(...(ngDevMode ? [undefined, { debugName: "groupingColumns" }] : []));
5002
+ groupingColumns = input(...(ngDevMode ? [undefined, { debugName: "groupingColumns" }] : /* istanbul ignore next */ []));
5003
5003
  /**
5004
5004
  * Enable horizontal column virtualization for wide grids.
5005
5005
  *
@@ -5013,7 +5013,7 @@ class Grid {
5013
5013
  * <tbw-grid [columnVirtualization]="true" />
5014
5014
  * ```
5015
5015
  */
5016
- columnVirtualization = input(...(ngDevMode ? [undefined, { debugName: "columnVirtualization" }] : []));
5016
+ columnVirtualization = input(...(ngDevMode ? [undefined, { debugName: "columnVirtualization" }] : /* istanbul ignore next */ []));
5017
5017
  /**
5018
5018
  * Enable row drag-to-reorder.
5019
5019
  *
@@ -5027,11 +5027,11 @@ class Grid {
5027
5027
  * <tbw-grid [reorderRows]="true" />
5028
5028
  * ```
5029
5029
  */
5030
- reorderRows = input(...(ngDevMode ? [undefined, { debugName: "reorderRows" }] : []));
5030
+ reorderRows = input(...(ngDevMode ? [undefined, { debugName: "reorderRows" }] : /* istanbul ignore next */ []));
5031
5031
  /**
5032
5032
  * @deprecated Use `reorderRows` instead. Will be removed in v2.0.
5033
5033
  */
5034
- rowReorder = input(...(ngDevMode ? [undefined, { debugName: "rowReorder" }] : []));
5034
+ rowReorder = input(...(ngDevMode ? [undefined, { debugName: "rowReorder" }] : /* istanbul ignore next */ []));
5035
5035
  /**
5036
5036
  * Enable row grouping by field values.
5037
5037
  *
@@ -5045,7 +5045,7 @@ class Grid {
5045
5045
  * <tbw-grid [groupingRows]="{ groupBy: ['department'] }" />
5046
5046
  * ```
5047
5047
  */
5048
- groupingRows = input(...(ngDevMode ? [undefined, { debugName: "groupingRows" }] : []));
5048
+ groupingRows = input(...(ngDevMode ? [undefined, { debugName: "groupingRows" }] : /* istanbul ignore next */ []));
5049
5049
  /**
5050
5050
  * Enable pinned rows (aggregation/status bar).
5051
5051
  *
@@ -5059,7 +5059,7 @@ class Grid {
5059
5059
  * <tbw-grid [pinnedRows]="{ bottom: [{ type: 'aggregation' }] }" />
5060
5060
  * ```
5061
5061
  */
5062
- pinnedRows = input(...(ngDevMode ? [undefined, { debugName: "pinnedRows" }] : []));
5062
+ pinnedRows = input(...(ngDevMode ? [undefined, { debugName: "pinnedRows" }] : /* istanbul ignore next */ []));
5063
5063
  /**
5064
5064
  * Enable hierarchical tree view.
5065
5065
  *
@@ -5073,7 +5073,7 @@ class Grid {
5073
5073
  * <tbw-grid [tree]="{ childrenField: 'children' }" />
5074
5074
  * ```
5075
5075
  */
5076
- tree = input(...(ngDevMode ? [undefined, { debugName: "tree" }] : []));
5076
+ tree = input(...(ngDevMode ? [undefined, { debugName: "tree" }] : /* istanbul ignore next */ []));
5077
5077
  /**
5078
5078
  * Enable master-detail expandable rows.
5079
5079
  *
@@ -5087,7 +5087,7 @@ class Grid {
5087
5087
  * <tbw-grid [masterDetail]="{ detailRenderer: detailFn }" />
5088
5088
  * ```
5089
5089
  */
5090
- masterDetail = input(...(ngDevMode ? [undefined, { debugName: "masterDetail" }] : []));
5090
+ masterDetail = input(...(ngDevMode ? [undefined, { debugName: "masterDetail" }] : /* istanbul ignore next */ []));
5091
5091
  /**
5092
5092
  * Enable responsive card layout for narrow viewports.
5093
5093
  *
@@ -5101,7 +5101,7 @@ class Grid {
5101
5101
  * <tbw-grid [responsive]="{ breakpoint: 768 }" />
5102
5102
  * ```
5103
5103
  */
5104
- responsive = input(...(ngDevMode ? [undefined, { debugName: "responsive" }] : []));
5104
+ responsive = input(...(ngDevMode ? [undefined, { debugName: "responsive" }] : /* istanbul ignore next */ []));
5105
5105
  /**
5106
5106
  * Enable undo/redo for cell edits. Requires editing to be enabled.
5107
5107
  *
@@ -5115,7 +5115,7 @@ class Grid {
5115
5115
  * <tbw-grid [editing]="'dblclick'" [undoRedo]="true" />
5116
5116
  * ```
5117
5117
  */
5118
- undoRedo = input(...(ngDevMode ? [undefined, { debugName: "undoRedo" }] : []));
5118
+ undoRedo = input(...(ngDevMode ? [undefined, { debugName: "undoRedo" }] : /* istanbul ignore next */ []));
5119
5119
  /**
5120
5120
  * Enable CSV/JSON export functionality.
5121
5121
  *
@@ -5130,7 +5130,7 @@ class Grid {
5130
5130
  * <tbw-grid [export]="{ filename: 'data.csv' }" />
5131
5131
  * ```
5132
5132
  */
5133
- exportFeature = input(undefined, { ...(ngDevMode ? { debugName: "exportFeature" } : {}), alias: 'export' });
5133
+ exportFeature = input(undefined, { ...(ngDevMode ? { debugName: "exportFeature" } : /* istanbul ignore next */ {}), alias: 'export' });
5134
5134
  /**
5135
5135
  * Enable print functionality.
5136
5136
  *
@@ -5144,7 +5144,7 @@ class Grid {
5144
5144
  * <tbw-grid [print]="true" />
5145
5145
  * ```
5146
5146
  */
5147
- print = input(...(ngDevMode ? [undefined, { debugName: "print" }] : []));
5147
+ print = input(...(ngDevMode ? [undefined, { debugName: "print" }] : /* istanbul ignore next */ []));
5148
5148
  /**
5149
5149
  * Enable pivot table functionality.
5150
5150
  *
@@ -5158,7 +5158,7 @@ class Grid {
5158
5158
  * <tbw-grid [pivot]="{ rowFields: ['category'], valueField: 'sales' }" />
5159
5159
  * ```
5160
5160
  */
5161
- pivot = input(...(ngDevMode ? [undefined, { debugName: "pivot" }] : []));
5161
+ pivot = input(...(ngDevMode ? [undefined, { debugName: "pivot" }] : /* istanbul ignore next */ []));
5162
5162
  /**
5163
5163
  * Enable server-side data operations.
5164
5164
  *
@@ -5172,7 +5172,7 @@ class Grid {
5172
5172
  * <tbw-grid [serverSide]="{ dataSource: fetchDataFn }" />
5173
5173
  * ```
5174
5174
  */
5175
- serverSide = input(...(ngDevMode ? [undefined, { debugName: "serverSide" }] : []));
5175
+ serverSide = input(...(ngDevMode ? [undefined, { debugName: "serverSide" }] : /* istanbul ignore next */ []));
5176
5176
  // ═══════════════════════════════════════════════════════════════════════════
5177
5177
  // EVENT OUTPUTS - All grid events
5178
5178
  // ═══════════════════════════════════════════════════════════════════════════
@@ -5670,10 +5670,10 @@ class Grid {
5670
5670
  this.adapter = null;
5671
5671
  }
5672
5672
  }
5673
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: Grid, deps: [], target: i0.ɵɵFactoryTarget.Directive });
5674
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.1", type: Grid, isStandalone: true, selector: "tbw-grid", inputs: { customStyles: { classPropertyName: "customStyles", publicName: "customStyles", isSignal: true, isRequired: false, transformFunction: null }, sortable: { classPropertyName: "sortable", publicName: "sortable", isSignal: true, isRequired: false, transformFunction: null }, filterable: { classPropertyName: "filterable", publicName: "filterable", isSignal: true, isRequired: false, transformFunction: null }, selectable: { classPropertyName: "selectable", publicName: "selectable", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, fitMode: { classPropertyName: "fitMode", publicName: "fitMode", isSignal: true, isRequired: false, transformFunction: null }, gridConfig: { classPropertyName: "gridConfig", publicName: "gridConfig", isSignal: true, isRequired: false, transformFunction: null }, angularConfig: { classPropertyName: "angularConfig", publicName: "angularConfig", isSignal: true, isRequired: false, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null }, editing: { classPropertyName: "editing", publicName: "editing", isSignal: true, isRequired: false, transformFunction: null }, clipboard: { classPropertyName: "clipboard", publicName: "clipboard", isSignal: true, isRequired: false, transformFunction: null }, contextMenu: { classPropertyName: "contextMenu", publicName: "contextMenu", isSignal: true, isRequired: false, transformFunction: null }, multiSort: { classPropertyName: "multiSort", publicName: "multiSort", isSignal: true, isRequired: false, transformFunction: null }, sorting: { classPropertyName: "sorting", publicName: "sorting", isSignal: true, isRequired: false, transformFunction: null }, filtering: { classPropertyName: "filtering", publicName: "filtering", isSignal: true, isRequired: false, transformFunction: null }, reorderColumns: { classPropertyName: "reorderColumns", publicName: "reorderColumns", isSignal: true, isRequired: false, transformFunction: null }, reorder: { classPropertyName: "reorder", publicName: "reorder", isSignal: true, isRequired: false, transformFunction: null }, visibility: { classPropertyName: "visibility", publicName: "visibility", isSignal: true, isRequired: false, transformFunction: null }, pinnedColumns: { classPropertyName: "pinnedColumns", publicName: "pinnedColumns", isSignal: true, isRequired: false, transformFunction: null }, groupingColumns: { classPropertyName: "groupingColumns", publicName: "groupingColumns", isSignal: true, isRequired: false, transformFunction: null }, columnVirtualization: { classPropertyName: "columnVirtualization", publicName: "columnVirtualization", isSignal: true, isRequired: false, transformFunction: null }, reorderRows: { classPropertyName: "reorderRows", publicName: "reorderRows", isSignal: true, isRequired: false, transformFunction: null }, rowReorder: { classPropertyName: "rowReorder", publicName: "rowReorder", isSignal: true, isRequired: false, transformFunction: null }, groupingRows: { classPropertyName: "groupingRows", publicName: "groupingRows", isSignal: true, isRequired: false, transformFunction: null }, pinnedRows: { classPropertyName: "pinnedRows", publicName: "pinnedRows", isSignal: true, isRequired: false, transformFunction: null }, tree: { classPropertyName: "tree", publicName: "tree", isSignal: true, isRequired: false, transformFunction: null }, masterDetail: { classPropertyName: "masterDetail", publicName: "masterDetail", isSignal: true, isRequired: false, transformFunction: null }, responsive: { classPropertyName: "responsive", publicName: "responsive", isSignal: true, isRequired: false, transformFunction: null }, undoRedo: { classPropertyName: "undoRedo", publicName: "undoRedo", isSignal: true, isRequired: false, transformFunction: null }, exportFeature: { classPropertyName: "exportFeature", publicName: "export", isSignal: true, isRequired: false, transformFunction: null }, print: { classPropertyName: "print", publicName: "print", isSignal: true, isRequired: false, transformFunction: null }, pivot: { classPropertyName: "pivot", publicName: "pivot", isSignal: true, isRequired: false, transformFunction: null }, serverSide: { classPropertyName: "serverSide", publicName: "serverSide", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { cellClick: "cellClick", rowClick: "rowClick", cellActivate: "cellActivate", cellChange: "cellChange", cellCommit: "cellCommit", rowCommit: "rowCommit", changedRowsReset: "changedRowsReset", sortChange: "sortChange", filterChange: "filterChange", columnResize: "columnResize", columnMove: "columnMove", columnVisibility: "columnVisibility", columnStateChange: "columnStateChange", selectionChange: "selectionChange", rowMove: "rowMove", groupToggle: "groupToggle", treeExpand: "treeExpand", detailExpand: "detailExpand", responsiveChange: "responsiveChange", copy: "copy", paste: "paste", undoRedoAction: "undoRedoAction", exportComplete: "exportComplete", printStart: "printStart", printComplete: "printComplete" }, ngImport: i0 });
5673
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: Grid, deps: [], target: i0.ɵɵFactoryTarget.Directive });
5674
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.5", type: Grid, isStandalone: true, selector: "tbw-grid", inputs: { customStyles: { classPropertyName: "customStyles", publicName: "customStyles", isSignal: true, isRequired: false, transformFunction: null }, sortable: { classPropertyName: "sortable", publicName: "sortable", isSignal: true, isRequired: false, transformFunction: null }, filterable: { classPropertyName: "filterable", publicName: "filterable", isSignal: true, isRequired: false, transformFunction: null }, selectable: { classPropertyName: "selectable", publicName: "selectable", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, fitMode: { classPropertyName: "fitMode", publicName: "fitMode", isSignal: true, isRequired: false, transformFunction: null }, gridConfig: { classPropertyName: "gridConfig", publicName: "gridConfig", isSignal: true, isRequired: false, transformFunction: null }, angularConfig: { classPropertyName: "angularConfig", publicName: "angularConfig", isSignal: true, isRequired: false, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: true, isRequired: false, transformFunction: null }, editing: { classPropertyName: "editing", publicName: "editing", isSignal: true, isRequired: false, transformFunction: null }, clipboard: { classPropertyName: "clipboard", publicName: "clipboard", isSignal: true, isRequired: false, transformFunction: null }, contextMenu: { classPropertyName: "contextMenu", publicName: "contextMenu", isSignal: true, isRequired: false, transformFunction: null }, multiSort: { classPropertyName: "multiSort", publicName: "multiSort", isSignal: true, isRequired: false, transformFunction: null }, sorting: { classPropertyName: "sorting", publicName: "sorting", isSignal: true, isRequired: false, transformFunction: null }, filtering: { classPropertyName: "filtering", publicName: "filtering", isSignal: true, isRequired: false, transformFunction: null }, reorderColumns: { classPropertyName: "reorderColumns", publicName: "reorderColumns", isSignal: true, isRequired: false, transformFunction: null }, reorder: { classPropertyName: "reorder", publicName: "reorder", isSignal: true, isRequired: false, transformFunction: null }, visibility: { classPropertyName: "visibility", publicName: "visibility", isSignal: true, isRequired: false, transformFunction: null }, pinnedColumns: { classPropertyName: "pinnedColumns", publicName: "pinnedColumns", isSignal: true, isRequired: false, transformFunction: null }, groupingColumns: { classPropertyName: "groupingColumns", publicName: "groupingColumns", isSignal: true, isRequired: false, transformFunction: null }, columnVirtualization: { classPropertyName: "columnVirtualization", publicName: "columnVirtualization", isSignal: true, isRequired: false, transformFunction: null }, reorderRows: { classPropertyName: "reorderRows", publicName: "reorderRows", isSignal: true, isRequired: false, transformFunction: null }, rowReorder: { classPropertyName: "rowReorder", publicName: "rowReorder", isSignal: true, isRequired: false, transformFunction: null }, groupingRows: { classPropertyName: "groupingRows", publicName: "groupingRows", isSignal: true, isRequired: false, transformFunction: null }, pinnedRows: { classPropertyName: "pinnedRows", publicName: "pinnedRows", isSignal: true, isRequired: false, transformFunction: null }, tree: { classPropertyName: "tree", publicName: "tree", isSignal: true, isRequired: false, transformFunction: null }, masterDetail: { classPropertyName: "masterDetail", publicName: "masterDetail", isSignal: true, isRequired: false, transformFunction: null }, responsive: { classPropertyName: "responsive", publicName: "responsive", isSignal: true, isRequired: false, transformFunction: null }, undoRedo: { classPropertyName: "undoRedo", publicName: "undoRedo", isSignal: true, isRequired: false, transformFunction: null }, exportFeature: { classPropertyName: "exportFeature", publicName: "export", isSignal: true, isRequired: false, transformFunction: null }, print: { classPropertyName: "print", publicName: "print", isSignal: true, isRequired: false, transformFunction: null }, pivot: { classPropertyName: "pivot", publicName: "pivot", isSignal: true, isRequired: false, transformFunction: null }, serverSide: { classPropertyName: "serverSide", publicName: "serverSide", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { cellClick: "cellClick", rowClick: "rowClick", cellActivate: "cellActivate", cellChange: "cellChange", cellCommit: "cellCommit", rowCommit: "rowCommit", changedRowsReset: "changedRowsReset", sortChange: "sortChange", filterChange: "filterChange", columnResize: "columnResize", columnMove: "columnMove", columnVisibility: "columnVisibility", columnStateChange: "columnStateChange", selectionChange: "selectionChange", rowMove: "rowMove", groupToggle: "groupToggle", treeExpand: "treeExpand", detailExpand: "detailExpand", responsiveChange: "responsiveChange", copy: "copy", paste: "paste", undoRedoAction: "undoRedoAction", exportComplete: "exportComplete", printStart: "printStart", printComplete: "printComplete" }, ngImport: i0 });
5675
5675
  }
5676
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: Grid, decorators: [{
5676
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: Grid, decorators: [{
5677
5677
  type: Directive,
5678
5678
  args: [{ selector: 'tbw-grid' }]
5679
5679
  }], ctorParameters: () => [], propDecorators: { customStyles: [{ type: i0.Input, args: [{ isSignal: true, alias: "customStyles", required: false }] }], sortable: [{ type: i0.Input, args: [{ isSignal: true, alias: "sortable", required: false }] }], filterable: [{ type: i0.Input, args: [{ isSignal: true, alias: "filterable", required: false }] }], selectable: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectable", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], rows: [{ type: i0.Input, args: [{ isSignal: true, alias: "rows", required: false }] }], columns: [{ type: i0.Input, args: [{ isSignal: true, alias: "columns", required: false }] }], fitMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "fitMode", required: false }] }], gridConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridConfig", required: false }] }], angularConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "angularConfig", required: false }] }], selection: [{ type: i0.Input, args: [{ isSignal: true, alias: "selection", required: false }] }], editing: [{ type: i0.Input, args: [{ isSignal: true, alias: "editing", required: false }] }], clipboard: [{ type: i0.Input, args: [{ isSignal: true, alias: "clipboard", required: false }] }], contextMenu: [{ type: i0.Input, args: [{ isSignal: true, alias: "contextMenu", required: false }] }], multiSort: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiSort", required: false }] }], sorting: [{ type: i0.Input, args: [{ isSignal: true, alias: "sorting", required: false }] }], filtering: [{ type: i0.Input, args: [{ isSignal: true, alias: "filtering", required: false }] }], reorderColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "reorderColumns", required: false }] }], reorder: [{ type: i0.Input, args: [{ isSignal: true, alias: "reorder", required: false }] }], visibility: [{ type: i0.Input, args: [{ isSignal: true, alias: "visibility", required: false }] }], pinnedColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "pinnedColumns", required: false }] }], groupingColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupingColumns", required: false }] }], columnVirtualization: [{ type: i0.Input, args: [{ isSignal: true, alias: "columnVirtualization", required: false }] }], reorderRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "reorderRows", required: false }] }], rowReorder: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowReorder", required: false }] }], groupingRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupingRows", required: false }] }], pinnedRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "pinnedRows", required: false }] }], tree: [{ type: i0.Input, args: [{ isSignal: true, alias: "tree", required: false }] }], masterDetail: [{ type: i0.Input, args: [{ isSignal: true, alias: "masterDetail", required: false }] }], responsive: [{ type: i0.Input, args: [{ isSignal: true, alias: "responsive", required: false }] }], undoRedo: [{ type: i0.Input, args: [{ isSignal: true, alias: "undoRedo", required: false }] }], exportFeature: [{ type: i0.Input, args: [{ isSignal: true, alias: "export", required: false }] }], print: [{ type: i0.Input, args: [{ isSignal: true, alias: "print", required: false }] }], pivot: [{ type: i0.Input, args: [{ isSignal: true, alias: "pivot", required: false }] }], serverSide: [{ type: i0.Input, args: [{ isSignal: true, alias: "serverSide", required: false }] }], cellClick: [{ type: i0.Output, args: ["cellClick"] }], rowClick: [{ type: i0.Output, args: ["rowClick"] }], cellActivate: [{ type: i0.Output, args: ["cellActivate"] }], cellChange: [{ type: i0.Output, args: ["cellChange"] }], cellCommit: [{ type: i0.Output, args: ["cellCommit"] }], rowCommit: [{ type: i0.Output, args: ["rowCommit"] }], changedRowsReset: [{ type: i0.Output, args: ["changedRowsReset"] }], sortChange: [{ type: i0.Output, args: ["sortChange"] }], filterChange: [{ type: i0.Output, args: ["filterChange"] }], columnResize: [{ type: i0.Output, args: ["columnResize"] }], columnMove: [{ type: i0.Output, args: ["columnMove"] }], columnVisibility: [{ type: i0.Output, args: ["columnVisibility"] }], columnStateChange: [{ type: i0.Output, args: ["columnStateChange"] }], selectionChange: [{ type: i0.Output, args: ["selectionChange"] }], rowMove: [{ type: i0.Output, args: ["rowMove"] }], groupToggle: [{ type: i0.Output, args: ["groupToggle"] }], treeExpand: [{ type: i0.Output, args: ["treeExpand"] }], detailExpand: [{ type: i0.Output, args: ["detailExpand"] }], responsiveChange: [{ type: i0.Output, args: ["responsiveChange"] }], copy: [{ type: i0.Output, args: ["copy"] }], paste: [{ type: i0.Output, args: ["paste"] }], undoRedoAction: [{ type: i0.Output, args: ["undoRedoAction"] }], exportComplete: [{ type: i0.Output, args: ["exportComplete"] }], printStart: [{ type: i0.Output, args: ["printStart"] }], printComplete: [{ type: i0.Output, args: ["printComplete"] }] } });