@ni/nimble-angular 30.11.8 → 30.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,7 @@
1
1
  import { Directive, ElementRef, Input, Renderer2 } from '@angular/core';
2
2
  import { tableTag } from '@ni/nimble-components/dist/esm/table';
3
3
  import { TableRowSelectionMode, TableRecordDelayedHierarchyState } from '@ni/nimble-components/dist/esm/table/types';
4
+ import { toBooleanProperty } from '@ni/nimble-angular/internal-utilities';
4
5
  import * as i0 from "@angular/core";
5
6
  export { tableTag };
6
7
  export { TableRowSelectionMode, TableRecordDelayedHierarchyState };
@@ -47,6 +48,12 @@ export class NimbleTableDirective {
47
48
  set selectionMode(value) {
48
49
  this.renderer.setProperty(this.elementRef.nativeElement, 'selectionMode', value);
49
50
  }
51
+ get actionMenusPreserveSelection() {
52
+ return this.elementRef.nativeElement.actionMenusPreserveSelection;
53
+ }
54
+ set actionMenusPreserveSelection(value) {
55
+ this.renderer.setProperty(this.elementRef.nativeElement, 'actionMenusPreserveSelection', toBooleanProperty(value));
56
+ }
50
57
  get validity() {
51
58
  return this.elementRef.nativeElement.validity;
52
59
  }
@@ -73,7 +80,7 @@ export class NimbleTableDirective {
73
80
  await this.elementRef.nativeElement.setRecordHierarchyOptions(hierarchyOptions);
74
81
  }
75
82
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NimbleTableDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
76
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: NimbleTableDirective, selector: "nimble-table", inputs: { data$: "data$", idFieldName: ["id-field-name", "idFieldName"], parentIdFieldName: ["parent-id-field-name", "parentIdFieldName"], selectionMode: ["selection-mode", "selectionMode"] }, ngImport: i0 }); }
83
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: NimbleTableDirective, selector: "nimble-table", inputs: { data$: "data$", idFieldName: ["id-field-name", "idFieldName"], parentIdFieldName: ["parent-id-field-name", "parentIdFieldName"], selectionMode: ["selection-mode", "selectionMode"], actionMenusPreserveSelection: ["action-menus-preserve-selection", "actionMenusPreserveSelection"] }, ngImport: i0 }); }
77
84
  }
78
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NimbleTableDirective, decorators: [{
79
86
  type: Directive,
@@ -92,5 +99,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
92
99
  }], selectionMode: [{
93
100
  type: Input,
94
101
  args: ['selection-mode']
102
+ }], actionMenusPreserveSelection: [{
103
+ type: Input,
104
+ args: ['action-menus-preserve-selection']
95
105
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25pbWJsZS1hbmd1bGFyL3RhYmxlL25pbWJsZS10YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFrQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFjLFFBQVEsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOztBQUlySCxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7QUFFcEIsT0FBTyxFQUFtRixxQkFBcUIsRUFBRSxnQ0FBZ0MsRUFBeUUsQ0FBQztBQUUzTjs7R0FFRztBQUtILE1BQU0sT0FBTyxvQkFBb0I7SUFDN0IsSUFBVyxLQUFLO1FBQ1osT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILElBQW9CLEtBQUssQ0FBQyxLQUFzQztRQUM1RCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFFckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7UUFDNUIsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNSLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUNuQyxJQUFJLENBQUMsRUFBRTtnQkFDSCxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsQ0FBQyxDQUNKLENBQUM7UUFDTixDQUFDO0lBQ0wsQ0FBQztJQUVELElBQVcsV0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFBbUMsV0FBVyxDQUFDLEtBQWdDO1FBQzNFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsSUFBVyxpQkFBaUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBMEMsaUJBQWlCLENBQUMsS0FBZ0M7UUFDeEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQztJQUN2RCxDQUFDO0lBRUQsSUFBb0MsYUFBYSxDQUFDLEtBQTRCO1FBQzFFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7SUFDbEQsQ0FBQztJQUtELFlBQW9DLFFBQW1CLEVBQW1CLFVBQW9DO1FBQTFFLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBbUIsZUFBVSxHQUFWLFVBQVUsQ0FBMEI7SUFBRyxDQUFDO0lBRTNHLFdBQVc7UUFDZCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVNLGFBQWE7UUFDaEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFzQjtRQUN2QyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sS0FBSyxDQUFDLG9CQUFvQjtRQUM3QixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUN0RSxDQUFDO0lBRU0sS0FBSyxDQUFDLG9CQUFvQixDQUFDLFNBQW1CO1FBQ2pELE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVNLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxnQkFBa0Q7UUFDckYsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7K0dBbEZRLG9CQUFvQjttR0FBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsS0FBSztpQkFDcEI7dUdBZXVCLEtBQUs7c0JBQXhCLEtBQUs7Z0JBaUI2QixXQUFXO3NCQUE3QyxLQUFLO3VCQUFDLGVBQWU7Z0JBUW9CLGlCQUFpQjtzQkFBMUQsS0FBSzt1QkFBQyxzQkFBc0I7Z0JBUU8sYUFBYTtzQkFBaEQsS0FBSzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCB0eXBlIE9uRGVzdHJveSwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIFRhYmxlLCB0YWJsZVRhZyB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS90YWJsZSc7XG5pbXBvcnQgdHlwZSB7IFRhYmxlUmVjb3JkLCBUYWJsZUZpZWxkTmFtZSwgVGFibGVGaWVsZFZhbHVlLCBUYWJsZVZhbGlkaXR5LCBUYWJsZUFjdGlvbk1lbnVUb2dnbGVFdmVudERldGFpbCwgVGFibGVSb3dTZWxlY3Rpb25FdmVudERldGFpbCwgVGFibGVDb2x1bW5Db25maWd1cmF0aW9uQ2hhbmdlRXZlbnREZXRhaWwsIFRhYmxlQ29sdW1uQ29uZmlndXJhdGlvbiwgVGFibGVSb3dFeHBhbnNpb25Ub2dnbGVFdmVudERldGFpbCwgVGFibGVTZXRSZWNvcmRIaWVyYXJjaHlPcHRpb25zLCBUYWJsZVJlY29yZEhpZXJhcmNoeU9wdGlvbnMgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUvdHlwZXMnO1xuaW1wb3J0IHsgVGFibGVSb3dTZWxlY3Rpb25Nb2RlLCBUYWJsZVJlY29yZERlbGF5ZWRIaWVyYXJjaHlTdGF0ZSB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS90YWJsZS90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSB7IFRhYmxlIH07XG5leHBvcnQgeyB0YWJsZVRhZyB9O1xuZXhwb3J0IHR5cGUgeyBUYWJsZUFjdGlvbk1lbnVUb2dnbGVFdmVudERldGFpbCwgVGFibGVSb3dTZWxlY3Rpb25FdmVudERldGFpbCwgVGFibGVDb2x1bW5Db25maWd1cmF0aW9uQ2hhbmdlRXZlbnREZXRhaWwsIFRhYmxlQ29sdW1uQ29uZmlndXJhdGlvbiwgVGFibGVSb3dFeHBhbnNpb25Ub2dnbGVFdmVudERldGFpbCB9O1xuZXhwb3J0IHsgdHlwZSBUYWJsZVJlY29yZCwgdHlwZSBUYWJsZUZpZWxkTmFtZSwgdHlwZSBUYWJsZUZpZWxkVmFsdWUsIHR5cGUgVGFibGVWYWxpZGl0eSwgVGFibGVSb3dTZWxlY3Rpb25Nb2RlLCBUYWJsZVJlY29yZERlbGF5ZWRIaWVyYXJjaHlTdGF0ZSwgdHlwZSBUYWJsZVNldFJlY29yZEhpZXJhcmNoeU9wdGlvbnMsIHR5cGUgVGFibGVSZWNvcmRIaWVyYXJjaHlPcHRpb25zIH07XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgQW5ndWxhciBpbnRlZ3JhdGlvbiBmb3IgdGhlIHRhYmxlIGVsZW1lbnQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnbmltYmxlLXRhYmxlJyxcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBOaW1ibGVUYWJsZURpcmVjdGl2ZTxURGF0YSBleHRlbmRzIFRhYmxlUmVjb3JkID0gVGFibGVSZWNvcmQ+IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBwdWJsaWMgZ2V0IGRhdGEkKCk6IE9ic2VydmFibGU8VERhdGFbXT4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhT2JzZXJ2YWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBbiBgT2JzZXJ2YWJsZTxURGF0YVtdPmAgdGhhdCBlbWl0cyBkYXRhIHRoYXQgc2hvdWxkIGJlIHNldCBvbiB0aGUgdGFibGUuXG4gICAgICpcbiAgICAgKiBXaGVuIHVzaW5nIGBkYXRhJGAsIHRoZSB0aW1pbmcgb2Ygd2hlbiB0aGUgdGFibGUgaGFzIGJlZW4gdXBkYXRlZCB3aXRoIGEgbmV3IGNvbGxlY3Rpb24gb2YgZGF0YVxuICAgICAqIGNhbm5vdCBiZSBvYnNlcnZlZCBvciBhd2FpdCBieSBhbiBhcHBsaWNhdGlvbi4gSWYgYW4gYXBwbGljYXRpb24gbmVlZHMgdG8ga25vdyB3aGVuIHRoZSBkYXRhIGhhc1xuICAgICAqIGJlZW4gYXBwbGllZCwgZXhwbGljaXRseSBjYWxsIGBzZXREYXRhKClgIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBgZGF0YSRgIHByb3BlcnR5LiBGb3IgZXhhbXBsZSxcbiAgICAgKiBjYWxsaW5nIGBnZXRTZWxlY3RlZFJlY29yZElkcygpYCBpbW1lZGlhdGVseSBhZnRlciBlbWl0dGluZyBhIG5ldyB2YWx1ZSB0byB0aGUgYGRhdGEkYCBgT2JzZXJ2YWJsZWBcbiAgICAgKiBtYXkgbm90IHRha2UgdGhlIG5ldyBkYXRhIGludG8gYWNjb3VudCB3aGVuIGRldGVybWluaW5nIHRoZSBzZWxlY3RlZCByZWNvcmRzLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBzZXQgZGF0YSQodmFsdWU6IE9ic2VydmFibGU8VERhdGFbXT4gfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5kYXRhU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuXG4gICAgICAgIHRoaXMuZGF0YU9ic2VydmFibGUgPSB2YWx1ZTtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFTdWJzY3JpcHRpb24gPSB2YWx1ZS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgbmV4dCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHZvaWQgdGhpcy5zZXREYXRhKG5leHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGlkRmllbGROYW1lKCk6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaWRGaWVsZE5hbWU7XG4gICAgfVxuXG4gICAgQElucHV0KCdpZC1maWVsZC1uYW1lJykgcHVibGljIHNldCBpZEZpZWxkTmFtZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnaWRGaWVsZE5hbWUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBwYXJlbnRJZEZpZWxkTmFtZSgpOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudElkRmllbGROYW1lO1xuICAgIH1cblxuICAgIEBJbnB1dCgncGFyZW50LWlkLWZpZWxkLW5hbWUnKSBwdWJsaWMgc2V0IHBhcmVudElkRmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdwYXJlbnRJZEZpZWxkTmFtZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNlbGVjdGlvbk1vZGUoKTogVGFibGVSb3dTZWxlY3Rpb25Nb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbk1vZGU7XG4gICAgfVxuXG4gICAgQElucHV0KCdzZWxlY3Rpb24tbW9kZScpIHB1YmxpYyBzZXQgc2VsZWN0aW9uTW9kZSh2YWx1ZTogVGFibGVSb3dTZWxlY3Rpb25Nb2RlKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdzZWxlY3Rpb25Nb2RlJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdmFsaWRpdHkoKTogVGFibGVWYWxpZGl0eSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWxpZGl0eTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGRhdGFPYnNlcnZhYmxlPzogT2JzZXJ2YWJsZTxURGF0YVtdPjtcbiAgICBwcml2YXRlIGRhdGFTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8VGFibGU8VERhdGE+Pikge31cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjaGVja1ZhbGlkaXR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2hlY2tWYWxpZGl0eSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZXREYXRhKGRhdGE6IHJlYWRvbmx5IFREYXRhW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2V0RGF0YShkYXRhKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0U2VsZWN0ZWRSZWNvcmRJZHMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0U2VsZWN0ZWRSZWNvcmRJZHMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2V0U2VsZWN0ZWRSZWNvcmRJZHMocmVjb3JkSWRzOiBzdHJpbmdbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZXRTZWxlY3RlZFJlY29yZElkcyhyZWNvcmRJZHMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZXRSZWNvcmRIaWVyYXJjaHlPcHRpb25zKGhpZXJhcmNoeU9wdGlvbnM6IFRhYmxlU2V0UmVjb3JkSGllcmFyY2h5T3B0aW9uc1tdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNldFJlY29yZEhpZXJhcmNoeU9wdGlvbnMoaGllcmFyY2h5T3B0aW9ucyk7XG4gICAgfVxufVxuIl19
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL25pbWJsZS1hbmd1bGFyL3RhYmxlL25pbWJsZS10YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFrQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFjLFFBQVEsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXJILE9BQU8sRUFBZ0MsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFHeEcsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDO0FBRXBCLE9BQU8sRUFBbUYscUJBQXFCLEVBQUUsZ0NBQWdDLEVBQXlFLENBQUM7QUFFM047O0dBRUc7QUFLSCxNQUFNLE9BQU8sb0JBQW9CO0lBQzdCLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxJQUFvQixLQUFLLENBQUMsS0FBc0M7UUFDNUQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBRXJDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzVCLElBQUksS0FBSyxFQUFFLENBQUM7WUFDUixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FDbkMsSUFBSSxDQUFDLEVBQUU7Z0JBQ0gsS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVCLENBQUMsQ0FDSixDQUFDO1FBQ04sQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FB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NEI7c0JBQWhGLEtBQUs7dUJBQUMsaUNBQWlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgdHlwZSBPbkRlc3Ryb3ksIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBUYWJsZSwgdGFibGVUYWcgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUnO1xuaW1wb3J0IHR5cGUgeyBUYWJsZVJlY29yZCwgVGFibGVGaWVsZE5hbWUsIFRhYmxlRmllbGRWYWx1ZSwgVGFibGVWYWxpZGl0eSwgVGFibGVBY3Rpb25NZW51VG9nZ2xlRXZlbnREZXRhaWwsIFRhYmxlUm93U2VsZWN0aW9uRXZlbnREZXRhaWwsIFRhYmxlQ29sdW1uQ29uZmlndXJhdGlvbkNoYW5nZUV2ZW50RGV0YWlsLCBUYWJsZUNvbHVtbkNvbmZpZ3VyYXRpb24sIFRhYmxlUm93RXhwYW5zaW9uVG9nZ2xlRXZlbnREZXRhaWwsIFRhYmxlU2V0UmVjb3JkSGllcmFyY2h5T3B0aW9ucywgVGFibGVSZWNvcmRIaWVyYXJjaHlPcHRpb25zIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlL3R5cGVzJztcbmltcG9ydCB7IFRhYmxlUm93U2VsZWN0aW9uTW9kZSwgVGFibGVSZWNvcmREZWxheWVkSGllcmFyY2h5U3RhdGUgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUvdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHR5cGUgQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUsIHRvQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQG5pL25pbWJsZS1hbmd1bGFyL2ludGVybmFsLXV0aWxpdGllcyc7XG5cbmV4cG9ydCB0eXBlIHsgVGFibGUgfTtcbmV4cG9ydCB7IHRhYmxlVGFnIH07XG5leHBvcnQgdHlwZSB7IFRhYmxlQWN0aW9uTWVudVRvZ2dsZUV2ZW50RGV0YWlsLCBUYWJsZVJvd1NlbGVjdGlvbkV2ZW50RGV0YWlsLCBUYWJsZUNvbHVtbkNvbmZpZ3VyYXRpb25DaGFuZ2VFdmVudERldGFpbCwgVGFibGVDb2x1bW5Db25maWd1cmF0aW9uLCBUYWJsZVJvd0V4cGFuc2lvblRvZ2dsZUV2ZW50RGV0YWlsIH07XG5leHBvcnQgeyB0eXBlIFRhYmxlUmVjb3JkLCB0eXBlIFRhYmxlRmllbGROYW1lLCB0eXBlIFRhYmxlRmllbGRWYWx1ZSwgdHlwZSBUYWJsZVZhbGlkaXR5LCBUYWJsZVJvd1NlbGVjdGlvbk1vZGUsIFRhYmxlUmVjb3JkRGVsYXllZEhpZXJhcmNoeVN0YXRlLCB0eXBlIFRhYmxlU2V0UmVjb3JkSGllcmFyY2h5T3B0aW9ucywgdHlwZSBUYWJsZVJlY29yZEhpZXJhcmNoeU9wdGlvbnMgfTtcblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gcHJvdmlkZSBBbmd1bGFyIGludGVncmF0aW9uIGZvciB0aGUgdGFibGUgZWxlbWVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICduaW1ibGUtdGFibGUnLFxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIE5pbWJsZVRhYmxlRGlyZWN0aXZlPFREYXRhIGV4dGVuZHMgVGFibGVSZWNvcmQgPSBUYWJsZVJlY29yZD4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHB1YmxpYyBnZXQgZGF0YSQoKTogT2JzZXJ2YWJsZTxURGF0YVtdPiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFPYnNlcnZhYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFuIGBPYnNlcnZhYmxlPFREYXRhW10+YCB0aGF0IGVtaXRzIGRhdGEgdGhhdCBzaG91bGQgYmUgc2V0IG9uIHRoZSB0YWJsZS5cbiAgICAgKlxuICAgICAqIFdoZW4gdXNpbmcgYGRhdGEkYCwgdGhlIHRpbWluZyBvZiB3aGVuIHRoZSB0YWJsZSBoYXMgYmVlbiB1cGRhdGVkIHdpdGggYSBuZXcgY29sbGVjdGlvbiBvZiBkYXRhXG4gICAgICogY2Fubm90IGJlIG9ic2VydmVkIG9yIGF3YWl0IGJ5IGFuIGFwcGxpY2F0aW9uLiBJZiBhbiBhcHBsaWNhdGlvbiBuZWVkcyB0byBrbm93IHdoZW4gdGhlIGRhdGEgaGFzXG4gICAgICogYmVlbiBhcHBsaWVkLCBleHBsaWNpdGx5IGNhbGwgYHNldERhdGEoKWAgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGBkYXRhJGAgcHJvcGVydHkuIEZvciBleGFtcGxlLFxuICAgICAqIGNhbGxpbmcgYGdldFNlbGVjdGVkUmVjb3JkSWRzKClgIGltbWVkaWF0ZWx5IGFmdGVyIGVtaXR0aW5nIGEgbmV3IHZhbHVlIHRvIHRoZSBgZGF0YSRgIGBPYnNlcnZhYmxlYFxuICAgICAqIG1heSBub3QgdGFrZSB0aGUgbmV3IGRhdGEgaW50byBhY2NvdW50IHdoZW4gZGV0ZXJtaW5pbmcgdGhlIHNlbGVjdGVkIHJlY29yZHMuXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIHNldCBkYXRhJCh2YWx1ZTogT2JzZXJ2YWJsZTxURGF0YVtdPiB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLmRhdGFTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG5cbiAgICAgICAgdGhpcy5kYXRhT2JzZXJ2YWJsZSA9IHZhbHVlO1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0YVN1YnNjcmlwdGlvbiA9IHZhbHVlLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICBuZXh0ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdm9pZCB0aGlzLnNldERhdGEobmV4dCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaWRGaWVsZE5hbWUoKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pZEZpZWxkTmFtZTtcbiAgICB9XG5cbiAgICBASW5wdXQoJ2lkLWZpZWxkLW5hbWUnKSBwdWJsaWMgc2V0IGlkRmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdpZEZpZWxkTmFtZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHBhcmVudElkRmllbGROYW1lKCk6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50SWRGaWVsZE5hbWU7XG4gICAgfVxuXG4gICAgQElucHV0KCdwYXJlbnQtaWQtZmllbGQtbmFtZScpIHB1YmxpYyBzZXQgcGFyZW50SWRGaWVsZE5hbWUodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3BhcmVudElkRmllbGROYW1lJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgc2VsZWN0aW9uTW9kZSgpOiBUYWJsZVJvd1NlbGVjdGlvbk1vZGUge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uTW9kZTtcbiAgICB9XG5cbiAgICBASW5wdXQoJ3NlbGVjdGlvbi1tb2RlJykgcHVibGljIHNldCBzZWxlY3Rpb25Nb2RlKHZhbHVlOiBUYWJsZVJvd1NlbGVjdGlvbk1vZGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3NlbGVjdGlvbk1vZGUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBhY3Rpb25NZW51c1ByZXNlcnZlU2VsZWN0aW9uKCk6IEJvb2xlYW5WYWx1ZU9yQXR0cmlidXRlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFjdGlvbk1lbnVzUHJlc2VydmVTZWxlY3Rpb247XG4gICAgfVxuXG4gICAgQElucHV0KCdhY3Rpb24tbWVudXMtcHJlc2VydmUtc2VsZWN0aW9uJykgcHVibGljIHNldCBhY3Rpb25NZW51c1ByZXNlcnZlU2VsZWN0aW9uKHZhbHVlOiBCb29sZWFuVmFsdWVPckF0dHJpYnV0ZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnYWN0aW9uTWVudXNQcmVzZXJ2ZVNlbGVjdGlvbicsIHRvQm9vbGVhblByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB2YWxpZGl0eSgpOiBUYWJsZVZhbGlkaXR5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbGlkaXR5O1xuICAgIH1cblxuICAgIHByaXZhdGUgZGF0YU9ic2VydmFibGU/OiBPYnNlcnZhYmxlPFREYXRhW10+O1xuICAgIHByaXZhdGUgZGF0YVN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxUYWJsZTxURGF0YT4+KSB7fVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGFTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNoZWNrVmFsaWRpdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jaGVja1ZhbGlkaXR5KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNldERhdGEoZGF0YTogcmVhZG9ubHkgVERhdGFbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZXREYXRhKGRhdGEpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRTZWxlY3RlZFJlY29yZElkcygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRTZWxlY3RlZFJlY29yZElkcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZXRTZWxlY3RlZFJlY29yZElkcyhyZWNvcmRJZHM6IHN0cmluZ1tdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGVkUmVjb3JkSWRzKHJlY29yZElkcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNldFJlY29yZEhpZXJhcmNoeU9wdGlvbnMoaGllcmFyY2h5T3B0aW9uczogVGFibGVTZXRSZWNvcmRIaWVyYXJjaHlPcHRpb25zW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2V0UmVjb3JkSGllcmFyY2h5T3B0aW9ucyhoaWVyYXJjaHlPcHRpb25zKTtcbiAgICB9XG59XG4iXX0=
@@ -2,6 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { Input, Directive, NgModule } from '@angular/core';
3
3
  export { tableTag } from '@ni/nimble-components/dist/esm/table';
4
4
  export { TableRecordDelayedHierarchyState, TableRowSelectionMode } from '@ni/nimble-components/dist/esm/table/types';
5
+ import { toBooleanProperty } from '@ni/nimble-angular/internal-utilities';
5
6
  import { CommonModule } from '@angular/common';
6
7
 
7
8
  /**
@@ -47,6 +48,12 @@ class NimbleTableDirective {
47
48
  set selectionMode(value) {
48
49
  this.renderer.setProperty(this.elementRef.nativeElement, 'selectionMode', value);
49
50
  }
51
+ get actionMenusPreserveSelection() {
52
+ return this.elementRef.nativeElement.actionMenusPreserveSelection;
53
+ }
54
+ set actionMenusPreserveSelection(value) {
55
+ this.renderer.setProperty(this.elementRef.nativeElement, 'actionMenusPreserveSelection', toBooleanProperty(value));
56
+ }
50
57
  get validity() {
51
58
  return this.elementRef.nativeElement.validity;
52
59
  }
@@ -73,7 +80,7 @@ class NimbleTableDirective {
73
80
  await this.elementRef.nativeElement.setRecordHierarchyOptions(hierarchyOptions);
74
81
  }
75
82
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NimbleTableDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
76
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: NimbleTableDirective, selector: "nimble-table", inputs: { data$: "data$", idFieldName: ["id-field-name", "idFieldName"], parentIdFieldName: ["parent-id-field-name", "parentIdFieldName"], selectionMode: ["selection-mode", "selectionMode"] }, ngImport: i0 }); }
83
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: NimbleTableDirective, selector: "nimble-table", inputs: { data$: "data$", idFieldName: ["id-field-name", "idFieldName"], parentIdFieldName: ["parent-id-field-name", "parentIdFieldName"], selectionMode: ["selection-mode", "selectionMode"], actionMenusPreserveSelection: ["action-menus-preserve-selection", "actionMenusPreserveSelection"] }, ngImport: i0 }); }
77
84
  }
78
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NimbleTableDirective, decorators: [{
79
86
  type: Directive,
@@ -92,6 +99,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
92
99
  }], selectionMode: [{
93
100
  type: Input,
94
101
  args: ['selection-mode']
102
+ }], actionMenusPreserveSelection: [{
103
+ type: Input,
104
+ args: ['action-menus-preserve-selection']
95
105
  }] } });
96
106
 
97
107
  class NimbleTableModule {
@@ -1 +1 @@
1
- {"version":3,"file":"ni-nimble-angular-table.mjs","sources":["../../../nimble-angular/table/nimble-table.directive.ts","../../../nimble-angular/table/nimble-table.module.ts","../../../nimble-angular/table/ni-nimble-angular-table.ts"],"sourcesContent":["import { Directive, ElementRef, Input, type OnDestroy, Renderer2 } from '@angular/core';\nimport { type Table, tableTag } from '@ni/nimble-components/dist/esm/table';\nimport type { TableRecord, TableFieldName, TableFieldValue, TableValidity, TableActionMenuToggleEventDetail, TableRowSelectionEventDetail, TableColumnConfigurationChangeEventDetail, TableColumnConfiguration, TableRowExpansionToggleEventDetail, TableSetRecordHierarchyOptions, TableRecordHierarchyOptions } from '@ni/nimble-components/dist/esm/table/types';\nimport { TableRowSelectionMode, TableRecordDelayedHierarchyState } from '@ni/nimble-components/dist/esm/table/types';\nimport type { Observable, Subscription } from 'rxjs';\n\nexport type { Table };\nexport { tableTag };\nexport type { TableActionMenuToggleEventDetail, TableRowSelectionEventDetail, TableColumnConfigurationChangeEventDetail, TableColumnConfiguration, TableRowExpansionToggleEventDetail };\nexport { type TableRecord, type TableFieldName, type TableFieldValue, type TableValidity, TableRowSelectionMode, TableRecordDelayedHierarchyState, type TableSetRecordHierarchyOptions, type TableRecordHierarchyOptions };\n\n/**\n * Directive to provide Angular integration for the table element.\n */\n@Directive({\n selector: 'nimble-table',\n standalone: false\n})\nexport class NimbleTableDirective<TData extends TableRecord = TableRecord> implements OnDestroy {\n public get data$(): Observable<TData[]> | undefined {\n return this.dataObservable;\n }\n\n /**\n * An `Observable<TData[]>` that emits data that should be set on the table.\n *\n * When using `data$`, the timing of when the table has been updated with a new collection of data\n * cannot be observed or await by an application. If an application needs to know when the data has\n * been applied, explicitly call `setData()` rather than using the `data$` property. For example,\n * calling `getSelectedRecordIds()` immediately after emitting a new value to the `data$` `Observable`\n * may not take the new data into account when determining the selected records.\n */\n @Input() public set data$(value: Observable<TData[]> | undefined) {\n this.dataSubscription?.unsubscribe();\n\n this.dataObservable = value;\n if (value) {\n this.dataSubscription = value.subscribe(\n next => {\n void this.setData(next);\n }\n );\n }\n }\n\n public get idFieldName(): string | null | undefined {\n return this.elementRef.nativeElement.idFieldName;\n }\n\n @Input('id-field-name') public set idFieldName(value: string | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'idFieldName', value);\n }\n\n public get parentIdFieldName(): string | null | undefined {\n return this.elementRef.nativeElement.parentIdFieldName;\n }\n\n @Input('parent-id-field-name') public set parentIdFieldName(value: string | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'parentIdFieldName', value);\n }\n\n public get selectionMode(): TableRowSelectionMode {\n return this.elementRef.nativeElement.selectionMode;\n }\n\n @Input('selection-mode') public set selectionMode(value: TableRowSelectionMode) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'selectionMode', value);\n }\n\n public get validity(): TableValidity {\n return this.elementRef.nativeElement.validity;\n }\n\n private dataObservable?: Observable<TData[]>;\n private dataSubscription?: Subscription;\n\n public constructor(private readonly renderer: Renderer2, private readonly elementRef: ElementRef<Table<TData>>) {}\n\n public ngOnDestroy(): void {\n this.dataSubscription?.unsubscribe();\n }\n\n public checkValidity(): boolean {\n return this.elementRef.nativeElement.checkValidity();\n }\n\n public async setData(data: readonly TData[]): Promise<void> {\n await this.elementRef.nativeElement.setData(data);\n }\n\n public async getSelectedRecordIds(): Promise<string[]> {\n return await this.elementRef.nativeElement.getSelectedRecordIds();\n }\n\n public async setSelectedRecordIds(recordIds: string[]): Promise<void> {\n await this.elementRef.nativeElement.setSelectedRecordIds(recordIds);\n }\n\n public async setRecordHierarchyOptions(hierarchyOptions: TableSetRecordHierarchyOptions[]): Promise<void> {\n await this.elementRef.nativeElement.setRecordHierarchyOptions(hierarchyOptions);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NimbleTableDirective } from './nimble-table.directive';\n\nimport '@ni/nimble-components/dist/esm/table';\n\n@NgModule({\n declarations: [NimbleTableDirective],\n imports: [CommonModule],\n exports: [NimbleTableDirective]\n})\nexport class NimbleTableModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAWA;;AAEG;MAKU,oBAAoB,CAAA;AAC7B,IAAA,IAAW,KAAK,GAAA;QACZ,OAAO,IAAI,CAAC,cAAc;IAC9B;AAEA;;;;;;;;AAQG;IACH,IAAoB,KAAK,CAAC,KAAsC,EAAA;AAC5D,QAAA,IAAI,CAAC,gBAAgB,EAAE,WAAW,EAAE;AAEpC,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK;QAC3B,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,SAAS,CACnC,IAAI,IAAG;AACH,gBAAA,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AAC3B,YAAA,CAAC,CACJ;QACL;IACJ;AAEA,IAAA,IAAW,WAAW,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW;IACpD;IAEA,IAAmC,WAAW,CAAC,KAAgC,EAAA;AAC3E,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC;IAClF;AAEA,IAAA,IAAW,iBAAiB,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,iBAAiB;IAC1D;IAEA,IAA0C,iBAAiB,CAAC,KAAgC,EAAA;AACxF,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,mBAAmB,EAAE,KAAK,CAAC;IACxF;AAEA,IAAA,IAAW,aAAa,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa;IACtD;IAEA,IAAoC,aAAa,CAAC,KAA4B,EAAA;AAC1E,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,eAAe,EAAE,KAAK,CAAC;IACpF;AAEA,IAAA,IAAW,QAAQ,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ;IACjD;IAKA,WAAA,CAAoC,QAAmB,EAAmB,UAAoC,EAAA;QAA1E,IAAA,CAAA,QAAQ,GAAR,QAAQ;QAA8B,IAAA,CAAA,UAAU,GAAV,UAAU;IAA6B;IAE1G,WAAW,GAAA;AACd,QAAA,IAAI,CAAC,gBAAgB,EAAE,WAAW,EAAE;IACxC;IAEO,aAAa,GAAA;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,EAAE;IACxD;IAEO,MAAM,OAAO,CAAC,IAAsB,EAAA;QACvC,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC;IACrD;AAEO,IAAA,MAAM,oBAAoB,GAAA;QAC7B,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,oBAAoB,EAAE;IACrE;IAEO,MAAM,oBAAoB,CAAC,SAAmB,EAAA;QACjD,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,oBAAoB,CAAC,SAAS,CAAC;IACvE;IAEO,MAAM,yBAAyB,CAAC,gBAAkD,EAAA;QACrF,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,yBAAyB,CAAC,gBAAgB,CAAC;IACnF;+GAlFS,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,CAAA,eAAA,EAAA,aAAA,CAAA,EAAA,iBAAA,EAAA,CAAA,sBAAA,EAAA,mBAAA,CAAA,EAAA,aAAA,EAAA,CAAA,gBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,UAAU,EAAE;AACf,iBAAA;uGAeuB,KAAK,EAAA,CAAA;sBAAxB;gBAiBkC,WAAW,EAAA,CAAA;sBAA7C,KAAK;uBAAC,eAAe;gBAQoB,iBAAiB,EAAA,CAAA;sBAA1D,KAAK;uBAAC,sBAAsB;gBAQO,aAAa,EAAA,CAAA;sBAAhD,KAAK;uBAAC,gBAAgB;;;MCtDd,iBAAiB,CAAA;+GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,CAJX,oBAAoB,CAAA,EAAA,OAAA,EAAA,CACzB,YAAY,aACZ,oBAAoB,CAAA,EAAA,CAAA,CAAA;AAErB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAHhB,YAAY,CAAA,EAAA,CAAA,CAAA;;4FAGb,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,YAAY,EAAE,CAAC,oBAAoB,CAAC;oBACpC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,oBAAoB;AACjC,iBAAA;;;ACVD;;AAEG;;;;"}
1
+ {"version":3,"file":"ni-nimble-angular-table.mjs","sources":["../../../nimble-angular/table/nimble-table.directive.ts","../../../nimble-angular/table/nimble-table.module.ts","../../../nimble-angular/table/ni-nimble-angular-table.ts"],"sourcesContent":["import { Directive, ElementRef, Input, type OnDestroy, Renderer2 } from '@angular/core';\nimport { type Table, tableTag } from '@ni/nimble-components/dist/esm/table';\nimport type { TableRecord, TableFieldName, TableFieldValue, TableValidity, TableActionMenuToggleEventDetail, TableRowSelectionEventDetail, TableColumnConfigurationChangeEventDetail, TableColumnConfiguration, TableRowExpansionToggleEventDetail, TableSetRecordHierarchyOptions, TableRecordHierarchyOptions } from '@ni/nimble-components/dist/esm/table/types';\nimport { TableRowSelectionMode, TableRecordDelayedHierarchyState } from '@ni/nimble-components/dist/esm/table/types';\nimport type { Observable, Subscription } from 'rxjs';\nimport { type BooleanValueOrAttribute, toBooleanProperty } from '@ni/nimble-angular/internal-utilities';\n\nexport type { Table };\nexport { tableTag };\nexport type { TableActionMenuToggleEventDetail, TableRowSelectionEventDetail, TableColumnConfigurationChangeEventDetail, TableColumnConfiguration, TableRowExpansionToggleEventDetail };\nexport { type TableRecord, type TableFieldName, type TableFieldValue, type TableValidity, TableRowSelectionMode, TableRecordDelayedHierarchyState, type TableSetRecordHierarchyOptions, type TableRecordHierarchyOptions };\n\n/**\n * Directive to provide Angular integration for the table element.\n */\n@Directive({\n selector: 'nimble-table',\n standalone: false\n})\nexport class NimbleTableDirective<TData extends TableRecord = TableRecord> implements OnDestroy {\n public get data$(): Observable<TData[]> | undefined {\n return this.dataObservable;\n }\n\n /**\n * An `Observable<TData[]>` that emits data that should be set on the table.\n *\n * When using `data$`, the timing of when the table has been updated with a new collection of data\n * cannot be observed or await by an application. If an application needs to know when the data has\n * been applied, explicitly call `setData()` rather than using the `data$` property. For example,\n * calling `getSelectedRecordIds()` immediately after emitting a new value to the `data$` `Observable`\n * may not take the new data into account when determining the selected records.\n */\n @Input() public set data$(value: Observable<TData[]> | undefined) {\n this.dataSubscription?.unsubscribe();\n\n this.dataObservable = value;\n if (value) {\n this.dataSubscription = value.subscribe(\n next => {\n void this.setData(next);\n }\n );\n }\n }\n\n public get idFieldName(): string | null | undefined {\n return this.elementRef.nativeElement.idFieldName;\n }\n\n @Input('id-field-name') public set idFieldName(value: string | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'idFieldName', value);\n }\n\n public get parentIdFieldName(): string | null | undefined {\n return this.elementRef.nativeElement.parentIdFieldName;\n }\n\n @Input('parent-id-field-name') public set parentIdFieldName(value: string | null | undefined) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'parentIdFieldName', value);\n }\n\n public get selectionMode(): TableRowSelectionMode {\n return this.elementRef.nativeElement.selectionMode;\n }\n\n @Input('selection-mode') public set selectionMode(value: TableRowSelectionMode) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'selectionMode', value);\n }\n\n public get actionMenusPreserveSelection(): BooleanValueOrAttribute {\n return this.elementRef.nativeElement.actionMenusPreserveSelection;\n }\n\n @Input('action-menus-preserve-selection') public set actionMenusPreserveSelection(value: BooleanValueOrAttribute) {\n this.renderer.setProperty(this.elementRef.nativeElement, 'actionMenusPreserveSelection', toBooleanProperty(value));\n }\n\n public get validity(): TableValidity {\n return this.elementRef.nativeElement.validity;\n }\n\n private dataObservable?: Observable<TData[]>;\n private dataSubscription?: Subscription;\n\n public constructor(private readonly renderer: Renderer2, private readonly elementRef: ElementRef<Table<TData>>) {}\n\n public ngOnDestroy(): void {\n this.dataSubscription?.unsubscribe();\n }\n\n public checkValidity(): boolean {\n return this.elementRef.nativeElement.checkValidity();\n }\n\n public async setData(data: readonly TData[]): Promise<void> {\n await this.elementRef.nativeElement.setData(data);\n }\n\n public async getSelectedRecordIds(): Promise<string[]> {\n return await this.elementRef.nativeElement.getSelectedRecordIds();\n }\n\n public async setSelectedRecordIds(recordIds: string[]): Promise<void> {\n await this.elementRef.nativeElement.setSelectedRecordIds(recordIds);\n }\n\n public async setRecordHierarchyOptions(hierarchyOptions: TableSetRecordHierarchyOptions[]): Promise<void> {\n await this.elementRef.nativeElement.setRecordHierarchyOptions(hierarchyOptions);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NimbleTableDirective } from './nimble-table.directive';\n\nimport '@ni/nimble-components/dist/esm/table';\n\n@NgModule({\n declarations: [NimbleTableDirective],\n imports: [CommonModule],\n exports: [NimbleTableDirective]\n})\nexport class NimbleTableModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni/nimble-angular",
3
- "version": "30.11.8",
3
+ "version": "30.12.0",
4
4
  "description": "Angular components for the NI Nimble Design System",
5
5
  "repository": {
6
6
  "type": "git",
@@ -271,7 +271,7 @@
271
271
  "@angular/forms": "^18.2.13",
272
272
  "@angular/localize": "^18.2.13",
273
273
  "@angular/router": "^18.2.13",
274
- "@ni/nimble-components": "^34.9.0"
274
+ "@ni/nimble-components": "^34.10.0"
275
275
  },
276
276
  "dependencies": {
277
277
  "tslib": "^2.2.0"
@@ -3,6 +3,7 @@ import { type Table, tableTag } from '@ni/nimble-components/dist/esm/table';
3
3
  import type { TableRecord, TableFieldName, TableFieldValue, TableValidity, TableActionMenuToggleEventDetail, TableRowSelectionEventDetail, TableColumnConfigurationChangeEventDetail, TableColumnConfiguration, TableRowExpansionToggleEventDetail, TableSetRecordHierarchyOptions, TableRecordHierarchyOptions } from '@ni/nimble-components/dist/esm/table/types';
4
4
  import { TableRowSelectionMode, TableRecordDelayedHierarchyState } from '@ni/nimble-components/dist/esm/table/types';
5
5
  import type { Observable } from 'rxjs';
6
+ import { type BooleanValueOrAttribute } from '@ni/nimble-angular/internal-utilities';
6
7
  import * as i0 from "@angular/core";
7
8
  export type { Table };
8
9
  export { tableTag };
@@ -31,6 +32,8 @@ export declare class NimbleTableDirective<TData extends TableRecord = TableRecor
31
32
  set parentIdFieldName(value: string | null | undefined);
32
33
  get selectionMode(): TableRowSelectionMode;
33
34
  set selectionMode(value: TableRowSelectionMode);
35
+ get actionMenusPreserveSelection(): BooleanValueOrAttribute;
36
+ set actionMenusPreserveSelection(value: BooleanValueOrAttribute);
34
37
  get validity(): TableValidity;
35
38
  private dataObservable?;
36
39
  private dataSubscription?;
@@ -42,5 +45,5 @@ export declare class NimbleTableDirective<TData extends TableRecord = TableRecor
42
45
  setSelectedRecordIds(recordIds: string[]): Promise<void>;
43
46
  setRecordHierarchyOptions(hierarchyOptions: TableSetRecordHierarchyOptions[]): Promise<void>;
44
47
  static ɵfac: i0.ɵɵFactoryDeclaration<NimbleTableDirective<any>, never>;
45
- static ɵdir: i0.ɵɵDirectiveDeclaration<NimbleTableDirective<any>, "nimble-table", never, { "data$": { "alias": "data$"; "required": false; }; "idFieldName": { "alias": "id-field-name"; "required": false; }; "parentIdFieldName": { "alias": "parent-id-field-name"; "required": false; }; "selectionMode": { "alias": "selection-mode"; "required": false; }; }, {}, never, never, false, never>;
48
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NimbleTableDirective<any>, "nimble-table", never, { "data$": { "alias": "data$"; "required": false; }; "idFieldName": { "alias": "id-field-name"; "required": false; }; "parentIdFieldName": { "alias": "parent-id-field-name"; "required": false; }; "selectionMode": { "alias": "selection-mode"; "required": false; }; "actionMenusPreserveSelection": { "alias": "action-menus-preserve-selection"; "required": false; }; }, {}, never, never, false, never>;
46
49
  }