@softpak/components 0.0.0-beta.113 → 0.0.0-beta.115

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.
@@ -19,7 +19,6 @@ export class SpxDropdownComponent {
19
19
  this.subscriptionKeyUp?.unsubscribe();
20
20
  }
21
21
  handleSuggestionClick(valuePair) {
22
- console.log('handleSuggestionClick', valuePair);
23
22
  this.select(valuePair);
24
23
  }
25
24
  listenToKeyUp() {
@@ -92,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
92
91
  }], spxSelect: [{
93
92
  type: Output
94
93
  }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1kcm9wZG93bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWdDLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFcEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBMkIvQyxNQUFNLE9BQU8sb0JBQW9CO0lBekJqQztRQTBCWSxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNuQixtQkFBYyxHQUE4QyxFQUFFLENBQUM7UUFDOUQsY0FBUyxHQUFvQyxJQUFJLFlBQVksRUFBcUIsQ0FBQztLQXlDOUY7SUF0Q0MsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxTQUFrRDtRQUN0RSxPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDdEUsSUFBSyxLQUF1QixDQUFDLEdBQUcsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDekUsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztnQkFDNUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLENBQUM7WUFDRCxJQUFLLEtBQXVCLENBQUMsR0FBRyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN4RyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO2dCQUM1QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsQ0FBQztZQUNELElBQUssS0FBdUIsQ0FBQyxHQUFHLEtBQUssT0FBTyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUMvRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUUsQ0FBQyxDQUFDO2dCQUN6RCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLE1BQU0sQ0FBQyxTQUFrRDtRQUMvRCxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqQyxDQUFDOzhHQTNDVSxvQkFBb0I7a0dBQXBCLG9CQUFvQixnTEFqQnJCOzs7Ozs7Ozs7Ozs7Ozs7T0FlTCw0REFsQkgsS0FBSyxtSEFDTCxrQkFBa0I7OzJGQW1CVCxvQkFBb0I7a0JBekJoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLElBQUk7d0JBQ0osS0FBSzt3QkFDTCxrQkFBa0I7cUJBQ25CO29CQUNELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7O09BZUw7aUJBQ047OEJBR1UsY0FBYztzQkFBdEIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdGb3IsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNweFZhbHVlUGFpciB9IGZyb20gJy4vc3B4LXZhbHVlLWludGVyZmFjZSc7XG5pbXBvcnQgeyBTcHhCdXR0b25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1idXR0b24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWRyb3Bkb3duJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgTmdGb3IsXG4gICAgU3B4QnV0dG9uQ29tcG9uZW50LFxuICBdLFxuICB0ZW1wbGF0ZTogYDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSB0ZXh0LWJsYWNrXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImFic29sdXRlIGJnLWdyYXktMTAwIGxlZnQtMCByaWdodC0wIHotMjBcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nRm9yPVwibGV0IHZhbHVlUGFpciBvZiB0aGlzLnNweFN1Z2dlc3Rpb25zOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgY2xhc3M9XCJ0ZXh0LWJsYWNrIGJsb2NrIHctZnVsbCBwLTIgYm9yZGVyIGJvcmRlci1ncmF5LTIwMCByb3VuZGVkLWxnIHNoYWRvdyBob3ZlcjpiZy1ncmF5LTIwMCBmbGV4IGl0ZW1zLWNlbnRlciB0ZXh0LWxlZnRcIlxuICAgICAgICBbY2xhc3MuYmctZ3JheS0xMDBdPVwiaSA9PT0gdGhpcy5mb2N1c1Bvc2l0aW9uXCJcbiAgICAgICAgW2NsYXNzLmJnLXdoaXRlXT1cImkgIT09IHRoaXMuZm9jdXNQb3NpdGlvblwiXG4gICAgICAgIChjbGljayk9XCJ0aGlzLmhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZVBhaXIpXCJcbiAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiLTFcIlxuICAgICAgICBbYXR0ci50eXBlXT1cIididXR0b24nXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LTEgcC0xIGZvbnQtYm9sZCB0ZXh0LWxnXCI+e3t2YWx1ZVBhaXI/LmRlc2NyaXB0aW9ufX08L2Rpdj5cbiAgICAgIDxzcHgtYnV0dG9uIChzcHhDbGljayk9XCJ0aGlzLmhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZVBhaXIpXCIgW3NweFR5cGVdPVwiJ2J1dHRvbidcIiBbc3B4VGFiSW5kZXhdPVwiLTFcIj5TZWxlY3Q8L3NweC1idXR0b24+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+YCxcbn0pXG5leHBvcnQgY2xhc3MgU3B4RHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJvdGVjdGVkIGZvY3VzUG9zaXRpb24gPSAwO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGJvb2xlYW4gfCBudW1iZXIgfCBzdHJpbmc+W10gPSBbXTtcbiAgQE91dHB1dCgpIHNweFNlbGVjdDogRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+KCk7XG4gIHN1YnNjcmlwdGlvbktleVVwPzogU3Vic2NyaXB0aW9uO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuVG9LZXlVcCgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IDA7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbktleVVwPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgaGFuZGxlU3VnZ2VzdGlvbkNsaWNrKHZhbHVlUGFpcjogU3B4VmFsdWVQYWlyPHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4+KSB7XG4gICAgY29uc29sZS5sb2coJ2hhbmRsZVN1Z2dlc3Rpb25DbGljaycsIHZhbHVlUGFpcik7XG4gICAgdGhpcy5zZWxlY3QodmFsdWVQYWlyKTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVG9LZXlVcCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbktleVVwID0gZnJvbUV2ZW50KHdpbmRvdywgJ2tleXVwJykuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdBcnJvd1VwJyAmJiB0aGlzLmZvY3VzUG9zaXRpb24gPiAwKSB7XG4gICAgICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IHRoaXMuZm9jdXNQb3NpdGlvbiAtIDE7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgICBpZiAoKGV2ZW50IGFzIEtleWJvYXJkRXZlbnQpLmtleSA9PT0gJ0Fycm93RG93bicgJiYgdGhpcy5mb2N1c1Bvc2l0aW9uIDwgdGhpcy5zcHhTdWdnZXN0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IHRoaXMuZm9jdXNQb3NpdGlvbiArIDE7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgICBpZiAoKGV2ZW50IGFzIEtleWJvYXJkRXZlbnQpLmtleSA9PT0gJ0VudGVyJyAmJiB0aGlzLnNweFN1Z2dlc3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5zZWxlY3QodGhpcy5zcHhTdWdnZXN0aW9ucy5hdCh0aGlzLmZvY3VzUG9zaXRpb24pISk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdCh2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPik6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNQb3NpdGlvbiA9IDA7XG4gICAgdGhpcy5zcHhTZWxlY3QuZW1pdCh2YWx1ZVBhaXIpO1xuICB9XG59XG4iXX0=
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1kcm9wZG93bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWdDLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFcEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBMkIvQyxNQUFNLE9BQU8sb0JBQW9CO0lBekJqQztRQTBCWSxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNuQixtQkFBYyxHQUE4QyxFQUFFLENBQUM7UUFDOUQsY0FBUyxHQUFvQyxJQUFJLFlBQVksRUFBcUIsQ0FBQztLQXdDOUY7SUFyQ0MsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxTQUFrRDtRQUN0RSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3RFLElBQUssS0FBdUIsQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3pFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7Z0JBQzVDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixDQUFDO1lBQ0QsSUFBSyxLQUF1QixDQUFDLEdBQUcsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDeEcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztnQkFDNUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLENBQUM7WUFDRCxJQUFLLEtBQXVCLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDL0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFFLENBQUMsQ0FBQztnQkFDekQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsU0FBa0Q7UUFDL0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQzs4R0ExQ1Usb0JBQW9CO2tHQUFwQixvQkFBb0IsZ0xBakJyQjs7Ozs7Ozs7Ozs7Ozs7O09BZUwsNERBbEJILEtBQUssbUhBQ0wsa0JBQWtCOzsyRkFtQlQsb0JBQW9CO2tCQXpCaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxJQUFJO3dCQUNKLEtBQUs7d0JBQ0wsa0JBQWtCO3FCQUNuQjtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztPQWVMO2lCQUNOOzhCQUdVLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3B4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtYnV0dG9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1kcm9wZG93bicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIE5nRm9yLFxuICAgIFNweEJ1dHRvbkNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgdGV4dC1ibGFja1wiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJhYnNvbHV0ZSBiZy1ncmF5LTEwMCBsZWZ0LTAgcmlnaHQtMCB6LTIwXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0Zvcj1cImxldCB2YWx1ZVBhaXIgb2YgdGhpcy5zcHhTdWdnZXN0aW9uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgIGNsYXNzPVwidGV4dC1ibGFjayBibG9jayB3LWZ1bGwgcC0yIGJvcmRlciBib3JkZXItZ3JheS0yMDAgcm91bmRlZC1sZyBzaGFkb3cgaG92ZXI6YmctZ3JheS0yMDAgZmxleCBpdGVtcy1jZW50ZXIgdGV4dC1sZWZ0XCJcbiAgICAgICAgW2NsYXNzLmJnLWdyYXktMTAwXT1cImkgPT09IHRoaXMuZm9jdXNQb3NpdGlvblwiXG4gICAgICAgIFtjbGFzcy5iZy13aGl0ZV09XCJpICE9PSB0aGlzLmZvY3VzUG9zaXRpb25cIlxuICAgICAgICAoY2xpY2spPVwidGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cIi0xXCJcbiAgICAgICAgW2F0dHIudHlwZV09XCInYnV0dG9uJ1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xIHAtMSBmb250LWJvbGQgdGV4dC1sZ1wiPnt7dmFsdWVQYWlyPy5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICA8c3B4LWJ1dHRvbiAoc3B4Q2xpY2spPVwidGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiIFtzcHhUeXBlXT1cIididXR0b24nXCIgW3NweFRhYkluZGV4XT1cIi0xXCI+U2VsZWN0PC9zcHgtYnV0dG9uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PmAsXG59KVxuZXhwb3J0IGNsYXNzIFNweERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCBmb2N1c1Bvc2l0aW9uID0gMDtcbiAgQElucHV0KCkgc3B4U3VnZ2VzdGlvbnM6IFNweFZhbHVlUGFpcjxib29sZWFuIHwgbnVtYmVyIHwgc3RyaW5nPltdID0gW107XG4gIEBPdXRwdXQoKSBzcHhTZWxlY3Q6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpO1xuICBzdWJzY3JpcHRpb25LZXlVcD86IFN1YnNjcmlwdGlvbjtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvS2V5VXAoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25LZXlVcD8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPikge1xuICAgIHRoaXMuc2VsZWN0KHZhbHVlUGFpcik7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRvS2V5VXAoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25LZXlVcCA9IGZyb21FdmVudCh3aW5kb3csICdrZXl1cCcpLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIGlmICgoZXZlbnQgYXMgS2V5Ym9hcmRFdmVudCkua2V5ID09PSAnQXJyb3dVcCcgJiYgdGhpcy5mb2N1c1Bvc2l0aW9uID4gMCkge1xuICAgICAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSB0aGlzLmZvY3VzUG9zaXRpb24gLSAxO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdBcnJvd0Rvd24nICYmIHRoaXMuZm9jdXNQb3NpdGlvbiA8IHRoaXMuc3B4U3VnZ2VzdGlvbnMubGVuZ3RoIC0gMSkge1xuICAgICAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSB0aGlzLmZvY3VzUG9zaXRpb24gKyAxO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdFbnRlcicgJiYgdGhpcy5zcHhTdWdnZXN0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0KHRoaXMuc3B4U3VnZ2VzdGlvbnMuYXQodGhpcy5mb2N1c1Bvc2l0aW9uKSEpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3QodmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8c3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj4pOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICAgIHRoaXMuc3B4U2VsZWN0LmVtaXQodmFsdWVQYWlyKTtcbiAgfVxufVxuIl19
@@ -206,7 +206,7 @@ export class SpxInputDateComponent {
206
206
  <spx-suggestion
207
207
  *ngFor="let valuePair of spxSuggestions[spxSelectStep]"
208
208
  (click)="this.handleSuggestionClick(valuePair.value)">{{valuePair?.description}}</spx-suggestion>
209
- </div>`, isInline: true, styles: [":host{display:block}.spx-input-date__input{background-color:transparent;border:1px solid #979797;border-radius:4px;color:var(--spx-input--color, rgba(0, 0, 0, .9));box-sizing:border-box;font-size:16px;margin-right:10px;padding:6px;text-align:center;width:100%}.spx-input-date__input:active{transform:scale(.95)}.spx-input-date__input:focus{border:var(--spx-input-box--focus--border, 1px solid rgb(115, 168, 210));border-radius:4px;outline:none}.spx-input-date__control-label{align-items:center;color:#000000b3;display:inline-grid;font-size:13px;letter-spacing:1px}.spx-input-date__input::-webkit-outer-spin-button,.spx-input-date__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.spx-input-date__input[type=number]{-moz-appearance:textfield}.spx-input-date__suggestions,.spx-input-date__controls{display:grid;grid-gap:8px;grid-template-columns:repeat(4,1fr);margin-top:8px}\n"], 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: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxSelected"] }] }); }
209
+ </div>`, isInline: true, styles: [":host{display:block}.spx-input-date__input{background-color:transparent;border:1px solid #979797;border-radius:4px;color:var(--spx-input--color, rgba(0, 0, 0, .9));box-sizing:border-box;font-size:16px;margin-right:10px;padding:6px;text-align:center;width:100%}.spx-input-date__input:active{transform:scale(.95)}.spx-input-date__input:focus{border:var(--spx-input-box--focus--border, 1px solid rgb(115, 168, 210));border-radius:4px;outline:none}.spx-input-date__control-label{align-items:center;color:#000000b3;display:inline-grid;font-size:13px;letter-spacing:1px}.spx-input-date__input::-webkit-outer-spin-button,.spx-input-date__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.spx-input-date__input[type=number]{-moz-appearance:textfield}.spx-input-date__suggestions,.spx-input-date__controls{display:grid;grid-gap:8px;grid-template-columns:repeat(4,1fr);margin-top:8px}\n"], 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: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxFocused", "spxSelected"] }] }); }
210
210
  }
211
211
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputDateComponent, decorators: [{
212
212
  type: Component,
@@ -1,35 +1,64 @@
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() {
8
+ this.focusPosition = 0;
7
9
  this.spxFocused = true;
8
10
  this.spxShowLabel = true;
9
11
  this.spxReadonly = false;
10
12
  this.spxSuggestions = [];
11
13
  this.spxChange = new EventEmitter();
12
14
  this.spxFocus = new EventEmitter();
13
- this.spxWasInternalUpdate = false;
14
15
  }
15
- async spxSetFocus() {
16
- // this.elYear.focus();
16
+ spxFocusIn() {
17
+ this.listenToKeyUp();
18
+ this.focusPosition = 0;
17
19
  }
18
- handleSuggestionClick(value) {
19
- this.value = value;
20
- this.spxChange.emit(this.value);
20
+ spxFocusOut() {
21
+ this.subscriptionKeyUp?.unsubscribe();
22
+ }
23
+ ngOnChanges(changes) {
24
+ this.focusPosition = 0;
25
+ }
26
+ handleSuggestionClick(valuePair) {
27
+ this.select(valuePair);
28
+ }
29
+ select(valuePair) {
30
+ this.focusPosition = 0;
31
+ this.value = valuePair;
32
+ this.spxChange.emit(valuePair);
33
+ }
34
+ listenToKeyUp() {
35
+ this.subscriptionKeyUp = fromEvent(window, 'keyup').subscribe((event) => {
36
+ if (event.key === 'ArrowUp' && this.focusPosition > 0) {
37
+ this.focusPosition = this.focusPosition - 1;
38
+ event.preventDefault();
39
+ }
40
+ if (event.key === 'ArrowDown' && this.focusPosition < this.spxSuggestions.length - 1) {
41
+ this.focusPosition = this.focusPosition + 1;
42
+ event.preventDefault();
43
+ }
44
+ if (event.key === 'Enter' && this.spxSuggestions.length > 0) {
45
+ this.select(this.spxSuggestions.at(this.focusPosition));
46
+ event.preventDefault();
47
+ }
48
+ });
21
49
  }
22
50
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputRadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- 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" }, ngImport: i0, template: `<div class="grid grid-cols-2 gap-2"
51
+ 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"
24
52
  [class.mt-3]="this.spxShowLabel">
25
53
  <spx-suggestion
26
- *ngFor="let valuePair of this.spxSuggestions"
54
+ *ngFor="let valuePair of this.spxSuggestions; let i = index"
27
55
  [spxDisabled]="this.spxReadonly"
56
+ [spxFocused]="this.spxFocused && i === this.focusPosition"
28
57
  [spxSelected]="this.value?.value === this.valuePair?.value"
29
58
  (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
30
59
  {{this.valuePair?.description}}
31
60
  </spx-suggestion>
32
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxSelected"] }] }); }
61
+ </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"] }] }); }
33
62
  }
34
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputRadioComponent, decorators: [{
35
64
  type: Component,
@@ -43,8 +72,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
43
72
  template: `<div class="grid grid-cols-2 gap-2"
44
73
  [class.mt-3]="this.spxShowLabel">
45
74
  <spx-suggestion
46
- *ngFor="let valuePair of this.spxSuggestions"
75
+ *ngFor="let valuePair of this.spxSuggestions; let i = index"
47
76
  [spxDisabled]="this.spxReadonly"
77
+ [spxFocused]="this.spxFocused && i === this.focusPosition"
48
78
  [spxSelected]="this.value?.value === this.valuePair?.value"
49
79
  (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
50
80
  {{this.valuePair?.description}}
@@ -70,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
70
100
  }], spxFocus: [{
71
101
  type: Output
72
102
  }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LXJhZGlvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC1yYWRpby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBb0I1RSxNQUFNLE9BQU8sc0JBQXNCO0lBbEJuQztRQXNCVyxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLG1CQUFjLEdBQXdCLEVBQUUsQ0FBQztRQUV4QyxjQUFTLEdBQW9DLElBQUksWUFBWSxFQUFxQixDQUFDO1FBQ25GLGFBQVEsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNsRSx5QkFBb0IsR0FBRyxLQUFLLENBQUM7S0FTOUI7SUFSQyxLQUFLLENBQUMsV0FBVztRQUNmLHVCQUF1QjtJQUN6QixDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBd0I7UUFDNUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7OEdBbkJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDRVQVh2Qjs7Ozs7Ozs7O1dBU0QsNERBWlAsS0FBSyxtSEFDTCxzQkFBc0I7OzJGQWFiLHNCQUFzQjtrQkFsQmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxLQUFLO3dCQUNMLHNCQUFzQjtxQkFDdkI7b0JBQ0QsUUFBUSxFQUFFOzs7Ozs7Ozs7V0FTRDtpQkFDVjs4QkFHVSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcbmltcG9ydCB7IE5nRm9yIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNweFN1Z2dlc3Rpb25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1zdWdnZXN0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWlucHV0LXJhZGlvJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nRm9yLFxuICAgIFNweFN1Z2dlc3Rpb25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTIgZ2FwLTJcIlxuICAgIFtjbGFzcy5tdC0zXT1cInRoaXMuc3B4U2hvd0xhYmVsXCI+XG4gICAgICA8c3B4LXN1Z2dlc3Rpb25cbiAgICAgICAgKm5nRm9yPVwibGV0IHZhbHVlUGFpciBvZiB0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgICAgW3NweERpc2FibGVkXT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgICBbc3B4U2VsZWN0ZWRdPVwidGhpcy52YWx1ZT8udmFsdWUgPT09IHRoaXMudmFsdWVQYWlyPy52YWx1ZVwiXG4gICAgICAgIChjbGljayk9XCJ0aGlzLnNweFJlYWRvbmx5ID8gdW5kZWZpbmVkIDogdGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiPlxuICAgICAgICB7e3RoaXMudmFsdWVQYWlyPy5kZXNjcmlwdGlvbn19XG4gICAgICA8L3NweC1zdWdnZXN0aW9uPlxuICAgIDwvZGl2PmAsXG59KVxuZXhwb3J0IGNsYXNzIFNweElucHV0UmFkaW9Db21wb25lbnQge1xuICAvLyBARWxlbWVudCgpIGVsITogSFRNTEVsZW1lbnQ7XG4gIEBJbnB1dCgpIHNweE5hbWU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFZhbGlkYXRvcnMhOiBhbnlbXTtcbiAgQElucHV0KCkgc3B4Rm9jdXNlZCA9IHRydWU7XG4gIEBJbnB1dCgpIHNweFNob3dMYWJlbCA9IHRydWU7XG4gIEBJbnB1dCgpIHNweFJlYWRvbmx5ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFN1Z2dlc3Rpb25zOiBTcHhWYWx1ZVBhaXI8YW55PltdID0gW107XG4gIEBJbnB1dCgpIHZhbHVlPzogU3B4VmFsdWVQYWlyPGFueT47XG4gIEBPdXRwdXQoKSBzcHhDaGFuZ2U6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpO1xuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgc3B4V2FzSW50ZXJuYWxVcGRhdGUgPSBmYWxzZTtcbiAgYXN5bmMgc3B4U2V0Rm9jdXMoKSB7XG4gICAgLy8gdGhpcy5lbFllYXIuZm9jdXMoKTtcbiAgfVxuXG4gIGhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZTogU3B4VmFsdWVQYWlyPGFueT4pIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxufSJdfQ==
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LXJhZGlvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC1yYWRpby5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFdEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQXFCL0MsTUFBTSxPQUFPLHNCQUFzQjtJQW5CbkM7UUFvQlksa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFJbkIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUF3QixFQUFFLENBQUM7UUFFeEMsY0FBUyxHQUFvQyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUNuRixhQUFRLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7S0F5Q25FO0lBdkNDLFVBQVU7UUFDUixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQscUJBQXFCLENBQUMsU0FBNEI7UUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRU8sTUFBTSxDQUFDLFNBQWtEO1FBQy9ELElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3RFLElBQUssS0FBdUIsQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3pFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7Z0JBQzVDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixDQUFDO1lBQ0QsSUFBSyxLQUF1QixDQUFDLEdBQUcsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDeEcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztnQkFDNUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLENBQUM7WUFDRCxJQUFLLEtBQXVCLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDL0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFFLENBQUMsQ0FBQztnQkFDekQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBbkRVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlXQVp2Qjs7Ozs7Ozs7OztXQVVELDREQWJQLEtBQUssbUhBQ0wsc0JBQXNCOzsyRkFjYixzQkFBc0I7a0JBbkJsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsS0FBSzt3QkFDTCxzQkFBc0I7cUJBQ3ZCO29CQUNELFFBQVEsRUFBRTs7Ozs7Ozs7OztXQVVEO2lCQUNWOzhCQUlVLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3B4U3VnZ2VzdGlvbkNvbXBvbmVudCB9IGZyb20gJ0Bzb2Z0cGFrL2NvbXBvbmVudHMvc3B4LXN1Z2dlc3Rpb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWlucHV0LXJhZGlvJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nRm9yLFxuICAgIFNweFN1Z2dlc3Rpb25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTIgZ2FwLTJcIlxuICAgIFtjbGFzcy5tdC0zXT1cInRoaXMuc3B4U2hvd0xhYmVsXCI+XG4gICAgICA8c3B4LXN1Z2dlc3Rpb25cbiAgICAgICAgKm5nRm9yPVwibGV0IHZhbHVlUGFpciBvZiB0aGlzLnNweFN1Z2dlc3Rpb25zOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgW3NweERpc2FibGVkXT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWQgJiYgaSA9PT0gdGhpcy5mb2N1c1Bvc2l0aW9uXCJcbiAgICAgICAgW3NweFNlbGVjdGVkXT1cInRoaXMudmFsdWU/LnZhbHVlID09PSB0aGlzLnZhbHVlUGFpcj8udmFsdWVcIlxuICAgICAgICAoY2xpY2spPVwidGhpcy5zcHhSZWFkb25seSA/IHVuZGVmaW5lZCA6IHRoaXMuaGFuZGxlU3VnZ2VzdGlvbkNsaWNrKHZhbHVlUGFpcilcIj5cbiAgICAgICAge3t0aGlzLnZhbHVlUGFpcj8uZGVzY3JpcHRpb259fVxuICAgICAgPC9zcHgtc3VnZ2VzdGlvbj5cbiAgICA8L2Rpdj5gLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dFJhZGlvQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIGZvY3VzUG9zaXRpb24gPSAwO1xuICAvLyBARWxlbWVudCgpIGVsITogSFRNTEVsZW1lbnQ7XG4gIEBJbnB1dCgpIHNweE5hbWU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFZhbGlkYXRvcnMhOiBhbnlbXTtcbiAgQElucHV0KCkgc3B4Rm9jdXNlZCA9IHRydWU7XG4gIEBJbnB1dCgpIHNweFNob3dMYWJlbCA9IHRydWU7XG4gIEBJbnB1dCgpIHNweFJlYWRvbmx5ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFN1Z2dlc3Rpb25zOiBTcHhWYWx1ZVBhaXI8YW55PltdID0gW107XG4gIEBJbnB1dCgpIHZhbHVlPzogU3B4VmFsdWVQYWlyPGFueT47XG4gIEBPdXRwdXQoKSBzcHhDaGFuZ2U6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpO1xuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25LZXlVcD86IFN1YnNjcmlwdGlvbjtcbiAgc3B4Rm9jdXNJbigpIHtcbiAgICB0aGlzLmxpc3RlblRvS2V5VXAoKTtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICB9XG5cbiAgc3B4Rm9jdXNPdXQoKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25LZXlVcD8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICB9XG5cbiAgaGFuZGxlU3VnZ2VzdGlvbkNsaWNrKHZhbHVlUGFpcjogU3B4VmFsdWVQYWlyPGFueT4pIHtcbiAgICB0aGlzLnNlbGVjdCh2YWx1ZVBhaXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3QodmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8c3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj4pOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZVBhaXI7XG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh2YWx1ZVBhaXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Ub0tleVVwKCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uS2V5VXAgPSBmcm9tRXZlbnQod2luZG93LCAna2V5dXAnKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICBpZiAoKGV2ZW50IGFzIEtleWJvYXJkRXZlbnQpLmtleSA9PT0gJ0Fycm93VXAnICYmIHRoaXMuZm9jdXNQb3NpdGlvbiA+IDApIHtcbiAgICAgICAgdGhpcy5mb2N1c1Bvc2l0aW9uID0gdGhpcy5mb2N1c1Bvc2l0aW9uIC0gMTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIH1cbiAgICAgIGlmICgoZXZlbnQgYXMgS2V5Ym9hcmRFdmVudCkua2V5ID09PSAnQXJyb3dEb3duJyAmJiB0aGlzLmZvY3VzUG9zaXRpb24gPCB0aGlzLnNweFN1Z2dlc3Rpb25zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgdGhpcy5mb2N1c1Bvc2l0aW9uID0gdGhpcy5mb2N1c1Bvc2l0aW9uICsgMTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIH1cbiAgICAgIGlmICgoZXZlbnQgYXMgS2V5Ym9hcmRFdmVudCkua2V5ID09PSAnRW50ZXInICYmIHRoaXMuc3B4U3VnZ2VzdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnNlbGVjdCh0aGlzLnNweFN1Z2dlc3Rpb25zLmF0KHRoaXMuZm9jdXNQb3NpdGlvbikhKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufSJdfQ==
@@ -58,17 +58,19 @@ export class SpxInputComponent {
58
58
  handleFocus() {
59
59
  this.spxFocus.emit();
60
60
  this.spxFocused = true;
61
- // this.elBox.spxSetFocus();
62
61
  }
63
62
  handleSearch() {
64
63
  this.spxSearch.emit();
65
64
  }
66
- setFocus() {
65
+ setFocusIn() {
67
66
  this.spxFocused = true;
68
67
  this.passFocusToControl();
69
68
  }
70
69
  setFocusOut() {
71
70
  this.spxFocused = false;
71
+ if (this.spxType === SpxInputTypeEnum.radio) {
72
+ this.radioInput?.spxFocusOut();
73
+ }
72
74
  }
73
75
  handleEdit() {
74
76
  this.spxEdit.emit();
@@ -85,6 +87,9 @@ export class SpxInputComponent {
85
87
  case SpxInputTypeEnum.overlayNumber:
86
88
  this.textInput?.spxSetFocus();
87
89
  break;
90
+ case SpxInputTypeEnum.radio:
91
+ this.radioInput?.spxFocusIn();
92
+ break;
88
93
  }
89
94
  }
90
95
  writeValue(value) {
@@ -112,7 +117,7 @@ export class SpxInputComponent {
112
117
  useExisting: SpxInputComponent,
113
118
  multi: true
114
119
  }
115
- ], viewQueries: [{ propertyName: "textInput", first: true, predicate: SpxInputTextComponent, descendants: true }], 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
116
121
  [spxFocused]="this.spxFocused"
117
122
  [spxLabel]="this.spxLabel"
118
123
  [spxReadonly]="this.spxReadonly"
@@ -128,7 +133,7 @@ export class SpxInputComponent {
128
133
  (spxClear)="this.handleClear()"
129
134
  (spxEdit)="this.handleEdit()"
130
135
  (spxHelp)="this.handleHelp()"
131
- (spxFocus)="this.setFocus()"
136
+ (spxFocus)="this.setFocusIn()"
132
137
  (spxFocusOut)="this.setFocusOut()"
133
138
  (spxSearch)="this.handleSearch()">
134
139
  <div controls>
@@ -189,6 +194,7 @@ export class SpxInputComponent {
189
194
  [value]="this.value"
190
195
  ></spx-input-number>
191
196
  <spx-input-radio
197
+ #radioInput
192
198
  *ngIf="this.spxType === 'radio'"
193
199
  (spxChange)="this.handleChange($event)"
194
200
  (spxFocus)="this.handleFocus()"
@@ -246,7 +252,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
246
252
  (spxClear)="this.handleClear()"
247
253
  (spxEdit)="this.handleEdit()"
248
254
  (spxHelp)="this.handleHelp()"
249
- (spxFocus)="this.setFocus()"
255
+ (spxFocus)="this.setFocusIn()"
250
256
  (spxFocusOut)="this.setFocusOut()"
251
257
  (spxSearch)="this.handleSearch()">
252
258
  <div controls>
@@ -307,6 +313,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
307
313
  [value]="this.value"
308
314
  ></spx-input-number>
309
315
  <spx-input-radio
316
+ #radioInput
310
317
  *ngIf="this.spxType === 'radio'"
311
318
  (spxChange)="this.handleChange($event)"
312
319
  (spxFocus)="this.handleFocus()"
@@ -389,10 +396,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
389
396
  }], textInput: [{
390
397
  type: ViewChild,
391
398
  args: [SpxInputTextComponent]
399
+ }], radioInput: [{
400
+ type: ViewChild,
401
+ args: [SpxInputRadioComponent]
392
402
  }], spxFocused: [{
393
403
  type: Input
394
404
  }], _handleBlurEvent: [{
395
405
  type: HostListener,
396
406
  args: ['focusout']
397
407
  }] } });
398
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFzSHpELE1BQU0sT0FBTyxpQkFBaUI7SUFwSDlCO1FBcUhXLGFBQVEsR0FBVyxPQUFPLENBQUM7UUFJM0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFHckIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcs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T0FBTztzQkFBaEIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDMkIsU0FBUztzQkFBMUMsU0FBUzt1QkFBQyxxQkFBcUI7Z0JBQ3ZCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBNEVOLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3B4SW5wdXRCb3hDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IFNweElucHV0VGV4dENvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LXRleHQuY29tcG9uZW50JztcbmltcG9ydCB7IFNweFZhbHVlUGFpciB9IGZyb20gJy4vc3B4LXZhbHVlLWludGVyZmFjZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNweElucHV0RGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vc3B4LWlucHV0LWRhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IFNweElucHV0RmxvYXRDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1mbG9hdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3B4SW5wdXROdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1udW1iZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNweElucHV0UmFkaW9Db21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1yYWRpby5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3B4SW5wdXRUeXBlRW51bSB9IGZyb20gJy4vc3B4LWlucHV0LXR5cGUuZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1pbnB1dCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGhvc3Q6IHtcbiAgICAnKHNweENoYW5nZSknOiAnaGFuZGxlQ2hhbmdlRXZlbnQoJGV2ZW50KSdcbiAgfSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgU3B4SW5wdXRCb3hDb21wb25lbnQsXG4gICAgU3B4SW5wdXREYXRlQ29tcG9uZW50LFxuICAgIFNweElucHV0RmxvYXRDb21wb25lbnQsXG4gICAgU3B4SW5wdXROdW1iZXJDb21wb25lbnQsXG4gICAgU3B4SW5wdXRSYWRpb0NvbXBvbmVudCxcbiAgICBTcHhJbnB1dFRleHRDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IFNweElucHV0Q29tcG9uZW50LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG4gIHRlbXBsYXRlOiBgPHNweC1pbnB1dC1ib3hcbiAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcbiAgW3NweExhYmVsXT1cInRoaXMuc3B4TGFiZWxcIlxuICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXG4gIFtzcHhSZXF1aXJlZF09XCJ0aGlzLnNweFJlcXVpcmVkXCJcbiAgW3NweFZhbHVlXT1cInRoaXMudmFsdWVcIlxuICBbc3B4U2hvd0hlbHBdPVwidGhpcy5zcHhTaG93SGVscFwiXG4gIFtzcHhDb21wYWN0XT1cInRoaXMuc3B4Q29tcGFjdFwiXG4gIFtzcHhTaG93Q2xlYXJdPVwidGhpcy5zcHhTaG93Q2xlYXJcIlxuICBbc3B4U2hvd0VkaXRdPVwidGhpcy5zcHhTaG93RWRpdFwiXG4gIFtzcHhTaG93TGFiZWxdPVwidGhpcy5zcHhTaG93TGFiZWxcIlxuICBbc3B4U2hvd1NlYXJjaF09XCJ0aGlzLnNweFNob3dTZWFyY2ggPyB0aGlzLnNweFNob3dTZWFyY2ggOiB0aGlzLnNweFR5cGUgPT09ICdhdXRvY29tcGxldGUnXCJcbiAgW3NweFNob3dWYWxpZGF0aW9uTWVzc2FnZXNdPVwidGhpcy5zcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXCJcbiAgKHNweENsZWFyKT1cInRoaXMuaGFuZGxlQ2xlYXIoKVwiXG4gIChzcHhFZGl0KT1cInRoaXMuaGFuZGxlRWRpdCgpXCJcbiAgKHNweEhlbHApPVwidGhpcy5oYW5kbGVIZWxwKClcIlxuICAoc3B4Rm9jdXMpPVwidGhpcy5zZXRGb2N1cygpXCJcbiAgKHNweEZvY3VzT3V0KT1cInRoaXMuc2V0Rm9jdXNPdXQoKVwiXG4gIChzcHhTZWFyY2gpPVwidGhpcy5oYW5kbGVTZWFyY2goKVwiPlxuICA8ZGl2IGNvbnRyb2xzPlxuICAgIDxzcHgtaW5wdXQtdGV4dFxuICAgICAgKm5nSWY9XCJ0aGlzLnNweFR5cGUgPT09ICdhdXRvY29tcGxldGUnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXknIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3RleHQnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3Bhc3N3b3JkJ1wiXG4gICAgICAoc3B4Qmx1ckZyb21DaGlsZCk9XCJ0aGlzLmhhbmRsZUJsdXIoKVwiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcbiAgICAgIFtzcHhDYXBpdGFsaXplXT1cInRoaXMuc3B4Q2FwaXRhbGl6ZVwiXG4gICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxuICAgICAgW3NweElucHV0TW9kZV09XCJ0aGlzLnNweFR5cGUgPT09ICdvdmVybGF5bnVtYmVyJyA/ICdudW1lcmljJyA6IHRoaXMuc3B4SW5wdXRNb2RlXCJcbiAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXG4gICAgICBbc3B4UGF0dGVybl09XCJ0aGlzLnNweFR5cGUgPT09ICdvdmVybGF5bnVtYmVyJyA/ICdbMC05XSonIDogdGhpcy5zcHhQYXR0ZXJuXCJcbiAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgIFtzcHhUeXBlXT1cInRoaXMuc3B4VHlwZVwiXG4gICAgICBbc3B4VmFsaWRhdG9yc109XCJ0aGlzLnNweFZhbGlkYXRvcnNcIlxuICAgICAgW3ZhbHVlXT1cInRoaXMudmFsdWVcIlxuICAgICAgPjwvc3B4LWlucHV0LXRleHQ+XG4gICAgPHNweC1pbnB1dC1kYXRlXG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ2RhdGUnXCJcbiAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoc3B4Rm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4TWF4XT1cInRoaXMuc3B4TWF4XCJcbiAgICAgIFtzcHhNaW5dPVwidGhpcy5zcHhNaW5cIlxuICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcbiAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTZWxlY3REYXldPVwidGhpcy5zcHhTZWxlY3REYXlcIlxuICAgICAgW3NweFNlbGVjdE1vbnRoXT1cInRoaXMuc3B4U2VsZWN0TW9udGhcIlxuICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcbiAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgICA+PC9zcHgtaW5wdXQtZGF0ZT5cbiAgICA8c3B4LWlucHV0LWZsb2F0XG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ2Zsb2F0J1wiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LWZsb2F0PlxuICAgIDxzcHgtaW5wdXQtbnVtYmVyXG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ251bWJlcidcIlxuICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxuICAgICAgW3NweEF1dG9mb2N1c109XCJ0aGlzLnNweEF1dG9mb2N1c1wiXG4gICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxuICAgICAgW3NweElucHV0TW9kZV09XCJ0aGlzLnNweElucHV0TW9kZVwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LW51bWJlcj5cbiAgICA8c3B4LWlucHV0LXJhZGlvXG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ3JhZGlvJ1wiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxuICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcbiAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTaG93TGFiZWxdPVwidGhpcy5zcHhTaG93TGFiZWxcIlxuICAgICAgW3NweFN1Z2dlc3Rpb25zXT1cInRoaXMuc3B4U3VnZ2VzdGlvbnNcIlxuICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcbiAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgICA+PC9zcHgtaW5wdXQtcmFkaW8+XG4gIDwvZGl2PlxuICA8ZGl2IHZhbGlkYXRpb24tbWVzc2FnZXM+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvc3B4LWlucHV0LWJveD5gLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhJbnB1dENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNweExhYmVsOiBzdHJpbmcgPSAnbGFiZWwnO1xuICBASW5wdXQoKSBzcHhNYXg/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweE1pbj86IHN0cmluZztcbiAgQElucHV0KCkgc3B4TmFtZSE6IHN0cmluZztcbiAgQElucHV0KCkgc3B4UmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4QXV0b2ZvY3VzID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweElucHV0TW9kZT86IHN0cmluZztcbiAgQElucHV0KCkgc3B4UGF0dGVybj86IHN0cmluZztcbiAgQElucHV0KCkgc3B4UmVxdWlyZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2VsZWN0TW9udGggPSB0cnVlO1xuICBASW5wdXQoKSBzcHhTZWxlY3REYXkgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhTaG93RWRpdCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTaG93SGVscCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTaG93TGFiZWwgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhDb21wYWN0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFNob3dDbGVhciA9IHRydWU7XG4gIEBJbnB1dCgpIHNweFNob3dTZWFyY2ggPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlcz86IGJvb2xlYW4gfCBudWxsIHwgdW5kZWZpbmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFN0ZXA/OiBudW1iZXI7XG4gIEBJbnB1dCgpIHNweFN1Z2dlc3Rpb25zOiBTcHhWYWx1ZVBhaXI8Ym9vbGVhbiB8IG51bWJlciB8IHN0cmluZz5bXSA9IFtdO1xuICBASW5wdXQoKSBzcHhUeXBlOiBTcHhJbnB1dFR5cGVFbnVtID0gU3B4SW5wdXRUeXBlRW51bS50ZXh0O1xuICBASW5wdXQoKSBzcHhWYWxpZGF0b3JzITogYW55W107XG4gIEBJbnB1dCgpIHZhbHVlITogU3B4VmFsdWVQYWlyPGFueT47XG4gIEBJbnB1dCgpIHNweENhcGl0YWxpemUgPSBmYWxzZTtcbiAgQE91dHB1dCgpIHNweEJsdXI6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHNweENsZWFyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhDaGFuZ2U6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpO1xuICBAT3V0cHV0KCkgc3B4Rm9jdXM6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHNweEVkaXQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHNweEhlbHA6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHNweFNlYXJjaDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAVmlld0NoaWxkKFNweElucHV0VGV4dENvbXBvbmVudCkgdGV4dElucHV0PzogU3B4SW5wdXRUZXh0Q29tcG9uZW50O1xuICBASW5wdXQoKSBzcHhGb2N1c2VkID0gZmFsc2U7XG4gIGhhbmRsZUJsdXIoKSB7XG4gICAgdGhpcy5zcHhCbHVyLmVtaXQoKTtcbiAgfVxuXG4gIGhhbmRsZUNoYW5nZShldmVudDogYW55KSB7XG4gICAgdGhpcy52YWx1ZSA9IGV2ZW50O1xuICAgIHRoaXMuc3B4Q2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cblxuICBoYW5kbGVDbGVhcigpIHtcbiAgICB0aGlzLnNweENsZWFyLmVtaXQoKTtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xuICAgIHRoaXMucGFzc0ZvY3VzVG9Db250cm9sKCk7XG4gICAgdGhpcy52YWx1ZSA9IHtcbiAgICAgIGRlc2NyaXB0aW9uOiBudWxsLFxuICAgICAgdmFsdWU6IG51bGwsXG4gICAgfTtcbiAgICB0aGlzLnNweENoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICB9XG5cbiAgaGFuZGxlRm9jdXMoKSB7XG4gICAgdGhpcy5zcHhGb2N1cy5lbWl0KCk7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgICAvLyB0aGlzLmVsQm94LnNweFNldEZvY3VzKCk7XG4gIH1cblxuICBoYW5kbGVTZWFyY2goKSB7XG4gICAgdGhpcy5zcHhTZWFyY2guZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIHNldEZvY3VzKCkge1xuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XG4gICAgdGhpcy5wYXNzRm9jdXNUb0NvbnRyb2woKTtcbiAgfVxuXG4gIHNldEZvY3VzT3V0KCkge1xuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IGZhbHNlO1xuICB9XG5cbiAgaGFuZGxlRWRpdCgpIHtcbiAgICB0aGlzLnNweEVkaXQuZW1pdCgpO1xuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XG4gIH1cbiAgXG4gIGhhbmRsZUhlbHAoKSB7XG4gICAgdGhpcy5zcHhIZWxwLmVtaXQoKTtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXNzRm9jdXNUb0NvbnRyb2woKSB7XG4gICAgc3dpdGNoICh0aGlzLnNweFR5cGUpIHtcbiAgICAgIGNhc2UgU3B4SW5wdXRUeXBlRW51bS5hdXRvY29tcGxldGU6XG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0udGV4dDpcbiAgICAgIGNhc2UgU3B4SW5wdXRUeXBlRW51bS5vdmVybGF5TnVtYmVyOlxuICAgICAgICB0aGlzLnRleHRJbnB1dD8uc3B4U2V0Rm9jdXMoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvbkNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7LyoqL307XG4gIHByaXZhdGUgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4gey8qKi99O1xuICBwcm90ZWN0ZWQgbGFzdFZhbHVlOiBhbnk7XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy52YWx1ZSA9IHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBoYW5kbGVDaGFuZ2VFdmVudCh2YWx1ZTogYW55KSB7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLmxhc3RWYWx1ZSkge1xuICAgICAgdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcbiAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JylcbiAgX2hhbmRsZUJsdXJFdmVudCgpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG59XG4iXX0=
408
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUF1SHpELE1BQU0sT0FBTyxpQkFBaUI7SUFySDlCO1FBc0hXLGFBQVEsR0FBVyxPQUFPLENBQUM7UUFJM0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFHckIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcs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QUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0cseUJBQXlCO3NCQUFqQyxLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNJLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQzJCLFNBQVM7c0JBQTFDLFNBQVM7dUJBQUMscUJBQXFCO2dCQUNHLFVBQVU7c0JBQTVDLFNBQVM7dUJBQUMsc0JBQXNCO2dCQUN4QixVQUFVO3NCQUFsQixLQUFLO2dCQWtGTixnQkFBZ0I7c0JBRGYsWUFBWTt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNweElucHV0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhJbnB1dFRleHRDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTcHhJbnB1dERhdGVDb21wb25lbnQgfSBmcm9tICcuL3NweC1pbnB1dC1kYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhJbnB1dEZsb2F0Q29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtZmxvYXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNweElucHV0TnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtbnVtYmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTcHhJbnB1dFJhZGlvQ29tcG9uZW50IH0gZnJvbSAnLi9zcHgtaW5wdXQtcmFkaW8uY29tcG9uZW50JztcbmltcG9ydCB7IFNweElucHV0VHlwZUVudW0gfSBmcm9tICcuL3NweC1pbnB1dC10eXBlLmVudW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHgtaW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJyhzcHhDaGFuZ2UpJzogJ2hhbmRsZUNoYW5nZUV2ZW50KCRldmVudCknXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIFNweElucHV0Qm94Q29tcG9uZW50LFxuICAgIFNweElucHV0RGF0ZUNvbXBvbmVudCxcbiAgICBTcHhJbnB1dEZsb2F0Q29tcG9uZW50LFxuICAgIFNweElucHV0TnVtYmVyQ29tcG9uZW50LFxuICAgIFNweElucHV0UmFkaW9Db21wb25lbnQsXG4gICAgU3B4SW5wdXRUZXh0Q29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBTcHhJbnB1dENvbXBvbmVudCxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLFxuICB0ZW1wbGF0ZTogYDxzcHgtaW5wdXQtYm94XG4gIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gIFtzcHhMYWJlbF09XCJ0aGlzLnNweExhYmVsXCJcbiAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICBbc3B4UmVxdWlyZWRdPVwidGhpcy5zcHhSZXF1aXJlZFwiXG4gIFtzcHhWYWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgW3NweFNob3dIZWxwXT1cInRoaXMuc3B4U2hvd0hlbHBcIlxuICBbc3B4Q29tcGFjdF09XCJ0aGlzLnNweENvbXBhY3RcIlxuICBbc3B4U2hvd0NsZWFyXT1cInRoaXMuc3B4U2hvd0NsZWFyXCJcbiAgW3NweFNob3dFZGl0XT1cInRoaXMuc3B4U2hvd0VkaXRcIlxuICBbc3B4U2hvd0xhYmVsXT1cInRoaXMuc3B4U2hvd0xhYmVsXCJcbiAgW3NweFNob3dTZWFyY2hdPVwidGhpcy5zcHhTaG93U2VhcmNoID8gdGhpcy5zcHhTaG93U2VhcmNoIDogdGhpcy5zcHhUeXBlID09PSAnYXV0b2NvbXBsZXRlJ1wiXG4gIFtzcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXT1cInRoaXMuc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc1wiXG4gIChzcHhDbGVhcik9XCJ0aGlzLmhhbmRsZUNsZWFyKClcIlxuICAoc3B4RWRpdCk9XCJ0aGlzLmhhbmRsZUVkaXQoKVwiXG4gIChzcHhIZWxwKT1cInRoaXMuaGFuZGxlSGVscCgpXCJcbiAgKHNweEZvY3VzKT1cInRoaXMuc2V0Rm9jdXNJbigpXCJcbiAgKHNweEZvY3VzT3V0KT1cInRoaXMuc2V0Rm9jdXNPdXQoKVwiXG4gIChzcHhTZWFyY2gpPVwidGhpcy5oYW5kbGVTZWFyY2goKVwiPlxuICA8ZGl2IGNvbnRyb2xzPlxuICAgIDxzcHgtaW5wdXQtdGV4dFxuICAgICAgKm5nSWY9XCJ0aGlzLnNweFR5cGUgPT09ICdhdXRvY29tcGxldGUnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXknIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ292ZXJsYXludW1iZXInIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3RleHQnIHx8IHRoaXMuc3B4VHlwZSA9PT0gJ3Bhc3N3b3JkJ1wiXG4gICAgICAoc3B4Qmx1ckZyb21DaGlsZCk9XCJ0aGlzLmhhbmRsZUJsdXIoKVwiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcbiAgICAgIFtzcHhDYXBpdGFsaXplXT1cInRoaXMuc3B4Q2FwaXRhbGl6ZVwiXG4gICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxuICAgICAgW3NweElucHV0TW9kZV09XCJ0aGlzLnNweFR5cGUgPT09ICdvdmVybGF5bnVtYmVyJyA/ICdudW1lcmljJyA6IHRoaXMuc3B4SW5wdXRNb2RlXCJcbiAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXG4gICAgICBbc3B4UGF0dGVybl09XCJ0aGlzLnNweFR5cGUgPT09ICdvdmVybGF5bnVtYmVyJyA/ICdbMC05XSonIDogdGhpcy5zcHhQYXR0ZXJuXCJcbiAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgIFtzcHhUeXBlXT1cInRoaXMuc3B4VHlwZVwiXG4gICAgICBbc3B4VmFsaWRhdG9yc109XCJ0aGlzLnNweFZhbGlkYXRvcnNcIlxuICAgICAgW3ZhbHVlXT1cInRoaXMudmFsdWVcIlxuICAgICAgPjwvc3B4LWlucHV0LXRleHQ+XG4gICAgPHNweC1pbnB1dC1kYXRlXG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ2RhdGUnXCJcbiAgICAgIChzcHhDaGFuZ2UpPVwidGhpcy5oYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoc3B4Rm9jdXMpPVwidGhpcy5oYW5kbGVGb2N1cygpXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4TWF4XT1cInRoaXMuc3B4TWF4XCJcbiAgICAgIFtzcHhNaW5dPVwidGhpcy5zcHhNaW5cIlxuICAgICAgW3NweE5hbWVdPVwidGhpcy5zcHhOYW1lXCJcbiAgICAgIFtzcHhSZWFkb25seV09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgIFtzcHhTZWxlY3REYXldPVwidGhpcy5zcHhTZWxlY3REYXlcIlxuICAgICAgW3NweFNlbGVjdE1vbnRoXT1cInRoaXMuc3B4U2VsZWN0TW9udGhcIlxuICAgICAgW3NweFZhbGlkYXRvcnNdPVwidGhpcy5zcHhWYWxpZGF0b3JzXCJcbiAgICAgIFt2YWx1ZV09XCJ0aGlzLnZhbHVlXCJcbiAgICA+PC9zcHgtaW5wdXQtZGF0ZT5cbiAgICA8c3B4LWlucHV0LWZsb2F0XG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ2Zsb2F0J1wiXG4gICAgICAoc3B4Q2hhbmdlKT1cInRoaXMuaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKHNweEZvY3VzKT1cInRoaXMuaGFuZGxlRm9jdXMoKVwiXG4gICAgICBbc3B4QXV0b2ZvY3VzXT1cInRoaXMuc3B4QXV0b2ZvY3VzXCJcbiAgICAgIFtzcHhGb2N1c2VkXT1cInRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LWZsb2F0PlxuICAgIDxzcHgtaW5wdXQtbnVtYmVyXG4gICAgICAqbmdJZj1cInRoaXMuc3B4VHlwZSA9PT0gJ251bWJlcidcIlxuICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxuICAgICAgW3NweEF1dG9mb2N1c109XCJ0aGlzLnNweEF1dG9mb2N1c1wiXG4gICAgICBbc3B4Rm9jdXNlZF09XCJ0aGlzLnNweEZvY3VzZWRcIlxuICAgICAgW3NweElucHV0TW9kZV09XCJ0aGlzLnNweElucHV0TW9kZVwiXG4gICAgICBbc3B4TmFtZV09XCJ0aGlzLnNweE5hbWVcIlxuICAgICAgW3NweFJlYWRvbmx5XT1cInRoaXMuc3B4UmVhZG9ubHlcIlxuICAgICAgW3NweFN0ZXBdPVwidGhpcy5zcHhTdGVwXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LW51bWJlcj5cbiAgICA8c3B4LWlucHV0LXJhZGlvXG4gICAgICAjcmFkaW9JbnB1dFxuICAgICAgKm5nSWY9XCJ0aGlzLnNweFR5cGUgPT09ICdyYWRpbydcIlxuICAgICAgKHNweENoYW5nZSk9XCJ0aGlzLmhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChzcHhGb2N1cyk9XCJ0aGlzLmhhbmRsZUZvY3VzKClcIlxuICAgICAgW3NweEZvY3VzZWRdPVwidGhpcy5zcHhGb2N1c2VkXCJcbiAgICAgIFtzcHhOYW1lXT1cInRoaXMuc3B4TmFtZVwiXG4gICAgICBbc3B4UmVhZG9ubHldPVwidGhpcy5zcHhSZWFkb25seVwiXG4gICAgICBbc3B4U2hvd0xhYmVsXT1cInRoaXMuc3B4U2hvd0xhYmVsXCJcbiAgICAgIFtzcHhTdWdnZXN0aW9uc109XCJ0aGlzLnNweFN1Z2dlc3Rpb25zXCJcbiAgICAgIFtzcHhWYWxpZGF0b3JzXT1cInRoaXMuc3B4VmFsaWRhdG9yc1wiXG4gICAgICBbdmFsdWVdPVwidGhpcy52YWx1ZVwiXG4gICAgPjwvc3B4LWlucHV0LXJhZGlvPlxuICA8L2Rpdj5cbiAgPGRpdiB2YWxpZGF0aW9uLW1lc3NhZ2VzPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L3NweC1pbnB1dC1ib3g+YCxcbn0pXG5leHBvcnQgY2xhc3MgU3B4SW5wdXRDb21wb25lbnQge1xuICBASW5wdXQoKSBzcHhMYWJlbDogc3RyaW5nID0gJ2xhYmVsJztcbiAgQElucHV0KCkgc3B4TWF4Pzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhNaW4/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFJlYWRvbmx5ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweEF1dG9mb2N1cyA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhJbnB1dE1vZGU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFBhdHRlcm4/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFJlcXVpcmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFNlbGVjdE1vbnRoID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4U2VsZWN0RGF5ID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4U2hvd0VkaXQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2hvd0hlbHAgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2hvd0xhYmVsID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4Q29tcGFjdCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTaG93Q2xlYXIgPSB0cnVlO1xuICBASW5wdXQoKSBzcHhTaG93U2VhcmNoID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFNob3dWYWxpZGF0aW9uTWVzc2FnZXM/OiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhTdGVwPzogbnVtYmVyO1xuICBASW5wdXQoKSBzcHhTdWdnZXN0aW9uczogU3B4VmFsdWVQYWlyPGJvb2xlYW4gfCBudW1iZXIgfCBzdHJpbmc+W10gPSBbXTtcbiAgQElucHV0KCkgc3B4VHlwZTogU3B4SW5wdXRUeXBlRW51bSA9IFNweElucHV0VHlwZUVudW0udGV4dDtcbiAgQElucHV0KCkgc3B4VmFsaWRhdG9ycyE6IGFueVtdO1xuICBASW5wdXQoKSB2YWx1ZSE6IFNweFZhbHVlUGFpcjxhbnk+O1xuICBASW5wdXQoKSBzcHhDYXBpdGFsaXplID0gZmFsc2U7XG4gIEBPdXRwdXQoKSBzcHhCbHVyOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgc3B4Q2hhbmdlOiBFdmVudEVtaXR0ZXI8U3B4VmFsdWVQYWlyPGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4oKTtcbiAgQE91dHB1dCgpIHNweEZvY3VzOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhFZGl0OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhIZWxwOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhTZWFyY2g6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQFZpZXdDaGlsZChTcHhJbnB1dFRleHRDb21wb25lbnQpIHRleHRJbnB1dD86IFNweElucHV0VGV4dENvbXBvbmVudDtcbiAgQFZpZXdDaGlsZChTcHhJbnB1dFJhZGlvQ29tcG9uZW50KSByYWRpb0lucHV0PzogU3B4SW5wdXRSYWRpb0NvbXBvbmVudDtcbiAgQElucHV0KCkgc3B4Rm9jdXNlZCA9IGZhbHNlO1xuICBoYW5kbGVCbHVyKCkge1xuICAgIHRoaXMuc3B4Qmx1ci5lbWl0KCk7XG4gIH1cblxuICBoYW5kbGVDaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMudmFsdWUgPSBldmVudDtcbiAgICB0aGlzLnNweENoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICB9XG5cbiAgaGFuZGxlQ2xlYXIoKSB7XG4gICAgdGhpcy5zcHhDbGVhci5lbWl0KCk7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgICB0aGlzLnBhc3NGb2N1c1RvQ29udHJvbCgpO1xuICAgIHRoaXMudmFsdWUgPSB7XG4gICAgICBkZXNjcmlwdGlvbjogbnVsbCxcbiAgICAgIHZhbHVlOiBudWxsLFxuICAgIH07XG4gICAgdGhpcy5zcHhDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGhhbmRsZUZvY3VzKCkge1xuICAgIHRoaXMuc3B4Rm9jdXMuZW1pdCgpO1xuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XG4gIH1cblxuICBoYW5kbGVTZWFyY2goKSB7XG4gICAgdGhpcy5zcHhTZWFyY2guZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIHNldEZvY3VzSW4oKSB7XG4gICAgdGhpcy5zcHhGb2N1c2VkID0gdHJ1ZTtcbiAgICB0aGlzLnBhc3NGb2N1c1RvQ29udHJvbCgpO1xuXG4gIH1cblxuICBzZXRGb2N1c091dCgpIHtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSBmYWxzZTtcbiAgICBpZiAodGhpcy5zcHhUeXBlID09PSBTcHhJbnB1dFR5cGVFbnVtLnJhZGlvKSB7XG4gICAgICB0aGlzLnJhZGlvSW5wdXQ/LnNweEZvY3VzT3V0KCk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlRWRpdCgpIHtcbiAgICB0aGlzLnNweEVkaXQuZW1pdCgpO1xuICAgIHRoaXMuc3B4Rm9jdXNlZCA9IHRydWU7XG4gIH1cbiAgXG4gIGhhbmRsZUhlbHAoKSB7XG4gICAgdGhpcy5zcHhIZWxwLmVtaXQoKTtcbiAgICB0aGlzLnNweEZvY3VzZWQgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXNzRm9jdXNUb0NvbnRyb2woKSB7XG4gICAgc3dpdGNoICh0aGlzLnNweFR5cGUpIHtcbiAgICAgIGNhc2UgU3B4SW5wdXRUeXBlRW51bS5hdXRvY29tcGxldGU6XG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0udGV4dDpcbiAgICAgIGNhc2UgU3B4SW5wdXRUeXBlRW51bS5vdmVybGF5TnVtYmVyOlxuICAgICAgICB0aGlzLnRleHRJbnB1dD8uc3B4U2V0Rm9jdXMoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFNweElucHV0VHlwZUVudW0ucmFkaW86XG4gICAgICAgIHRoaXMucmFkaW9JbnB1dD8uc3B4Rm9jdXNJbigpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4gey8qKi99O1xuICBwcml2YXRlIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHsvKiovfTtcbiAgcHJvdGVjdGVkIGxhc3RWYWx1ZTogYW55O1xuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLmxhc3RWYWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgaGFuZGxlQ2hhbmdlRXZlbnQodmFsdWU6IGFueSkge1xuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5sYXN0VmFsdWUpIHtcbiAgICAgIHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdmb2N1c291dCcpXG4gIF9oYW5kbGVCbHVyRXZlbnQoKSB7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKSB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxufVxuIl19
@@ -4,20 +4,23 @@ export class SpxSuggestionComponent {
4
4
  constructor() {
5
5
  this.overflowHidden = true;
6
6
  this.spxDisabled = false;
7
+ this.spxFocused = false;
7
8
  this.spxSelected = false;
8
9
  }
9
10
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxSuggestionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxSuggestionComponent, isStandalone: true, selector: "spx-suggestion", inputs: { spxDisabled: "spxDisabled", spxSelected: "spxSelected" }, host: { properties: { "class.overflow-hidden": "this.overflowHidden" } }, ngImport: i0, template: `<button
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxSuggestionComponent, isStandalone: true, selector: "spx-suggestion", inputs: { spxDisabled: "spxDisabled", spxFocused: "spxFocused", spxSelected: "spxSelected" }, host: { properties: { "class.overflow-hidden": "this.overflowHidden" } }, ngImport: i0, template: `<button
11
12
  class="spx-suggestion block rounded text-gray-900 text-sm p-3 w-full text-ellipsis overflow-hidden whitespace-nowrap text-left truncate"
12
- [class.bg-sky-100]="!this.spxSelected && !this.spxDisabled"
13
- [class.focus:ring-sky-200]="!this.spxSelected && !this.spxDisabled"
14
- [class.hover:bg-sky-200]="!this.spxSelected && !this.spxDisabled"
13
+ [class.bg-sky-100]="!this.spxSelected && !this.spxDisabled && !this.spxFocused"
14
+ [class.bg-sky-200]="this.spxSelected && !this.spxDisabled && this.spxFocused"
15
+ [class.focus:ring-sky-300]="!this.spxSelected && !this.spxDisabled"
16
+ [class.hover:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
15
17
  [class.active:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
16
18
  [class.bg-gray-200]="this.spxDisabled && !this.spxSelected"
17
19
  [class.bg-gray-400]="this.spxDisabled && this.spxSelected"
18
20
  [class.cursor-not-allowed]="this.spxDisabled"
19
21
  [class.opacity-60]="this.spxDisabled"
20
- [class.bg-teal-500]="this.spxSelected && !this.spxDisabled"
22
+ [class.bg-teal-500]="this.spxSelected && !this.spxDisabled && !this.spxFocused"
23
+ [class.bg-teal-600]="this.spxSelected && !this.spxDisabled && this.spxFocused"
21
24
  [class.font-bold]="this.spxSelected"
22
25
  [attr.tabindex]="-1"><ng-content></ng-content></button>`, isInline: true }); }
23
26
  }
@@ -28,15 +31,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
28
31
  standalone: true,
29
32
  template: `<button
30
33
  class="spx-suggestion block rounded text-gray-900 text-sm p-3 w-full text-ellipsis overflow-hidden whitespace-nowrap text-left truncate"
31
- [class.bg-sky-100]="!this.spxSelected && !this.spxDisabled"
32
- [class.focus:ring-sky-200]="!this.spxSelected && !this.spxDisabled"
33
- [class.hover:bg-sky-200]="!this.spxSelected && !this.spxDisabled"
34
+ [class.bg-sky-100]="!this.spxSelected && !this.spxDisabled && !this.spxFocused"
35
+ [class.bg-sky-200]="this.spxSelected && !this.spxDisabled && this.spxFocused"
36
+ [class.focus:ring-sky-300]="!this.spxSelected && !this.spxDisabled"
37
+ [class.hover:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
34
38
  [class.active:bg-sky-300]="!this.spxSelected && !this.spxDisabled"
35
39
  [class.bg-gray-200]="this.spxDisabled && !this.spxSelected"
36
40
  [class.bg-gray-400]="this.spxDisabled && this.spxSelected"
37
41
  [class.cursor-not-allowed]="this.spxDisabled"
38
42
  [class.opacity-60]="this.spxDisabled"
39
- [class.bg-teal-500]="this.spxSelected && !this.spxDisabled"
43
+ [class.bg-teal-500]="this.spxSelected && !this.spxDisabled && !this.spxFocused"
44
+ [class.bg-teal-600]="this.spxSelected && !this.spxDisabled && this.spxFocused"
40
45
  [class.font-bold]="this.spxSelected"
41
46
  [attr.tabindex]="-1"><ng-content></ng-content></button>`,
42
47
  }]
@@ -45,7 +50,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
45
50
  args: ['class.overflow-hidden']
46
51
  }], spxDisabled: [{
47
52
  type: Input
53
+ }], spxFocused: [{
54
+ type: Input
48
55
  }], spxSelected: [{
49
56
  type: Input
50
57
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXN1Z2dlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1zdWdnZXN0aW9uL3NweC1zdWdnZXN0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBbUI5RCxNQUFNLE9BQU8sc0JBQXNCO0lBakJuQztRQWtCd0MsbUJBQWMsR0FBWSxJQUFJLENBQUM7UUFDNUQsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7S0FDOUI7OEdBSlksc0JBQXNCO2tHQUF0QixzQkFBc0Isd05BZHZCOzs7Ozs7Ozs7Ozs7NERBWWdEOzsyRkFFL0Msc0JBQXNCO2tCQWpCbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7NERBWWdEO2lCQUMzRDs4QkFFdUMsY0FBYztzQkFBbkQsV0FBVzt1QkFBQyx1QkFBdUI7Z0JBQzNCLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1zdWdnZXN0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6IGA8YnV0dG9uXG4gICAgY2xhc3M9XCJzcHgtc3VnZ2VzdGlvbiBibG9jayByb3VuZGVkIHRleHQtZ3JheS05MDAgdGV4dC1zbSBwLTMgdy1mdWxsIHRleHQtZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuIHdoaXRlc3BhY2Utbm93cmFwIHRleHQtbGVmdCB0cnVuY2F0ZVwiXG4gICAgW2NsYXNzLmJnLXNreS0xMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5mb2N1czpyaW5nLXNreS0yMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1za3ktMjAwXT1cIiF0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkXCJcbiAgICBbY2xhc3MuYWN0aXZlOmJnLXNreS0zMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5iZy1ncmF5LTIwMF09XCJ0aGlzLnNweERpc2FibGVkICYmICF0aGlzLnNweFNlbGVjdGVkXCJcbiAgICBbY2xhc3MuYmctZ3JheS00MDBdPVwidGhpcy5zcHhEaXNhYmxlZCAmJiB0aGlzLnNweFNlbGVjdGVkXCJcbiAgICBbY2xhc3MuY3Vyc29yLW5vdC1hbGxvd2VkXT1cInRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5vcGFjaXR5LTYwXT1cInRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5iZy10ZWFsLTUwMF09XCJ0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkXCJcbiAgICBbY2xhc3MuZm9udC1ib2xkXT1cInRoaXMuc3B4U2VsZWN0ZWRcIlxuICAgIFthdHRyLnRhYmluZGV4XT1cIi0xXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvYnV0dG9uPmAsXG59KVxuZXhwb3J0IGNsYXNzIFNweFN1Z2dlc3Rpb25Db21wb25lbnQge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm92ZXJmbG93LWhpZGRlbicpIG92ZXJmbG93SGlkZGVuOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4RGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2VsZWN0ZWQgPSBmYWxzZTtcbn1cbiJdfQ==
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXN1Z2dlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc29mdHBhay9jb21wb25lbnRzL3NweC1zdWdnZXN0aW9uL3NweC1zdWdnZXN0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBcUI5RCxNQUFNLE9BQU8sc0JBQXNCO0lBbkJuQztRQW9Cd0MsbUJBQWMsR0FBWSxJQUFJLENBQUM7UUFDNUQsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixnQkFBVyxHQUFHLEtBQUssQ0FBQztLQUM5Qjs4R0FMWSxzQkFBc0I7a0dBQXRCLHNCQUFzQixrUEFoQnZCOzs7Ozs7Ozs7Ozs7Ozs0REFjZ0Q7OzJGQUUvQyxzQkFBc0I7a0JBbkJsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OzREQWNnRDtpQkFDM0Q7OEJBRXVDLGNBQWM7c0JBQW5ELFdBQVc7dUJBQUMsdUJBQXVCO2dCQUMzQixXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1zdWdnZXN0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6IGA8YnV0dG9uXG4gICAgY2xhc3M9XCJzcHgtc3VnZ2VzdGlvbiBibG9jayByb3VuZGVkIHRleHQtZ3JheS05MDAgdGV4dC1zbSBwLTMgdy1mdWxsIHRleHQtZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuIHdoaXRlc3BhY2Utbm93cmFwIHRleHQtbGVmdCB0cnVuY2F0ZVwiXG4gICAgW2NsYXNzLmJnLXNreS0xMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWQgJiYgIXRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgW2NsYXNzLmJnLXNreS0yMDBdPVwidGhpcy5zcHhTZWxlY3RlZCAmJiAhdGhpcy5zcHhEaXNhYmxlZCAmJiB0aGlzLnNweEZvY3VzZWRcIlxuICAgIFtjbGFzcy5mb2N1czpyaW5nLXNreS0zMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1za3ktMzAwXT1cIiF0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkXCJcbiAgICBbY2xhc3MuYWN0aXZlOmJnLXNreS0zMDBdPVwiIXRoaXMuc3B4U2VsZWN0ZWQgJiYgIXRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5iZy1ncmF5LTIwMF09XCJ0aGlzLnNweERpc2FibGVkICYmICF0aGlzLnNweFNlbGVjdGVkXCJcbiAgICBbY2xhc3MuYmctZ3JheS00MDBdPVwidGhpcy5zcHhEaXNhYmxlZCAmJiB0aGlzLnNweFNlbGVjdGVkXCJcbiAgICBbY2xhc3MuY3Vyc29yLW5vdC1hbGxvd2VkXT1cInRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5vcGFjaXR5LTYwXT1cInRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5iZy10ZWFsLTUwMF09XCJ0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkICYmICF0aGlzLnNweEZvY3VzZWRcIlxuICAgIFtjbGFzcy5iZy10ZWFsLTYwMF09XCJ0aGlzLnNweFNlbGVjdGVkICYmICF0aGlzLnNweERpc2FibGVkICYmIHRoaXMuc3B4Rm9jdXNlZFwiXG4gICAgW2NsYXNzLmZvbnQtYm9sZF09XCJ0aGlzLnNweFNlbGVjdGVkXCJcbiAgICBbYXR0ci50YWJpbmRleF09XCItMVwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2J1dHRvbj5gLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhTdWdnZXN0aW9uQ29tcG9uZW50IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5vdmVyZmxvdy1oaWRkZW4nKSBvdmVyZmxvd0hpZGRlbjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHNweERpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4U2VsZWN0ZWQgPSBmYWxzZTtcbn1cbiJdfQ==
@@ -269,7 +269,6 @@ class SpxDropdownComponent {
269
269
  this.subscriptionKeyUp?.unsubscribe();
270
270
  }
271
271
  handleSuggestionClick(valuePair) {
272
- console.log('handleSuggestionClick', valuePair);
273
272
  this.select(valuePair);
274
273
  }
275
274
  listenToKeyUp() {
@@ -691,7 +690,7 @@ class SpxInputDateComponent {
691
690
  <spx-suggestion
692
691
  *ngFor="let valuePair of spxSuggestions[spxSelectStep]"
693
692
  (click)="this.handleSuggestionClick(valuePair.value)">{{valuePair?.description}}</spx-suggestion>
694
- </div>`, isInline: true, styles: [":host{display:block}.spx-input-date__input{background-color:transparent;border:1px solid #979797;border-radius:4px;color:var(--spx-input--color, rgba(0, 0, 0, .9));box-sizing:border-box;font-size:16px;margin-right:10px;padding:6px;text-align:center;width:100%}.spx-input-date__input:active{transform:scale(.95)}.spx-input-date__input:focus{border:var(--spx-input-box--focus--border, 1px solid rgb(115, 168, 210));border-radius:4px;outline:none}.spx-input-date__control-label{align-items:center;color:#000000b3;display:inline-grid;font-size:13px;letter-spacing:1px}.spx-input-date__input::-webkit-outer-spin-button,.spx-input-date__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.spx-input-date__input[type=number]{-moz-appearance:textfield}.spx-input-date__suggestions,.spx-input-date__controls{display:grid;grid-gap:8px;grid-template-columns:repeat(4,1fr);margin-top:8px}\n"], 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: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxSelected"] }] }); }
693
+ </div>`, isInline: true, styles: [":host{display:block}.spx-input-date__input{background-color:transparent;border:1px solid #979797;border-radius:4px;color:var(--spx-input--color, rgba(0, 0, 0, .9));box-sizing:border-box;font-size:16px;margin-right:10px;padding:6px;text-align:center;width:100%}.spx-input-date__input:active{transform:scale(.95)}.spx-input-date__input:focus{border:var(--spx-input-box--focus--border, 1px solid rgb(115, 168, 210));border-radius:4px;outline:none}.spx-input-date__control-label{align-items:center;color:#000000b3;display:inline-grid;font-size:13px;letter-spacing:1px}.spx-input-date__input::-webkit-outer-spin-button,.spx-input-date__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.spx-input-date__input[type=number]{-moz-appearance:textfield}.spx-input-date__suggestions,.spx-input-date__controls{display:grid;grid-gap:8px;grid-template-columns:repeat(4,1fr);margin-top:8px}\n"], 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: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxFocused", "spxSelected"] }] }); }
695
694
  }
696
695
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputDateComponent, decorators: [{
697
696
  type: Component,
@@ -1009,32 +1008,60 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
1009
1008
 
1010
1009
  class SpxInputRadioComponent {
1011
1010
  constructor() {
1011
+ this.focusPosition = 0;
1012
1012
  this.spxFocused = true;
1013
1013
  this.spxShowLabel = true;
1014
1014
  this.spxReadonly = false;
1015
1015
  this.spxSuggestions = [];
1016
1016
  this.spxChange = new EventEmitter();
1017
1017
  this.spxFocus = new EventEmitter();
1018
- this.spxWasInternalUpdate = false;
1019
1018
  }
1020
- async spxSetFocus() {
1021
- // this.elYear.focus();
1019
+ spxFocusIn() {
1020
+ this.listenToKeyUp();
1021
+ this.focusPosition = 0;
1022
1022
  }
1023
- handleSuggestionClick(value) {
1024
- this.value = value;
1025
- this.spxChange.emit(this.value);
1023
+ spxFocusOut() {
1024
+ this.subscriptionKeyUp?.unsubscribe();
1025
+ }
1026
+ ngOnChanges(changes) {
1027
+ this.focusPosition = 0;
1028
+ }
1029
+ handleSuggestionClick(valuePair) {
1030
+ this.select(valuePair);
1031
+ }
1032
+ select(valuePair) {
1033
+ this.focusPosition = 0;
1034
+ this.value = valuePair;
1035
+ this.spxChange.emit(valuePair);
1036
+ }
1037
+ listenToKeyUp() {
1038
+ this.subscriptionKeyUp = fromEvent(window, 'keyup').subscribe((event) => {
1039
+ if (event.key === 'ArrowUp' && this.focusPosition > 0) {
1040
+ this.focusPosition = this.focusPosition - 1;
1041
+ event.preventDefault();
1042
+ }
1043
+ if (event.key === 'ArrowDown' && this.focusPosition < this.spxSuggestions.length - 1) {
1044
+ this.focusPosition = this.focusPosition + 1;
1045
+ event.preventDefault();
1046
+ }
1047
+ if (event.key === 'Enter' && this.spxSuggestions.length > 0) {
1048
+ this.select(this.spxSuggestions.at(this.focusPosition));
1049
+ event.preventDefault();
1050
+ }
1051
+ });
1026
1052
  }
1027
1053
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputRadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1028
- 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" }, ngImport: i0, template: `<div class="grid grid-cols-2 gap-2"
1054
+ 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"
1029
1055
  [class.mt-3]="this.spxShowLabel">
1030
1056
  <spx-suggestion
1031
- *ngFor="let valuePair of this.spxSuggestions"
1057
+ *ngFor="let valuePair of this.spxSuggestions; let i = index"
1032
1058
  [spxDisabled]="this.spxReadonly"
1059
+ [spxFocused]="this.spxFocused && i === this.focusPosition"
1033
1060
  [spxSelected]="this.value?.value === this.valuePair?.value"
1034
1061
  (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
1035
1062
  {{this.valuePair?.description}}
1036
1063
  </spx-suggestion>
1037
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxSuggestionComponent, selector: "spx-suggestion", inputs: ["spxDisabled", "spxSelected"] }] }); }
1064
+ </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"] }] }); }
1038
1065
  }
1039
1066
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxInputRadioComponent, decorators: [{
1040
1067
  type: Component,
@@ -1048,8 +1075,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
1048
1075
  template: `<div class="grid grid-cols-2 gap-2"
1049
1076
  [class.mt-3]="this.spxShowLabel">
1050
1077
  <spx-suggestion
1051
- *ngFor="let valuePair of this.spxSuggestions"
1078
+ *ngFor="let valuePair of this.spxSuggestions; let i = index"
1052
1079
  [spxDisabled]="this.spxReadonly"
1080
+ [spxFocused]="this.spxFocused && i === this.focusPosition"
1053
1081
  [spxSelected]="this.value?.value === this.valuePair?.value"
1054
1082
  (click)="this.spxReadonly ? undefined : this.handleSuggestionClick(valuePair)">
1055
1083
  {{this.valuePair?.description}}
@@ -1139,17 +1167,19 @@ class SpxInputComponent {
1139
1167
  handleFocus() {
1140
1168
  this.spxFocus.emit();
1141
1169
  this.spxFocused = true;
1142
- // this.elBox.spxSetFocus();
1143
1170
  }
1144
1171
  handleSearch() {
1145
1172
  this.spxSearch.emit();
1146
1173
  }
1147
- setFocus() {
1174
+ setFocusIn() {
1148
1175
  this.spxFocused = true;
1149
1176
  this.passFocusToControl();
1150
1177
  }
1151
1178
  setFocusOut() {
1152
1179
  this.spxFocused = false;
1180
+ if (this.spxType === SpxInputTypeEnum.radio) {
1181
+ this.radioInput?.spxFocusOut();
1182
+ }
1153
1183
  }
1154
1184
  handleEdit() {
1155
1185
  this.spxEdit.emit();
@@ -1166,6 +1196,9 @@ class SpxInputComponent {
1166
1196
  case SpxInputTypeEnum.overlayNumber:
1167
1197
  this.textInput?.spxSetFocus();
1168
1198
  break;
1199
+ case SpxInputTypeEnum.radio:
1200
+ this.radioInput?.spxFocusIn();
1201
+ break;
1169
1202
  }
1170
1203
  }
1171
1204
  writeValue(value) {
@@ -1193,7 +1226,7 @@ class SpxInputComponent {
1193
1226
  useExisting: SpxInputComponent,
1194
1227
  multi: true
1195
1228
  }
1196
- ], viewQueries: [{ propertyName: "textInput", first: true, predicate: SpxInputTextComponent, descendants: true }], ngImport: i0, template: `<spx-input-box
1229
+ ], viewQueries: [{ propertyName: "textInput", first: true, predicate: SpxInputTextComponent, descendants: true }, { propertyName: "radioInput", first: true, predicate: SpxInputRadioComponent, descendants: true }], ngImport: i0, template: `<spx-input-box
1197
1230
  [spxFocused]="this.spxFocused"
1198
1231
  [spxLabel]="this.spxLabel"
1199
1232
  [spxReadonly]="this.spxReadonly"
@@ -1209,7 +1242,7 @@ class SpxInputComponent {
1209
1242
  (spxClear)="this.handleClear()"
1210
1243
  (spxEdit)="this.handleEdit()"
1211
1244
  (spxHelp)="this.handleHelp()"
1212
- (spxFocus)="this.setFocus()"
1245
+ (spxFocus)="this.setFocusIn()"
1213
1246
  (spxFocusOut)="this.setFocusOut()"
1214
1247
  (spxSearch)="this.handleSearch()">
1215
1248
  <div controls>
@@ -1270,6 +1303,7 @@ class SpxInputComponent {
1270
1303
  [value]="this.value"
1271
1304
  ></spx-input-number>
1272
1305
  <spx-input-radio
1306
+ #radioInput
1273
1307
  *ngIf="this.spxType === 'radio'"
1274
1308
  (spxChange)="this.handleChange($event)"
1275
1309
  (spxFocus)="this.handleFocus()"
@@ -1327,7 +1361,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
1327
1361
  (spxClear)="this.handleClear()"
1328
1362
  (spxEdit)="this.handleEdit()"
1329
1363
  (spxHelp)="this.handleHelp()"
1330
- (spxFocus)="this.setFocus()"
1364
+ (spxFocus)="this.setFocusIn()"
1331
1365
  (spxFocusOut)="this.setFocusOut()"
1332
1366
  (spxSearch)="this.handleSearch()">
1333
1367
  <div controls>
@@ -1388,6 +1422,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
1388
1422
  [value]="this.value"
1389
1423
  ></spx-input-number>
1390
1424
  <spx-input-radio
1425
+ #radioInput
1391
1426
  *ngIf="this.spxType === 'radio'"
1392
1427
  (spxChange)="this.handleChange($event)"
1393
1428
  (spxFocus)="this.handleFocus()"
@@ -1470,6 +1505,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
1470
1505
  }], textInput: [{
1471
1506
  type: ViewChild,
1472
1507
  args: [SpxInputTextComponent]
1508
+ }], radioInput: [{
1509
+ type: ViewChild,
1510
+ args: [SpxInputRadioComponent]
1473
1511
  }], spxFocused: [{
1474
1512
  type: Input
1475
1513
  }], _handleBlurEvent: [{