@impartner/design-components 1.0.3 → 1.0.5
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.
- package/esm2020/lib/dropdown/dropdown.component.mjs +4 -2
- package/esm2020/lib/modal/modal.component.mjs +17 -9
- package/esm2020/lib/pagination/pagination.component.mjs +38 -28
- package/esm2020/lib/pagination/pagination.module.mjs +5 -4
- package/esm2020/services/interaction.service.mjs +22 -5
- package/fesm2015/impartner-design-components.mjs +77 -41
- package/fesm2015/impartner-design-components.mjs.map +1 -1
- package/fesm2020/impartner-design-components.mjs +77 -41
- package/fesm2020/impartner-design-components.mjs.map +1 -1
- package/lib/dropdown/dropdown.component.d.ts +4 -3
- package/lib/modal/modal.component.d.ts +2 -2
- package/lib/pagination/pagination.component.d.ts +2 -0
- package/lib/pagination/pagination.module.d.ts +3 -2
- package/package.json +1 -1
- package/services/interaction.service.d.ts +3 -0
|
@@ -46,7 +46,6 @@ export class DropdownComponent {
|
|
|
46
46
|
*/
|
|
47
47
|
this.buttonClick = new EventEmitter();
|
|
48
48
|
this.classBtnGroup = true;
|
|
49
|
-
this._interactableId = this._interactionService.add(this);
|
|
50
49
|
}
|
|
51
50
|
get classDropdown() {
|
|
52
51
|
return this.position === 'down';
|
|
@@ -77,6 +76,9 @@ export class DropdownComponent {
|
|
|
77
76
|
get shown() {
|
|
78
77
|
return this.valid && this.show;
|
|
79
78
|
}
|
|
79
|
+
ngOnInit() {
|
|
80
|
+
this._interactableId = this._interactionService.add(this);
|
|
81
|
+
}
|
|
80
82
|
ngOnDestroy() {
|
|
81
83
|
this._interactionService.remove(this.interactableId);
|
|
82
84
|
this._interactableId = 0;
|
|
@@ -137,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
137
139
|
type: HostListener,
|
|
138
140
|
args: ['document:click']
|
|
139
141
|
}] } });
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWNvbXBvbmVudHMvc3JjL2xpYi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFlBQVksRUFDWixNQUFNLEVBQ04sWUFBWSxFQUNaLFdBQVcsRUFFWCxlQUFlLEVBRWhCLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7QUFHckQ7Ozs7O0dBS0c7QUFNSCxNQUFNLE9BQU8saUJBQWlCO0lBaUc1QixZQUFvQixtQkFBdUM7UUFBdkMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQWhHbkQsb0JBQWUsR0FBRyxDQUFDLENBQUM7UUFFNUI7O1dBRUc7UUFFSCxTQUFJLEdBQUcsS0FBSyxDQUFDO1FBUWI7O1dBRUc7UUFFSCxnQkFBVyxHQUFnQixTQUFTLENBQUM7UUFFckM7O1dBRUc7UUFFSCxlQUFVLEdBQUcsRUFBRSxDQUFDO1FBRWhCLHFEQUFxRDtRQUNyRCxXQUFXO1FBQ1gsMEJBQTBCO1FBRTFCOztXQUVHO1FBRUgsYUFBUSxHQUFxQixNQUFNLENBQUM7UUFFcEM7O1dBRUc7UUFFSCxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBRWQ7O1dBRUc7UUFFSCxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUVyQzs7V0FFRztRQUVJLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUVaLGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBMkMzRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQTFDRCxJQUEyQyxhQUFhO1FBQ3RELE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQTBDLFlBQVk7UUFDcEQsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBNEMsY0FBYztRQUN4RCxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUF5QyxXQUFXO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUdELGVBQWUsQ0FBQyxNQUFrQjtRQUNoQyxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUdELG1CQUFtQjtRQUNqQixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDYixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDO0lBTUQsV0FBVztRQUNULElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBaUI7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7K0dBdEhVLGlCQUFpQjttR0FBakIsaUJBQWlCLHNrQkFZWCxxQkFBcUIsNkJDdkN4Qyx1dURBMkRBOzRGRGhDYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0Usa0NBQWtDO3lHQVc1QyxJQUFJO3NCQURILEtBQUs7Z0JBT04sS0FBSztzQkFESixlQUFlO3VCQUFDLHFCQUFxQjtnQkFPdEMsV0FBVztzQkFEVixLQUFLO2dCQU9OLFVBQVU7c0JBRFQsS0FBSztnQkFXTixRQUFRO3NCQURQLEtBQUs7Z0JBT04sS0FBSztzQkFESixLQUFLO2dCQU9OLE1BQU07c0JBREwsTUFBTTtnQkFPQSxXQUFXO3NCQURqQixNQUFNO2dCQUdpQyxhQUFhO3NCQUFwRCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFFYSxhQUFhO3NCQUF2RCxXQUFXO3VCQUFDLGdCQUFnQjtnQkFJYSxZQUFZO3NCQUFyRCxXQUFXO3VCQUFDLGVBQWU7Z0JBSWdCLGNBQWM7c0JBQXpELFdBQVc7dUJBQUMsaUJBQWlCO2dCQUlXLFdBQVc7c0JBQW5ELFdBQVc7dUJBQUMsY0FBYztnQkFLM0IsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLE9BQU87Z0JBTXJCLG1CQUFtQjtzQkFEbEIsWUFBWTt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBIb3N0TGlzdGVuZXIsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgUXVlcnlMaXN0LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIE9uRGVzdHJveVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEludGVyYWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEJ1dHRvblRoZW1lIH0gZnJvbSAnLi4vYnV0dG9uJztcbmltcG9ydCB7IERyb3Bkb3duSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBEcm9wZG93blBvc2l0aW9uIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogVGhlIGBEcm9wZG93bkNvbXBvbmVudGAgKGA8aW1wZGMtZHJvcGRvd25gIG9yIGA8YW55IGltcGRjLWRyb3Bkb3duYCkgY29udGFpbnMgYSBidXR0b24gdGhhdCB0b2dnbGVzIGEgZHJvcGRvd24gd2hlcmUgYSB1c2VyXG4gKiBjYW4gc2VsZWN0IHZhcmlvdXMgYWN0aW9ucy4gSXRlbXMgd2l0aGluIG11c3QgYmUgd3JhcHBlZCB3aXRoIGBEcm9wZG93bkl0ZW1Db21wb25lbnRgIChgPGltcGRjLWRyb3Bkb3duLWl0ZW1gKS5cbiAqIFRvIHVzZSwgaW1wb3J0IGBEcm9wZG93bk1vZHVsZWAgb3IgYW5vdGhlciBtb2R1bGUgdGhhdCBpbXBvcnRzIGFuZCBleHBvcnRzIHRoYXQgbW9kdWxlIGZyb20gYEBpbXBhcnRuZXIvZGVzaWduLWNvbXBvbmVudHNgLlxuICogYERyb3Bkb3duTW9kdWxlYCBpbXBvcnRzIGFuZCBleHBvcnRzIFtCdXR0b25Nb2R1bGVdKC4vP3BhdGg9L2RvY3MvZGVzaWduLWNvbXBvbmVudHMtYnV0dG9uKS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtZHJvcGRvd24sIFtpbXBkYy1kcm9wZG93bl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfaW50ZXJhY3RhYmxlSWQgPSAwO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgZHJvcGRvd24gbGlzdCBpcyBzaG93aW5nLlxuICAgKi9cbiAgQElucHV0KClcbiAgc2hvdyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgY29udGVudCBwcm9qZWN0ZWQgYERyb3Bkb3duSXRlbUNvbXBvbmVudGAgY2hpbGRyZW4uXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKERyb3Bkb3duSXRlbUNvbXBvbmVudClcbiAgaXRlbXMhOiBRdWVyeUxpc3Q8RHJvcGRvd25JdGVtQ29tcG9uZW50PjtcblxuICAvKipcbiAgICogVGhlIHRoZW1lIG9mIHRoZSBidXR0b24gYWZmZWN0aW5nIHRleHQsIGljb25zLCBiYWNrZ3JvdW5kcywgYW5kIGJvcmRlcnMuXG4gICAqL1xuICBASW5wdXQoKVxuICBidXR0b25UaGVtZTogQnV0dG9uVGhlbWUgPSAncHJpbWFyeSc7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXh0IG9mIHRoZSBidXR0b24uXG4gICAqL1xuICBASW5wdXQoKVxuICBidXR0b25UZXh0ID0gJyc7XG5cbiAgLy8gd2UgZG9uJ3Qgd2FudCBoZWFkZXJUZXh0IHRvIGJlIGF2YWlsYWJsZSByaWdodCBub3dcbiAgLy8gQElucHV0KClcbiAgLy9oZWFkZXJUZXh0OiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogV2hlcmUgdGhlIGxpc3Qgc2hvd3MgcmVsYXRpdmUgdG8gdGhlIGJ1dHRvbiB3aGVuIGl0IGlzIHNob3dpbmcuXG4gICAqL1xuICBASW5wdXQoKVxuICBwb3NpdGlvbjogRHJvcGRvd25Qb3NpdGlvbiA9ICdkb3duJztcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgdGhlIGljb24gaXMgc3BsaXQgZnJvbSB0aGUgYnV0dG9uIGFuZCBvbmx5IGNsaWNraW5nIHRoZSBpY29uIHRyaWdnZXJzIHRoZSBsaXN0IHNob3dpbmcvaGlkaW5nLlxuICAgKi9cbiAgQElucHV0KClcbiAgc3BsaXQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkcm9wZG93biBpcyB0b2dnbGVkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHRvZ2dsZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgYnV0dG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5idG4tZ3JvdXAnKSBwcml2YXRlIGNsYXNzQnRuR3JvdXAgPSB0cnVlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZHJvcGRvd24nKSBwcml2YXRlIGdldCBjbGFzc0Ryb3Bkb3duKCkge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uID09PSAnZG93bic7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRyb3BlbmQnKSBwcml2YXRlIGdldCBjbGFzc0Ryb3BlbmQoKSB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb24gPT09ICdyaWdodCc7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRyb3BzdGFydCcpIHByaXZhdGUgZ2V0IGNsYXNzRHJvcHN0YXJ0KCkge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uID09PSAnbGVmdCc7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRyb3B1cCcpIHByaXZhdGUgZ2V0IGNsYXNzRHJvcHVwKCkge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uID09PSAndXAnO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBoYW5kbGVIb3N0Q2xpY2soJGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snKVxuICBoYW5kbGVEb2N1bWVudENsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNob3cpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBpbnRlcmFjdGFibGVJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9pbnRlcmFjdGFibGVJZDtcbiAgfVxuXG4gIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGFibGVJZCA+IDA7XG4gIH1cblxuICBnZXQgc2hvd24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWQgJiYgdGhpcy5zaG93O1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfaW50ZXJhY3Rpb25TZXJ2aWNlOiBJbnRlcmFjdGlvblNlcnZpY2UpIHtcbiAgICB0aGlzLl9pbnRlcmFjdGFibGVJZCA9IHRoaXMuX2ludGVyYWN0aW9uU2VydmljZS5hZGQodGhpcyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UucmVtb3ZlKHRoaXMuaW50ZXJhY3RhYmxlSWQpO1xuICAgIHRoaXMuX2ludGVyYWN0YWJsZUlkID0gMDtcbiAgfVxuXG4gIGhhbmRsZVRvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNob3cgPSB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UudG9nZ2xlKHRoaXMpO1xuICAgIHRoaXMudG9nZ2xlLmVtaXQodGhpcy5zaG93KTtcbiAgfVxuXG4gIGhhbmRsZUJ1dHRvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5idXR0b25DbGljay5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIGhpZGUoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93ID0gZmFsc2U7XG4gICAgdGhpcy50b2dnbGUuZW1pdCh0aGlzLnNob3cpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIWxpbmtFbC5jaGlsZHJlbi5sZW5ndGhcIj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwiIXNwbGl0OyBlbHNlIHNwbGl0VGVtcGxhdGVcIlxuICAgIGltcGRjQnV0dG9uXG4gICAgW3RoZW1lXT1cImJ1dHRvblRoZW1lXCJcbiAgICBbdGV4dF09XCJidXR0b25UZXh0XCJcbiAgICBjbGFzcz1cImRyb3Bkb3duLXRvZ2dsZVwiXG4gICAgW2NsYXNzLnNob3ddPVwic2hvd1wiXG4gICAgZGF0YS1icy10b2dnbGU9XCJkcm9wZG93blwiXG4gICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJzaG93XCJcbiAgICAoY2xpY2spPVwiaGFuZGxlVG9nZ2xlKCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPjwvYnV0dG9uPlxuXG4gIDxuZy10ZW1wbGF0ZSAjc3BsaXRUZW1wbGF0ZT5cbiAgICA8YnV0dG9uXG4gICAgICBpbXBkY0J1dHRvblxuICAgICAgW3RoZW1lXT1cImJ1dHRvblRoZW1lXCJcbiAgICAgIFt0ZXh0XT1cImJ1dHRvblRleHRcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZUJ1dHRvbkNsaWNrKCRldmVudClcIj48L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBpbXBkY0J1dHRvblxuICAgICAgW3RoZW1lXT1cImJ1dHRvblRoZW1lXCJcbiAgICAgIGNsYXNzPVwiZHJvcGRvd24tdG9nZ2xlIGRyb3Bkb3duLXRvZ2dsZS1zcGxpdFwiXG4gICAgICBbY2xhc3Muc2hvd109XCJzaG93XCJcbiAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwic2hvd1wiXG4gICAgICAoY2xpY2spPVwiaGFuZGxlVG9nZ2xlKCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIj5Ub2dnbGUgRHJvcGRvd248L3NwYW4+XG4gICAgPC9idXR0b24+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj5cblxuPHVsXG4gIGNsYXNzPVwiZHJvcGRvd24tbWVudVwiXG4gIFtjbGFzcy5kcm9wZG93bi1tZW51LWVuZF09XCJmYWxzZVwiXG4gIFtjbGFzcy5zaG93XT1cInNob3dcIlxuICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gIDwhLS0gPGxpICpuZ0lmPVwiaGVhZGVyVGV4dFwiPlxuICAgIDxoNiBjbGFzcz1cImRyb3Bkb3duLWhlYWRlclwiPnt7IGhlYWRlclRleHQgfX08L2g2PlxuICA8L2xpPiAtLT5cbiAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zXCI+XG4gICAgPHNwYW4gKm5nSWY9XCIhaXRlbS5kaXZpZGVyOyBlbHNlIGRpdmlkZXJUZW1wbGF0ZVwiIGNsYXNzPVwiZHJvcGRvd24taXRlbVwiPlxuICAgICAgPG5nLWNvbnRlbnQgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtLnRlbXBsYXRlXCI+PC9uZy1jb250ZW50PlxuICAgIDwvc3Bhbj5cbiAgPC9saT5cbjwvdWw+XG5cbjxuZy10ZW1wbGF0ZSAjZGl2aWRlclRlbXBsYXRlPlxuICA8aHIgY2xhc3M9XCJkcm9wZG93bi1kaXZpZGVyXCIgLz5cbjwvbmctdGVtcGxhdGU+XG5cbjxhXG4gICNsaW5rRWxcbiAgY2xhc3M9XCJpbXBkYy1kcm9wZG93bi1saW5rXCJcbiAgW2NsYXNzLmhpZGVdPVwiIWxpbmtFbC5jaGlsZHJlbi5sZW5ndGhcIlxuICBbY2xhc3MuaW1wZGMtZHJvcGRvd24tb3Blbl09XCJzaG93XCJcbiAgZGF0YS1icy10b2dnbGU9XCJkcm9wZG93blwiXG4gIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwic2hvd1wiXG4gIChjbGljayk9XCJoYW5kbGVUb2dnbGUoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIlt0b2dnbGVdXCI+PC9uZy1jb250ZW50PlxuPC9hPlxuIl19
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWNvbXBvbmVudHMvc3JjL2xpYi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFlBQVksRUFDWixNQUFNLEVBQ04sWUFBWSxFQUNaLFdBQVcsRUFFWCxlQUFlLEVBR2hCLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7QUFHckQ7Ozs7O0dBS0c7QUFNSCxNQUFNLE9BQU8saUJBQWlCO0lBcUY1QixZQUFvQixtQkFBdUM7UUFBdkMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQXBGbkQsb0JBQWUsR0FBRyxDQUFDLENBQUM7UUFFNUI7O1dBRUc7UUFFSCxTQUFJLEdBQUcsS0FBSyxDQUFDO1FBUWI7O1dBRUc7UUFFSCxnQkFBVyxHQUFnQixTQUFTLENBQUM7UUFFckM7O1dBRUc7UUFFSCxlQUFVLEdBQUcsRUFBRSxDQUFDO1FBRWhCLHFEQUFxRDtRQUNyRCxXQUFXO1FBQ1gsMEJBQTBCO1FBRTFCOztXQUVHO1FBRUgsYUFBUSxHQUFxQixNQUFNLENBQUM7UUFFcEM7O1dBRUc7UUFFSCxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBRWQ7O1dBRUc7UUFFSCxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUVyQzs7V0FFRztRQUVJLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUVaLGtCQUFhLEdBQUcsSUFBSSxDQUFDO0lBOEJDLENBQUM7SUE1Qi9ELElBQTJDLGFBQWE7UUFDdEQsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLE1BQU0sQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBMEMsWUFBWTtRQUNwRCxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssT0FBTyxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUE0QyxjQUFjO1FBQ3hELE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQXlDLFdBQVc7UUFDbEQsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBR0QsZUFBZSxDQUFDLE1BQWtCO1FBQ2hDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBR0QsbUJBQW1CO1FBQ2pCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNiLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUlELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFpQjtRQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDOzsrR0F4SFUsaUJBQWlCO21HQUFqQixpQkFBaUIsc2tCQVlYLHFCQUFxQiw2QkN4Q3hDLHV1REEyREE7NEZEL0JhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxrQ0FBa0M7eUdBVzVDLElBQUk7c0JBREgsS0FBSztnQkFPTixLQUFLO3NCQURKLGVBQWU7dUJBQUMscUJBQXFCO2dCQU90QyxXQUFXO3NCQURWLEtBQUs7Z0JBT04sVUFBVTtzQkFEVCxLQUFLO2dCQVdOLFFBQVE7c0JBRFAsS0FBSztnQkFPTixLQUFLO3NCQURKLEtBQUs7Z0JBT04sTUFBTTtzQkFETCxNQUFNO2dCQU9BLFdBQVc7c0JBRGpCLE1BQU07Z0JBR2lDLGFBQWE7c0JBQXBELFdBQVc7dUJBQUMsaUJBQWlCO2dCQUVhLGFBQWE7c0JBQXZELFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUlhLFlBQVk7c0JBQXJELFdBQVc7dUJBQUMsZUFBZTtnQkFJZ0IsY0FBYztzQkFBekQsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBSVcsV0FBVztzQkFBbkQsV0FBVzt1QkFBQyxjQUFjO2dCQUszQixlQUFlO3NCQURkLFlBQVk7dUJBQUMsT0FBTztnQkFNckIsbUJBQW1CO3NCQURsQixZQUFZO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIEhvc3RMaXN0ZW5lcixcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBRdWVyeUxpc3QsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgT25Jbml0LFxuICBPbkRlc3Ryb3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBCdXR0b25UaGVtZSB9IGZyb20gJy4uL2J1dHRvbic7XG5pbXBvcnQgeyBEcm9wZG93bkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRHJvcGRvd25Qb3NpdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIFRoZSBgRHJvcGRvd25Db21wb25lbnRgIChgPGltcGRjLWRyb3Bkb3duYCBvciBgPGFueSBpbXBkYy1kcm9wZG93bmApIGNvbnRhaW5zIGEgYnV0dG9uIHRoYXQgdG9nZ2xlcyBhIGRyb3Bkb3duIHdoZXJlIGEgdXNlclxuICogY2FuIHNlbGVjdCB2YXJpb3VzIGFjdGlvbnMuIEl0ZW1zIHdpdGhpbiBtdXN0IGJlIHdyYXBwZWQgd2l0aCBgRHJvcGRvd25JdGVtQ29tcG9uZW50YCAoYDxpbXBkYy1kcm9wZG93bi1pdGVtYCkuXG4gKiBUbyB1c2UsIGltcG9ydCBgRHJvcGRvd25Nb2R1bGVgIG9yIGFub3RoZXIgbW9kdWxlIHRoYXQgaW1wb3J0cyBhbmQgZXhwb3J0cyB0aGF0IG1vZHVsZSBmcm9tIGBAaW1wYXJ0bmVyL2Rlc2lnbi1jb21wb25lbnRzYC5cbiAqIGBEcm9wZG93bk1vZHVsZWAgaW1wb3J0cyBhbmQgZXhwb3J0cyBbQnV0dG9uTW9kdWxlXSguLz9wYXRoPS9kb2NzL2Rlc2lnbi1jb21wb25lbnRzLWJ1dHRvbikuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ltcGRjLWRyb3Bkb3duLCBbaW1wZGMtZHJvcGRvd25dJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfaW50ZXJhY3RhYmxlSWQgPSAwO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgZHJvcGRvd24gbGlzdCBpcyBzaG93aW5nLlxuICAgKi9cbiAgQElucHV0KClcbiAgc2hvdyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgY29udGVudCBwcm9qZWN0ZWQgYERyb3Bkb3duSXRlbUNvbXBvbmVudGAgY2hpbGRyZW4uXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKERyb3Bkb3duSXRlbUNvbXBvbmVudClcbiAgaXRlbXMhOiBRdWVyeUxpc3Q8RHJvcGRvd25JdGVtQ29tcG9uZW50PjtcblxuICAvKipcbiAgICogVGhlIHRoZW1lIG9mIHRoZSBidXR0b24gYWZmZWN0aW5nIHRleHQsIGljb25zLCBiYWNrZ3JvdW5kcywgYW5kIGJvcmRlcnMuXG4gICAqL1xuICBASW5wdXQoKVxuICBidXR0b25UaGVtZTogQnV0dG9uVGhlbWUgPSAncHJpbWFyeSc7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXh0IG9mIHRoZSBidXR0b24uXG4gICAqL1xuICBASW5wdXQoKVxuICBidXR0b25UZXh0ID0gJyc7XG5cbiAgLy8gd2UgZG9uJ3Qgd2FudCBoZWFkZXJUZXh0IHRvIGJlIGF2YWlsYWJsZSByaWdodCBub3dcbiAgLy8gQElucHV0KClcbiAgLy9oZWFkZXJUZXh0OiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogV2hlcmUgdGhlIGxpc3Qgc2hvd3MgcmVsYXRpdmUgdG8gdGhlIGJ1dHRvbiB3aGVuIGl0IGlzIHNob3dpbmcuXG4gICAqL1xuICBASW5wdXQoKVxuICBwb3NpdGlvbjogRHJvcGRvd25Qb3NpdGlvbiA9ICdkb3duJztcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgdGhlIGljb24gaXMgc3BsaXQgZnJvbSB0aGUgYnV0dG9uIGFuZCBvbmx5IGNsaWNraW5nIHRoZSBpY29uIHRyaWdnZXJzIHRoZSBsaXN0IHNob3dpbmcvaGlkaW5nLlxuICAgKi9cbiAgQElucHV0KClcbiAgc3BsaXQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkcm9wZG93biBpcyB0b2dnbGVkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHRvZ2dsZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgYnV0dG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5idG4tZ3JvdXAnKSBwcml2YXRlIGNsYXNzQnRuR3JvdXAgPSB0cnVlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZHJvcGRvd24nKSBwcml2YXRlIGdldCBjbGFzc0Ryb3Bkb3duKCkge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uID09PSAnZG93bic7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRyb3BlbmQnKSBwcml2YXRlIGdldCBjbGFzc0Ryb3BlbmQoKSB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb24gPT09ICdyaWdodCc7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRyb3BzdGFydCcpIHByaXZhdGUgZ2V0IGNsYXNzRHJvcHN0YXJ0KCkge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uID09PSAnbGVmdCc7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRyb3B1cCcpIHByaXZhdGUgZ2V0IGNsYXNzRHJvcHVwKCkge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uID09PSAndXAnO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBoYW5kbGVIb3N0Q2xpY2soJGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snKVxuICBoYW5kbGVEb2N1bWVudENsaWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNob3cpIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2ludGVyYWN0aW9uU2VydmljZTogSW50ZXJhY3Rpb25TZXJ2aWNlKSB7fVxuXG4gIGdldCBpbnRlcmFjdGFibGVJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9pbnRlcmFjdGFibGVJZDtcbiAgfVxuXG4gIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGFibGVJZCA+IDA7XG4gIH1cblxuICBnZXQgc2hvd24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWQgJiYgdGhpcy5zaG93O1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5faW50ZXJhY3RhYmxlSWQgPSB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UuYWRkKHRoaXMpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5faW50ZXJhY3Rpb25TZXJ2aWNlLnJlbW92ZSh0aGlzLmludGVyYWN0YWJsZUlkKTtcbiAgICB0aGlzLl9pbnRlcmFjdGFibGVJZCA9IDA7XG4gIH1cblxuICBoYW5kbGVUb2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93ID0gdGhpcy5faW50ZXJhY3Rpb25TZXJ2aWNlLnRvZ2dsZSh0aGlzKTtcbiAgICB0aGlzLnRvZ2dsZS5lbWl0KHRoaXMuc2hvdyk7XG4gIH1cblxuICBoYW5kbGVCdXR0b25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuYnV0dG9uQ2xpY2suZW1pdChldmVudCk7XG4gIH1cblxuICBoaWRlKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMudG9nZ2xlLmVtaXQodGhpcy5zaG93KTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsaW5rRWwuY2hpbGRyZW4ubGVuZ3RoXCI+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cIiFzcGxpdDsgZWxzZSBzcGxpdFRlbXBsYXRlXCJcbiAgICBpbXBkY0J1dHRvblxuICAgIFt0aGVtZV09XCJidXR0b25UaGVtZVwiXG4gICAgW3RleHRdPVwiYnV0dG9uVGV4dFwiXG4gICAgY2xhc3M9XCJkcm9wZG93bi10b2dnbGVcIlxuICAgIFtjbGFzcy5zaG93XT1cInNob3dcIlxuICAgIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIlxuICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwic2hvd1wiXG4gICAgKGNsaWNrKT1cImhhbmRsZVRvZ2dsZSgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj48L2J1dHRvbj5cblxuICA8bmctdGVtcGxhdGUgI3NwbGl0VGVtcGxhdGU+XG4gICAgPGJ1dHRvblxuICAgICAgaW1wZGNCdXR0b25cbiAgICAgIFt0aGVtZV09XCJidXR0b25UaGVtZVwiXG4gICAgICBbdGV4dF09XCJidXR0b25UZXh0XCJcbiAgICAgIChjbGljayk9XCJoYW5kbGVCdXR0b25DbGljaygkZXZlbnQpXCI+PC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgaW1wZGNCdXR0b25cbiAgICAgIFt0aGVtZV09XCJidXR0b25UaGVtZVwiXG4gICAgICBjbGFzcz1cImRyb3Bkb3duLXRvZ2dsZSBkcm9wZG93bi10b2dnbGUtc3BsaXRcIlxuICAgICAgW2NsYXNzLnNob3ddPVwic2hvd1wiXG4gICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cInNob3dcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZVRvZ2dsZSgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+VG9nZ2xlIERyb3Bkb3duPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+XG5cbjx1bFxuICBjbGFzcz1cImRyb3Bkb3duLW1lbnVcIlxuICBbY2xhc3MuZHJvcGRvd24tbWVudS1lbmRdPVwiZmFsc2VcIlxuICBbY2xhc3Muc2hvd109XCJzaG93XCJcbiAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICA8IS0tIDxsaSAqbmdJZj1cImhlYWRlclRleHRcIj5cbiAgICA8aDYgY2xhc3M9XCJkcm9wZG93bi1oZWFkZXJcIj57eyBoZWFkZXJUZXh0IH19PC9oNj5cbiAgPC9saT4gLS0+XG4gIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiPlxuICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0uZGl2aWRlcjsgZWxzZSBkaXZpZGVyVGVtcGxhdGVcIiBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIj5cbiAgICAgIDxuZy1jb250ZW50ICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbS50ZW1wbGF0ZVwiPjwvbmctY29udGVudD5cbiAgICA8L3NwYW4+XG4gIDwvbGk+XG48L3VsPlxuXG48bmctdGVtcGxhdGUgI2RpdmlkZXJUZW1wbGF0ZT5cbiAgPGhyIGNsYXNzPVwiZHJvcGRvd24tZGl2aWRlclwiIC8+XG48L25nLXRlbXBsYXRlPlxuXG48YVxuICAjbGlua0VsXG4gIGNsYXNzPVwiaW1wZGMtZHJvcGRvd24tbGlua1wiXG4gIFtjbGFzcy5oaWRlXT1cIiFsaW5rRWwuY2hpbGRyZW4ubGVuZ3RoXCJcbiAgW2NsYXNzLmltcGRjLWRyb3Bkb3duLW9wZW5dPVwic2hvd1wiXG4gIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIlxuICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cInNob3dcIlxuICAoY2xpY2spPVwiaGFuZGxlVG9nZ2xlKCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbdG9nZ2xlXVwiPjwvbmctY29udGVudD5cbjwvYT5cbiJdfQ==
|
|
@@ -58,13 +58,17 @@ export class ModalComponent {
|
|
|
58
58
|
* Event emitted when the Modal content is accepted.
|
|
59
59
|
*/
|
|
60
60
|
this.accept = new EventEmitter();
|
|
61
|
-
this._interactableId = this._interactionService.add(this);
|
|
62
61
|
}
|
|
63
62
|
/**
|
|
64
63
|
* Determines if the Modal should be shown immediately.
|
|
65
64
|
*/
|
|
66
65
|
set show(show) {
|
|
67
|
-
|
|
66
|
+
if (show) {
|
|
67
|
+
this.open();
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
this.close();
|
|
71
|
+
}
|
|
68
72
|
}
|
|
69
73
|
get interactableId() {
|
|
70
74
|
return this._interactableId;
|
|
@@ -88,6 +92,7 @@ export class ModalComponent {
|
|
|
88
92
|
return !this.titleText && !this.dismissable;
|
|
89
93
|
}
|
|
90
94
|
ngOnInit() {
|
|
95
|
+
this._interactableId = this._interactionService.add(this);
|
|
91
96
|
if (this.dismissable === undefined && this.theme === ModalTheme.Working) {
|
|
92
97
|
this.dismissable = true;
|
|
93
98
|
}
|
|
@@ -104,35 +109,38 @@ export class ModalComponent {
|
|
|
104
109
|
!!this.dismissEl?.nativeElement?.firstChild?.disabled) {
|
|
105
110
|
return;
|
|
106
111
|
}
|
|
107
|
-
this.
|
|
112
|
+
this.close();
|
|
108
113
|
this.dismiss.emit(event);
|
|
109
114
|
}
|
|
110
115
|
handleDeny(event) {
|
|
111
116
|
if (!!this.denyEl?.nativeElement?.firstChild?.disabled) {
|
|
112
117
|
return;
|
|
113
118
|
}
|
|
114
|
-
this.
|
|
119
|
+
this.close();
|
|
115
120
|
this.deny.emit(event);
|
|
116
121
|
}
|
|
117
122
|
handleAccept(event) {
|
|
118
|
-
console.log('this.acceptEl', this.acceptEl);
|
|
119
123
|
if (!!this.acceptEl?.nativeElement?.firstChild?.disabled) {
|
|
120
124
|
return;
|
|
121
125
|
}
|
|
122
|
-
this.
|
|
126
|
+
this.close();
|
|
123
127
|
this.accept.emit(event);
|
|
124
128
|
}
|
|
125
129
|
/**
|
|
126
|
-
* Opens/shows the modal programmatically.
|
|
130
|
+
* Opens/shows the modal. Can be used programmatically.
|
|
127
131
|
*/
|
|
128
132
|
open() {
|
|
133
|
+
if (this.backdrop) {
|
|
134
|
+
this._interactionService.queueBackdrop(this.interactableId);
|
|
135
|
+
}
|
|
129
136
|
this._show = true;
|
|
130
137
|
}
|
|
131
138
|
/**
|
|
132
|
-
* Closes/hides the modal programmatically.
|
|
139
|
+
* Closes/hides the modal. Can be used programmatically.
|
|
133
140
|
*/
|
|
134
141
|
close() {
|
|
135
142
|
this._show = false;
|
|
143
|
+
this._interactionService.dequeueBackdrop(this.interactableId);
|
|
136
144
|
}
|
|
137
145
|
}
|
|
138
146
|
ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ModalComponent, deps: [{ token: i1.InteractionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -176,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
176
184
|
}], accept: [{
|
|
177
185
|
type: Output
|
|
178
186
|
}] } });
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUMsT0FBTyxFQUF1QixVQUFVLEVBQWUsTUFBTSxTQUFTLENBQUM7Ozs7OztBQUV2RTs7Ozs7R0FLRztBQU1ILE1BQU0sT0FBTyxjQUFjO0lBdUd6QixZQUFvQixtQkFBdUM7UUFBdkMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQXRHbkQsb0JBQWUsR0FBRyxDQUFDLENBQUM7UUFDcEIsVUFBSyxHQUFHLEtBQUssQ0FBQztRQVV0Qjs7V0FFRztRQUVILFVBQUssR0FBZ0IsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUV2Qzs7V0FFRztRQUVILFNBQUksR0FBd0IsYUFBYSxDQUFDLE1BQU0sQ0FBQztRQVFqRDs7O1dBR0c7UUFFSCxjQUFTLEdBQXlCLE9BQU8sQ0FBQztRQUUxQzs7V0FFRztRQUVILGNBQVMsR0FBRyxFQUFFLENBQUM7UUFFZjs7V0FFRztRQUVILGVBQVUsR0FBRyxJQUFJLENBQUM7UUFRbEI7O1dBRUc7UUFFSCxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBRVo7O1dBRUc7UUFFSCxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBb0JoQjs7V0FFRztRQUVILFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUVqRDs7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RWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uLCBGb250QXdlc29tZUljb25UaGVtZSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBDb21wb25lbnRTaXplIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQnV0dG9uVGhlbWUgfSBmcm9tICcuLi9idXR0b24nO1xuaW1wb3J0IHsgTW9kYWxDb21wb25lbnRTaXplcywgTW9kYWxUaGVtZSwgTW9kYWxUaGVtZXMgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBUaGUgYE1vZGFsQ29tcG9uZW50YCAoYDxpbXBkYy1tb2RhbGApIGRpc3BsYXlzIG92ZXIgdGhlIGNvbnRlbnQgb2YgdGhlIHBhZ2Ugd2hlbiBhIHVzZXIgYWN0aW9uIGlzIHJlcXVpcmVkLlxuICogVG8gdXNlLCBpbXBvcnQgYE1vZGFsTW9kdWxlYCBvciBhbm90aGVyIG1vZHVsZSB0aGF0IGltcG9ydHMgYW5kIGV4cG9ydHMgdGhhdCBtb2R1bGUgZnJvbSBgQGltcGFydG5lci9kZXNpZ24tY29tcG9uZW50c2AuXG4gKiBgTW9kYWxNb2R1bGVgIGltcG9ydHMgYW5kIGV4cG9ydHMgQmFja2Ryb3BNb2R1bGUsIFtCdXR0b25Nb2R1bGVdKC4vP3BhdGg9L2RvY3MvZGVzaWduLWNvbXBvbmVudHMtYnV0dG9uKSxcbiAqIGFuZCBbSWNvbk1vZHVsZV0oLi8/cGF0aD0vZG9jcy9kZXNpZ24tY29tcG9uZW50cy1pY29uKS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9pbnRlcmFjdGFibGVJZCA9IDA7XG4gIHByaXZhdGUgX3Nob3cgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgTW9kYWwgc2hvdWxkIGJlIHNob3duIGltbWVkaWF0ZWx5LlxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHNob3coc2hvdzogYm9vbGVhbikge1xuICAgIHRoaXMuX3Nob3cgPSBzaG93O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0aGVtZSBvZiB0aGUgTW9kYWwuIEFmZmVjdHMgdGhlIGxheW91dCBvZiB0aGUgTW9kYWwgYXMgd2VsbCBhcyBzb21lIGNvbG9ycy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHRoZW1lOiBNb2RhbFRoZW1lcyA9IE1vZGFsVGhlbWUuU2ltcGxlO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgTW9kYWwuXG4gICAqL1xuICBASW5wdXQoKVxuICBzaXplOiBNb2RhbENvbXBvbmVudFNpemVzID0gQ29tcG9uZW50U2l6ZS5NZWRpdW07XG5cbiAgLyoqXG4gICAqIFRoZSBGb250IEF3ZXNvbWUgNSBpY29uIG5hbWUuIE9ubHkgc3VwcG9ydGVkIHdoZW4gdGhlIHRoZW1lIGlzIFdvcmtpbmcgb3IgRGVzdHJ1Y3RpdmUuXG4gICAqL1xuICBASW5wdXQoKVxuICBpY29uTmFtZT86IEZvbnRBd2Vzb21lSWNvbjtcblxuICAvKipcbiAgICogVGhlIEZvbnQgQXdlc29tZSA1IGljb24gc3R5bGUuIEZld2VyIGljb25zIHN1cHBvcnQgdGhlIFJlZ3VsYXIgdGhlbWUgYW5kIHdpbGwgZmFsbGJhY2sgdG8gU29saWRcbiAgICogaWYgbm90IHN1cHBvcnRlZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGljb25UaGVtZTogRm9udEF3ZXNvbWVJY29uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIC8qKlxuICAgKiBUaGUgc3ViamVjdCB0ZXh0IG9mIHRoZSBNb2RhbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHRpdGxlVGV4dCA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgZmFsbGJhY2sgYnV0dG9uIHRleHQgdG8gYWNjZXB0IHRoZSBNb2RhbC4gVGhpcyBpcyBieXBhc3NlZCBpZiB5b3UgY29udGVudC1wcm9qZWN0IHRoZSBhY2NlcHQgYnV0dG9uLlxuICAgKi9cbiAgQElucHV0KClcbiAgYWNjZXB0VGV4dCA9ICdPSyc7XG5cbiAgLyoqXG4gICAqIEFsbG93cyB0aGUgTW9kYWwgdG8gYmUgZGlzbWlzc2VkLiBUaGlzIGlzIGRpZmZlcmVudCBmcm9tIGBhY2NlcHRgIGFuZCBgZGVueWAuIElmIGEgTW9kYWwgaXMgbWVhbnQgdG8gYmUgcmUtb3BlbmVkIGZyZXF1ZW50bHkgaXQgc2hvdWxkIGJlIGRpc21pc3NhYmxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgZGlzbWlzc2FibGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSBNb2RhbCBzaG91bGQgZmFkZSBpbi9vdXQuXG4gICAqL1xuICBASW5wdXQoKVxuICBmYWRlID0gdHJ1ZTtcblxuICAvKipcbiAgICogU2hvd3MgYSBiYWNrZHJvcCBiZWhpbmQgdGhlIE1vZGFsLlxuICAgKi9cbiAgQElucHV0KClcbiAgYmFja2Ryb3AgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBDb250YWlucyB0aGUgZGlzbWlzcyBidXR0b24gY29udGVudCBwcm9qZWN0aW9uLlxuICAgKi9cbiAgQFZpZXdDaGlsZCgnZGlzbWlzc0VsJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIGRpc21pc3NFbCE6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIENvbnRhaW5zIHRoZSBkZW55IGJ1dHRvbiBjb250ZW50IHByb2plY3Rpb24uXG4gICAqL1xuICBAVmlld0NoaWxkKCdkZW55RWwnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgZGVueUVsITogRWxlbWVudFJlZjtcblxuICAvKipcbiAgICogQ29udGFpbnMgdGhlIGFjY2VwdCBidXR0b24gY29udGVudCBwcm9qZWN0aW9uLlxuICAgKi9cbiAgQFZpZXdDaGlsZCgnYWNjZXB0RWwnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgYWNjZXB0RWwhOiBFbGVtZW50UmVmO1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIE1vZGFsIGNvbnRlbnQgaXMgZGlzbWlzc2VkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRpc21pc3MgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQgfCBFdmVudD4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBNb2RhbCBjb250ZW50IGlzIGRlbmllZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBkZW55ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50IHwgRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgTW9kYWwgY29udGVudCBpcyBhY2NlcHRlZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBhY2NlcHQgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQgfCBFdmVudD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9pbnRlcmFjdGlvblNlcnZpY2U6IEludGVyYWN0aW9uU2VydmljZSkge1xuICAgIHRoaXMuX2ludGVyYWN0YWJsZUlkID0gdGhpcy5faW50ZXJhY3Rpb25TZXJ2aWNlLmFkZCh0aGlzKTtcbiAgfVxuXG4gIGdldCBpbnRlcmFjdGFibGVJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9pbnRlcmFjdGFibGVJZDtcbiAgfVxuXG4gIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGFibGVJZCA+IDA7XG4gIH1cblxuICBnZXQgc2hvd24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWQgJiYgdGhpcy5fc2hvdztcbiAgfVxuXG4gIGdldCBzaG93V29ya2luZ0ljb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5pY29uTmFtZSAmJiB0aGlzLnRoZW1lID09PSBNb2RhbFRoZW1lLldvcmtpbmc7XG4gIH1cblxuICBnZXQgc2hvd0Rlc3RydWN0aXZlSWNvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmljb25OYW1lICYmIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuRGVzdHJ1Y3RpdmU7XG4gIH1cblxuICBnZXQgYWNjZXB0RmFsbGJhY2tUaGVtZSgpOiBCdXR0b25UaGVtZSB7XG4gICAgcmV0dXJuIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuRGVzdHJ1Y3RpdmUgPyAnZGFuZ2VyJyA6ICdwcmltYXJ5JztcbiAgfVxuXG4gIGdldCBoaWRlSGVhZGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy50aXRsZVRleHQgJiYgIXRoaXMuZGlzbWlzc2FibGU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNtaXNzYWJsZSA9PT0gdW5kZWZpbmVkICYmIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuV29ya2luZykge1xuICAgICAgdGhpcy5kaXNtaXNzYWJsZSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaWNvbk5hbWUgPT09IHVuZGVmaW5lZCAmJiB0aGlzLnRoZW1lID09PSBNb2RhbFRoZW1lLkRlc3RydWN0aXZlKSB7XG4gICAgICB0aGlzLmljb25OYW1lID0gJ2V4Y2xhbWF0aW9uLXRyaWFuZ2xlJztcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UucmVtb3ZlKHRoaXMuaW50ZXJhY3RhYmxlSWQpO1xuICAgIHRoaXMuX2ludGVyYWN0YWJsZUlkID0gMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVEaXNtaXNzKGV2ZW50OiBNb3VzZUV2ZW50IHwgRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5kaXNtaXNzYWJsZSB8fFxuICAgICAgISF0aGlzLmRpc21pc3NFbD8ubmF0aXZlRWxlbWVudD8uZmlyc3RDaGlsZD8uZGlzYWJsZWRcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuZGlzbWlzcy5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVEZW55KGV2ZW50OiBNb3VzZUV2ZW50IHwgRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLmRlbnlFbD8ubmF0aXZlRWxlbWVudD8uZmlyc3RDaGlsZD8uZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuZGVueS5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVBY2NlcHQoZXZlbnQ6IE1vdXNlRXZlbnQgfCBFdmVudCk6IHZvaWQge1xuICAgIGNvbnNvbGUubG9nKCd0aGlzLmFjY2VwdEVsJywgdGhpcy5hY2NlcHRFbCk7XG4gICAgaWYgKCEhdGhpcy5hY2NlcHRFbD8ubmF0aXZlRWxlbWVudD8uZmlyc3RDaGlsZD8uZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuYWNjZXB0LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zL3Nob3dzIHRoZSBtb2RhbCBwcm9ncmFtbWF0aWNhbGx5LlxuICAgKi9cbiAgb3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLl9zaG93ID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMvaGlkZXMgdGhlIG1vZGFsIHByb2dyYW1tYXRpY2FsbHkuXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zaG93ID0gZmFsc2U7XG4gIH1cbn1cbiIsIjxkaXZcbiAgKm5nSWY9XCJ2YWxpZFwiXG4gIGNsYXNzPVwiaW1wZGMgbW9kYWxcIlxuICBbY2xhc3MuZmFkZV09XCJmYWRlXCJcbiAgW2NsYXNzLmluXT1cImZhZGUgJiYgc2hvd25cIlxuICBbY2xhc3Muc2hvd109XCJzaG93blwiXG4gIFtjbGFzcy5kaXNtaXNzYWJsZV09XCJkaXNtaXNzYWJsZVwiXG4gIHRhYmluZGV4PVwiLTFcIlxuICAoY2xpY2spPVwiaGFuZGxlRGlzbWlzcygkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAoa2V5ZG93bi5lc2NhcGUpPVwiaGFuZGxlRGlzbWlzcygkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAoa2V5ZG93bi5lbnRlcik9XCJoYW5kbGVBY2NlcHQoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cIm1vZGFsLWRpYWxvZyBtb2RhbC1kaWFsb2ctY2VudGVyZWQgbW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgbW9kYWwtdGhlbWUte3tcbiAgICAgIHRoZW1lXG4gICAgfX1cIlxuICAgIFtjbGFzcy5tb2RhbC1zbV09XCJzaXplID09PSAnc20nXCJcbiAgICBbY2xhc3MubW9kYWwtbGddPVwic2l6ZSA9PT0gJ2xnJ1wiXG4gICAgW2NsYXNzLm1vZGFsLXhsXT1cInNpemUgPT09ICd4bCdcIlxuICAgIFtjbGFzcy5tb2RhbC1mdWxsc2NyZWVuXT1cInNpemUgPT09ICdmcydcIlxuICAgIFtjbGFzcy5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd25dPVwic2l6ZSAhPT0gJ2ZzJ1wiXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd0Rlc3RydWN0aXZlSWNvblwiIGNsYXNzPVwibW9kYWwtaWNvblwiPlxuICAgICAgICA8c3BhbiBpbXBkYy1pY29uIFtuYW1lXT1cImljb25OYW1lXCIgW3RoZW1lXT1cImljb25UaGVtZVwiPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAjaGVhZGVyIGNsYXNzPVwibW9kYWwtaGVhZGVyXCIgW2NsYXNzLmhpZGVdPVwiaGlkZUhlYWRlclwiPlxuICAgICAgICA8aDMgY2xhc3M9XCJtb2RhbC10aXRsZVwiPlxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwic2hvd1dvcmtpbmdJY29uXCIgY2xhc3M9XCJtb2RhbC1pY29uXCI+XG4gICAgICAgICAgICA8c3BhbiBpbXBkYy1pY29uIFtuYW1lXT1cImljb25OYW1lXCIgW3RoZW1lXT1cImljb25UaGVtZVwiPjwvc3Bhbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHNwYW4+e3sgdGl0bGVUZXh0IH19PC9zcGFuPlxuICAgICAgICA8L2gzPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgaW1wZGNCdXR0b25cbiAgICAgICAgICAqbmdJZj1cImRpc21pc3NhYmxlXCJcbiAgICAgICAgICB0aGVtZT1cImNsb3NlXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlRGlzbWlzcygkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj48L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAjYm9keUVsIGNsYXNzPVwibW9kYWwtYm9keVwiPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgI2Zvb3RlciBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICNkaXNtaXNzRWxcbiAgICAgICAgICAqbmdJZj1cImRpc21pc3NhYmxlXCJcbiAgICAgICAgICBbY2xhc3MuaGlkZV09XCIhZGlzbWlzc0VsLmNoaWxkcmVuLmxlbmd0aFwiXG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZURpc21pc3MoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Rpc21pc3NdXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgI2RlbnlFbFxuICAgICAgICAgIFtjbGFzcy5oaWRlXT1cIiFkZW55RWwuY2hpbGRyZW4ubGVuZ3RoXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlRGVueSgkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZGVueV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAjYWNjZXB0RWxcbiAgICAgICAgICBbY2xhc3MuaGlkZV09XCIhYWNjZXB0RWwuY2hpbGRyZW4ubGVuZ3RoXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQWNjZXB0KCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlthY2NlcHRdXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgI2FjY2VwdEZhbGxiYWNrRWxcbiAgICAgICAgICAqbmdJZj1cIiFhY2NlcHRFbC5jaGlsZHJlbi5sZW5ndGhcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVBY2NlcHQoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgaW1wZGNCdXR0b25cbiAgICAgICAgICAgIFt0ZXh0XT1cImFjY2VwdFRleHRcIlxuICAgICAgICAgICAgW3RoZW1lXT1cImFjY2VwdEZhbGxiYWNrVGhlbWVcIj48L2J1dHRvbj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUMsT0FBTyxFQUF1QixVQUFVLEVBQWUsTUFBTSxTQUFTLENBQUM7Ozs7OztBQUV2RTs7Ozs7R0FLRztBQU1ILE1BQU0sT0FBTyxjQUFjO0lBMkd6QixZQUFvQixtQkFBdUM7UUFBdkMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQTFHbkQsb0JBQWUsR0FBRyxDQUFDLENBQUM7UUFDcEIsVUFBSyxHQUFHLEtBQUssQ0FBQztRQWN0Qjs7V0FFRztRQUVILFVBQUssR0FBZ0IsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUV2Qzs7V0FFRztRQUVILFNBQUksR0FBd0IsYUFBYSxDQUFDLE1BQU0sQ0FBQztRQVFqRDs7O1dBR0c7UUFFSCxjQUFTLEdBQXlCLE9BQU8sQ0FBQztRQUUxQzs7V0FFRztRQUVILGNBQVMsR0FBRyxFQUFFLENBQUM7UUFFZjs7V0FFRztRQUVILGVBQVUsR0FBRyxJQUFJLENBQUM7UUFRbEI7O1dBRUc7UUFFSCxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBRVo7O1dBRUc7UUFFSCxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBb0JoQjs7V0FFRztRQUVILFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUVqRDs7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QUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFPeEMsT0FBTztzQkFETixNQUFNO2dCQU9QLElBQUk7c0JBREgsTUFBTTtnQkFPUCxNQUFNO3NCQURMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiwgRm9udEF3ZXNvbWVJY29uVGhlbWUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgSW50ZXJhY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ29tcG9uZW50U2l6ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEJ1dHRvblRoZW1lIH0gZnJvbSAnLi4vYnV0dG9uJztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50U2l6ZXMsIE1vZGFsVGhlbWUsIE1vZGFsVGhlbWVzIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogVGhlIGBNb2RhbENvbXBvbmVudGAgKGA8aW1wZGMtbW9kYWxgKSBkaXNwbGF5cyBvdmVyIHRoZSBjb250ZW50IG9mIHRoZSBwYWdlIHdoZW4gYSB1c2VyIGFjdGlvbiBpcyByZXF1aXJlZC5cbiAqIFRvIHVzZSwgaW1wb3J0IGBNb2RhbE1vZHVsZWAgb3IgYW5vdGhlciBtb2R1bGUgdGhhdCBpbXBvcnRzIGFuZCBleHBvcnRzIHRoYXQgbW9kdWxlIGZyb20gYEBpbXBhcnRuZXIvZGVzaWduLWNvbXBvbmVudHNgLlxuICogYE1vZGFsTW9kdWxlYCBpbXBvcnRzIGFuZCBleHBvcnRzIEJhY2tkcm9wTW9kdWxlLCBbQnV0dG9uTW9kdWxlXSguLz9wYXRoPS9kb2NzL2Rlc2lnbi1jb21wb25lbnRzLWJ1dHRvbiksXG4gKiBhbmQgW0ljb25Nb2R1bGVdKC4vP3BhdGg9L2RvY3MvZGVzaWduLWNvbXBvbmVudHMtaWNvbikuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ltcGRjLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kYWwuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBfaW50ZXJhY3RhYmxlSWQgPSAwO1xuICBwcml2YXRlIF9zaG93ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIE1vZGFsIHNob3VsZCBiZSBzaG93biBpbW1lZGlhdGVseS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBzaG93KHNob3c6IGJvb2xlYW4pIHtcbiAgICBpZiAoc2hvdykge1xuICAgICAgdGhpcy5vcGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVGhlIHRoZW1lIG9mIHRoZSBNb2RhbC4gQWZmZWN0cyB0aGUgbGF5b3V0IG9mIHRoZSBNb2RhbCBhcyB3ZWxsIGFzIHNvbWUgY29sb3JzLlxuICAgKi9cbiAgQElucHV0KClcbiAgdGhlbWU6IE1vZGFsVGhlbWVzID0gTW9kYWxUaGVtZS5TaW1wbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBNb2RhbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNpemU6IE1vZGFsQ29tcG9uZW50U2l6ZXMgPSBDb21wb25lbnRTaXplLk1lZGl1bTtcblxuICAvKipcbiAgICogVGhlIEZvbnQgQXdlc29tZSA1IGljb24gbmFtZS4gT25seSBzdXBwb3J0ZWQgd2hlbiB0aGUgdGhlbWUgaXMgV29ya2luZyBvciBEZXN0cnVjdGl2ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGljb25OYW1lPzogRm9udEF3ZXNvbWVJY29uO1xuXG4gIC8qKlxuICAgKiBUaGUgRm9udCBBd2Vzb21lIDUgaWNvbiBzdHlsZS4gRmV3ZXIgaWNvbnMgc3VwcG9ydCB0aGUgUmVndWxhciB0aGVtZSBhbmQgd2lsbCBmYWxsYmFjayB0byBTb2xpZFxuICAgKiBpZiBub3Qgc3VwcG9ydGVkLlxuICAgKi9cbiAgQElucHV0KClcbiAgaWNvblRoZW1lOiBGb250QXdlc29tZUljb25UaGVtZSA9ICdsaWdodCc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdWJqZWN0IHRleHQgb2YgdGhlIE1vZGFsLlxuICAgKi9cbiAgQElucHV0KClcbiAgdGl0bGVUZXh0ID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBmYWxsYmFjayBidXR0b24gdGV4dCB0byBhY2NlcHQgdGhlIE1vZGFsLiBUaGlzIGlzIGJ5cGFzc2VkIGlmIHlvdSBjb250ZW50LXByb2plY3QgdGhlIGFjY2VwdCBidXR0b24uXG4gICAqL1xuICBASW5wdXQoKVxuICBhY2NlcHRUZXh0ID0gJ09LJztcblxuICAvKipcbiAgICogQWxsb3dzIHRoZSBNb2RhbCB0byBiZSBkaXNtaXNzZWQuIFRoaXMgaXMgZGlmZmVyZW50IGZyb20gYGFjY2VwdGAgYW5kIGBkZW55YC4gSWYgYSBNb2RhbCBpcyBtZWFudCB0byBiZSByZS1vcGVuZWQgZnJlcXVlbnRseSBpdCBzaG91bGQgYmUgZGlzbWlzc2FibGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBkaXNtaXNzYWJsZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIE1vZGFsIHNob3VsZCBmYWRlIGluL291dC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGZhZGUgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBTaG93cyBhIGJhY2tkcm9wIGJlaGluZCB0aGUgTW9kYWwuXG4gICAqL1xuICBASW5wdXQoKVxuICBiYWNrZHJvcCA9IHRydWU7XG5cbiAgLyoqXG4gICAqIENvbnRhaW5zIHRoZSBkaXNtaXNzIGJ1dHRvbiBjb250ZW50IHByb2plY3Rpb24uXG4gICAqL1xuICBAVmlld0NoaWxkKCdkaXNtaXNzRWwnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgZGlzbWlzc0VsITogRWxlbWVudFJlZjtcblxuICAvKipcbiAgICogQ29udGFpbnMgdGhlIGRlbnkgYnV0dG9uIGNvbnRlbnQgcHJvamVjdGlvbi5cbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2RlbnlFbCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBkZW55RWwhOiBFbGVtZW50UmVmO1xuXG4gIC8qKlxuICAgKiBDb250YWlucyB0aGUgYWNjZXB0IGJ1dHRvbiBjb250ZW50IHByb2plY3Rpb24uXG4gICAqL1xuICBAVmlld0NoaWxkKCdhY2NlcHRFbCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBhY2NlcHRFbCE6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgTW9kYWwgY29udGVudCBpcyBkaXNtaXNzZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGlzbWlzcyA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudCB8IEV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIE1vZGFsIGNvbnRlbnQgaXMgZGVuaWVkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRlbnkgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQgfCBFdmVudD4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBNb2RhbCBjb250ZW50IGlzIGFjY2VwdGVkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIGFjY2VwdCA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudCB8IEV2ZW50PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2ludGVyYWN0aW9uU2VydmljZTogSW50ZXJhY3Rpb25TZXJ2aWNlKSB7fVxuXG4gIGdldCBpbnRlcmFjdGFibGVJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9pbnRlcmFjdGFibGVJZDtcbiAgfVxuXG4gIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGFibGVJZCA+IDA7XG4gIH1cblxuICBnZXQgc2hvd24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWQgJiYgdGhpcy5fc2hvdztcbiAgfVxuXG4gIGdldCBzaG93V29ya2luZ0ljb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5pY29uTmFtZSAmJiB0aGlzLnRoZW1lID09PSBNb2RhbFRoZW1lLldvcmtpbmc7XG4gIH1cblxuICBnZXQgc2hvd0Rlc3RydWN0aXZlSWNvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmljb25OYW1lICYmIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuRGVzdHJ1Y3RpdmU7XG4gIH1cblxuICBnZXQgYWNjZXB0RmFsbGJhY2tUaGVtZSgpOiBCdXR0b25UaGVtZSB7XG4gICAgcmV0dXJuIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuRGVzdHJ1Y3RpdmUgPyAnZGFuZ2VyJyA6ICdwcmltYXJ5JztcbiAgfVxuXG4gIGdldCBoaWRlSGVhZGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy50aXRsZVRleHQgJiYgIXRoaXMuZGlzbWlzc2FibGU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbnRlcmFjdGFibGVJZCA9IHRoaXMuX2ludGVyYWN0aW9uU2VydmljZS5hZGQodGhpcyk7XG5cbiAgICBpZiAodGhpcy5kaXNtaXNzYWJsZSA9PT0gdW5kZWZpbmVkICYmIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuV29ya2luZykge1xuICAgICAgdGhpcy5kaXNtaXNzYWJsZSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaWNvbk5hbWUgPT09IHVuZGVmaW5lZCAmJiB0aGlzLnRoZW1lID09PSBNb2RhbFRoZW1lLkRlc3RydWN0aXZlKSB7XG4gICAgICB0aGlzLmljb25OYW1lID0gJ2V4Y2xhbWF0aW9uLXRyaWFuZ2xlJztcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UucmVtb3ZlKHRoaXMuaW50ZXJhY3RhYmxlSWQpO1xuICAgIHRoaXMuX2ludGVyYWN0YWJsZUlkID0gMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVEaXNtaXNzKGV2ZW50OiBNb3VzZUV2ZW50IHwgRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5kaXNtaXNzYWJsZSB8fFxuICAgICAgISF0aGlzLmRpc21pc3NFbD8ubmF0aXZlRWxlbWVudD8uZmlyc3RDaGlsZD8uZGlzYWJsZWRcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jbG9zZSgpO1xuICAgIHRoaXMuZGlzbWlzcy5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVEZW55KGV2ZW50OiBNb3VzZUV2ZW50IHwgRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLmRlbnlFbD8ubmF0aXZlRWxlbWVudD8uZmlyc3RDaGlsZD8uZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jbG9zZSgpO1xuICAgIHRoaXMuZGVueS5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVBY2NlcHQoZXZlbnQ6IE1vdXNlRXZlbnQgfCBFdmVudCk6IHZvaWQge1xuICAgIGlmICghIXRoaXMuYWNjZXB0RWw/Lm5hdGl2ZUVsZW1lbnQ/LmZpcnN0Q2hpbGQ/LmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY2xvc2UoKTtcbiAgICB0aGlzLmFjY2VwdC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucy9zaG93cyB0aGUgbW9kYWwuIENhbiBiZSB1c2VkIHByb2dyYW1tYXRpY2FsbHkuXG4gICAqL1xuICBvcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmJhY2tkcm9wKSB7XG4gICAgICB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UucXVldWVCYWNrZHJvcCh0aGlzLmludGVyYWN0YWJsZUlkKTtcbiAgICB9XG4gICAgdGhpcy5fc2hvdyA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzL2hpZGVzIHRoZSBtb2RhbC4gQ2FuIGJlIHVzZWQgcHJvZ3JhbW1hdGljYWxseS5cbiAgICovXG4gIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuX3Nob3cgPSBmYWxzZTtcbiAgICB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UuZGVxdWV1ZUJhY2tkcm9wKHRoaXMuaW50ZXJhY3RhYmxlSWQpO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwidmFsaWRcIlxuICBjbGFzcz1cImltcGRjIG1vZGFsXCJcbiAgW2NsYXNzLmZhZGVdPVwiZmFkZVwiXG4gIFtjbGFzcy5pbl09XCJmYWRlICYmIHNob3duXCJcbiAgW2NsYXNzLnNob3ddPVwic2hvd25cIlxuICBbY2xhc3MuZGlzbWlzc2FibGVdPVwiZGlzbWlzc2FibGVcIlxuICB0YWJpbmRleD1cIi0xXCJcbiAgKGNsaWNrKT1cImhhbmRsZURpc21pc3MoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgKGtleWRvd24uZXNjYXBlKT1cImhhbmRsZURpc21pc3MoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgKGtleWRvd24uZW50ZXIpPVwiaGFuZGxlQWNjZXB0KCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJtb2RhbC1kaWFsb2cgbW9kYWwtZGlhbG9nLWNlbnRlcmVkIG1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIG1vZGFsLXRoZW1lLXt7XG4gICAgICB0aGVtZVxuICAgIH19XCJcbiAgICBbY2xhc3MubW9kYWwtc21dPVwic2l6ZSA9PT0gJ3NtJ1wiXG4gICAgW2NsYXNzLm1vZGFsLWxnXT1cInNpemUgPT09ICdsZydcIlxuICAgIFtjbGFzcy5tb2RhbC14bF09XCJzaXplID09PSAneGwnXCJcbiAgICBbY2xhc3MubW9kYWwtZnVsbHNjcmVlbl09XCJzaXplID09PSAnZnMnXCJcbiAgICBbY2xhc3MubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duXT1cInNpemUgIT09ICdmcydcIlxuICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxuICAgICAgPGRpdiAqbmdJZj1cInNob3dEZXN0cnVjdGl2ZUljb25cIiBjbGFzcz1cIm1vZGFsLWljb25cIj5cbiAgICAgICAgPHNwYW4gaW1wZGMtaWNvbiBbbmFtZV09XCJpY29uTmFtZVwiIFt0aGVtZV09XCJpY29uVGhlbWVcIj48L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgI2hlYWRlciBjbGFzcz1cIm1vZGFsLWhlYWRlclwiIFtjbGFzcy5oaWRlXT1cImhpZGVIZWFkZXJcIj5cbiAgICAgICAgPGgzIGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICA8c3BhbiAqbmdJZj1cInNob3dXb3JraW5nSWNvblwiIGNsYXNzPVwibW9kYWwtaWNvblwiPlxuICAgICAgICAgICAgPHNwYW4gaW1wZGMtaWNvbiBbbmFtZV09XCJpY29uTmFtZVwiIFt0aGVtZV09XCJpY29uVGhlbWVcIj48L3NwYW4+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuPnt7IHRpdGxlVGV4dCB9fTwvc3Bhbj5cbiAgICAgICAgPC9oMz5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGltcGRjQnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCJkaXNtaXNzYWJsZVwiXG4gICAgICAgICAgdGhlbWU9XCJjbG9zZVwiXG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZURpc21pc3MoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgI2JvZHlFbCBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICNmb290ZXIgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAjZGlzbWlzc0VsXG4gICAgICAgICAgKm5nSWY9XCJkaXNtaXNzYWJsZVwiXG4gICAgICAgICAgW2NsYXNzLmhpZGVdPVwiIWRpc21pc3NFbC5jaGlsZHJlbi5sZW5ndGhcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVEaXNtaXNzKCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltkaXNtaXNzXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICNkZW55RWxcbiAgICAgICAgICBbY2xhc3MuaGlkZV09XCIhZGVueUVsLmNoaWxkcmVuLmxlbmd0aFwiXG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZURlbnkoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2RlbnldXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgI2FjY2VwdEVsXG4gICAgICAgICAgW2NsYXNzLmhpZGVdPVwiIWFjY2VwdEVsLmNoaWxkcmVuLmxlbmd0aFwiXG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUFjY2VwdCgkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbYWNjZXB0XVwiPjwvbmctY29udGVudD5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICNhY2NlcHRGYWxsYmFja0VsXG4gICAgICAgICAgKm5nSWY9XCIhYWNjZXB0RWwuY2hpbGRyZW4ubGVuZ3RoXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQWNjZXB0KCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGltcGRjQnV0dG9uXG4gICAgICAgICAgICBbdGV4dF09XCJhY2NlcHRUZXh0XCJcbiAgICAgICAgICAgIFt0aGVtZV09XCJhY2NlcHRGYWxsYmFja1RoZW1lXCI+PC9idXR0b24+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -2,7 +2,8 @@ import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
|
2
2
|
import { sanitize } from '../../utilities';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "../button/button.component";
|
|
5
|
-
import * as i2 from "
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "../form-field/controls/input/input.directive";
|
|
6
7
|
/**
|
|
7
8
|
* The `PaginationComponent` (`<impdc-pagination` or `<div impdc-pagination`) is a control for paged content such as tables or lists.
|
|
8
9
|
* To use, import `PaginationModule` or another module that imports and exports that module from `@impartner/design-components`.
|
|
@@ -51,22 +52,24 @@ export class PaginationComponent {
|
|
|
51
52
|
return Math.ceil(this.total / this.perPage);
|
|
52
53
|
}
|
|
53
54
|
get firstPageResult() {
|
|
54
|
-
|
|
55
|
+
const page = this._getPageClamped();
|
|
56
|
+
if (this.total < 1 || page < 1 || this.perPage < 1) {
|
|
55
57
|
return 0;
|
|
56
58
|
}
|
|
57
|
-
if (
|
|
59
|
+
if (page === 1) {
|
|
58
60
|
return 1;
|
|
59
61
|
}
|
|
60
|
-
if (
|
|
62
|
+
if (page > Math.ceil(this.total / this.perPage)) {
|
|
61
63
|
return this.total;
|
|
62
64
|
}
|
|
63
|
-
return (
|
|
65
|
+
return (page - 1) * this.perPage + 1;
|
|
64
66
|
}
|
|
65
67
|
get lastPageResult() {
|
|
66
|
-
|
|
68
|
+
const page = this._getPageClamped();
|
|
69
|
+
if (this.total <= 0 || page < 1 || this.perPage < 1) {
|
|
67
70
|
return 0;
|
|
68
71
|
}
|
|
69
|
-
if (
|
|
72
|
+
if (page === 1) {
|
|
70
73
|
if (this.total < this.perPage) {
|
|
71
74
|
return this.total;
|
|
72
75
|
}
|
|
@@ -74,26 +77,38 @@ export class PaginationComponent {
|
|
|
74
77
|
return this.perPage;
|
|
75
78
|
}
|
|
76
79
|
}
|
|
77
|
-
if (this.total < this.perPage *
|
|
80
|
+
if (this.total < this.perPage * page) {
|
|
78
81
|
return this.total;
|
|
79
82
|
}
|
|
80
83
|
else {
|
|
81
|
-
return this.perPage *
|
|
84
|
+
return this.perPage * page;
|
|
82
85
|
}
|
|
83
86
|
}
|
|
87
|
+
_getPageClamped(page) {
|
|
88
|
+
page = Number(page || this.page || 0);
|
|
89
|
+
if (isNaN(page) || page < 1) {
|
|
90
|
+
return 1;
|
|
91
|
+
}
|
|
92
|
+
if (page > this.totalPages) {
|
|
93
|
+
return this.totalPages;
|
|
94
|
+
}
|
|
95
|
+
return page;
|
|
96
|
+
}
|
|
84
97
|
goToPreviousPage() {
|
|
85
|
-
|
|
98
|
+
const page = this._getPageClamped();
|
|
99
|
+
if (page <= 1) {
|
|
86
100
|
return;
|
|
87
101
|
}
|
|
88
|
-
const previousPage =
|
|
102
|
+
const previousPage = page - 1;
|
|
89
103
|
this.page = previousPage;
|
|
90
104
|
this.goToPage.emit(previousPage);
|
|
91
105
|
}
|
|
92
106
|
goToNextPage() {
|
|
93
|
-
|
|
107
|
+
const page = this._getPageClamped();
|
|
108
|
+
if (page >= this.totalPages) {
|
|
94
109
|
return;
|
|
95
110
|
}
|
|
96
|
-
const nextPage =
|
|
111
|
+
const nextPage = page + 1;
|
|
97
112
|
this.page = nextPage;
|
|
98
113
|
this.goToPage.emit(nextPage);
|
|
99
114
|
}
|
|
@@ -101,25 +116,20 @@ export class PaginationComponent {
|
|
|
101
116
|
this.goToExactPage(target?.value);
|
|
102
117
|
}
|
|
103
118
|
goToExactPage(page) {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
if (allowedPageNumber > this.totalPages) {
|
|
112
|
-
allowedPageNumber = this.totalPages;
|
|
113
|
-
}
|
|
114
|
-
this.page = allowedPageNumber;
|
|
115
|
-
this.goToPage.emit(allowedPageNumber);
|
|
119
|
+
this.page = this._getPageClamped(page);
|
|
120
|
+
this.goToPage.emit(this.page);
|
|
121
|
+
}
|
|
122
|
+
preventDefaultAndBlur(event) {
|
|
123
|
+
// prevents PRM form submit
|
|
124
|
+
event.preventDefault();
|
|
125
|
+
event.target.blur();
|
|
116
126
|
}
|
|
117
127
|
}
|
|
118
128
|
PaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
119
|
-
PaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: PaginationComponent, selector: "impdc-pagination, div[impdc-pagination]", inputs: { page: "page", perPage: "perPage", total: "total", summary: "summary" }, outputs: { goToPage: "goToPage" }, ngImport: i0, template: "<div class=\"pagination-container\">\n <div class=\"mobile-pagination\">\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page <= 1\"\n (click)=\"goToPreviousPage()\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page === totalPages\"\n (click)=\"goToNextPage()\">\n <i class=\"fas fa-chevron-right\"></i>\n </button>\n </div>\n\n <div class=\"desktop-pagination\">\n <div>\n <span class=\"summary\" [innerHTML]=\"summary\"></span>\n </div>\n <div class=\"pagination-actions\">\n <button\n impdcButton\n theme=\"secondary\"\n aria-label=\"First Page\"\n class=\"pagination-first-last-btns\"\n (click)=\"goToExactPage(1)\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left first\"></i>\n <i class=\"fas fa-chevron-left\"></i>\n <!-- 1 -->\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n class=\"previous\"\n aria-label=\"Previous\"\n (click)=\"goToPreviousPage()\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <div class=\"page-change\">\n <input\n impdcInput\n
|
|
129
|
+
PaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: PaginationComponent, selector: "impdc-pagination, div[impdc-pagination]", inputs: { page: "page", perPage: "perPage", total: "total", summary: "summary" }, outputs: { goToPage: "goToPage" }, ngImport: i0, template: "<div class=\"pagination-container\">\n <div class=\"mobile-pagination\">\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page <= 1\"\n (click)=\"goToPreviousPage()\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page === totalPages\"\n (click)=\"goToNextPage()\">\n <i class=\"fas fa-chevron-right\"></i>\n </button>\n </div>\n\n <div class=\"desktop-pagination\">\n <div>\n <span class=\"summary\" [innerHTML]=\"summary\"></span>\n </div>\n <div class=\"pagination-actions\">\n <button\n impdcButton\n theme=\"secondary\"\n aria-label=\"First Page\"\n class=\"pagination-first-last-btns\"\n (click)=\"goToExactPage(1)\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left first\"></i>\n <i class=\"fas fa-chevron-left\"></i>\n <!-- 1 -->\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n class=\"previous\"\n aria-label=\"Previous\"\n (click)=\"goToPreviousPage()\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <div class=\"page-change\">\n <input\n impdcInput\n [(ngModel)]=\"page\"\n maxlength=\"4\"\n (blur)=\"goToExactPageFromEvent($event)\"\n (keydown.enter)=\"preventDefaultAndBlur($event)\" />\n <span class=\"total-pages\"> / {{ totalPages }} </span>\n </div>\n <button\n impdcButton\n theme=\"secondary\"\n aria-label=\"Next\"\n (click)=\"goToNextPage()\"\n [disabled]=\"page >= totalPages\">\n <i class=\"fas fa-chevron-right\"></i>\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n class=\"pagination-first-last-btns\"\n aria-label=\"Last Page\"\n (click)=\"goToExactPage(totalPages)\"\n [disabled]=\"page === totalPages\">\n <i class=\"fas fa-chevron-right\"></i>\n <i class=\"fas fa-chevron-right last\"></i>\n <!-- {{ totalPages }} -->\n </button>\n </div>\n </div>\n</div>\n", styles: [".pagination-container{background-color:var(--impd-color-white);padding:var(--impd-size-3) var(--impd-size-6);gap:1rem;color:var(--impd-color-gray-700, #374151)}@media (min-width: 640px){.pagination-container{padding-left:var(--impd-size-6);padding-right:var(--impd-size-6)}}.mobile-pagination{display:flex;gap:2rem;justify-content:space-between;align-items:center}@media (min-width: 640px){.mobile-pagination{display:none}}.desktop-pagination{display:none}@media (min-width: 640px){.desktop-pagination{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between;gap:2rem;flex-flow:wrap}}.summary{font-size:var(--impd-font-size-sm);line-height:var(--impd-size-5);font-weight:400;color:var(--impd-color-gray-700)}.pagination-actions{display:flex;flex-direction:row;gap:.4rem;flex-flow:wrap}.pagination-actions .first{margin-right:-1.2rem}.pagination-actions .last{margin-left:-1.2rem}.page-change{display:flex;flex-direction:row;align-items:center;gap:.4rem;font-size:var(--impd-size-3_5, 1.4rem)}.page-change .form-control{min-width:4.275rem;max-width:6.3rem;text-align:center}.page-change .total-pages{padding:0 1.2rem}.pagination-first-last-btns{padding-left:1.325rem;padding-right:1.325rem}\n"], dependencies: [{ kind: "component", type: i1.ButtonComponent, selector: "button[impdcButton]", inputs: ["type", "theme", "text", "disabled", "titleText", "ariaLabel"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.InputDirective, selector: "input[impdcInput], textarea[impdcInput], select[impdcNativeSelect]", inputs: ["disabled", "id", "type", "required", "readonly", "errorStateMatcher", "value"], exportAs: ["impdcInput"] }] });
|
|
120
130
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PaginationComponent, decorators: [{
|
|
121
131
|
type: Component,
|
|
122
|
-
args: [{ selector: 'impdc-pagination, div[impdc-pagination]', template: "<div class=\"pagination-container\">\n <div class=\"mobile-pagination\">\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page <= 1\"\n (click)=\"goToPreviousPage()\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page === totalPages\"\n (click)=\"goToNextPage()\">\n <i class=\"fas fa-chevron-right\"></i>\n </button>\n </div>\n\n <div class=\"desktop-pagination\">\n <div>\n <span class=\"summary\" [innerHTML]=\"summary\"></span>\n </div>\n <div class=\"pagination-actions\">\n <button\n impdcButton\n theme=\"secondary\"\n aria-label=\"First Page\"\n class=\"pagination-first-last-btns\"\n (click)=\"goToExactPage(1)\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left first\"></i>\n <i class=\"fas fa-chevron-left\"></i>\n <!-- 1 -->\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n class=\"previous\"\n aria-label=\"Previous\"\n (click)=\"goToPreviousPage()\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <div class=\"page-change\">\n <input\n impdcInput\n
|
|
132
|
+
args: [{ selector: 'impdc-pagination, div[impdc-pagination]', template: "<div class=\"pagination-container\">\n <div class=\"mobile-pagination\">\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page <= 1\"\n (click)=\"goToPreviousPage()\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n [disabled]=\"page === totalPages\"\n (click)=\"goToNextPage()\">\n <i class=\"fas fa-chevron-right\"></i>\n </button>\n </div>\n\n <div class=\"desktop-pagination\">\n <div>\n <span class=\"summary\" [innerHTML]=\"summary\"></span>\n </div>\n <div class=\"pagination-actions\">\n <button\n impdcButton\n theme=\"secondary\"\n aria-label=\"First Page\"\n class=\"pagination-first-last-btns\"\n (click)=\"goToExactPage(1)\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left first\"></i>\n <i class=\"fas fa-chevron-left\"></i>\n <!-- 1 -->\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n class=\"previous\"\n aria-label=\"Previous\"\n (click)=\"goToPreviousPage()\"\n [disabled]=\"page <= 1\">\n <i class=\"fas fa-chevron-left\"></i>\n </button>\n <div class=\"page-change\">\n <input\n impdcInput\n [(ngModel)]=\"page\"\n maxlength=\"4\"\n (blur)=\"goToExactPageFromEvent($event)\"\n (keydown.enter)=\"preventDefaultAndBlur($event)\" />\n <span class=\"total-pages\"> / {{ totalPages }} </span>\n </div>\n <button\n impdcButton\n theme=\"secondary\"\n aria-label=\"Next\"\n (click)=\"goToNextPage()\"\n [disabled]=\"page >= totalPages\">\n <i class=\"fas fa-chevron-right\"></i>\n </button>\n <button\n impdcButton\n theme=\"secondary\"\n class=\"pagination-first-last-btns\"\n aria-label=\"Last Page\"\n (click)=\"goToExactPage(totalPages)\"\n [disabled]=\"page === totalPages\">\n <i class=\"fas fa-chevron-right\"></i>\n <i class=\"fas fa-chevron-right last\"></i>\n <!-- {{ totalPages }} -->\n </button>\n </div>\n </div>\n</div>\n", styles: [".pagination-container{background-color:var(--impd-color-white);padding:var(--impd-size-3) var(--impd-size-6);gap:1rem;color:var(--impd-color-gray-700, #374151)}@media (min-width: 640px){.pagination-container{padding-left:var(--impd-size-6);padding-right:var(--impd-size-6)}}.mobile-pagination{display:flex;gap:2rem;justify-content:space-between;align-items:center}@media (min-width: 640px){.mobile-pagination{display:none}}.desktop-pagination{display:none}@media (min-width: 640px){.desktop-pagination{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between;gap:2rem;flex-flow:wrap}}.summary{font-size:var(--impd-font-size-sm);line-height:var(--impd-size-5);font-weight:400;color:var(--impd-color-gray-700)}.pagination-actions{display:flex;flex-direction:row;gap:.4rem;flex-flow:wrap}.pagination-actions .first{margin-right:-1.2rem}.pagination-actions .last{margin-left:-1.2rem}.page-change{display:flex;flex-direction:row;align-items:center;gap:.4rem;font-size:var(--impd-size-3_5, 1.4rem)}.page-change .form-control{min-width:4.275rem;max-width:6.3rem;text-align:center}.page-change .total-pages{padding:0 1.2rem}.pagination-first-last-btns{padding-left:1.325rem;padding-right:1.325rem}\n"] }]
|
|
123
133
|
}], propDecorators: { page: [{
|
|
124
134
|
type: Input
|
|
125
135
|
}], perPage: [{
|
|
@@ -131,4 +141,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
131
141
|
}], goToPage: [{
|
|
132
142
|
type: Output
|
|
133
143
|
}] } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUUzQzs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLG1CQUFtQjtJQUxoQztRQU1VLGFBQVEsR0FDZCxrRUFBa0UsQ0FBQztRQUVyRTs7V0FFRztRQUVJLFNBQUksR0FBRyxDQUFDLENBQUM7UUFFaEI7O1dBRUc7UUFFSSxZQUFPLEdBQUcsRUFBRSxDQUFDO1FBRXBCOztXQUVHO1FBRUksVUFBSyxHQUFHLENBQUMsQ0FBQztRQWtCakI7O1dBRUc7UUFDdUIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0ErRmpFO0lBbEhDOzs7T0FHRztJQUNILElBQ1csT0FBTyxDQUFDLE9BQWU7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2FBQzNCLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLElBQUksQ0FBQyxlQUFlLE1BQU0sQ0FBQzthQUM5RCxPQUFPLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxJQUFJLENBQUMsY0FBYyxNQUFNLENBQUM7YUFDNUQsT0FBTyxD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QUVNLGFBQWEsQ0FBQyxJQUFxQjtRQUN4QyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsT0FBTztTQUNSO1FBRUQsSUFBSSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckMsSUFBSSxpQkFBaUIsR0FBRyxDQUFDLEVBQUU7WUFDekIsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZCO1FBRUQsSUFBSSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3ZDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDckM7UUFFRCxJQUFJLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO1FBRTlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDeEMsQ0FBQzs7aUhBdklVLG1CQUFtQjtxR0FBbkIsbUJBQW1CLG9NQ2JoQyx3b0VBeUVBOzRGRDVEYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UseUNBQXlDOzhCQVk1QyxJQUFJO3NCQURWLEtBQUs7Z0JBT0MsT0FBTztzQkFEYixLQUFLO2dCQU9DLEtBQUs7c0JBRFgsS0FBSztnQkFRSyxPQUFPO3NCQURqQixLQUFLO2dCQWVvQixRQUFRO3NCQUFqQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHNhbml0aXplIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzJztcblxuLyoqXG4gKiBUaGUgYFBhZ2luYXRpb25Db21wb25lbnRgIChgPGltcGRjLXBhZ2luYXRpb25gIG9yIGA8ZGl2IGltcGRjLXBhZ2luYXRpb25gKSBpcyBhIGNvbnRyb2wgZm9yIHBhZ2VkIGNvbnRlbnQgc3VjaCBhcyB0YWJsZXMgb3IgbGlzdHMuXG4gKiBUbyB1c2UsIGltcG9ydCBgUGFnaW5hdGlvbk1vZHVsZWAgb3IgYW5vdGhlciBtb2R1bGUgdGhhdCBpbXBvcnRzIGFuZCBleHBvcnRzIHRoYXQgbW9kdWxlIGZyb20gYEBpbXBhcnRuZXIvZGVzaWduLWNvbXBvbmVudHNgLlxuICogYE1vZGFsTW9kdWxlYCBpbXBvcnRzIGFuZCBleHBvcnRzIEltcGRjRm9ybXNNb2R1bGUgYW5kIFtCdXR0b25Nb2R1bGVdKC4vP3BhdGg9L2RvY3MvZGVzaWduLWNvbXBvbmVudHMtYnV0dG9uKS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtcGFnaW5hdGlvbiwgZGl2W2ltcGRjLXBhZ2luYXRpb25dJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbkNvbXBvbmVudCB7XG4gIHByaXZhdGUgX3N1bW1hcnkgPVxuICAgICdTaG93aW5nIHtmaXJzdFBhZ2VSZXN1bHR9IHRvIHtsYXN0UGFnZVJlc3VsdH0gb2Yge3RvdGFsfSByZXN1bHRzJztcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgcGFnZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlID0gMDtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBpdGVtcyBzaG93biBwZXIgcGFnZS4gSXRlbXMgYXJlIGNvbW1vbmx5IGRpc3BsYXllZCBhcyByb3dzIGluIGEgdGFibGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGVyUGFnZSA9IDEwO1xuXG4gIC8qKlxuICAgKiBUaGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHRvdGFsID0gMDtcblxuICAvKipcbiAgICogQSBmb3JtYXR0YWJsZSB0ZXh0IHN1bW1hcnkgb2YgcGFnaW5hdGlvbiBkYXRhLiBge2ZpcnN0UGFnZVJlc3VsdH1gIFRoZSBmaXJzdCBpdGVtIHdpdGhpbiB0aGUgY3VycmVudCBwYWdlLlxuICAgKiBge2xhc3RQYWdlUmVzdWx0fWAgVGhlIGxhc3QgaXRlbSB3aXRoaW4gdGhlIGN1cnJlbnQgcGFnZS4gYHt0b3RhbH1gIFRoZSB0b3RhbCBudW1iZXIgb2YgaXRlbXMuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHN1bW1hcnkoc3VtbWFyeTogc3RyaW5nKSB7XG4gICAgdGhpcy5fc3VtbWFyeSA9IHN1bW1hcnk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHN1bW1hcnkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gc2FuaXRpemUodGhpcy5fc3VtbWFyeSlcbiAgICAgIC5yZXBsYWNlKCd7Zmlyc3RQYWdlUmVzdWx0fScsIGA8Yj4ke3RoaXMuZmlyc3RQYWdlUmVzdWx0fTwvYj5gKVxuICAgICAgLnJlcGxhY2UoJ3tsYXN0UGFnZVJlc3VsdH0nLCBgPGI+JHt0aGlzLmxhc3RQYWdlUmVzdWx0fTwvYj5gKVxuICAgICAgLnJlcGxhY2UoJ3t0b3RhbH0nLCBgPGI+JHt0aGlzLnRvdGFsfTwvYj5gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHBhZ2UgbnVtYmVyIGlzIGNoYW5nZWQsIHNwZWNpZnlpbmcgdGhlIHRhcmdldCBwYWdlIG51bWJlci5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgZ29Ub1BhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBwdWJsaWMgZ2V0IHRvdGFsUGFnZXMoKTogbnVtYmVyIHtcbiAgICBpZiAodGhpcy50b3RhbCA8IDEgfHwgdGhpcy5wZXJQYWdlIDwgMSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudG90YWwgPCB0aGlzLnBlclBhZ2UpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cblxuICAgIHJldHVybiBNYXRoLmNlaWwodGhpcy50b3RhbCAvIHRoaXMucGVyUGFnZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZpcnN0UGFnZVJlc3VsdCgpOiBudW1iZXIge1xuICAgIGlmICh0aGlzLnRvdGFsIDwgMSB8fCB0aGlzLnBhZ2UgPCAxIHx8IHRoaXMucGVyUGFnZSA8IDEpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnBhZ2UgPT09IDEpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnBhZ2UgPiBNYXRoLmNlaWwodGhpcy50b3RhbCAvIHRoaXMucGVyUGFnZSkpIHtcbiAgICAgIHJldHVybiB0aGlzLnRvdGFsO1xuICAgIH1cblxuICAgIHJldHVybiAodGhpcy5wYWdlIC0gMSkgKiB0aGlzLnBlclBhZ2UgKyAxO1xuICB9XG5cbiAgcHVibGljIGdldCBsYXN0UGFnZVJlc3VsdCgpOiBudW1iZXIge1xuICAgIGlmICh0aGlzLnRvdGFsIDw9IDAgfHwgdGhpcy5wYWdlIDwgMSB8fCB0aGlzLnBlclBhZ2UgPCAxKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wYWdlID09PSAxKSB7XG4gICAgICBpZiAodGhpcy50b3RhbCA8IHRoaXMucGVyUGFnZSkge1xuICAgICAgICByZXR1cm4gdGhpcy50b3RhbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBlclBhZ2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudG90YWwgPCB0aGlzLnBlclBhZ2UgKiB0aGlzLnBhZ2UpIHtcbiAgICAgIHJldHVybiB0aGlzLnRvdGFsO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5wZXJQYWdlICogdGhpcy5wYWdlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnb1RvUHJldmlvdXNQYWdlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnBhZ2UgPD0gMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHByZXZpb3VzUGFnZSA9IHRoaXMucGFnZSAtIDE7XG4gICAgdGhpcy5wYWdlID0gcHJldmlvdXNQYWdlO1xuXG4gICAgdGhpcy5nb1RvUGFnZS5lbWl0KHByZXZpb3VzUGFnZSk7XG4gIH1cblxuICBwdWJsaWMgZ29Ub05leHRQYWdlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnBhZ2UgPj0gdGhpcy50b3RhbFBhZ2VzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbmV4dFBhZ2UgPSB0aGlzLnBhZ2UgKyAxO1xuICAgIHRoaXMucGFnZSA9IG5leHRQYWdlO1xuXG4gICAgdGhpcy5nb1RvUGFnZS5lbWl0KG5leHRQYWdlKTtcbiAgfVxuXG4gIHB1YmxpYyBnb1RvRXhhY3RQYWdlRnJvbUV2ZW50KHsgdGFyZ2V0IH06IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmdvVG9FeGFjdFBhZ2UoKHRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KT8udmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdvVG9FeGFjdFBhZ2UocGFnZTogbnVtYmVyIHwgc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFwYWdlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IGFsbG93ZWRQYWdlTnVtYmVyID0gTnVtYmVyKHBhZ2UpO1xuXG4gICAgaWYgKGFsbG93ZWRQYWdlTnVtYmVyIDwgMCkge1xuICAgICAgYWxsb3dlZFBhZ2VOdW1iZXIgPSAxO1xuICAgIH1cblxuICAgIGlmIChhbGxvd2VkUGFnZU51bWJlciA+IHRoaXMudG90YWxQYWdlcykge1xuICAgICAgYWxsb3dlZFBhZ2VOdW1iZXIgPSB0aGlzLnRvdGFsUGFnZXM7XG4gICAgfVxuXG4gICAgdGhpcy5wYWdlID0gYWxsb3dlZFBhZ2VOdW1iZXI7XG5cbiAgICB0aGlzLmdvVG9QYWdlLmVtaXQoYWxsb3dlZFBhZ2VOdW1iZXIpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicGFnaW5hdGlvbi1jb250YWluZXJcIj5cbiAgPGRpdiBjbGFzcz1cIm1vYmlsZS1wYWdpbmF0aW9uXCI+XG4gICAgPGJ1dHRvblxuICAgICAgaW1wZGNCdXR0b25cbiAgICAgIHRoZW1lPVwic2Vjb25kYXJ5XCJcbiAgICAgIFtkaXNhYmxlZF09XCJwYWdlIDw9IDFcIlxuICAgICAgKGNsaWNrKT1cImdvVG9QcmV2aW91c1BhZ2UoKVwiPlxuICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtY2hldnJvbi1sZWZ0XCI+PC9pPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGltcGRjQnV0dG9uXG4gICAgICB0aGVtZT1cInNlY29uZGFyeVwiXG4gICAgICBbZGlzYWJsZWRdPVwicGFnZSA9PT0gdG90YWxQYWdlc1wiXG4gICAgICAoY2xpY2spPVwiZ29Ub05leHRQYWdlKClcIj5cbiAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWNoZXZyb24tcmlnaHRcIj48L2k+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJkZXNrdG9wLXBhZ2luYXRpb25cIj5cbiAgICA8ZGl2PlxuICAgICAgPHNwYW4gY2xhc3M9XCJzdW1tYXJ5XCIgW2lubmVySFRNTF09XCJzdW1tYXJ5XCI+PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwYWdpbmF0aW9uLWFjdGlvbnNcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgaW1wZGNCdXR0b25cbiAgICAgICAgdGhlbWU9XCJzZWNvbmRhcnlcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiRmlyc3QgUGFnZVwiXG4gICAgICAgIGNsYXNzPVwicGFnaW5hdGlvbi1maXJzdC1sYXN0LWJ0bnNcIlxuICAgICAgICAoY2xpY2spPVwiZ29Ub0V4YWN0UGFnZSgxKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJwYWdlIDw9IDFcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtY2hldnJvbi1sZWZ0IGZpcnN0XCI+PC9pPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLWxlZnRcIj48L2k+XG4gICAgICAgIDwhLS0gMSAtLT5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBpbXBkY0J1dHRvblxuICAgICAgICB0aGVtZT1cInNlY29uZGFyeVwiXG4gICAgICAgIGNsYXNzPVwicHJldmlvdXNcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiUHJldmlvdXNcIlxuICAgICAgICAoY2xpY2spPVwiZ29Ub1ByZXZpb3VzUGFnZSgpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInBhZ2UgPD0gMVwiPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLWxlZnRcIj48L2k+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLWNoYW5nZVwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBpbXBkY0lucHV0XG4gICAgICAgICAgbWF4bGVuZ3RoPVwiNFwiXG4gICAgICAgICAgW3ZhbHVlXT1cInBhZ2VcIlxuICAgICAgICAgIChibHVyKT1cImdvVG9FeGFjdFBhZ2VGcm9tRXZlbnQoJGV2ZW50KVwiIC8+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidG90YWwtcGFnZXNcIj4gLyB7eyB0b3RhbFBhZ2VzIH19IDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBpbXBkY0J1dHRvblxuICAgICAgICB0aGVtZT1cInNlY29uZGFyeVwiXG4gICAgICAgIGFyaWEtbGFiZWw9XCJOZXh0XCJcbiAgICAgICAgKGNsaWNrKT1cImdvVG9OZXh0UGFnZSgpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInBhZ2UgPT09IHRvdGFsUGFnZXNcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtY2hldnJvbi1yaWdodFwiPjwvaT5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBpbXBkY0J1dHRvblxuICAgICAgICB0aGVtZT1cInNlY29uZGFyeVwiXG4gICAgICAgIGNsYXNzPVwicGFnaW5hdGlvbi1maXJzdC1sYXN0LWJ0bnNcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiTGFzdCBQYWdlXCJcbiAgICAgICAgKGNsaWNrKT1cImdvVG9FeGFjdFBhZ2UodG90YWxQYWdlcylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwicGFnZSA9PT0gdG90YWxQYWdlc1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLXJpZ2h0XCI+PC9pPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLXJpZ2h0IGxhc3RcIj48L2k+XG4gICAgICAgIDwhLS0ge3sgdG90YWxQYWdlcyB9fSAtLT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFFM0M7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyxtQkFBbUI7SUFMaEM7UUFNVSxhQUFRLEdBQ2Qsa0VBQWtFLENBQUM7UUFFckU7O1dBRUc7UUFFSSxTQUFJLEdBQUcsQ0FBQyxDQUFDO1FBRWhCOztXQUVHO1FBRUksWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUVwQjs7V0FFRztRQUVJLFVBQUssR0FBRyxDQUFDLENBQUM7UUFrQmpCOztXQUVHO1FBQ3VCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBd0dqRTtJQTNIQzs7O09BR0c7SUFDSCxJQUNXLE9BQU8sQ0FBQyxPQUFlO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUMzQixPQUFPLENBQUMsbUJBQW1CLEVBQUUsTUFBTSxJQUFJLENBQUMsZUFBZSxNQUFNLENBQUM7YUFDOUQsT0FBTyxDQUFDLGtCQUFrQixFQUFFLE1BQU0sSUFBSSxDQUFDLGNBQWMsTUFBTSxDQUFDO2FBQzVELE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxJQUFJLENBQUMsS0FBSyxNQUFNLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBT0QsSUFBVyxVQUFVO1FBQ25CLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUU7WUFDdEMsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUVELElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzdCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEMsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFFO1lBQ2xELE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUU7WUFDZCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMvQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDbkI7UUFFRCxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BDLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRTtZQUNuRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQzdCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQzthQUNuQjtpQkFBTTtnQkFDTCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDckI7U0FDRjtRQUVELElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksRUFBRTtZQUNwQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDbkI7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRU8sZUFBZSxDQUFDLElBQXNCO1FBQzVDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdEMsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUMzQixPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUMxQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDeEI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BDLElBQUksSUFBSSxJQUFJLENBQUMsRUFBRTtZQUNiLE9BQU87U0FDUjtRQUVELE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUM7UUFFekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVNLFlBQVk7UUFDakIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BDLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDM0IsT0FBTztTQUNSO1FBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztRQUVyQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU0sc0JBQXNCLENBQUMsRUFBRSxNQUFNLEVBQWM7UUFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBRSxNQUEyQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTSxhQUFhLENBQUMsSUFBcUI7UUFDeEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXZDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU0scUJBQXFCLENBQUMsS0FBWTtRQUN2QywyQkFBMkI7UUFDM0IsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLEtBQUssQ0FBQyxNQUEyQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVDLENBQUM7O2lIQWhKVSxtQkFBbUI7cUdBQW5CLG1CQUFtQixvTUNiaEMsd3NFQTBFQTs0RkQ3RGEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLHlDQUF5Qzs4QkFZNUMsSUFBSTtzQkFEVixLQUFLO2dCQU9DLE9BQU87c0JBRGIsS0FBSztnQkFPQyxLQUFLO3NCQURYLEtBQUs7Z0JBUUssT0FBTztzQkFEakIsS0FBSztnQkFlb0IsUUFBUTtzQkFBakMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzYW5pdGl6ZSB9IGZyb20gJy4uLy4uL3V0aWxpdGllcyc7XG5cbi8qKlxuICogVGhlIGBQYWdpbmF0aW9uQ29tcG9uZW50YCAoYDxpbXBkYy1wYWdpbmF0aW9uYCBvciBgPGRpdiBpbXBkYy1wYWdpbmF0aW9uYCkgaXMgYSBjb250cm9sIGZvciBwYWdlZCBjb250ZW50IHN1Y2ggYXMgdGFibGVzIG9yIGxpc3RzLlxuICogVG8gdXNlLCBpbXBvcnQgYFBhZ2luYXRpb25Nb2R1bGVgIG9yIGFub3RoZXIgbW9kdWxlIHRoYXQgaW1wb3J0cyBhbmQgZXhwb3J0cyB0aGF0IG1vZHVsZSBmcm9tIGBAaW1wYXJ0bmVyL2Rlc2lnbi1jb21wb25lbnRzYC5cbiAqIGBNb2RhbE1vZHVsZWAgaW1wb3J0cyBhbmQgZXhwb3J0cyBJbXBkY0Zvcm1zTW9kdWxlIGFuZCBbQnV0dG9uTW9kdWxlXSguLz9wYXRoPS9kb2NzL2Rlc2lnbi1jb21wb25lbnRzLWJ1dHRvbikuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ltcGRjLXBhZ2luYXRpb24sIGRpdltpbXBkYy1wYWdpbmF0aW9uXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25Db21wb25lbnQge1xuICBwcml2YXRlIF9zdW1tYXJ5ID1cbiAgICAnU2hvd2luZyB7Zmlyc3RQYWdlUmVzdWx0fSB0byB7bGFzdFBhZ2VSZXN1bHR9IG9mIHt0b3RhbH0gcmVzdWx0cyc7XG5cbiAgLyoqXG4gICAqIFRoZSBjdXJyZW50IHBhZ2UuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZSA9IDA7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgaXRlbXMgc2hvd24gcGVyIHBhZ2UuIEl0ZW1zIGFyZSBjb21tb25seSBkaXNwbGF5ZWQgYXMgcm93cyBpbiBhIHRhYmxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBlclBhZ2UgPSAxMDtcblxuICAvKipcbiAgICogVGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0b3RhbCA9IDA7XG5cbiAgLyoqXG4gICAqIEEgZm9ybWF0dGFibGUgdGV4dCBzdW1tYXJ5IG9mIHBhZ2luYXRpb24gZGF0YS4gYHtmaXJzdFBhZ2VSZXN1bHR9YCBUaGUgZmlyc3QgaXRlbSB3aXRoaW4gdGhlIGN1cnJlbnQgcGFnZS5cbiAgICogYHtsYXN0UGFnZVJlc3VsdH1gIFRoZSBsYXN0IGl0ZW0gd2l0aGluIHRoZSBjdXJyZW50IHBhZ2UuIGB7dG90YWx9YCBUaGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzdW1tYXJ5KHN1bW1hcnk6IHN0cmluZykge1xuICAgIHRoaXMuX3N1bW1hcnkgPSBzdW1tYXJ5O1xuICB9XG5cbiAgcHVibGljIGdldCBzdW1tYXJ5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHNhbml0aXplKHRoaXMuX3N1bW1hcnkpXG4gICAgICAucmVwbGFjZSgne2ZpcnN0UGFnZVJlc3VsdH0nLCBgPGI+JHt0aGlzLmZpcnN0UGFnZVJlc3VsdH08L2I+YClcbiAgICAgIC5yZXBsYWNlKCd7bGFzdFBhZ2VSZXN1bHR9JywgYDxiPiR7dGhpcy5sYXN0UGFnZVJlc3VsdH08L2I+YClcbiAgICAgIC5yZXBsYWNlKCd7dG90YWx9JywgYDxiPiR7dGhpcy50b3RhbH08L2I+YCk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBwYWdlIG51bWJlciBpcyBjaGFuZ2VkLCBzcGVjaWZ5aW5nIHRoZSB0YXJnZXQgcGFnZSBudW1iZXIuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IGdvVG9QYWdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgcHVibGljIGdldCB0b3RhbFBhZ2VzKCk6IG51bWJlciB7XG4gICAgaWYgKHRoaXMudG90YWwgPCAxIHx8IHRoaXMucGVyUGFnZSA8IDEpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnRvdGFsIDwgdGhpcy5wZXJQYWdlKSB7XG4gICAgICByZXR1cm4gMTtcbiAgICB9XG5cbiAgICByZXR1cm4gTWF0aC5jZWlsKHRoaXMudG90YWwgLyB0aGlzLnBlclBhZ2UpO1xuICB9XG5cbiAgcHVibGljIGdldCBmaXJzdFBhZ2VSZXN1bHQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBwYWdlID0gdGhpcy5fZ2V0UGFnZUNsYW1wZWQoKTtcbiAgICBpZiAodGhpcy50b3RhbCA8IDEgfHwgcGFnZSA8IDEgfHwgdGhpcy5wZXJQYWdlIDwgMSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgaWYgKHBhZ2UgPT09IDEpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cblxuICAgIGlmIChwYWdlID4gTWF0aC5jZWlsKHRoaXMudG90YWwgLyB0aGlzLnBlclBhZ2UpKSB7XG4gICAgICByZXR1cm4gdGhpcy50b3RhbDtcbiAgICB9XG5cbiAgICByZXR1cm4gKHBhZ2UgLSAxKSAqIHRoaXMucGVyUGFnZSArIDE7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxhc3RQYWdlUmVzdWx0KCk6IG51bWJlciB7XG4gICAgY29uc3QgcGFnZSA9IHRoaXMuX2dldFBhZ2VDbGFtcGVkKCk7XG4gICAgaWYgKHRoaXMudG90YWwgPD0gMCB8fCBwYWdlIDwgMSB8fCB0aGlzLnBlclBhZ2UgPCAxKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBpZiAocGFnZSA9PT0gMSkge1xuICAgICAgaWYgKHRoaXMudG90YWwgPCB0aGlzLnBlclBhZ2UpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudG90YWw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5wZXJQYWdlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnRvdGFsIDwgdGhpcy5wZXJQYWdlICogcGFnZSkge1xuICAgICAgcmV0dXJuIHRoaXMudG90YWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnBlclBhZ2UgKiBwYWdlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldFBhZ2VDbGFtcGVkKHBhZ2U/OiBzdHJpbmcgfCBudW1iZXIpOiBudW1iZXIge1xuICAgIHBhZ2UgPSBOdW1iZXIocGFnZSB8fCB0aGlzLnBhZ2UgfHwgMCk7XG4gICAgaWYgKGlzTmFOKHBhZ2UpIHx8IHBhZ2UgPCAxKSB7XG4gICAgICByZXR1cm4gMTtcbiAgICB9XG5cbiAgICBpZiAocGFnZSA+IHRoaXMudG90YWxQYWdlcykge1xuICAgICAgcmV0dXJuIHRoaXMudG90YWxQYWdlcztcbiAgICB9XG5cbiAgICByZXR1cm4gcGFnZTtcbiAgfVxuXG4gIHB1YmxpYyBnb1RvUHJldmlvdXNQYWdlKCk6IHZvaWQge1xuICAgIGNvbnN0IHBhZ2UgPSB0aGlzLl9nZXRQYWdlQ2xhbXBlZCgpO1xuICAgIGlmIChwYWdlIDw9IDEpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBwcmV2aW91c1BhZ2UgPSBwYWdlIC0gMTtcbiAgICB0aGlzLnBhZ2UgPSBwcmV2aW91c1BhZ2U7XG5cbiAgICB0aGlzLmdvVG9QYWdlLmVtaXQocHJldmlvdXNQYWdlKTtcbiAgfVxuXG4gIHB1YmxpYyBnb1RvTmV4dFBhZ2UoKTogdm9pZCB7XG4gICAgY29uc3QgcGFnZSA9IHRoaXMuX2dldFBhZ2VDbGFtcGVkKCk7XG4gICAgaWYgKHBhZ2UgPj0gdGhpcy50b3RhbFBhZ2VzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbmV4dFBhZ2UgPSBwYWdlICsgMTtcbiAgICB0aGlzLnBhZ2UgPSBuZXh0UGFnZTtcblxuICAgIHRoaXMuZ29Ub1BhZ2UuZW1pdChuZXh0UGFnZSk7XG4gIH1cblxuICBwdWJsaWMgZ29Ub0V4YWN0UGFnZUZyb21FdmVudCh7IHRhcmdldCB9OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5nb1RvRXhhY3RQYWdlKCh0YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCk/LnZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnb1RvRXhhY3RQYWdlKHBhZ2U6IG51bWJlciB8IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMucGFnZSA9IHRoaXMuX2dldFBhZ2VDbGFtcGVkKHBhZ2UpO1xuXG4gICAgdGhpcy5nb1RvUGFnZS5lbWl0KHRoaXMucGFnZSk7XG4gIH1cblxuICBwdWJsaWMgcHJldmVudERlZmF1bHRBbmRCbHVyKGV2ZW50OiBFdmVudCkge1xuICAgIC8vIHByZXZlbnRzIFBSTSBmb3JtIHN1Ym1pdFxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5ibHVyKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJwYWdpbmF0aW9uLWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwibW9iaWxlLXBhZ2luYXRpb25cIj5cbiAgICA8YnV0dG9uXG4gICAgICBpbXBkY0J1dHRvblxuICAgICAgdGhlbWU9XCJzZWNvbmRhcnlcIlxuICAgICAgW2Rpc2FibGVkXT1cInBhZ2UgPD0gMVwiXG4gICAgICAoY2xpY2spPVwiZ29Ub1ByZXZpb3VzUGFnZSgpXCI+XG4gICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLWxlZnRcIj48L2k+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgaW1wZGNCdXR0b25cbiAgICAgIHRoZW1lPVwic2Vjb25kYXJ5XCJcbiAgICAgIFtkaXNhYmxlZF09XCJwYWdlID09PSB0b3RhbFBhZ2VzXCJcbiAgICAgIChjbGljayk9XCJnb1RvTmV4dFBhZ2UoKVwiPlxuICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtY2hldnJvbi1yaWdodFwiPjwvaT5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImRlc2t0b3AtcGFnaW5hdGlvblwiPlxuICAgIDxkaXY+XG4gICAgICA8c3BhbiBjbGFzcz1cInN1bW1hcnlcIiBbaW5uZXJIVE1MXT1cInN1bW1hcnlcIj48L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2luYXRpb24tYWN0aW9uc1wiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBpbXBkY0J1dHRvblxuICAgICAgICB0aGVtZT1cInNlY29uZGFyeVwiXG4gICAgICAgIGFyaWEtbGFiZWw9XCJGaXJzdCBQYWdlXCJcbiAgICAgICAgY2xhc3M9XCJwYWdpbmF0aW9uLWZpcnN0LWxhc3QtYnRuc1wiXG4gICAgICAgIChjbGljayk9XCJnb1RvRXhhY3RQYWdlKDEpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInBhZ2UgPD0gMVwiPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLWxlZnQgZmlyc3RcIj48L2k+XG4gICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWNoZXZyb24tbGVmdFwiPjwvaT5cbiAgICAgICAgPCEtLSAxIC0tPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGltcGRjQnV0dG9uXG4gICAgICAgIHRoZW1lPVwic2Vjb25kYXJ5XCJcbiAgICAgICAgY2xhc3M9XCJwcmV2aW91c1wiXG4gICAgICAgIGFyaWEtbGFiZWw9XCJQcmV2aW91c1wiXG4gICAgICAgIChjbGljayk9XCJnb1RvUHJldmlvdXNQYWdlKClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwicGFnZSA8PSAxXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWNoZXZyb24tbGVmdFwiPjwvaT5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGRpdiBjbGFzcz1cInBhZ2UtY2hhbmdlXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIGltcGRjSW5wdXRcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cInBhZ2VcIlxuICAgICAgICAgIG1heGxlbmd0aD1cIjRcIlxuICAgICAgICAgIChibHVyKT1cImdvVG9FeGFjdFBhZ2VGcm9tRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwicHJldmVudERlZmF1bHRBbmRCbHVyKCRldmVudClcIiAvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRvdGFsLXBhZ2VzXCI+IC8ge3sgdG90YWxQYWdlcyB9fSA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgaW1wZGNCdXR0b25cbiAgICAgICAgdGhlbWU9XCJzZWNvbmRhcnlcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiTmV4dFwiXG4gICAgICAgIChjbGljayk9XCJnb1RvTmV4dFBhZ2UoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJwYWdlID49IHRvdGFsUGFnZXNcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtY2hldnJvbi1yaWdodFwiPjwvaT5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBpbXBkY0J1dHRvblxuICAgICAgICB0aGVtZT1cInNlY29uZGFyeVwiXG4gICAgICAgIGNsYXNzPVwicGFnaW5hdGlvbi1maXJzdC1sYXN0LWJ0bnNcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiTGFzdCBQYWdlXCJcbiAgICAgICAgKGNsaWNrKT1cImdvVG9FeGFjdFBhZ2UodG90YWxQYWdlcylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwicGFnZSA9PT0gdG90YWxQYWdlc1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLXJpZ2h0XCI+PC9pPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1jaGV2cm9uLXJpZ2h0IGxhc3RcIj48L2k+XG4gICAgICAgIDwhLS0ge3sgdG90YWxQYWdlcyB9fSAtLT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
3
4
|
import { ButtonModule } from '../button';
|
|
4
5
|
import { ImpdcFormsModule } from '../form-field';
|
|
5
6
|
import { PaginationComponent } from './pagination.component';
|
|
@@ -8,14 +9,14 @@ export class PaginationModule {
|
|
|
8
9
|
constructor() { }
|
|
9
10
|
}
|
|
10
11
|
PaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
-
PaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: PaginationModule, declarations: [PaginationComponent], imports: [CommonModule, ButtonModule, ImpdcFormsModule], exports: [ButtonModule, ImpdcFormsModule, PaginationComponent] });
|
|
12
|
-
PaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PaginationModule, imports: [CommonModule, ButtonModule, ImpdcFormsModule, ButtonModule, ImpdcFormsModule] });
|
|
12
|
+
PaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: PaginationModule, declarations: [PaginationComponent], imports: [CommonModule, ButtonModule, FormsModule, ImpdcFormsModule], exports: [ButtonModule, ImpdcFormsModule, PaginationComponent] });
|
|
13
|
+
PaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PaginationModule, imports: [CommonModule, ButtonModule, FormsModule, ImpdcFormsModule, ButtonModule, ImpdcFormsModule] });
|
|
13
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PaginationModule, decorators: [{
|
|
14
15
|
type: NgModule,
|
|
15
16
|
args: [{
|
|
16
|
-
imports: [CommonModule, ButtonModule, ImpdcFormsModule],
|
|
17
|
+
imports: [CommonModule, ButtonModule, FormsModule, ImpdcFormsModule],
|
|
17
18
|
declarations: [PaginationComponent],
|
|
18
19
|
exports: [ButtonModule, ImpdcFormsModule, PaginationComponent]
|
|
19
20
|
}]
|
|
20
21
|
}], ctorParameters: function () { return []; } });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQU83RCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLGdCQUFlLENBQUM7OzhHQURMLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQUhaLG1CQUFtQixhQUR4QixZQUFZLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsYUFFekQsWUFBWSxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQjsrR0FFbEQsZ0JBQWdCLFlBSmpCLFlBQVksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUV6RCxZQUFZLEVBQUUsZ0JBQWdCOzRGQUU3QixnQkFBZ0I7a0JBTDVCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ3BFLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLENBQUM7aUJBQy9EIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uL2J1dHRvbic7XG5pbXBvcnQgeyBJbXBkY0Zvcm1zTW9kdWxlIH0gZnJvbSAnLi4vZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEJ1dHRvbk1vZHVsZSwgRm9ybXNNb2R1bGUsIEltcGRjRm9ybXNNb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtQYWdpbmF0aW9uQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0J1dHRvbk1vZHVsZSwgSW1wZGNGb3Jtc01vZHVsZSwgUGFnaW5hdGlvbkNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbk1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiJdfQ==
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import { DropdownComponent
|
|
2
|
+
import { DropdownComponent } from '../lib';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class InteractionService {
|
|
5
5
|
constructor() {
|
|
6
6
|
this._interactables = [];
|
|
7
|
+
this._backdropQueue = [];
|
|
7
8
|
}
|
|
8
9
|
get showBackdrop() {
|
|
9
|
-
return this.
|
|
10
|
+
return this._backdropQueue.length > 0;
|
|
10
11
|
}
|
|
11
12
|
registerBackdrop(modalBackdrop) {
|
|
12
13
|
// WARNING: there should only be 1 backdrop component, preferably loaded in the body
|
|
@@ -28,8 +29,12 @@ export class InteractionService {
|
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
add(interactable) {
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
const interactableId = interactable.interactableId;
|
|
33
|
+
if (interactableId > 0) {
|
|
34
|
+
if (!this._interactables.some(i => i.interactableId === interactableId)) {
|
|
35
|
+
this._interactables.push(interactable);
|
|
36
|
+
}
|
|
37
|
+
return interactableId;
|
|
33
38
|
}
|
|
34
39
|
this._interactables.push(interactable);
|
|
35
40
|
return this._interactables.length;
|
|
@@ -39,6 +44,7 @@ export class InteractionService {
|
|
|
39
44
|
return;
|
|
40
45
|
}
|
|
41
46
|
this._interactables.splice(interactableId - 1, 1);
|
|
47
|
+
this.dequeueBackdrop(interactableId);
|
|
42
48
|
}
|
|
43
49
|
toggle(interactable) {
|
|
44
50
|
if (interactable.interactableId <= 0 || interactable.show) {
|
|
@@ -52,6 +58,17 @@ export class InteractionService {
|
|
|
52
58
|
}
|
|
53
59
|
return true;
|
|
54
60
|
}
|
|
61
|
+
queueBackdrop(interactableId) {
|
|
62
|
+
if (!this._backdropQueue.includes(interactableId)) {
|
|
63
|
+
this._backdropQueue.push(interactableId);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
dequeueBackdrop(interactableId) {
|
|
67
|
+
const interactableIdIndex = this._backdropQueue.indexOf(interactableId);
|
|
68
|
+
if (interactableIdIndex !== -1) {
|
|
69
|
+
this._backdropQueue.splice(interactableIdIndex, 1);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
55
72
|
}
|
|
56
73
|
InteractionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: InteractionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
74
|
InteractionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: InteractionService, providedIn: 'root' });
|
|
@@ -61,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
61
78
|
providedIn: 'root'
|
|
62
79
|
}]
|
|
63
80
|
}] });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9zZXJ2aWNlcy9pbnRlcmFjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFxQixpQkFBaUIsRUFBa0IsTUFBTSxRQUFRLENBQUM7O0FBTzlFLE1BQU0sT0FBTyxrQkFBa0I7SUFIL0I7UUFLVSxtQkFBYyxHQUE0QixFQUFFLENBQUM7UUFDN0MsbUJBQWMsR0FBYSxFQUFFLENBQUM7S0F1RXZDO0lBckVDLElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxhQUFnQztRQUMvQyxvRkFBb0Y7UUFDcEYsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUM7U0FDaEM7YUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssYUFBYSxFQUFFO1lBQzNDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUM7WUFDL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUU7Z0JBQ3hCLHVEQUF1RDtnQkFDdkQsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQzFCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsYUFBZ0M7UUFDakQsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLGFBQWEsRUFBRTtZQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztTQUM1QjtJQUNILENBQUM7SUFFRCxHQUFHLENBQUMsWUFBbUM7UUFDckMsTUFBTSxjQUFjLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FBQztRQUNuRCxJQUFJLGNBQWMsR0FBRyxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsS0FBSyxjQUFjLENBQUMsRUFBRTtnQkFDdkUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDeEM7WUFDRCxPQUFPLGNBQWMsQ0FBQztTQUN2QjtRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDcEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFzQjtRQUMzQixJQUFJLGNBQWMsSUFBSSxDQUFDLElBQUksY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFO1lBQ3RFLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLGNBQWMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQW1DO1FBQ3hDLElBQUksWUFBWSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksWUFBWSxDQUFDLElBQUksRUFBRTtZQUN6RCx3REFBd0Q7WUFDeEQsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELEtBQUssTUFBTSxpQkFBaUIsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN6RSxJQUFJLGlCQUFpQixZQUFZLGlCQUFpQixFQUFFO2dCQUNsRCxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUMxQjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsYUFBYSxDQUFDLGNBQXNCO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNqRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsY0FBc0I7UUFDcEMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSxJQUFJLG1CQUFtQixLQUFLLENBQUMsQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3BEO0lBQ0gsQ0FBQzs7Z0hBekVVLGtCQUFrQjtvSEFBbEIsa0JBQWtCLGNBRmpCLE1BQU07NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhY2tkcm9wQ29tcG9uZW50LCBEcm9wZG93bkNvbXBvbmVudCwgTW9kYWxDb21wb25lbnQgfSBmcm9tICcuLi9saWInO1xuXG5leHBvcnQgdHlwZSBJbnRlcmFjdGFibGVDb21wb25lbnQgPSBNb2RhbENvbXBvbmVudCB8IERyb3Bkb3duQ29tcG9uZW50O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBJbnRlcmFjdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIF9iYWNrZHJvcD86IEJhY2tkcm9wQ29tcG9uZW50O1xuICBwcml2YXRlIF9pbnRlcmFjdGFibGVzOiBJbnRlcmFjdGFibGVDb21wb25lbnRbXSA9IFtdO1xuICBwcml2YXRlIF9iYWNrZHJvcFF1ZXVlOiBudW1iZXJbXSA9IFtdO1xuXG4gIGdldCBzaG93QmFja2Ryb3AoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2JhY2tkcm9wUXVldWUubGVuZ3RoID4gMDtcbiAgfVxuXG4gIHJlZ2lzdGVyQmFja2Ryb3AobW9kYWxCYWNrZHJvcDogQmFja2Ryb3BDb21wb25lbnQpIHtcbiAgICAvLyBXQVJOSU5HOiB0aGVyZSBzaG91bGQgb25seSBiZSAxIGJhY2tkcm9wIGNvbXBvbmVudCwgcHJlZmVyYWJseSBsb2FkZWQgaW4gdGhlIGJvZHlcbiAgICBpZiAoIXRoaXMuX2JhY2tkcm9wKSB7XG4gICAgICB0aGlzLl9iYWNrZHJvcCA9IG1vZGFsQmFja2Ryb3A7XG4gICAgfSBlbHNlIGlmICh0aGlzLl9iYWNrZHJvcCAhPT0gbW9kYWxCYWNrZHJvcCkge1xuICAgICAgdGhpcy5fYmFja2Ryb3AuaW52YWxpZGF0ZSgpO1xuICAgICAgdGhpcy5fYmFja2Ryb3AgPSBtb2RhbEJhY2tkcm9wO1xuICAgICAgaWYgKCFtb2RhbEJhY2tkcm9wLnZhbGlkKSB7XG4gICAgICAgIC8vIHdlIGludmFsaWRhdGVkIGFuZCBzZXQgYmFja2Ryb3AgdG8gdGhlIHNhbWUgYmFja2Ryb3BcbiAgICAgICAgbW9kYWxCYWNrZHJvcC52YWxpZGF0ZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVucmVnaXN0ZXJCYWNrZHJvcChtb2RhbEJhY2tkcm9wOiBCYWNrZHJvcENvbXBvbmVudCkge1xuICAgIGlmICh0aGlzLl9iYWNrZHJvcCA9PT0gbW9kYWxCYWNrZHJvcCkge1xuICAgICAgdGhpcy5fYmFja2Ryb3AgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgYWRkKGludGVyYWN0YWJsZTogSW50ZXJhY3RhYmxlQ29tcG9uZW50KTogbnVtYmVyIHtcbiAgICBjb25zdCBpbnRlcmFjdGFibGVJZCA9IGludGVyYWN0YWJsZS5pbnRlcmFjdGFibGVJZDtcbiAgICBpZiAoaW50ZXJhY3RhYmxlSWQgPiAwKSB7XG4gICAgICBpZiAoIXRoaXMuX2ludGVyYWN0YWJsZXMuc29tZShpID0+IGkuaW50ZXJhY3RhYmxlSWQgPT09IGludGVyYWN0YWJsZUlkKSkge1xuICAgICAgICB0aGlzLl9pbnRlcmFjdGFibGVzLnB1c2goaW50ZXJhY3RhYmxlKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBpbnRlcmFjdGFibGVJZDtcbiAgICB9XG4gICAgdGhpcy5faW50ZXJhY3RhYmxlcy5wdXNoKGludGVyYWN0YWJsZSk7XG4gICAgcmV0dXJuIHRoaXMuX2ludGVyYWN0YWJsZXMubGVuZ3RoO1xuICB9XG5cbiAgcmVtb3ZlKGludGVyYWN0YWJsZUlkOiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoaW50ZXJhY3RhYmxlSWQgPD0gMCB8fCBpbnRlcmFjdGFibGVJZCA+IHRoaXMuX2ludGVyYWN0YWJsZXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2ludGVyYWN0YWJsZXMuc3BsaWNlKGludGVyYWN0YWJsZUlkIC0gMSwgMSk7XG4gICAgdGhpcy5kZXF1ZXVlQmFja2Ryb3AoaW50ZXJhY3RhYmxlSWQpO1xuICB9XG5cbiAgdG9nZ2xlKGludGVyYWN0YWJsZTogSW50ZXJhY3RhYmxlQ29tcG9uZW50KTogYm9vbGVhbiB7XG4gICAgaWYgKGludGVyYWN0YWJsZS5pbnRlcmFjdGFibGVJZCA8PSAwIHx8IGludGVyYWN0YWJsZS5zaG93KSB7XG4gICAgICAvLyBvdGhlciBpbnRlcmFjdGFibGVzIGRvbid0IG5lZWQgdG8gYmUgYWx0ZXJlZC9ub3RpZmllZFxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBmb3IgKGNvbnN0IG90aGVySW50ZXJhY3RhYmxlIG9mIHRoaXMuX2ludGVyYWN0YWJsZXMuZmlsdGVyKG9pID0+IG9pLnNob3cpKSB7XG4gICAgICBpZiAob3RoZXJJbnRlcmFjdGFibGUgaW5zdGFuY2VvZiBEcm9wZG93bkNvbXBvbmVudCkge1xuICAgICAgICBvdGhlckludGVyYWN0YWJsZS5oaWRlKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcXVldWVCYWNrZHJvcChpbnRlcmFjdGFibGVJZDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9iYWNrZHJvcFF1ZXVlLmluY2x1ZGVzKGludGVyYWN0YWJsZUlkKSkge1xuICAgICAgdGhpcy5fYmFja2Ryb3BRdWV1ZS5wdXNoKGludGVyYWN0YWJsZUlkKTtcbiAgICB9XG4gIH1cblxuICBkZXF1ZXVlQmFja2Ryb3AoaW50ZXJhY3RhYmxlSWQ6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGludGVyYWN0YWJsZUlkSW5kZXggPSB0aGlzLl9iYWNrZHJvcFF1ZXVlLmluZGV4T2YoaW50ZXJhY3RhYmxlSWQpO1xuICAgIGlmIChpbnRlcmFjdGFibGVJZEluZGV4ICE9PSAtMSkge1xuICAgICAgdGhpcy5fYmFja2Ryb3BRdWV1ZS5zcGxpY2UoaW50ZXJhY3RhYmxlSWRJbmRleCwgMSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|