@ni/nimble-angular 16.0.1 → 16.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/directives/table/nimble-table.directive.d.ts +10 -5
- package/esm2020/directives/table/nimble-table.directive.mjs +17 -7
- package/fesm2015/ni-nimble-angular.mjs +18 -6
- package/fesm2015/ni-nimble-angular.mjs.map +1 -1
- package/fesm2020/ni-nimble-angular.mjs +17 -7
- package/fesm2020/ni-nimble-angular.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -1,22 +1,27 @@
|
|
|
1
|
-
import { ElementRef, Renderer2 } from '@angular/core';
|
|
1
|
+
import { ElementRef, OnDestroy, Renderer2 } from '@angular/core';
|
|
2
2
|
import type { Table } from '@ni/nimble-components/dist/esm/table';
|
|
3
3
|
import type { TableRecord, TableFieldName, TableFieldValue, TableValidity } from '@ni/nimble-components/dist/esm/table/types';
|
|
4
|
+
import type { Observable } from 'rxjs';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export type { Table };
|
|
6
7
|
export { TableRecord, TableFieldName, TableFieldValue, TableValidity };
|
|
7
8
|
/**
|
|
8
9
|
* Directive to provide Angular integration for the table element.
|
|
9
10
|
*/
|
|
10
|
-
export declare class NimbleTableDirective<TData extends TableRecord = TableRecord> {
|
|
11
|
+
export declare class NimbleTableDirective<TData extends TableRecord = TableRecord> implements OnDestroy {
|
|
11
12
|
private readonly renderer;
|
|
12
13
|
private readonly elementRef;
|
|
13
|
-
get data(): TData[];
|
|
14
|
-
set data(value: TData[]);
|
|
14
|
+
get data$(): Observable<TData[]> | undefined;
|
|
15
|
+
set data$(value: Observable<TData[]> | undefined);
|
|
15
16
|
get idFieldName(): string | null | undefined;
|
|
16
17
|
set idFieldName(value: string | null | undefined);
|
|
17
18
|
get validity(): TableValidity;
|
|
19
|
+
private dataObservable?;
|
|
20
|
+
private dataSubscription?;
|
|
18
21
|
constructor(renderer: Renderer2, elementRef: ElementRef<Table<TData>>);
|
|
22
|
+
ngOnDestroy(): void;
|
|
19
23
|
checkValidity(): boolean;
|
|
24
|
+
setData(data: readonly TData[]): void;
|
|
20
25
|
static ɵfac: i0.ɵɵFactoryDeclaration<NimbleTableDirective<any>, never>;
|
|
21
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<NimbleTableDirective<any>, "nimble-table", never, { "data": "data"; "idFieldName": "id-field-name"; }, {}, never, never, false>;
|
|
26
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NimbleTableDirective<any>, "nimble-table", never, { "data$": "data$"; "idFieldName": "id-field-name"; }, {}, never, never, false>;
|
|
22
27
|
}
|
|
@@ -8,11 +8,15 @@ export class NimbleTableDirective {
|
|
|
8
8
|
this.renderer = renderer;
|
|
9
9
|
this.elementRef = elementRef;
|
|
10
10
|
}
|
|
11
|
-
get data() {
|
|
12
|
-
return this.
|
|
11
|
+
get data$() {
|
|
12
|
+
return this.dataObservable;
|
|
13
13
|
}
|
|
14
|
-
set data(value) {
|
|
15
|
-
this.
|
|
14
|
+
set data$(value) {
|
|
15
|
+
this.dataSubscription?.unsubscribe();
|
|
16
|
+
this.dataObservable = value;
|
|
17
|
+
if (value) {
|
|
18
|
+
this.dataSubscription = value.subscribe(next => this.elementRef.nativeElement.setData(next));
|
|
19
|
+
}
|
|
16
20
|
}
|
|
17
21
|
get idFieldName() {
|
|
18
22
|
return this.elementRef.nativeElement.idFieldName;
|
|
@@ -25,21 +29,27 @@ export class NimbleTableDirective {
|
|
|
25
29
|
get validity() {
|
|
26
30
|
return this.elementRef.nativeElement.validity;
|
|
27
31
|
}
|
|
32
|
+
ngOnDestroy() {
|
|
33
|
+
this.dataSubscription?.unsubscribe();
|
|
34
|
+
}
|
|
28
35
|
checkValidity() {
|
|
29
36
|
return this.elementRef.nativeElement.checkValidity();
|
|
30
37
|
}
|
|
38
|
+
setData(data) {
|
|
39
|
+
this.elementRef.nativeElement.setData(data);
|
|
40
|
+
}
|
|
31
41
|
}
|
|
32
42
|
NimbleTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NimbleTableDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
33
|
-
NimbleTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: NimbleTableDirective, selector: "nimble-table", inputs: { data
|
|
43
|
+
NimbleTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: NimbleTableDirective, selector: "nimble-table", inputs: { data$: "data$", idFieldName: ["id-field-name", "idFieldName"] }, ngImport: i0 });
|
|
34
44
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NimbleTableDirective, decorators: [{
|
|
35
45
|
type: Directive,
|
|
36
46
|
args: [{
|
|
37
47
|
selector: 'nimble-table'
|
|
38
48
|
}]
|
|
39
|
-
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { data
|
|
49
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { data$: [{
|
|
40
50
|
type: Input
|
|
41
51
|
}], idFieldName: [{
|
|
42
52
|
type: Input,
|
|
43
53
|
args: ['id-field-name']
|
|
44
54
|
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pL25pbWJsZS1hbmd1bGFyL3NyYy9kaXJlY3RpdmVzL3RhYmxlL25pbWJsZS10YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXdCLE1BQU0sZUFBZSxDQUFDOztBQVFuRjs7R0FFRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUFpQzdCLFlBQW9DLFFBQW1CLEVBQW1CLFVBQW9DO1FBQTFFLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBbUIsZUFBVSxHQUFWLFVBQVUsQ0FBMEI7SUFBRyxDQUFDO0lBaENsSCxJQUFXLEtBQUs7UUFDWixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQW9CLEtBQUssQ0FBQyxLQUFzQztRQUM1RCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFFckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7UUFDNUIsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FDbkMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQ3RELENBQUM7U0FDTDtJQUNMLENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7SUFDckQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBbUMsV0FBVyxDQUFDLEtBQWdDO1FBQzNFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7SUFDbEQsQ0FBQztJQU9NLFdBQVc7UUFDZCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVNLGFBQWE7UUFDaEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRU0sT0FBTyxDQUFDLElBQXNCO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoRCxDQUFDOztrSEE3Q1Esb0JBQW9CO3NHQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFIaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsY0FBYztpQkFDM0I7eUhBTXVCLEtBQUs7c0JBQXhCLEtBQUs7Z0JBaUI2QixXQUFXO3NCQUE3QyxLQUFLO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBUYWJsZSB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS90YWJsZSc7XG5pbXBvcnQgdHlwZSB7IFRhYmxlUmVjb3JkLCBUYWJsZUZpZWxkTmFtZSwgVGFibGVGaWVsZFZhbHVlLCBUYWJsZVZhbGlkaXR5IH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlL3R5cGVzJztcbmltcG9ydCB0eXBlIHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIHsgVGFibGUgfTtcbmV4cG9ydCB7IFRhYmxlUmVjb3JkLCBUYWJsZUZpZWxkTmFtZSwgVGFibGVGaWVsZFZhbHVlLCBUYWJsZVZhbGlkaXR5IH07XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgQW5ndWxhciBpbnRlZ3JhdGlvbiBmb3IgdGhlIHRhYmxlIGVsZW1lbnQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnbmltYmxlLXRhYmxlJ1xufSlcbmV4cG9ydCBjbGFzcyBOaW1ibGVUYWJsZURpcmVjdGl2ZTxURGF0YSBleHRlbmRzIFRhYmxlUmVjb3JkID0gVGFibGVSZWNvcmQ+IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBwdWJsaWMgZ2V0IGRhdGEkKCk6IE9ic2VydmFibGU8VERhdGFbXT4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhT2JzZXJ2YWJsZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IGRhdGEkKHZhbHVlOiBPYnNlcnZhYmxlPFREYXRhW10+IHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuZGF0YVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcblxuICAgICAgICB0aGlzLmRhdGFPYnNlcnZhYmxlID0gdmFsdWU7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhU3Vic2NyaXB0aW9uID0gdmFsdWUuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIG5leHQgPT4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2V0RGF0YShuZXh0KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaWRGaWVsZE5hbWUoKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pZEZpZWxkTmFtZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2lkLWZpZWxkLW5hbWUnKSBwdWJsaWMgc2V0IGlkRmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdpZEZpZWxkTmFtZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHZhbGlkaXR5KCk6IFRhYmxlVmFsaWRpdHkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsaWRpdHk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkYXRhT2JzZXJ2YWJsZT86IE9ic2VydmFibGU8VERhdGFbXT47XG4gICAgcHJpdmF0ZSBkYXRhU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPFRhYmxlPFREYXRhPj4pIHt9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2hlY2tWYWxpZGl0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoZWNrVmFsaWRpdHkoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0RGF0YShkYXRhOiByZWFkb25seSBURGF0YVtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNldERhdGEoZGF0YSk7XG4gICAgfVxufVxuIl19
|
|
@@ -7113,11 +7113,16 @@ class NimbleTableDirective {
|
|
|
7113
7113
|
this.renderer = renderer;
|
|
7114
7114
|
this.elementRef = elementRef;
|
|
7115
7115
|
}
|
|
7116
|
-
get data() {
|
|
7117
|
-
return this.
|
|
7116
|
+
get data$() {
|
|
7117
|
+
return this.dataObservable;
|
|
7118
7118
|
}
|
|
7119
|
-
set data(value) {
|
|
7120
|
-
|
|
7119
|
+
set data$(value) {
|
|
7120
|
+
var _a;
|
|
7121
|
+
(_a = this.dataSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
|
|
7122
|
+
this.dataObservable = value;
|
|
7123
|
+
if (value) {
|
|
7124
|
+
this.dataSubscription = value.subscribe(next => this.elementRef.nativeElement.setData(next));
|
|
7125
|
+
}
|
|
7121
7126
|
}
|
|
7122
7127
|
get idFieldName() {
|
|
7123
7128
|
return this.elementRef.nativeElement.idFieldName;
|
|
@@ -7130,18 +7135,25 @@ class NimbleTableDirective {
|
|
|
7130
7135
|
get validity() {
|
|
7131
7136
|
return this.elementRef.nativeElement.validity;
|
|
7132
7137
|
}
|
|
7138
|
+
ngOnDestroy() {
|
|
7139
|
+
var _a;
|
|
7140
|
+
(_a = this.dataSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
|
|
7141
|
+
}
|
|
7133
7142
|
checkValidity() {
|
|
7134
7143
|
return this.elementRef.nativeElement.checkValidity();
|
|
7135
7144
|
}
|
|
7145
|
+
setData(data) {
|
|
7146
|
+
this.elementRef.nativeElement.setData(data);
|
|
7147
|
+
}
|
|
7136
7148
|
}
|
|
7137
7149
|
NimbleTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NimbleTableDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
7138
|
-
NimbleTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: NimbleTableDirective, selector: "nimble-table", inputs: { data
|
|
7150
|
+
NimbleTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.10", type: NimbleTableDirective, selector: "nimble-table", inputs: { data$: "data$", idFieldName: ["id-field-name", "idFieldName"] }, ngImport: i0 });
|
|
7139
7151
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: NimbleTableDirective, decorators: [{
|
|
7140
7152
|
type: Directive,
|
|
7141
7153
|
args: [{
|
|
7142
7154
|
selector: 'nimble-table'
|
|
7143
7155
|
}]
|
|
7144
|
-
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { data
|
|
7156
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { data$: [{
|
|
7145
7157
|
type: Input
|
|
7146
7158
|
}], idFieldName: [{
|
|
7147
7159
|
type: Input,
|