@softpak/components 0.0.0-beta.12 → 0.0.0-beta.120

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 (86) hide show
  1. package/esm2022/spx-alert/spx-alert.component.mjs +5 -2
  2. package/esm2022/spx-change-details/public-api.mjs +2 -0
  3. package/esm2022/spx-change-details/softpak-components-spx-change-details.mjs +5 -0
  4. package/esm2022/spx-change-details/spx-change-details-value.interface.mjs +2 -0
  5. package/esm2022/spx-change-details/spx-change-details.component.mjs +118 -0
  6. package/esm2022/spx-channel-selection/src/spx-channel-selection.component.mjs +6 -5
  7. package/esm2022/spx-channel-selection/src/spx-company-selection.component.mjs +6 -5
  8. package/esm2022/spx-check-digit/spx-check-digit.component.mjs +6 -4
  9. package/esm2022/spx-form-section/spx-form-section.component.mjs +7 -7
  10. package/esm2022/spx-form-view/public-api.mjs +4 -0
  11. package/esm2022/spx-form-view/softpak-components-spx-form-view.mjs +5 -0
  12. package/esm2022/spx-form-view/spx-form-field.interface.mjs +2 -0
  13. package/esm2022/spx-form-view/spx-form-section.interface.mjs +2 -0
  14. package/esm2022/spx-form-view/spx-form-view.component.mjs +163 -0
  15. package/esm2022/spx-inputs/public-api.mjs +2 -1
  16. package/esm2022/spx-inputs/spx-dropdown.component.mjs +94 -0
  17. package/esm2022/spx-inputs/spx-input-box.component.mjs +74 -50
  18. package/esm2022/spx-inputs/spx-input-date.component.mjs +1 -1
  19. package/esm2022/spx-inputs/spx-input-radio.component.mjs +70 -27
  20. package/esm2022/spx-inputs/spx-input-text.component.mjs +20 -31
  21. package/esm2022/spx-inputs/spx-input-type.enum.mjs +14 -0
  22. package/esm2022/spx-inputs/spx-input.component.mjs +43 -16
  23. package/esm2022/spx-navigation/spx-home-tile.component.mjs +29 -10
  24. package/esm2022/spx-navigation/spx-navigation-item.interface.mjs +1 -1
  25. package/esm2022/spx-navigation/spx-navigation.component.mjs +11 -5
  26. package/esm2022/spx-number-check/public-api.mjs +2 -0
  27. package/esm2022/spx-number-check/softpak-components-spx-number-check.mjs +5 -0
  28. package/esm2022/spx-number-check/spx-number-check.component.mjs +262 -0
  29. package/esm2022/spx-spinner/spx-spinner.component.mjs +5 -5
  30. package/esm2022/spx-suggestion/spx-suggestion.component.mjs +27 -16
  31. package/esm2022/spx-toaster/src/spx-toaster.component.mjs +3 -3
  32. package/esm2022/spx-update/src/spx-update-info.component.mjs +1 -1
  33. package/fesm2022/softpak-components-spx-alert.mjs +4 -1
  34. package/fesm2022/softpak-components-spx-alert.mjs.map +1 -1
  35. package/fesm2022/softpak-components-spx-change-details.mjs +125 -0
  36. package/fesm2022/softpak-components-spx-change-details.mjs.map +1 -0
  37. package/fesm2022/softpak-components-spx-channel-selection.mjs +9 -7
  38. package/fesm2022/softpak-components-spx-channel-selection.mjs.map +1 -1
  39. package/fesm2022/softpak-components-spx-check-digit.mjs +5 -3
  40. package/fesm2022/softpak-components-spx-check-digit.mjs.map +1 -1
  41. package/fesm2022/softpak-components-spx-form-section.mjs +6 -6
  42. package/fesm2022/softpak-components-spx-form-section.mjs.map +1 -1
  43. package/fesm2022/softpak-components-spx-form-view.mjs +170 -0
  44. package/fesm2022/softpak-components-spx-form-view.mjs.map +1 -0
  45. package/fesm2022/softpak-components-spx-inputs.mjs +303 -119
  46. package/fesm2022/softpak-components-spx-inputs.mjs.map +1 -1
  47. package/fesm2022/softpak-components-spx-navigation.mjs +37 -12
  48. package/fesm2022/softpak-components-spx-navigation.mjs.map +1 -1
  49. package/fesm2022/softpak-components-spx-number-check.mjs +269 -0
  50. package/fesm2022/softpak-components-spx-number-check.mjs.map +1 -0
  51. package/fesm2022/softpak-components-spx-spinner.mjs +4 -4
  52. package/fesm2022/softpak-components-spx-spinner.mjs.map +1 -1
  53. package/fesm2022/softpak-components-spx-suggestion.mjs +26 -15
  54. package/fesm2022/softpak-components-spx-suggestion.mjs.map +1 -1
  55. package/fesm2022/softpak-components-spx-toaster.mjs +2 -2
  56. package/fesm2022/softpak-components-spx-toaster.mjs.map +1 -1
  57. package/fesm2022/softpak-components-spx-update.mjs +1 -1
  58. package/fesm2022/softpak-components-spx-update.mjs.map +1 -1
  59. package/package.json +37 -19
  60. package/spx-change-details/index.d.ts +5 -0
  61. package/spx-change-details/public-api.d.ts +1 -0
  62. package/spx-change-details/spx-change-details-value.interface.d.ts +7 -0
  63. package/spx-change-details/spx-change-details.component.d.ts +40 -0
  64. package/spx-channel-selection/src/spx-channel-selection.component.d.ts +2 -1
  65. package/spx-channel-selection/src/spx-company-selection.component.d.ts +2 -1
  66. package/spx-check-digit/spx-check-digit.component.d.ts +3 -0
  67. package/spx-form-view/index.d.ts +5 -0
  68. package/spx-form-view/public-api.d.ts +3 -0
  69. package/spx-form-view/spx-form-field.interface.d.ts +16 -0
  70. package/spx-form-view/spx-form-section.interface.d.ts +9 -0
  71. package/spx-form-view/spx-form-view.component.d.ts +27 -0
  72. package/spx-inputs/public-api.d.ts +1 -0
  73. package/spx-inputs/spx-dropdown.component.d.ts +18 -0
  74. package/spx-inputs/spx-input-box.component.d.ts +13 -8
  75. package/spx-inputs/spx-input-radio.component.d.ts +11 -5
  76. package/spx-inputs/spx-input-text.component.d.ts +2 -1
  77. package/spx-inputs/spx-input-type.enum.d.ts +12 -0
  78. package/spx-inputs/spx-input.component.d.ts +9 -4
  79. package/spx-navigation/spx-home-tile.component.d.ts +5 -1
  80. package/spx-navigation/spx-navigation-item.interface.d.ts +1 -0
  81. package/spx-navigation/spx-navigation.component.d.ts +4 -1
  82. package/spx-number-check/index.d.ts +5 -0
  83. package/spx-number-check/public-api.d.ts +1 -0
  84. package/spx-number-check/spx-number-check.component.d.ts +48 -0
  85. package/spx-suggestion/spx-suggestion.component.d.ts +3 -1
  86. package/tailwind.css +1 -1
@@ -1,54 +1,97 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { NgFor } from '@angular/common';
3
3
  import { SpxSuggestionComponent } from '@softpak/components/spx-suggestion';
4
+ import { fromEvent } from 'rxjs';
4
5
  import * as i0 from "@angular/core";
5
6
  export class SpxInputRadioComponent {
6
7
  constructor() {
7
- this.spxFocused = true;
8
+ this.focusPosition = 0;
9
+ this.spxFocused = false;
10
+ this.spxShowLabel = true;
8
11
  this.spxReadonly = false;
9
12
  this.spxSuggestions = [];
10
13
  this.spxChange = new EventEmitter();
11
14
  this.spxFocus = new EventEmitter();
12
- this.spxWasInternalUpdate = false;
13
15
  }
14
- async spxSetFocus() {
15
- // this.elYear.focus();
16
+ spxFocusIn() {
17
+ console.log('spx-input-radio: focusIn');
18
+ this.listenToKeyUp();
19
+ this.focusPosition = 0;
16
20
  }
17
- handleSuggestionClick(value) {
18
- this.value = value;
19
- this.spxChange.emit(this.value);
21
+ spxFocusOut() {
22
+ console.log('spx-input-radio: focusOut');
23
+ this.subscriptionKeyUp?.unsubscribe();
24
+ }
25
+ ngOnChanges(changes) {
26
+ this.focusPosition = 0;
27
+ }
28
+ handleSuggestionClick(valuePair) {
29
+ this.select(valuePair);
30
+ }
31
+ select(valuePair) {
32
+ this.focusPosition = 0;
33
+ this.value = valuePair;
34
+ this.spxChange.emit(valuePair);
35
+ }
36
+ listenToKeyUp() {
37
+ console.log('listenToKeyUp');
38
+ this.subscriptionKeyUp = fromEvent(window, 'keyup').subscribe((event) => {
39
+ if (event.key === 'ArrowUp' && this.focusPosition > 0) {
40
+ this.focusPosition = this.focusPosition - 1;
41
+ event.preventDefault();
42
+ }
43
+ if (event.key === 'ArrowDown' && this.focusPosition < this.spxSuggestions.length - 1) {
44
+ this.focusPosition = this.focusPosition + 1;
45
+ event.preventDefault();
46
+ }
47
+ if (event.key === 'Enter' && this.spxSuggestions.length > 0) {
48
+ this.select(this.spxSuggestions.at(this.focusPosition));
49
+ event.preventDefault();
50
+ }
51
+ });
20
52
  }
21
53
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputRadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxInputRadioComponent, isStandalone: true, selector: "spx-input-radio", inputs: { spxName: "spxName", spxValidators: "spxValidators", spxFocused: "spxFocused", spxReadonly: "spxReadonly", spxSuggestions: "spxSuggestions", value: "value" }, outputs: { spxChange: "spxChange", spxFocus: "spxFocus" }, ngImport: i0, template: `<div class="spx-input-radio__suggestions">
23
- <spx-suggestion
24
- *ngFor="let valuePair of this.spxSuggestions"
25
- [spxDisabled]="this.spxReadonly"
26
- [spxSelected]="this.value?.value === this.valuePair?.value"
27
- (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
28
- {{this.valuePair?.description}}
29
- </spx-suggestion>
30
- </div>`, isInline: true, styles: [":host{display:block}.spx-input-radio__suggestions{display:grid;grid-gap:8px;grid-template-columns:repeat(2,1fr);margin-top:8px}.spx-input-radio--readonly{background-color:transparent;border:0;box-sizing:border-box;font-size:20px;font-weight:700;margin-right:10px;padding:0;width:100%}\n"], dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxSelected"] }] }); }
54
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxInputRadioComponent, isStandalone: true, selector: "spx-input-radio", inputs: { spxName: "spxName", spxValidators: "spxValidators", spxFocused: "spxFocused", spxShowLabel: "spxShowLabel", spxReadonly: "spxReadonly", spxSuggestions: "spxSuggestions", value: "value" }, outputs: { spxChange: "spxChange", spxFocus: "spxFocus" }, usesOnChanges: true, ngImport: i0, template: `<div class="grid grid-cols-2 gap-2"
55
+ [class.mt-3]="this.spxShowLabel">
56
+ <spx-suggestion
57
+ *ngFor="let valuePair of this.spxSuggestions; let i = index"
58
+ [spxDisabled]="this.spxReadonly"
59
+ [spxFocused]="this.spxFocused && i === this.focusPosition"
60
+ [spxSelected]="this.value?.value === this.valuePair?.value"
61
+ (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
62
+ {{this.valuePair?.description}}
63
+ </spx-suggestion>
64
+ </div>`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxFocused", "spxSelected"] }] }); }
31
65
  }
32
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputRadioComponent, decorators: [{
33
67
  type: Component,
34
- args: [{ selector: 'spx-input-radio', standalone: true, imports: [
68
+ args: [{
69
+ selector: 'spx-input-radio',
70
+ standalone: true,
71
+ imports: [
35
72
  NgFor,
36
73
  SpxSuggestionComponent,
37
- ], template: `<div class="spx-input-radio__suggestions">
38
- <spx-suggestion
39
- *ngFor="let valuePair of this.spxSuggestions"
40
- [spxDisabled]="this.spxReadonly"
41
- [spxSelected]="this.value?.value === this.valuePair?.value"
42
- (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
43
- {{this.valuePair?.description}}
44
- </spx-suggestion>
45
- </div>`, styles: [":host{display:block}.spx-input-radio__suggestions{display:grid;grid-gap:8px;grid-template-columns:repeat(2,1fr);margin-top:8px}.spx-input-radio--readonly{background-color:transparent;border:0;box-sizing:border-box;font-size:20px;font-weight:700;margin-right:10px;padding:0;width:100%}\n"] }]
74
+ ],
75
+ template: `<div class="grid grid-cols-2 gap-2"
76
+ [class.mt-3]="this.spxShowLabel">
77
+ <spx-suggestion
78
+ *ngFor="let valuePair of this.spxSuggestions; let i = index"
79
+ [spxDisabled]="this.spxReadonly"
80
+ [spxFocused]="this.spxFocused && i === this.focusPosition"
81
+ [spxSelected]="this.value?.value === this.valuePair?.value"
82
+ (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
83
+ {{this.valuePair?.description}}
84
+ </spx-suggestion>
85
+ </div>`,
86
+ }]
46
87
  }], propDecorators: { spxName: [{
47
88
  type: Input
48
89
  }], spxValidators: [{
49
90
  type: Input
50
91
  }], spxFocused: [{
51
92
  type: Input
93
+ }], spxShowLabel: [{
94
+ type: Input
52
95
  }], spxReadonly: [{
53
96
  type: Input
54
97
  }], spxSuggestions: [{
@@ -60,4 +103,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
60
103
  }], spxFocus: [{
61
104
  type: Output
62
105
  }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LXJhZGlvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC1yYWRpby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBMkM1RSxNQUFNLE9BQU8sc0JBQXNCO0lBekNuQztRQTZDVyxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLG1CQUFjLEdBQXdCLEVBQUUsQ0FBQztRQUV4QyxjQUFTLEdBQW9DLElBQUksWUFBWSxFQUFxQixDQUFDO1FBQ25GLGFBQVEsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNsRSx5QkFBb0IsR0FBRyxLQUFLLENBQUM7S0FTOUI7SUFSQyxLQUFLLENBQUMsV0FBVztRQUNmLHVCQUF1QjtJQUN6QixDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBd0I7UUFDNUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7OEdBbEJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDhTQWxDdkI7Ozs7Ozs7O09BUUwsd1dBWEgsS0FBSyxtSEFDTCxzQkFBc0I7OzJGQW9DYixzQkFBc0I7a0JBekNsQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUDt3QkFDUCxLQUFLO3dCQUNMLHNCQUFzQjtxQkFDdkIsWUFDUzs7Ozs7Ozs7T0FRTDs4QkE0QkksT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3B4U3VnZ2VzdGlvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LXN1Z2dlc3Rpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHgtaW5wdXQtcmFkaW8nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdGb3IsXG4gICAgU3B4U3VnZ2VzdGlvbkNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwic3B4LWlucHV0LXJhZGlvX19zdWdnZXN0aW9uc1wiPlxuICAgIDxzcHgtc3VnZ2VzdGlvblxuICAgICAgKm5nRm9yPVwibGV0IHZhbHVlUGFpciBvZiB0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgIFtzcHhEaXNhYmxlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTZWxlY3RlZF09XCJ0aGlzLnZhbHVlPy52YWx1ZSA9PT0gdGhpcy52YWx1ZVBhaXI/LnZhbHVlXCJcbiAgICAgIChjbGljayk9XCJ0aGlzLnNweFJlYWRvbmx5ID8gdW5kZWZpbmVkIDogdGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiPlxuICAgICAge3t0aGlzLnZhbHVlUGFpcj8uZGVzY3JpcHRpb259fVxuICAgIDwvc3B4LXN1Z2dlc3Rpb24+XG48L2Rpdj5gLFxuICBzdHlsZXM6IGBcbiAgOmhvc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNweC1pbnB1dC1yYWRpb19fc3VnZ2VzdGlvbnMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWdhcDogOHB4O1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG5cbi5zcHgtaW5wdXQtcmFkaW8tLXJlYWRvbmx5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dFJhZGlvQ29tcG9uZW50IHtcbiAgLy8gQEVsZW1lbnQoKSBlbCE6IEhUTUxFbGVtZW50O1xuICBASW5wdXQoKSBzcHhOYW1lPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhWYWxpZGF0b3JzITogYW55W107XG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhSZWFkb25seSA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGFueT5bXSA9IFtdO1xuICBASW5wdXQoKSB2YWx1ZT86IFNweFZhbHVlUGFpcjxhbnk+O1xuICBAT3V0cHV0KCkgc3B4Q2hhbmdlOiBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4oKTtcbiAgQE91dHB1dCgpIHNweEZvY3VzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIHNweFdhc0ludGVybmFsVXBkYXRlID0gZmFsc2U7XG4gIGFzeW5jIHNweFNldEZvY3VzKCkge1xuICAgIC8vIHRoaXMuZWxZZWFyLmZvY3VzKCk7XG4gIH1cblxuICBoYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWU6IFNweFZhbHVlUGFpcjxhbnk+KSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuc3B4Q2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cbn0iXX0=
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LXJhZGlvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC1yYWRpby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFdEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQXFCL0MsTUFBTSxPQUFPLHNCQUFzQjtJQW5CbkM7UUFvQlksa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFJbkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUF3QixFQUFFLENBQUM7UUFFeEMsY0FBUyxHQUFvQyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUNuRixhQUFRLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7S0E0Q25FO0lBMUNDLFVBQVU7UUFDUixPQUFPLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxTQUE0QjtRQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxNQUFNLENBQUMsU0FBa0Q7UUFDL0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVPLGFBQWE7UUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN0RSxJQUFLLEtBQXVCLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN6RSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO2dCQUM1QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsQ0FBQztZQUNELElBQUssS0FBdUIsQ0FBQyxHQUFHLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3hHLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7Z0JBQzVDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixDQUFDO1lBQ0QsSUFBSyxLQUF1QixDQUFDLEdBQUcsS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQy9FLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBRSxDQUFDLENBQUM7Z0JBQ3pELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXREVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixpV0FadkI7Ozs7Ozs7Ozs7V0FVRCw0REFiUCxLQUFLLG1IQUNMLHNCQUFzQjs7MkZBY2Isc0JBQXNCO2tCQW5CbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLEtBQUs7d0JBQ0wsc0JBQXNCO3FCQUN2QjtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7V0FVRDtpQkFDVjs4QkFJVSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcbmltcG9ydCB7IE5nRm9yIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNweFN1Z2dlc3Rpb25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1zdWdnZXN0aW9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1pbnB1dC1yYWRpbycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0ZvcixcbiAgICBTcHhTdWdnZXN0aW9uQ29tcG9uZW50LFxuICBdLFxuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJncmlkIGdyaWQtY29scy0yIGdhcC0yXCJcbiAgICBbY2xhc3MubXQtM109XCJ0aGlzLnNweFNob3dMYWJlbFwiPlxuICAgICAgPHNweC1zdWdnZXN0aW9uXG4gICAgICAgICpuZ0Zvcj1cImxldCB2YWx1ZVBhaXIgb2YgdGhpcy5zcHhTdWdnZXN0aW9uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgIFtzcHhEaXNhYmxlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkICYmIGkgPT09IHRoaXMuZm9jdXNQb3NpdGlvblwiXG4gICAgICAgIFtzcHhTZWxlY3RlZF09XCJ0aGlzLnZhbHVlPy52YWx1ZSA9PT0gdGhpcy52YWx1ZVBhaXI/LnZhbHVlXCJcbiAgICAgICAgKGNsaWNrKT1cInRoaXMuc3B4UmVhZG9ubHkgPyB1bmRlZmluZWQgOiB0aGlzLmhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZVBhaXIpXCI+XG4gICAgICAgIHt7dGhpcy52YWx1ZVBhaXI/LmRlc2NyaXB0aW9ufX1cbiAgICAgIDwvc3B4LXN1Z2dlc3Rpb24+XG4gICAgPC9kaXY+YCxcbn0pXG5leHBvcnQgY2xhc3MgU3B4SW5wdXRSYWRpb0NvbXBvbmVudCB7XG4gIHByb3RlY3RlZCBmb2N1c1Bvc2l0aW9uID0gMDtcbiAgLy8gQEVsZW1lbnQoKSBlbCE6IEhUTUxFbGVtZW50O1xuICBASW5wdXQoKSBzcHhOYW1lPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhWYWxpZGF0b3JzITogYW55W107XG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2hvd0xhYmVsID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4UmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U3VnZ2VzdGlvbnM6IFNweFZhbHVlUGFpcjxhbnk+W10gPSBbXTtcbiAgQElucHV0KCkgdmFsdWU/OiBTcHhWYWx1ZVBhaXI8YW55PjtcbiAgQE91dHB1dCgpIHNweENoYW5nZTogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+KCk7XG4gIEBPdXRwdXQoKSBzcHhGb2N1czogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbktleVVwPzogU3Vic2NyaXB0aW9uO1xuICBzcHhGb2N1c0luKCkge1xuICAgIGNvbnNvbGUubG9nKCdzcHgtaW5wdXQtcmFkaW86IGZvY3VzSW4nKTtcbiAgICB0aGlzLmxpc3RlblRvS2V5VXAoKTtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICB9XG5cbiAgc3B4Rm9jdXNPdXQoKSB7XG4gICAgY29uc29sZS5sb2coJ3NweC1pbnB1dC1yYWRpbzogZm9jdXNPdXQnKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbktleVVwPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IDA7XG4gIH1cblxuICBoYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8YW55Pikge1xuICAgIHRoaXMuc2VsZWN0KHZhbHVlUGFpcik7XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdCh2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPik6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IDA7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlUGFpcjtcbiAgICB0aGlzLnNweENoYW5nZS5lbWl0KHZhbHVlUGFpcik7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRvS2V5VXAoKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coJ2xpc3RlblRvS2V5VXAnKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbktleVVwID0gZnJvbUV2ZW50KHdpbmRvdywgJ2tleXVwJykuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdBcnJvd1VwJyAmJiB0aGlzLmZvY3VzUG9zaXRpb24gPiAwKSB7XG4gICAgICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IHRoaXMuZm9jdXNQb3NpdGlvbiAtIDE7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgICBpZiAoKGV2ZW50IGFzIEtleWJvYXJkRXZlbnQpLmtleSA9PT0gJ0Fycm93RG93bicgJiYgdGhpcy5mb2N1c1Bvc2l0aW9uIDwgdGhpcy5zcHhTdWdnZXN0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IHRoaXMuZm9jdXNQb3NpdGlvbiArIDE7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgICBpZiAoKGV2ZW50IGFzIEtleWJvYXJkRXZlbnQpLmtleSA9PT0gJ0VudGVyJyAmJiB0aGlzLnNweFN1Z2dlc3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5zZWxlY3QodGhpcy5zcHhTdWdnZXN0aW9ucy5hdCh0aGlzLmZvY3VzUG9zaXRpb24pISk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn0iXX0=
@@ -1,6 +1,7 @@
1
1
  import { NgFor, NgIf } from '@angular/common';
2
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
3
3
  import { SpxButtonComponent } from '@softpak/components/spx-button';
4
+ import { SpxDropdownComponent } from './spx-dropdown.component';
4
5
  import * as i0 from "@angular/core";
5
6
  export class SpxInputTextComponent {
6
7
  constructor() {
@@ -16,7 +17,7 @@ export class SpxInputTextComponent {
16
17
  this.spxWasInternalUpdate = false;
17
18
  }
18
19
  async spxSetFocus() {
19
- // this.elInput.focus();
20
+ this.inputRef?.nativeElement?.focus();
20
21
  }
21
22
  componentDidLoad() {
22
23
  if (this.spxAutofocus) {
@@ -48,8 +49,9 @@ export class SpxInputTextComponent {
48
49
  this.spxFocused = true;
49
50
  }
50
51
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
51
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxInputTextComponent, isStandalone: true, selector: "spx-input-text", inputs: { spxName: "spxName", spxAutofocus: "spxAutofocus", spxInputMode: "spxInputMode", spxPattern: "spxPattern", spxSuggestions: "spxSuggestions", spxReadonly: "spxReadonly", spxValidators: "spxValidators", spxCapitalize: "spxCapitalize", spxFocused: "spxFocused", spxType: "spxType", value: "value", spxWasInternalUpdate: "spxWasInternalUpdate" }, outputs: { spxBlurFromChild: "spxBlurFromChild", spxChange: "spxChange", spxFocus: "spxFocus" }, ngImport: i0, template: `<div class="relative text-black">
52
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxInputTextComponent, isStandalone: true, selector: "spx-input-text", inputs: { spxName: "spxName", spxAutofocus: "spxAutofocus", spxInputMode: "spxInputMode", spxPattern: "spxPattern", spxSuggestions: "spxSuggestions", spxReadonly: "spxReadonly", spxValidators: "spxValidators", spxCapitalize: "spxCapitalize", spxFocused: "spxFocused", spxType: "spxType", value: "value", spxWasInternalUpdate: "spxWasInternalUpdate" }, outputs: { spxBlurFromChild: "spxBlurFromChild", spxChange: "spxChange", spxFocus: "spxFocus" }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["input"], descendants: true, static: true }], ngImport: i0, template: `<div class="relative text-black">
52
53
  <input
54
+ #input
53
55
  class="font-bold text-lg w-full outline-none"
54
56
  [class.bg-white]="!this.spxReadonly"
55
57
  [class.bg-gray-300]="this.spxReadonly"
@@ -61,27 +63,18 @@ export class SpxInputTextComponent {
61
63
  [attr.pattern]="this.spxPattern ? this.spxPattern : undefined"
62
64
  [attr.name]="this.spxName"
63
65
  [attr.type]="this.spxType"
64
- [attr.value]="this.value?.description ? this.value?.description : this.value?.value"
66
+ [value]="this.value?.description ? this.value?.description : this.value?.value"
65
67
  (blur)="this.handleBlur()"
66
68
  (keyUp)="this.handleKeyUp()"
67
69
  (focus)="this.handleFocus()"
68
70
  (input)="this.handleDescriptionInput($event)"
69
71
  />
70
72
  <span *ngIf="this.value?.description && this.value?.value && this.value?.description?.valueOf() !== this.value?.value?.valueOf()">{{this.value?.value}}</span>
71
- <div
73
+ <spx-dropdown
72
74
  *ngIf="this.spxFocused && (this.spxType === 'overlay' || this.spxType === 'overlaynumber')"
73
- class="absolute bg-gray-100 left-0 right-0 z-20">
74
- <div
75
- *ngFor="let valuePair of this.spxSuggestions"
76
- class="text-black block w-full p-2 bg-white border border-gray-200 rounded-lg shadow hover:bg-gray-100 flex items-center"
77
- (click)="this.handleSuggestionClick($event)"
78
- [attr.tabindex]="0"
79
- >
80
- <div class="flex-1 p-1 font-bold text-lg">{{valuePair?.description}}</div>
81
- <spx-button spxType="button">Select</spx-button>
82
- </div>
83
- </div>
84
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }] }); }
75
+ [spxSuggestions]="this.spxSuggestions" (spxSelect)="this.handleSuggestionClick($event)">
76
+ </spx-dropdown>
77
+ </div>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SpxDropdownComponent, selector: "spx-dropdown", inputs: ["spxSuggestions"], outputs: ["spxSelect"] }] }); }
85
78
  }
86
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputTextComponent, decorators: [{
87
80
  type: Component,
@@ -92,9 +85,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
92
85
  NgIf,
93
86
  NgFor,
94
87
  SpxButtonComponent,
88
+ SpxDropdownComponent,
95
89
  ],
96
90
  template: `<div class="relative text-black">
97
91
  <input
92
+ #input
98
93
  class="font-bold text-lg w-full outline-none"
99
94
  [class.bg-white]="!this.spxReadonly"
100
95
  [class.bg-gray-300]="this.spxReadonly"
@@ -106,26 +101,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
106
101
  [attr.pattern]="this.spxPattern ? this.spxPattern : undefined"
107
102
  [attr.name]="this.spxName"
108
103
  [attr.type]="this.spxType"
109
- [attr.value]="this.value?.description ? this.value?.description : this.value?.value"
104
+ [value]="this.value?.description ? this.value?.description : this.value?.value"
110
105
  (blur)="this.handleBlur()"
111
106
  (keyUp)="this.handleKeyUp()"
112
107
  (focus)="this.handleFocus()"
113
108
  (input)="this.handleDescriptionInput($event)"
114
109
  />
115
110
  <span *ngIf="this.value?.description && this.value?.value && this.value?.description?.valueOf() !== this.value?.value?.valueOf()">{{this.value?.value}}</span>
116
- <div
111
+ <spx-dropdown
117
112
  *ngIf="this.spxFocused && (this.spxType === 'overlay' || this.spxType === 'overlaynumber')"
118
- class="absolute bg-gray-100 left-0 right-0 z-20">
119
- <div
120
- *ngFor="let valuePair of this.spxSuggestions"
121
- class="text-black block w-full p-2 bg-white border border-gray-200 rounded-lg shadow hover:bg-gray-100 flex items-center"
122
- (click)="this.handleSuggestionClick($event)"
123
- [attr.tabindex]="0"
124
- >
125
- <div class="flex-1 p-1 font-bold text-lg">{{valuePair?.description}}</div>
126
- <spx-button spxType="button">Select</spx-button>
127
- </div>
128
- </div>
113
+ [spxSuggestions]="this.spxSuggestions" (spxSelect)="this.handleSuggestionClick($event)">
114
+ </spx-dropdown>
129
115
  </div>`,
130
116
  }]
131
117
  }], propDecorators: { spxName: [{
@@ -158,5 +144,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
158
144
  type: Output
159
145
  }], spxWasInternalUpdate: [{
160
146
  type: Input
147
+ }], inputRef: [{
148
+ type: ViewChild,
149
+ args: ['input', { static: true }]
161
150
  }] } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LXRleHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1pbnB1dHMvc3B4LWlucHV0LXRleHQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUE2Q3BFLE1BQU0sT0FBTyxxQkFBcUI7SUEzQ2xDO1FBK0NXLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBR3JCLG1CQUFjLEdBQThDLEVBQUUsQ0FBQztRQUMvRCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUVwQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLFlBQU8sR0FBdUUsTUFBTSxDQUFDO1FBRXBGLHFCQUFnQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ2hFLGNBQVMsR0FBb0MsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFDbkYsYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3pELHlCQUFvQixHQUFHLEtBQUssQ0FBQztLQXlDdkM7SUF0Q0MsS0FBSyxDQUFDLFdBQVc7UUFDZix3QkFBd0I7SUFDMUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELHNCQUFzQixDQUFDLEtBQVU7UUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNYLFdBQVcsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSTtZQUNyRCxLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUk7U0FDaEQsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBVTtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUN6QixDQUFDOzhHQXpEVSxxQkFBcUI7a0dBQXJCLHFCQUFxQiwyZ0JBbkN0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BaUNMLDREQXJDSCxJQUFJLDZGQUNKLEtBQUssbUhBQ0wsa0JBQWtCOzsyRkFxQ1QscUJBQXFCO2tCQTNDakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLElBQUk7d0JBQ0osS0FBSzt3QkFDTCxrQkFBa0I7cUJBQ25CO29CQUNELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BaUNMO2lCQUNOOzhCQUlVLE9BQU87c0JBQWYsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNFLG9CQUFvQjtzQkFBNUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3B4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtYnV0dG9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWlucHV0LXRleHQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBOZ0ZvcixcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cInJlbGF0aXZlIHRleHQtYmxhY2tcIj5cbiAgPGlucHV0XG4gICAgY2xhc3M9XCJmb250LWJvbGQgdGV4dC1sZyB3LWZ1bGwgb3V0bGluZS1ub25lXCJcbiAgICBbY2xhc3MuYmctd2hpdGVdPVwiIXRoaXMuc3B4UmVhZG9ubHlcIlxuICAgIFtjbGFzcy5iZy1ncmF5LTMwMF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICBbY2xhc3MuY3Vyc29yLW5vdC1hbGxvd2VkXT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgIFtjbGFzcy51cHBlcmNhc2VdPVwidGhpcy5zcHhDYXBpdGFsaXplXCJcbiAgICBbYXR0ci5hdXRvZm9jdXNdPVwidGhpcy5zcHhBdXRvZm9jdXMgPyB0aGlzLnNweEF1dG9mb2N1cyA6IHVuZGVmaW5lZFwiXG4gICAgW2F0dHIuZGlzYWJsZWRdPVwidGhpcy5zcHhSZWFkb25seSA/IHRoaXMuc3B4UmVhZG9ubHkgOiB1bmRlZmluZWRcIlxuICAgIFthdHRyLmlucHV0TW9kZV09XCJ0aGlzLnNweElucHV0TW9kZSA/IHRoaXMuc3B4SW5wdXRNb2RlIDogdW5kZWZpbmVkXCJcbiAgICBbYXR0ci5wYXR0ZXJuXT1cInRoaXMuc3B4UGF0dGVybiA/IHRoaXMuc3B4UGF0dGVybiA6IHVuZGVmaW5lZFwiXG4gICAgW2F0dHIubmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgIFthdHRyLnR5cGVdPVwidGhpcy5zcHhUeXBlXCJcbiAgICBbYXR0ci52YWx1ZV09XCJ0aGlzLnZhbHVlPy5kZXNjcmlwdGlvbiA/IHRoaXMudmFsdWU/LmRlc2NyaXB0aW9uIDogdGhpcy52YWx1ZT8udmFsdWVcIlxuICAgIChibHVyKT1cInRoaXMuaGFuZGxlQmx1cigpXCJcbiAgICAoa2V5VXApPVwidGhpcy5oYW5kbGVLZXlVcCgpXCJcbiAgICAoZm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcbiAgICAoaW5wdXQpPVwidGhpcy5oYW5kbGVEZXNjcmlwdGlvbklucHV0KCRldmVudClcIlxuICAvPlxuICA8c3BhbiAqbmdJZj1cInRoaXMudmFsdWU/LmRlc2NyaXB0aW9uICYmIHRoaXMudmFsdWU/LnZhbHVlICYmIHRoaXMudmFsdWU/LmRlc2NyaXB0aW9uPy52YWx1ZU9mKCkgIT09IHRoaXMudmFsdWU/LnZhbHVlPy52YWx1ZU9mKClcIj57e3RoaXMudmFsdWU/LnZhbHVlfX08L3NwYW4+XG4gIDxkaXZcbiAgICAqbmdJZj1cInRoaXMuc3B4Rm9jdXNlZCAmJiAodGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheScgfHwgdGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheW51bWJlcicpXCJcbiAgICBjbGFzcz1cImFic29sdXRlIGJnLWdyYXktMTAwIGxlZnQtMCByaWdodC0wIHotMjBcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nRm9yPVwibGV0IHZhbHVlUGFpciBvZiB0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgICAgY2xhc3M9XCJ0ZXh0LWJsYWNrIGJsb2NrIHctZnVsbCBwLTIgYmctd2hpdGUgYm9yZGVyIGJvcmRlci1ncmF5LTIwMCByb3VuZGVkLWxnIHNoYWRvdyBob3ZlcjpiZy1ncmF5LTEwMCBmbGV4IGl0ZW1zLWNlbnRlclwiXG4gICAgICAgIChjbGljayk9XCJ0aGlzLmhhbmRsZVN1Z2dlc3Rpb25DbGljaygkZXZlbnQpXCJcbiAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiMFwiXG4gICAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xIHAtMSBmb250LWJvbGQgdGV4dC1sZ1wiPnt7dmFsdWVQYWlyPy5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICAgIDxzcHgtYnV0dG9uIHNweFR5cGU9XCJidXR0b25cIj5TZWxlY3Q8L3NweC1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5gLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dFRleHRDb21wb25lbnQge1xuICAvLyBwcml2YXRlIGVsSW5wdXQ/OiBIVE1MRWxlbWVudDtcbiAgLy8gQEVsZW1lbnQoKSBlbCE6IEhUTUxFbGVtZW50O1xuICBASW5wdXQoKSBzcHhOYW1lPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhBdXRvZm9jdXMgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4SW5wdXRNb2RlPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhQYXR0ZXJuPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGJvb2xlYW4gfCBudW1iZXIgfCBzdHJpbmc+W10gPSBbXTtcbiAgQElucHV0KCkgc3B4UmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4VmFsaWRhdG9ycz86IGFueVtdO1xuICBASW5wdXQoKSBzcHhDYXBpdGFsaXplID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhUeXBlOiAnYXV0b2NvbXBsZXRlJyB8ICdvdmVybGF5JyB8ICdvdmVybGF5bnVtYmVyJyB8ICd0ZXh0JyB8ICdwYXNzd29yZCcgPSAndGV4dCc7XG4gIEBJbnB1dCgpIHZhbHVlPzogU3B4VmFsdWVQYWlyPGFueT47XG4gIEBPdXRwdXQoKSBzcHhCbHVyRnJvbUNoaWxkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhDaGFuZ2U6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpO1xuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQElucHV0KCkgc3B4V2FzSW50ZXJuYWxVcGRhdGUgPSBmYWxzZTtcbiAgXG4gIFxuICBhc3luYyBzcHhTZXRGb2N1cygpIHtcbiAgICAvLyB0aGlzLmVsSW5wdXQuZm9jdXMoKTtcbiAgfVxuXG4gIGNvbXBvbmVudERpZExvYWQoKSB7XG4gICAgaWYgKHRoaXMuc3B4QXV0b2ZvY3VzKSB7XG4gICAgICB0aGlzLnNweEZvY3VzLmVtaXQoKTtcbiAgICAgIHRoaXMuc3B4U2V0Rm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVCbHVyKCkge1xuICAgIHRoaXMuc3B4Qmx1ckZyb21DaGlsZC5lbWl0KCk7XG4gIH1cblxuICBoYW5kbGVGb2N1cygpIHtcbiAgICB0aGlzLnNweEZvY3VzLmVtaXQoKTtcbiAgfVxuXG4gIGhhbmRsZURlc2NyaXB0aW9uSW5wdXQoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMudmFsdWUgPSB7XG4gICAgICBkZXNjcmlwdGlvbjogZXZlbnQudGFyZ2V0ID8gZXZlbnQudGFyZ2V0LnZhbHVlIDogbnVsbCxcbiAgICAgIHZhbHVlOiBldmVudC50YXJnZXQgPyBldmVudC50YXJnZXQudmFsdWUgOiBudWxsLFxuICAgIH07XG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZTogYW55KSB7XG4gICAgaWYgKCF0aGlzLnNweFJlYWRvbmx5KSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLnNweENoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgdGhpcy5zcHhGb2N1c2VkID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlS2V5VXAoKSB7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgfVxufVxuIl19
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LXRleHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1pbnB1dHMvc3B4LWlucHV0LXRleHQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBc0NoRSxNQUFNLE9BQU8scUJBQXFCO0lBcENsQztRQXdDVyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdyQixtQkFBYyxHQUE4QyxFQUFFLENBQUM7UUFDL0QsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixZQUFPLEdBQXVFLE1BQU0sQ0FBQztRQUVwRixxQkFBZ0IsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNoRSxjQUFTLEdBQW9DLElBQUksWUFBWSxFQUFxQixDQUFDO1FBQ25GLGFBQVEsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUN6RCx5QkFBb0IsR0FBRyxLQUFLLENBQUM7S0EwQ3ZDO0lBdENDLEtBQUssQ0FBQyxXQUFXO1FBQ2YsSUFBSSxDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELHNCQUFzQixDQUFDLEtBQVU7UUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNYLFdBQVcsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSTtZQUNyRCxLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUk7U0FDaEQsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBVTtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUN6QixDQUFDOzhHQTFEVSxxQkFBcUI7a0dBQXJCLHFCQUFxQiw0bkJBM0J0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXlCTCw0REE5QkgsSUFBSSw2RkFHSixvQkFBb0I7OzJGQTZCWCxxQkFBcUI7a0JBcENqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsSUFBSTt3QkFDSixLQUFLO3dCQUNMLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3FCQUNyQjtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0F5Qkw7aUJBQ047OEJBSVUsT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNJLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0Usb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNnQyxRQUFRO3NCQUE3QyxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0ZvciwgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3B4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtYnV0dG9uJztcbmltcG9ydCB7IFNweERyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtZHJvcGRvd24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWlucHV0LXRleHQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBOZ0ZvcixcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXG4gICAgU3B4RHJvcGRvd25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cInJlbGF0aXZlIHRleHQtYmxhY2tcIj5cbiAgPGlucHV0XG4gICAgI2lucHV0XG4gICAgY2xhc3M9XCJmb250LWJvbGQgdGV4dC1sZyB3LWZ1bGwgb3V0bGluZS1ub25lXCJcbiAgICBbY2xhc3MuYmctd2hpdGVdPVwiIXRoaXMuc3B4UmVhZG9ubHlcIlxuICAgIFtjbGFzcy5iZy1ncmF5LTMwMF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICBbY2xhc3MuY3Vyc29yLW5vdC1hbGxvd2VkXT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgIFtjbGFzcy51cHBlcmNhc2VdPVwidGhpcy5zcHhDYXBpdGFsaXplXCJcbiAgICBbYXR0ci5hdXRvZm9jdXNdPVwidGhpcy5zcHhBdXRvZm9jdXMgPyB0aGlzLnNweEF1dG9mb2N1cyA6IHVuZGVmaW5lZFwiXG4gICAgW2F0dHIuZGlzYWJsZWRdPVwidGhpcy5zcHhSZWFkb25seSA/IHRoaXMuc3B4UmVhZG9ubHkgOiB1bmRlZmluZWRcIlxuICAgIFthdHRyLmlucHV0TW9kZV09XCJ0aGlzLnNweElucHV0TW9kZSA/IHRoaXMuc3B4SW5wdXRNb2RlIDogdW5kZWZpbmVkXCJcbiAgICBbYXR0ci5wYXR0ZXJuXT1cInRoaXMuc3B4UGF0dGVybiA/IHRoaXMuc3B4UGF0dGVybiA6IHVuZGVmaW5lZFwiXG4gICAgW2F0dHIubmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgIFthdHRyLnR5cGVdPVwidGhpcy5zcHhUeXBlXCJcbiAgICBbdmFsdWVdPVwidGhpcy52YWx1ZT8uZGVzY3JpcHRpb24gPyB0aGlzLnZhbHVlPy5kZXNjcmlwdGlvbiA6IHRoaXMudmFsdWU/LnZhbHVlXCJcbiAgICAoYmx1cik9XCJ0aGlzLmhhbmRsZUJsdXIoKVwiXG4gICAgKGtleVVwKT1cInRoaXMuaGFuZGxlS2V5VXAoKVwiXG4gICAgKGZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgKGlucHV0KT1cInRoaXMuaGFuZGxlRGVzY3JpcHRpb25JbnB1dCgkZXZlbnQpXCJcbiAgLz5cbiAgPHNwYW4gKm5nSWY9XCJ0aGlzLnZhbHVlPy5kZXNjcmlwdGlvbiAmJiB0aGlzLnZhbHVlPy52YWx1ZSAmJiB0aGlzLnZhbHVlPy5kZXNjcmlwdGlvbj8udmFsdWVPZigpICE9PSB0aGlzLnZhbHVlPy52YWx1ZT8udmFsdWVPZigpXCI+e3t0aGlzLnZhbHVlPy52YWx1ZX19PC9zcGFuPlxuICA8c3B4LWRyb3Bkb3duXG4gICAgKm5nSWY9XCJ0aGlzLnNweEZvY3VzZWQgJiYgKHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXknIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInKVwiXG4gICAgW3NweFN1Z2dlc3Rpb25zXT1cInRoaXMuc3B4U3VnZ2VzdGlvbnNcIiAoc3B4U2VsZWN0KT1cInRoaXMuaGFuZGxlU3VnZ2VzdGlvbkNsaWNrKCRldmVudClcIj5cbiAgPC9zcHgtZHJvcGRvd24+XG48L2Rpdj5gLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dFRleHRDb21wb25lbnQge1xuICAvLyBwcml2YXRlIGVsSW5wdXQ/OiBIVE1MRWxlbWVudDtcbiAgLy8gQEVsZW1lbnQoKSBlbCE6IEhUTUxFbGVtZW50O1xuICBASW5wdXQoKSBzcHhOYW1lPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhBdXRvZm9jdXMgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4SW5wdXRNb2RlPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhQYXR0ZXJuPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGJvb2xlYW4gfCBudW1iZXIgfCBzdHJpbmc+W10gPSBbXTtcbiAgQElucHV0KCkgc3B4UmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4VmFsaWRhdG9ycz86IGFueVtdO1xuICBASW5wdXQoKSBzcHhDYXBpdGFsaXplID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhUeXBlOiAnYXV0b2NvbXBsZXRlJyB8ICdvdmVybGF5JyB8ICdvdmVybGF5bnVtYmVyJyB8ICd0ZXh0JyB8ICdwYXNzd29yZCcgPSAndGV4dCc7XG4gIEBJbnB1dCgpIHZhbHVlPzogU3B4VmFsdWVQYWlyPGFueT47XG4gIEBPdXRwdXQoKSBzcHhCbHVyRnJvbUNoaWxkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhDaGFuZ2U6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpO1xuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQElucHV0KCkgc3B4V2FzSW50ZXJuYWxVcGRhdGUgPSBmYWxzZTtcbiAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbnB1dFJlZj86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIFxuICBcbiAgYXN5bmMgc3B4U2V0Rm9jdXMoKSB7XG4gICAgdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKTtcbiAgfVxuXG4gIGNvbXBvbmVudERpZExvYWQoKSB7XG4gICAgaWYgKHRoaXMuc3B4QXV0b2ZvY3VzKSB7XG4gICAgICB0aGlzLnNweEZvY3VzLmVtaXQoKTtcbiAgICAgIHRoaXMuc3B4U2V0Rm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVCbHVyKCkge1xuICAgIHRoaXMuc3B4Qmx1ckZyb21DaGlsZC5lbWl0KCk7XG4gIH1cblxuICBoYW5kbGVGb2N1cygpIHtcbiAgICB0aGlzLnNweEZvY3VzLmVtaXQoKTtcbiAgfVxuXG4gIGhhbmRsZURlc2NyaXB0aW9uSW5wdXQoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMudmFsdWUgPSB7XG4gICAgICBkZXNjcmlwdGlvbjogZXZlbnQudGFyZ2V0ID8gZXZlbnQudGFyZ2V0LnZhbHVlIDogbnVsbCxcbiAgICAgIHZhbHVlOiBldmVudC50YXJnZXQgPyBldmVudC50YXJnZXQudmFsdWUgOiBudWxsLFxuICAgIH07XG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZTogYW55KSB7XG4gICAgaWYgKCF0aGlzLnNweFJlYWRvbmx5KSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLnNweENoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgdGhpcy5zcHhGb2N1c2VkID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlS2V5VXAoKSB7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,14 @@
1
+ export var SpxInputTypeEnum;
2
+ (function (SpxInputTypeEnum) {
3
+ SpxInputTypeEnum["autocomplete"] = "autocomplete";
4
+ SpxInputTypeEnum["date"] = "date";
5
+ SpxInputTypeEnum["float"] = "float";
6
+ SpxInputTypeEnum["overlay"] = "overlay";
7
+ SpxInputTypeEnum["overlayNumber"] = "overlaynumber";
8
+ SpxInputTypeEnum["radio"] = "radio";
9
+ SpxInputTypeEnum["number"] = "number";
10
+ SpxInputTypeEnum["password"] = "password";
11
+ SpxInputTypeEnum["text"] = "text";
12
+ SpxInputTypeEnum["textNumericKeyboard"] = "textNumericKeyboard";
13
+ })(SpxInputTypeEnum || (SpxInputTypeEnum = {}));
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZ0JBV1g7QUFYRCxXQUFZLGdCQUFnQjtJQUN4QixpREFBNkIsQ0FBQTtJQUM3QixpQ0FBYSxDQUFBO0lBQ2IsbUNBQWUsQ0FBQTtJQUNmLHVDQUFtQixDQUFBO0lBQ25CLG1EQUFnQyxDQUFBO0lBQ2hDLG1DQUFlLENBQUE7SUFDZixxQ0FBaUIsQ0FBQTtJQUNqQix5Q0FBcUIsQ0FBQTtJQUNyQixpQ0FBYSxDQUFBO0lBQ2IsK0RBQTJDLENBQUE7QUFDL0MsQ0FBQyxFQVhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFXM0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTcHhJbnB1dFR5cGVFbnVtIHtcbiAgICBhdXRvY29tcGxldGUgPSAnYXV0b2NvbXBsZXRlJyxcbiAgICBkYXRlID0gJ2RhdGUnLFxuICAgIGZsb2F0ID0gJ2Zsb2F0JyxcbiAgICBvdmVybGF5ID0gJ292ZXJsYXknLFxuICAgIG92ZXJsYXlOdW1iZXIgPSAgJ292ZXJsYXludW1iZXInLFxuICAgIHJhZGlvID0gJ3JhZGlvJyxcbiAgICBudW1iZXIgPSAnbnVtYmVyJyxcbiAgICBwYXNzd29yZCA9ICdwYXNzd29yZCcsXG4gICAgdGV4dCA9ICd0ZXh0JyxcbiAgICB0ZXh0TnVtZXJpY0tleWJvYXJkID0gJ3RleHROdW1lcmljS2V5Ym9hcmQnLFxufSJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { NgIf } from '@angular/common';
2
- import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
2
+ import { Component, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
3
3
  import { SpxInputBoxComponent } from './spx-input-box.component';
4
4
  import { SpxInputTextComponent } from './spx-input-text.component';
5
5
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
@@ -7,6 +7,7 @@ import { SpxInputDateComponent } from './spx-input-date.component';
7
7
  import { SpxInputFloatComponent } from './spx-input-float.component';
8
8
  import { SpxInputNumberComponent } from './spx-input-number.component';
9
9
  import { SpxInputRadioComponent } from './spx-input-radio.component';
10
+ import { SpxInputTypeEnum } from './spx-input-type.enum';
10
11
  import * as i0 from "@angular/core";
11
12
  export class SpxInputComponent {
12
13
  constructor() {
@@ -18,12 +19,13 @@ export class SpxInputComponent {
18
19
  this.spxSelectDay = true;
19
20
  this.spxShowEdit = false;
20
21
  this.spxShowHelp = false;
22
+ this.spxShowLabel = true;
21
23
  this.spxCompact = false;
22
24
  this.spxShowClear = true;
23
25
  this.spxShowSearch = false;
24
26
  this.spxShowValidationMessages = false;
25
27
  this.spxSuggestions = [];
26
- this.spxType = 'text';
28
+ this.spxType = SpxInputTypeEnum.text;
27
29
  this.spxCapitalize = false;
28
30
  this.spxBlur = new EventEmitter();
29
31
  this.spxClear = new EventEmitter();
@@ -36,9 +38,6 @@ export class SpxInputComponent {
36
38
  this.onChange = () => { };
37
39
  this.onTouched = () => { };
38
40
  }
39
- async spxSetFocus() {
40
- this.passFocusToControl();
41
- }
42
41
  handleBlur() {
43
42
  this.spxBlur.emit();
44
43
  }
@@ -59,17 +58,19 @@ export class SpxInputComponent {
59
58
  handleFocus() {
60
59
  this.spxFocus.emit();
61
60
  this.spxFocused = true;
62
- // this.elBox.spxSetFocus();
63
61
  }
64
62
  handleSearch() {
65
63
  this.spxSearch.emit();
66
64
  }
67
- setFocus() {
65
+ setFocusIn() {
68
66
  this.spxFocused = true;
69
67
  this.passFocusToControl();
70
68
  }
71
69
  setFocusOut() {
72
70
  this.spxFocused = false;
71
+ if (this.spxType === SpxInputTypeEnum.radio) {
72
+ this.radioInput?.spxFocusOut();
73
+ }
73
74
  }
74
75
  handleEdit() {
75
76
  this.spxEdit.emit();
@@ -80,9 +81,19 @@ export class SpxInputComponent {
80
81
  this.spxFocused = true;
81
82
  }
82
83
  passFocusToControl() {
84
+ switch (this.spxType) {
85
+ case SpxInputTypeEnum.autocomplete:
86
+ case SpxInputTypeEnum.text:
87
+ case SpxInputTypeEnum.overlayNumber:
88
+ this.textInput?.spxSetFocus();
89
+ break;
90
+ case SpxInputTypeEnum.radio:
91
+ this.radioInput?.spxFocusIn();
92
+ break;
93
+ }
83
94
  }
84
95
  writeValue(value) {
85
- this.value = this.lastValue = value == null ? '' : value;
96
+ this.value = this.lastValue = value;
86
97
  }
87
98
  handleChangeEvent(value) {
88
99
  if (value !== this.lastValue) {
@@ -100,13 +111,14 @@ export class SpxInputComponent {
100
111
  this.onTouched = fn;
101
112
  }
102
113
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
103
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxInputComponent, isStandalone: true, selector: "spx-input", inputs: { spxLabel: "spxLabel", spxMax: "spxMax", spxMin: "spxMin", spxName: "spxName", spxReadonly: "spxReadonly", spxAutofocus: "spxAutofocus", spxInputMode: "spxInputMode", spxPattern: "spxPattern", spxRequired: "spxRequired", spxSelectMonth: "spxSelectMonth", spxSelectDay: "spxSelectDay", spxShowEdit: "spxShowEdit", spxShowHelp: "spxShowHelp", spxCompact: "spxCompact", spxShowClear: "spxShowClear", spxShowSearch: "spxShowSearch", spxShowValidationMessages: "spxShowValidationMessages", spxStep: "spxStep", spxSuggestions: "spxSuggestions", spxType: "spxType", spxValidators: "spxValidators", value: "value", spxCapitalize: "spxCapitalize", spxFocused: "spxFocused" }, outputs: { spxBlur: "spxBlur", spxClear: "spxClear", spxChange: "spxChange", spxFocus: "spxFocus", spxEdit: "spxEdit", spxHelp: "spxHelp", spxSearch: "spxSearch" }, host: { listeners: { "spxChange": "handleChangeEvent($event)", "focusout": "_handleBlurEvent()" } }, providers: [
114
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxInputComponent, isStandalone: true, selector: "spx-input", inputs: { spxLabel: "spxLabel", spxMax: "spxMax", spxMin: "spxMin", spxName: "spxName", spxReadonly: "spxReadonly", spxAutofocus: "spxAutofocus", spxInputMode: "spxInputMode", spxPattern: "spxPattern", spxRequired: "spxRequired", spxSelectMonth: "spxSelectMonth", spxSelectDay: "spxSelectDay", spxShowEdit: "spxShowEdit", spxShowHelp: "spxShowHelp", spxShowLabel: "spxShowLabel", spxCompact: "spxCompact", spxShowClear: "spxShowClear", spxShowSearch: "spxShowSearch", spxShowValidationMessages: "spxShowValidationMessages", spxStep: "spxStep", spxSuggestions: "spxSuggestions", spxType: "spxType", spxValidators: "spxValidators", value: "value", spxCapitalize: "spxCapitalize", spxFocused: "spxFocused" }, outputs: { spxBlur: "spxBlur", spxClear: "spxClear", spxChange: "spxChange", spxFocus: "spxFocus", spxEdit: "spxEdit", spxHelp: "spxHelp", spxSearch: "spxSearch" }, host: { listeners: { "spxChange": "handleChangeEvent($event)", "focusout": "_handleBlurEvent()" } }, providers: [
104
115
  {
105
116
  provide: NG_VALUE_ACCESSOR,
106
117
  useExisting: SpxInputComponent,
107
118
  multi: true
108
119
  }
109
- ], ngImport: i0, template: `<spx-input-box
120
+ ], viewQueries: [{ propertyName: "textInput", first: true, predicate: SpxInputTextComponent, descendants: true }, { propertyName: "radioInput", first: true, predicate: SpxInputRadioComponent, descendants: true }], ngImport: i0, template: `<spx-input-box
121
+ [spxFocused]="this.spxFocused"
110
122
  [spxLabel]="this.spxLabel"
111
123
  [spxReadonly]="this.spxReadonly"
112
124
  [spxRequired]="this.spxRequired"
@@ -115,14 +127,15 @@ export class SpxInputComponent {
115
127
  [spxCompact]="this.spxCompact"
116
128
  [spxShowClear]="this.spxShowClear"
117
129
  [spxShowEdit]="this.spxShowEdit"
130
+ [spxShowLabel]="this.spxShowLabel"
118
131
  [spxShowSearch]="this.spxShowSearch ? this.spxShowSearch : this.spxType === 'autocomplete'"
119
132
  [spxShowValidationMessages]="this.spxShowValidationMessages"
120
133
  (spxClear)="this.handleClear()"
121
134
  (spxEdit)="this.handleEdit()"
122
135
  (spxHelp)="this.handleHelp()"
123
- (spxFocus)="this.setFocus()"
136
+ (spxFocus)="this.setFocusIn()"
124
137
  (spxFocusOut)="this.setFocusOut()"
125
- (spxSearchOutput)="this.handleSearch()">
138
+ (spxSearch)="this.handleSearch()">
126
139
  <div controls>
127
140
  <spx-input-text
128
141
  *ngIf="this.spxType === 'autocomplete' || this.spxType === 'overlay' || this.spxType === 'overlaynumber' || this.spxType === 'text' || this.spxType === 'password'"
@@ -181,12 +194,14 @@ export class SpxInputComponent {
181
194
  [value]="this.value"
182
195
  ></spx-input-number>
183
196
  <spx-input-radio
197
+ #radioInput
184
198
  *ngIf="this.spxType === 'radio'"
185
199
  (spxChange)="this.handleChange($event)"
186
200
  (spxFocus)="this.handleFocus()"
187
201
  [spxFocused]="this.spxFocused"
188
202
  [spxName]="this.spxName"
189
203
  [spxReadonly]="this.spxReadonly"
204
+ [spxShowLabel]="this.spxShowLabel"
190
205
  [spxSuggestions]="this.spxSuggestions"
191
206
  [spxValidators]="this.spxValidators"
192
207
  [value]="this.value"
@@ -195,7 +210,7 @@ export class SpxInputComponent {
195
210
  <div validation-messages>
196
211
  <ng-content></ng-content>
197
212
  </div>
198
- </spx-input-box>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SpxInputBoxComponent, selector: "spx-input-box", inputs: ["spxLabel", "spxRequired", "spxReadonly", "spxShowHelp", "spxCompact", "spxShowClear", "spxShowEdit", "spxShowSearch", "spxShowValidationMessages", "spxValue", "spxFocused"], outputs: ["spxClear", "spxSearchOutput", "spxFocus", "spxFocusOut", "spxEdit", "spxHelp"] }, { kind: "component", type: SpxInputDateComponent, selector: "spx-input-date", inputs: ["spxMax", "spxMin", "spxName", "spxReadonly", "spxValidators", "spxFocused", "spxSelectMonth", "spxSelectDay", "value", "spxLastKeyPressed", "spxSelectStep", "spxInternalValue", "spxSuggestions", "spxWasInternalUpdate"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputFloatComponent, selector: "spx-input-float", inputs: ["spxName", "spxAutofocus", "spxReadonly", "spxValidators", "spxFocused", "spxStep", "value", "spxWasInternalUpdate", "tick"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputNumberComponent, selector: "spx-input-number", inputs: ["spxName", "spxAutofocus", "spxInputMode", "spxReadonly", "spxValidators", "spxFocused", "spxStep", "value"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputRadioComponent, selector: "spx-input-radio", inputs: ["spxName", "spxValidators", "spxFocused", "spxReadonly", "spxSuggestions", "value"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputTextComponent, selector: "spx-input-text", inputs: ["spxName", "spxAutofocus", "spxInputMode", "spxPattern", "spxSuggestions", "spxReadonly", "spxValidators", "spxCapitalize", "spxFocused", "spxType", "value", "spxWasInternalUpdate"], outputs: ["spxBlurFromChild", "spxChange", "spxFocus"] }] }); }
213
+ </spx-input-box>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SpxInputBoxComponent, selector: "spx-input-box", inputs: ["spxCompact", "spxFocused", "spxLabel", "spxReadonly", "spxRequired", "spxShowClear", "spxShowEdit", "spxShowHelp", "spxShowLabel", "spxShowSearch", "spxShowValidationMessages", "spxValue"], outputs: ["spxClear", "spxSearch", "spxFocus", "spxFocusOut", "spxEdit", "spxHelp"] }, { kind: "component", type: SpxInputDateComponent, selector: "spx-input-date", inputs: ["spxMax", "spxMin", "spxName", "spxReadonly", "spxValidators", "spxFocused", "spxSelectMonth", "spxSelectDay", "value", "spxLastKeyPressed", "spxSelectStep", "spxInternalValue", "spxSuggestions", "spxWasInternalUpdate"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputFloatComponent, selector: "spx-input-float", inputs: ["spxName", "spxAutofocus", "spxReadonly", "spxValidators", "spxFocused", "spxStep", "value", "spxWasInternalUpdate", "tick"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputNumberComponent, selector: "spx-input-number", inputs: ["spxName", "spxAutofocus", "spxInputMode", "spxReadonly", "spxValidators", "spxFocused", "spxStep", "value"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputRadioComponent, selector: "spx-input-radio", inputs: ["spxName", "spxValidators", "spxFocused", "spxShowLabel", "spxReadonly", "spxSuggestions", "value"], outputs: ["spxChange", "spxFocus"] }, { kind: "component", type: SpxInputTextComponent, selector: "spx-input-text", inputs: ["spxName", "spxAutofocus", "spxInputMode", "spxPattern", "spxSuggestions", "spxReadonly", "spxValidators", "spxCapitalize", "spxFocused", "spxType", "value", "spxWasInternalUpdate"], outputs: ["spxBlurFromChild", "spxChange", "spxFocus"] }] }); }
199
214
  }
200
215
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputComponent, decorators: [{
201
216
  type: Component,
@@ -222,6 +237,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
222
237
  }
223
238
  ],
224
239
  template: `<spx-input-box
240
+ [spxFocused]="this.spxFocused"
225
241
  [spxLabel]="this.spxLabel"
226
242
  [spxReadonly]="this.spxReadonly"
227
243
  [spxRequired]="this.spxRequired"
@@ -230,14 +246,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
230
246
  [spxCompact]="this.spxCompact"
231
247
  [spxShowClear]="this.spxShowClear"
232
248
  [spxShowEdit]="this.spxShowEdit"
249
+ [spxShowLabel]="this.spxShowLabel"
233
250
  [spxShowSearch]="this.spxShowSearch ? this.spxShowSearch : this.spxType === 'autocomplete'"
234
251
  [spxShowValidationMessages]="this.spxShowValidationMessages"
235
252
  (spxClear)="this.handleClear()"
236
253
  (spxEdit)="this.handleEdit()"
237
254
  (spxHelp)="this.handleHelp()"
238
- (spxFocus)="this.setFocus()"
255
+ (spxFocus)="this.setFocusIn()"
239
256
  (spxFocusOut)="this.setFocusOut()"
240
- (spxSearchOutput)="this.handleSearch()">
257
+ (spxSearch)="this.handleSearch()">
241
258
  <div controls>
242
259
  <spx-input-text
243
260
  *ngIf="this.spxType === 'autocomplete' || this.spxType === 'overlay' || this.spxType === 'overlaynumber' || this.spxType === 'text' || this.spxType === 'password'"
@@ -296,12 +313,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
296
313
  [value]="this.value"
297
314
  ></spx-input-number>
298
315
  <spx-input-radio
316
+ #radioInput
299
317
  *ngIf="this.spxType === 'radio'"
300
318
  (spxChange)="this.handleChange($event)"
301
319
  (spxFocus)="this.handleFocus()"
302
320
  [spxFocused]="this.spxFocused"
303
321
  [spxName]="this.spxName"
304
322
  [spxReadonly]="this.spxReadonly"
323
+ [spxShowLabel]="this.spxShowLabel"
305
324
  [spxSuggestions]="this.spxSuggestions"
306
325
  [spxValidators]="this.spxValidators"
307
326
  [value]="this.value"
@@ -338,6 +357,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
338
357
  type: Input
339
358
  }], spxShowHelp: [{
340
359
  type: Input
360
+ }], spxShowLabel: [{
361
+ type: Input
341
362
  }], spxCompact: [{
342
363
  type: Input
343
364
  }], spxShowClear: [{
@@ -372,10 +393,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
372
393
  type: Output
373
394
  }], spxSearch: [{
374
395
  type: Output
396
+ }], textInput: [{
397
+ type: ViewChild,
398
+ args: [SpxInputTextComponent]
399
+ }], radioInput: [{
400
+ type: ViewChild,
401
+ args: [SpxInputRadioComponent]
375
402
  }], spxFocused: [{
376
403
  type: Input
377
404
  }], _handleBlurEvent: [{
378
405
  type: HostListener,
379
406
  args: ['focusout']
380
407
  }] } });
381
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQW1IckUsTUFBTSxPQUFPLGlCQUFpQjtJQWpIOUI7UUFrSFcsYUFBUSxHQUFXLE9BQU8sQ0FBQztRQUkzQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdyQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUFHLElBQUksQ0FBQztRQUN0QixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGlCQUFZLEdB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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhJbnB1dEJveENvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3B4SW5wdXRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3B4SW5wdXREYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtZGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3B4SW5wdXRGbG9hdENvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LWZsb2F0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhJbnB1dE51bWJlckNvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LW51bWJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3B4SW5wdXRSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LXJhZGlvLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1pbnB1dCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGhvc3Q6IHtcbiAgICAnKHNweENoYW5nZSknOiAnaGFuZGxlQ2hhbmdlRXZlbnQoJGV2ZW50KSdcbiAgfSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgU3B4SW5wdXRCb3hDb21wb25lbnQsXG4gICAgU3B4SW5wdXREYXRlQ29tcG9uZW50LFxuICAgIFNweElucHV0RmxvYXRDb21wb25lbnQsXG4gICAgU3B4SW5wdXROdW1iZXJDb21wb25lbnQsXG4gICAgU3B4SW5wdXRSYWRpb0NvbXBvbmVudCxcbiAgICBTcHhJbnB1dFRleHRDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IFNweElucHV0Q29tcG9uZW50LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG4gIHRlbXBsYXRlOiBgPHNweC1pbnB1dC1ib3hcbiAgW3NweExhYmVsXT1cInRoaXMuc3B4TGFiZWxcIlxuICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXG4gIFtzcHhSZXF1aXJlZF09XCJ0aGlzLnNweFJlcXVpcmVkXCJcbiAgW3NweFZhbHVlXT1cInRoaXMudmFsdWVcIlxuICBbc3B4U2hvd0hlbHBdPVwidGhpcy5zcHhTaG93SGVscFwiXG4gIFtzcHhDb21wYWN0XT1cInRoaXMuc3B4Q29tcGFjdFwiXG4gIFtzcHhTaG93Q2xlYXJdPVwidGhpcy5zcHhTaG93Q2xlYXJcIlxuICBbc3B4U2hvd0VkaXRdPVwidGhpcy5zcHhTaG93RWRpdFwiXG4gIFtzcHhTaG93U2VhcmNoXT1cInRoaXMuc3B4U2hvd1NlYXJjaCA/IHRoaXMuc3B4U2hvd1NlYXJjaCA6IHRoaXMuc3B4VHlwZSA9PT0gJ2F1dG9jb21wbGV0ZSdcIlxuICBbc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc109XCJ0aGlzLnNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXNcIlxuICAoc3B4Q2xlYXIpPVwidGhpcy5oYW5kbGVDbGVhcigpXCJcbiAgKHNweEVkaXQpPVwidGhpcy5oYW5kbGVFZGl0KClcIlxuICAoc3B4SGVscCk9XCJ0aGlzLmhhbmRsZUhlbHAoKVwiXG4gIChzcHhGb2N1cyk9XCJ0aGlzLnNldEZvY3VzKClcIlxuICAoc3B4Rm9jdXNPdXQpPVwidGhpcy5zZXRGb2N1c091dCgpXCJcbiAgKHNweFNlYXJjaE91dHB1dCk9XCJ0aGlzLmhhbmRsZVNlYXJjaCgpXCI+XG4gIDxkaXYgY29udHJvbHM+XG4gICAgPHNweC1pbnB1dC10ZXh0XG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ2F1dG9jb21wbGV0ZScgfHwgdGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheScgfHwgdGhpcy5zcHhUeXBlID09PSAnb3ZlcmxheW51bWJlcicgfHwgdGhpcy5zcHhUeXBlID09PSAndGV4dCcgfHwgdGhpcy5zcHhUeXBlID09PSAncGFzc3dvcmQnXCJcbiAgICAgIChzcHhCbHVyRnJvbUNoaWxkKT1cInRoaXMuaGFuZGxlQmx1cigpXCJcbiAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoc3B4Rm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcbiAgICAgIFtzcHhBdXRvZm9jdXNdPVwidGhpcy5zcHhBdXRvZm9jdXNcIlxuICAgICAgW3NweENhcGl0YWxpemVdPVwidGhpcy5zcHhDYXBpdGFsaXplXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4SW5wdXRNb2RlXT1cInRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInID8gJ251bWVyaWMnIDogdGhpcy5zcHhJbnB1dE1vZGVcIlxuICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcbiAgICAgIFtzcHhQYXR0ZXJuXT1cInRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInID8gJ1swLTldKicgOiB0aGlzLnNweFBhdHRlcm5cIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN1Z2dlc3Rpb25zXT1cInRoaXMuc3B4U3VnZ2VzdGlvbnNcIlxuICAgICAgW3NweFR5cGVdPVwidGhpcy5zcHhUeXBlXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgICA+PC9zcHgtaW5wdXQtdGV4dD5cbiAgICA8c3B4LWlucHV0LWRhdGVcbiAgICAgICpuZ0lmPVwidGhpcy5zcHhUeXBlID09PSAnZGF0ZSdcIlxuICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxuICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcbiAgICAgIFtzcHhNYXhdPVwidGhpcy5zcHhNYXhcIlxuICAgICAgW3NweE1pbl09XCJ0aGlzLnNweE1pblwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFNlbGVjdERheV09XCJ0aGlzLnNweFNlbGVjdERheVwiXG4gICAgICBbc3B4U2VsZWN0TW9udGhdPVwidGhpcy5zcHhTZWxlY3RNb250aFwiXG4gICAgICBbc3B4VmFsaWRhdG9yc109XCJ0aGlzLnNweFZhbGlkYXRvcnNcIlxuICAgICAgW3ZhbHVlXT1cInRoaXMudmFsdWVcIlxuICAgID48L3NweC1pbnB1dC1kYXRlPlxuICAgIDxzcHgtaW5wdXQtZmxvYXRcbiAgICAgICpuZ0lmPVwidGhpcy5zcHhUeXBlID09PSAnZmxvYXQnXCJcbiAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoc3B4Rm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcbiAgICAgIFtzcHhBdXRvZm9jdXNdPVwidGhpcy5zcHhBdXRvZm9jdXNcIlxuICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcbiAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXG4gICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXG4gICAgICBbc3B4U3RlcF09XCJ0aGlzLnNweFN0ZXBcIlxuICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcbiAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgICA+PC9zcHgtaW5wdXQtZmxvYXQ+XG4gICAgPHNweC1pbnB1dC1udW1iZXJcbiAgICAgICpuZ0lmPVwidGhpcy5zcHhUeXBlID09PSAnbnVtYmVyJ1wiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4SW5wdXRNb2RlXT1cInRoaXMuc3B4SW5wdXRNb2RlXCJcbiAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXG4gICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXG4gICAgICBbc3B4U3RlcF09XCJ0aGlzLnNweFN0ZXBcIlxuICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcbiAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgICA+PC9zcHgtaW5wdXQtbnVtYmVyPlxuICAgIDxzcHgtaW5wdXQtcmFkaW9cbiAgICAgICpuZ0lmPVwidGhpcy5zcHhUeXBlID09PSAncmFkaW8nXCJcbiAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoc3B4Rm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN1Z2dlc3Rpb25zXT1cInRoaXMuc3B4U3VnZ2VzdGlvbnNcIlxuICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcbiAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgICA+PC9zcHgtaW5wdXQtcmFkaW8+XG4gIDwvZGl2PlxuICA8ZGl2IHZhbGlkYXRpb24tbWVzc2FnZXM+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvc3B4LWlucHV0LWJveD5gLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNweExhYmVsOiBzdHJpbmcgPSAnbGFiZWwnO1xuICBASW5wdXQoKSBzcHhNYXg/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweE1pbj86IHN0cmluZztcbiAgQElucHV0KCkgc3B4TmFtZSE6IHN0cmluZztcbiAgQElucHV0KCkgc3B4UmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4QXV0b2ZvY3VzID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweElucHV0TW9kZT86IHN0cmluZztcbiAgQElucHV0KCkgc3B4UGF0dGVybj86IHN0cmluZztcbiAgQElucHV0KCkgc3B4UmVxdWlyZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2VsZWN0TW9udGggPSB0cnVlO1xuICBASW5wdXQoKSBzcHhTZWxlY3REYXkgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhTaG93RWRpdCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTaG93SGVscCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhDb21wYWN0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFNob3dDbGVhciA9IHRydWU7XG4gIEBJbnB1dCgpIHNweFNob3dTZWFyY2ggPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlcz86IGJvb2xlYW4gfCBudWxsIHwgdW5kZWZpbmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFN0ZXA/OiBudW1iZXI7XG4gIEBJbnB1dCgpIHNweFN1Z2dlc3Rpb25zOiBTcHhWYWx1ZVBhaXI8Ym9vbGVhbiB8IG51bWJlciB8IHN0cmluZz5bXSA9IFtdO1xuICBASW5wdXQoKSBzcHhUeXBlOiAnYXV0b2NvbXBsZXRlJyB8ICdkYXRlJyB8ICdmbG9hdCcgfCAnb3ZlcmxheScgfCAnb3ZlcmxheW51bWJlcicgfCAncmFkaW8nIHwgJ251bWJlcicgfCAncGFzc3dvcmQnIHwgJ3Bob3RvJyB8ICd0ZXh0JyA9ICd0ZXh0JztcbiAgQElucHV0KCkgc3B4VmFsaWRhdG9ycyE6IGFueVtdO1xuICBASW5wdXQoKSB2YWx1ZSE6IFNweFZhbHVlUGFpcjxhbnk+O1xuICBASW5wdXQoKSBzcHhDYXBpdGFsaXplID0gZmFsc2U7XG4gIEBPdXRwdXQoKSBzcHhCbHVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgc3B4Q2hhbmdlOiBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4oKTtcbiAgQE91dHB1dCgpIHNweEZvY3VzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhFZGl0OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhIZWxwOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQElucHV0KCkgc3B4Rm9jdXNlZCA9IGZhbHNlO1xuICBhc3luYyBzcHhTZXRGb2N1cygpIHtcbiAgICB0aGlzLnBhc3NGb2N1c1RvQ29udHJvbCgpO1xuICB9XG5cbiAgaGFuZGxlQmx1cigpIHtcbiAgICB0aGlzLnNweEJsdXIuZW1pdCgpO1xuICB9XG5cbiAgaGFuZGxlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlID0gZXZlbnQ7XG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGhhbmRsZUNsZWFyKCkge1xuICAgIHRoaXMuc3B4Q2xlYXIuZW1pdCgpO1xuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XG4gICAgdGhpcy5wYXNzRm9jdXNUb0NvbnRyb2woKTtcbiAgICB0aGlzLnZhbHVlID0ge1xuICAgICAgZGVzY3JpcHRpb246IG51bGwsXG4gICAgICB2YWx1ZTogbnVsbCxcbiAgICB9O1xuICAgIHRoaXMuc3B4Q2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cblxuICBoYW5kbGVGb2N1cygpIHtcbiAgICB0aGlzLnNweEZvY3VzLmVtaXQoKTtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xuICAgIC8vIHRoaXMuZWxCb3guc3B4U2V0Rm9jdXMoKTtcbiAgfVxuXG4gIGhhbmRsZVNlYXJjaCgpIHtcbiAgICB0aGlzLnNweFNlYXJjaC5lbWl0KCk7XG4gIH1cblxuICBzZXRGb2N1cygpIHtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xuICAgIHRoaXMucGFzc0ZvY3VzVG9Db250cm9sKCk7XG4gIH1cblxuICBzZXRGb2N1c091dCgpIHtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSBmYWxzZTtcbiAgfVxuXG4gIGhhbmRsZUVkaXQoKSB7XG4gICAgdGhpcy5zcHhFZGl0LmVtaXQoKTtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xuICB9XG4gIFxuICBoYW5kbGVIZWxwKCkge1xuICAgIHRoaXMuc3B4SGVscC5lbWl0KCk7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgcGFzc0ZvY3VzVG9Db250cm9sKCkge1xuICB9XG5cblxuICBwcml2YXRlIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHsvKiovfTtcbiAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7LyoqL307XG4gIHByb3RlY3RlZCBsYXN0VmFsdWU6IGFueTtcblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZSA9PSBudWxsID8gJycgOiB2YWx1ZTtcbiAgfVxuXG4gIGhhbmRsZUNoYW5nZUV2ZW50KHZhbHVlOiBhbnkpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMubGFzdFZhbHVlKSB7XG4gICAgICB0aGlzLmxhc3RWYWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxuICBfaGFuZGxlQmx1ckV2ZW50KCkge1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCkge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cbn1cbiJdfQ==
408
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUF1SHpELE1BQU0sT0FBTyxpQkFBaUI7SUFySDlCO1FBc0hXLGFBQVEsR0FBVyxPQUFPLENBQUM7UUFJM0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFHckIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcs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QUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0cseUJBQXlCO3NCQUFqQyxLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNJLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQzJCLFNBQVM7c0JBQTFDLFNBQVM7dUJBQUMscUJBQXFCO2dCQUNHLFVBQVU7c0JBQTVDLFNBQVM7dUJBQUMsc0JBQXNCO2dCQUN4QixVQUFVO3NCQUFsQixLQUFLO2dCQWlGTixnQkFBZ0I7c0JBRGYsWUFBWTt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNweElucHV0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhJbnB1dFRleHRDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTcHhJbnB1dERhdGVDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1kYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhJbnB1dEZsb2F0Q29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtZmxvYXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNweElucHV0TnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtbnVtYmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhJbnB1dFJhZGlvQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtcmFkaW8uY29tcG9uZW50JztcbmltcG9ydCB7IFNweElucHV0VHlwZUVudW0gfSBmcm9tICcuL3NweC1pbnB1dC10eXBlLmVudW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHgtaW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJyhzcHhDaGFuZ2UpJzogJ2hhbmRsZUNoYW5nZUV2ZW50KCRldmVudCknXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIFNweElucHV0Qm94Q29tcG9uZW50LFxuICAgIFNweElucHV0RGF0ZUNvbXBvbmVudCxcbiAgICBTcHhJbnB1dEZsb2F0Q29tcG9uZW50LFxuICAgIFNweElucHV0TnVtYmVyQ29tcG9uZW50LFxuICAgIFNweElucHV0UmFkaW9Db21wb25lbnQsXG4gICAgU3B4SW5wdXRUZXh0Q29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBTcHhJbnB1dENvbXBvbmVudCxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLFxuICB0ZW1wbGF0ZTogYDxzcHgtaW5wdXQtYm94XG4gIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gIFtzcHhMYWJlbF09XCJ0aGlzLnNweExhYmVsXCJcbiAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICBbc3B4UmVxdWlyZWRdPVwidGhpcy5zcHhSZXF1aXJlZFwiXG4gIFtzcHhWYWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgW3NweFNob3dIZWxwXT1cInRoaXMuc3B4U2hvd0hlbHBcIlxuICBbc3B4Q29tcGFjdF09XCJ0aGlzLnNweENvbXBhY3RcIlxuICBbc3B4U2hvd0NsZWFyXT1cInRoaXMuc3B4U2hvd0NsZWFyXCJcbiAgW3NweFNob3dFZGl0XT1cInRoaXMuc3B4U2hvd0VkaXRcIlxuICBbc3B4U2hvd0xhYmVsXT1cInRoaXMuc3B4U2hvd0xhYmVsXCJcbiAgW3NweFNob3dTZWFyY2hdPVwidGhpcy5zcHhTaG93U2VhcmNoID8gdGhpcy5zcHhTaG93U2VhcmNoIDogdGhpcy5zcHhUeXBlID09PSAnYXV0b2NvbXBsZXRlJ1wiXG4gIFtzcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXT1cInRoaXMuc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc1wiXG4gIChzcHhDbGVhcik9XCJ0aGlzLmhhbmRsZUNsZWFyKClcIlxuICAoc3B4RWRpdCk9XCJ0aGlzLmhhbmRsZUVkaXQoKVwiXG4gIChzcHhIZWxwKT1cInRoaXMuaGFuZGxlSGVscCgpXCJcbiAgKHNweEZvY3VzKT1cInRoaXMuc2V0Rm9jdXNJbigpXCJcbiAgKHNweEZvY3VzT3V0KT1cInRoaXMuc2V0Rm9jdXNPdXQoKVwiXG4gIChzcHhTZWFyY2gpPVwidGhpcy5oYW5kbGVTZWFyY2goKVwiPlxuICA8ZGl2IGNvbnRyb2xzPlxuICAgIDxzcHgtaW5wdXQtdGV4dFxuICAgICAgKm5nSWY9XCJ0aGlzLnNweFR5cGUgPT09ICdhdXRvY29tcGxldGUnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXknIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3RleHQnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3Bhc3N3b3JkJ1wiXG4gICAgICAoc3B4Qmx1ckZyb21DaGlsZCk9XCJ0aGlzLmhhbmRsZUJsdXIoKVwiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcbiAgICAgIFtzcHhDYXBpdGFsaXplXT1cInRoaXMuc3B4Q2FwaXRhbGl6ZVwiXG4gICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxuICAgICAgW3NweElucHV0TW9kZV09XCJ0aGlzLnNweFR5cGUgPT09ICdvdmVybGF5bnVtYmVyJyA/ICdudW1lcmljJyA6IHRoaXMuc3B4SW5wdXRNb2RlXCJcbiAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXG4gICAgICBbc3B4UGF0dGVybl09XCJ0aGlzLnNweFR5cGUgPT09ICdvdmVybGF5bnVtYmVyJyA/ICdbMC05XSonIDogdGhpcy5zcHhQYXR0ZXJuXCJcbiAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgIFtzcHhUeXBlXT1cInRoaXMuc3B4VHlwZVwiXG4gICAgICBbc3B4VmFsaWRhdG9yc109XCJ0aGlzLnNweFZhbGlkYXRvcnNcIlxuICAgICAgW3ZhbHVlXT1cInRoaXMudmFsdWVcIlxuICAgICAgPjwvc3B4LWlucHV0LXRleHQ+XG4gICAgPHNweC1pbnB1dC1kYXRlXG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ2RhdGUnXCJcbiAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoc3B4Rm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4TWF4XT1cInRoaXMuc3B4TWF4XCJcbiAgICAgIFtzcHhNaW5dPVwidGhpcy5zcHhNaW5cIlxuICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcbiAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTZWxlY3REYXldPVwidGhpcy5zcHhTZWxlY3REYXlcIlxuICAgICAgW3NweFNlbGVjdE1vbnRoXT1cInRoaXMuc3B4U2VsZWN0TW9udGhcIlxuICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcbiAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgICA+PC9zcHgtaW5wdXQtZGF0ZT5cbiAgICA8c3B4LWlucHV0LWZsb2F0XG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ2Zsb2F0J1wiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LWZsb2F0PlxuICAgIDxzcHgtaW5wdXQtbnVtYmVyXG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ251bWJlcidcIlxuICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxuICAgICAgW3NweEF1dG9mb2N1c109XCJ0aGlzLnNweEF1dG9mb2N1c1wiXG4gICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxuICAgICAgW3NweElucHV0TW9kZV09XCJ0aGlzLnNweElucHV0TW9kZVwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LW51bWJlcj5cbiAgICA8c3B4LWlucHV0LXJhZGlvXG4gICAgICAjcmFkaW9JbnB1dFxuICAgICAgKm5nSWY9XCJ0aGlzLnNweFR5cGUgPT09ICdyYWRpbydcIlxuICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxuICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcbiAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXG4gICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXG4gICAgICBbc3B4U2hvd0xhYmVsXT1cInRoaXMuc3B4U2hvd0xhYmVsXCJcbiAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LXJhZGlvPlxuICA8L2Rpdj5cbiAgPGRpdiB2YWxpZGF0aW9uLW1lc3NhZ2VzPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L3NweC1pbnB1dC1ib3g+YCxcbn0pXG5leHBvcnQgY2xhc3MgU3B4SW5wdXRDb21wb25lbnQge1xuICBASW5wdXQoKSBzcHhMYWJlbDogc3RyaW5nID0gJ2xhYmVsJztcbiAgQElucHV0KCkgc3B4TWF4Pzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhNaW4/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFJlYWRvbmx5ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweEF1dG9mb2N1cyA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhJbnB1dE1vZGU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFBhdHRlcm4/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFJlcXVpcmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFNlbGVjdE1vbnRoID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4U2VsZWN0RGF5ID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4U2hvd0VkaXQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2hvd0hlbHAgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2hvd0xhYmVsID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4Q29tcGFjdCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTaG93Q2xlYXIgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhTaG93U2VhcmNoID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXM/OiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTdGVwPzogbnVtYmVyO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGJvb2xlYW4gfCBudW1iZXIgfCBzdHJpbmc+W10gPSBbXTtcbiAgQElucHV0KCkgc3B4VHlwZTogU3B4SW5wdXRUeXBlRW51bSA9IFNweElucHV0VHlwZUVudW0udGV4dDtcbiAgQElucHV0KCkgc3B4VmFsaWRhdG9ycyE6IGFueVtdO1xuICBASW5wdXQoKSB2YWx1ZSE6IFNweFZhbHVlUGFpcjxhbnk+O1xuICBASW5wdXQoKSBzcHhDYXBpdGFsaXplID0gZmFsc2U7XG4gIEBPdXRwdXQoKSBzcHhCbHVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgc3B4Q2hhbmdlOiBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4oKTtcbiAgQE91dHB1dCgpIHNweEZvY3VzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhFZGl0OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhIZWxwOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQFZpZXdDaGlsZChTcHhJbnB1dFRleHRDb21wb25lbnQpIHRleHRJbnB1dD86IFNweElucHV0VGV4dENvbXBvbmVudDtcbiAgQFZpZXdDaGlsZChTcHhJbnB1dFJhZGlvQ29tcG9uZW50KSByYWRpb0lucHV0PzogU3B4SW5wdXRSYWRpb0NvbXBvbmVudDtcbiAgQElucHV0KCkgc3B4Rm9jdXNlZCA9IGZhbHNlO1xuICBoYW5kbGVCbHVyKCkge1xuICAgIHRoaXMuc3B4Qmx1ci5lbWl0KCk7XG4gIH1cblxuICBoYW5kbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMudmFsdWUgPSBldmVudDtcbiAgICB0aGlzLnNweENoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICB9XG5cbiAgaGFuZGxlQ2xlYXIoKSB7XG4gICAgdGhpcy5zcHhDbGVhci5lbWl0KCk7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgICB0aGlzLnBhc3NGb2N1c1RvQ29udHJvbCgpO1xuICAgIHRoaXMudmFsdWUgPSB7XG4gICAgICBkZXNjcmlwdGlvbjogbnVsbCxcbiAgICAgIHZhbHVlOiBudWxsLFxuICAgIH07XG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGhhbmRsZUZvY3VzKCkge1xuICAgIHRoaXMuc3B4Rm9jdXMuZW1pdCgpO1xuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XG4gIH1cblxuICBoYW5kbGVTZWFyY2goKSB7XG4gICAgdGhpcy5zcHhTZWFyY2guZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIHNldEZvY3VzSW4oKSB7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgICB0aGlzLnBhc3NGb2N1c1RvQ29udHJvbCgpO1xuICB9XG5cbiAgc2V0Rm9jdXNPdXQoKSB7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gZmFsc2U7XG4gICAgaWYgKHRoaXMuc3B4VHlwZSA9PT0gU3B4SW5wdXRUeXBlRW51bS5yYWRpbykge1xuICAgICAgdGhpcy5yYWRpb0lucHV0Py5zcHhGb2N1c091dCgpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUVkaXQoKSB7XG4gICAgdGhpcy5zcHhFZGl0LmVtaXQoKTtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xuICB9XG4gIFxuICBoYW5kbGVIZWxwKCkge1xuICAgIHRoaXMuc3B4SGVscC5lbWl0KCk7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgcGFzc0ZvY3VzVG9Db250cm9sKCkge1xuICAgIHN3aXRjaCAodGhpcy5zcHhUeXBlKSB7XG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0uYXV0b2NvbXBsZXRlOlxuICAgICAgY2FzZSBTcHhJbnB1dFR5cGVFbnVtLnRleHQ6XG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0ub3ZlcmxheU51bWJlcjpcbiAgICAgICAgdGhpcy50ZXh0SW5wdXQ/LnNweFNldEZvY3VzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBTcHhJbnB1dFR5cGVFbnVtLnJhZGlvOlxuICAgICAgICB0aGlzLnJhZGlvSW5wdXQ/LnNweEZvY3VzSW4oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gIH1cblxuICBwcml2YXRlIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHsvKiovfTtcbiAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7LyoqL307XG4gIHByb3RlY3RlZCBsYXN0VmFsdWU6IGFueTtcblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIGhhbmRsZUNoYW5nZUV2ZW50KHZhbHVlOiBhbnkpIHtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMubGFzdFZhbHVlKSB7XG4gICAgICB0aGlzLmxhc3RWYWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxuICBfaGFuZGxlQmx1ckV2ZW50KCkge1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCkge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cbn1cbiJdfQ==