@danske/sapphire-angular 1.21.0 → 1.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -266,4 +266,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
266
266
  type: ContentChild,
267
267
  args: [SelectionTextDirective]
268
268
  }] } });
269
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWNvbXBvbmVudC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZWxlY3Qvc3JjL2NvbW1vbi9zZWxlY3QtY29tcG9uZW50LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUV6RSxPQUFPLEVBQ0wsWUFBWSxFQUVaLGVBQWUsR0FDaEIsTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzNELE9BQU8sRUFFTCxjQUFjLEdBRWYsTUFBTSxtQkFBbUIsQ0FBQztBQUUzQixPQUFPLEVBQ0wsd0JBQXdCLEdBRXpCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQUc1RSxNQUFNLE9BQWdCLG1CQUFtQjtJQTZFdkMsSUFBSSxZQUFZLENBQUMsS0FBd0I7UUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFDRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FDekMsQ0FBQztJQUNKLENBQUM7SUFJRCxZQUFzQixXQUE4QjtRQUE5QixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFsRnBELGtGQUFrRjtRQUdsRixPQUFFLEdBQUcsRUFBRSxDQUFDO1FBZVI7O1dBRUc7UUFFTSxXQUFNLEdBQXVCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFekQ7O1dBRUc7UUFFTSxXQUFNLEdBQXVCLElBQUksWUFBWSxFQUFFLENBQUM7UUFHbEQsWUFBTyxHQUErQixJQUFJLFNBQVMsRUFBbUIsQ0FBQztRQUd2RSxvQkFBZSxHQUE0QixJQUFJLFNBQVMsRUFBZ0IsQ0FBQztRQVNoRjs7O1dBR0c7UUFFSCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUc5QixjQUFTLEdBQWtCLElBQUksQ0FBQztRQUVoQyxtQkFBYyxHQUFtQixJQUFJLENBQUM7UUFLdEM7Ozs7OztXQU1HO1FBQ0gsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFlYixzQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQWdJNUMsaUNBQTRCLEdBQXlCLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUNqRSxjQUFTLEdBQWMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBL0hnQixDQUFDO0lBUXhELGFBQWEsQ0FBQyxNQUFxQjtRQUNqQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGlCQUFpQixFQUFFLGFBQWEsRUFBRTtZQUMzRCxPQUFPO1NBQ1I7UUFDRCxRQUFRLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDbEIsS0FBSyxXQUFXO2dCQUNkLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQ3hCLE1BQU07WUFDUixLQUFLLFNBQVM7Z0JBQ1osSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDeEIsaUVBQWlFO2dCQUNqRSxrQkFBa0I7Z0JBQ2xCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7d0JBQ3hELElBQUksQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUN6RDtnQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxZQUFZLENBQUM7WUFDbEIsS0FBSyxXQUFXO2dCQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtvQkFDakIsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztpQkFDekI7cUJBQU07b0JBQ0wsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUMzQyxNQUFNLENBQUMsR0FBRyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQzlDLENBQUM7b0JBQ0YsSUFBSSxNQUFNLEVBQUU7d0JBQ1YsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUM5QjtpQkFDRjtnQkFDRCxNQUFNO1lBQ1I7Z0JBQ0UsSUFBSSxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDdEM7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUM3QyxJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2hDLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2hDLE9BQU8sZUFBZSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztTQUNsQztRQUNELE9BQU8sR0FDTCxlQUFlLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUM1QyxDQUFDLENBQUMsS0FBSztZQUNQLENBQUMsQ0FBQyxlQUFlLENBQUMsTUFDdEIsV0FBVyxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxZQUFZLHdCQUF3QixDQUFDO0lBQzlELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXRCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZTtRQUNiOzs7Ozs7V0FNRztRQUNILElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4QztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQztTQUMxQjtRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksS0FBSyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFJRCxZQUFZO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBS00sT0FBTztRQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVLENBQUMsS0FBYztRQUN2QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztJQUVTLHlCQUF5QixDQUFDLFlBQThCLE9BQU87UUFDdkUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDbkQsSUFBSSxxQkFBcUIsQ0FBQztRQUMxQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRS9DLE1BQU0sa0JBQWtCLEdBQ3RCLENBQUMsY0FBYyxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNqRSxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUV4RCxJQUFJLGtCQUFrQixLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQzdCLHFCQUFxQixHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDeEQ7YUFBTSxJQUFJLFNBQVMsS0FBSyxNQUFNLEVBQUU7WUFDL0IscUJBQXFCLEdBQUcsWUFBWTtpQkFDakMsS0FBSyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQztpQkFDNUIsT0FBTyxFQUFFO2lCQUNULElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN0QjthQUFNO1lBQ0wscUJBQXFCLEdBQUcsWUFBWTtpQkFDakMsS0FBSyxDQUFDLGtCQUFrQixHQUFHLENBQUMsRUFBRSxZQUFZLENBQUMsTUFBTSxDQUFDO2lCQUNsRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDdEI7UUFFRCxNQUFNLDBCQUEwQixHQUFHLHFCQUFxQjtZQUN0RCxDQUFDLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQztZQUM3QyxDQUFDLENBQUMsa0JBQWtCLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxFQUFFLEtBQUssQ0FBQztJQUM5RCxDQUFDO0lBRVMsY0FBYztRQUN0QixtQ0FBbUM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksY0FBYyxDQUdsQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1QixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7WUFDbkIsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLO1lBQzVCLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVE7U0FDNUIsQ0FBQyxDQUFDLENBQ0osQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUVsQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3BDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUN2QyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxLQUFLLE1BQU0sQ0FBQyxLQUFLLENBQ2hFLENBQUM7WUFFRixJQUFJLGNBQWMsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUM1QztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Z0hBclRtQixtQkFBbUI7b0dBQW5CLG1CQUFtQiwrVkFpRXpCLHNCQUFzQiw2REF6Qm5CLGVBQWUscUVBR2YsWUFBWTtBQW5DN0I7SUFEQyxhQUFhO3FEQUNTO0FBS3ZCO0lBREMsTUFBTSxFQUFFOytDQUNEOzJGQWJZLG1CQUFtQjtrQkFEeEMsU0FBUzt3R0FTUixRQUFRO3NCQUZQLEtBQUs7Z0JBT04sRUFBRTtzQkFGRCxLQUFLO2dCQU1OLElBQUk7c0JBREgsS0FBSztnQkFLTixZQUFZO3NCQURYLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxNQUFNO3NCQURkLE1BQU07Z0JBT0UsTUFBTTtzQkFEZCxNQUFNO2dCQUlBLE9BQU87c0JBRGIsZUFBZTt1QkFBQyxlQUFlLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUloRCxlQUFlO3NCQURyQixlQUFlO3VCQUFDLFlBQVk7Z0JBZTdCLFFBQVE7c0JBRFAsTUFBTTtnQkFJUCxTQUFTO3NCQURSLEtBQUs7dUJBQUMsWUFBWTtnQkFHbkIsY0FBYztzQkFEYixLQUFLO3VCQUFDLGlCQUFpQjtnQkFJeEIsYUFBYTtzQkFEWixZQUFZO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvZXJjZUJvb2xlYW4gfSBmcm9tICcuLi8uLi8uLi9jb21tb24vY29lcmNlLWJvb2xlYW4uZGVjb3JhdG9yJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQge1xuICBMaXN0Ym94Q2hpbGQsXG4gIExpc3Rib3hDb21wb25lbnQsXG4gIE9wdGlvbkNvbXBvbmVudCxcbn0gZnJvbSAnLi4vLi4vLi4vbGlzdGJveC9wdWJsaWNfYXBpJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgaW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRvSWQgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vYXV0by1pZC5kZWNvcmF0b3InO1xuaW1wb3J0IHtcbiAgRm9jdXNPcmlnaW4sXG4gIExpc3RLZXlNYW5hZ2VyLFxuICBMaXN0S2V5TWFuYWdlck9wdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgUG9wb3ZlclRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9wb3BvdmVyL3NyYy9wb3BvdmVyLXRyaWdnZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7XG4gIE11bHRpU2VsZWN0RGlyZWN0aXZlQmFzZSxcbiAgU2VsZWN0VmFsdWVIb2xkZXIsXG59IGZyb20gJy4vc2VsZWN0LXZhbHVlLWhvbGRlcic7XG5pbXBvcnQgeyBTZWxlY3Rpb25UZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi4vc2VsZWN0L3NlbGVjdGlvbi10ZXh0LmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoKSAvLyBUaGlzIGlzIG5lZWRlZCBmb3IgZGVjb3JhdG9ycyBsaWtlIElucHV0IHRvIHdvcmtcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTZWxlY3RDb21wb25lbnRCYXNlXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveVxue1xuICAvKipcbiAgICogV2hldGhlciB0aGUgY29tcG9uZW50IGlzIGRpc2FibGVkLlxuICAgKi9cbiAgQElucHV0KClcbiAgQENvZXJjZUJvb2xlYW5cbiAgZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcblxuICAvKiogQSB1bmlxdWUgaWQgZm9yIHRoZSBzZWxlY3QuIElmIG5vbmUgaXMgc3VwcGxpZWQsIGl0IHdpbGwgYmUgYXV0by1nZW5lcmF0ZWQuICovXG4gIEBJbnB1dCgpXG4gIEBBdXRvSWQoKVxuICBpZCA9ICcnO1xuXG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgaW5wdXQsIHVzZWQgd2hlbiBzdWJtaXR0aW5nIGFuIEhUTUwgZm9ybS4gKi9cbiAgQElucHV0KClcbiAgbmFtZT86IHN0cmluZztcblxuICAvKiogVGhlIGF1dG9jb21wbGV0ZSBiZWhhdmlvciAqL1xuICBASW5wdXQoKVxuICBhdXRvY29tcGxldGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRvIGJlIHNob3duIGlmIG5vIHZhbHVlIGhhcyBiZWVuIHNlbGVjdGVkLlxuICAgKi9cbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgcG9wb3ZlciBpcyBvcGVuZWRcbiAgICovXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBvcGVuZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBwb3BvdmVyIGlzIGNsb3NlZFxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IGNsb3NlZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oT3B0aW9uQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHB1YmxpYyBvcHRpb25zOiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PiA9IG5ldyBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oTGlzdGJveENoaWxkKVxuICBwdWJsaWMgbGlzdGJveENoaWxkcmVuOiBRdWVyeUxpc3Q8TGlzdGJveENoaWxkPiA9IG5ldyBRdWVyeUxpc3Q8TGlzdGJveENoaWxkPigpO1xuXG4gIC8qKlxuICAgKiBNYW5hZ2VzIGtleWJvYXJkIGV2ZW50cyBmb3Igb3B0aW9ucyBpbiB0aGUgcGFuZWwuXG4gICAqL1xuICBwcm90ZWN0ZWQga2V5TWFuYWdlcjpcbiAgICB8IExpc3RLZXlNYW5hZ2VyPHsgdmFsdWU6IHN0cmluZyB9ICYgTGlzdEtleU1hbmFnZXJPcHRpb24+XG4gICAgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHdoZW5ldmVyIHRoZSBkcm9wZG93biBpcyBjbG9zZWQgYXMgYSByZXN1bHQgb2YgYW4gb3B0aW9uIChhbHJlYWR5XG4gICAqIHNlbGVjdGVkIG9yIG5vdCkgYmVpbmcgc2VsZWN0ZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgc2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQElucHV0KCdhcmlhLWxhYmVsJylcbiAgYXJpYUxhYmVsOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCdhcmlhLWxhYmVsbGVkYnknKVxuICBhcmlhTGFiZWxsZWRieT86IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBDb250ZW50Q2hpbGQoU2VsZWN0aW9uVGV4dERpcmVjdGl2ZSlcbiAgc2VsZWN0aW9uVGV4dD86IFNlbGVjdGlvblRleHREaXJlY3RpdmU7XG5cbiAgLyoqXG4gICAqIFVzZWQgdG8gd29yayBhcm91bmQgRXhwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvciBlcnJvciB0aHJvd24gZnJvbSBIaWRkZW5TZWxlY3QsXG4gICAqIHdoZW4gdGhlIHNlbGVjdCBjb21wb25lbnQgaXMgcmVuZGVyZWQgZnJvbSBhIHRlbXBsYXRlIChlLmcuIHdpdGggKm5nSWYpLiBJdCdzIHNldCB0byB0cnVlXG4gICAqIGFzeW5jaHJvbm91c2x5IGFmdGVyIGNvbnRlbnQgaXMgaW5pdGlhbGl6ZWQsIHRvIGRlbGF5IHJlbmRlcmluZyBvZiB0aGluZ3MgdGhhdCBkZXBlbmQgb25cbiAgICogb3B0aW9ucy4gSXQncyBub3QgY2xlYXIgd2h5IHRoZSBpc3N1ZSBoYXBwZW5zLCBhbmQgaXQgb25seSBoYXBwZW5zIHdoZW4gc2VsZWN0IGlzIHVzZWQgd2l0aFxuICAgKiAqbmdJZiwgb3IgZ2VuZXJhbGx5IGluIGEgdGVtcGxhdGUuXG4gICAqL1xuICBfaW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICBzZXQgbGlzdGJveFZhbHVlKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSkge1xuICAgIHRoaXMudmFsdWVIb2xkZXIuc2V0RnJvbUxpc3Rib3hWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKHRoaXMudmFsdWVIb2xkZXIudmFsdWUpO1xuICB9XG4gIGdldCBsaXN0Ym94VmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVIb2xkZXIuZ2V0TGlzdGJveFZhbHVlKCk7XG4gIH1cbiAgZ2V0IHNlbGVjdGVkT3B0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5maWx0ZXIoKG9wdGlvbikgPT5cbiAgICAgIHRoaXMubGlzdGJveFZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHZhbHVlSG9sZGVyOiBTZWxlY3RWYWx1ZUhvbGRlcikge31cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgdHJpZ2dlclJlZjogUG9wb3ZlclRyaWdnZXJEaXJlY3RpdmUgfCB1bmRlZmluZWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCB0cmlnZ2VyRWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCB1bmRlZmluZWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBsaXN0Ym94OiBMaXN0Ym94Q29tcG9uZW50IHwgdW5kZWZpbmVkO1xuICBwdWJsaWMgYWJzdHJhY3QgZm9jdXMoZm9jdXNPcmlnaW46IEZvY3VzT3JpZ2luKTogdm9pZDtcbiAgcHVibGljIGFic3RyYWN0IGlzRm9jdXNlZCgpOiBib29sZWFuO1xuXG4gIGhhbmRsZUtleURvd24oJGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKCRldmVudC50YXJnZXQgIT09IHRoaXMudHJpZ2dlckVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgc3dpdGNoICgkZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgdGhpcy50cmlnZ2VyUmVmPy5vcGVuKCk7XG4gICAgICAgIC8vIHdlIG5lZWQgdG8gZGVsYXkgaXQgYSBsaXR0bGUsIHNpbmNlIHRoZSBsaXN0Ym94IHdpbGwgYXV0b2ZvY3VzXG4gICAgICAgIC8vIHRoZSBmaXJzdCBpdGVtLlxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5vcHRpb25zPy5sYXN0ICYmIHRoaXMubGlzdGJveFZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5saXN0Ym94Py5zZXRBY3RpdmVPcHRpb24odGhpcy5vcHRpb25zPy5sYXN0LnZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOlxuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBvcHRpb24gPSB0aGlzLmdldE5leHRFbmFibGVkT3B0aW9uVmFsdWUoXG4gICAgICAgICAgICAkZXZlbnQua2V5ID09PSAnQXJyb3dMZWZ0JyA/ICdsZWZ0JyA6ICdyaWdodCdcbiAgICAgICAgICApO1xuICAgICAgICAgIGlmIChvcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMubGlzdGJveFZhbHVlID0gW29wdGlvbl07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5rZXlNYW5hZ2VyPy5vbktleWRvd24oJGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBnZXRTZWxlY3Rpb25UZXh0KCk6IHN0cmluZyB7XG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb25zID0gdGhpcy5zZWxlY3RlZE9wdGlvbnM7XG4gICAgaWYgKHNlbGVjdGVkT3B0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgaWYgKHNlbGVjdGVkT3B0aW9ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBzZWxlY3RlZE9wdGlvbnNbMF0/LmxhYmVsO1xuICAgIH1cbiAgICByZXR1cm4gYCR7XG4gICAgICBzZWxlY3RlZE9wdGlvbnMubGVuZ3RoID09PSB0aGlzLm9wdGlvbnMubGVuZ3RoXG4gICAgICAgID8gJ0FsbCdcbiAgICAgICAgOiBzZWxlY3RlZE9wdGlvbnMubGVuZ3RoXG4gICAgfSBzZWxlY3RlZGA7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciBtdWx0aXBsZSBzZWxlY3Rpb24gaXMgYWxsb3dlZC5cbiAgICovXG4gIGdldCBtdWx0aXBsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUhvbGRlciBpbnN0YW5jZW9mIE11bHRpU2VsZWN0RGlyZWN0aXZlQmFzZTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRLZXlNYW5hZ2VyKCk7XG5cbiAgICB0aGlzLm9wdGlvbnMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5pbml0S2V5TWFuYWdlcigpO1xuICAgIH0pO1xuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgdGhpcy5faW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIC8qKlxuICAgICAqIFRoaXMgaXMgdG8gYXZvaWQgYW4gTkcwMTAwIEV4cHJlc3Npb25DaGFuZ2VkQWZ0ZXIuLi4gZXJyb3Igd2hlbiB0aGVyZSBpcyBhbiBpbml0aWFsIHZhbHVlXG4gICAgICogVGhlIGlzc3VlIGlzIHByb2JhYmx5IGR1ZSB0byB0aGUgZmFjdCB0aGF0IG9wdGlvbnMgYXJlIGRlZmluZWQgd2l0aGluZyB0aGUgKipjb250ZW50KipcbiAgICAgKiAoc3Atb3B0aW9uIGVsZW1lbnRzKSwgc28gdGhlIGxpc3Rib3ggdmFsdWUgY2FuIGNoYW5nZSBhZnRlciB0aGUgdmlldyBvZiBzZWxlY3QgaXMgY2hlY2tlZCxcbiAgICAgKiBpZiB0aGVyZSBpcyBhIGRlZmF1bHQgdmFsdWUuIEFuZCB0aGF0IGxlYWRzIHRvIHRoZSBlcnJvciwgc2luY2Ugd2UgaGF2ZSBiaW5kaW5ncyBpbiB0aGVcbiAgICAgKiB0ZW1wbGF0ZSwgc3VjaCBhcyBgZ2V0U2VsZWN0aW9uVGV4dCgpYCwgdGhhdCBkZXBlbmQgb24gdGhlIGxpc3Rib3ggdmFsdWUuXG4gICAgICovXG4gICAgaWYgKHRoaXMubGlzdGJveFZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMua2V5TWFuYWdlcj8uZGVzdHJveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGFuIGl0ZW0gaW4gdGhlIGxpc3Rib3ggaXMgc2VsZWN0ZWQuXG4gICAqL1xuICBfaGFuZGxlU2VsZWN0ZWQoKSB7XG4gICAgaWYgKCF0aGlzLm11bHRpcGxlKSB7XG4gICAgICB0aGlzLnRyaWdnZXJSZWY/LmNsb3NlKCk7XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCgpO1xuICB9XG5cbiAgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRyaWdnZXJSZWY/LmlzT3BlbigpID8/IGZhbHNlO1xuICB9XG5cbiAgb3BlbigpIHtcbiAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMudHJpZ2dlclJlZj8uY2xvc2UoKTtcbiAgfVxuXG4gIHRvZ2dsZSgpIHtcbiAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRGaWVsZExhYmVsPygpOiBzdHJpbmc7XG5cbiAgZ2V0TGFiZWxUZXh0KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuICh0aGlzLmdldEZpZWxkTGFiZWw/LigpID8/IHRoaXMuYXJpYUxhYmVsKT8udHJpbSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm46ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG4gIHB1YmxpYyBvblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHt9O1xuXG4gIHB1YmxpYyBfb25PcGVuKCk6IHZvaWQge1xuICAgIHRoaXMub3BlbmVkLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBfb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KCk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuID0gZm47XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICovXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqL1xuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICAgIHRoaXMudmFsdWVIb2xkZXIudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXROZXh0RW5hYmxlZE9wdGlvblZhbHVlKGRpcmVjdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0JyA9ICdyaWdodCcpIHtcbiAgICBjb25zdCBvcHRpb25zQXJyYXkgPSB0aGlzLm9wdGlvbnM/LnRvQXJyYXkoKSB8fCBbXTtcbiAgICBsZXQgbmV4dE5vbkRpc2FibGVkT3B0aW9uO1xuICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gdGhpcy5zZWxlY3RlZE9wdGlvbnNbMF07XG5cbiAgICBjb25zdCBjdXJyZW50T3B0aW9uSW5kZXggPVxuICAgICAgKHNlbGVjdGVkT3B0aW9uICYmIG9wdGlvbnNBcnJheS5pbmRleE9mKHNlbGVjdGVkT3B0aW9uKSkgPz8gLTE7XG4gICAgY29uc3Qgbm90RGlzYWJsZWQgPSAobzogT3B0aW9uQ29tcG9uZW50KSA9PiAhby5kaXNhYmxlZDtcblxuICAgIGlmIChjdXJyZW50T3B0aW9uSW5kZXggPT09IC0xKSB7XG4gICAgICBuZXh0Tm9uRGlzYWJsZWRPcHRpb24gPSBvcHRpb25zQXJyYXkuZmluZChub3REaXNhYmxlZCk7XG4gICAgfSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0Jykge1xuICAgICAgbmV4dE5vbkRpc2FibGVkT3B0aW9uID0gb3B0aW9uc0FycmF5XG4gICAgICAgIC5zbGljZSgwLCBjdXJyZW50T3B0aW9uSW5kZXgpXG4gICAgICAgIC5yZXZlcnNlKClcbiAgICAgICAgLmZpbmQobm90RGlzYWJsZWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBuZXh0Tm9uRGlzYWJsZWRPcHRpb24gPSBvcHRpb25zQXJyYXlcbiAgICAgICAgLnNsaWNlKGN1cnJlbnRPcHRpb25JbmRleCArIDEsIG9wdGlvbnNBcnJheS5sZW5ndGgpXG4gICAgICAgIC5maW5kKG5vdERpc2FibGVkKTtcbiAgICB9XG5cbiAgICBjb25zdCBuZXh0Tm9uRGlzYWJsZWRPcHRpb25JbmRleCA9IG5leHROb25EaXNhYmxlZE9wdGlvblxuICAgICAgPyBvcHRpb25zQXJyYXkuaW5kZXhPZihuZXh0Tm9uRGlzYWJsZWRPcHRpb24pXG4gICAgICA6IGN1cnJlbnRPcHRpb25JbmRleDtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5nZXQobmV4dE5vbkRpc2FibGVkT3B0aW9uSW5kZXgpPy52YWx1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0S2V5TWFuYWdlcigpOiB2b2lkIHtcbiAgICAvLyBkZXN0cm95IGFueSBleGlzdGluZyBrZXkgbWFuYWdlclxuICAgIHRoaXMua2V5TWFuYWdlcj8uZGVzdHJveSgpO1xuXG4gICAgdGhpcy5rZXlNYW5hZ2VyID0gbmV3IExpc3RLZXlNYW5hZ2VyPFxuICAgICAgeyB2YWx1ZTogc3RyaW5nIH0gJiBMaXN0S2V5TWFuYWdlck9wdGlvblxuICAgID4oXG4gICAgICB0aGlzLm9wdGlvbnMubWFwKChvcHRpb24pID0+ICh7XG4gICAgICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgICAgIGdldExhYmVsOiAoKSA9PiBvcHRpb24ubGFiZWwsXG4gICAgICAgIGRpc2FibGVkOiAhIW9wdGlvbi5kaXNhYmxlZCxcbiAgICAgIH0pKVxuICAgICkud2l0aFR5cGVBaGVhZCgpO1xuXG4gICAgdGhpcy5rZXlNYW5hZ2VyLmNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB0aGlzLm9wdGlvbnM/LmZpbmQoXG4gICAgICAgIChvcHRpb24pID0+IHRoaXMua2V5TWFuYWdlcj8uYWN0aXZlSXRlbT8udmFsdWUgPT09IG9wdGlvbi52YWx1ZVxuICAgICAgKTtcblxuICAgICAgaWYgKHNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICAgIHRoaXMubGlzdGJveFZhbHVlID0gW3NlbGVjdGVkT3B0aW9uLnZhbHVlXTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
269
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWNvbXBvbmVudC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZWxlY3Qvc3JjL2NvbW1vbi9zZWxlY3QtY29tcG9uZW50LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUV6RSxPQUFPLEVBQ0wsWUFBWSxFQUVaLGVBQWUsR0FDaEIsTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzNELE9BQU8sRUFFTCxjQUFjLEdBRWYsTUFBTSxtQkFBbUIsQ0FBQztBQUUzQixPQUFPLEVBQ0wsd0JBQXdCLEdBRXpCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQUc1RSxNQUFNLE9BQWdCLG1CQUFtQjtJQThFdkMsSUFBSSxZQUFZLENBQUMsS0FBd0I7UUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFDRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ3JD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QVk7Z0JBR25CLGNBQWM7c0JBRGIsS0FBSzt1QkFBQyxpQkFBaUI7Z0JBSXhCLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2VyY2VCb29sZWFuIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2NvZXJjZS1ib29sZWFuLmRlY29yYXRvcic7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtcbiAgTGlzdGJveENoaWxkLFxuICBMaXN0Ym94Q29tcG9uZW50LFxuICBPcHRpb25Db21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uL2xpc3Rib3gvcHVibGljX2FwaSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0b0lkIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2F1dG8taWQuZGVjb3JhdG9yJztcbmltcG9ydCB7XG4gIEZvY3VzT3JpZ2luLFxuICBMaXN0S2V5TWFuYWdlcixcbiAgTGlzdEtleU1hbmFnZXJPcHRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vcG9wb3Zlci9zcmMvcG9wb3Zlci10cmlnZ2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1xuICBNdWx0aVNlbGVjdERpcmVjdGl2ZUJhc2UsXG4gIFNlbGVjdFZhbHVlSG9sZGVyLFxufSBmcm9tICcuL3NlbGVjdC12YWx1ZS1ob2xkZXInO1xuaW1wb3J0IHsgU2VsZWN0aW9uVGV4dERpcmVjdGl2ZSB9IGZyb20gJy4uL3NlbGVjdC9zZWxlY3Rpb24tdGV4dC5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKCkgLy8gVGhpcyBpcyBuZWVkZWQgZm9yIGRlY29yYXRvcnMgbGlrZSBJbnB1dCB0byB3b3JrXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2VsZWN0Q29tcG9uZW50QmFzZVxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3lcbntcbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBpcyBkaXNhYmxlZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIEBDb2VyY2VCb29sZWFuXG4gIGRpc2FibGVkOiBCb29sZWFuSW5wdXQ7XG5cbiAgLyoqIEEgdW5pcXVlIGlkIGZvciB0aGUgc2VsZWN0LiBJZiBub25lIGlzIHN1cHBsaWVkLCBpdCB3aWxsIGJlIGF1dG8tZ2VuZXJhdGVkLiAqL1xuICBASW5wdXQoKVxuICBAQXV0b0lkKClcbiAgaWQgPSAnJztcblxuICAvKiogVGhlIG5hbWUgb2YgdGhlIGlucHV0LCB1c2VkIHdoZW4gc3VibWl0dGluZyBhbiBIVE1MIGZvcm0uICovXG4gIEBJbnB1dCgpXG4gIG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqIFRoZSBhdXRvY29tcGxldGUgYmVoYXZpb3IgKi9cbiAgQElucHV0KClcbiAgYXV0b2NvbXBsZXRlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0byBiZSBzaG93biBpZiBubyB2YWx1ZSBoYXMgYmVlbiBzZWxlY3RlZC5cbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHBvcG92ZXIgaXMgb3BlbmVkXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgb3BlbmVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgcG9wb3ZlciBpcyBjbG9zZWRcbiAgICovXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBjbG9zZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAQ29udGVudENoaWxkcmVuKE9wdGlvbkNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBwdWJsaWMgb3B0aW9uczogUXVlcnlMaXN0PE9wdGlvbkNvbXBvbmVudD4gPSBuZXcgUXVlcnlMaXN0PE9wdGlvbkNvbXBvbmVudD4oKTtcblxuICBAQ29udGVudENoaWxkcmVuKExpc3Rib3hDaGlsZClcbiAgcHVibGljIGxpc3Rib3hDaGlsZHJlbjogUXVlcnlMaXN0PExpc3Rib3hDaGlsZD4gPVxuICAgIG5ldyBRdWVyeUxpc3Q8TGlzdGJveENoaWxkPigpO1xuXG4gIC8qKlxuICAgKiBNYW5hZ2VzIGtleWJvYXJkIGV2ZW50cyBmb3Igb3B0aW9ucyBpbiB0aGUgcGFuZWwuXG4gICAqL1xuICBwcm90ZWN0ZWQga2V5TWFuYWdlcjpcbiAgICB8IExpc3RLZXlNYW5hZ2VyPHsgdmFsdWU6IHN0cmluZyB9ICYgTGlzdEtleU1hbmFnZXJPcHRpb24+XG4gICAgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHdoZW5ldmVyIHRoZSBkcm9wZG93biBpcyBjbG9zZWQgYXMgYSByZXN1bHQgb2YgYW4gb3B0aW9uIChhbHJlYWR5XG4gICAqIHNlbGVjdGVkIG9yIG5vdCkgYmVpbmcgc2VsZWN0ZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgc2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQElucHV0KCdhcmlhLWxhYmVsJylcbiAgYXJpYUxhYmVsOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCdhcmlhLWxhYmVsbGVkYnknKVxuICBhcmlhTGFiZWxsZWRieT86IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBDb250ZW50Q2hpbGQoU2VsZWN0aW9uVGV4dERpcmVjdGl2ZSlcbiAgc2VsZWN0aW9uVGV4dD86IFNlbGVjdGlvblRleHREaXJlY3RpdmU7XG5cbiAgLyoqXG4gICAqIFVzZWQgdG8gd29yayBhcm91bmQgRXhwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvciBlcnJvciB0aHJvd24gZnJvbSBIaWRkZW5TZWxlY3QsXG4gICAqIHdoZW4gdGhlIHNlbGVjdCBjb21wb25lbnQgaXMgcmVuZGVyZWQgZnJvbSBhIHRlbXBsYXRlIChlLmcuIHdpdGggKm5nSWYpLiBJdCdzIHNldCB0byB0cnVlXG4gICAqIGFzeW5jaHJvbm91c2x5IGFmdGVyIGNvbnRlbnQgaXMgaW5pdGlhbGl6ZWQsIHRvIGRlbGF5IHJlbmRlcmluZyBvZiB0aGluZ3MgdGhhdCBkZXBlbmQgb25cbiAgICogb3B0aW9ucy4gSXQncyBub3QgY2xlYXIgd2h5IHRoZSBpc3N1ZSBoYXBwZW5zLCBhbmQgaXQgb25seSBoYXBwZW5zIHdoZW4gc2VsZWN0IGlzIHVzZWQgd2l0aFxuICAgKiAqbmdJZiwgb3IgZ2VuZXJhbGx5IGluIGEgdGVtcGxhdGUuXG4gICAqL1xuICBfaW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICBzZXQgbGlzdGJveFZhbHVlKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSkge1xuICAgIHRoaXMudmFsdWVIb2xkZXIuc2V0RnJvbUxpc3Rib3hWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKHRoaXMudmFsdWVIb2xkZXIudmFsdWUpO1xuICB9XG4gIGdldCBsaXN0Ym94VmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVIb2xkZXIuZ2V0TGlzdGJveFZhbHVlKCk7XG4gIH1cbiAgZ2V0IHNlbGVjdGVkT3B0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5maWx0ZXIoKG9wdGlvbikgPT5cbiAgICAgIHRoaXMubGlzdGJveFZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHZhbHVlSG9sZGVyOiBTZWxlY3RWYWx1ZUhvbGRlcikge31cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgdHJpZ2dlclJlZjogUG9wb3ZlclRyaWdnZXJEaXJlY3RpdmUgfCB1bmRlZmluZWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCB0cmlnZ2VyRWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCB1bmRlZmluZWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBsaXN0Ym94OiBMaXN0Ym94Q29tcG9uZW50IHwgdW5kZWZpbmVkO1xuICBwdWJsaWMgYWJzdHJhY3QgZm9jdXMoZm9jdXNPcmlnaW46IEZvY3VzT3JpZ2luKTogdm9pZDtcbiAgcHVibGljIGFic3RyYWN0IGlzRm9jdXNlZCgpOiBib29sZWFuO1xuXG4gIGhhbmRsZUtleURvd24oJGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKCRldmVudC50YXJnZXQgIT09IHRoaXMudHJpZ2dlckVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgc3dpdGNoICgkZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgdGhpcy50cmlnZ2VyUmVmPy5vcGVuKCk7XG4gICAgICAgIC8vIHdlIG5lZWQgdG8gZGVsYXkgaXQgYSBsaXR0bGUsIHNpbmNlIHRoZSBsaXN0Ym94IHdpbGwgYXV0b2ZvY3VzXG4gICAgICAgIC8vIHRoZSBmaXJzdCBpdGVtLlxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5vcHRpb25zPy5sYXN0ICYmIHRoaXMubGlzdGJveFZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5saXN0Ym94Py5zZXRBY3RpdmVPcHRpb24odGhpcy5vcHRpb25zPy5sYXN0LnZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOlxuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBvcHRpb24gPSB0aGlzLmdldE5leHRFbmFibGVkT3B0aW9uVmFsdWUoXG4gICAgICAgICAgICAkZXZlbnQua2V5ID09PSAnQXJyb3dMZWZ0JyA/ICdsZWZ0JyA6ICdyaWdodCdcbiAgICAgICAgICApO1xuICAgICAgICAgIGlmIChvcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMubGlzdGJveFZhbHVlID0gW29wdGlvbl07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5rZXlNYW5hZ2VyPy5vbktleWRvd24oJGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBnZXRTZWxlY3Rpb25UZXh0KCk6IHN0cmluZyB7XG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb25zID0gdGhpcy5zZWxlY3RlZE9wdGlvbnM7XG4gICAgaWYgKHNlbGVjdGVkT3B0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgaWYgKHNlbGVjdGVkT3B0aW9ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBzZWxlY3RlZE9wdGlvbnNbMF0/LmxhYmVsO1xuICAgIH1cbiAgICByZXR1cm4gYCR7XG4gICAgICBzZWxlY3RlZE9wdGlvbnMubGVuZ3RoID09PSB0aGlzLm9wdGlvbnMubGVuZ3RoXG4gICAgICAgID8gJ0FsbCdcbiAgICAgICAgOiBzZWxlY3RlZE9wdGlvbnMubGVuZ3RoXG4gICAgfSBzZWxlY3RlZGA7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciBtdWx0aXBsZSBzZWxlY3Rpb24gaXMgYWxsb3dlZC5cbiAgICovXG4gIGdldCBtdWx0aXBsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUhvbGRlciBpbnN0YW5jZW9mIE11bHRpU2VsZWN0RGlyZWN0aXZlQmFzZTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRLZXlNYW5hZ2VyKCk7XG5cbiAgICB0aGlzLm9wdGlvbnMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5pbml0S2V5TWFuYWdlcigpO1xuICAgIH0pO1xuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgdGhpcy5faW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIC8qKlxuICAgICAqIFRoaXMgaXMgdG8gYXZvaWQgYW4gTkcwMTAwIEV4cHJlc3Npb25DaGFuZ2VkQWZ0ZXIuLi4gZXJyb3Igd2hlbiB0aGVyZSBpcyBhbiBpbml0aWFsIHZhbHVlXG4gICAgICogVGhlIGlzc3VlIGlzIHByb2JhYmx5IGR1ZSB0byB0aGUgZmFjdCB0aGF0IG9wdGlvbnMgYXJlIGRlZmluZWQgd2l0aGluZyB0aGUgKipjb250ZW50KipcbiAgICAgKiAoc3Atb3B0aW9uIGVsZW1lbnRzKSwgc28gdGhlIGxpc3Rib3ggdmFsdWUgY2FuIGNoYW5nZSBhZnRlciB0aGUgdmlldyBvZiBzZWxlY3QgaXMgY2hlY2tlZCxcbiAgICAgKiBpZiB0aGVyZSBpcyBhIGRlZmF1bHQgdmFsdWUuIEFuZCB0aGF0IGxlYWRzIHRvIHRoZSBlcnJvciwgc2luY2Ugd2UgaGF2ZSBiaW5kaW5ncyBpbiB0aGVcbiAgICAgKiB0ZW1wbGF0ZSwgc3VjaCBhcyBgZ2V0U2VsZWN0aW9uVGV4dCgpYCwgdGhhdCBkZXBlbmQgb24gdGhlIGxpc3Rib3ggdmFsdWUuXG4gICAgICovXG4gICAgaWYgKHRoaXMubGlzdGJveFZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMua2V5TWFuYWdlcj8uZGVzdHJveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGFuIGl0ZW0gaW4gdGhlIGxpc3Rib3ggaXMgc2VsZWN0ZWQuXG4gICAqL1xuICBfaGFuZGxlU2VsZWN0ZWQoKSB7XG4gICAgaWYgKCF0aGlzLm11bHRpcGxlKSB7XG4gICAgICB0aGlzLnRyaWdnZXJSZWY/LmNsb3NlKCk7XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWQuZW1pdCgpO1xuICB9XG5cbiAgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRyaWdnZXJSZWY/LmlzT3BlbigpID8/IGZhbHNlO1xuICB9XG5cbiAgb3BlbigpIHtcbiAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMudHJpZ2dlclJlZj8uY2xvc2UoKTtcbiAgfVxuXG4gIHRvZ2dsZSgpIHtcbiAgICB0aGlzLnRyaWdnZXJSZWY/Lm9wZW4oKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRGaWVsZExhYmVsPygpOiBzdHJpbmc7XG5cbiAgZ2V0TGFiZWxUZXh0KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuICh0aGlzLmdldEZpZWxkTGFiZWw/LigpID8/IHRoaXMuYXJpYUxhYmVsKT8udHJpbSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm46ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG4gIHB1YmxpYyBvblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHt9O1xuXG4gIHB1YmxpYyBfb25PcGVuKCk6IHZvaWQge1xuICAgIHRoaXMub3BlbmVkLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBfb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KCk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuID0gZm47XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICovXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqL1xuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKi9cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICAgIHRoaXMudmFsdWVIb2xkZXIudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXROZXh0RW5hYmxlZE9wdGlvblZhbHVlKGRpcmVjdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0JyA9ICdyaWdodCcpIHtcbiAgICBjb25zdCBvcHRpb25zQXJyYXkgPSB0aGlzLm9wdGlvbnM/LnRvQXJyYXkoKSB8fCBbXTtcbiAgICBsZXQgbmV4dE5vbkRpc2FibGVkT3B0aW9uO1xuICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gdGhpcy5zZWxlY3RlZE9wdGlvbnNbMF07XG5cbiAgICBjb25zdCBjdXJyZW50T3B0aW9uSW5kZXggPVxuICAgICAgKHNlbGVjdGVkT3B0aW9uICYmIG9wdGlvbnNBcnJheS5pbmRleE9mKHNlbGVjdGVkT3B0aW9uKSkgPz8gLTE7XG4gICAgY29uc3Qgbm90RGlzYWJsZWQgPSAobzogT3B0aW9uQ29tcG9uZW50KSA9PiAhby5kaXNhYmxlZDtcblxuICAgIGlmIChjdXJyZW50T3B0aW9uSW5kZXggPT09IC0xKSB7XG4gICAgICBuZXh0Tm9uRGlzYWJsZWRPcHRpb24gPSBvcHRpb25zQXJyYXkuZmluZChub3REaXNhYmxlZCk7XG4gICAgfSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0Jykge1xuICAgICAgbmV4dE5vbkRpc2FibGVkT3B0aW9uID0gb3B0aW9uc0FycmF5XG4gICAgICAgIC5zbGljZSgwLCBjdXJyZW50T3B0aW9uSW5kZXgpXG4gICAgICAgIC5yZXZlcnNlKClcbiAgICAgICAgLmZpbmQobm90RGlzYWJsZWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBuZXh0Tm9uRGlzYWJsZWRPcHRpb24gPSBvcHRpb25zQXJyYXlcbiAgICAgICAgLnNsaWNlKGN1cnJlbnRPcHRpb25JbmRleCArIDEsIG9wdGlvbnNBcnJheS5sZW5ndGgpXG4gICAgICAgIC5maW5kKG5vdERpc2FibGVkKTtcbiAgICB9XG5cbiAgICBjb25zdCBuZXh0Tm9uRGlzYWJsZWRPcHRpb25JbmRleCA9IG5leHROb25EaXNhYmxlZE9wdGlvblxuICAgICAgPyBvcHRpb25zQXJyYXkuaW5kZXhPZihuZXh0Tm9uRGlzYWJsZWRPcHRpb24pXG4gICAgICA6IGN1cnJlbnRPcHRpb25JbmRleDtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5nZXQobmV4dE5vbkRpc2FibGVkT3B0aW9uSW5kZXgpPy52YWx1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0S2V5TWFuYWdlcigpOiB2b2lkIHtcbiAgICAvLyBkZXN0cm95IGFueSBleGlzdGluZyBrZXkgbWFuYWdlclxuICAgIHRoaXMua2V5TWFuYWdlcj8uZGVzdHJveSgpO1xuXG4gICAgdGhpcy5rZXlNYW5hZ2VyID0gbmV3IExpc3RLZXlNYW5hZ2VyPFxuICAgICAgeyB2YWx1ZTogc3RyaW5nIH0gJiBMaXN0S2V5TWFuYWdlck9wdGlvblxuICAgID4oXG4gICAgICB0aGlzLm9wdGlvbnMubWFwKChvcHRpb24pID0+ICh7XG4gICAgICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgICAgIGdldExhYmVsOiAoKSA9PiBvcHRpb24ubGFiZWwsXG4gICAgICAgIGRpc2FibGVkOiAhIW9wdGlvbi5kaXNhYmxlZCxcbiAgICAgIH0pKVxuICAgICkud2l0aFR5cGVBaGVhZCgpO1xuXG4gICAgdGhpcy5rZXlNYW5hZ2VyLmNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB0aGlzLm9wdGlvbnM/LmZpbmQoXG4gICAgICAgIChvcHRpb24pID0+IHRoaXMua2V5TWFuYWdlcj8uYWN0aXZlSXRlbT8udmFsdWUgPT09IG9wdGlvbi52YWx1ZVxuICAgICAgKTtcblxuICAgICAgaWYgKHNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICAgIHRoaXMubGlzdGJveFZhbHVlID0gW3NlbGVjdGVkT3B0aW9uLnZhbHVlXTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -305,7 +305,7 @@ SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versio
305
305
  provide: FieldControl,
306
306
  useExisting: forwardRef(() => SelectComponent),
307
307
  },
308
- ], viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerRef"], descendants: true }, { propertyName: "triggerElementRef", first: true, predicate: ["triggerElementRef"], descendants: true, read: ElementRef }, { propertyName: "listbox", first: true, predicate: ListboxComponent, descendants: true }, { propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true, read: ElementRef }], exportAs: ["spSelect"], usesInheritance: true, hostDirectives: [{ directive: i5.UseComponentStylesOnHost }], ngImport: i0, template: "<sp-hidden-select></sp-hidden-select>\n<div\n role=\"button\"\n aria-haspopup=\"listbox\"\n class=\"sapphire-select__button\"\n [spPopoverTriggerFor]=\"popover\"\n [spPopoverTriggerDisabled]=\"disabled\"\n spPopoverTriggerOpenOnPressStart\n spPopoverTriggerCloseOnScroll\n spPopoverPlacement=\"bottom start\"\n #triggerElementRef\n #triggerRef=\"spPopoverTrigger\"\n (keydown)=\"handleKeyDown($event)\"\n (spPopoverTriggerClosed)=\"_onClose()\"\n (spPopoverTriggerOpened)=\"_onOpen()\"\n (focus)=\"_onFocus()\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"_onFocusChange($event)\"\n [spPopoverNonModal]=\"searchable\"\n [id]=\"id\"\n [tabindex]=\"-1\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"_getAriaLabelledBy()\"\n [attr.aria-describedby]=\"_field?.error?.id || _field?.note?.id\"\n [attr.aria-invalid]=\"_field?.hasError() ? true : null\"\n>\n <div class=\"sapphire-select__value\" [id]=\"_valueContainerId\">\n <input\n *ngIf=\"searchable\"\n #searchInput\n tabindex=\"-1\"\n role=\"combobox\"\n class=\"sapphire-select__search-input\"\n [spListboxInput]=\"listbox\"\n [spVisuallyHidden]=\"!_isInputVisible()\"\n [attr.data-hidden]=\"!_isInputVisible()\"\n [placeholder]=\"placeholder || ''\"\n (keydown)=\"_onInputKeydown($event)\"\n (beforeinput)=\"open()\"\n [value]=\"_searchableSelectDirective?.searchValue\"\n (input)=\"_onSearchInput($event)\"\n />\n <ng-container *ngIf=\"!searchable || !_isInputVisible()\">\n <div\n *ngIf=\"selectedOptions.length === 0\"\n class=\"sapphire-select__placeholder\"\n >\n {{ placeholder }}\n </div>\n <ng-container *ngIf=\"selectedOptions.length > 0\">\n <ng-container *ngIf=\"!selectionText\">{{\n getSelectionText()\n }}</ng-container>\n <ng-content select=\"sp-selection-text\"></ng-content>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"sapphire-select__icon-container\">\n <sp-icon name=\"chevronDown\"></sp-icon>\n </div>\n</div>\n<ng-template #popover>\n <sp-popover\n [style.display]=\"\n (filteredChildren$ | async)?.length === 0 ? 'none' : undefined\n \"\n noPadding\n noMaxWidth\n [style.min-width]=\"triggerElementRef.offsetWidth + 'px'\"\n >\n <sp-listbox\n [spListboxItems]=\"(filteredChildren$ | async) || undefined\"\n navigationWrapDisabled\n [multiple]=\"multiple\"\n [(selectedValues)]=\"listboxValue\"\n (selectedValuesChange)=\"_searchableSelectDirective?.setSearchValue('')\"\n (selected)=\"_handleSelected()\"\n [size]=\"_field?.size\"\n >\n </sp-listbox>\n </sp-popover>\n</ng-template>\n", styles: [".sapphire-select{position:relative;display:inline-block;color:var(--sapphire-select-color-content);width:var(--sapphire-select-size-width-control);font-family:var(--sapphire-select-font-name);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-select__button{display:flex;align-items:center;height:var(--sapphire-select-size-height-field-l);box-sizing:border-box;cursor:pointer;padding:0 var(--sapphire-select-size-spacing-control-horizontal-l);border:none;background-color:var(--sapphire-select-color-background-field);width:100%;outline:0;text-align:left;color:inherit;font-family:inherit;box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-default);border-radius:var(--sapphire-select-size-radius-field)}.sapphire-select--medium .sapphire-select__button{height:var(--sapphire-select-size-height-field-m);padding:0 var(--sapphire-select-size-spacing-control-horizontal-m)}.sapphire-select__value{flex:1 0 0;min-width:0;font-size:var(--sapphire-select-size-font-content-l);width:100%;font-weight:var(--sapphire-select-size-font-weight-item);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sapphire-select--medium .sapphire-select__value{font-size:var(--sapphire-select-size-font-content-m)}.sapphire-select__placeholder{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sapphire-select-color-placeholder)}.sapphire-select__icon-container{line-height:0;width:var(--sapphire-select-size-width-icon-l);height:var(--sapphire-select-size-height-icon-l)}.sapphire-select--medium .sapphire-select__icon-container{width:var(--sapphire-select-size-width-icon-m);height:var(--sapphire-select-size-height-icon-m)}.sapphire-select__search-input:not([data-hidden=true]){all:inherit}.sapphire-select__search-input::placeholder{color:var(--sapphire-select-color-placeholder)}.sapphire-select__native-select{position:absolute;inset:0;opacity:.01;width:100%;z-index:1}.sapphire-select--error:not(.is-disabled) .sapphire-select__button{box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-error)}.sapphire-select:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-focus-ring)}.sapphire-select--error:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-border-field-error)}.sapphire-select.is-disabled .sapphire-select__button{cursor:not-allowed}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.IconComponent, selector: "sp-icon", inputs: ["name", "size"] }, { kind: "component", type: i8.ListboxComponent, selector: "sp-listbox", inputs: ["selectedValues", "spListboxItems", "disabled", "multiple", "navigationWrapDisabled", "aria-label", "aria-labelledby", "size", "id"], outputs: ["selectedValuesChange", "selected"], exportAs: ["spListbox"] }, { kind: "directive", type: i9.ListboxInputDirective, selector: "input[spListboxInput]", inputs: ["spListboxInput"] }, { kind: "component", type: i10.PopoverComponent, selector: "sp-popover", inputs: ["noPadding", "noMaxWidth", "noAutoFocus", "trapFocus"] }, { kind: "directive", type: i11.PopoverTriggerDirective, selector: "[spPopoverTriggerFor]", inputs: ["spPopoverPlacement", "spPopoverTriggerFor", "spPopoverNonModal", "spPopoverTriggerOpenOnPressStart", "spPopoverTriggerCloseOnScroll", "spPopoverTriggerDisabled"], outputs: ["spPopoverTriggerOpened", "spPopoverTriggerClosed"], exportAs: ["spPopoverTrigger"] }, { kind: "directive", type: i2.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "directive", type: i12.VisuallyHiddenDirective, selector: "[spVisuallyHidden]", inputs: ["spVisuallyHidden"] }, { kind: "component", type: i13.HiddenSelectComponent, selector: "sp-hidden-select" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
308
+ ], viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerRef"], descendants: true }, { propertyName: "triggerElementRef", first: true, predicate: ["triggerElementRef"], descendants: true, read: ElementRef }, { propertyName: "listbox", first: true, predicate: ListboxComponent, descendants: true }, { propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true, read: ElementRef }], exportAs: ["spSelect"], usesInheritance: true, hostDirectives: [{ directive: i5.UseComponentStylesOnHost }], ngImport: i0, template: "<sp-hidden-select></sp-hidden-select>\n<div\n role=\"button\"\n aria-haspopup=\"listbox\"\n class=\"sapphire-select__button\"\n [spPopoverTriggerFor]=\"popover\"\n [spPopoverTriggerDisabled]=\"disabled\"\n spPopoverTriggerOpenOnPressStart\n spPopoverTriggerCloseOnScroll\n spPopoverPlacement=\"bottom start\"\n #triggerElementRef\n #triggerRef=\"spPopoverTrigger\"\n (keydown)=\"handleKeyDown($event)\"\n (spPopoverTriggerClosed)=\"_onClose()\"\n (spPopoverTriggerOpened)=\"_onOpen()\"\n (focus)=\"_onFocus()\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"_onFocusChange($event)\"\n [spPopoverNonModal]=\"searchable\"\n [id]=\"id\"\n [tabindex]=\"-1\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"_getAriaLabelledBy()\"\n [attr.aria-describedby]=\"_field?.error?.id || _field?.note?.id\"\n [attr.aria-invalid]=\"_field?.hasError() ? true : null\"\n>\n <div class=\"sapphire-select__value\" [id]=\"_valueContainerId\">\n <input\n *ngIf=\"searchable\"\n #searchInput\n tabindex=\"-1\"\n role=\"combobox\"\n class=\"sapphire-select__search-input\"\n [spListboxInput]=\"listbox\"\n [spVisuallyHidden]=\"!_isInputVisible()\"\n [attr.data-hidden]=\"!_isInputVisible()\"\n [placeholder]=\"placeholder || ''\"\n (keydown)=\"_onInputKeydown($event)\"\n (beforeinput)=\"open()\"\n [value]=\"_searchableSelectDirective?.searchValue\"\n (input)=\"_onSearchInput($event)\"\n />\n <ng-container *ngIf=\"!searchable || !_isInputVisible()\">\n <div\n *ngIf=\"selectedOptions.length === 0\"\n class=\"sapphire-select__placeholder\"\n >\n {{ placeholder }}\n </div>\n <ng-container *ngIf=\"selectedOptions.length > 0\">\n <ng-container *ngIf=\"!selectionText\">{{\n getSelectionText()\n }}</ng-container>\n <ng-content select=\"sp-selection-text\"></ng-content>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"sapphire-select__icon-container\">\n <sp-icon name=\"chevronDown\"></sp-icon>\n </div>\n</div>\n<ng-template #popover>\n <sp-popover\n [style.display]=\"\n (filteredChildren$ | async)?.length === 0 ? 'none' : undefined\n \"\n noPadding\n noMaxWidth\n [style.min-width]=\"triggerElementRef.offsetWidth + 'px'\"\n >\n <sp-listbox\n [spListboxItems]=\"(filteredChildren$ | async) || undefined\"\n navigationWrapDisabled\n [multiple]=\"multiple\"\n [(selectedValues)]=\"listboxValue\"\n (selectedValuesChange)=\"_searchableSelectDirective?.setSearchValue('')\"\n (selected)=\"_handleSelected()\"\n [size]=\"_field?.size\"\n >\n </sp-listbox>\n </sp-popover>\n</ng-template>\n", styles: [".sapphire-select{position:relative;display:inline-block;color:var(--sapphire-select-color-content);width:var(--sapphire-select-size-width-control);font-family:var(--sapphire-select-font-name);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-select__button{display:flex;align-items:center;height:var(--sapphire-select-size-height-field-l);box-sizing:border-box;cursor:pointer;padding:0 var(--sapphire-select-size-spacing-control-horizontal-l);border:none;background-color:var(--sapphire-select-color-background-field);width:100%;outline:0;text-align:left;color:inherit;font-family:inherit;box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-default);border-radius:var(--sapphire-select-size-radius-field);gap:var(--sapphire-select-size-spacing-control-gap-l)}.sapphire-select--medium .sapphire-select__button{height:var(--sapphire-select-size-height-field-m);padding:0 var(--sapphire-select-size-spacing-control-horizontal-m);gap:var(--sapphire-select-size-spacing-control-gap-m)}.sapphire-select__value{flex:1 0 0;min-width:0;font-size:var(--sapphire-select-size-font-content-l);width:100%;font-weight:var(--sapphire-select-size-font-weight-item);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sapphire-select--medium .sapphire-select__value{font-size:var(--sapphire-select-size-font-content-m)}.sapphire-select__placeholder{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sapphire-select-color-placeholder)}.sapphire-select__icon-container{line-height:0;width:var(--sapphire-select-size-width-icon-l);height:var(--sapphire-select-size-height-icon-l)}.sapphire-select--medium .sapphire-select__icon-container{width:var(--sapphire-select-size-width-icon-m);height:var(--sapphire-select-size-height-icon-m)}.sapphire-select__prefix{display:inherit;font-size:var(--sapphire-select-size-font-content-l)}.sapphire-select--medium .sapphire-select__prefix{font-size:var(--sapphire-select-size-font-content-m)}.sapphire-select__search-input:not([data-hidden=true]){all:inherit}.sapphire-select__search-input::placeholder{color:var(--sapphire-select-color-placeholder)}.sapphire-select__native-select{position:absolute;inset:0;opacity:.01;width:100%;z-index:1}.sapphire-select--error:not(.is-disabled) .sapphire-select__button{box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-error)}.sapphire-select:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-focus-ring)}.sapphire-select--error:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-border-field-error)}.sapphire-select.is-disabled .sapphire-select__button{cursor:not-allowed}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.IconComponent, selector: "sp-icon", inputs: ["name", "size"] }, { kind: "component", type: i8.ListboxComponent, selector: "sp-listbox", inputs: ["selectedValues", "spListboxItems", "disabled", "multiple", "navigationWrapDisabled", "aria-label", "aria-labelledby", "size", "id"], outputs: ["selectedValuesChange", "selected"], exportAs: ["spListbox"] }, { kind: "directive", type: i9.ListboxInputDirective, selector: "input[spListboxInput]", inputs: ["spListboxInput"] }, { kind: "component", type: i10.PopoverComponent, selector: "sp-popover", inputs: ["noPadding", "noMaxWidth", "noAutoFocus", "trapFocus"] }, { kind: "directive", type: i11.PopoverTriggerDirective, selector: "[spPopoverTriggerFor]", inputs: ["spPopoverPlacement", "spPopoverTriggerFor", "spPopoverNonModal", "spPopoverTriggerOpenOnPressStart", "spPopoverTriggerCloseOnScroll", "spPopoverTriggerDisabled"], outputs: ["spPopoverTriggerOpened", "spPopoverTriggerClosed"], exportAs: ["spPopoverTrigger"] }, { kind: "directive", type: i2.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "directive", type: i12.VisuallyHiddenDirective, selector: "[spVisuallyHidden]", inputs: ["spVisuallyHidden"] }, { kind: "component", type: i13.HiddenSelectComponent, selector: "sp-hidden-select" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
309
309
  __decorate([
310
310
  AutoId()
311
311
  ], SelectComponent.prototype, "_valueContainerId", void 0);
@@ -335,7 +335,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
335
335
  '[attr.aria-label]': 'null',
336
336
  '[attr.aria-labelledby]': 'null',
337
337
  '[attr.placeholder]': 'null',
338
- }, hostDirectives: [UseComponentStylesOnHost], template: "<sp-hidden-select></sp-hidden-select>\n<div\n role=\"button\"\n aria-haspopup=\"listbox\"\n class=\"sapphire-select__button\"\n [spPopoverTriggerFor]=\"popover\"\n [spPopoverTriggerDisabled]=\"disabled\"\n spPopoverTriggerOpenOnPressStart\n spPopoverTriggerCloseOnScroll\n spPopoverPlacement=\"bottom start\"\n #triggerElementRef\n #triggerRef=\"spPopoverTrigger\"\n (keydown)=\"handleKeyDown($event)\"\n (spPopoverTriggerClosed)=\"_onClose()\"\n (spPopoverTriggerOpened)=\"_onOpen()\"\n (focus)=\"_onFocus()\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"_onFocusChange($event)\"\n [spPopoverNonModal]=\"searchable\"\n [id]=\"id\"\n [tabindex]=\"-1\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"_getAriaLabelledBy()\"\n [attr.aria-describedby]=\"_field?.error?.id || _field?.note?.id\"\n [attr.aria-invalid]=\"_field?.hasError() ? true : null\"\n>\n <div class=\"sapphire-select__value\" [id]=\"_valueContainerId\">\n <input\n *ngIf=\"searchable\"\n #searchInput\n tabindex=\"-1\"\n role=\"combobox\"\n class=\"sapphire-select__search-input\"\n [spListboxInput]=\"listbox\"\n [spVisuallyHidden]=\"!_isInputVisible()\"\n [attr.data-hidden]=\"!_isInputVisible()\"\n [placeholder]=\"placeholder || ''\"\n (keydown)=\"_onInputKeydown($event)\"\n (beforeinput)=\"open()\"\n [value]=\"_searchableSelectDirective?.searchValue\"\n (input)=\"_onSearchInput($event)\"\n />\n <ng-container *ngIf=\"!searchable || !_isInputVisible()\">\n <div\n *ngIf=\"selectedOptions.length === 0\"\n class=\"sapphire-select__placeholder\"\n >\n {{ placeholder }}\n </div>\n <ng-container *ngIf=\"selectedOptions.length > 0\">\n <ng-container *ngIf=\"!selectionText\">{{\n getSelectionText()\n }}</ng-container>\n <ng-content select=\"sp-selection-text\"></ng-content>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"sapphire-select__icon-container\">\n <sp-icon name=\"chevronDown\"></sp-icon>\n </div>\n</div>\n<ng-template #popover>\n <sp-popover\n [style.display]=\"\n (filteredChildren$ | async)?.length === 0 ? 'none' : undefined\n \"\n noPadding\n noMaxWidth\n [style.min-width]=\"triggerElementRef.offsetWidth + 'px'\"\n >\n <sp-listbox\n [spListboxItems]=\"(filteredChildren$ | async) || undefined\"\n navigationWrapDisabled\n [multiple]=\"multiple\"\n [(selectedValues)]=\"listboxValue\"\n (selectedValuesChange)=\"_searchableSelectDirective?.setSearchValue('')\"\n (selected)=\"_handleSelected()\"\n [size]=\"_field?.size\"\n >\n </sp-listbox>\n </sp-popover>\n</ng-template>\n", styles: [".sapphire-select{position:relative;display:inline-block;color:var(--sapphire-select-color-content);width:var(--sapphire-select-size-width-control);font-family:var(--sapphire-select-font-name);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-select__button{display:flex;align-items:center;height:var(--sapphire-select-size-height-field-l);box-sizing:border-box;cursor:pointer;padding:0 var(--sapphire-select-size-spacing-control-horizontal-l);border:none;background-color:var(--sapphire-select-color-background-field);width:100%;outline:0;text-align:left;color:inherit;font-family:inherit;box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-default);border-radius:var(--sapphire-select-size-radius-field)}.sapphire-select--medium .sapphire-select__button{height:var(--sapphire-select-size-height-field-m);padding:0 var(--sapphire-select-size-spacing-control-horizontal-m)}.sapphire-select__value{flex:1 0 0;min-width:0;font-size:var(--sapphire-select-size-font-content-l);width:100%;font-weight:var(--sapphire-select-size-font-weight-item);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sapphire-select--medium .sapphire-select__value{font-size:var(--sapphire-select-size-font-content-m)}.sapphire-select__placeholder{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sapphire-select-color-placeholder)}.sapphire-select__icon-container{line-height:0;width:var(--sapphire-select-size-width-icon-l);height:var(--sapphire-select-size-height-icon-l)}.sapphire-select--medium .sapphire-select__icon-container{width:var(--sapphire-select-size-width-icon-m);height:var(--sapphire-select-size-height-icon-m)}.sapphire-select__search-input:not([data-hidden=true]){all:inherit}.sapphire-select__search-input::placeholder{color:var(--sapphire-select-color-placeholder)}.sapphire-select__native-select{position:absolute;inset:0;opacity:.01;width:100%;z-index:1}.sapphire-select--error:not(.is-disabled) .sapphire-select__button{box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-error)}.sapphire-select:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-focus-ring)}.sapphire-select--error:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-border-field-error)}.sapphire-select.is-disabled .sapphire-select__button{cursor:not-allowed}\n"] }]
338
+ }, hostDirectives: [UseComponentStylesOnHost], template: "<sp-hidden-select></sp-hidden-select>\n<div\n role=\"button\"\n aria-haspopup=\"listbox\"\n class=\"sapphire-select__button\"\n [spPopoverTriggerFor]=\"popover\"\n [spPopoverTriggerDisabled]=\"disabled\"\n spPopoverTriggerOpenOnPressStart\n spPopoverTriggerCloseOnScroll\n spPopoverPlacement=\"bottom start\"\n #triggerElementRef\n #triggerRef=\"spPopoverTrigger\"\n (keydown)=\"handleKeyDown($event)\"\n (spPopoverTriggerClosed)=\"_onClose()\"\n (spPopoverTriggerOpened)=\"_onOpen()\"\n (focus)=\"_onFocus()\"\n cdkMonitorSubtreeFocus\n (cdkFocusChange)=\"_onFocusChange($event)\"\n [spPopoverNonModal]=\"searchable\"\n [id]=\"id\"\n [tabindex]=\"-1\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"_getAriaLabelledBy()\"\n [attr.aria-describedby]=\"_field?.error?.id || _field?.note?.id\"\n [attr.aria-invalid]=\"_field?.hasError() ? true : null\"\n>\n <div class=\"sapphire-select__value\" [id]=\"_valueContainerId\">\n <input\n *ngIf=\"searchable\"\n #searchInput\n tabindex=\"-1\"\n role=\"combobox\"\n class=\"sapphire-select__search-input\"\n [spListboxInput]=\"listbox\"\n [spVisuallyHidden]=\"!_isInputVisible()\"\n [attr.data-hidden]=\"!_isInputVisible()\"\n [placeholder]=\"placeholder || ''\"\n (keydown)=\"_onInputKeydown($event)\"\n (beforeinput)=\"open()\"\n [value]=\"_searchableSelectDirective?.searchValue\"\n (input)=\"_onSearchInput($event)\"\n />\n <ng-container *ngIf=\"!searchable || !_isInputVisible()\">\n <div\n *ngIf=\"selectedOptions.length === 0\"\n class=\"sapphire-select__placeholder\"\n >\n {{ placeholder }}\n </div>\n <ng-container *ngIf=\"selectedOptions.length > 0\">\n <ng-container *ngIf=\"!selectionText\">{{\n getSelectionText()\n }}</ng-container>\n <ng-content select=\"sp-selection-text\"></ng-content>\n </ng-container>\n </ng-container>\n </div>\n <div class=\"sapphire-select__icon-container\">\n <sp-icon name=\"chevronDown\"></sp-icon>\n </div>\n</div>\n<ng-template #popover>\n <sp-popover\n [style.display]=\"\n (filteredChildren$ | async)?.length === 0 ? 'none' : undefined\n \"\n noPadding\n noMaxWidth\n [style.min-width]=\"triggerElementRef.offsetWidth + 'px'\"\n >\n <sp-listbox\n [spListboxItems]=\"(filteredChildren$ | async) || undefined\"\n navigationWrapDisabled\n [multiple]=\"multiple\"\n [(selectedValues)]=\"listboxValue\"\n (selectedValuesChange)=\"_searchableSelectDirective?.setSearchValue('')\"\n (selected)=\"_handleSelected()\"\n [size]=\"_field?.size\"\n >\n </sp-listbox>\n </sp-popover>\n</ng-template>\n", styles: [".sapphire-select{position:relative;display:inline-block;color:var(--sapphire-select-color-content);width:var(--sapphire-select-size-width-control);font-family:var(--sapphire-select-font-name);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sapphire-select__button{display:flex;align-items:center;height:var(--sapphire-select-size-height-field-l);box-sizing:border-box;cursor:pointer;padding:0 var(--sapphire-select-size-spacing-control-horizontal-l);border:none;background-color:var(--sapphire-select-color-background-field);width:100%;outline:0;text-align:left;color:inherit;font-family:inherit;box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-default);border-radius:var(--sapphire-select-size-radius-field);gap:var(--sapphire-select-size-spacing-control-gap-l)}.sapphire-select--medium .sapphire-select__button{height:var(--sapphire-select-size-height-field-m);padding:0 var(--sapphire-select-size-spacing-control-horizontal-m);gap:var(--sapphire-select-size-spacing-control-gap-m)}.sapphire-select__value{flex:1 0 0;min-width:0;font-size:var(--sapphire-select-size-font-content-l);width:100%;font-weight:var(--sapphire-select-size-font-weight-item);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sapphire-select--medium .sapphire-select__value{font-size:var(--sapphire-select-size-font-content-m)}.sapphire-select__placeholder{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sapphire-select-color-placeholder)}.sapphire-select__icon-container{line-height:0;width:var(--sapphire-select-size-width-icon-l);height:var(--sapphire-select-size-height-icon-l)}.sapphire-select--medium .sapphire-select__icon-container{width:var(--sapphire-select-size-width-icon-m);height:var(--sapphire-select-size-height-icon-m)}.sapphire-select__prefix{display:inherit;font-size:var(--sapphire-select-size-font-content-l)}.sapphire-select--medium .sapphire-select__prefix{font-size:var(--sapphire-select-size-font-content-m)}.sapphire-select__search-input:not([data-hidden=true]){all:inherit}.sapphire-select__search-input::placeholder{color:var(--sapphire-select-color-placeholder)}.sapphire-select__native-select{position:absolute;inset:0;opacity:.01;width:100%;z-index:1}.sapphire-select--error:not(.is-disabled) .sapphire-select__button{box-shadow:inset 0 0 0 1px var(--sapphire-select-color-border-field-error)}.sapphire-select:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-focus-ring)}.sapphire-select--error:not(.is-disabled).is-focus .sapphire-select__button{box-shadow:inset 0 0 0 var(--sapphire-select-size-focus-ring) var(--sapphire-select-color-border-field-error)}.sapphire-select.is-disabled .sapphire-select__button{cursor:not-allowed}\n"] }]
339
339
  }], ctorParameters: function () { return [{ type: i1.SelectValueHolder }, { type: i2.FocusMonitor }, { type: i2.InputModalityDetector }, { type: i3.FieldComponent, decorators: [{
340
340
  type: Optional
341
341
  }] }, { type: i4.SearchableSelectDirective, decorators: [{