@skyux/indicators 7.0.0-beta.12 → 7.0.0-beta.13
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.
|
@@ -238,7 +238,7 @@ _SkyTokensComponent__disabled = new WeakMap(), _SkyTokensComponent__dismissible
|
|
|
238
238
|
});
|
|
239
239
|
};
|
|
240
240
|
SkyTokensComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyTokensComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
241
|
-
SkyTokensComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyTokensComponent, selector: "sky-tokens", inputs: { disabled: "disabled", dismissible: "dismissible", displayWith: "displayWith", trackWith: "trackWith", focusable: "focusable", tokens: "tokens", messageStream: "messageStream" }, outputs: { focusIndexOverRange: "focusIndexOverRange", focusIndexUnderRange: "focusIndexUnderRange", tokenSelected: "tokenSelected", tokensChange: "tokensChange" }, viewQueries: [{ propertyName: "tokenComponents", predicate: SkyTokenComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n
|
|
241
|
+
SkyTokensComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyTokensComponent, selector: "sky-tokens", inputs: { disabled: "disabled", dismissible: "dismissible", displayWith: "displayWith", trackWith: "trackWith", focusable: "focusable", tokens: "tokens", messageStream: "messageStream" }, outputs: { focusIndexOverRange: "focusIndexOverRange", focusIndexUnderRange: "focusIndexUnderRange", tokenSelected: "tokenSelected", tokensChange: "tokensChange" }, viewQueries: [{ propertyName: "tokenComponents", predicate: SkyTokenComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n <div class=\"sky-tokens-content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.sky-tokens{display:flex;flex-wrap:wrap;align-items:baseline;margin:-2px}.sky-tokens .sky-tokens-content,.sky-tokens ::ng-deep sky-token{flex:0 0 auto;display:inline-flex;padding:2px}.sky-tokens .sky-tokens-content{flex-grow:1;flex-basis:0px}.sky-tokens .sky-tokens-content:before{content:\"\\200b\"}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.SkyTokenComponent, selector: "sky-token", inputs: ["disabled", "ariaLabel", "dismissible", "focusable", "role"], outputs: ["dismiss", "tokenFocus"] }], animations: [
|
|
242
242
|
trigger('blockAnimationOnLoad', [transition(':enter', [])]),
|
|
243
243
|
trigger('dismiss', [
|
|
244
244
|
transition(':enter', [
|
|
@@ -281,7 +281,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
281
281
|
})),
|
|
282
282
|
]),
|
|
283
283
|
]),
|
|
284
|
-
], template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n
|
|
284
|
+
], template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n <div class=\"sky-tokens-content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.sky-tokens{display:flex;flex-wrap:wrap;align-items:baseline;margin:-2px}.sky-tokens .sky-tokens-content,.sky-tokens ::ng-deep sky-token{flex:0 0 auto;display:inline-flex;padding:2px}.sky-tokens .sky-tokens-content{flex-grow:1;flex-basis:0px}.sky-tokens .sky-tokens-content:before{content:\"\\200b\"}\n"] }]
|
|
285
285
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
|
|
286
286
|
type: Input
|
|
287
287
|
}], dismissible: [{
|
|
@@ -308,4 +308,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
308
308
|
type: ViewChildren,
|
|
309
309
|
args: [SkyTokenComponent]
|
|
310
310
|
}] } });
|
|
311
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy90b2tlbnMvdG9rZW5zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy90b2tlbnMvdG9rZW5zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFHTixZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBSXRELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7O0FBRW5FLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxDQUFDO0FBRXBDOzs7O0dBSUc7QUFrQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQThKN0IsWUFBWSxjQUFpQzs7UUEvRDdDOzs7V0FHRztRQUVJLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFdEQ7OztXQUdHO1FBRUkseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV2RDs7V0FFRztRQUVJLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFFckU7OztXQUdHO1FB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LE9BQU8sQ0FDTCxlQUFlLEVBQ2YsS0FBSyxDQUFDO29DQUNKLE9BQU8sRUFBRSxDQUFDO29DQUNWLEtBQUssRUFBRSxHQUFHO2lDQUNYLENBQUMsQ0FDSDs2QkFDRixDQUFDOzRCQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLE9BQU8sQ0FDTCxlQUFlLEVBQ2YsS0FBSyxDQUFDO29DQUNKLE9BQU8sRUFBRSxDQUFDO29DQUNWLEtBQUssRUFBRSxDQUFDO2lDQUNULENBQUMsQ0FDSDs2QkFDRixDQUFDO3lCQUNILENBQUM7cUJBQ0g7d0dBVVUsUUFBUTtzQkFEbEIsS0FBSztnQkFjSyxXQUFXO3NCQURyQixLQUFLO2dCQWNLLFdBQVc7c0JBRHJCLEtBQUs7Z0JBY0MsU0FBUztzQkFEZixLQUFLO2dCQVVLLFNBQVM7c0JBRG5CLEtBQUs7Z0JBYUssTUFBTTtzQkFEaEIsS0FBSztnQkFtQkssYUFBYTtzQkFEdkIsS0FBSztnQkFlQyxtQkFBbUI7c0JBRHpCLE1BQU07Z0JBUUEsb0JBQW9CO3NCQUQxQixNQUFNO2dCQU9BLGFBQWE7c0JBRG5CLE1BQU07Z0JBUUEsWUFBWTtzQkFEbEIsTUFBTTtnQkE4QkEsZUFBZTtzQkFEckIsWUFBWTt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFRyYWNrQnlGdW5jdGlvbixcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVRva2VuQ29tcG9uZW50IH0gZnJvbSAnLi90b2tlbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5VG9rZW4gfSBmcm9tICcuL3R5cGVzL3Rva2VuJztcbmltcG9ydCB7IFNreVRva2VuU2VsZWN0ZWRFdmVudEFyZ3MgfSBmcm9tICcuL3R5cGVzL3Rva2VuLXNlbGVjdGVkLWV2ZW50LWFyZ3MnO1xuaW1wb3J0IHsgU2t5VG9rZW5zTWVzc2FnZSB9IGZyb20gJy4vdHlwZXMvdG9rZW5zLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5VG9rZW5zTWVzc2FnZVR5cGUgfSBmcm9tICcuL3R5cGVzL3Rva2Vucy1tZXNzYWdlLXR5cGUnO1xuXG5jb25zdCBESVNQTEFZX1dJVEhfREVGQVVMVCA9ICduYW1lJztcblxuLyoqXG4gKiBDcmVhdGVzIGEgY29udGFpbmVyIHRoYXQgZW5hYmxlcyBuYXZpZ2F0aW9uIGJldHdlZW4gdG9rZW5zIHVzaW5nIGtleWJvYXJkIGFycm93IGtleXMuXG4gKiBUaGlzIGlzIHVzZWZ1bCB3aGVuIGNvbWJpbmVkIHdpdGggb3RoZXIgY29tcG9uZW50cyB3aGVyZSB0aGUgPGtiZD5UYWI8L2tiZD4ga2V5IGlzXG4gKiByZXNlcnZlZCBmb3Igb3RoZXIgZnVuY3Rpb25zLCBzdWNoIGFzIHRoZSBTS1kgVVggTG9va3VwIGNvbXBvbmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXRva2VucycsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2tlbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b2tlbnMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdibG9ja0FuaW1hdGlvbk9uTG9hZCcsIFt0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXSldKSxcbiAgICB0cmlnZ2VyKCdkaXNtaXNzJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICB3aWR0aDogMCxcbiAgICAgICAgfSksXG4gICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgJzE1MG1zIGVhc2UtaW4nLFxuICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDEsXG4gICAgICAgICAgICB3aWR0aDogJyonLFxuICAgICAgICAgIH0pXG4gICAgICAgICksXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAnMTUwbXMgZWFzZS1pbicsXG4gICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICAgIHdpZHRoOiAwLFxuICAgICAgICAgIH0pXG4gICAgICAgICksXG4gICAgICBdKSxcbiAgICBdKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5VG9rZW5zQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRvIGRpc2FibGUgdGhlIHRva2VucyBsaXN0IHRvIHByZXZlbnQgdXNlcnMgZnJvbSBzZWxlY3RpbmcgdG9rZW5zLFxuICAgKiBkaXNtaXNzaW5nIHRva2Vucywgb3IgbmF2aWdhdGluZyB0aHJvdWdoIHRoZSBsaXN0IHdpdGggdGhlIGFycm93IGtleXMuIFdoZW4gdGhlIHRva2VucyBsaXN0XG4gICAqIGlzIGRpc2FibGVkLCB1c2VycyBjYW4gc3RpbGwgcGxhY2UgZm9jdXMgb24gaXRlbXMgaW4gdGhlIGxpc3QgdXNpbmcgdGhlIGBUYWJgIGtleS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfZGlzYWJsZWQgPSAhIXZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy4jX2Rpc2FibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHVzZXJzIGNhbiByZW1vdmUgYSB0b2tlbiBmcm9tIHRoZSBsaXN0IGJ5IHNlbGVjdGluZyBhIHRva2VuJ3MgY2xvc2UgYnV0dG9uLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc21pc3NpYmxlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rpc21pc3NpYmxlID0gdmFsdWUgIT09IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNtaXNzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy4jX2Rpc21pc3NpYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdG9rZW4gcHJvcGVydHkgdG8gZGlzcGxheSBmb3IgZWFjaCBpdGVtIGluIHRoZSB0b2tlbnMgbGlzdC5cbiAgICogQGRlZmF1bHQgXCJuYW1lXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzcGxheVdpdGgodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19kaXNwbGF5V2l0aCA9IHZhbHVlIHx8IERJU1BMQVlfV0lUSF9ERUZBVUxUO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5V2l0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfZGlzcGxheVdpdGg7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0b2tlbiBwcm9wZXJ0eSB0aGF0IHJlcHJlc2VudHMgdGhlIHRva2VuJ3MgdW5pcXVlIGlkZW50aWZpZXIuIFdoZW4gdGhpcyBwcm9wZXJ0eVxuICAgKiBpcyBzZXQsIGFuaW1hdGlvbnMgYXJlIGVuYWJsZWQgd2hlbiBkaXNtaXNzaW5nIHRva2Vucy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0cmFja1dpdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdXNlcnMgY2FuIGZvY3VzIG9uIGl0ZW1zIGluIHRoZSBsaXN0IHVzaW5nIHRoZSBgVGFiYCBrZXkuXG4gICAqIFRoaXMgZG9lcyBub3QgYWZmZWN0IHRoZSBhYmlsaXR5IG9mIHVzZXJzIHRvIHNlbGVjdCB0b2tlbnMsIGRpc21pc3MgdG9rZW5zLFxuICAgKiBvciBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSBsaXN0IHdpdGggdGhlIGFycm93IGtleXMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZm9jdXNhYmxlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2ZvY3VzYWJsZSA9IHZhbHVlICE9PSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfZm9jdXNhYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhbiBhcnJheSBvZiB0b2tlbnMgdG8gaW5jbHVkZSBpbiB0aGUgbGlzdC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdG9rZW5zKHZhbHVlOiBTa3lUb2tlbltdIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3Rva2VucyA9IHZhbHVlIHx8IFtdO1xuICAgIC8vIFRoZSBwcmV2aW91cyBiZWhhdmlvciB3YXMgdG8gc2V0IGB0aGlzLl90b2tlbnMgPSB2YWx1ZWAsIHRoZW4gZW1pdCBgdGhpcy5fdG9rZW5zYCxcbiAgICAvLyB3aGljaCB3b3VsZCBlbWl0IGB1bmRlZmluZWRgIGluc3RlYWQgb2YgYSBkZWZhdWx0IHZhbHVlIG9mIGBbXWAgcmV0dXJuZWQgYnkgdGhlXG4gICAgLy8gZ2V0IGFjY2Vzc29yIHdoZW4gc2V0IHRvIGB1bmRlZmluZWRgLiBFbWl0dGluZyBgdmFsdWVgIGluc3RlYWQgb2YgYHRoaXMuI190b2tlbnNPckRlZmF1bHRgXG4gICAgLy8gcHJlc2VydmVzIHRoYXQgYmVoYXZpb3IuXG4gICAgdGhpcy50b2tlbnNDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRva2VucygpOiBTa3lUb2tlbltdIHtcbiAgICByZXR1cm4gdGhpcy4jX3Rva2VucztcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYW4gb2JzZXJ2YWJsZSBvZiBgU2t5VG9rZW5zTWVzc2FnZWAgdGhhdCBjYW4gcGxhY2UgZm9jdXMgb24gYVxuICAgKiBwYXJ0aWN1bGFyIHRva2VuIG9yIHJlbW92ZSB0aGUgYWN0aXZlIHRva2VuIGZyb20gdGhlIGxpc3QuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IG1lc3NhZ2VTdHJlYW0odmFsdWU6IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfbWVzc2FnZVN0cmVhbSA9IHZhbHVlIHx8IG5ldyBTdWJqZWN0PFNreVRva2Vuc01lc3NhZ2U+KCk7XG4gICAgdGhpcy4jaW5pdE1lc3NhZ2VTdHJlYW0oKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbWVzc2FnZVN0cmVhbSgpOiBTdWJqZWN0PFNreVRva2Vuc01lc3NhZ2U+IHtcbiAgICByZXR1cm4gdGhpcy4jX21lc3NhZ2VTdHJlYW07XG4gIH1cblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSB0b2tlbnMgbGlzdCB3aXRoIHRoZSBgVGFiYCBrZXlcbiAgICogYW5kIGF0dGVtcHQgdG8gbW92ZSBwYXN0IHRoZSBmaW5hbCB0b2tlbiBpbiB0aGUgbGlzdC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZm9jdXNJbmRleE92ZXJSYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSB0b2tlbnMgbGlzdCB3aXRoIHRoZSBgVGFiYCBrZXlcbiAgICogYW5kIGF0dGVtcHQgdG8gbW92ZSBiZWZvcmUgdGhlIGZpcnN0IHRva2VuIGluIHRoZSBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmb2N1c0luZGV4VW5kZXJSYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBzZWxlY3QgYSB0b2tlbiBpbiB0aGUgbGlzdC4gVGhpcyBldmVudCBlbWl0cyB0aGUgc2VsZWN0ZWQgdG9rZW4uXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHRva2VuU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuU2VsZWN0ZWRFdmVudEFyZ3M+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdGhlIHRva2VucyBpbiB0aGUgbGlzdCBjaGFuZ2UuXG4gICAqIFRoaXMgZXZlbnQgZW1pdHMgYW4gYXJyYXkgb2YgdGhlIHRva2VucyBpbiB0aGUgdXBkYXRlZCBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyB0b2tlbnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuW10+KCk7XG5cbiAgcHVibGljIGdldCBhY3RpdmVJbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLiNfYWN0aXZlSW5kZXg7XG4gIH1cblxuICBwdWJsaWMgc2V0IGFjdGl2ZUluZGV4KHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodmFsdWUgPj0gdGhpcy4jX3Rva2Vucy5sZW5ndGgpIHtcbiAgICAgIHZhbHVlID0gdGhpcy4jX3Rva2Vucy5sZW5ndGggLSAxO1xuICAgICAgdGhpcy5mb2N1c0luZGV4T3ZlclJhbmdlLmVtaXQoKTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICB2YWx1ZSA9IDA7XG4gICAgICB0aGlzLmZvY3VzSW5kZXhVbmRlclJhbmdlLmVtaXQoKTtcbiAgICB9XG5cbiAgICB0aGlzLiNfYWN0aXZlSW5kZXggPSB2YWx1ZSB8fCAwO1xuICB9XG5cbiAgcHVibGljIHRyYWNrVG9rZW5GbjogVHJhY2tCeUZ1bmN0aW9uPFNreVRva2VuPjtcblxuICAjX2Rpc2FibGVkID0gZmFsc2U7XG4gICNfZGlzbWlzc2libGUgPSB0cnVlO1xuICAjX2ZvY3VzYWJsZSA9IHRydWU7XG4gICNfdG9rZW5zOiBTa3lUb2tlbltdID0gW107XG4gICNfZGlzcGxheVdpdGggPSBESVNQTEFZX1dJVEhfREVGQVVMVDtcblxuICBAVmlld0NoaWxkcmVuKFNreVRva2VuQ29tcG9uZW50KVxuICBwdWJsaWMgdG9rZW5Db21wb25lbnRzOiBRdWVyeUxpc3Q8U2t5VG9rZW5Db21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICNtZXNzYWdlU3RyZWFtU3ViOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgI19tZXNzYWdlU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4oKTtcbiAgI2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZjtcblxuICAjX2FjdGl2ZUluZGV4ID0gMDtcblxuICBjb25zdHJ1Y3RvcihjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI2luaXRNZXNzYWdlU3RyZWFtKCk7XG5cbiAgICAvLyBBbmd1bGFyIGNhbGxzIHRoZSB0cmFja0J5IGZ1bmN0aW9uIHdpdGhvdXQgYXBwbHlpbmcgdGhlIGNvbXBvbmVudCBpbnN0YW5jZSdzIHNjb3BlLlxuICAgIC8vIFVzZSBhIGZhdC1hcnJvdyBmdW5jdGlvbiBzbyB0aGUgY3VycmVudCBjb21wb25lbnQgaW5zdGFuY2UncyB0cmFja1dpdGggcHJvcGVydHkgY2FuXG4gICAgLy8gYmUgcmVmZXJlbmNlZC5cbiAgICB0aGlzLnRyYWNrVG9rZW5GbiA9IChfaW5kZXgsIGl0ZW0pOiB1bmtub3duID0+IHtcbiAgICAgIGlmICh0aGlzLnRyYWNrV2l0aCkge1xuICAgICAgICByZXR1cm4gaXRlbS52YWx1ZVt0aGlzLnRyYWNrV2l0aF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpdGVtO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uVG9rZW5DbGljayh0b2tlbjogU2t5VG9rZW4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuI25vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW4pO1xuICB9XG5cbiAgcHVibGljIG9uVG9rZW5LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgICBjYXNlICdMZWZ0JzpcbiAgICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgICB0aGlzLiNfbWVzc2FnZVN0cmVhbS5uZXh0KHtcbiAgICAgICAgICAgIHR5cGU6IFNreVRva2Vuc01lc3NhZ2VUeXBlLkZvY3VzUHJldmlvdXNUb2tlbixcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ1JpZ2h0JzpcbiAgICAgICAgY2FzZSAnQXJyb3dSaWdodCc6XG4gICAgICAgICAgdGhpcy4jX21lc3NhZ2VTdHJlYW0ubmV4dCh7XG4gICAgICAgICAgICB0eXBlOiBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c05leHRUb2tlbixcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RUb2tlbih0b2tlbjogU2t5VG9rZW4pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuI25vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW4pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVUb2tlbih0b2tlbjogU2t5VG9rZW4pOiB2b2lkIHtcbiAgICB0aGlzLnRva2VucyA9IHRoaXMudG9rZW5zLmZpbHRlcigodCkgPT4gdCAhPT0gdG9rZW4pO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gICNmb2N1c1ByZXZpb3VzVG9rZW4oKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVJbmRleC0tO1xuICAgIHRoaXMuI2ZvY3VzQWN0aXZlVG9rZW4oKTtcbiAgfVxuXG4gICNmb2N1c05leHRUb2tlbigpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUluZGV4Kys7XG4gICAgdGhpcy4jZm9jdXNBY3RpdmVUb2tlbigpO1xuICB9XG5cbiAgI2ZvY3VzTGFzdFRva2VuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRva2VuQ29tcG9uZW50cykge1xuICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IHRoaXMudG9rZW5Db21wb25lbnRzLmxlbmd0aCAtIDE7XG4gICAgICB0aGlzLiNmb2N1c0FjdGl2ZVRva2VuKCk7XG4gICAgfVxuICB9XG5cbiAgI2ZvY3VzQWN0aXZlVG9rZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudG9rZW5Db21wb25lbnRzKSB7XG4gICAgICBjb25zdCB0b2tlbkNvbXBvbmVudCA9IHRoaXMudG9rZW5Db21wb25lbnRzLmZpbmQoXG4gICAgICAgIChfY29tcDogU2t5VG9rZW5Db21wb25lbnQsIGk6IG51bWJlcikgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmFjdGl2ZUluZGV4ID09PSBpO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICBpZiAodG9rZW5Db21wb25lbnQpIHtcbiAgICAgICAgdG9rZW5Db21wb25lbnQuZm9jdXNFbGVtZW50KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3JlbW92ZUFjdGl2ZVRva2VuKCk6IHZvaWQge1xuICAgIGNvbnN0IHRva2VuID0gdGhpcy50b2tlbnNbdGhpcy5hY3RpdmVJbmRleF07XG4gICAgaWYgKHRva2VuKSB7XG4gICAgICB0aGlzLnJlbW92ZVRva2VuKHRva2VuKTtcbiAgICB9XG4gIH1cblxuICAjaW5pdE1lc3NhZ2VTdHJlYW0oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIpIHtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICB0aGlzLiNtZXNzYWdlU3RyZWFtU3ViID0gdGhpcy5tZXNzYWdlU3RyZWFtXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lUb2tlbnNNZXNzYWdlKSA9PiB7XG4gICAgICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c0xhc3RUb2tlbjpcbiAgICAgICAgICAgIHRoaXMuI2ZvY3VzTGFzdFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNBY3RpdmVUb2tlbjpcbiAgICAgICAgICAgIHRoaXMuI2ZvY3VzQWN0aXZlVG9rZW4oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c1ByZXZpb3VzVG9rZW46XG4gICAgICAgICAgICB0aGlzLiNmb2N1c1ByZXZpb3VzVG9rZW4oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c05leHRUb2tlbjpcbiAgICAgICAgICAgIHRoaXMuI2ZvY3VzTmV4dFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuUmVtb3ZlQWN0aXZlVG9rZW46XG4gICAgICAgICAgICB0aGlzLiNyZW1vdmVBY3RpdmVUb2tlbigpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgI25vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW46IFNreVRva2VuKTogdm9pZCB7XG4gICAgdGhpcy50b2tlblNlbGVjdGVkLmVtaXQoe1xuICAgICAgdG9rZW4sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktdG9rZW5zXCJcbiAgW0BibG9ja0FuaW1hdGlvbk9uTG9hZF1cbiAgW2F0dHIucm9sZV09XCJ0b2tlbnMubGVuZ3RoID8gJ2dyaWQnIDogbnVsbFwiXG4+XG4gIDxza3ktdG9rZW5cbiAgICAqbmdGb3I9XCJsZXQgdG9rZW4gb2YgdG9rZW5zOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0cmFja1Rva2VuRm5cIlxuICAgIHJvbGU9XCJyb3dcIlxuICAgIFtALmRpc2FibGVkXT1cIiF0cmFja1dpdGhcIlxuICAgIFtAZGlzbWlzc11cbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtkaXNtaXNzaWJsZV09XCJkaXNtaXNzaWJsZVwiXG4gICAgW2ZvY3VzYWJsZV09XCJmb2N1c2FibGVcIlxuICAgIChkaXNtaXNzKT1cInJlbW92ZVRva2VuKHRva2VuKVwiXG4gICAgKGNsaWNrKT1cIm9uVG9rZW5DbGljayh0b2tlbilcIlxuICAgIChrZXlkb3duKT1cIm9uVG9rZW5LZXlEb3duKCRldmVudClcIlxuICAgIChrZXl1cC5lbnRlcik9XCJzZWxlY3RUb2tlbih0b2tlbik7ICRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCJcbiAgICAodG9rZW5Gb2N1cyk9XCJhY3RpdmVJbmRleCA9IGlcIlxuICA+XG4gICAge3sgdG9rZW4udmFsdWVbZGlzcGxheVdpdGhdIH19XG4gIDwvc2t5LXRva2VuPlxuICA8ZGl2IGNsYXNzPVwic2t5LXRva2Vucy1jb250ZW50XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
311
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy90b2tlbnMvdG9rZW5zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy90b2tlbnMvdG9rZW5zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFHTixZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBSXRELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7O0FBRW5FLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxDQUFDO0FBRXBDOzs7O0dBSUc7QUFrQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQThKN0IsWUFBWSxjQUFpQzs7UUEvRDdDOzs7V0FHRztRQUVJLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFdEQ7OztXQUdHO1FBRUkseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV2RDs7V0FFRztRQUVJLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFFckU7OztXQUdHO1FB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LE9BQU8sQ0FDTCxlQUFlLEVBQ2YsS0FBSyxDQUFDO29DQUNKLE9BQU8sRUFBRSxDQUFDO29DQUNWLEtBQUssRUFBRSxHQUFHO2lDQUNYLENBQUMsQ0FDSDs2QkFDRixDQUFDOzRCQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLE9BQU8sQ0FDTCxlQUFlLEVBQ2YsS0FBSyxDQUFDO29DQUNKLE9BQU8sRUFBRSxDQUFDO29DQUNWLEtBQUssRUFBRSxDQUFDO2lDQUNULENBQUMsQ0FDSDs2QkFDRixDQUFDO3lCQUNILENBQUM7cUJBQ0g7d0dBVVUsUUFBUTtzQkFEbEIsS0FBSztnQkFjSyxXQUFXO3NCQURyQixLQUFLO2dCQWNLLFdBQVc7c0JBRHJCLEtBQUs7Z0JBY0MsU0FBUztzQkFEZixLQUFLO2dCQVVLLFNBQVM7c0JBRG5CLEtBQUs7Z0JBYUssTUFBTTtzQkFEaEIsS0FBSztnQkFtQkssYUFBYTtzQkFEdkIsS0FBSztnQkFlQyxtQkFBbUI7c0JBRHpCLE1BQU07Z0JBUUEsb0JBQW9CO3NCQUQxQixNQUFNO2dCQU9BLGFBQWE7c0JBRG5CLE1BQU07Z0JBUUEsWUFBWTtzQkFEbEIsTUFBTTtnQkE4QkEsZUFBZTtzQkFEckIsWUFBWTt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFRyYWNrQnlGdW5jdGlvbixcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVRva2VuQ29tcG9uZW50IH0gZnJvbSAnLi90b2tlbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5VG9rZW4gfSBmcm9tICcuL3R5cGVzL3Rva2VuJztcbmltcG9ydCB7IFNreVRva2VuU2VsZWN0ZWRFdmVudEFyZ3MgfSBmcm9tICcuL3R5cGVzL3Rva2VuLXNlbGVjdGVkLWV2ZW50LWFyZ3MnO1xuaW1wb3J0IHsgU2t5VG9rZW5zTWVzc2FnZSB9IGZyb20gJy4vdHlwZXMvdG9rZW5zLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5VG9rZW5zTWVzc2FnZVR5cGUgfSBmcm9tICcuL3R5cGVzL3Rva2Vucy1tZXNzYWdlLXR5cGUnO1xuXG5jb25zdCBESVNQTEFZX1dJVEhfREVGQVVMVCA9ICduYW1lJztcblxuLyoqXG4gKiBDcmVhdGVzIGEgY29udGFpbmVyIHRoYXQgZW5hYmxlcyBuYXZpZ2F0aW9uIGJldHdlZW4gdG9rZW5zIHVzaW5nIGtleWJvYXJkIGFycm93IGtleXMuXG4gKiBUaGlzIGlzIHVzZWZ1bCB3aGVuIGNvbWJpbmVkIHdpdGggb3RoZXIgY29tcG9uZW50cyB3aGVyZSB0aGUgPGtiZD5UYWI8L2tiZD4ga2V5IGlzXG4gKiByZXNlcnZlZCBmb3Igb3RoZXIgZnVuY3Rpb25zLCBzdWNoIGFzIHRoZSBTS1kgVVggTG9va3VwIGNvbXBvbmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXRva2VucycsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2tlbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b2tlbnMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdibG9ja0FuaW1hdGlvbk9uTG9hZCcsIFt0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXSldKSxcbiAgICB0cmlnZ2VyKCdkaXNtaXNzJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICB3aWR0aDogMCxcbiAgICAgICAgfSksXG4gICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgJzE1MG1zIGVhc2UtaW4nLFxuICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDEsXG4gICAgICAgICAgICB3aWR0aDogJyonLFxuICAgICAgICAgIH0pXG4gICAgICAgICksXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAnMTUwbXMgZWFzZS1pbicsXG4gICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICAgIHdpZHRoOiAwLFxuICAgICAgICAgIH0pXG4gICAgICAgICksXG4gICAgICBdKSxcbiAgICBdKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5VG9rZW5zQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRvIGRpc2FibGUgdGhlIHRva2VucyBsaXN0IHRvIHByZXZlbnQgdXNlcnMgZnJvbSBzZWxlY3RpbmcgdG9rZW5zLFxuICAgKiBkaXNtaXNzaW5nIHRva2Vucywgb3IgbmF2aWdhdGluZyB0aHJvdWdoIHRoZSBsaXN0IHdpdGggdGhlIGFycm93IGtleXMuIFdoZW4gdGhlIHRva2VucyBsaXN0XG4gICAqIGlzIGRpc2FibGVkLCB1c2VycyBjYW4gc3RpbGwgcGxhY2UgZm9jdXMgb24gaXRlbXMgaW4gdGhlIGxpc3QgdXNpbmcgdGhlIGBUYWJgIGtleS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfZGlzYWJsZWQgPSAhIXZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy4jX2Rpc2FibGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHVzZXJzIGNhbiByZW1vdmUgYSB0b2tlbiBmcm9tIHRoZSBsaXN0IGJ5IHNlbGVjdGluZyBhIHRva2VuJ3MgY2xvc2UgYnV0dG9uLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc21pc3NpYmxlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rpc21pc3NpYmxlID0gdmFsdWUgIT09IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNtaXNzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy4jX2Rpc21pc3NpYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdG9rZW4gcHJvcGVydHkgdG8gZGlzcGxheSBmb3IgZWFjaCBpdGVtIGluIHRoZSB0b2tlbnMgbGlzdC5cbiAgICogQGRlZmF1bHQgXCJuYW1lXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzcGxheVdpdGgodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19kaXNwbGF5V2l0aCA9IHZhbHVlIHx8IERJU1BMQVlfV0lUSF9ERUZBVUxUO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5V2l0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfZGlzcGxheVdpdGg7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0b2tlbiBwcm9wZXJ0eSB0aGF0IHJlcHJlc2VudHMgdGhlIHRva2VuJ3MgdW5pcXVlIGlkZW50aWZpZXIuIFdoZW4gdGhpcyBwcm9wZXJ0eVxuICAgKiBpcyBzZXQsIGFuaW1hdGlvbnMgYXJlIGVuYWJsZWQgd2hlbiBkaXNtaXNzaW5nIHRva2Vucy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0cmFja1dpdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdXNlcnMgY2FuIGZvY3VzIG9uIGl0ZW1zIGluIHRoZSBsaXN0IHVzaW5nIHRoZSBgVGFiYCBrZXkuXG4gICAqIFRoaXMgZG9lcyBub3QgYWZmZWN0IHRoZSBhYmlsaXR5IG9mIHVzZXJzIHRvIHNlbGVjdCB0b2tlbnMsIGRpc21pc3MgdG9rZW5zLFxuICAgKiBvciBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSBsaXN0IHdpdGggdGhlIGFycm93IGtleXMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZm9jdXNhYmxlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2ZvY3VzYWJsZSA9IHZhbHVlICE9PSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfZm9jdXNhYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhbiBhcnJheSBvZiB0b2tlbnMgdG8gaW5jbHVkZSBpbiB0aGUgbGlzdC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdG9rZW5zKHZhbHVlOiBTa3lUb2tlbltdIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3Rva2VucyA9IHZhbHVlIHx8IFtdO1xuICAgIC8vIFRoZSBwcmV2aW91cyBiZWhhdmlvciB3YXMgdG8gc2V0IGB0aGlzLl90b2tlbnMgPSB2YWx1ZWAsIHRoZW4gZW1pdCBgdGhpcy5fdG9rZW5zYCxcbiAgICAvLyB3aGljaCB3b3VsZCBlbWl0IGB1bmRlZmluZWRgIGluc3RlYWQgb2YgYSBkZWZhdWx0IHZhbHVlIG9mIGBbXWAgcmV0dXJuZWQgYnkgdGhlXG4gICAgLy8gZ2V0IGFjY2Vzc29yIHdoZW4gc2V0IHRvIGB1bmRlZmluZWRgLiBFbWl0dGluZyBgdmFsdWVgIGluc3RlYWQgb2YgYHRoaXMuI190b2tlbnNPckRlZmF1bHRgXG4gICAgLy8gcHJlc2VydmVzIHRoYXQgYmVoYXZpb3IuXG4gICAgdGhpcy50b2tlbnNDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRva2VucygpOiBTa3lUb2tlbltdIHtcbiAgICByZXR1cm4gdGhpcy4jX3Rva2VucztcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYW4gb2JzZXJ2YWJsZSBvZiBgU2t5VG9rZW5zTWVzc2FnZWAgdGhhdCBjYW4gcGxhY2UgZm9jdXMgb24gYVxuICAgKiBwYXJ0aWN1bGFyIHRva2VuIG9yIHJlbW92ZSB0aGUgYWN0aXZlIHRva2VuIGZyb20gdGhlIGxpc3QuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IG1lc3NhZ2VTdHJlYW0odmFsdWU6IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfbWVzc2FnZVN0cmVhbSA9IHZhbHVlIHx8IG5ldyBTdWJqZWN0PFNreVRva2Vuc01lc3NhZ2U+KCk7XG4gICAgdGhpcy4jaW5pdE1lc3NhZ2VTdHJlYW0oKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbWVzc2FnZVN0cmVhbSgpOiBTdWJqZWN0PFNreVRva2Vuc01lc3NhZ2U+IHtcbiAgICByZXR1cm4gdGhpcy4jX21lc3NhZ2VTdHJlYW07XG4gIH1cblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSB0b2tlbnMgbGlzdCB3aXRoIHRoZSBgVGFiYCBrZXlcbiAgICogYW5kIGF0dGVtcHQgdG8gbW92ZSBwYXN0IHRoZSBmaW5hbCB0b2tlbiBpbiB0aGUgbGlzdC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZm9jdXNJbmRleE92ZXJSYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBuYXZpZ2F0ZSB0aHJvdWdoIHRoZSB0b2tlbnMgbGlzdCB3aXRoIHRoZSBgVGFiYCBrZXlcbiAgICogYW5kIGF0dGVtcHQgdG8gbW92ZSBiZWZvcmUgdGhlIGZpcnN0IHRva2VuIGluIHRoZSBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmb2N1c0luZGV4VW5kZXJSYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRmlyZXMgd2hlbiB1c2VycyBzZWxlY3QgYSB0b2tlbiBpbiB0aGUgbGlzdC4gVGhpcyBldmVudCBlbWl0cyB0aGUgc2VsZWN0ZWQgdG9rZW4uXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHRva2VuU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuU2VsZWN0ZWRFdmVudEFyZ3M+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdGhlIHRva2VucyBpbiB0aGUgbGlzdCBjaGFuZ2UuXG4gICAqIFRoaXMgZXZlbnQgZW1pdHMgYW4gYXJyYXkgb2YgdGhlIHRva2VucyBpbiB0aGUgdXBkYXRlZCBsaXN0LlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyB0b2tlbnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRva2VuW10+KCk7XG5cbiAgcHVibGljIGdldCBhY3RpdmVJbmRleCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLiNfYWN0aXZlSW5kZXg7XG4gIH1cblxuICBwdWJsaWMgc2V0IGFjdGl2ZUluZGV4KHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodmFsdWUgPj0gdGhpcy4jX3Rva2Vucy5sZW5ndGgpIHtcbiAgICAgIHZhbHVlID0gdGhpcy4jX3Rva2Vucy5sZW5ndGggLSAxO1xuICAgICAgdGhpcy5mb2N1c0luZGV4T3ZlclJhbmdlLmVtaXQoKTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICB2YWx1ZSA9IDA7XG4gICAgICB0aGlzLmZvY3VzSW5kZXhVbmRlclJhbmdlLmVtaXQoKTtcbiAgICB9XG5cbiAgICB0aGlzLiNfYWN0aXZlSW5kZXggPSB2YWx1ZSB8fCAwO1xuICB9XG5cbiAgcHVibGljIHRyYWNrVG9rZW5GbjogVHJhY2tCeUZ1bmN0aW9uPFNreVRva2VuPjtcblxuICAjX2Rpc2FibGVkID0gZmFsc2U7XG4gICNfZGlzbWlzc2libGUgPSB0cnVlO1xuICAjX2ZvY3VzYWJsZSA9IHRydWU7XG4gICNfdG9rZW5zOiBTa3lUb2tlbltdID0gW107XG4gICNfZGlzcGxheVdpdGggPSBESVNQTEFZX1dJVEhfREVGQVVMVDtcblxuICBAVmlld0NoaWxkcmVuKFNreVRva2VuQ29tcG9uZW50KVxuICBwdWJsaWMgdG9rZW5Db21wb25lbnRzOiBRdWVyeUxpc3Q8U2t5VG9rZW5Db21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gICNtZXNzYWdlU3RyZWFtU3ViOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgI19tZXNzYWdlU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5VG9rZW5zTWVzc2FnZT4oKTtcbiAgI2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZjtcblxuICAjX2FjdGl2ZUluZGV4ID0gMDtcblxuICBjb25zdHJ1Y3RvcihjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI2luaXRNZXNzYWdlU3RyZWFtKCk7XG5cbiAgICAvLyBBbmd1bGFyIGNhbGxzIHRoZSB0cmFja0J5IGZ1bmN0aW9uIHdpdGhvdXQgYXBwbHlpbmcgdGhlIGNvbXBvbmVudCBpbnN0YW5jZSdzIHNjb3BlLlxuICAgIC8vIFVzZSBhIGZhdC1hcnJvdyBmdW5jdGlvbiBzbyB0aGUgY3VycmVudCBjb21wb25lbnQgaW5zdGFuY2UncyB0cmFja1dpdGggcHJvcGVydHkgY2FuXG4gICAgLy8gYmUgcmVmZXJlbmNlZC5cbiAgICB0aGlzLnRyYWNrVG9rZW5GbiA9IChfaW5kZXgsIGl0ZW0pOiB1bmtub3duID0+IHtcbiAgICAgIGlmICh0aGlzLnRyYWNrV2l0aCkge1xuICAgICAgICByZXR1cm4gaXRlbS52YWx1ZVt0aGlzLnRyYWNrV2l0aF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpdGVtO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uVG9rZW5DbGljayh0b2tlbjogU2t5VG9rZW4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuI25vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW4pO1xuICB9XG5cbiAgcHVibGljIG9uVG9rZW5LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBzd2l0Y2ggKGV2ZW50LmtleSkge1xuICAgICAgICBjYXNlICdMZWZ0JzpcbiAgICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgICB0aGlzLiNfbWVzc2FnZVN0cmVhbS5uZXh0KHtcbiAgICAgICAgICAgIHR5cGU6IFNreVRva2Vuc01lc3NhZ2VUeXBlLkZvY3VzUHJldmlvdXNUb2tlbixcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ1JpZ2h0JzpcbiAgICAgICAgY2FzZSAnQXJyb3dSaWdodCc6XG4gICAgICAgICAgdGhpcy4jX21lc3NhZ2VTdHJlYW0ubmV4dCh7XG4gICAgICAgICAgICB0eXBlOiBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c05leHRUb2tlbixcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RUb2tlbih0b2tlbjogU2t5VG9rZW4pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuI25vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW4pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVUb2tlbih0b2tlbjogU2t5VG9rZW4pOiB2b2lkIHtcbiAgICB0aGlzLnRva2VucyA9IHRoaXMudG9rZW5zLmZpbHRlcigodCkgPT4gdCAhPT0gdG9rZW4pO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gICNmb2N1c1ByZXZpb3VzVG9rZW4oKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVJbmRleC0tO1xuICAgIHRoaXMuI2ZvY3VzQWN0aXZlVG9rZW4oKTtcbiAgfVxuXG4gICNmb2N1c05leHRUb2tlbigpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUluZGV4Kys7XG4gICAgdGhpcy4jZm9jdXNBY3RpdmVUb2tlbigpO1xuICB9XG5cbiAgI2ZvY3VzTGFzdFRva2VuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRva2VuQ29tcG9uZW50cykge1xuICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IHRoaXMudG9rZW5Db21wb25lbnRzLmxlbmd0aCAtIDE7XG4gICAgICB0aGlzLiNmb2N1c0FjdGl2ZVRva2VuKCk7XG4gICAgfVxuICB9XG5cbiAgI2ZvY3VzQWN0aXZlVG9rZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudG9rZW5Db21wb25lbnRzKSB7XG4gICAgICBjb25zdCB0b2tlbkNvbXBvbmVudCA9IHRoaXMudG9rZW5Db21wb25lbnRzLmZpbmQoXG4gICAgICAgIChfY29tcDogU2t5VG9rZW5Db21wb25lbnQsIGk6IG51bWJlcikgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmFjdGl2ZUluZGV4ID09PSBpO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICBpZiAodG9rZW5Db21wb25lbnQpIHtcbiAgICAgICAgdG9rZW5Db21wb25lbnQuZm9jdXNFbGVtZW50KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3JlbW92ZUFjdGl2ZVRva2VuKCk6IHZvaWQge1xuICAgIGNvbnN0IHRva2VuID0gdGhpcy50b2tlbnNbdGhpcy5hY3RpdmVJbmRleF07XG4gICAgaWYgKHRva2VuKSB7XG4gICAgICB0aGlzLnJlbW92ZVRva2VuKHRva2VuKTtcbiAgICB9XG4gIH1cblxuICAjaW5pdE1lc3NhZ2VTdHJlYW0oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIpIHtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICB0aGlzLiNtZXNzYWdlU3RyZWFtU3ViID0gdGhpcy5tZXNzYWdlU3RyZWFtXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lUb2tlbnNNZXNzYWdlKSA9PiB7XG4gICAgICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c0xhc3RUb2tlbjpcbiAgICAgICAgICAgIHRoaXMuI2ZvY3VzTGFzdFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuRm9jdXNBY3RpdmVUb2tlbjpcbiAgICAgICAgICAgIHRoaXMuI2ZvY3VzQWN0aXZlVG9rZW4oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c1ByZXZpb3VzVG9rZW46XG4gICAgICAgICAgICB0aGlzLiNmb2N1c1ByZXZpb3VzVG9rZW4oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSBTa3lUb2tlbnNNZXNzYWdlVHlwZS5Gb2N1c05leHRUb2tlbjpcbiAgICAgICAgICAgIHRoaXMuI2ZvY3VzTmV4dFRva2VuKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgU2t5VG9rZW5zTWVzc2FnZVR5cGUuUmVtb3ZlQWN0aXZlVG9rZW46XG4gICAgICAgICAgICB0aGlzLiNyZW1vdmVBY3RpdmVUb2tlbigpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgI25vdGlmeVRva2VuU2VsZWN0ZWQodG9rZW46IFNreVRva2VuKTogdm9pZCB7XG4gICAgdGhpcy50b2tlblNlbGVjdGVkLmVtaXQoe1xuICAgICAgdG9rZW4sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktdG9rZW5zXCJcbiAgW0BibG9ja0FuaW1hdGlvbk9uTG9hZF1cbiAgW2F0dHIucm9sZV09XCJ0b2tlbnMubGVuZ3RoID8gJ2dyaWQnIDogbnVsbFwiXG4+XG4gIDwhLS1cbiAgICAgIFRoZSByb2xlIG11c3QgdXNlIHNxdWFyZSBicmFja2V0cyBvdGhlcndpc2UgQW5ndWxhciBzZXRzIHRoZSBuYXRpdmUgJ3JvbGUnXG4gICAgICBhdHRyaWJ1dGUgYXMgd2VsbCBhcyB0aGUgaW5wdXQgYXR0cmlidXRlIG9mIHRoZSB0b2tlbiwgd2hpY2ggZmFpbHMgYWNjZXNzaWJpbGl0eSBydWxlcy5cbiAgICAtLT5cbiAgPHNreS10b2tlblxuICAgICpuZ0Zvcj1cImxldCB0b2tlbiBvZiB0b2tlbnM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRyYWNrVG9rZW5GblwiXG4gICAgW0AuZGlzYWJsZWRdPVwiIXRyYWNrV2l0aFwiXG4gICAgW0BkaXNtaXNzXVxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2Rpc21pc3NpYmxlXT1cImRpc21pc3NpYmxlXCJcbiAgICBbZm9jdXNhYmxlXT1cImZvY3VzYWJsZVwiXG4gICAgW3JvbGVdPVwiJ3JvdydcIlxuICAgIChkaXNtaXNzKT1cInJlbW92ZVRva2VuKHRva2VuKVwiXG4gICAgKGNsaWNrKT1cIm9uVG9rZW5DbGljayh0b2tlbilcIlxuICAgIChrZXlkb3duKT1cIm9uVG9rZW5LZXlEb3duKCRldmVudClcIlxuICAgIChrZXl1cC5lbnRlcik9XCJzZWxlY3RUb2tlbih0b2tlbik7ICRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCJcbiAgICAodG9rZW5Gb2N1cyk9XCJhY3RpdmVJbmRleCA9IGlcIlxuICA+XG4gICAge3sgdG9rZW4udmFsdWVbZGlzcGxheVdpdGhdIH19XG4gIDwvc2t5LXRva2VuPlxuICA8ZGl2IGNsYXNzPVwic2t5LXRva2Vucy1jb250ZW50XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1405,7 +1405,7 @@ _SkyTokensComponent__disabled = new WeakMap(), _SkyTokensComponent__dismissible
|
|
|
1405
1405
|
});
|
|
1406
1406
|
};
|
|
1407
1407
|
SkyTokensComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SkyTokensComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1408
|
-
SkyTokensComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyTokensComponent, selector: "sky-tokens", inputs: { disabled: "disabled", dismissible: "dismissible", displayWith: "displayWith", trackWith: "trackWith", focusable: "focusable", tokens: "tokens", messageStream: "messageStream" }, outputs: { focusIndexOverRange: "focusIndexOverRange", focusIndexUnderRange: "focusIndexUnderRange", tokenSelected: "tokenSelected", tokensChange: "tokensChange" }, viewQueries: [{ propertyName: "tokenComponents", predicate: SkyTokenComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n
|
|
1408
|
+
SkyTokensComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SkyTokensComponent, selector: "sky-tokens", inputs: { disabled: "disabled", dismissible: "dismissible", displayWith: "displayWith", trackWith: "trackWith", focusable: "focusable", tokens: "tokens", messageStream: "messageStream" }, outputs: { focusIndexOverRange: "focusIndexOverRange", focusIndexUnderRange: "focusIndexUnderRange", tokenSelected: "tokenSelected", tokensChange: "tokensChange" }, viewQueries: [{ propertyName: "tokenComponents", predicate: SkyTokenComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n <div class=\"sky-tokens-content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.sky-tokens{display:flex;flex-wrap:wrap;align-items:baseline;margin:-2px}.sky-tokens .sky-tokens-content,.sky-tokens ::ng-deep sky-token{flex:0 0 auto;display:inline-flex;padding:2px}.sky-tokens .sky-tokens-content{flex-grow:1;flex-basis:0px}.sky-tokens .sky-tokens-content:before{content:\"\\200b\"}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SkyTokenComponent, selector: "sky-token", inputs: ["disabled", "ariaLabel", "dismissible", "focusable", "role"], outputs: ["dismiss", "tokenFocus"] }], animations: [
|
|
1409
1409
|
trigger('blockAnimationOnLoad', [transition(':enter', [])]),
|
|
1410
1410
|
trigger('dismiss', [
|
|
1411
1411
|
transition(':enter', [
|
|
@@ -1448,7 +1448,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
1448
1448
|
})),
|
|
1449
1449
|
]),
|
|
1450
1450
|
]),
|
|
1451
|
-
], template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n
|
|
1451
|
+
], template: "<div\n class=\"sky-tokens\"\n [@blockAnimationOnLoad]\n [attr.role]=\"tokens.length ? 'grid' : null\"\n>\n <!--\n The role must use square brackets otherwise Angular sets the native 'role'\n attribute as well as the input attribute of the token, which fails accessibility rules.\n -->\n <sky-token\n *ngFor=\"let token of tokens; let i = index; trackBy: trackTokenFn\"\n [@.disabled]=\"!trackWith\"\n [@dismiss]\n [disabled]=\"disabled\"\n [dismissible]=\"dismissible\"\n [focusable]=\"focusable\"\n [role]=\"'row'\"\n (dismiss)=\"removeToken(token)\"\n (click)=\"onTokenClick(token)\"\n (keydown)=\"onTokenKeyDown($event)\"\n (keyup.enter)=\"selectToken(token); $event.preventDefault()\"\n (tokenFocus)=\"activeIndex = i\"\n >\n {{ token.value[displayWith] }}\n </sky-token>\n <div class=\"sky-tokens-content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.sky-tokens{display:flex;flex-wrap:wrap;align-items:baseline;margin:-2px}.sky-tokens .sky-tokens-content,.sky-tokens ::ng-deep sky-token{flex:0 0 auto;display:inline-flex;padding:2px}.sky-tokens .sky-tokens-content{flex-grow:1;flex-basis:0px}.sky-tokens .sky-tokens-content:before{content:\"\\200b\"}\n"] }]
|
|
1452
1452
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { disabled: [{
|
|
1453
1453
|
type: Input
|
|
1454
1454
|
}], dismissible: [{
|