@ni/nimble-angular 17.5.14 → 17.6.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.
Files changed (49) hide show
  1. package/esm2020/table-column/anchor/nimble-table-column-anchor.directive.mjs +5 -49
  2. package/esm2020/table-column/date-text/nimble-table-column-date-text.directive.mjs +4 -49
  3. package/esm2020/table-column/enum-text/nimble-table-column-enum-text.directive.mjs +4 -49
  4. package/esm2020/table-column/icon/nimble-table-column-icon.directive.mjs +4 -49
  5. package/esm2020/table-column/mixins/fractional-width-column.mjs +42 -0
  6. package/esm2020/table-column/mixins/groupable-column.mjs +42 -0
  7. package/esm2020/table-column/nimble-table-column-base.directive.mjs +1 -1
  8. package/esm2020/table-column/number-text/nimble-table-column-number-text.directive.mjs +5 -49
  9. package/esm2020/table-column/public-api.mjs +3 -1
  10. package/esm2020/table-column/text/nimble-table-column-text.directive.mjs +6 -54
  11. package/fesm2015/ni-nimble-angular-table-column-anchor.mjs +4 -48
  12. package/fesm2015/ni-nimble-angular-table-column-anchor.mjs.map +1 -1
  13. package/fesm2015/ni-nimble-angular-table-column-date-text.mjs +3 -48
  14. package/fesm2015/ni-nimble-angular-table-column-date-text.mjs.map +1 -1
  15. package/fesm2015/ni-nimble-angular-table-column-enum-text.mjs +3 -48
  16. package/fesm2015/ni-nimble-angular-table-column-enum-text.mjs.map +1 -1
  17. package/fesm2015/ni-nimble-angular-table-column-icon.mjs +3 -48
  18. package/fesm2015/ni-nimble-angular-table-column-icon.mjs.map +1 -1
  19. package/fesm2015/ni-nimble-angular-table-column-number-text.mjs +4 -48
  20. package/fesm2015/ni-nimble-angular-table-column-number-text.mjs.map +1 -1
  21. package/fesm2015/ni-nimble-angular-table-column-text.mjs +5 -53
  22. package/fesm2015/ni-nimble-angular-table-column-text.mjs.map +1 -1
  23. package/fesm2015/ni-nimble-angular-table-column.mjs +79 -1
  24. package/fesm2015/ni-nimble-angular-table-column.mjs.map +1 -1
  25. package/fesm2020/ni-nimble-angular-table-column-anchor.mjs +4 -48
  26. package/fesm2020/ni-nimble-angular-table-column-anchor.mjs.map +1 -1
  27. package/fesm2020/ni-nimble-angular-table-column-date-text.mjs +3 -48
  28. package/fesm2020/ni-nimble-angular-table-column-date-text.mjs.map +1 -1
  29. package/fesm2020/ni-nimble-angular-table-column-enum-text.mjs +3 -48
  30. package/fesm2020/ni-nimble-angular-table-column-enum-text.mjs.map +1 -1
  31. package/fesm2020/ni-nimble-angular-table-column-icon.mjs +3 -48
  32. package/fesm2020/ni-nimble-angular-table-column-icon.mjs.map +1 -1
  33. package/fesm2020/ni-nimble-angular-table-column-number-text.mjs +4 -48
  34. package/fesm2020/ni-nimble-angular-table-column-number-text.mjs.map +1 -1
  35. package/fesm2020/ni-nimble-angular-table-column-text.mjs +5 -53
  36. package/fesm2020/ni-nimble-angular-table-column-text.mjs.map +1 -1
  37. package/fesm2020/ni-nimble-angular-table-column.mjs +79 -1
  38. package/fesm2020/ni-nimble-angular-table-column.mjs.map +1 -1
  39. package/package.json +2 -2
  40. package/table-column/anchor/nimble-table-column-anchor.directive.d.ts +40 -11
  41. package/table-column/date-text/nimble-table-column-date-text.directive.d.ts +39 -11
  42. package/table-column/enum-text/nimble-table-column-enum-text.directive.d.ts +39 -11
  43. package/table-column/icon/nimble-table-column-icon.directive.d.ts +39 -11
  44. package/table-column/mixins/fractional-width-column.d.ts +22 -0
  45. package/table-column/mixins/groupable-column.d.ts +22 -0
  46. package/table-column/nimble-table-column-base.directive.d.ts +4 -2
  47. package/table-column/number-text/nimble-table-column-number-text.directive.d.ts +40 -11
  48. package/table-column/public-api.d.ts +2 -0
  49. package/table-column/text/nimble-table-column-text.directive.d.ts +39 -13
@@ -1,15 +1,15 @@
1
1
  import { Directive, Input } from '@angular/core';
2
2
  import { tableColumnAnchorTag } from '@ni/nimble-components/dist/esm/table-column/anchor';
3
3
  import { AnchorAppearance } from '@ni/nimble-components/dist/esm/anchor/types';
4
- import { toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';
5
- import { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';
4
+ import { toBooleanProperty } from '@ni/nimble-angular/internal-utilities';
5
+ import { NimbleTableColumnBaseDirective, mixinFractionalWidthColumnAPI, mixinGroupableColumnAPI } from '@ni/nimble-angular/table-column';
6
6
  import * as i0 from "@angular/core";
7
7
  export { tableColumnAnchorTag };
8
8
  export { AnchorAppearance };
9
9
  /**
10
10
  * Directive to provide Angular integration for the table column element for links.
11
11
  */
12
- export class NimbleTableColumnAnchorDirective extends NimbleTableColumnBaseDirective {
12
+ export class NimbleTableColumnAnchorDirective extends mixinFractionalWidthColumnAPI(mixinGroupableColumnAPI((NimbleTableColumnBaseDirective))) {
13
13
  constructor(renderer, elementRef) {
14
14
  super(renderer, elementRef);
15
15
  }
@@ -85,41 +85,9 @@ export class NimbleTableColumnAnchorDirective extends NimbleTableColumnBaseDirec
85
85
  set download(value) {
86
86
  this.renderer.setProperty(this.elementRef.nativeElement, 'download', value);
87
87
  }
88
- get fractionalWidth() {
89
- return this.elementRef.nativeElement.fractionalWidth;
90
- }
91
- // Renaming because property should have camel casing, but attribute should not
92
- // eslint-disable-next-line @angular-eslint/no-input-rename
93
- set fractionalWidth(value) {
94
- this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));
95
- }
96
- get minPixelWidth() {
97
- return this.elementRef.nativeElement.minPixelWidth;
98
- }
99
- // Renaming because property should have camel casing, but attribute should not
100
- // eslint-disable-next-line @angular-eslint/no-input-rename
101
- set minPixelWidth(value) {
102
- this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));
103
- }
104
- get groupIndex() {
105
- return this.elementRef.nativeElement.groupIndex;
106
- }
107
- // Renaming because property should have camel casing, but attribute should not
108
- // eslint-disable-next-line @angular-eslint/no-input-rename
109
- set groupIndex(value) {
110
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));
111
- }
112
- get groupingDisabled() {
113
- return this.elementRef.nativeElement.groupingDisabled;
114
- }
115
- // Renaming because property should have camel casing, but attribute should not
116
- // eslint-disable-next-line @angular-eslint/no-input-rename
117
- set groupingDisabled(value) {
118
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));
119
- }
120
88
  }
121
89
  NimbleTableColumnAnchorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnAnchorDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
122
- NimbleTableColumnAnchorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnAnchorDirective, selector: "nimble-table-column-anchor", inputs: { labelFieldName: ["label-field-name", "labelFieldName"], hrefFieldName: ["href-field-name", "hrefFieldName"], appearance: "appearance", underlineHidden: ["underline-hidden", "underlineHidden"], hreflang: "hreflang", ping: "ping", referrerpolicy: "referrerpolicy", rel: "rel", target: "target", type: "type", download: "download", fractionalWidth: ["fractional-width", "fractionalWidth"], minPixelWidth: ["min-pixel-width", "minPixelWidth"], groupIndex: ["group-index", "groupIndex"], groupingDisabled: ["grouping-disabled", "groupingDisabled"] }, usesInheritance: true, ngImport: i0 });
90
+ NimbleTableColumnAnchorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnAnchorDirective, selector: "nimble-table-column-anchor", inputs: { labelFieldName: ["label-field-name", "labelFieldName"], hrefFieldName: ["href-field-name", "hrefFieldName"], appearance: "appearance", underlineHidden: ["underline-hidden", "underlineHidden"], hreflang: "hreflang", ping: "ping", referrerpolicy: "referrerpolicy", rel: "rel", target: "target", type: "type", download: "download" }, usesInheritance: true, ngImport: i0 });
123
91
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnAnchorDirective, decorators: [{
124
92
  type: Directive,
125
93
  args: [{
@@ -150,17 +118,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
150
118
  type: Input
151
119
  }], download: [{
152
120
  type: Input
153
- }], fractionalWidth: [{
154
- type: Input,
155
- args: ['fractional-width']
156
- }], minPixelWidth: [{
157
- type: Input,
158
- args: ['min-pixel-width']
159
- }], groupIndex: [{
160
- type: Input,
161
- args: ['group-index']
162
- }], groupingDisabled: [{
163
- type: Input,
164
- args: ['grouping-disabled']
165
121
  }] } });
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1hbmNob3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uL2FuY2hvci9uaW1ibGUtdGFibGUtY29sdW1uLWFuY2hvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUEwQixvQkFBb0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQy9FLE9BQU8sRUFBbUQsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNySixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFHakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLENBQUM7QUFDaEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLENBQUM7QUFFNUI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsOEJBQWlEO0lBdUluRyxZQUFtQixRQUFtQixFQUFFLFVBQXlDO1FBQzdFLEtBQUssQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQXhJRCxJQUFXLGNBQWM7UUFDckIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUM7SUFDeEQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBc0MsY0FBYyxDQUFDLEtBQXlCO1FBQzFFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxJ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MUMsS0FBSzt1QkFBQyxhQUFhO2dCQVVtQixnQkFBZ0I7c0JBQXRELEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIFRhYmxlQ29sdW1uQW5jaG9yLCB0YWJsZUNvbHVtbkFuY2hvclRhZyB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS90YWJsZS1jb2x1bW4vYW5jaG9yJztcbmltcG9ydCB7IEFuY2hvckFwcGVhcmFuY2UgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vYW5jaG9yL3R5cGVzJztcbmltcG9ydCB7IEJvb2xlYW5WYWx1ZU9yQXR0cmlidXRlLCBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlLCB0b0Jvb2xlYW5Qcm9wZXJ0eSwgdG9OdWxsYWJsZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQG5pL25pbWJsZS1hbmd1bGFyL2ludGVybmFsLXV0aWxpdGllcyc7XG5pbXBvcnQgeyBOaW1ibGVUYWJsZUNvbHVtbkJhc2VEaXJlY3RpdmUgfSBmcm9tICdAbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uJztcblxuZXhwb3J0IHR5cGUgeyBUYWJsZUNvbHVtbkFuY2hvciB9O1xuZXhwb3J0IHsgdGFibGVDb2x1bW5BbmNob3JUYWcgfTtcbmV4cG9ydCB7IEFuY2hvckFwcGVhcmFuY2UgfTtcblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gcHJvdmlkZSBBbmd1bGFyIGludGVncmF0aW9uIGZvciB0aGUgdGFibGUgY29sdW1uIGVsZW1lbnQgZm9yIGxpbmtzLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25pbWJsZS10YWJsZS1jb2x1bW4tYW5jaG9yJ1xufSlcbmV4cG9ydCBjbGFzcyBOaW1ibGVUYWJsZUNvbHVtbkFuY2hvckRpcmVjdGl2ZSBleHRlbmRzIE5pbWJsZVRhYmxlQ29sdW1uQmFzZURpcmVjdGl2ZTxUYWJsZUNvbHVtbkFuY2hvcj4ge1xuICAgIHB1YmxpYyBnZXQgbGFiZWxGaWVsZE5hbWUoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmxhYmVsRmllbGROYW1lO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnbGFiZWwtZmllbGQtbmFtZScpIHB1YmxpYyBzZXQgbGFiZWxGaWVsZE5hbWUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbGFiZWxGaWVsZE5hbWUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBocmVmRmllbGROYW1lKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5ocmVmRmllbGROYW1lO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnaHJlZi1maWVsZC1uYW1lJykgcHVibGljIHNldCBocmVmRmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2hyZWZGaWVsZE5hbWUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBhcHBlYXJhbmNlKCk6IEFuY2hvckFwcGVhcmFuY2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuYXBwZWFyYW5jZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IGFwcGVhcmFuY2UodmFsdWU6IEFuY2hvckFwcGVhcmFuY2UpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2FwcGVhcmFuY2UnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB1bmRlcmxpbmVIaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC51bmRlcmxpbmVIaWRkZW47XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCd1bmRlcmxpbmUtaGlkZGVuJykgcHVibGljIHNldCB1bmRlcmxpbmVIaWRkZW4odmFsdWU6IEJvb2xlYW5WYWx1ZU9yQXR0cmlidXRlKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd1bmRlcmxpbmVIaWRkZW4nLCB0b0Jvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaHJlZmxhbmcoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmhyZWZsYW5nO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZXQgaHJlZmxhbmcodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnaHJlZmxhbmcnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBwaW5nKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5waW5nO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZXQgcGluZyh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdwaW5nJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcmVmZXJyZXJwb2xpY3koKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlZmVycmVycG9saWN5O1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZXQgcmVmZXJyZXJwb2xpY3kodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAncmVmZXJyZXJwb2xpY3knLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByZWwoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbDtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IHJlbCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdyZWwnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0YXJnZXQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRhcmdldDtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IHRhcmdldCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd0YXJnZXQnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0eXBlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC50eXBlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZXQgdHlwZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd0eXBlJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZG93bmxvYWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmRvd25sb2FkO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZXQgZG93bmxvYWQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZG93bmxvYWQnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmcmFjdGlvbmFsV2lkdGgoKTogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mcmFjdGlvbmFsV2lkdGg7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdmcmFjdGlvbmFsLXdpZHRoJykgcHVibGljIHNldCBmcmFjdGlvbmFsV2lkdGgodmFsdWU6IE51bWJlclZhbHVlT3JBdHRyaWJ1dGUgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdmcmFjdGlvbmFsV2lkdGgnLCB0b051bGxhYmxlTnVtYmVyUHJvcGVydHkodmFsdWUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG1pblBpeGVsV2lkdGgoKTogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5taW5QaXhlbFdpZHRoO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnbWluLXBpeGVsLXdpZHRoJykgcHVibGljIHNldCBtaW5QaXhlbFdpZHRoKHZhbHVlOiBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbWluUGl4ZWxXaWR0aCcsIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZ3JvdXBJbmRleCgpOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lmdyb3VwSW5kZXg7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdncm91cC1pbmRleCcpIHB1YmxpYyBzZXQgZ3JvdXBJbmRleCh2YWx1ZTogTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2dyb3VwSW5kZXgnLCB0b051bGxhYmxlTnVtYmVyUHJvcGVydHkodmFsdWUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGdyb3VwaW5nRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5ncm91cGluZ0Rpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnZ3JvdXBpbmctZGlzYWJsZWQnKSBwdWJsaWMgc2V0IGdyb3VwaW5nRGlzYWJsZWQodmFsdWU6IEJvb2xlYW5WYWx1ZU9yQXR0cmlidXRlKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdncm91cGluZ0Rpc2FibGVkJywgdG9Cb29sZWFuUHJvcGVydHkodmFsdWUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocmVuZGVyZXI6IFJlbmRlcmVyMiwgZWxlbWVudFJlZjogRWxlbWVudFJlZjxUYWJsZUNvbHVtbkFuY2hvcj4pIHtcbiAgICAgICAgc3VwZXIocmVuZGVyZXIsIGVsZW1lbnRSZWYpO1xuICAgIH1cbn1cbiJdfQ==
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1hbmNob3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uL2FuY2hvci9uaW1ibGUtdGFibGUtY29sdW1uLWFuY2hvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUEwQixvQkFBb0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQy9FLE9BQU8sRUFBMkIsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNuRyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsNkJBQTZCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFHekksT0FBTyxFQUFFLG9CQUFvQixFQUFFLENBQUM7QUFDaEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLENBQUM7QUFFNUI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsNkJBQTZCLENBQUMsdUJBQXVCLENBQUMsQ0FBQSw4QkFBaUQsQ0FBQSxDQUFDLENBQUM7SUErRjNKLFlBQW1CLFFBQW1CLEVBQUUsVUFBeUM7UUFDN0UsS0FBSyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBaEdELElBQVcsY0FBYztRQUNyQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFzQyxjQUFjLENBQUMsS0FBeUI7UUFDMUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FB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QyxVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBb0IsSUFBSSxDQUFDLEtBQXlCO1FBQzlDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQW9CLFFBQVEsQ0FBQyxLQUF5QjtRQUNsRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEYsQ0FBQzs7NkhBN0ZRLGdDQUFnQztpSEFBaEMsZ0NBQWdDOzJGQUFoQyxnQ0FBZ0M7a0JBSDVDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDRCQUE0QjtpQkFDekM7eUhBUXlDLGNBQWM7c0JBQW5ELEtBQUs7dUJBQUMsa0JBQWtCO2dCQVVZLGFBQWE7c0JBQWpELEtBQUs7dUJBQUMsaUJBQWlCO2dCQVFKLFVBQVU7c0JBQTdCLEtBQUs7Z0JBVWdDLGVBQWU7c0JBQXBELEtBQUs7dUJBQUMsa0JBQWtCO2dCQVFMLFFBQVE7c0JBQTNCLEtBQUs7Z0JBUWMsSUFBSTtzQkFBdkIsS0FBSztnQkFRYyxjQUFjO3NCQUFqQyxLQUFLO2dCQVFjLEdBQUc7c0JBQXRCLEtBQUs7Z0JBUWMsTUFBTTtzQkFBekIsS0FBSztnQkFRYyxJQUFJO3NCQUF2QixLQUFLO2dCQVFjLFFBQVE7c0JBQTNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgVGFibGVDb2x1bW5BbmNob3IsIHRhYmxlQ29sdW1uQW5jaG9yVGFnIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9hbmNob3InO1xuaW1wb3J0IHsgQW5jaG9yQXBwZWFyYW5jZSB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS9hbmNob3IvdHlwZXMnO1xuaW1wb3J0IHsgQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUsIHRvQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQG5pL25pbWJsZS1hbmd1bGFyL2ludGVybmFsLXV0aWxpdGllcyc7XG5pbXBvcnQgeyBOaW1ibGVUYWJsZUNvbHVtbkJhc2VEaXJlY3RpdmUsIG1peGluRnJhY3Rpb25hbFdpZHRoQ29sdW1uQVBJLCBtaXhpbkdyb3VwYWJsZUNvbHVtbkFQSSB9IGZyb20gJ0BuaS9uaW1ibGUtYW5ndWxhci90YWJsZS1jb2x1bW4nO1xuXG5leHBvcnQgdHlwZSB7IFRhYmxlQ29sdW1uQW5jaG9yIH07XG5leHBvcnQgeyB0YWJsZUNvbHVtbkFuY2hvclRhZyB9O1xuZXhwb3J0IHsgQW5jaG9yQXBwZWFyYW5jZSB9O1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBwcm92aWRlIEFuZ3VsYXIgaW50ZWdyYXRpb24gZm9yIHRoZSB0YWJsZSBjb2x1bW4gZWxlbWVudCBmb3IgbGlua3MuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnbmltYmxlLXRhYmxlLWNvbHVtbi1hbmNob3InXG59KVxuZXhwb3J0IGNsYXNzIE5pbWJsZVRhYmxlQ29sdW1uQW5jaG9yRGlyZWN0aXZlIGV4dGVuZHMgbWl4aW5GcmFjdGlvbmFsV2lkdGhDb2x1bW5BUEkobWl4aW5Hcm91cGFibGVDb2x1bW5BUEkoTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlPFRhYmxlQ29sdW1uQW5jaG9yPikpIHtcbiAgICBwdWJsaWMgZ2V0IGxhYmVsRmllbGROYW1lKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5sYWJlbEZpZWxkTmFtZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2xhYmVsLWZpZWxkLW5hbWUnKSBwdWJsaWMgc2V0IGxhYmVsRmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2xhYmVsRmllbGROYW1lJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaHJlZkZpZWxkTmFtZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaHJlZkZpZWxkTmFtZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2hyZWYtZmllbGQtbmFtZScpIHB1YmxpYyBzZXQgaHJlZkZpZWxkTmFtZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdocmVmRmllbGROYW1lJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYXBwZWFyYW5jZSgpOiBBbmNob3JBcHBlYXJhbmNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVhcmFuY2U7XG4gICAgfVxuXG4gICAgQElucHV0KCkgcHVibGljIHNldCBhcHBlYXJhbmNlKHZhbHVlOiBBbmNob3JBcHBlYXJhbmNlKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdhcHBlYXJhbmNlJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdW5kZXJsaW5lSGlkZGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudW5kZXJsaW5lSGlkZGVuO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgndW5kZXJsaW5lLWhpZGRlbicpIHB1YmxpYyBzZXQgdW5kZXJsaW5lSGlkZGVuKHZhbHVlOiBCb29sZWFuVmFsdWVPckF0dHJpYnV0ZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndW5kZXJsaW5lSGlkZGVuJywgdG9Cb29sZWFuUHJvcGVydHkodmFsdWUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhyZWZsYW5nKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5ocmVmbGFuZztcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IGhyZWZsYW5nKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2hyZWZsYW5nJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcGluZygpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGluZztcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IHBpbmcodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAncGluZycsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHJlZmVycmVycG9saWN5KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5yZWZlcnJlcnBvbGljeTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IHJlZmVycmVycG9saWN5KHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3JlZmVycmVycG9saWN5JywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcmVsKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5yZWw7XG4gICAgfVxuXG4gICAgQElucHV0KCkgcHVibGljIHNldCByZWwodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAncmVsJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdGFyZ2V0KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC50YXJnZXQ7XG4gICAgfVxuXG4gICAgQElucHV0KCkgcHVibGljIHNldCB0YXJnZXQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndGFyZ2V0JywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdHlwZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudHlwZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IHR5cGUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndHlwZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRvd25sb2FkKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5kb3dubG9hZDtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IGRvd25sb2FkKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Rvd25sb2FkJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihyZW5kZXJlcjogUmVuZGVyZXIyLCBlbGVtZW50UmVmOiBFbGVtZW50UmVmPFRhYmxlQ29sdW1uQW5jaG9yPikge1xuICAgICAgICBzdXBlcihyZW5kZXJlciwgZWxlbWVudFJlZik7XG4gICAgfVxufVxuIl19
@@ -1,7 +1,6 @@
1
1
  import { Directive, Input } from '@angular/core';
2
2
  import { tableColumnDateTextTag } from '@ni/nimble-components/dist/esm/table-column/date-text';
3
- import { toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';
4
- import { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';
3
+ import { NimbleTableColumnBaseDirective, mixinFractionalWidthColumnAPI, mixinGroupableColumnAPI } from '@ni/nimble-angular/table-column';
5
4
  import { DateTextFormat } from '@ni/nimble-components/dist/esm/table-column/date-text/types';
6
5
  import * as i0 from "@angular/core";
7
6
  export { DateTextFormat };
@@ -9,7 +8,7 @@ export { tableColumnDateTextTag };
9
8
  /**
10
9
  * Directive to provide Angular integration for the table column element for date text.
11
10
  */
12
- export class NimbleTableColumnDateTextDirective extends NimbleTableColumnBaseDirective {
11
+ export class NimbleTableColumnDateTextDirective extends mixinFractionalWidthColumnAPI(mixinGroupableColumnAPI((NimbleTableColumnBaseDirective))) {
13
12
  constructor(renderer, elementRef) {
14
13
  super(renderer, elementRef);
15
14
  }
@@ -189,41 +188,9 @@ export class NimbleTableColumnDateTextDirective extends NimbleTableColumnBaseDir
189
188
  set customHourCycle(value) {
190
189
  this.renderer.setProperty(this.elementRef.nativeElement, 'customHourCycle', value);
191
190
  }
192
- get fractionalWidth() {
193
- return this.elementRef.nativeElement.fractionalWidth;
194
- }
195
- // Renaming because property should have camel casing, but attribute should not
196
- // eslint-disable-next-line @angular-eslint/no-input-rename
197
- set fractionalWidth(value) {
198
- this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));
199
- }
200
- get minPixelWidth() {
201
- return this.elementRef.nativeElement.minPixelWidth;
202
- }
203
- // Renaming because property should have camel casing, but attribute should not
204
- // eslint-disable-next-line @angular-eslint/no-input-rename
205
- set minPixelWidth(value) {
206
- this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));
207
- }
208
- get groupIndex() {
209
- return this.elementRef.nativeElement.groupIndex;
210
- }
211
- // Renaming because property should have camel casing, but attribute should not
212
- // eslint-disable-next-line @angular-eslint/no-input-rename
213
- set groupIndex(value) {
214
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));
215
- }
216
- get groupingDisabled() {
217
- return this.elementRef.nativeElement.groupingDisabled;
218
- }
219
- // Renaming because property should have camel casing, but attribute should not
220
- // eslint-disable-next-line @angular-eslint/no-input-rename
221
- set groupingDisabled(value) {
222
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));
223
- }
224
191
  }
225
192
  NimbleTableColumnDateTextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnDateTextDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
226
- NimbleTableColumnDateTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnDateTextDirective, selector: "nimble-table-column-date-text", inputs: { fieldName: ["field-name", "fieldName"], format: "format", customLocaleMatcher: ["custom-locale-matcher", "customLocaleMatcher"], customWeekday: ["custom-weekday", "customWeekday"], customEra: ["custom-era", "customEra"], customYear: ["custom-year", "customYear"], customMonth: ["custom-month", "customMonth"], customDay: ["custom-day", "customDay"], customHour: ["custom-hour", "customHour"], customMinute: ["custom-minute", "customMinute"], customSecond: ["custom-second", "customSecond"], customTimeZoneName: ["custom-time-zone-name", "customTimeZoneName"], customFormatMatcher: ["custom-format-matcher", "customFormatMatcher"], customHour12: ["custom-hour12", "customHour12"], customTimeZone: ["custom-time-zone", "customTimeZone"], customCalendar: ["custom-calendar", "customCalendar"], customDayPeriod: ["custom-day-period", "customDayPeriod"], customNumberingSystem: ["custom-numbering-system", "customNumberingSystem"], customDateStyle: ["custom-date-style", "customDateStyle"], customTimeStyle: ["custom-time-style", "customTimeStyle"], customHourCycle: ["custom-hour-cycle", "customHourCycle"], fractionalWidth: ["fractional-width", "fractionalWidth"], minPixelWidth: ["min-pixel-width", "minPixelWidth"], groupIndex: ["group-index", "groupIndex"], groupingDisabled: ["grouping-disabled", "groupingDisabled"] }, usesInheritance: true, ngImport: i0 });
193
+ NimbleTableColumnDateTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnDateTextDirective, selector: "nimble-table-column-date-text", inputs: { fieldName: ["field-name", "fieldName"], format: "format", customLocaleMatcher: ["custom-locale-matcher", "customLocaleMatcher"], customWeekday: ["custom-weekday", "customWeekday"], customEra: ["custom-era", "customEra"], customYear: ["custom-year", "customYear"], customMonth: ["custom-month", "customMonth"], customDay: ["custom-day", "customDay"], customHour: ["custom-hour", "customHour"], customMinute: ["custom-minute", "customMinute"], customSecond: ["custom-second", "customSecond"], customTimeZoneName: ["custom-time-zone-name", "customTimeZoneName"], customFormatMatcher: ["custom-format-matcher", "customFormatMatcher"], customHour12: ["custom-hour12", "customHour12"], customTimeZone: ["custom-time-zone", "customTimeZone"], customCalendar: ["custom-calendar", "customCalendar"], customDayPeriod: ["custom-day-period", "customDayPeriod"], customNumberingSystem: ["custom-numbering-system", "customNumberingSystem"], customDateStyle: ["custom-date-style", "customDateStyle"], customTimeStyle: ["custom-time-style", "customTimeStyle"], customHourCycle: ["custom-hour-cycle", "customHourCycle"] }, usesInheritance: true, ngImport: i0 });
227
194
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnDateTextDirective, decorators: [{
228
195
  type: Directive,
229
196
  args: [{
@@ -291,17 +258,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
291
258
  }], customHourCycle: [{
292
259
  type: Input,
293
260
  args: ['custom-hour-cycle']
294
- }], fractionalWidth: [{
295
- type: Input,
296
- args: ['fractional-width']
297
- }], minPixelWidth: [{
298
- type: Input,
299
- args: ['min-pixel-width']
300
- }], groupIndex: [{
301
- type: Input,
302
- args: ['group-index']
303
- }], groupingDisabled: [{
304
- type: Input,
305
- args: ['grouping-disabled']
306
261
  }] } });
307
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1kYXRlLXRleHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uL2RhdGUtdGV4dC9uaW1ibGUtdGFibGUtY29sdW1uLWRhdGUtdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUE0QixzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3pILE9BQU8sRUFBbUQsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNySixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRixPQUFPLEVBQ0gsY0FBYyxFQWdCakIsTUFBTSw2REFBNkQsQ0FBQzs7QUFJckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxDQUFDO0FBZTFCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0FBRWxDOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLDhCQUFtRDtJQWlRdkcsWUFBbUIsUUFBbUIsRUFBRSxVQUEyQztRQUMvRSxLQUFLLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFsUUQsSUFBVyxTQUFTO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO0lBQ25ELENBQUM7SUFFRCwrRUFBK0U7SUFDL0UsMkRBQTJEO0lBQzNELElBQWdDLFNBQVMsQ0FBQyxLQUF5QjtRQUMvRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakYsQ0FBQztJ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QTlDLEtBQUs7dUJBQUMsZUFBZTtnQkFVcUIsa0JBQWtCO3NCQUE1RCxLQUFLO3VCQUFDLHVCQUF1QjtnQkFVYSxtQkFBbUI7c0JBQTdELEtBQUs7dUJBQUMsdUJBQXVCO2dCQVVLLFlBQVk7c0JBQTlDLEtBQUs7dUJBQUMsZUFBZTtnQkFrQmdCLGNBQWM7c0JBQW5ELEtBQUs7dUJBQUMsa0JBQWtCO2dCQVVZLGNBQWM7c0JBQWxELEtBQUs7dUJBQUMsaUJBQWlCO2dCQVVlLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVtQixxQkFBcUI7c0JBQWpFLEtBQUs7dUJBQUMseUJBQXlCO2dCQVVPLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVhLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVhLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVZLGVBQWU7c0JBQXBELEtBQUs7dUJBQUMsa0JBQWtCO2dCQVVZLGFBQWE7c0JBQWpELEtBQUs7dUJBQUMsaUJBQWlCO2dCQVVTLFVBQVU7c0JBQTFDLEtBQUs7dUJBQUMsYUFBYTtnQkFVbUIsZ0JBQWdCO3NCQUF0RCxLQUFLO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBUYWJsZUNvbHVtbkRhdGVUZXh0LCB0YWJsZUNvbHVtbkRhdGVUZXh0VGFnIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9kYXRlLXRleHQnO1xuaW1wb3J0IHsgQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUsIE51bWJlclZhbHVlT3JBdHRyaWJ1dGUsIHRvQm9vbGVhblByb3BlcnR5LCB0b051bGxhYmxlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAbmkvbmltYmxlLWFuZ3VsYXIvaW50ZXJuYWwtdXRpbGl0aWVzJztcbmltcG9ydCB7IE5pbWJsZVRhYmxlQ29sdW1uQmFzZURpcmVjdGl2ZSB9IGZyb20gJ0BuaS9uaW1ibGUtYW5ndWxhci90YWJsZS1jb2x1bW4nO1xuaW1wb3J0IHtcbiAgICBEYXRlVGV4dEZvcm1hdCxcbiAgICBEYXRlU3R5bGUsXG4gICAgRGF5Rm9ybWF0LFxuICAgIERheVBlcmlvZEZvcm1hdCxcbiAgICBFcmFGb3JtYXQsXG4gICAgRm9ybWF0TWF0Y2hlckFsZ29yaXRobSxcbiAgICBIb3VyQ3ljbGVGb3JtYXQsXG4gICAgSG91ckZvcm1hdCxcbiAgICBMb2NhbGVNYXRjaGVyQWxnb3JpdGhtLFxuICAgIE1pbnV0ZUZvcm1hdCxcbiAgICBNb250aEZvcm1hdCxcbiAgICBTZWNvbmRGb3JtYXQsXG4gICAgVGltZVN0eWxlLFxuICAgIFRpbWVab25lTmFtZUZvcm1hdCxcbiAgICBXZWVrZGF5Rm9ybWF0LFxuICAgIFllYXJGb3JtYXRcbn0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9kYXRlLXRleHQvdHlwZXMnO1xuXG5leHBvcnQgdHlwZSB7IFRhYmxlQ29sdW1uRGF0ZVRleHQgfTtcbmV4cG9ydCB7IERhdGVTdHlsZSB9O1xuZXhwb3J0IHsgRGF0ZVRleHRGb3JtYXQgfTtcbmV4cG9ydCB7IERheUZvcm1hdCB9O1xuZXhwb3J0IHsgRGF5UGVyaW9kRm9ybWF0IH07XG5leHBvcnQgeyBFcmFGb3JtYXQgfTtcbmV4cG9ydCB7IEZvcm1hdE1hdGNoZXJBbGdvcml0aG0gfTtcbmV4cG9ydCB7IEhvdXJDeWNsZUZvcm1hdCB9O1xuZXhwb3J0IHsgSG91ckZvcm1hdCB9O1xuZXhwb3J0IHsgTG9jYWxlTWF0Y2hlckFsZ29yaXRobSB9O1xuZXhwb3J0IHsgTWludXRlRm9ybWF0IH07XG5leHBvcnQgeyBNb250aEZvcm1hdCB9O1xuZXhwb3J0IHsgU2Vjb25kRm9ybWF0IH07XG5leHBvcnQgeyBUaW1lU3R5bGUgfTtcbmV4cG9ydCB7IFRpbWVab25lTmFtZUZvcm1hdCB9O1xuZXhwb3J0IHsgV2Vla2RheUZvcm1hdCB9O1xuZXhwb3J0IHsgWWVhckZvcm1hdCB9O1xuZXhwb3J0IHsgdGFibGVDb2x1bW5EYXRlVGV4dFRhZyB9O1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBwcm92aWRlIEFuZ3VsYXIgaW50ZWdyYXRpb24gZm9yIHRoZSB0YWJsZSBjb2x1bW4gZWxlbWVudCBmb3IgZGF0ZSB0ZXh0LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25pbWJsZS10YWJsZS1jb2x1bW4tZGF0ZS10ZXh0J1xufSlcbmV4cG9ydCBjbGFzcyBOaW1ibGVUYWJsZUNvbHVtbkRhdGVUZXh0RGlyZWN0aXZlIGV4dGVuZHMgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlPFRhYmxlQ29sdW1uRGF0ZVRleHQ+IHtcbiAgICBwdWJsaWMgZ2V0IGZpZWxkTmFtZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZmllbGROYW1lO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnZmllbGQtbmFtZScpIHB1YmxpYyBzZXQgZmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2ZpZWxkTmFtZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZvcm1hdCgpOiBEYXRlVGV4dEZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb3JtYXQ7XG4gICAgfVxuXG4gICAgQElucHV0KCkgcHVibGljIHNldCBmb3JtYXQodmFsdWU6IERhdGVUZXh0Rm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdmb3JtYXQnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21Mb2NhbGVNYXRjaGVyKCk6IExvY2FsZU1hdGNoZXJBbGdvcml0aG0ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tTG9jYWxlTWF0Y2hlcjtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1sb2NhbGUtbWF0Y2hlcicpIHB1YmxpYyBzZXQgY3VzdG9tTG9jYWxlTWF0Y2hlcih2YWx1ZTogTG9jYWxlTWF0Y2hlckFsZ29yaXRobSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tTG9jYWxlTWF0Y2hlcicsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbVdlZWtkYXkoKTogV2Vla2RheUZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21XZWVrZGF5O1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLXdlZWtkYXknKSBwdWJsaWMgc2V0IGN1c3RvbVdlZWtkYXkodmFsdWU6IFdlZWtkYXlGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbVdlZWtkYXknLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21FcmEoKTogRXJhRm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbUVyYTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1lcmEnKSBwdWJsaWMgc2V0IGN1c3RvbUVyYSh2YWx1ZTogRXJhRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21FcmEnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21ZZWFyKCk6IFllYXJGb3JtYXQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tWWVhcjtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS15ZWFyJykgcHVibGljIHNldCBjdXN0b21ZZWFyKHZhbHVlOiBZZWFyRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21ZZWFyJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tTW9udGgoKTogTW9udGhGb3JtYXQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tTW9udGg7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tbW9udGgnKSBwdWJsaWMgc2V0IGN1c3RvbU1vbnRoKHZhbHVlOiBNb250aEZvcm1hdCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tTW9udGgnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21EYXkoKTogRGF5Rm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbURheTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1kYXknKSBwdWJsaWMgc2V0IGN1c3RvbURheSh2YWx1ZTogRGF5Rm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21EYXknLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21Ib3VyKCk6IEhvdXJGb3JtYXQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tSG91cjtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1ob3VyJykgcHVibGljIHNldCBjdXN0b21Ib3VyKHZhbHVlOiBIb3VyRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21Ib3VyJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tTWludXRlKCk6IE1pbnV0ZUZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21NaW51dGU7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tbWludXRlJykgcHVibGljIHNldCBjdXN0b21NaW51dGUodmFsdWU6IE1pbnV0ZUZvcm1hdCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tTWludXRlJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tU2Vjb25kKCk6IFNlY29uZEZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21TZWNvbmQ7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tc2Vjb25kJykgcHVibGljIHNldCBjdXN0b21TZWNvbmQodmFsdWU6IFNlY29uZEZvcm1hdCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tU2Vjb25kJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tVGltZVpvbmVOYW1lKCk6IFRpbWVab25lTmFtZUZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21UaW1lWm9uZU5hbWU7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tdGltZS16b25lLW5hbWUnKSBwdWJsaWMgc2V0IGN1c3RvbVRpbWVab25lTmFtZSh2YWx1ZTogVGltZVpvbmVOYW1lRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21UaW1lWm9uZU5hbWUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21Gb3JtYXRNYXRjaGVyKCk6IEZvcm1hdE1hdGNoZXJBbGdvcml0aG0ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tRm9ybWF0TWF0Y2hlcjtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1mb3JtYXQtbWF0Y2hlcicpIHB1YmxpYyBzZXQgY3VzdG9tRm9ybWF0TWF0Y2hlcih2YWx1ZTogRm9ybWF0TWF0Y2hlckFsZ29yaXRobSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tRm9ybWF0TWF0Y2hlcicsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUhvdXIxMigpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbUhvdXIxMjtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1ob3VyMTInKSBwdWJsaWMgc2V0IGN1c3RvbUhvdXIxMih2YWx1ZTogYm9vbGVhbiB8ICd0cnVlJyB8ICdmYWxzZScgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgbGV0IGNvbnZlcnRlZFZhbHVlO1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgIGNvbnZlcnRlZFZhbHVlID0gdmFsdWU7XG4gICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29udmVydGVkVmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb252ZXJ0ZWRWYWx1ZSA9IHZhbHVlID09PSAndHJ1ZSc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbUhvdXIxMicsIGNvbnZlcnRlZFZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbVRpbWVab25lKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21UaW1lWm9uZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS10aW1lLXpvbmUnKSBwdWJsaWMgc2V0IGN1c3RvbVRpbWVab25lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbVRpbWVab25lJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tQ2FsZW5kYXIoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbUNhbGVuZGFyO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWNhbGVuZGFyJykgcHVibGljIHNldCBjdXN0b21DYWxlbmRhcih2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21DYWxlbmRhcicsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbURheVBlcmlvZCgpOiBEYXlQZXJpb2RGb3JtYXQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tRGF5UGVyaW9kO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWRheS1wZXJpb2QnKSBwdWJsaWMgc2V0IGN1c3RvbURheVBlcmlvZCh2YWx1ZTogRGF5UGVyaW9kRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21EYXlQZXJpb2QnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21OdW1iZXJpbmdTeXN0ZW0oKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbU51bWJlcmluZ1N5c3RlbTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1udW1iZXJpbmctc3lzdGVtJykgcHVibGljIHNldCBjdXN0b21OdW1iZXJpbmdTeXN0ZW0odmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tTnVtYmVyaW5nU3lzdGVtJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tRGF0ZVN0eWxlKCk6IERhdGVTdHlsZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21EYXRlU3R5bGU7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tZGF0ZS1zdHlsZScpIHB1YmxpYyBzZXQgY3VzdG9tRGF0ZVN0eWxlKHZhbHVlOiBEYXRlU3R5bGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbURhdGVTdHlsZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbVRpbWVTdHlsZSgpOiBUaW1lU3R5bGUge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tVGltZVN0eWxlO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLXRpbWUtc3R5bGUnKSBwdWJsaWMgc2V0IGN1c3RvbVRpbWVTdHlsZSh2YWx1ZTogVGltZVN0eWxlKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21UaW1lU3R5bGUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21Ib3VyQ3ljbGUoKTogSG91ckN5Y2xlRm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbUhvdXJDeWNsZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1ob3VyLWN5Y2xlJykgcHVibGljIHNldCBjdXN0b21Ib3VyQ3ljbGUodmFsdWU6IEhvdXJDeWNsZUZvcm1hdCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tSG91ckN5Y2xlJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZnJhY3Rpb25hbFdpZHRoKCk6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZnJhY3Rpb25hbFdpZHRoO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnZnJhY3Rpb25hbC13aWR0aCcpIHB1YmxpYyBzZXQgZnJhY3Rpb25hbFdpZHRoKHZhbHVlOiBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZnJhY3Rpb25hbFdpZHRoJywgdG9OdWxsYWJsZU51bWJlclByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtaW5QaXhlbFdpZHRoKCk6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQubWluUGl4ZWxXaWR0aDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ21pbi1waXhlbC13aWR0aCcpIHB1YmxpYyBzZXQgbWluUGl4ZWxXaWR0aCh2YWx1ZTogTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ21pblBpeGVsV2lkdGgnLCB0b051bGxhYmxlTnVtYmVyUHJvcGVydHkodmFsdWUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGdyb3VwSW5kZXgoKTogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5ncm91cEluZGV4O1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnZ3JvdXAtaW5kZXgnKSBwdWJsaWMgc2V0IGdyb3VwSW5kZXgodmFsdWU6IE51bWJlclZhbHVlT3JBdHRyaWJ1dGUgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdncm91cEluZGV4JywgdG9OdWxsYWJsZU51bWJlclByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBncm91cGluZ0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ3JvdXBpbmdEaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2dyb3VwaW5nLWRpc2FibGVkJykgcHVibGljIHNldCBncm91cGluZ0Rpc2FibGVkKHZhbHVlOiBCb29sZWFuVmFsdWVPckF0dHJpYnV0ZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZ3JvdXBpbmdEaXNhYmxlZCcsIHRvQm9vbGVhblByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHJlbmRlcmVyOiBSZW5kZXJlcjIsIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8VGFibGVDb2x1bW5EYXRlVGV4dD4pIHtcbiAgICAgICAgc3VwZXIocmVuZGVyZXIsIGVsZW1lbnRSZWYpO1xuICAgIH1cbn1cbiJdfQ==
262
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1kYXRlLXRleHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uL2RhdGUtdGV4dC9uaW1ibGUtdGFibGUtY29sdW1uLWRhdGUtdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUE0QixzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3pILE9BQU8sRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pJLE9BQU8sRUFDSCxjQUFjLEVBZ0JqQixNQUFNLDZEQUE2RCxDQUFDOztBQUlyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7QUFlMUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLENBQUM7QUFFbEM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsNkJBQTZCLENBQUMsdUJBQXVCLENBQUMsQ0FBQSw4QkFBbUQsQ0FBQSxDQUFDLENBQUM7SUF5Ti9KLFlBQW1CLFFBQW1CLEVBQUUsVUFBMkM7UUFDL0UsS0FBSyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBMU5ELElBQVcsU0FBUztRQUNoQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFnQyxTQUFTLENBQUMsS0FBeUI7UUFDL0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lB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O2dCQVVLLFlBQVk7c0JBQTlDLEtBQUs7dUJBQUMsZUFBZTtnQkFrQmdCLGNBQWM7c0JBQW5ELEtBQUs7dUJBQUMsa0JBQWtCO2dCQVVZLGNBQWM7c0JBQWxELEtBQUs7dUJBQUMsaUJBQWlCO2dCQVVlLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVtQixxQkFBcUI7c0JBQWpFLEtBQUs7dUJBQUMseUJBQXlCO2dCQVVPLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVhLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CO2dCQVVhLGVBQWU7c0JBQXJELEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIFRhYmxlQ29sdW1uRGF0ZVRleHQsIHRhYmxlQ29sdW1uRGF0ZVRleHRUYWcgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUtY29sdW1uL2RhdGUtdGV4dCc7XG5pbXBvcnQgeyBOaW1ibGVUYWJsZUNvbHVtbkJhc2VEaXJlY3RpdmUsIG1peGluRnJhY3Rpb25hbFdpZHRoQ29sdW1uQVBJLCBtaXhpbkdyb3VwYWJsZUNvbHVtbkFQSSB9IGZyb20gJ0BuaS9uaW1ibGUtYW5ndWxhci90YWJsZS1jb2x1bW4nO1xuaW1wb3J0IHtcbiAgICBEYXRlVGV4dEZvcm1hdCxcbiAgICBEYXRlU3R5bGUsXG4gICAgRGF5Rm9ybWF0LFxuICAgIERheVBlcmlvZEZvcm1hdCxcbiAgICBFcmFGb3JtYXQsXG4gICAgRm9ybWF0TWF0Y2hlckFsZ29yaXRobSxcbiAgICBIb3VyQ3ljbGVGb3JtYXQsXG4gICAgSG91ckZvcm1hdCxcbiAgICBMb2NhbGVNYXRjaGVyQWxnb3JpdGhtLFxuICAgIE1pbnV0ZUZvcm1hdCxcbiAgICBNb250aEZvcm1hdCxcbiAgICBTZWNvbmRGb3JtYXQsXG4gICAgVGltZVN0eWxlLFxuICAgIFRpbWVab25lTmFtZUZvcm1hdCxcbiAgICBXZWVrZGF5Rm9ybWF0LFxuICAgIFllYXJGb3JtYXRcbn0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9kYXRlLXRleHQvdHlwZXMnO1xuXG5leHBvcnQgdHlwZSB7IFRhYmxlQ29sdW1uRGF0ZVRleHQgfTtcbmV4cG9ydCB7IERhdGVTdHlsZSB9O1xuZXhwb3J0IHsgRGF0ZVRleHRGb3JtYXQgfTtcbmV4cG9ydCB7IERheUZvcm1hdCB9O1xuZXhwb3J0IHsgRGF5UGVyaW9kRm9ybWF0IH07XG5leHBvcnQgeyBFcmFGb3JtYXQgfTtcbmV4cG9ydCB7IEZvcm1hdE1hdGNoZXJBbGdvcml0aG0gfTtcbmV4cG9ydCB7IEhvdXJDeWNsZUZvcm1hdCB9O1xuZXhwb3J0IHsgSG91ckZvcm1hdCB9O1xuZXhwb3J0IHsgTG9jYWxlTWF0Y2hlckFsZ29yaXRobSB9O1xuZXhwb3J0IHsgTWludXRlRm9ybWF0IH07XG5leHBvcnQgeyBNb250aEZvcm1hdCB9O1xuZXhwb3J0IHsgU2Vjb25kRm9ybWF0IH07XG5leHBvcnQgeyBUaW1lU3R5bGUgfTtcbmV4cG9ydCB7IFRpbWVab25lTmFtZUZvcm1hdCB9O1xuZXhwb3J0IHsgV2Vla2RheUZvcm1hdCB9O1xuZXhwb3J0IHsgWWVhckZvcm1hdCB9O1xuZXhwb3J0IHsgdGFibGVDb2x1bW5EYXRlVGV4dFRhZyB9O1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBwcm92aWRlIEFuZ3VsYXIgaW50ZWdyYXRpb24gZm9yIHRoZSB0YWJsZSBjb2x1bW4gZWxlbWVudCBmb3IgZGF0ZSB0ZXh0LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25pbWJsZS10YWJsZS1jb2x1bW4tZGF0ZS10ZXh0J1xufSlcbmV4cG9ydCBjbGFzcyBOaW1ibGVUYWJsZUNvbHVtbkRhdGVUZXh0RGlyZWN0aXZlIGV4dGVuZHMgbWl4aW5GcmFjdGlvbmFsV2lkdGhDb2x1bW5BUEkobWl4aW5Hcm91cGFibGVDb2x1bW5BUEkoTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlPFRhYmxlQ29sdW1uRGF0ZVRleHQ+KSkge1xuICAgIHB1YmxpYyBnZXQgZmllbGROYW1lKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5maWVsZE5hbWU7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdmaWVsZC1uYW1lJykgcHVibGljIHNldCBmaWVsZE5hbWUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZmllbGROYW1lJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZm9ybWF0KCk6IERhdGVUZXh0Rm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvcm1hdDtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgc2V0IGZvcm1hdCh2YWx1ZTogRGF0ZVRleHRGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Zvcm1hdCcsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUxvY2FsZU1hdGNoZXIoKTogTG9jYWxlTWF0Y2hlckFsZ29yaXRobSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21Mb2NhbGVNYXRjaGVyO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWxvY2FsZS1tYXRjaGVyJykgcHVibGljIHNldCBjdXN0b21Mb2NhbGVNYXRjaGVyKHZhbHVlOiBMb2NhbGVNYXRjaGVyQWxnb3JpdGhtKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21Mb2NhbGVNYXRjaGVyJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tV2Vla2RheSgpOiBXZWVrZGF5Rm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbVdlZWtkYXk7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20td2Vla2RheScpIHB1YmxpYyBzZXQgY3VzdG9tV2Vla2RheSh2YWx1ZTogV2Vla2RheUZvcm1hdCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tV2Vla2RheScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUVyYSgpOiBFcmFGb3JtYXQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tRXJhO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWVyYScpIHB1YmxpYyBzZXQgY3VzdG9tRXJhKHZhbHVlOiBFcmFGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbUVyYScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbVllYXIoKTogWWVhckZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21ZZWFyO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLXllYXInKSBwdWJsaWMgc2V0IGN1c3RvbVllYXIodmFsdWU6IFllYXJGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbVllYXInLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21Nb250aCgpOiBNb250aEZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21Nb250aDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1tb250aCcpIHB1YmxpYyBzZXQgY3VzdG9tTW9udGgodmFsdWU6IE1vbnRoRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21Nb250aCcsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbURheSgpOiBEYXlGb3JtYXQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tRGF5O1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWRheScpIHB1YmxpYyBzZXQgY3VzdG9tRGF5KHZhbHVlOiBEYXlGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbURheScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUhvdXIoKTogSG91ckZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21Ib3VyO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWhvdXInKSBwdWJsaWMgc2V0IGN1c3RvbUhvdXIodmFsdWU6IEhvdXJGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbUhvdXInLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21NaW51dGUoKTogTWludXRlRm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbU1pbnV0ZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1taW51dGUnKSBwdWJsaWMgc2V0IGN1c3RvbU1pbnV0ZSh2YWx1ZTogTWludXRlRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21NaW51dGUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21TZWNvbmQoKTogU2Vjb25kRm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbVNlY29uZDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1zZWNvbmQnKSBwdWJsaWMgc2V0IGN1c3RvbVNlY29uZCh2YWx1ZTogU2Vjb25kRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21TZWNvbmQnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21UaW1lWm9uZU5hbWUoKTogVGltZVpvbmVOYW1lRm9ybWF0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbVRpbWVab25lTmFtZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS10aW1lLXpvbmUtbmFtZScpIHB1YmxpYyBzZXQgY3VzdG9tVGltZVpvbmVOYW1lKHZhbHVlOiBUaW1lWm9uZU5hbWVGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbVRpbWVab25lTmFtZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUZvcm1hdE1hdGNoZXIoKTogRm9ybWF0TWF0Y2hlckFsZ29yaXRobSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21Gb3JtYXRNYXRjaGVyO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWZvcm1hdC1tYXRjaGVyJykgcHVibGljIHNldCBjdXN0b21Gb3JtYXRNYXRjaGVyKHZhbHVlOiBGb3JtYXRNYXRjaGVyQWxnb3JpdGhtKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21Gb3JtYXRNYXRjaGVyJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tSG91cjEyKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tSG91cjEyO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWhvdXIxMicpIHB1YmxpYyBzZXQgY3VzdG9tSG91cjEyKHZhbHVlOiBib29sZWFuIHwgJ3RydWUnIHwgJ2ZhbHNlJyB8IHVuZGVmaW5lZCkge1xuICAgICAgICBsZXQgY29udmVydGVkVmFsdWU7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgY29udmVydGVkVmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb252ZXJ0ZWRWYWx1ZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnZlcnRlZFZhbHVlID0gdmFsdWUgPT09ICd0cnVlJztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tSG91cjEyJywgY29udmVydGVkVmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tVGltZVpvbmUoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbVRpbWVab25lO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLXRpbWUtem9uZScpIHB1YmxpYyBzZXQgY3VzdG9tVGltZVpvbmUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tVGltZVpvbmUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21DYWxlbmRhcigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tQ2FsZW5kYXI7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tY2FsZW5kYXInKSBwdWJsaWMgc2V0IGN1c3RvbUNhbGVuZGFyKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbUNhbGVuZGFyJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tRGF5UGVyaW9kKCk6IERheVBlcmlvZEZvcm1hdCB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21EYXlQZXJpb2Q7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tZGF5LXBlcmlvZCcpIHB1YmxpYyBzZXQgY3VzdG9tRGF5UGVyaW9kKHZhbHVlOiBEYXlQZXJpb2RGb3JtYXQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbURheVBlcmlvZCcsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbU51bWJlcmluZ1N5c3RlbSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tTnVtYmVyaW5nU3lzdGVtO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLW51bWJlcmluZy1zeXN0ZW0nKSBwdWJsaWMgc2V0IGN1c3RvbU51bWJlcmluZ1N5c3RlbSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21OdW1iZXJpbmdTeXN0ZW0nLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21EYXRlU3R5bGUoKTogRGF0ZVN0eWxlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmN1c3RvbURhdGVTdHlsZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2N1c3RvbS1kYXRlLXN0eWxlJykgcHVibGljIHNldCBjdXN0b21EYXRlU3R5bGUodmFsdWU6IERhdGVTdHlsZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY3VzdG9tRGF0ZVN0eWxlJywgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VzdG9tVGltZVN0eWxlKCk6IFRpbWVTdHlsZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jdXN0b21UaW1lU3R5bGU7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdjdXN0b20tdGltZS1zdHlsZScpIHB1YmxpYyBzZXQgY3VzdG9tVGltZVN0eWxlKHZhbHVlOiBUaW1lU3R5bGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2N1c3RvbVRpbWVTdHlsZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUhvdXJDeWNsZSgpOiBIb3VyQ3ljbGVGb3JtYXQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY3VzdG9tSG91ckN5Y2xlO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnY3VzdG9tLWhvdXItY3ljbGUnKSBwdWJsaWMgc2V0IGN1c3RvbUhvdXJDeWNsZSh2YWx1ZTogSG91ckN5Y2xlRm9ybWF0KSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjdXN0b21Ib3VyQ3ljbGUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHJlbmRlcmVyOiBSZW5kZXJlcjIsIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8VGFibGVDb2x1bW5EYXRlVGV4dD4pIHtcbiAgICAgICAgc3VwZXIocmVuZGVyZXIsIGVsZW1lbnRSZWYpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,7 +1,6 @@
1
1
  import { Directive, Input } from '@angular/core';
2
2
  import { tableColumnEnumTextTag } from '@ni/nimble-components/dist/esm/table-column/enum-text';
3
- import { toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';
4
- import { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';
3
+ import { NimbleTableColumnBaseDirective, mixinFractionalWidthColumnAPI, mixinGroupableColumnAPI } from '@ni/nimble-angular/table-column';
5
4
  import { MappingKeyType } from '@ni/nimble-components/dist/esm/table-column/enum-base/types';
6
5
  import * as i0 from "@angular/core";
7
6
  export { MappingKeyType };
@@ -9,7 +8,7 @@ export { tableColumnEnumTextTag };
9
8
  /**
10
9
  * Directive to provide Angular integration for the table column element for enum text.
11
10
  */
12
- export class NimbleTableColumnEnumTextDirective extends NimbleTableColumnBaseDirective {
11
+ export class NimbleTableColumnEnumTextDirective extends mixinFractionalWidthColumnAPI(mixinGroupableColumnAPI((NimbleTableColumnBaseDirective))) {
13
12
  constructor(renderer, elementRef) {
14
13
  super(renderer, elementRef);
15
14
  }
@@ -29,41 +28,9 @@ export class NimbleTableColumnEnumTextDirective extends NimbleTableColumnBaseDir
29
28
  set keyType(value) {
30
29
  this.renderer.setProperty(this.elementRef.nativeElement, 'keyType', value);
31
30
  }
32
- get fractionalWidth() {
33
- return this.elementRef.nativeElement.fractionalWidth;
34
- }
35
- // Renaming because property should have camel casing, but attribute should not
36
- // eslint-disable-next-line @angular-eslint/no-input-rename
37
- set fractionalWidth(value) {
38
- this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));
39
- }
40
- get minPixelWidth() {
41
- return this.elementRef.nativeElement.minPixelWidth;
42
- }
43
- // Renaming because property should have camel casing, but attribute should not
44
- // eslint-disable-next-line @angular-eslint/no-input-rename
45
- set minPixelWidth(value) {
46
- this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));
47
- }
48
- get groupIndex() {
49
- return this.elementRef.nativeElement.groupIndex;
50
- }
51
- // Renaming because property should have camel casing, but attribute should not
52
- // eslint-disable-next-line @angular-eslint/no-input-rename
53
- set groupIndex(value) {
54
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));
55
- }
56
- get groupingDisabled() {
57
- return this.elementRef.nativeElement.groupingDisabled;
58
- }
59
- // Renaming because property should have camel casing, but attribute should not
60
- // eslint-disable-next-line @angular-eslint/no-input-rename
61
- set groupingDisabled(value) {
62
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));
63
- }
64
31
  }
65
32
  NimbleTableColumnEnumTextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnEnumTextDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
66
- NimbleTableColumnEnumTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnEnumTextDirective, selector: "nimble-table-column-enum-text", inputs: { fieldName: ["field-name", "fieldName"], keyType: ["key-type", "keyType"], fractionalWidth: ["fractional-width", "fractionalWidth"], minPixelWidth: ["min-pixel-width", "minPixelWidth"], groupIndex: ["group-index", "groupIndex"], groupingDisabled: ["grouping-disabled", "groupingDisabled"] }, usesInheritance: true, ngImport: i0 });
33
+ NimbleTableColumnEnumTextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnEnumTextDirective, selector: "nimble-table-column-enum-text", inputs: { fieldName: ["field-name", "fieldName"], keyType: ["key-type", "keyType"] }, usesInheritance: true, ngImport: i0 });
67
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnEnumTextDirective, decorators: [{
68
35
  type: Directive,
69
36
  args: [{
@@ -75,17 +42,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
75
42
  }], keyType: [{
76
43
  type: Input,
77
44
  args: ['key-type']
78
- }], fractionalWidth: [{
79
- type: Input,
80
- args: ['fractional-width']
81
- }], minPixelWidth: [{
82
- type: Input,
83
- args: ['min-pixel-width']
84
- }], groupIndex: [{
85
- type: Input,
86
- args: ['group-index']
87
- }], groupingDisabled: [{
88
- type: Input,
89
- args: ['grouping-disabled']
90
45
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1lbnVtLXRleHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uL2VudW0tdGV4dC9uaW1ibGUtdGFibGUtY29sdW1uLWVudW0tdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUE0QixzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3pILE9BQU8sRUFBbUQsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNySixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkRBQTZELENBQUM7O0FBRTdGLE9BQU8sRUFBRSxjQUFjLEVBQUUsQ0FBQztBQUUxQixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztBQUVsQzs7R0FFRztBQUlILE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSw4QkFBbUQ7SUE2RHZHLFlBQW1CLFFBQW1CLEVBQUUsVUFBMkM7UUFDL0UsS0FBSyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBOURELElBQVcsU0FBUztRQUNoQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFnQyxTQUFTLENBQUMsS0FBeUI7UUFDL0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztJQUNqRCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUE4QixPQUFPLENBQUMsS0FBcUI7UUFDdkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDekQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBc0MsZUFBZSxDQUFDLEtBQWdEO1FBQ2xHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVELElBQVcsYUFBYTtRQUNwQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQztJQUN2RCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFxQyxhQUFhLENBQUMsS0FBZ0Q7UUFDL0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsZUFBZSxFQUFFLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0csQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQztJQUNwRCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLDJEQUEyRDtJQUMzRCxJQUFpQyxVQUFVLENBQUMsS0FBZ0Q7UUFDeEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUcsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7SUFDMUQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBdUMsZ0JBQWdCLENBQUMsS0FBOEI7UUFDbEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMzRyxDQUFDOzsrSEEzRFEsa0NBQWtDO21IQUFsQyxrQ0FBa0M7MkZBQWxDLGtDQUFrQztrQkFIOUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsK0JBQStCO2lCQUM1Qzt5SEFRbUMsU0FBUztzQkFBeEMsS0FBSzt1QkFBQyxZQUFZO2dCQVVXLE9BQU87c0JBQXBDLEtBQUs7dUJBQUMsVUFBVTtnQkFVcUIsZUFBZTtzQkFBcEQsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBVVksYUFBYTtzQkFBakQsS0FBSzt1QkFBQyxpQkFBaUI7Z0JBVVMsVUFBVTtzQkFBMUMsS0FBSzt1QkFBQyxhQUFhO2dCQVVtQixnQkFBZ0I7c0JBQXRELEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIFRhYmxlQ29sdW1uRW51bVRleHQsIHRhYmxlQ29sdW1uRW51bVRleHRUYWcgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUtY29sdW1uL2VudW0tdGV4dCc7XG5pbXBvcnQgeyBCb29sZWFuVmFsdWVPckF0dHJpYnV0ZSwgTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSwgdG9Cb29sZWFuUHJvcGVydHksIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0BuaS9uaW1ibGUtYW5ndWxhci9pbnRlcm5hbC11dGlsaXRpZXMnO1xuaW1wb3J0IHsgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlIH0gZnJvbSAnQG5pL25pbWJsZS1hbmd1bGFyL3RhYmxlLWNvbHVtbic7XG5pbXBvcnQgeyBNYXBwaW5nS2V5VHlwZSB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS90YWJsZS1jb2x1bW4vZW51bS1iYXNlL3R5cGVzJztcblxuZXhwb3J0IHsgTWFwcGluZ0tleVR5cGUgfTtcbmV4cG9ydCB0eXBlIHsgVGFibGVDb2x1bW5FbnVtVGV4dCB9O1xuZXhwb3J0IHsgdGFibGVDb2x1bW5FbnVtVGV4dFRhZyB9O1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBwcm92aWRlIEFuZ3VsYXIgaW50ZWdyYXRpb24gZm9yIHRoZSB0YWJsZSBjb2x1bW4gZWxlbWVudCBmb3IgZW51bSB0ZXh0LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25pbWJsZS10YWJsZS1jb2x1bW4tZW51bS10ZXh0J1xufSlcbmV4cG9ydCBjbGFzcyBOaW1ibGVUYWJsZUNvbHVtbkVudW1UZXh0RGlyZWN0aXZlIGV4dGVuZHMgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlPFRhYmxlQ29sdW1uRW51bVRleHQ+IHtcbiAgICBwdWJsaWMgZ2V0IGZpZWxkTmFtZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZmllbGROYW1lO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnZmllbGQtbmFtZScpIHB1YmxpYyBzZXQgZmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2ZpZWxkTmFtZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGtleVR5cGUoKTogTWFwcGluZ0tleVR5cGUge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQua2V5VHlwZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2tleS10eXBlJykgcHVibGljIHNldCBrZXlUeXBlKHZhbHVlOiBNYXBwaW5nS2V5VHlwZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAna2V5VHlwZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZyYWN0aW9uYWxXaWR0aCgpOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZyYWN0aW9uYWxXaWR0aDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2ZyYWN0aW9uYWwtd2lkdGgnKSBwdWJsaWMgc2V0IGZyYWN0aW9uYWxXaWR0aCh2YWx1ZTogTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2ZyYWN0aW9uYWxXaWR0aCcsIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbWluUGl4ZWxXaWR0aCgpOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm1pblBpeGVsV2lkdGg7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdtaW4tcGl4ZWwtd2lkdGgnKSBwdWJsaWMgc2V0IG1pblBpeGVsV2lkdGgodmFsdWU6IE51bWJlclZhbHVlT3JBdHRyaWJ1dGUgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdtaW5QaXhlbFdpZHRoJywgdG9OdWxsYWJsZU51bWJlclByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBncm91cEluZGV4KCk6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ3JvdXBJbmRleDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2dyb3VwLWluZGV4JykgcHVibGljIHNldCBncm91cEluZGV4KHZhbHVlOiBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZ3JvdXBJbmRleCcsIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZ3JvdXBpbmdEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lmdyb3VwaW5nRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdncm91cGluZy1kaXNhYmxlZCcpIHB1YmxpYyBzZXQgZ3JvdXBpbmdEaXNhYmxlZCh2YWx1ZTogQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2dyb3VwaW5nRGlzYWJsZWQnLCB0b0Jvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihyZW5kZXJlcjogUmVuZGVyZXIyLCBlbGVtZW50UmVmOiBFbGVtZW50UmVmPFRhYmxlQ29sdW1uRW51bVRleHQ+KSB7XG4gICAgICAgIHN1cGVyKHJlbmRlcmVyLCBlbGVtZW50UmVmKTtcbiAgICB9XG59XG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1lbnVtLXRleHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uL2VudW0tdGV4dC9uaW1ibGUtdGFibGUtY29sdW1uLWVudW0tdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUE0QixzQkFBc0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3pILE9BQU8sRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pJLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2REFBNkQsQ0FBQzs7QUFFN0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxDQUFDO0FBRTFCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0FBRWxDOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLDZCQUE2QixDQUFDLHVCQUF1QixDQUFDLENBQUEsOEJBQW1ELENBQUEsQ0FBQyxDQUFDO0lBcUIvSixZQUFtQixRQUFtQixFQUFFLFVBQTJDO1FBQy9FLEtBQUssQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQXRCRCxJQUFXLFNBQVM7UUFDaEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7SUFDbkQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBZ0MsU0FBUyxDQUFDLEtBQXlCO1FBQy9ELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDakQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBOEIsT0FBTyxDQUFDLEtBQXFCO1FBQ3ZELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvRSxDQUFDOzsrSEFuQlEsa0NBQWtDO21IQUFsQyxrQ0FBa0M7MkZBQWxDLGtDQUFrQztrQkFIOUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsK0JBQStCO2lCQUM1Qzt5SEFRbUMsU0FBUztzQkFBeEMsS0FBSzt1QkFBQyxZQUFZO2dCQVVXLE9BQU87c0JBQXBDLEtBQUs7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBUYWJsZUNvbHVtbkVudW1UZXh0LCB0YWJsZUNvbHVtbkVudW1UZXh0VGFnIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9lbnVtLXRleHQnO1xuaW1wb3J0IHsgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlLCBtaXhpbkZyYWN0aW9uYWxXaWR0aENvbHVtbkFQSSwgbWl4aW5Hcm91cGFibGVDb2x1bW5BUEkgfSBmcm9tICdAbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uJztcbmltcG9ydCB7IE1hcHBpbmdLZXlUeXBlIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9lbnVtLWJhc2UvdHlwZXMnO1xuXG5leHBvcnQgeyBNYXBwaW5nS2V5VHlwZSB9O1xuZXhwb3J0IHR5cGUgeyBUYWJsZUNvbHVtbkVudW1UZXh0IH07XG5leHBvcnQgeyB0YWJsZUNvbHVtbkVudW1UZXh0VGFnIH07XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgQW5ndWxhciBpbnRlZ3JhdGlvbiBmb3IgdGhlIHRhYmxlIGNvbHVtbiBlbGVtZW50IGZvciBlbnVtIHRleHQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnbmltYmxlLXRhYmxlLWNvbHVtbi1lbnVtLXRleHQnXG59KVxuZXhwb3J0IGNsYXNzIE5pbWJsZVRhYmxlQ29sdW1uRW51bVRleHREaXJlY3RpdmUgZXh0ZW5kcyBtaXhpbkZyYWN0aW9uYWxXaWR0aENvbHVtbkFQSShtaXhpbkdyb3VwYWJsZUNvbHVtbkFQSShOaW1ibGVUYWJsZUNvbHVtbkJhc2VEaXJlY3RpdmU8VGFibGVDb2x1bW5FbnVtVGV4dD4pKSB7XG4gICAgcHVibGljIGdldCBmaWVsZE5hbWUoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZpZWxkTmFtZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2ZpZWxkLW5hbWUnKSBwdWJsaWMgc2V0IGZpZWxkTmFtZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdmaWVsZE5hbWUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBrZXlUeXBlKCk6IE1hcHBpbmdLZXlUeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmtleVR5cGU7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdrZXktdHlwZScpIHB1YmxpYyBzZXQga2V5VHlwZSh2YWx1ZTogTWFwcGluZ0tleVR5cGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2tleVR5cGUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHJlbmRlcmVyOiBSZW5kZXJlcjIsIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8VGFibGVDb2x1bW5FbnVtVGV4dD4pIHtcbiAgICAgICAgc3VwZXIocmVuZGVyZXIsIGVsZW1lbnRSZWYpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,13 +1,12 @@
1
1
  import { Directive, Input } from '@angular/core';
2
2
  import { tableColumnIconTag } from '@ni/nimble-components/dist/esm/table-column/icon';
3
- import { toBooleanProperty, toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';
4
- import { NimbleTableColumnBaseDirective } from '@ni/nimble-angular/table-column';
3
+ import { NimbleTableColumnBaseDirective, mixinFractionalWidthColumnAPI, mixinGroupableColumnAPI } from '@ni/nimble-angular/table-column';
5
4
  import * as i0 from "@angular/core";
6
5
  export { tableColumnIconTag };
7
6
  /**
8
7
  * Directive to provide Angular integration for the table column element for icons/spinners.
9
8
  */
10
- export class NimbleTableColumnIconDirective extends NimbleTableColumnBaseDirective {
9
+ export class NimbleTableColumnIconDirective extends mixinFractionalWidthColumnAPI(mixinGroupableColumnAPI((NimbleTableColumnBaseDirective))) {
11
10
  constructor(renderer, elementRef) {
12
11
  super(renderer, elementRef);
13
12
  }
@@ -27,41 +26,9 @@ export class NimbleTableColumnIconDirective extends NimbleTableColumnBaseDirecti
27
26
  set keyType(value) {
28
27
  this.renderer.setProperty(this.elementRef.nativeElement, 'keyType', value);
29
28
  }
30
- get fractionalWidth() {
31
- return this.elementRef.nativeElement.fractionalWidth;
32
- }
33
- // Renaming because property should have camel casing, but attribute should not
34
- // eslint-disable-next-line @angular-eslint/no-input-rename
35
- set fractionalWidth(value) {
36
- this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));
37
- }
38
- get minPixelWidth() {
39
- return this.elementRef.nativeElement.minPixelWidth;
40
- }
41
- // Renaming because property should have camel casing, but attribute should not
42
- // eslint-disable-next-line @angular-eslint/no-input-rename
43
- set minPixelWidth(value) {
44
- this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));
45
- }
46
- get groupIndex() {
47
- return this.elementRef.nativeElement.groupIndex;
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 groupIndex(value) {
52
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupIndex', toNullableNumberProperty(value));
53
- }
54
- get groupingDisabled() {
55
- return this.elementRef.nativeElement.groupingDisabled;
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 groupingDisabled(value) {
60
- this.renderer.setProperty(this.elementRef.nativeElement, 'groupingDisabled', toBooleanProperty(value));
61
- }
62
29
  }
63
30
  NimbleTableColumnIconDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnIconDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
64
- NimbleTableColumnIconDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnIconDirective, selector: "nimble-table-column-icon", inputs: { fieldName: ["field-name", "fieldName"], keyType: ["key-type", "keyType"], fractionalWidth: ["fractional-width", "fractionalWidth"], minPixelWidth: ["min-pixel-width", "minPixelWidth"], groupIndex: ["group-index", "groupIndex"], groupingDisabled: ["grouping-disabled", "groupingDisabled"] }, usesInheritance: true, ngImport: i0 });
31
+ NimbleTableColumnIconDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: NimbleTableColumnIconDirective, selector: "nimble-table-column-icon", inputs: { fieldName: ["field-name", "fieldName"], keyType: ["key-type", "keyType"] }, usesInheritance: true, ngImport: i0 });
65
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NimbleTableColumnIconDirective, decorators: [{
66
33
  type: Directive,
67
34
  args: [{
@@ -73,17 +40,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
73
40
  }], keyType: [{
74
41
  type: Input,
75
42
  args: ['key-type']
76
- }], fractionalWidth: [{
77
- type: Input,
78
- args: ['fractional-width']
79
- }], minPixelWidth: [{
80
- type: Input,
81
- args: ['min-pixel-width']
82
- }], groupIndex: [{
83
- type: Input,
84
- args: ['group-index']
85
- }], groupingDisabled: [{
86
- type: Input,
87
- args: ['grouping-disabled']
88
43
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1pY29uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pL25pbWJsZS1hbmd1bGFyL3RhYmxlLWNvbHVtbi9pY29uL25pbWJsZS10YWJsZS1jb2x1bW4taWNvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUF3QixrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVHLE9BQU8sRUFBbUQsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNySixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFJakYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLENBQUM7QUFFOUI7O0dBRUc7QUFJSCxNQUFNLE9BQU8sOEJBQStCLFNBQVEsOEJBQStDO0lBNkQvRixZQUFtQixRQUFtQixFQUFFLFVBQXVDO1FBQzNFLEtBQUssQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQTlERCxJQUFXLFNBQVM7UUFDaEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7SUFDbkQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBZ0MsU0FBUyxDQUFDLEtBQXlCO1FBQy9ELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDakQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBOEIsT0FBTyxDQUFDLEtBQXFCO1FBQ3ZELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDO0lBQ3pELENBQUM7SUFFRCwrRUFBK0U7SUFDL0UsMkRBQTJEO0lBQzNELElBQXNDLGVBQWUsQ0FBQyxLQUFnRDtRQUNsRyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pILENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDcEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUM7SUFDdkQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBcUMsYUFBYSxDQUFDLEtBQWdEO1FBQy9GLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7SUFDcEQsQ0FBQztJQUVELCtFQUErRTtJQUMvRSwyREFBMkQ7SUFDM0QsSUFBaUMsVUFBVSxDQUFDLEtBQWdEO1FBQ3hGLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVHLENBQUM7SUFFRCxJQUFXLGdCQUFnQjtRQUN2QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDO0lBQzFELENBQUM7SUFFRCwrRUFBK0U7SUFDL0UsMkRBQTJEO0lBQzNELElBQXVDLGdCQUFnQixDQUFDLEtBQThCO1FBQ2xGLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGtCQUFrQixFQUFFLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDM0csQ0FBQzs7MkhBM0RRLDhCQUE4QjsrR0FBOUIsOEJBQThCOzJGQUE5Qiw4QkFBOEI7a0JBSDFDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBCQUEwQjtpQkFDdkM7eUhBUW1DLFNBQVM7c0JBQXhDLEtBQUs7dUJBQUMsWUFBWTtnQkFVVyxPQUFPO3NCQUFwQyxLQUFLO3VCQUFDLFVBQVU7Z0JBVXFCLGVBQWU7c0JBQXBELEtBQUs7dUJBQUMsa0JBQWtCO2dCQVVZLGFBQWE7c0JBQWpELEtBQUs7dUJBQUMsaUJBQWlCO2dCQVVTLFVBQVU7c0JBQTFDLEtBQUs7dUJBQUMsYUFBYTtnQkFVbUIsZ0JBQWdCO3NCQUF0RCxLQUFLO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHlwZSBUYWJsZUNvbHVtbkljb24sIHRhYmxlQ29sdW1uSWNvblRhZyB9IGZyb20gJ0BuaS9uaW1ibGUtY29tcG9uZW50cy9kaXN0L2VzbS90YWJsZS1jb2x1bW4vaWNvbic7XG5pbXBvcnQgeyBCb29sZWFuVmFsdWVPckF0dHJpYnV0ZSwgTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSwgdG9Cb29sZWFuUHJvcGVydHksIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0BuaS9uaW1ibGUtYW5ndWxhci9pbnRlcm5hbC11dGlsaXRpZXMnO1xuaW1wb3J0IHsgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlIH0gZnJvbSAnQG5pL25pbWJsZS1hbmd1bGFyL3RhYmxlLWNvbHVtbic7XG5pbXBvcnQgdHlwZSB7IE1hcHBpbmdLZXlUeXBlIH0gZnJvbSAnQG5pL25pbWJsZS1jb21wb25lbnRzL2Rpc3QvZXNtL3RhYmxlLWNvbHVtbi9lbnVtLWJhc2UvdHlwZXMnO1xuXG5leHBvcnQgdHlwZSB7IFRhYmxlQ29sdW1uSWNvbiB9O1xuZXhwb3J0IHsgdGFibGVDb2x1bW5JY29uVGFnIH07XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgQW5ndWxhciBpbnRlZ3JhdGlvbiBmb3IgdGhlIHRhYmxlIGNvbHVtbiBlbGVtZW50IGZvciBpY29ucy9zcGlubmVycy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICduaW1ibGUtdGFibGUtY29sdW1uLWljb24nXG59KVxuZXhwb3J0IGNsYXNzIE5pbWJsZVRhYmxlQ29sdW1uSWNvbkRpcmVjdGl2ZSBleHRlbmRzIE5pbWJsZVRhYmxlQ29sdW1uQmFzZURpcmVjdGl2ZTxUYWJsZUNvbHVtbkljb24+IHtcbiAgICBwdWJsaWMgZ2V0IGZpZWxkTmFtZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZmllbGROYW1lO1xuICAgIH1cblxuICAgIC8vIFJlbmFtaW5nIGJlY2F1c2UgcHJvcGVydHkgc2hvdWxkIGhhdmUgY2FtZWwgY2FzaW5nLCBidXQgYXR0cmlidXRlIHNob3VsZCBub3RcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICAgIEBJbnB1dCgnZmllbGQtbmFtZScpIHB1YmxpYyBzZXQgZmllbGROYW1lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2ZpZWxkTmFtZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGtleVR5cGUoKTogTWFwcGluZ0tleVR5cGUge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQua2V5VHlwZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2tleS10eXBlJykgcHVibGljIHNldCBrZXlUeXBlKHZhbHVlOiBNYXBwaW5nS2V5VHlwZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAna2V5VHlwZScsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZyYWN0aW9uYWxXaWR0aCgpOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZyYWN0aW9uYWxXaWR0aDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2ZyYWN0aW9uYWwtd2lkdGgnKSBwdWJsaWMgc2V0IGZyYWN0aW9uYWxXaWR0aCh2YWx1ZTogTnVtYmVyVmFsdWVPckF0dHJpYnV0ZSB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2ZyYWN0aW9uYWxXaWR0aCcsIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbWluUGl4ZWxXaWR0aCgpOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm1pblBpeGVsV2lkdGg7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdtaW4tcGl4ZWwtd2lkdGgnKSBwdWJsaWMgc2V0IG1pblBpeGVsV2lkdGgodmFsdWU6IE51bWJlclZhbHVlT3JBdHRyaWJ1dGUgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdtaW5QaXhlbFdpZHRoJywgdG9OdWxsYWJsZU51bWJlclByb3BlcnR5KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBncm91cEluZGV4KCk6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ3JvdXBJbmRleDtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2dyb3VwLWluZGV4JykgcHVibGljIHNldCBncm91cEluZGV4KHZhbHVlOiBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZ3JvdXBJbmRleCcsIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZ3JvdXBpbmdEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lmdyb3VwaW5nRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdncm91cGluZy1kaXNhYmxlZCcpIHB1YmxpYyBzZXQgZ3JvdXBpbmdEaXNhYmxlZCh2YWx1ZTogQm9vbGVhblZhbHVlT3JBdHRyaWJ1dGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2dyb3VwaW5nRGlzYWJsZWQnLCB0b0Jvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihyZW5kZXJlcjogUmVuZGVyZXIyLCBlbGVtZW50UmVmOiBFbGVtZW50UmVmPFRhYmxlQ29sdW1uSWNvbj4pIHtcbiAgICAgICAgc3VwZXIocmVuZGVyZXIsIGVsZW1lbnRSZWYpO1xuICAgIH1cbn1cbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmltYmxlLXRhYmxlLWNvbHVtbi1pY29uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pL25pbWJsZS1hbmd1bGFyL3RhYmxlLWNvbHVtbi9pY29uL25pbWJsZS10YWJsZS1jb2x1bW4taWNvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUF3QixrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVHLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQUl6SSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztBQUU5Qjs7R0FFRztBQUlILE1BQU0sT0FBTyw4QkFBK0IsU0FBUSw2QkFBNkIsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBLDhCQUErQyxDQUFBLENBQUMsQ0FBQztJQXFCdkosWUFBbUIsUUFBbUIsRUFBRSxVQUF1QztRQUMzRSxLQUFLLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUF0QkQsSUFBVyxTQUFTO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO0lBQ25ELENBQUM7SUFFRCwrRUFBK0U7SUFDL0UsMkRBQTJEO0lBQzNELElBQWdDLFNBQVMsQ0FBQyxLQUF5QjtRQUMvRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVELElBQVcsT0FBTztRQUNkLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQ2pELENBQUM7SUFFRCwrRUFBK0U7SUFDL0UsMkRBQTJEO0lBQzNELElBQThCLE9BQU8sQ0FBQyxLQUFxQjtRQUN2RCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0UsQ0FBQzs7MkhBbkJRLDhCQUE4QjsrR0FBOUIsOEJBQThCOzJGQUE5Qiw4QkFBOEI7a0JBSDFDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBCQUEwQjtpQkFDdkM7eUhBUW1DLFNBQVM7c0JBQXhDLEtBQUs7dUJBQUMsWUFBWTtnQkFVVyxPQUFPO3NCQUFwQyxLQUFLO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR5cGUgVGFibGVDb2x1bW5JY29uLCB0YWJsZUNvbHVtbkljb25UYWcgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUtY29sdW1uL2ljb24nO1xuaW1wb3J0IHsgTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlLCBtaXhpbkZyYWN0aW9uYWxXaWR0aENvbHVtbkFQSSwgbWl4aW5Hcm91cGFibGVDb2x1bW5BUEkgfSBmcm9tICdAbmkvbmltYmxlLWFuZ3VsYXIvdGFibGUtY29sdW1uJztcbmltcG9ydCB0eXBlIHsgTWFwcGluZ0tleVR5cGUgfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUtY29sdW1uL2VudW0tYmFzZS90eXBlcyc7XG5cbmV4cG9ydCB0eXBlIHsgVGFibGVDb2x1bW5JY29uIH07XG5leHBvcnQgeyB0YWJsZUNvbHVtbkljb25UYWcgfTtcblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gcHJvdmlkZSBBbmd1bGFyIGludGVncmF0aW9uIGZvciB0aGUgdGFibGUgY29sdW1uIGVsZW1lbnQgZm9yIGljb25zL3NwaW5uZXJzLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25pbWJsZS10YWJsZS1jb2x1bW4taWNvbidcbn0pXG5leHBvcnQgY2xhc3MgTmltYmxlVGFibGVDb2x1bW5JY29uRGlyZWN0aXZlIGV4dGVuZHMgbWl4aW5GcmFjdGlvbmFsV2lkdGhDb2x1bW5BUEkobWl4aW5Hcm91cGFibGVDb2x1bW5BUEkoTmltYmxlVGFibGVDb2x1bW5CYXNlRGlyZWN0aXZlPFRhYmxlQ29sdW1uSWNvbj4pKSB7XG4gICAgcHVibGljIGdldCBmaWVsZE5hbWUoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZpZWxkTmFtZTtcbiAgICB9XG5cbiAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgICBASW5wdXQoJ2ZpZWxkLW5hbWUnKSBwdWJsaWMgc2V0IGZpZWxkTmFtZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdmaWVsZE5hbWUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBrZXlUeXBlKCk6IE1hcHBpbmdLZXlUeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmtleVR5cGU7XG4gICAgfVxuXG4gICAgLy8gUmVuYW1pbmcgYmVjYXVzZSBwcm9wZXJ0eSBzaG91bGQgaGF2ZSBjYW1lbCBjYXNpbmcsIGJ1dCBhdHRyaWJ1dGUgc2hvdWxkIG5vdFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCdrZXktdHlwZScpIHB1YmxpYyBzZXQga2V5VHlwZSh2YWx1ZTogTWFwcGluZ0tleVR5cGUpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2tleVR5cGUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHJlbmRlcmVyOiBSZW5kZXJlcjIsIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8VGFibGVDb2x1bW5JY29uPikge1xuICAgICAgICBzdXBlcihyZW5kZXJlciwgZWxlbWVudFJlZik7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,42 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { toNullableNumberProperty } from '@ni/nimble-angular/internal-utilities';
3
+ import * as i0 from "@angular/core";
4
+ // As the returned class is internal to the function, we can't write a signature that uses is directly, so rely on inference
5
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type
6
+ export function mixinFractionalWidthColumnAPI(base) {
7
+ /**
8
+ * The Mixin that provides a concrete column directive with the API to support being resized
9
+ * proportionally within a Table.
10
+ */
11
+ class FractionalWidthColumnDirective extends base {
12
+ get fractionalWidth() {
13
+ return this.elementRef.nativeElement.fractionalWidth;
14
+ }
15
+ // Renaming because property should have camel casing, but attribute should not
16
+ // eslint-disable-next-line @angular-eslint/no-input-rename
17
+ set fractionalWidth(value) {
18
+ this.renderer.setProperty(this.elementRef.nativeElement, 'fractionalWidth', toNullableNumberProperty(value));
19
+ }
20
+ get minPixelWidth() {
21
+ return this.elementRef.nativeElement.minPixelWidth;
22
+ }
23
+ // Renaming because property should have camel casing, but attribute should not
24
+ // eslint-disable-next-line @angular-eslint/no-input-rename
25
+ set minPixelWidth(value) {
26
+ this.renderer.setProperty(this.elementRef.nativeElement, 'minPixelWidth', toNullableNumberProperty(value));
27
+ }
28
+ }
29
+ FractionalWidthColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FractionalWidthColumnDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
30
+ FractionalWidthColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: FractionalWidthColumnDirective, inputs: { fractionalWidth: ["fractional-width", "fractionalWidth"], minPixelWidth: ["min-pixel-width", "minPixelWidth"] }, usesInheritance: true, ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FractionalWidthColumnDirective, decorators: [{
32
+ type: Directive
33
+ }], propDecorators: { fractionalWidth: [{
34
+ type: Input,
35
+ args: ['fractional-width']
36
+ }], minPixelWidth: [{
37
+ type: Input,
38
+ args: ['min-pixel-width']
39
+ }] } });
40
+ return FractionalWidthColumnDirective;
41
+ }
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhY3Rpb25hbC13aWR0aC1jb2x1bW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaS9uaW1ibGUtYW5ndWxhci90YWJsZS1jb2x1bW4vbWl4aW5zL2ZyYWN0aW9uYWwtd2lkdGgtY29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBMEIsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFZekcsNEhBQTRIO0FBQzVILCtIQUErSDtBQUMvSCxNQUFNLFVBQVUsNkJBQTZCLENBQWlGLElBQVc7SUFDckk7OztPQUdHO0lBQ0gsTUFDZSw4QkFBK0IsU0FBUSxJQUFJO1FBQ3RELElBQVcsZUFBZTtZQUN0QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQztRQUN6RCxDQUFDO1FBRUQsK0VBQStFO1FBQy9FLDJEQUEyRDtRQUMzRCxJQUFzQyxlQUFlLENBQUMsS0FBZ0Q7WUFDbEcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqSCxDQUFDO1FBRUQsSUFBVyxhQUFhO1lBQ3BCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDO1FBQ3ZELENBQUM7UUFFRCwrRUFBK0U7UUFDL0UsMkRBQTJEO1FBQzNELElBQXFDLGFBQWEsQ0FBQyxLQUFnRDtZQUMvRixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUUsd0JBQXdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMvRyxDQUFDOzsrSEFuQlUsOEJBQThCO21IQUE5Qiw4QkFBOEI7K0ZBQTlCLDhCQUE4QjtzQkFENUMsU0FBUztrQ0FRZ0MsZUFBZTswQkFBcEQsS0FBSzsyQkFBQyxrQkFBa0I7b0JBVVksYUFBYTswQkFBakQsS0FBSzsyQkFBQyxpQkFBaUI7O0lBSTVCLE9BQU8sOEJBQThCLENBQUM7Q0FDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlLCB0b051bGxhYmxlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAbmkvbmltYmxlLWFuZ3VsYXIvaW50ZXJuYWwtdXRpbGl0aWVzJztcbmltcG9ydCB0eXBlIHsgVGFibGVDb2x1bW4gfSBmcm9tICdAbmkvbmltYmxlLWNvbXBvbmVudHMvZGlzdC9lc20vdGFibGUtY29sdW1uL2Jhc2UnO1xuaW1wb3J0IHR5cGUgeyBOaW1ibGVUYWJsZUNvbHVtbkJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9uaW1ibGUtdGFibGUtY29sdW1uLWJhc2UuZGlyZWN0aXZlJztcblxudHlwZSBGcmFjdGlvbmFsV2lkdGhDb2x1bW4gPSBUYWJsZUNvbHVtbiAmIHtcbiAgICBmcmFjdGlvbmFsV2lkdGg/OiBudW1iZXIgfCBudWxsLFxuICAgIG1pblBpeGVsV2lkdGg/OiBudW1iZXIgfCBudWxsXG59O1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxudHlwZSBGcmFjdGlvbmFsV2lkdGhDb2x1bW5EaXJlY3RpdmVDb25zdHJ1Y3RvcjxUIGV4dGVuZHMgRnJhY3Rpb25hbFdpZHRoQ29sdW1uPiA9IGFic3RyYWN0IG5ldyAoLi4uYXJnczogYW55W10pID0+IE5pbWJsZVRhYmxlQ29sdW1uQmFzZURpcmVjdGl2ZTxUPjtcblxuLy8gQXMgdGhlIHJldHVybmVkIGNsYXNzIGlzIGludGVybmFsIHRvIHRoZSBmdW5jdGlvbiwgd2UgY2FuJ3Qgd3JpdGUgYSBzaWduYXR1cmUgdGhhdCB1c2VzIGlzIGRpcmVjdGx5LCBzbyByZWx5IG9uIGluZmVyZW5jZVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1tb2R1bGUtYm91bmRhcnktdHlwZXMsIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1mdW5jdGlvbi1yZXR1cm4tdHlwZVxuZXhwb3J0IGZ1bmN0aW9uIG1peGluRnJhY3Rpb25hbFdpZHRoQ29sdW1uQVBJPFRCYXNlIGV4dGVuZHMgRnJhY3Rpb25hbFdpZHRoQ29sdW1uRGlyZWN0aXZlQ29uc3RydWN0b3I8RnJhY3Rpb25hbFdpZHRoQ29sdW1uPj4oYmFzZTogVEJhc2UpIHtcbiAgICAvKipcbiAgICAgKiBUaGUgTWl4aW4gdGhhdCBwcm92aWRlcyBhIGNvbmNyZXRlIGNvbHVtbiBkaXJlY3RpdmUgd2l0aCB0aGUgQVBJIHRvIHN1cHBvcnQgYmVpbmcgcmVzaXplZFxuICAgICAqIHByb3BvcnRpb25hbGx5IHdpdGhpbiBhIFRhYmxlLlxuICAgICAqL1xuICAgIEBEaXJlY3RpdmUoKVxuICAgIGFic3RyYWN0IGNsYXNzIEZyYWN0aW9uYWxXaWR0aENvbHVtbkRpcmVjdGl2ZSBleHRlbmRzIGJhc2Uge1xuICAgICAgICBwdWJsaWMgZ2V0IGZyYWN0aW9uYWxXaWR0aCgpOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mcmFjdGlvbmFsV2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgICAgIEBJbnB1dCgnZnJhY3Rpb25hbC13aWR0aCcpIHB1YmxpYyBzZXQgZnJhY3Rpb25hbFdpZHRoKHZhbHVlOiBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2ZyYWN0aW9uYWxXaWR0aCcsIHRvTnVsbGFibGVOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcHVibGljIGdldCBtaW5QaXhlbFdpZHRoKCk6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm1pblBpeGVsV2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZW5hbWluZyBiZWNhdXNlIHByb3BlcnR5IHNob3VsZCBoYXZlIGNhbWVsIGNhc2luZywgYnV0IGF0dHJpYnV0ZSBzaG91bGQgbm90XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgICAgIEBJbnB1dCgnbWluLXBpeGVsLXdpZHRoJykgcHVibGljIHNldCBtaW5QaXhlbFdpZHRoKHZhbHVlOiBOdW1iZXJWYWx1ZU9yQXR0cmlidXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ21pblBpeGVsV2lkdGgnLCB0b051bGxhYmxlTnVtYmVyUHJvcGVydHkodmFsdWUpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gRnJhY3Rpb25hbFdpZHRoQ29sdW1uRGlyZWN0aXZlO1xufSJdfQ==