@ni/nimble-angular 16.1.7 → 16.1.8

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,7 +1,9 @@
1
1
  import { ElementRef, Renderer2 } from '@angular/core';
2
2
  import type { TableColumn } from '@ni/nimble-components/dist/esm/table-column/base';
3
- import { BooleanValueOrAttribute } from '../../utilities/template-value-helpers';
3
+ import { TableColumnSortDirection } from '@ni/nimble-components/dist/esm/table/types';
4
+ import { BooleanValueOrAttribute, NumberValueOrAttribute } from '../../utilities/template-value-helpers';
4
5
  import * as i0 from "@angular/core";
6
+ export { TableColumnSortDirection };
5
7
  /**
6
8
  * Base class for table column directives.
7
9
  */
@@ -16,7 +18,11 @@ export declare class NimbleTableColumnBaseDirective<T extends TableColumn> {
16
18
  set actionMenuLabel(value: string | undefined);
17
19
  get columnHidden(): boolean;
18
20
  set columnHidden(value: BooleanValueOrAttribute);
21
+ get sortDirection(): TableColumnSortDirection;
22
+ set sortDirection(value: TableColumnSortDirection);
23
+ get sortIndex(): number | null | undefined;
24
+ set sortIndex(value: NumberValueOrAttribute | null | undefined);
19
25
  constructor(renderer: Renderer2, elementRef: ElementRef<T>);
20
26
  static ɵfac: i0.ɵɵFactoryDeclaration<NimbleTableColumnBaseDirective<any>, never>;
21
- static ɵdir: i0.ɵɵDirectiveDeclaration<NimbleTableColumnBaseDirective<any>, never, never, { "columnId": "column-id"; "actionMenuSlot": "action-menu-slot"; "actionMenuLabel": "action-menu-label"; "columnHidden": "column-hidden"; }, {}, never, never, false>;
27
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NimbleTableColumnBaseDirective<any>, never, never, { "columnId": "column-id"; "actionMenuSlot": "action-menu-slot"; "actionMenuLabel": "action-menu-label"; "columnHidden": "column-hidden"; "sortDirection": "sort-direction"; "sortIndex": "sort-index"; }, {}, never, never, false>;
22
28
  }
@@ -17,4 +17,9 @@ export declare const toBooleanAriaAttribute: (value: BooleanValueOrAttribute) =>
17
17
  * Converts values from templates (number representation as a string) or number bindings to a number property representation
18
18
  */
19
19
  export declare const toNumberProperty: (value: NumberValueOrAttribute) => number;
20
+ /**
21
+ * Converts values from templates (number representation as a string) or number bindings to a number property representation.
22
+ * The values of `null` and `undefined` are also supported, and they are not converted.
23
+ */
24
+ export declare const toNullableNumberProperty: (value: NumberValueOrAttribute | null | undefined) => number | null | undefined;
20
25
  export {};
@@ -1,6 +1,8 @@
1
1
  import { Directive, Input } from '@angular/core';
2
- import { toBooleanProperty } from '../../utilities/template-value-helpers';
2
+ import { TableColumnSortDirection } from '@ni/nimble-components/dist/esm/table/types';
3
+ import { toBooleanProperty, toNullableNumberProperty } from '../../utilities/template-value-helpers';
3
4
  import * as i0 from "@angular/core";
5
+ export { TableColumnSortDirection };
4
6
  /**
5
7
  * Base class for table column directives.
6
8
  */
@@ -41,9 +43,25 @@ export class NimbleTableColumnBaseDirective {
41
43
  set columnHidden(value) {
42
44
  this.renderer.setProperty(this.elementRef.nativeElement, 'columnHidden', toBooleanProperty(value));
43
45
  }
46
+ get sortDirection() {
47
+ return this.elementRef.nativeElement.sortDirection;
48
+ }
49
+ // Renaming because property should have camel casing, but attribute should not
50
+ // eslint-disable-next-line @angular-eslint/no-input-rename
51
+ set sortDirection(value) {
52
+ this.renderer.setProperty(this.elementRef.nativeElement, 'sortDirection', value);
53
+ }
54
+ get sortIndex() {
55
+ return this.elementRef.nativeElement.sortIndex;
56
+ }
57
+ // Renaming because property should have camel casing, but attribute should not
58
+ // eslint-disable-next-line @angular-eslint/no-input-rename
59
+ set sortIndex(value) {
60
+ this.renderer.setProperty(this.elementRef.nativeElement, 'sortIndex', toNullableNumberProperty(value));
61
+ }
44
62
  }
45
63
  NimbleTableColumnBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NimbleTableColumnBaseDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
46
- NimbleTableColumnBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: NimbleTableColumnBaseDirective, inputs: { columnId: ["column-id", "columnId"], actionMenuSlot: ["action-menu-slot", "actionMenuSlot"], actionMenuLabel: ["action-menu-label", "actionMenuLabel"], columnHidden: ["column-hidden", "columnHidden"] }, ngImport: i0 });
64
+ NimbleTableColumnBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: NimbleTableColumnBaseDirective, inputs: { columnId: ["column-id", "columnId"], actionMenuSlot: ["action-menu-slot", "actionMenuSlot"], actionMenuLabel: ["action-menu-label", "actionMenuLabel"], columnHidden: ["column-hidden", "columnHidden"], sortDirection: ["sort-direction", "sortDirection"], sortIndex: ["sort-index", "sortIndex"] }, ngImport: i0 });
47
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NimbleTableColumnBaseDirective, decorators: [{
48
66
  type: Directive
49
67
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { columnId: [{
@@ -58,5 +76,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
58
76
  }], columnHidden: [{
59
77
  type: Input,
60
78
  args: ['column-hidden']
79
+ }], sortDirection: [{
80
+ type: Input,
81
+ args: ['sort-direction']
82
+ }], sortIndex: [{
83
+ type: Input,
84
+ args: ['sort-index']
61
85
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1iYXNlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pL25pbWJsZS1hbmd1bGFyL3NyYy9kaXJlY3RpdmVzL3RhYmxlLWNvbHVtbi9iYXNlL25pbWJsZS10YWJsZS1jb2x1bW4tYmFzZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUEyQixpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOztBQUVwRzs7R0FFRztBQUVILE1BQU0sT0FBTyw4QkFBOEI7SUF5Q3ZDLFlBQXNDLFFBQW1CLEVBQXFCLFVBQXlCO1FBQWpFLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBcUIsZUFBVSxHQUFWLFVBQVUsQ0FBZTtJQUFHLENBQUM7SUF4QzNHLElBQVcsUUFBUTtRQUNmLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO0lBQ2xELENBQUM7SUFFRCwrRUFBK0U7SUFDL0UsMkRBQTJEO0lBQzNELElBQStCLFFBQVEsQ0FBQyxLQUF5QjtRQUM3RCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQVcsY0FBYztRQUNyQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFzQyxjQUFjLENBQUMsS0FBeUI7UUFDMUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN0QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUF1QyxlQUFlLENBQUMsS0FBeUI7UUFDNUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNuQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztJQUN0RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFtQyxZQUFZLENBQUMsS0FBOEI7UUFDMUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQzs7NEhBdkNRLDhCQUE4QjtnSEFBOUIsOEJBQThCOzRGQUE5Qiw4QkFBOEI7a0JBRDFDLFNBQVM7eUhBUXlCLFFBQVE7c0JBQXRDLEtBQUs7dUJBQUMsV0FBVztnQkFVb0IsY0FBYztzQkFBbkQsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBVWMsZUFBZTtzQkFBckQsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBVVMsWUFBWTtzQkFBOUMsS0FBSzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFRhYmxlQ29sdW1uIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9iYXNlJztcbmltcG9ydCB7IEJvb2xlYW5WYWx1ZU9yQXR0cmlidXRlLCB0b0Jvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy90ZW1wbGF0ZS12YWx1ZS1oZWxwZXJzJztcblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciB0YWJsZSBjb2x1bW4gZGlyZWN0aXZlcy5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlPFQgZXh0ZW5kcyBUYWJsZUNvbHVtbj4ge1xuICAgIHB1YmxpYyBnZXQgY29sdW1uSWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbHVtbklkO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY29sdW1uLWlkJykgcHVibGljIHNldCBjb2x1bW5JZCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjb2x1bW5JZCcsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGFjdGlvbk1lbnVTbG90KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hY3Rpb25NZW51U2xvdDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2FjdGlvbi1tZW51LXNsb3QnKSBwdWJsaWMgc2V0IGFjdGlvbk1lbnVTbG90KHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FjdGlvbk1lbnVTbG90JywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYWN0aW9uTWVudUxhYmVsKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hY3Rpb25NZW51TGFiZWw7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdhY3Rpb24tbWVudS1sYWJlbCcpIHB1YmxpYyBzZXQgYWN0aW9uTWVudUxhYmVsKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FjdGlvbk1lbnVMYWJlbCcsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGNvbHVtbkhpZGRlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbHVtbkhpZGRlbjtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2NvbHVtbi1oaWRkZW4nKSBwdWJsaWMgc2V0IGNvbHVtbkhpZGRlbih2YWx1ZTogQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2NvbHVtbkhpZGRlbicsIHRvQm9vbGVhblByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcm90ZWN0ZWQgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxUPikge31cbn0iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1iYXNlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pL25pbWJsZS1hbmd1bGFyL3NyYy9kaXJlY3RpdmVzL3RhYmxlLWNvbHVtbi9iYXNlL25pbWJsZS10YWJsZS1jb2x1bW4tYmFzZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdEYsT0FBTyxFQUFtRCxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOztBQUV0SixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQztBQUVwQzs7R0FFRztBQUVILE1BQU0sT0FBTyw4QkFBOEI7SUE2RHZDLFlBQXNDLFFBQW1CLEVBQXFCLFVBQXlCO1FBQWpFLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBcUIsZUFBVSxHQUFWLFVBQVUsQ0FBZTtJQUFHLENBQUM7SUE1RDNHLElBQVcsUUFBUTtRQUNmLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO0lBQ2xELENBQUM7SUFFRCwrRUFBK0U7SUFDL0UsMkRBQTJEO0lBQzNELElBQStCLFFBQVEsQ0FBQyxLQUF5QjtRQUM3RCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQVcsY0FBYztRQUNyQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFzQyxjQUFjLENBQUMsS0FBeUI7UUFDMUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN0QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUF1QyxlQUFlLENBQUMsS0FBeUI7UUFDNUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNuQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztJQUN0RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFtQyxZQUFZLENBQUMsS0FBOEI7UUFDMUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQztJQUN2RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFvQyxhQUFhLENBQUMsS0FBK0I7UUFDN0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDaEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7SUFDbkQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBZ0MsU0FBUyxDQUFDLEtBQWdEO1FBQ3RGLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNHLENBQUM7OzRIQTNEUSw4QkFBOEI7Z0hBQTlCLDhCQUE4Qjs0RkFBOUIsOEJBQThCO2tCQUQxQyxTQUFTO3lIQVF5QixRQUFRO3NCQUF0QyxLQUFLO3VCQUFDLFdBQVc7Z0JBVW9CLGNBQWM7c0JBQW5ELEtBQUs7dUJBQUMsa0JBQWtCO2dCQVVjLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVTLFlBQVk7c0JBQTlDLEtBQUs7dUJBQUMsZUFBZTtnQkFVYyxhQUFhO3NCQUFoRCxLQUFLO3VCQUFDLGdCQUFnQjtnQkFVUyxTQUFTO3NCQUF4QyxLQUFLO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgVGFibGVDb2x1bW4gfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUtY29sdW1uL2Jhc2UnO1xuaW1wb3J0IHsgVGFibGVDb2x1bW5Tb3J0RGlyZWN0aW9uIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlL3R5cGVzJztcbmltcG9ydCB7IEJvb2xlYW5WYWx1ZU9yQXR0cmlidXRlLCBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlLCB0b0Jvb2xlYW5Qcm9wZXJ0eSwgdG9OdWxsYWJsZU51bWJlclByb3BlcnR5IH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL3RlbXBsYXRlLXZhbHVlLWhlbHBlcnMnO1xuXG5leHBvcnQgeyBUYWJsZUNvbHVtblNvcnREaXJlY3Rpb24gfTtcblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciB0YWJsZSBjb2x1bW4gZGlyZWN0aXZlcy5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlPFQgZXh0ZW5kcyBUYWJsZUNvbHVtbj4ge1xuICAgIHB1YmxpYyBnZXQgY29sdW1uSWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbHVtbklkO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY29sdW1uLWlkJykgcHVibGljIHNldCBjb2x1bW5JZCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjb2x1bW5JZCcsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGFjdGlvbk1lbnVTbG90KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hY3Rpb25NZW51U2xvdDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2FjdGlvbi1tZW51LXNsb3QnKSBwdWJsaWMgc2V0IGFjdGlvbk1lbnVTbG90KHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FjdGlvbk1lbnVTbG90JywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYWN0aW9uTWVudUxhYmVsKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hY3Rpb25NZW51TGFiZWw7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdhY3Rpb24tbWVudS1sYWJlbCcpIHB1YmxpYyBzZXQgYWN0aW9uTWVudUxhYmVsKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FjdGlvbk1lbnVMYWJlbCcsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGNvbHVtbkhpZGRlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbHVtbkhpZGRlbjtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2NvbHVtbi1oaWRkZW4nKSBwdWJsaWMgc2V0IGNvbHVtbkhpZGRlbih2YWx1ZTogQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2NvbHVtbkhpZGRlbicsIHRvQm9vbGVhblByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzb3J0RGlyZWN0aW9uKCk6IFRhYmxlQ29sdW1uU29ydERpcmVjdGlvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zb3J0RGlyZWN0aW9uO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnc29ydC1kaXJlY3Rpb24nKSBwdWJsaWMgc2V0IHNvcnREaXJlY3Rpb24odmFsdWU6IFRhYmxlQ29sdW1uU29ydERpcmVjdGlvbikge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnc29ydERpcmVjdGlvbicsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNvcnRJbmRleCgpOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNvcnRJbmRleDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ3NvcnQtaW5kZXgnKSBwdWJsaWMgc2V0IHNvcnRJbmRleCh2YWx1ZTogTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3NvcnRJbmRleCcsIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJvdGVjdGVkIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8VD4pIHt9XG59Il19
@@ -34,4 +34,14 @@ export const toNumberProperty = (value) => {
34
34
  // Are identical (use ToNumeric algorithm), went with Number() for clarity
35
35
  return Number(value);
36
36
  };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtdmFsdWUtaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pL25pbWJsZS1hbmd1bGFyL3NyYy9kaXJlY3RpdmVzL3V0aWxpdGllcy90ZW1wbGF0ZS12YWx1ZS1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBWUg7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQThCLEVBQVcsRUFBRTtJQUN6RSxJQUFJLEtBQUssS0FBSyxLQUFLLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtRQUNuQyxPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUNELHdEQUF3RDtJQUN4RCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLEtBQThCLEVBQW9CLEVBQUU7SUFDdkYsSUFBSSxLQUFLLEtBQUssS0FBSyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDbkMsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCx3REFBd0Q7SUFDeEQsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQTZCLEVBQVUsRUFBRTtJQUN0RSx1SkFBdUo7SUFDdkosbUtBQW1LO0lBQ25LLHVEQUF1RDtJQUN2RCxpSEFBaUg7SUFDakgsNEhBQTRIO0lBQzVILDBFQUEwRTtJQUMxRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN6QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnZlcnNpb24gaGVscGVycyBmb3IgdmFsdWVzIGNvbWluZyBmcm9tIHRlbXBsYXRlIGF0dHJpYnV0ZXMgb3IgcHJvcGVydHkgYmluZGluZ3NcbiAqL1xuXG4vLyBWYWx1ZXMgYXNzaWduZWQgdG8gZGlyZWN0aXZlcyBjYW4gY29tZSBmcm9tIHRlbXBsYXRlIGF0dHJpYnV0ZXMsIGllIDxteS1lbGVtZW50IG15LW51bWJlcj1cIjRcIj48L215LWVsZW1lbnQ+XG4vLyBvciBmcm9tIHByb3BlcnR5IGJpbmRpbmdzLCBpZSA8bXktZWxlbWVudCBbbXktbnVtYmVyXT1cInNvbWVOdW1iZXJcIj48L215LWVsZW1lbnQ+XG4vLyBTbyBzZXR0ZXJzIGZvciBvdXIgZGlyZWN0aXZlcyBhY2NlcHQgYm90aCBzdHJpbmcgdmFsdWVzIGZyb20gdGVtcGxhdGUgYXR0cmlidXRlcyBhbmRcbi8vIHRoZSBleHBlY3RlZCBwcm9wZXJ0eSB0eXBlLiBUaGlzIGZpbGUgaGFzIGhlbHBlcnMgZm9yIGNvbW1vbiBwcm9wZXJ0eSB0eXBlcy5cbi8vIE1vcmUgY29udGV4dDogaHR0cHM6Ly92MTMuYW5ndWxhci5pby9ndWlkZS90ZW1wbGF0ZS10eXBlY2hlY2sjaW5wdXQtc2V0dGVyLWNvZXJjaW9uXG5cbnR5cGUgQm9vbGVhbkF0dHJpYnV0ZSA9ICcnIHwgbnVsbDtcbmV4cG9ydCB0eXBlIEJvb2xlYW5WYWx1ZU9yQXR0cmlidXRlID0gYm9vbGVhbiB8IEJvb2xlYW5BdHRyaWJ1dGU7XG5leHBvcnQgdHlwZSBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlID0gbnVtYmVyIHwgc3RyaW5nO1xuXG4vKipcbiAqIENvbnZlcnRzIHZhbHVlcyBmcm9tIHRlbXBsYXRlcyAoZW1wdHkgc3RyaW5nIG9yIG51bGwpIG9yIGJvb2xlYW4gYmluZGluZ3MgdG8gYSBib29sZWFuIHByb3BlcnR5IHJlcHJlc2VudGF0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCB0b0Jvb2xlYW5Qcm9wZXJ0eSA9ICh2YWx1ZTogQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUpOiBib29sZWFuID0+IHtcbiAgICBpZiAodmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgLy8gRm9yIGJvb2xlYW4gYXR0cmlidXRlcyB0aGUgZW1wdHkgc3RyaW5nIHZhbHVlIGlzIHRydWVcbiAgICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8qKlxuICogQ29udmVydHMgdmFsdWVzIGZyb20gdGVtcGxhdGVzIChlbXB0eSBzdHJpbmcgb3IgbnVsbCkgb3IgYm9vbGVhbiBiaW5kaW5ncyB0byBhbiBBcmlhIGJvb2xlYW5cbiAqIGF0dHJpYnV0ZSByZXByZXNlbnRhdGlvbiAodGhlIHN0cmluZ3MgXCJ0cnVlXCIgb3IgXCJmYWxzZVwiKVxuICovXG5leHBvcnQgY29uc3QgdG9Cb29sZWFuQXJpYUF0dHJpYnV0ZSA9ICh2YWx1ZTogQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUpOiAndHJ1ZScgfCAnZmFsc2UnID0+IHtcbiAgICBpZiAodmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiAnZmFsc2UnO1xuICAgIH1cbiAgICAvLyBGb3IgYm9vbGVhbiBhdHRyaWJ1dGVzIHRoZSBlbXB0eSBzdHJpbmcgdmFsdWUgaXMgdHJ1ZVxuICAgIHJldHVybiAndHJ1ZSc7XG59O1xuXG4vKipcbiAqIENvbnZlcnRzIHZhbHVlcyBmcm9tIHRlbXBsYXRlcyAobnVtYmVyIHJlcHJlc2VudGF0aW9uIGFzIGEgc3RyaW5nKSBvciBudW1iZXIgYmluZGluZ3MgdG8gYSBudW1iZXIgcHJvcGVydHkgcmVwcmVzZW50YXRpb25cbiAqL1xuZXhwb3J0IGNvbnN0IHRvTnVtYmVyUHJvcGVydHkgPSAodmFsdWU6IE51bWJlclZhbHVlT3JBdHRyaWJ1dGUpOiBudW1iZXIgPT4ge1xuICAgIC8vIEFuZ3VsYXI6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvYmxvYi8yNjY0YmMyYjNlZjRlZTVmZDY3MWY5MTU4MjhjZmNjMjc0YTM2Yzc3L3BhY2thZ2VzL2Zvcm1zL3NyYy9kaXJlY3RpdmVzL251bWJlcl92YWx1ZV9hY2Nlc3Nvci50cyNMNjdcbiAgICAvLyBBbmQgRmFzdDogaHR0cHM6Ly9naXRodWIuY29tL21pY3Jvc29mdC9mYXN0L2Jsb2IvNDZiYjZkOWFhYjJjMzcxMDVmNDQzNGRiMzc5NWUxNzZjMjM1NGE0Zi9wYWNrYWdlcy93ZWItY29tcG9uZW50cy9mYXN0LWVsZW1lbnQvc3JjL2NvbXBvbmVudHMvYXR0cmlidXRlcy50cyNMMTAwXG4gICAgLy8gSGFuZGxlIG51bWVyaWMgY29udmVyc2lvbnMgZnJvbSB0aGUgdmlldyBkaWZmZXJlbnRseVxuICAgIC8vIFNpbmNlIE51bWJlcih2YWwpIGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyL211bHRpcGFnZS9udW1iZXJzLWFuZC1kYXRlcy5odG1sI3NlYy1udW1iZXItY29uc3RydWN0b3ItbnVtYmVyLXZhbHVlXG4gICAgLy8gYW5kIHZhbCAqIDEgaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvbXVsdGlwYWdlL2VjbWFzY3JpcHQtbGFuZ3VhZ2UtZXhwcmVzc2lvbnMuaHRtbCNzZWMtYXBwbHlzdHJpbmdvcm51bWVyaWNiaW5hcnlvcGVyYXRvclxuICAgIC8vIEFyZSBpZGVudGljYWwgKHVzZSBUb051bWVyaWMgYWxnb3JpdGhtKSwgd2VudCB3aXRoIE51bWJlcigpIGZvciBjbGFyaXR5XG4gICAgcmV0dXJuIE51bWJlcih2YWx1ZSk7XG59O1xuIl19
37
+ /**
38
+ * Converts values from templates (number representation as a string) or number bindings to a number property representation.
39
+ * The values of `null` and `undefined` are also supported, and they are not converted.
40
+ */
41
+ export const toNullableNumberProperty = (value) => {
42
+ if (value === undefined || value === null) {
43
+ return value;
44
+ }
45
+ return toNumberProperty(value);
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtdmFsdWUtaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pL25pbWJsZS1hbmd1bGFyL3NyYy9kaXJlY3RpdmVzL3V0aWxpdGllcy90ZW1wbGF0ZS12YWx1ZS1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBWUg7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQThCLEVBQVcsRUFBRTtJQUN6RSxJQUFJLEtBQUssS0FBSyxLQUFLLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtRQUNuQyxPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUNELHdEQUF3RDtJQUN4RCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLEtBQThCLEVBQW9CLEVBQUU7SUFDdkYsSUFBSSxLQUFLLEtBQUssS0FBSyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDbkMsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCx3REFBd0Q7SUFDeEQsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQTZCLEVBQVUsRUFBRTtJQUN0RSx1SkFBdUo7SUFDdkosbUtBQW1LO0lBQ25LLHVEQUF1RDtJQUN2RCxpSEFBaUg7SUFDakgsNEhBQTRIO0lBQzVILDBFQUEwRTtJQUMxRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN6QixDQUFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLEtBQWdELEVBQTZCLEVBQUU7SUFDcEgsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDdkMsT0FBTyxLQUFLLENBQUM7S0FDaEI7SUFFRCxPQUFPLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ25DLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29udmVyc2lvbiBoZWxwZXJzIGZvciB2YWx1ZXMgY29taW5nIGZyb20gdGVtcGxhdGUgYXR0cmlidXRlcyBvciBwcm9wZXJ0eSBiaW5kaW5nc1xuICovXG5cbi8vIFZhbHVlcyBhc3NpZ25lZCB0byBkaXJlY3RpdmVzIGNhbiBjb21lIGZyb20gdGVtcGxhdGUgYXR0cmlidXRlcywgaWUgPG15LWVsZW1lbnQgbXktbnVtYmVyPVwiNFwiPjwvbXktZWxlbWVudD5cbi8vIG9yIGZyb20gcHJvcGVydHkgYmluZGluZ3MsIGllIDxteS1lbGVtZW50IFtteS1udW1iZXJdPVwic29tZU51bWJlclwiPjwvbXktZWxlbWVudD5cbi8vIFNvIHNldHRlcnMgZm9yIG91ciBkaXJlY3RpdmVzIGFjY2VwdCBib3RoIHN0cmluZyB2YWx1ZXMgZnJvbSB0ZW1wbGF0ZSBhdHRyaWJ1dGVzIGFuZFxuLy8gdGhlIGV4cGVjdGVkIHByb3BlcnR5IHR5cGUuIFRoaXMgZmlsZSBoYXMgaGVscGVycyBmb3IgY29tbW9uIHByb3BlcnR5IHR5cGVzLlxuLy8gTW9yZSBjb250ZXh0OiBodHRwczovL3YxMy5hbmd1bGFyLmlvL2d1aWRlL3RlbXBsYXRlLXR5cGVjaGVjayNpbnB1dC1zZXR0ZXItY29lcmNpb25cblxudHlwZSBCb29sZWFuQXR0cmlidXRlID0gJycgfCBudWxsO1xuZXhwb3J0IHR5cGUgQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUgPSBib29sZWFuIHwgQm9vbGVhbkF0dHJpYnV0ZTtcbmV4cG9ydCB0eXBlIE51bWJlclZhbHVlT3JBdHRyaWJ1dGUgPSBudW1iZXIgfCBzdHJpbmc7XG5cbi8qKlxuICogQ29udmVydHMgdmFsdWVzIGZyb20gdGVtcGxhdGVzIChlbXB0eSBzdHJpbmcgb3IgbnVsbCkgb3IgYm9vbGVhbiBiaW5kaW5ncyB0byBhIGJvb2xlYW4gcHJvcGVydHkgcmVwcmVzZW50YXRpb25cbiAqL1xuZXhwb3J0IGNvbnN0IHRvQm9vbGVhblByb3BlcnR5ID0gKHZhbHVlOiBCb29sZWFuVmFsdWVPckF0dHJpYnV0ZSk6IGJvb2xlYW4gPT4ge1xuICAgIGlmICh2YWx1ZSA9PT0gZmFsc2UgfHwgdmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvLyBGb3IgYm9vbGVhbiBhdHRyaWJ1dGVzIHRoZSBlbXB0eSBzdHJpbmcgdmFsdWUgaXMgdHJ1ZVxuICAgIHJldHVybiB0cnVlO1xufTtcblxuLyoqXG4gKiBDb252ZXJ0cyB2YWx1ZXMgZnJvbSB0ZW1wbGF0ZXMgKGVtcHR5IHN0cmluZyBvciBudWxsKSBvciBib29sZWFuIGJpbmRpbmdzIHRvIGFuIEFyaWEgYm9vbGVhblxuICogYXR0cmlidXRlIHJlcHJlc2VudGF0aW9uICh0aGUgc3RyaW5ncyBcInRydWVcIiBvciBcImZhbHNlXCIpXG4gKi9cbmV4cG9ydCBjb25zdCB0b0Jvb2xlYW5BcmlhQXR0cmlidXRlID0gKHZhbHVlOiBCb29sZWFuVmFsdWVPckF0dHJpYnV0ZSk6ICd0cnVlJyB8ICdmYWxzZScgPT4ge1xuICAgIGlmICh2YWx1ZSA9PT0gZmFsc2UgfHwgdmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuICdmYWxzZSc7XG4gICAgfVxuICAgIC8vIEZvciBib29sZWFuIGF0dHJpYnV0ZXMgdGhlIGVtcHR5IHN0cmluZyB2YWx1ZSBpcyB0cnVlXG4gICAgcmV0dXJuICd0cnVlJztcbn07XG5cbi8qKlxuICogQ29udmVydHMgdmFsdWVzIGZyb20gdGVtcGxhdGVzIChudW1iZXIgcmVwcmVzZW50YXRpb24gYXMgYSBzdHJpbmcpIG9yIG51bWJlciBiaW5kaW5ncyB0byBhIG51bWJlciBwcm9wZXJ0eSByZXByZXNlbnRhdGlvblxuICovXG5leHBvcnQgY29uc3QgdG9OdW1iZXJQcm9wZXJ0eSA9ICh2YWx1ZTogTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSk6IG51bWJlciA9PiB7XG4gICAgLy8gQW5ndWxhcjogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9ibG9iLzI2NjRiYzJiM2VmNGVlNWZkNjcxZjkxNTgyOGNmY2MyNzRhMzZjNzcvcGFja2FnZXMvZm9ybXMvc3JjL2RpcmVjdGl2ZXMvbnVtYmVyX3ZhbHVlX2FjY2Vzc29yLnRzI0w2N1xuICAgIC8vIEFuZCBGYXN0OiBodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L2Zhc3QvYmxvYi80NmJiNmQ5YWFiMmMzNzEwNWY0NDM0ZGIzNzk1ZTE3NmMyMzU0YTRmL3BhY2thZ2VzL3dlYi1jb21wb25lbnRzL2Zhc3QtZWxlbWVudC9zcmMvY29tcG9uZW50cy9hdHRyaWJ1dGVzLnRzI0wxMDBcbiAgICAvLyBIYW5kbGUgbnVtZXJpYyBjb252ZXJzaW9ucyBmcm9tIHRoZSB2aWV3IGRpZmZlcmVudGx5XG4gICAgLy8gU2luY2UgTnVtYmVyKHZhbCkgaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvbXVsdGlwYWdlL251bWJlcnMtYW5kLWRhdGVzLmh0bWwjc2VjLW51bWJlci1jb25zdHJ1Y3Rvci1udW1iZXItdmFsdWVcbiAgICAvLyBhbmQgdmFsICogMSBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi9tdWx0aXBhZ2UvZWNtYXNjcmlwdC1sYW5ndWFnZS1leHByZXNzaW9ucy5odG1sI3NlYy1hcHBseXN0cmluZ29ybnVtZXJpY2JpbmFyeW9wZXJhdG9yXG4gICAgLy8gQXJlIGlkZW50aWNhbCAodXNlIFRvTnVtZXJpYyBhbGdvcml0aG0pLCB3ZW50IHdpdGggTnVtYmVyKCkgZm9yIGNsYXJpdHlcbiAgICByZXR1cm4gTnVtYmVyKHZhbHVlKTtcbn07XG5cbi8qKlxuICogQ29udmVydHMgdmFsdWVzIGZyb20gdGVtcGxhdGVzIChudW1iZXIgcmVwcmVzZW50YXRpb24gYXMgYSBzdHJpbmcpIG9yIG51bWJlciBiaW5kaW5ncyB0byBhIG51bWJlciBwcm9wZXJ0eSByZXByZXNlbnRhdGlvbi5cbiAqIFRoZSB2YWx1ZXMgb2YgYG51bGxgIGFuZCBgdW5kZWZpbmVkYCBhcmUgYWxzbyBzdXBwb3J0ZWQsIGFuZCB0aGV5IGFyZSBub3QgY29udmVydGVkLlxuICovXG5leHBvcnQgY29uc3QgdG9OdWxsYWJsZU51bWJlclByb3BlcnR5ID0gKHZhbHVlOiBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlIHwgbnVsbCB8IHVuZGVmaW5lZCk6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQgPT4ge1xuICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdG9OdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG59O1xuIl19
@@ -190,6 +190,7 @@ import '@ni/nimble-components/dist/esm/switch';
190
190
  import '@ni/nimble-components/dist/esm/tab';
191
191
  import '@ni/nimble-components/dist/esm/tab-panel';
192
192
  import '@ni/nimble-components/dist/esm/table';
193
+ import '@ni/nimble-components/dist/esm/table/types';
193
194
  import '@ni/nimble-components/dist/esm/table-column/text';
194
195
  import '@ni/nimble-components/dist/esm/tabs';
195
196
  import '@ni/nimble-components/dist/esm/tabs-toolbar';
@@ -362,6 +363,16 @@ const toNumberProperty = (value) => {
362
363
  // Are identical (use ToNumeric algorithm), went with Number() for clarity
363
364
  return Number(value);
364
365
  };
366
+ /**
367
+ * Converts values from templates (number representation as a string) or number bindings to a number property representation.
368
+ * The values of `null` and `undefined` are also supported, and they are not converted.
369
+ */
370
+ const toNullableNumberProperty = (value) => {
371
+ if (value === undefined || value === null) {
372
+ return value;
373
+ }
374
+ return toNumberProperty(value);
375
+ };
365
376
 
366
377
  /**
367
378
  * Directive to provide Angular integration for the anchor.
@@ -7422,9 +7433,25 @@ class NimbleTableColumnBaseDirective {
7422
7433
  set columnHidden(value) {
7423
7434
  this.renderer.setProperty(this.elementRef.nativeElement, 'columnHidden', toBooleanProperty(value));
7424
7435
  }
7436
+ get sortDirection() {
7437
+ return this.elementRef.nativeElement.sortDirection;
7438
+ }
7439
+ // Renaming because property should have camel casing, but attribute should not
7440
+ // eslint-disable-next-line @angular-eslint/no-input-rename
7441
+ set sortDirection(value) {
7442
+ this.renderer.setProperty(this.elementRef.nativeElement, 'sortDirection', value);
7443
+ }
7444
+ get sortIndex() {
7445
+ return this.elementRef.nativeElement.sortIndex;
7446
+ }
7447
+ // Renaming because property should have camel casing, but attribute should not
7448
+ // eslint-disable-next-line @angular-eslint/no-input-rename
7449
+ set sortIndex(value) {
7450
+ this.renderer.setProperty(this.elementRef.nativeElement, 'sortIndex', toNullableNumberProperty(value));
7451
+ }
7425
7452
  }
7426
7453
  NimbleTableColumnBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NimbleTableColumnBaseDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
7427
- NimbleTableColumnBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: NimbleTableColumnBaseDirective, inputs: { columnId: ["column-id", "columnId"], actionMenuSlot: ["action-menu-slot", "actionMenuSlot"], actionMenuLabel: ["action-menu-label", "actionMenuLabel"], columnHidden: ["column-hidden", "columnHidden"] }, ngImport: i0 });
7454
+ NimbleTableColumnBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: NimbleTableColumnBaseDirective, inputs: { columnId: ["column-id", "columnId"], actionMenuSlot: ["action-menu-slot", "actionMenuSlot"], actionMenuLabel: ["action-menu-label", "actionMenuLabel"], columnHidden: ["column-hidden", "columnHidden"], sortDirection: ["sort-direction", "sortDirection"], sortIndex: ["sort-index", "sortIndex"] }, ngImport: i0 });
7428
7455
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: NimbleTableColumnBaseDirective, decorators: [{
7429
7456
  type: Directive
7430
7457
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { columnId: [{
@@ -7439,6 +7466,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
7439
7466
  }], columnHidden: [{
7440
7467
  type: Input,
7441
7468
  args: ['column-hidden']
7469
+ }], sortDirection: [{
7470
+ type: Input,
7471
+ args: ['sort-direction']
7472
+ }], sortIndex: [{
7473
+ type: Input,
7474
+ args: ['sort-index']
7442
7475
  }] } });
7443
7476
 
7444
7477
  /**