@alauda/ui 6.3.1-beta.5 → 6.3.1-beta.6

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.
@@ -336,4 +336,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
336
336
  type: ContentChildren,
337
337
  args: [OptionComponent, { descendants: true }]
338
338
  }] } });
339
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zZWxlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VsZWN0L2Jhc2Utc2VsZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxZQUFZLEVBQ1osZUFBZSxFQUNmLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0UsT0FBTyxFQUNMLEdBQUcsRUFDSCxhQUFhLEVBQ2IsUUFBUSxFQUNSLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxHQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixhQUFhLEVBQ2IsY0FBYyxHQUNmLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFJNUQsbURBQW1EO0FBQ25ELE1BQU0sT0FBZ0IsVUFDcEIsU0FBUSxpQkFBb0I7SUFIOUI7O1FBcUNFLGFBQVEsR0FBc0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFHeEQsWUFBTyxHQUFlLElBQUksQ0FBQyxRQUFRLENBQUM7UUEwQ3BDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFHaEIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFHakIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBRzFCLFNBQUksR0FBRyxJ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IEFmdGVyVmlld0luaXQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgY29tYmluZUxhdGVzdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIG1hcCxcbiAgcHVibGlzaFJlcGxheSxcbiAgcmVmQ291bnQsXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQ29tbW9uRm9ybUNvbnRyb2wgfSBmcm9tICcuLi9mb3JtL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uL3Rvb2x0aXAvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBDb21wb25lbnRTaXplIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHtcbiAgY29lcmNlQXR0ckJvb2xlYW4sXG4gIGNvZXJjZVN0cmluZyxcbiAgaXNUZW1wbGF0ZVJlZixcbiAgc2Nyb2xsSW50b1ZpZXcsXG59IGZyb20gJy4uL3V0aWxzJztcblxuaW1wb3J0IHsgT3B0aW9uQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4vaGVscGVyLWRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgT3B0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9vcHRpb24vb3B0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPcHRpb25GaWx0ZXJGbiwgU2VsZWN0RmlsdGVyT3B0aW9uLCBUcmFja0ZuIH0gZnJvbSAnLi9zZWxlY3QudHlwZXMnO1xuXG5ARGlyZWN0aXZlKClcbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogZGlyZWN0aXZlLWNsYXNzLXN1ZmZpeFxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VTZWxlY3Q8VCwgViA9IFQ+XG4gIGV4dGVuZHMgQ29tbW9uRm9ybUNvbnRyb2w8Vj5cbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZTtcbiAgfVxuXG4gIHNldCBzaXplKHZhbCkge1xuICAgIGlmICghdmFsIHx8IHRoaXMuX3NpemUgPT09IHZhbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9zaXplID0gdmFsO1xuICAgIHRoaXMuc2l6ZSQkLm5leHQodmFsKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBmaWx0ZXJhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJhYmxlO1xuICB9XG5cbiAgc2V0IGZpbHRlcmFibGUodmFsOiBib29sZWFuIHwgJycpIHtcbiAgICB0aGlzLl9maWx0ZXJhYmxlID0gY29lcmNlQXR0ckJvb2xlYW4odmFsKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBjbGVhcmFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NsZWFyYWJsZTtcbiAgfVxuXG4gIHNldCBjbGVhcmFibGUodmFsOiBib29sZWFuIHwgJycpIHtcbiAgICB0aGlzLl9jbGVhcmFibGUgPSBjb2VyY2VBdHRyQm9vbGVhbih2YWwpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZmlsdGVyRm46IE9wdGlvbkZpbHRlckZuPFQ+ID0gdGhpcy5fZmlsdGVyRm4uYmluZCh0aGlzKTtcblxuICBASW5wdXQoKVxuICB0cmFja0ZuOiBUcmFja0ZuPFQ+ID0gdGhpcy5fdHJhY2tGbjtcblxuICBASW5wdXQoKVxuICBsYWJlbEZuPzogKHZhbHVlOiBUKSA9PiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgZ2V0IGFsbG93Q3JlYXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9hbGxvd0NyZWF0ZTtcbiAgfVxuXG4gIHNldCBhbGxvd0NyZWF0ZSh2YWw6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2FsbG93Q3JlYXRlID0gY29lcmNlQXR0ckJvb2xlYW4odmFsKTtcbiAgfVxuXG4gIGdldCBhbGxPcHRpb25zKCkge1xuICAgIHJldHVybiBbXG4gICAgICAuLi4odGhpcy5jdXN0b21PcHRpb25zID8gdGhpcy5jdXN0b21PcHRpb25zLnRvQXJyYXkoKSA6IFtdKSxcbiAgICAgIC4uLih0aGlzLmNvbnRlbnRPcHRpb25zID8gdGhpcy5jb250ZW50T3B0aW9ucy50b0FycmF5KCkgOiBbXSksXG4gICAgXTtcbiAgfVxuXG4gIGdldCBvcGVuZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9vbHRpcFJlZi5pc0NyZWF0ZWQ7XG4gIH1cblxuICBnZXQgaW5wdXRSZWFkb25seSgpIHtcbiAgICByZXR1cm4gISh0aGlzLmZpbHRlcmFibGUgJiYgdGhpcy5vcGVuZWQpO1xuICB9XG5cbiAgZ2V0IGZpbHRlclN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmlsdGVyU3RyaW5nO1xuICB9XG5cbiAgc2V0IGZpbHRlclN0cmluZyh2YWwpIHtcbiAgICBpZiAodmFsICE9PSB0aGlzLl9maWx0ZXJTdHJpbmcpIHtcbiAgICAgIHRoaXMuX2ZpbHRlclN0cmluZyA9IHZhbDtcbiAgICAgIHRoaXMuZmlsdGVyU3RyaW5nJCQubmV4dCh2YWwpO1xuICAgICAgdGhpcy5maWx0ZXJDaGFuZ2UuZW1pdCh2YWwpO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGxvYWRpbmcgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlciA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGRlZmF1bHRGaXJzdE9wdGlvbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgbGF6eSA9IHRydWU7XG5cbiAgQE91dHB1dCgpXG4gIGZpbHRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBPdXRwdXQoKVxuICBzaG93ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBoaWRlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdFJlZicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByb3RlY3RlZCBzZWxlY3RSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXBSZWYnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwcm90ZWN0ZWQgdG9vbHRpcFJlZjogVG9vbHRpcERpcmVjdGl2ZTtcblxuICBAVmlld0NoaWxkKCdvcHRpb25MaXN0UmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHByb3RlY3RlZCBvcHRpb25MaXN0UmVmOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0dGluZ09wdGlvbicsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBwcm90ZWN0ZWQgaW5wdXR0aW5nT3B0aW9uOiBPcHRpb25Db21wb25lbnQ8VD47XG5cbiAgQENvbnRlbnRDaGlsZChPcHRpb25Db250ZW50RGlyZWN0aXZlKVxuICBwcm90ZWN0ZWQgb3B0aW9uQ29udGVudD86IE9wdGlvbkNvbnRlbnREaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZHJlbihPcHRpb25Db21wb25lbnQpXG4gIGN1c3RvbU9wdGlvbnM6IFF1ZXJ5TGlzdDxPcHRpb25Db21wb25lbnQ8VD4+O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oT3B0aW9uQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGNvbnRlbnRPcHRpb25zOiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PjtcblxuICBpc1RlbXBsYXRlUmVmID0gaXNUZW1wbGF0ZVJlZjtcbiAgaXNNdWx0aSA9IGZhbHNlXG5cbiAgLyoqXG4gICAqIFV0aWxpdHkgZmllbGQgdG8gbWFrZSBzdXJlIHRoZSB1c2VycyBhbHdheXMgc2VlIHRoZSB2YWx1ZSBhcyB0eXBlIGFycmF5XG4gICAqL1xuICBhYnN0cmFjdCByZWFkb25seSB2YWx1ZXMkOiBPYnNlcnZhYmxlPFRbXT47XG5cbiAgYWxsT3B0aW9ucyQ6IE9ic2VydmFibGU8QXJyYXk8T3B0aW9uQ29tcG9uZW50PFQ+Pj47XG5cbiAgcHJvdGVjdGVkIGZvY3VzZWRPcHRpb246IE9wdGlvbkNvbXBvbmVudDxUPjtcblxuICBwcml2YXRlIF9zaXplOiBDb21wb25lbnRTaXplID0gQ29tcG9uZW50U2l6ZS5NZWRpdW07XG4gIHByaXZhdGUgX2ZpbHRlcmFibGUgPSB0cnVlO1xuICBwcml2YXRlIF9jbGVhcmFibGUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfYWxsb3dDcmVhdGUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfZmlsdGVyU3RyaW5nID0gJyc7XG5cbiAgcHJvdGVjdGVkIGRlc3Ryb3kkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByb3RlY3RlZCBzaXplJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENvbXBvbmVudFNpemU+KHRoaXMuc2l6ZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsdGVyU3RyaW5nJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oXG4gICAgdGhpcy5maWx0ZXJTdHJpbmcsXG4gICk7XG5cbiAgc2l6ZSQgPSB0aGlzLnNpemUkJC5hc09ic2VydmFibGUoKTtcbiAgZmlsdGVyU3RyaW5nJCA9IHRoaXMuZmlsdGVyU3RyaW5nJCQuYXNPYnNlcnZhYmxlKCk7XG4gIGhhc1Zpc2libGVPcHRpb24kOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBoYXNNYXRjaGVkT3B0aW9uJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgY3VzdG9tQ3JlYXRlZE9wdGlvbnMkOiBPYnNlcnZhYmxlPEFycmF5PFNlbGVjdEZpbHRlck9wdGlvbjxUPj4+O1xuICBjb250YWluZXJXaWR0aDogc3RyaW5nO1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLmN1c3RvbUNyZWF0ZWRPcHRpb25zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy52YWx1ZXMkLFxuICAgICAgdGhpcy5jb250ZW50T3B0aW9ucy5jaGFuZ2VzLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCh0aGlzLmNvbnRlbnRPcHRpb25zKSxcbiAgICAgICAgc3dpdGNoTWFwKChvcHRpb25zOiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PikgPT5cbiAgICAgICAgICBvcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gY29tYmluZUxhdGVzdChvcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnZhbHVlJCkpXG4gICAgICAgICAgICA6IG9mKFtdIGFzIFRbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFt2YWx1ZXMsIG9wdGlvblZhbHVlc10pID0+XG4gICAgICAgIHZhbHVlcy5yZWR1Y2U8QXJyYXk8U2VsZWN0RmlsdGVyT3B0aW9uPFQ+Pj4oKGFjYywgdmFsdWUpID0+IHtcbiAgICAgICAgICBjb25zdCBpbmNsdWRlZCA9IG9wdGlvblZhbHVlc1xuICAgICAgICAgICAgLm1hcCh2YWx1ZSA9PiB0aGlzLnRyYWNrRm4odmFsdWUpKVxuICAgICAgICAgICAgLmluY2x1ZGVzKHRoaXMudHJhY2tGbih2YWx1ZSkpO1xuICAgICAgICAgIGlmICghaW5jbHVkZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsID1cbiAgICAgICAgICAgICAgdGhpcy5sYWJlbEZuPy4odmFsdWUpIHx8IGNvZXJjZVN0cmluZyh0aGlzLnRyYWNrRm4odmFsdWUpKTtcbiAgICAgICAgICAgIGlmIChsYWJlbCkge1xuICAgICAgICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCBbXSksXG4gICAgICApLFxuICAgICAgcHVibGlzaFJlcGxheSgxKSxcbiAgICAgIHJlZkNvdW50KCksXG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmFsbE9wdGlvbnMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmN1c3RvbU9wdGlvbnMuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLmN1c3RvbU9wdGlvbnMpKSxcbiAgICAgIHRoaXMuY29udGVudE9wdGlvbnMuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLmNvbnRlbnRPcHRpb25zKSksXG4gICAgXSkucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKFtjdXN0b21PcHRpb25zLCBjb250ZW50T3B0aW9uc106IFtcbiAgICAgICAgICBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PixcbiAgICAgICAgICBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PixcbiAgICAgICAgXSkgPT4gWy4uLmN1c3RvbU9wdGlvbnMudG9BcnJheSgpLCAuLi5jb250ZW50T3B0aW9ucy50b0FycmF5KCldLFxuICAgICAgKSxcbiAgICAgIHB1Ymxpc2hSZXBsYXkoMSksXG4gICAgICByZWZDb3VudCgpLFxuICAgICk7XG5cbiAgICAvLyBzdXBwb3J0IGR5bmFtaWMgb3B0aW9ucyBsb2FkaW5nIG9uIGZpbHRlcmluZ1xuICAgIHRoaXMuYWxsT3B0aW9ucyQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMub3BlbmVkKSB7XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5hdXRvRm9jdXNGaXJzdE9wdGlvbigpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuaGFzTWF0Y2hlZE9wdGlvbiQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuYWxsT3B0aW9ucyQucGlwZShcbiAgICAgICAgbWFwKGN1c3RvbU9wdGlvbnMgPT5cbiAgICAgICAgICBjdXN0b21PcHRpb25zLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uICE9PSB0aGlzLmlucHV0dGluZ09wdGlvbiksXG4gICAgICAgICksXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBzb25hcmpzL25vLWlkZW50aWNhbC1mdW5jdGlvbnNcbiAgICAgICAgc3dpdGNoTWFwKG9wdGlvbnMgPT5cbiAgICAgICAgICBvcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gY29tYmluZUxhdGVzdChvcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnZhbHVlJCkpXG4gICAgICAgICAgICA6IG9mKFtdIGFzIFRbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgdGhpcy5maWx0ZXJTdHJpbmckLFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFt2YWx1ZXMsIGZpbHRlclN0cmluZ10pID0+XG4gICAgICAgIHZhbHVlcy5zb21lKHZhbHVlID0+IHRoaXMudHJhY2tGbih2YWx1ZSkgPT09IGZpbHRlclN0cmluZyksXG4gICAgICApLFxuICAgICAgcHVibGlzaFJlcGxheSgxKSxcbiAgICAgIHJlZkNvdW50KCksXG4gICAgKTtcblxuICAgIHRoaXMuaGFzVmlzaWJsZU9wdGlvbiQgPSB0aGlzLmNvbnRlbnRPcHRpb25zLmNoYW5nZXMucGlwZShcbiAgICAgIHN0YXJ0V2l0aCh0aGlzLmNvbnRlbnRPcHRpb25zKSxcbiAgICAgIHN3aXRjaE1hcCgob3B0aW9uczogUXVlcnlMaXN0PE9wdGlvbkNvbXBvbmVudDxUPj4pID0+XG4gICAgICAgIG9wdGlvbnMubGVuZ3RoID4gMFxuICAgICAgICAgID8gY29tYmluZUxhdGVzdChvcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnZpc2libGUkKSlcbiAgICAgICAgICA6IG9mKFtdIGFzIGJvb2xlYW5bXSksXG4gICAgICApLFxuICAgICAgbWFwKHZpc2libGUgPT4gdmlzaWJsZS5zb21lKHZhbHVlID0+IHZhbHVlKSksXG4gICAgICBwdWJsaXNoUmVwbGF5KDEpLFxuICAgICAgcmVmQ291bnQoKSxcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5vcHRpb25Db250ZW50Py5kZXRhY2goKTtcbiAgICB0aGlzLmRlc3Ryb3kkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIG9wZW5PcHRpb24oKSB7XG4gICAgdGhpcy50b29sdGlwUmVmLmNyZWF0ZVRvb2x0aXAoKTtcbiAgfVxuXG4gIGNsb3NlT3B0aW9uKCkge1xuICAgIHRoaXMudG9vbHRpcFJlZi5kaXNwb3NlVG9vbHRpcCgpO1xuICB9XG5cbiAgb25TaG93T3B0aW9ucygpIHtcbiAgICBjb25zdCBleGVjID0gKCkgPT4ge1xuICAgICAgdGhpcy5jb250YWluZXJXaWR0aCA9IHRoaXMuc2VsZWN0UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggKyAncHgnO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLmF1dG9Gb2N1c0ZpcnN0T3B0aW9uKCk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5zaG93LmVtaXQoKTtcbiAgICB9O1xuXG4gICAgaWYgKHRoaXMub3B0aW9uQ29udGVudCkge1xuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgdGhpcy5vcHRpb25Db250ZW50LmF0dGFjaCgpO1xuICAgICAgICBleGVjKCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXhlYygpO1xuICAgIH1cbiAgfVxuXG4gIG9uSGlkZU9wdGlvbnMoKSB7XG4gICAgaWYgKHRoaXMub25Ub3VjaGVkKSB7XG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMubGF6eSkge1xuICAgICAgdGhpcy5vcHRpb25Db250ZW50Py5kZXRhY2goKTtcbiAgICB9XG4gICAgdGhpcy5yZXNldEZvY3VzZWRPcHRpb24oKTtcbiAgICB0aGlzLmZpbHRlclN0cmluZyA9ICcnO1xuICAgIHRoaXMuaGlkZS5lbWl0KCk7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IHZhbHVlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcbiAgICB0aGlzLmZpbHRlclN0cmluZyA9IHZhbHVlO1xuXG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMuYXV0b0ZvY3VzRmlyc3RPcHRpb24oKTtcbiAgICB9KTtcblxuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICAgIHRoaXMuZm9jdXNPcHRpb25EaXIoJ2Rvd24nKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICAgIHRoaXMuZm9jdXNPcHRpb25EaXIoJ3VwJyk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgICAgdGhpcy5zZWxlY3RGb2N1c2VkT3B0aW9uKCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICAgIHRoaXMuZXNjU2VsZWN0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBvbk9wdGlvbkNsaWNrKG9wdGlvbjogT3B0aW9uQ29tcG9uZW50PFQ+KSB7XG4gICAgdGhpcy5yZXNldEZvY3VzZWRPcHRpb24ob3B0aW9uKTtcbiAgICB0aGlzLnNlbGVjdE9wdGlvbihvcHRpb24pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGF1dG9Gb2N1c0ZpcnN0T3B0aW9uKCkge1xuICAgIGlmICh0aGlzLmRlZmF1bHRGaXJzdE9wdGlvbiAmJiB0aGlzLmFsbG93Q3JlYXRlICYmIHRoaXMuZmlsdGVyU3RyaW5nKSB7XG4gICAgICBjb25zdCBtYXRjaGVkT3B0aW9uID0gdGhpcy5jb250ZW50T3B0aW9ucy5maW5kKFxuICAgICAgICBvcHRpb24gPT4gdGhpcy50cmFja0ZuKG9wdGlvbi52YWx1ZSkgPT09IHRoaXMuZmlsdGVyU3RyaW5nLFxuICAgICAgKTtcbiAgICAgIHRoaXMucmVzZXRGb2N1c2VkT3B0aW9uKG1hdGNoZWRPcHRpb24gfHwgdGhpcy5jdXN0b21PcHRpb25zLmZpcnN0KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IHRoaXMuYWxsT3B0aW9ucy5maW5kKFxuICAgICAgb3B0aW9uID0+IG9wdGlvbi5zZWxlY3RlZCAmJiBvcHRpb24udmlzaWJsZSxcbiAgICApO1xuICAgIGlmICh0aGlzLmRlZmF1bHRGaXJzdE9wdGlvbikge1xuICAgICAgdGhpcy5yZXNldEZvY3VzZWRPcHRpb24oXG4gICAgICAgIHNlbGVjdGVkT3B0aW9uIHx8XG4gICAgICAgICAgdGhpcy5hbGxPcHRpb25zLmZpbmQob3B0aW9uID0+IG9wdGlvbi52aXNpYmxlICYmICFvcHRpb24uZGlzYWJsZWQpLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKHNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICB0aGlzLnNjcm9sbFRvT3B0aW9uKHNlbGVjdGVkT3B0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgZm9jdXNPcHRpb25EaXIoZGlyOiAnZG93bicgfCAndXAnKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5lZCkge1xuICAgICAgdGhpcy5vcGVuT3B0aW9uKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHZpc2libGVPcHRpb25zID0gdGhpcy5hbGxPcHRpb25zLmZpbHRlcihcbiAgICAgIG9wdGlvbiA9PiBvcHRpb24udmlzaWJsZSAmJiAhb3B0aW9uLmRpc2FibGVkLFxuICAgICk7XG4gICAgaWYgKHZpc2libGVPcHRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBzdGVwID0gZGlyID09PSAnZG93bicgPyAxIDogLTE7XG4gICAgbGV0IGkgPSB2aXNpYmxlT3B0aW9ucy5pbmRleE9mKHRoaXMuZm9jdXNlZE9wdGlvbik7XG4gICAgaSA9IGkgKyBzdGVwO1xuICAgIGlmIChpID49IHZpc2libGVPcHRpb25zLmxlbmd0aCkge1xuICAgICAgaSA9IDA7XG4gICAgfSBlbHNlIGlmIChpIDwgMCkge1xuICAgICAgaSA9IHZpc2libGVPcHRpb25zLmxlbmd0aCAtIDE7XG4gICAgfVxuICAgIHRoaXMucmVzZXRGb2N1c2VkT3B0aW9uKHZpc2libGVPcHRpb25zW2ldKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZXNldEZvY3VzZWRPcHRpb24oZm9jdXNlZE9wdGlvbj86IE9wdGlvbkNvbXBvbmVudDxUPikge1xuICAgIGlmICh0aGlzLmZvY3VzZWRPcHRpb24gPT09IGZvY3VzZWRPcHRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5mb2N1c2VkT3B0aW9uKSB7XG4gICAgICB0aGlzLmZvY3VzZWRPcHRpb24uYmx1cigpO1xuICAgIH1cblxuICAgIHRoaXMuZm9jdXNlZE9wdGlvbiA9IGZvY3VzZWRPcHRpb247XG5cbiAgICBpZiAodGhpcy5mb2N1c2VkT3B0aW9uKSB7XG4gICAgICB0aGlzLmZvY3VzZWRPcHRpb24uZm9jdXMoKTtcbiAgICAgIHRoaXMuc2Nyb2xsVG9PcHRpb24odGhpcy5mb2N1c2VkT3B0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2Nyb2xsVG9PcHRpb24ob3B0aW9uOiBPcHRpb25Db21wb25lbnQ8VD4pIHtcbiAgICBpZiAodGhpcy5vcHRpb25MaXN0UmVmKSB7XG4gICAgICBzY3JvbGxJbnRvVmlldyhcbiAgICAgICAgdGhpcy5vcHRpb25MaXN0UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgIG9wdGlvbi5lbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VsZWN0Rm9jdXNlZE9wdGlvbigpIHtcbiAgICBpZiAoIXRoaXMub3BlbmVkKSB7XG4gICAgICB0aGlzLm9wZW5PcHRpb24oKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMuZm9jdXNlZE9wdGlvbikge1xuICAgICAgdGhpcy5zZWxlY3RPcHRpb24odGhpcy5mb2N1c2VkT3B0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgZXNjU2VsZWN0KCkge1xuICAgIHRoaXMuY2xvc2VPcHRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgX3RyYWNrRm48VD4odmFsdWU6IFQpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIF9maWx0ZXJGbihcbiAgICBmaWx0ZXJTdHJpbmc6IHN0cmluZyxcbiAgICB7IGxhYmVsLCB2YWx1ZSB9OiBTZWxlY3RGaWx0ZXJPcHRpb248VD4sXG4gICkge1xuICAgIHJldHVybiAoXG4gICAgICAodHlwZW9mIGxhYmVsID09PSAnc3RyaW5nJyAmJiBsYWJlbCkgfHxcbiAgICAgIHRoaXMubGFiZWxGbj8uKHZhbHVlKSB8fFxuICAgICAgY29lcmNlU3RyaW5nKHRoaXMudHJhY2tGbih2YWx1ZSkpXG4gICAgKVxuICAgICAgPy50b0xvd2VyQ2FzZSgpXG4gICAgICAuaW5jbHVkZXMoZmlsdGVyU3RyaW5nPy50b0xvd2VyQ2FzZSgpID8/ICcnKTtcbiAgfVxuXG4gIGFic3RyYWN0IHNlbGVjdE9wdGlvbihvcHRpb246IE9wdGlvbkNvbXBvbmVudDxUPik6IHZvaWQ7XG4gIGFic3RyYWN0IGNsZWFyVmFsdWUoZXZlbnQ6IEV2ZW50KTogdm9pZDtcbn1cbiJdfQ==
339
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zZWxlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VsZWN0L2Jhc2Utc2VsZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxZQUFZLEVBQ1osZUFBZSxFQUNmLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0UsT0FBTyxFQUNMLEdBQUcsRUFDSCxhQUFhLEVBQ2IsUUFBUSxFQUNSLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxHQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixhQUFhLEVBQ2IsY0FBYyxHQUNmLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFJNUQsbURBQW1EO0FBQ25ELE1BQU0sT0FBZ0IsVUFDcEIsU0FBUSxpQkFBb0I7SUFIOUI7O1FBc0NFLGFBQVEsR0FBc0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFHeEQsWUFBTyxHQUFlLElBQUksQ0FBQyxRQUFRLENBQUM7UUEwQ3BDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFHaEIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFHakIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBRzFCLFNBQUksR0FBRyxJ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ICBBZnRlclZpZXdJbml0LFxuICBDb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBtYXAsXG4gIHB1Ymxpc2hSZXBsYXksXG4gIHJlZkNvdW50LFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vZm9ybS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi90b29sdGlwL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQ29tcG9uZW50U2l6ZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7XG4gIGNvZXJjZUF0dHJCb29sZWFuLFxuICBjb2VyY2VTdHJpbmcsXG4gIGlzVGVtcGxhdGVSZWYsXG4gIHNjcm9sbEludG9WaWV3LFxufSBmcm9tICcuLi91dGlscyc7XG5cbmltcG9ydCB7IE9wdGlvbkNvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2hlbHBlci1kaXJlY3RpdmVzJztcbmltcG9ydCB7IE9wdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vb3B0aW9uL29wdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3B0aW9uRmlsdGVyRm4sIFNlbGVjdEZpbHRlck9wdGlvbiwgVHJhY2tGbiB9IGZyb20gJy4vc2VsZWN0LnR5cGVzJztcblxuQERpcmVjdGl2ZSgpXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IGRpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlU2VsZWN0PFQsIFYgPSBUPlxuICBleHRlbmRzIENvbW1vbkZvcm1Db250cm9sPFY+XG4gIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIEBJbnB1dCgpXG4gIGdldCBzaXplKCkge1xuICAgIHJldHVybiB0aGlzLl9zaXplO1xuICB9XG5cbiAgc2V0IHNpemUodmFsKSB7XG4gICAgaWYgKCF2YWwgfHwgdGhpcy5fc2l6ZSA9PT0gdmFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3NpemUgPSB2YWw7XG4gICAgdGhpcy5zaXplJCQubmV4dCh2YWwpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IGZpbHRlcmFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlcmFibGU7XG4gIH1cblxuICBzZXQgZmlsdGVyYWJsZSh2YWw6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2ZpbHRlcmFibGUgPSBjb2VyY2VBdHRyQm9vbGVhbih2YWwpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IGNsZWFyYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fY2xlYXJhYmxlO1xuICB9XG5cbiAgc2V0IGNsZWFyYWJsZSh2YWw6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2NsZWFyYWJsZSA9IGNvZXJjZUF0dHJCb29sZWFuKHZhbCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBmaWx0ZXJGbjogT3B0aW9uRmlsdGVyRm48VD4gPSB0aGlzLl9maWx0ZXJGbi5iaW5kKHRoaXMpO1xuXG4gIEBJbnB1dCgpXG4gIHRyYWNrRm46IFRyYWNrRm48VD4gPSB0aGlzLl90cmFja0ZuO1xuXG4gIEBJbnB1dCgpXG4gIGxhYmVsRm4/OiAodmFsdWU6IFQpID0+IHN0cmluZztcblxuICBASW5wdXQoKVxuICBnZXQgYWxsb3dDcmVhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FsbG93Q3JlYXRlO1xuICB9XG5cbiAgc2V0IGFsbG93Q3JlYXRlKHZhbDogYm9vbGVhbiB8ICcnKSB7XG4gICAgdGhpcy5fYWxsb3dDcmVhdGUgPSBjb2VyY2VBdHRyQm9vbGVhbih2YWwpO1xuICB9XG5cbiAgZ2V0IGFsbE9wdGlvbnMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLih0aGlzLmN1c3RvbU9wdGlvbnMgPyB0aGlzLmN1c3RvbU9wdGlvbnMudG9BcnJheSgpIDogW10pLFxuICAgICAgLi4uKHRoaXMuY29udGVudE9wdGlvbnMgPyB0aGlzLmNvbnRlbnRPcHRpb25zLnRvQXJyYXkoKSA6IFtdKSxcbiAgICBdO1xuICB9XG5cbiAgZ2V0IG9wZW5lZCgpIHtcbiAgICByZXR1cm4gdGhpcy50b29sdGlwUmVmLmlzQ3JlYXRlZDtcbiAgfVxuXG4gIGdldCBpbnB1dFJlYWRvbmx5KCkge1xuICAgIHJldHVybiAhKHRoaXMuZmlsdGVyYWJsZSAmJiB0aGlzLm9wZW5lZCk7XG4gIH1cblxuICBnZXQgZmlsdGVyU3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJTdHJpbmc7XG4gIH1cblxuICBzZXQgZmlsdGVyU3RyaW5nKHZhbCkge1xuICAgIGlmICh2YWwgIT09IHRoaXMuX2ZpbHRlclN0cmluZykge1xuICAgICAgdGhpcy5fZmlsdGVyU3RyaW5nID0gdmFsO1xuICAgICAgdGhpcy5maWx0ZXJTdHJpbmckJC5uZXh0KHZhbCk7XG4gICAgICB0aGlzLmZpbHRlckNoYW5nZS5lbWl0KHZhbCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgbG9hZGluZyA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHBsYWNlaG9sZGVyID0gJyc7XG5cbiAgQElucHV0KClcbiAgZGVmYXVsdEZpcnN0T3B0aW9uID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBsYXp5ID0gdHJ1ZTtcblxuICBAT3V0cHV0KClcbiAgZmlsdGVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHNob3cgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGhpZGUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgnc2VsZWN0UmVmJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHJvdGVjdGVkIHNlbGVjdFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgndG9vbHRpcFJlZicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByb3RlY3RlZCB0b29sdGlwUmVmOiBUb29sdGlwRGlyZWN0aXZlO1xuXG4gIEBWaWV3Q2hpbGQoJ29wdGlvbkxpc3RSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgcHJvdGVjdGVkIG9wdGlvbkxpc3RSZWY6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0dGluZ09wdGlvbicsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBwcm90ZWN0ZWQgaW5wdXR0aW5nT3B0aW9uOiBPcHRpb25Db21wb25lbnQ8VD47XG5cbiAgQENvbnRlbnRDaGlsZChPcHRpb25Db250ZW50RGlyZWN0aXZlKVxuICBwcm90ZWN0ZWQgb3B0aW9uQ29udGVudD86IE9wdGlvbkNvbnRlbnREaXJlY3RpdmU7XG5cbiAgQFZpZXdDaGlsZHJlbihPcHRpb25Db21wb25lbnQpXG4gIGN1c3RvbU9wdGlvbnM6IFF1ZXJ5TGlzdDxPcHRpb25Db21wb25lbnQ8VD4+O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oT3B0aW9uQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGNvbnRlbnRPcHRpb25zOiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PjtcblxuICBpc1RlbXBsYXRlUmVmID0gaXNUZW1wbGF0ZVJlZjtcbiAgaXNNdWx0aSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBVdGlsaXR5IGZpZWxkIHRvIG1ha2Ugc3VyZSB0aGUgdXNlcnMgYWx3YXlzIHNlZSB0aGUgdmFsdWUgYXMgdHlwZSBhcnJheVxuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgdmFsdWVzJDogT2JzZXJ2YWJsZTxUW10+O1xuXG4gIGFsbE9wdGlvbnMkOiBPYnNlcnZhYmxlPEFycmF5PE9wdGlvbkNvbXBvbmVudDxUPj4+O1xuXG4gIHByb3RlY3RlZCBmb2N1c2VkT3B0aW9uOiBPcHRpb25Db21wb25lbnQ8VD47XG5cbiAgcHJpdmF0ZSBfc2l6ZTogQ29tcG9uZW50U2l6ZSA9IENvbXBvbmVudFNpemUuTWVkaXVtO1xuICBwcml2YXRlIF9maWx0ZXJhYmxlID0gdHJ1ZTtcbiAgcHJpdmF0ZSBfY2xlYXJhYmxlID0gZmFsc2U7XG4gIHByaXZhdGUgX2FsbG93Q3JlYXRlID0gZmFsc2U7XG4gIHByaXZhdGUgX2ZpbHRlclN0cmluZyA9ICcnO1xuXG4gIHByb3RlY3RlZCBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcm90ZWN0ZWQgc2l6ZSQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb21wb25lbnRTaXplPih0aGlzLnNpemUpO1xuICBwcml2YXRlIHJlYWRvbmx5IGZpbHRlclN0cmluZyQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KFxuICAgIHRoaXMuZmlsdGVyU3RyaW5nLFxuICApO1xuXG4gIHNpemUkID0gdGhpcy5zaXplJCQuYXNPYnNlcnZhYmxlKCk7XG4gIGZpbHRlclN0cmluZyQgPSB0aGlzLmZpbHRlclN0cmluZyQkLmFzT2JzZXJ2YWJsZSgpO1xuICBoYXNWaXNpYmxlT3B0aW9uJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgaGFzTWF0Y2hlZE9wdGlvbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGN1c3RvbUNyZWF0ZWRPcHRpb25zJDogT2JzZXJ2YWJsZTxBcnJheTxTZWxlY3RGaWx0ZXJPcHRpb248VD4+PjtcbiAgY29udGFpbmVyV2lkdGg6IHN0cmluZztcblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5jdXN0b21DcmVhdGVkT3B0aW9ucyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMudmFsdWVzJCxcbiAgICAgIChcbiAgICAgICAgdGhpcy5jb250ZW50T3B0aW9ucy5jaGFuZ2VzIGFzIE9ic2VydmFibGU8UXVlcnlMaXN0PE9wdGlvbkNvbXBvbmVudDxUPj4+XG4gICAgICApLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCh0aGlzLmNvbnRlbnRPcHRpb25zKSxcbiAgICAgICAgc3dpdGNoTWFwKChvcHRpb25zOiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PikgPT5cbiAgICAgICAgICBvcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gY29tYmluZUxhdGVzdChvcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnZhbHVlJCkpXG4gICAgICAgICAgICA6IG9mKFtdIGFzIFRbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFt2YWx1ZXMsIG9wdGlvblZhbHVlc10pID0+XG4gICAgICAgIHZhbHVlcy5yZWR1Y2U8QXJyYXk8U2VsZWN0RmlsdGVyT3B0aW9uPFQ+Pj4oKGFjYywgdmFsdWUpID0+IHtcbiAgICAgICAgICBjb25zdCBpbmNsdWRlZCA9IG9wdGlvblZhbHVlc1xuICAgICAgICAgICAgLm1hcCh2YWx1ZSA9PiB0aGlzLnRyYWNrRm4odmFsdWUpKVxuICAgICAgICAgICAgLmluY2x1ZGVzKHRoaXMudHJhY2tGbih2YWx1ZSkpO1xuICAgICAgICAgIGlmICghaW5jbHVkZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsID1cbiAgICAgICAgICAgICAgdGhpcy5sYWJlbEZuPy4odmFsdWUpIHx8IGNvZXJjZVN0cmluZyh0aGlzLnRyYWNrRm4odmFsdWUpKTtcbiAgICAgICAgICAgIGlmIChsYWJlbCkge1xuICAgICAgICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCBbXSksXG4gICAgICApLFxuICAgICAgcHVibGlzaFJlcGxheSgxKSxcbiAgICAgIHJlZkNvdW50KCksXG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmFsbE9wdGlvbnMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmN1c3RvbU9wdGlvbnMuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLmN1c3RvbU9wdGlvbnMpKSxcbiAgICAgIHRoaXMuY29udGVudE9wdGlvbnMuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLmNvbnRlbnRPcHRpb25zKSksXG4gICAgXSkucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKFtjdXN0b21PcHRpb25zLCBjb250ZW50T3B0aW9uc106IFtcbiAgICAgICAgICBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PixcbiAgICAgICAgICBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PixcbiAgICAgICAgXSkgPT4gWy4uLmN1c3RvbU9wdGlvbnMudG9BcnJheSgpLCAuLi5jb250ZW50T3B0aW9ucy50b0FycmF5KCldLFxuICAgICAgKSxcbiAgICAgIHB1Ymxpc2hSZXBsYXkoMSksXG4gICAgICByZWZDb3VudCgpLFxuICAgICk7XG5cbiAgICAvLyBzdXBwb3J0IGR5bmFtaWMgb3B0aW9ucyBsb2FkaW5nIG9uIGZpbHRlcmluZ1xuICAgIHRoaXMuYWxsT3B0aW9ucyQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMub3BlbmVkKSB7XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5hdXRvRm9jdXNGaXJzdE9wdGlvbigpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuaGFzTWF0Y2hlZE9wdGlvbiQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuYWxsT3B0aW9ucyQucGlwZShcbiAgICAgICAgbWFwKGN1c3RvbU9wdGlvbnMgPT5cbiAgICAgICAgICBjdXN0b21PcHRpb25zLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uICE9PSB0aGlzLmlucHV0dGluZ09wdGlvbiksXG4gICAgICAgICksXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBzb25hcmpzL25vLWlkZW50aWNhbC1mdW5jdGlvbnNcbiAgICAgICAgc3dpdGNoTWFwKG9wdGlvbnMgPT5cbiAgICAgICAgICBvcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gY29tYmluZUxhdGVzdChvcHRpb25zLm1hcChvcHRpb24gPT4gb3B0aW9uLnZhbHVlJCkpXG4gICAgICAgICAgICA6IG9mKFtdIGFzIFRbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgdGhpcy5maWx0ZXJTdHJpbmckLFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFt2YWx1ZXMsIGZpbHRlclN0cmluZ10pID0+XG4gICAgICAgIHZhbHVlcy5zb21lKHZhbHVlID0+IHRoaXMudHJhY2tGbih2YWx1ZSkgPT09IGZpbHRlclN0cmluZyksXG4gICAgICApLFxuICAgICAgcHVibGlzaFJlcGxheSgxKSxcbiAgICAgIHJlZkNvdW50KCksXG4gICAgKTtcblxuICAgIHRoaXMuaGFzVmlzaWJsZU9wdGlvbiQgPSAoXG4gICAgICB0aGlzLmNvbnRlbnRPcHRpb25zLmNoYW5nZXMgYXMgT2JzZXJ2YWJsZTxRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+Pj5cbiAgICApLnBpcGUoXG4gICAgICBzdGFydFdpdGgodGhpcy5jb250ZW50T3B0aW9ucyksXG4gICAgICBzd2l0Y2hNYXAoKG9wdGlvbnM6IFF1ZXJ5TGlzdDxPcHRpb25Db21wb25lbnQ8VD4+KSA9PlxuICAgICAgICBvcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICA/IGNvbWJpbmVMYXRlc3Qob3B0aW9ucy5tYXAob3B0aW9uID0+IG9wdGlvbi52aXNpYmxlJCkpXG4gICAgICAgICAgOiBvZihbXSBhcyBib29sZWFuW10pLFxuICAgICAgKSxcbiAgICAgIG1hcCh2aXNpYmxlID0+IHZpc2libGUuc29tZSh2YWx1ZSA9PiB2YWx1ZSkpLFxuICAgICAgcHVibGlzaFJlcGxheSgxKSxcbiAgICAgIHJlZkNvdW50KCksXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub3B0aW9uQ29udGVudD8uZGV0YWNoKCk7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBvcGVuT3B0aW9uKCkge1xuICAgIHRoaXMudG9vbHRpcFJlZi5jcmVhdGVUb29sdGlwKCk7XG4gIH1cblxuICBjbG9zZU9wdGlvbigpIHtcbiAgICB0aGlzLnRvb2x0aXBSZWYuZGlzcG9zZVRvb2x0aXAoKTtcbiAgfVxuXG4gIG9uU2hvd09wdGlvbnMoKSB7XG4gICAgY29uc3QgZXhlYyA9ICgpID0+IHtcbiAgICAgIHRoaXMuY29udGFpbmVyV2lkdGggPSB0aGlzLnNlbGVjdFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoICsgJ3B4JztcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgdGhpcy5hdXRvRm9jdXNGaXJzdE9wdGlvbigpO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuc2hvdy5lbWl0KCk7XG4gICAgfTtcblxuICAgIGlmICh0aGlzLm9wdGlvbkNvbnRlbnQpIHtcbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIHRoaXMub3B0aW9uQ29udGVudC5hdHRhY2goKTtcbiAgICAgICAgZXhlYygpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGV4ZWMoKTtcbiAgICB9XG4gIH1cblxuICBvbkhpZGVPcHRpb25zKCkge1xuICAgIGlmICh0aGlzLm9uVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmxhenkpIHtcbiAgICAgIHRoaXMub3B0aW9uQ29udGVudD8uZGV0YWNoKCk7XG4gICAgfVxuICAgIHRoaXMucmVzZXRGb2N1c2VkT3B0aW9uKCk7XG4gICAgdGhpcy5maWx0ZXJTdHJpbmcgPSAnJztcbiAgICB0aGlzLmhpZGUuZW1pdCgpO1xuICB9XG5cbiAgb25JbnB1dChldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgdGhpcy5maWx0ZXJTdHJpbmcgPSB2YWx1ZTtcblxuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICB0aGlzLmF1dG9Gb2N1c0ZpcnN0T3B0aW9uKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICB0aGlzLmZvY3VzT3B0aW9uRGlyKCdkb3duJyk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICB0aGlzLmZvY3VzT3B0aW9uRGlyKCd1cCcpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgIHRoaXMuc2VsZWN0Rm9jdXNlZE9wdGlvbigpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdFc2NhcGUnOlxuICAgICAgICB0aGlzLmVzY1NlbGVjdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgb25PcHRpb25DbGljayhvcHRpb246IE9wdGlvbkNvbXBvbmVudDxUPikge1xuICAgIHRoaXMucmVzZXRGb2N1c2VkT3B0aW9uKG9wdGlvbik7XG4gICAgdGhpcy5zZWxlY3RPcHRpb24ob3B0aW9uKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhdXRvRm9jdXNGaXJzdE9wdGlvbigpIHtcbiAgICBpZiAodGhpcy5kZWZhdWx0Rmlyc3RPcHRpb24gJiYgdGhpcy5hbGxvd0NyZWF0ZSAmJiB0aGlzLmZpbHRlclN0cmluZykge1xuICAgICAgY29uc3QgbWF0Y2hlZE9wdGlvbiA9IHRoaXMuY29udGVudE9wdGlvbnMuZmluZChcbiAgICAgICAgb3B0aW9uID0+IHRoaXMudHJhY2tGbihvcHRpb24udmFsdWUpID09PSB0aGlzLmZpbHRlclN0cmluZyxcbiAgICAgICk7XG4gICAgICB0aGlzLnJlc2V0Rm9jdXNlZE9wdGlvbihtYXRjaGVkT3B0aW9uIHx8IHRoaXMuY3VzdG9tT3B0aW9ucy5maXJzdCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB0aGlzLmFsbE9wdGlvbnMuZmluZChcbiAgICAgIG9wdGlvbiA9PiBvcHRpb24uc2VsZWN0ZWQgJiYgb3B0aW9uLnZpc2libGUsXG4gICAgKTtcbiAgICBpZiAodGhpcy5kZWZhdWx0Rmlyc3RPcHRpb24pIHtcbiAgICAgIHRoaXMucmVzZXRGb2N1c2VkT3B0aW9uKFxuICAgICAgICBzZWxlY3RlZE9wdGlvbiB8fFxuICAgICAgICAgIHRoaXMuYWxsT3B0aW9ucy5maW5kKG9wdGlvbiA9PiBvcHRpb24udmlzaWJsZSAmJiAhb3B0aW9uLmRpc2FibGVkKSxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChzZWxlY3RlZE9wdGlvbikge1xuICAgICAgdGhpcy5zY3JvbGxUb09wdGlvbihzZWxlY3RlZE9wdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGZvY3VzT3B0aW9uRGlyKGRpcjogJ2Rvd24nIHwgJ3VwJykge1xuICAgIGlmICghdGhpcy5vcGVuZWQpIHtcbiAgICAgIHRoaXMub3Blbk9wdGlvbigpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2aXNpYmxlT3B0aW9ucyA9IHRoaXMuYWxsT3B0aW9ucy5maWx0ZXIoXG4gICAgICBvcHRpb24gPT4gb3B0aW9uLnZpc2libGUgJiYgIW9wdGlvbi5kaXNhYmxlZCxcbiAgICApO1xuICAgIGlmICh2aXNpYmxlT3B0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc3RlcCA9IGRpciA9PT0gJ2Rvd24nID8gMSA6IC0xO1xuICAgIGxldCBpID0gdmlzaWJsZU9wdGlvbnMuaW5kZXhPZih0aGlzLmZvY3VzZWRPcHRpb24pO1xuICAgIGkgPSBpICsgc3RlcDtcbiAgICBpZiAoaSA+PSB2aXNpYmxlT3B0aW9ucy5sZW5ndGgpIHtcbiAgICAgIGkgPSAwO1xuICAgIH0gZWxzZSBpZiAoaSA8IDApIHtcbiAgICAgIGkgPSB2aXNpYmxlT3B0aW9ucy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLnJlc2V0Rm9jdXNlZE9wdGlvbih2aXNpYmxlT3B0aW9uc1tpXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVzZXRGb2N1c2VkT3B0aW9uKGZvY3VzZWRPcHRpb24/OiBPcHRpb25Db21wb25lbnQ8VD4pIHtcbiAgICBpZiAodGhpcy5mb2N1c2VkT3B0aW9uID09PSBmb2N1c2VkT3B0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZm9jdXNlZE9wdGlvbikge1xuICAgICAgdGhpcy5mb2N1c2VkT3B0aW9uLmJsdXIoKTtcbiAgICB9XG5cbiAgICB0aGlzLmZvY3VzZWRPcHRpb24gPSBmb2N1c2VkT3B0aW9uO1xuXG4gICAgaWYgKHRoaXMuZm9jdXNlZE9wdGlvbikge1xuICAgICAgdGhpcy5mb2N1c2VkT3B0aW9uLmZvY3VzKCk7XG4gICAgICB0aGlzLnNjcm9sbFRvT3B0aW9uKHRoaXMuZm9jdXNlZE9wdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHNjcm9sbFRvT3B0aW9uKG9wdGlvbjogT3B0aW9uQ29tcG9uZW50PFQ+KSB7XG4gICAgaWYgKHRoaXMub3B0aW9uTGlzdFJlZikge1xuICAgICAgc2Nyb2xsSW50b1ZpZXcoXG4gICAgICAgIHRoaXMub3B0aW9uTGlzdFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICBvcHRpb24uZWxSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHNlbGVjdEZvY3VzZWRPcHRpb24oKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5lZCkge1xuICAgICAgdGhpcy5vcGVuT3B0aW9uKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0aGlzLmZvY3VzZWRPcHRpb24pIHtcbiAgICAgIHRoaXMuc2VsZWN0T3B0aW9uKHRoaXMuZm9jdXNlZE9wdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGVzY1NlbGVjdCgpIHtcbiAgICB0aGlzLmNsb3NlT3B0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIF90cmFja0ZuPFQ+KHZhbHVlOiBUKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmlsdGVyRm4oXG4gICAgZmlsdGVyU3RyaW5nOiBzdHJpbmcsXG4gICAgeyBsYWJlbCwgdmFsdWUgfTogU2VsZWN0RmlsdGVyT3B0aW9uPFQ+LFxuICApIHtcbiAgICByZXR1cm4gKFxuICAgICAgKHR5cGVvZiBsYWJlbCA9PT0gJ3N0cmluZycgJiYgbGFiZWwpIHx8XG4gICAgICB0aGlzLmxhYmVsRm4/Lih2YWx1ZSkgfHxcbiAgICAgIGNvZXJjZVN0cmluZyh0aGlzLnRyYWNrRm4odmFsdWUpKVxuICAgIClcbiAgICAgID8udG9Mb3dlckNhc2UoKVxuICAgICAgLmluY2x1ZGVzKGZpbHRlclN0cmluZz8udG9Mb3dlckNhc2UoKSA/PyAnJyk7XG4gIH1cblxuICBhYnN0cmFjdCBzZWxlY3RPcHRpb24ob3B0aW9uOiBPcHRpb25Db21wb25lbnQ8VD4pOiB2b2lkO1xuICBhYnN0cmFjdCBjbGVhclZhbHVlKGV2ZW50OiBFdmVudCk6IHZvaWQ7XG59XG4iXX0=
@@ -71,7 +71,17 @@ export class MultiSelectComponent extends BaseSelect {
71
71
  this.selectedOptions$ = combineLatest([
72
72
  this.value$,
73
73
  this.contentOptions.changes.pipe(startWith(this.contentOptions), switchMap((options) => options.length > 0
74
- ? combineLatest(options.map(option => combineLatest([
74
+ ? combineLatest([...options]
75
+ .sort((a, b) => {
76
+ if (a.selected && a.disabled) {
77
+ return -1;
78
+ }
79
+ if (b.selected && b.disabled) {
80
+ return 1;
81
+ }
82
+ return 0;
83
+ })
84
+ .map(option => combineLatest([
75
85
  option.value$,
76
86
  option.label$,
77
87
  option.labelContext$,
@@ -168,6 +178,10 @@ export class MultiSelectComponent extends BaseSelect {
168
178
  this.tooltipRef.updatePosition();
169
179
  });
170
180
  }
181
+ isOptionRemovable(option) {
182
+ const currOption = this.contentOptions.find(opt => this.trackFn(opt.value) === this.trackFn(option.value));
183
+ return !this.disabled && !currOption.disabled;
184
+ }
171
185
  selectOption(option) {
172
186
  if (option.selected) {
173
187
  this.removeValue(option.value);
@@ -254,7 +268,7 @@ MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
254
268
  provide: BaseSelect,
255
269
  useExisting: MultiSelectComponent,
256
270
  },
257
- ], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, static: true }, { propertyName: "inputValueMirror", first: true, predicate: ["inputValueMirror"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n [class]=\"rootClass\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n (mousedown)=\"$event.preventDefault()\"\n [style.max-height]=\"maxHeight\"\n>\n <div class=\"aui-multi-select__suffix\">\n <span class=\"aui-multi-select__icon-container\">\n <aui-icon\n class=\"aui-multi-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-multi-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </div>\n <span\n [hidden]=\"selectedValues.length || inputRef.value.length\"\n [class]=\"bem.element('placeholder')\"\n >\n {{ placeholder }}\n </span>\n <aui-tag\n *ngFor=\"let option of selectedOptions$ | async; trackBy: trackByValue\"\n type=\"info\"\n [round]=\"true\"\n [border]=\"true\"\n [size]=\"tagSize\"\n [closeable]=\"!disabled\"\n (close)=\"removeValue(option.value)\"\n [ngClass]=\"tagClassFn && tagClassFn(option.label, option.value)\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(option.label); else label\"\n [ngTemplateOutlet]=\"option.label\"\n [ngTemplateOutletContext]=\"option.labelContext\"\n ></ng-container>\n <ng-template #label>\n {{ option.label }}\n </ng-template>\n </aui-tag>\n <input\n #inputRef\n autocomplete=\"off\"\n [readonly]=\"inputReadonly\"\n [class]=\"inputClass\"\n (focus)=\"onInputFocus()\"\n (blur)=\"onInputBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (input)=\"onInput($event)\"\n />\n <span #inputValueMirror [class]=\"bem.element('mirror')\">\n {{ inputValue }}\n </span>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-option-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <ng-container\n *ngIf=\"\n allowSelectAll &&\n (hasEnabledOptions$ | async) &&\n ((hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString))\n \"\n >\n <div\n class=\"aui-option\"\n [class]=\"bemSelectAll.block(size$ | async)\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"!!(selectAllStatus$ | async)\"\n [class.isMulti]=\"true\"\n (click)=\"onSelectAllClick()\"\n >\n <i class=\"aui-option__pointer\">\n <aui-icon\n [icon]=\"\n (selectAllStatus$ | async) === 'checked'\n ? 'check_s'\n : 'square_s'\n \"\n [hidden]=\"!(selectAllStatus$ | async)\"\n ></aui-icon>\n </i>\n {{ 'select_all' | auiI18n }}\n </div>\n <hr class=\"divider\" />\n </ng-container>\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n >\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["@charset \"UTF-8\";.aui-input{display:inline-block;padding:0 var(--aui-inline-padding-xs);width:100%;min-width:0;border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg));color:rgb(var(--aui-color-main-text));outline:none;text-overflow:ellipsis}@keyframes cdk-text-field-autofill-color-0{to{background:rgb(var(--aui-color-n-9));color:rgb(var(--aui-color-main-text))}}.aui-input:-webkit-autofill{animation:cdk-text-field-autofill-color-0 both}.aui-input.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms,cdk-text-field-autofill-color-0 both}.aui-input::-webkit-outer-spin-button,.aui-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.aui-input[type=number]{-moz-appearance:textfield}.aui-input::placeholder{color:rgb(var(--aui-color-placeholder-text))}.aui-input:invalid,.aui-input:required{box-shadow:none}.aui-input:hover{border-color:rgb(var(--aui-color-primary))}.aui-input:focus,.aui-input.isFocused{border-color:rgb(var(--aui-color-primary))}:root .aui-input:focus,:root .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-input:focus,html[aui-theme-mode=light] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input:focus,html[aui-theme-mode=system] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-input:focus,html[aui-theme-mode=dark] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-input[readonly]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;cursor:default}.aui-input[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}.aui-input--large{height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l)}.aui-input--medium{height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m)}.aui-input--small{height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m)}.aui-input--mini{height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s)}textarea.aui-input{padding:var(--aui-inline-padding-xxs) var(--aui-inline-padding-xs);height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 3 + 2px);max-height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 6 + 2px);min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);color:rgb(var(--aui-color-main-text));resize:vertical;overflow:auto}.aui-input.ng-invalid.ng-dirty,.ng-submitted .aui-input.ng-invalid{border-color:rgb(var(--aui-color-red))!important}:root .aui-input.ng-invalid.ng-dirty:focus,:root .aui-input.ng-invalid.ng-dirty.isFocused,:root .ng-submitted .aui-input.ng-invalid:focus,:root .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n", "@charset \"UTF-8\";.aui-tag{display:inline-flex;border-radius:2px;border:1px solid transparent;max-width:300px;vertical-align:middle;transition:background-color .3s ease}.aui-tag__content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-tag .aui-tag__close .aui-icon{margin-left:4px;border-radius:50%;cursor:pointer;transition:all .3s ease}.aui-tag--large{height:32px;line-height:30px;font-size:14px;padding:0 15px}.aui-tag--large.isRound{border-radius:16px}.aui-tag--medium{height:28px;line-height:26px;font-size:var(--aui-font-size-m);padding:0 11px}.aui-tag--medium.isRound{border-radius:14px}.aui-tag--small{height:24px;line-height:22px;font-size:12px;padding:0 7px}.aui-tag--small.isRound{border-radius:12px}.aui-tag--mini{height:20px;line-height:18px;font-size:12px;padding:0 7px}.aui-tag--mini.isRound{border-radius:10px}.aui-tag--primary{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary.hasBorder{border-color:rgb(var(--aui-color-p-2))}.aui-tag--primary.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-p-1))}.aui-tag--primary.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-p-0))}.aui-tag--primary.allowClick:hover{background-color:rgb(var(--aui-color-p-7));cursor:pointer}.aui-tag--primary.allowClick:active{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary .aui-tag__close .aui-icon:hover{color:#e6f2fe;background-color:#007af5}.aui-tag--success{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success.hasBorder{border-color:rgb(var(--aui-color-g-2))}.aui-tag--success.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-g-1))}.aui-tag--success.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-g-0))}.aui-tag--success.allowClick:hover{background-color:rgb(var(--aui-color-g-7));cursor:pointer}.aui-tag--success.allowClick:active{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success .aui-tag__close .aui-icon:hover{color:#e6f9ef;background-color:#00c261}.aui-tag--warning{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning.hasBorder{border-color:rgb(var(--aui-color-y-2))}.aui-tag--warning.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-y-1))}.aui-tag--warning.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-y-0))}.aui-tag--warning.allowClick:hover{background-color:rgb(var(--aui-color-y-7));cursor:pointer}.aui-tag--warning.allowClick:active{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning .aui-tag__close .aui-icon:hover{color:#fef6e6;background-color:#f5a300}.aui-tag--error{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error.hasBorder{border-color:rgb(var(--aui-color-r-2))}.aui-tag--error.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-r-1))}.aui-tag--error.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-r-0))}.aui-tag--error.allowClick:hover{background-color:rgb(var(--aui-color-r-7));cursor:pointer}.aui-tag--error.allowClick:active{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error .aui-tag__close .aui-icon:hover{color:#fde6e9;background-color:#eb0027}.aui-tag--info{color:rgb(var(--aui-color-n-2));background-color:rgb(var(--aui-color-n-8))}.aui-tag--info.hasBorder{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-button-bg))}.aui-tag--info .aui-tag__close .aui-icon:hover{color:rgb(var(--aui-color-n-8));background-color:rgb(var(--aui-color-n-4))}.aui-tag.isInvalid{text-decoration:line-through}.aui-tag.isSolid,.aui-tag.isSolid .aui-tag__close .aui-icon:hover{color:#fff}.aui-tag.isSolid.aui-tag--primary{background-color:rgb(var(--aui-color-primary))}.aui-tag.isSolid.aui-tag--success{background-color:rgb(var(--aui-color-green))}.aui-tag.isSolid.aui-tag--warning{background-color:rgb(var(--aui-color-yellow))}.aui-tag.isSolid.aui-tag--error{background-color:rgb(var(--aui-color-red))}.aui-tag.isSolid.aui-tag--info{background-color:rgb(var(--aui-color-button-bg))}.aui-tag.allowClick a{color:inherit}.aui-tag.allowClick:hover{cursor:pointer}aui-tag+aui-tag .aui-tag--large,aui-tag+aui-tag .aui-tag--medium,aui-tag+aui-tag .aui-tag--small{margin-left:8px}aui-tag+aui-tag .aui-tag--mini{margin-left:6px}\n", "@charset \"UTF-8\";.aui-option{padding:0 var(--aui-inline-padding-xs);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.aui-option--large{padding:calc((var(--aui-inline-height-l) - var(--aui-line-height-l)) / 2);line-height:var(--aui-line-height-l);font-size:var(--aui-font-size-l)}.aui-option--medium{padding:calc((var(--aui-inline-height-m) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--small{padding:calc((var(--aui-inline-height-s) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--mini{padding:calc((var(--aui-inline-height-xs) - var(--aui-line-height-s)) / 2);line-height:var(--aui-line-height-s);font-size:var(--aui-font-size-s)}.aui-option:not(.isMulti).isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-option:hover,.aui-option.isFocused{background-color:rgb(var(--aui-color-p-6))}.aui-option.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-option__pointer{display:inline-block;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);margin-right:var(--aui-spacing-m);border-radius:var(--aui-border-radius-m);border:1px solid rgb(var(--aui-color-n-7));color:#fff;background-color:rgb(var(--aui-color-main-bg));position:relative;vertical-align:middle;transition:all .3s ease}.aui-option__pointer .aui-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin-left:0}.aui-option.cdk-keyboard-focused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}:root .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-option.isSelected .aui-option__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-primary))}.aui-option.isSelected.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-p-4));background-color:rgb(var(--aui-color-p-4))}.aui-option.isDisabled .aui-option__label{cursor:not-allowed}.aui-option.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-n-8))}.aui-option:not(.isDisabled):hover .aui-option__pointer,.aui-option:not(.isDisabled).isFocused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}.aui-option-container{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-option-container__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-option-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-option-container__content::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-option-container__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-option-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-option-container--small .aui-option-container__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-option-container--small .aui-option-container__placeholder{font-size:var(--aui-font-size-s)}.aui-multi-select{display:inline-block;position:relative;width:100%;color:rgb(var(--aui-color-main-text));vertical-align:middle}.aui-multi-select:hover{cursor:text}.aui-multi-select .aui-tag{max-width:100%}.aui-multi-select.isDisabled{background-color:rgb(var(--aui-color-n-8));border-color:#c8cacd;cursor:not-allowed}.aui-multi-select.isDisabled .aui-tag{color:#c8cacd;background-color:rgb(var(--aui-color-n-8))}.aui-multi-select__placeholder{display:inline-block;width:100%;color:rgb(var(--aui-color-placeholder-text));vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;margin-left:1px}.aui-multi-select__placeholder[hidden]{display:none}.aui-multi-select__mirror{opacity:0;left:0;z-index:-99;position:absolute;padding-left:1px}.aui-multi-select--large{min-height:40px;font-size:16px;padding:5px 11px 0}.aui-multi-select--large .aui-tag{margin:0 4px 5px 0}.aui-multi-select--medium{min-height:32px;font-size:14px;padding:5px 7px 0}.aui-multi-select--medium .aui-tag{margin:0 4px 5px 0}.aui-multi-select--small{min-height:28px;font-size:14px;padding:3px 7px 0}.aui-multi-select--small .aui-tag{margin:0 4px 3px 0}.aui-multi-select--mini{min-height:24px;font-size:12px;padding:1px 5px 0}.aui-multi-select--mini .aui-tag{margin:0 4px 1px 0}.aui-multi-select__suffix{position:absolute;top:50%;right:7px;transform:translateY(-50%)}.aui-multi-select .aui-tag.aui-multi-select__input{margin-right:0;padding:0;width:1em;max-width:100%;border:none;outline:none;background:none;color:rgb(var(--aui-color-main-text));font-family:inherit;font-size:inherit}.aui-multi-select .aui-tag.aui-multi-select__input--hidden{opacity:0;width:0;padding:0;margin:0;position:absolute}aui-multi-select.ng-invalid.ng-dirty .aui-input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input,.ng-submitted aui-multi-select.ng-invalid .aui-input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input{border-color:rgb(var(--aui-color-red))!important}:root aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}aui-multi-select.ng-invalid.ng-dirty .aui-input .aui-tags-input__input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input .aui-tags-input__input{color:rgb(var(--aui-color-red))}.aui-multi-select--large{min-height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l);line-height:var(--aui-line-height-l);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-l) + 1px)}.aui-multi-select--large .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-l)}.aui-multi-select--medium{min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--medium .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--small{min-height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--small .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--mini{min-height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-s) + 1px)}.aui-multi-select--mini .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-s)}.aui-multi-select__suffix{position:absolute;top:50%;transform:translateY(-50%)}.aui-multi-select__icon-container{display:block;position:relative;color:rgb(var(--aui-color-n-4))}.aui-multi-select__clear{display:none}.aui-multi-select__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-multi-select__clear .aui-icon:hover{color:#fff;background-color:rgb(var(--aui-color-help-text))}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__indicator{display:none}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__clear{display:flex}.aui-multi-select.withHeightLimit{overflow:auto;position:static}.aui-multi-select.withHeightLimit::-webkit-scrollbar{width:4px;height:4px}.aui-multi-select.withHeightLimit::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-multi-select .aui-tag--info{background-color:rgb(var(--aui-color-n-10))}\n"], components: [{ type: i1.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { type: i2.TagComponent, selector: "aui-tag", inputs: ["type", "size", "closeable", "border", "solid", "invalid", "round", "color", "allowClick"], outputs: ["close"] }, { type: i3.OptionComponent, selector: "aui-option", inputs: ["label", "labelContext", "value", "disabled"] }], directives: [{ type: i4.TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick"], outputs: ["auiTooltipShow", "auiTooltipHide"], exportAs: ["auiTooltip"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i5.AsyncPipe, "auiI18n": i6.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
271
+ ], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, static: true }, { propertyName: "inputValueMirror", first: true, predicate: ["inputValueMirror"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n [class]=\"rootClass\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n (mousedown)=\"$event.preventDefault()\"\n [style.max-height]=\"maxHeight\"\n>\n <div class=\"aui-multi-select__suffix\">\n <span class=\"aui-multi-select__icon-container\">\n <aui-icon\n class=\"aui-multi-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-multi-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </div>\n <span\n [hidden]=\"selectedValues.length || inputRef.value.length\"\n [class]=\"bem.element('placeholder')\"\n >\n {{ placeholder }}\n </span>\n <aui-tag\n *ngFor=\"let option of selectedOptions$ | async; trackBy: trackByValue\"\n type=\"info\"\n [round]=\"true\"\n [border]=\"true\"\n [size]=\"tagSize\"\n [closeable]=\"isOptionRemovable(option)\"\n (close)=\"removeValue(option.value)\"\n [ngClass]=\"tagClassFn && tagClassFn(option.label, option.value)\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(option.label); else label\"\n [ngTemplateOutlet]=\"option.label\"\n [ngTemplateOutletContext]=\"option.labelContext\"\n ></ng-container>\n <ng-template #label>\n {{ option.label }}\n </ng-template>\n </aui-tag>\n <input\n #inputRef\n autocomplete=\"off\"\n [readonly]=\"inputReadonly\"\n [class]=\"inputClass\"\n (focus)=\"onInputFocus()\"\n (blur)=\"onInputBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (input)=\"onInput($event)\"\n />\n <span #inputValueMirror [class]=\"bem.element('mirror')\">\n {{ inputValue }}\n </span>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-option-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <ng-container\n *ngIf=\"\n allowSelectAll &&\n (hasEnabledOptions$ | async) &&\n ((hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString))\n \"\n >\n <div\n class=\"aui-option\"\n [class]=\"bemSelectAll.block(size$ | async)\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"!!(selectAllStatus$ | async)\"\n [class.isMulti]=\"true\"\n (click)=\"onSelectAllClick()\"\n >\n <i class=\"aui-option__pointer\">\n <aui-icon\n [icon]=\"\n (selectAllStatus$ | async) === 'checked'\n ? 'check_s'\n : 'square_s'\n \"\n [hidden]=\"!(selectAllStatus$ | async)\"\n ></aui-icon>\n </i>\n {{ 'select_all' | auiI18n }}\n </div>\n <hr class=\"divider\" />\n </ng-container>\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n >\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["@charset \"UTF-8\";.aui-input{display:inline-block;padding:0 var(--aui-inline-padding-xs);width:100%;min-width:0;border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg));color:rgb(var(--aui-color-main-text));outline:none;text-overflow:ellipsis}@keyframes cdk-text-field-autofill-color-0{to{background:rgb(var(--aui-color-n-9));color:rgb(var(--aui-color-main-text))}}.aui-input:-webkit-autofill{animation:cdk-text-field-autofill-color-0 both}.aui-input.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms,cdk-text-field-autofill-color-0 both}.aui-input::-webkit-outer-spin-button,.aui-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.aui-input[type=number]{-moz-appearance:textfield}.aui-input::placeholder{color:rgb(var(--aui-color-placeholder-text))}.aui-input:invalid,.aui-input:required{box-shadow:none}.aui-input:hover{border-color:rgb(var(--aui-color-primary))}.aui-input:focus,.aui-input.isFocused{border-color:rgb(var(--aui-color-primary))}:root .aui-input:focus,:root .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-input:focus,html[aui-theme-mode=light] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input:focus,html[aui-theme-mode=system] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-input:focus,html[aui-theme-mode=dark] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-input[readonly]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;cursor:default}.aui-input[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}.aui-input--large{height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l)}.aui-input--medium{height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m)}.aui-input--small{height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m)}.aui-input--mini{height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s)}textarea.aui-input{padding:var(--aui-inline-padding-xxs) var(--aui-inline-padding-xs);height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 3 + 2px);max-height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 6 + 2px);min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);color:rgb(var(--aui-color-main-text));resize:vertical;overflow:auto}.aui-input.ng-invalid.ng-dirty,.ng-submitted .aui-input.ng-invalid{border-color:rgb(var(--aui-color-red))!important}:root .aui-input.ng-invalid.ng-dirty:focus,:root .aui-input.ng-invalid.ng-dirty.isFocused,:root .ng-submitted .aui-input.ng-invalid:focus,:root .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n", "@charset \"UTF-8\";.aui-tag{display:inline-flex;border-radius:2px;border:1px solid transparent;max-width:300px;vertical-align:middle;transition:background-color .3s ease}.aui-tag__content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-tag .aui-tag__close .aui-icon{margin-left:4px;border-radius:50%;cursor:pointer;transition:all .3s ease}.aui-tag--large{height:32px;line-height:30px;font-size:14px;padding:0 15px}.aui-tag--large.isRound{border-radius:16px}.aui-tag--medium{height:28px;line-height:26px;font-size:var(--aui-font-size-m);padding:0 11px}.aui-tag--medium.isRound{border-radius:14px}.aui-tag--small{height:24px;line-height:22px;font-size:12px;padding:0 7px}.aui-tag--small.isRound{border-radius:12px}.aui-tag--mini{height:20px;line-height:18px;font-size:12px;padding:0 7px}.aui-tag--mini.isRound{border-radius:10px}.aui-tag--primary{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary.hasBorder{border-color:rgb(var(--aui-color-p-2))}.aui-tag--primary.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-p-1))}.aui-tag--primary.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-p-0))}.aui-tag--primary.allowClick:hover{background-color:rgb(var(--aui-color-p-7));cursor:pointer}.aui-tag--primary.allowClick:active{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary .aui-tag__close .aui-icon:hover{color:#e6f2fe;background-color:#007af5}.aui-tag--success{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success.hasBorder{border-color:rgb(var(--aui-color-g-2))}.aui-tag--success.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-g-1))}.aui-tag--success.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-g-0))}.aui-tag--success.allowClick:hover{background-color:rgb(var(--aui-color-g-7));cursor:pointer}.aui-tag--success.allowClick:active{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success .aui-tag__close .aui-icon:hover{color:#e6f9ef;background-color:#00c261}.aui-tag--warning{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning.hasBorder{border-color:rgb(var(--aui-color-y-2))}.aui-tag--warning.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-y-1))}.aui-tag--warning.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-y-0))}.aui-tag--warning.allowClick:hover{background-color:rgb(var(--aui-color-y-7));cursor:pointer}.aui-tag--warning.allowClick:active{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning .aui-tag__close .aui-icon:hover{color:#fef6e6;background-color:#f5a300}.aui-tag--error{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error.hasBorder{border-color:rgb(var(--aui-color-r-2))}.aui-tag--error.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-r-1))}.aui-tag--error.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-r-0))}.aui-tag--error.allowClick:hover{background-color:rgb(var(--aui-color-r-7));cursor:pointer}.aui-tag--error.allowClick:active{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error .aui-tag__close .aui-icon:hover{color:#fde6e9;background-color:#eb0027}.aui-tag--info{color:rgb(var(--aui-color-n-2));background-color:rgb(var(--aui-color-n-8))}.aui-tag--info.hasBorder{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-button-bg))}.aui-tag--info .aui-tag__close .aui-icon:hover{color:rgb(var(--aui-color-n-8));background-color:rgb(var(--aui-color-n-4))}.aui-tag.isInvalid{text-decoration:line-through}.aui-tag.isSolid,.aui-tag.isSolid .aui-tag__close .aui-icon:hover{color:#fff}.aui-tag.isSolid.aui-tag--primary{background-color:rgb(var(--aui-color-primary))}.aui-tag.isSolid.aui-tag--success{background-color:rgb(var(--aui-color-green))}.aui-tag.isSolid.aui-tag--warning{background-color:rgb(var(--aui-color-yellow))}.aui-tag.isSolid.aui-tag--error{background-color:rgb(var(--aui-color-red))}.aui-tag.isSolid.aui-tag--info{background-color:rgb(var(--aui-color-button-bg))}.aui-tag.allowClick a{color:inherit}.aui-tag.allowClick:hover{cursor:pointer}aui-tag+aui-tag .aui-tag--large,aui-tag+aui-tag .aui-tag--medium,aui-tag+aui-tag .aui-tag--small{margin-left:8px}aui-tag+aui-tag .aui-tag--mini{margin-left:6px}\n", "@charset \"UTF-8\";.aui-option{padding:0 var(--aui-inline-padding-xs);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.aui-option--large{padding:calc((var(--aui-inline-height-l) - var(--aui-line-height-l)) / 2);line-height:var(--aui-line-height-l);font-size:var(--aui-font-size-l)}.aui-option--medium{padding:calc((var(--aui-inline-height-m) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--small{padding:calc((var(--aui-inline-height-s) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--mini{padding:calc((var(--aui-inline-height-xs) - var(--aui-line-height-s)) / 2);line-height:var(--aui-line-height-s);font-size:var(--aui-font-size-s)}.aui-option:not(.isMulti).isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-option:hover,.aui-option.isFocused{background-color:rgb(var(--aui-color-p-6))}.aui-option.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-option__pointer{display:inline-block;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);margin-right:var(--aui-spacing-m);border-radius:var(--aui-border-radius-m);border:1px solid rgb(var(--aui-color-n-7));color:#fff;background-color:rgb(var(--aui-color-main-bg));position:relative;vertical-align:middle;transition:all .3s ease}.aui-option__pointer .aui-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin-left:0}.aui-option.cdk-keyboard-focused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}:root .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-option.isSelected .aui-option__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-primary))}.aui-option.isSelected.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-p-4));background-color:rgb(var(--aui-color-p-4))}.aui-option.isDisabled .aui-option__label{cursor:not-allowed}.aui-option.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-n-8))}.aui-option:not(.isDisabled):hover .aui-option__pointer,.aui-option:not(.isDisabled).isFocused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}.aui-option-container{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-option-container__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-option-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-option-container__content::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-option-container__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-option-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-option-container--small .aui-option-container__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-option-container--small .aui-option-container__placeholder{font-size:var(--aui-font-size-s)}.aui-multi-select{display:inline-block;position:relative;width:100%;color:rgb(var(--aui-color-main-text));vertical-align:middle}.aui-multi-select:hover{cursor:text}.aui-multi-select .aui-tag{max-width:100%}.aui-multi-select.isDisabled{background-color:rgb(var(--aui-color-n-8));border-color:#c8cacd;cursor:not-allowed}.aui-multi-select.isDisabled .aui-tag{color:#c8cacd;background-color:rgb(var(--aui-color-n-8))}.aui-multi-select__placeholder{display:inline-block;width:100%;color:rgb(var(--aui-color-placeholder-text));vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;margin-left:1px}.aui-multi-select__placeholder[hidden]{display:none}.aui-multi-select__mirror{opacity:0;left:0;z-index:-99;position:absolute;padding-left:1px}.aui-multi-select--large{min-height:40px;font-size:16px;padding:5px 11px 0}.aui-multi-select--large .aui-tag{margin:0 4px 5px 0}.aui-multi-select--medium{min-height:32px;font-size:14px;padding:5px 7px 0}.aui-multi-select--medium .aui-tag{margin:0 4px 5px 0}.aui-multi-select--small{min-height:28px;font-size:14px;padding:3px 7px 0}.aui-multi-select--small .aui-tag{margin:0 4px 3px 0}.aui-multi-select--mini{min-height:24px;font-size:12px;padding:1px 5px 0}.aui-multi-select--mini .aui-tag{margin:0 4px 1px 0}.aui-multi-select__suffix{position:absolute;top:50%;right:7px;transform:translateY(-50%)}.aui-multi-select .aui-tag.aui-multi-select__input{margin-right:0;padding:0;width:1em;max-width:100%;border:none;outline:none;background:none;color:rgb(var(--aui-color-main-text));font-family:inherit;font-size:inherit}.aui-multi-select .aui-tag.aui-multi-select__input--hidden{opacity:0;width:0;padding:0;margin:0;position:absolute}aui-multi-select.ng-invalid.ng-dirty .aui-input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input,.ng-submitted aui-multi-select.ng-invalid .aui-input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input{border-color:rgb(var(--aui-color-red))!important}:root aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}aui-multi-select.ng-invalid.ng-dirty .aui-input .aui-tags-input__input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input .aui-tags-input__input{color:rgb(var(--aui-color-red))}.aui-multi-select--large{min-height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l);line-height:var(--aui-line-height-l);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-l) + 1px)}.aui-multi-select--large .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-l)}.aui-multi-select--medium{min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--medium .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--small{min-height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--small .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--mini{min-height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-s) + 1px)}.aui-multi-select--mini .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-s)}.aui-multi-select__suffix{position:absolute;top:50%;transform:translateY(-50%)}.aui-multi-select__icon-container{display:block;position:relative;color:rgb(var(--aui-color-n-4))}.aui-multi-select__clear{display:none}.aui-multi-select__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-multi-select__clear .aui-icon:hover{color:#fff;background-color:rgb(var(--aui-color-help-text))}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__indicator{display:none}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__clear{display:flex}.aui-multi-select.withHeightLimit{overflow:auto;position:static}.aui-multi-select.withHeightLimit::-webkit-scrollbar{width:4px;height:4px}.aui-multi-select.withHeightLimit::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-multi-select .aui-tag--info{background-color:rgb(var(--aui-color-n-10))}\n"], components: [{ type: i1.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { type: i2.TagComponent, selector: "aui-tag", inputs: ["type", "size", "closeable", "border", "solid", "invalid", "round", "color", "allowClick"], outputs: ["close"] }, { type: i3.OptionComponent, selector: "aui-option", inputs: ["label", "labelContext", "value", "disabled"] }], directives: [{ type: i4.TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick"], outputs: ["auiTooltipShow", "auiTooltipHide"], exportAs: ["auiTooltip"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i5.AsyncPipe, "auiI18n": i6.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
258
272
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: MultiSelectComponent, decorators: [{
259
273
  type: Component,
260
274
  args: [{ selector: 'aui-multi-select', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, providers: [
@@ -267,7 +281,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
267
281
  provide: BaseSelect,
268
282
  useExisting: MultiSelectComponent,
269
283
  },
270
- ], template: "<div\n [class]=\"rootClass\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n (mousedown)=\"$event.preventDefault()\"\n [style.max-height]=\"maxHeight\"\n>\n <div class=\"aui-multi-select__suffix\">\n <span class=\"aui-multi-select__icon-container\">\n <aui-icon\n class=\"aui-multi-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-multi-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </div>\n <span\n [hidden]=\"selectedValues.length || inputRef.value.length\"\n [class]=\"bem.element('placeholder')\"\n >\n {{ placeholder }}\n </span>\n <aui-tag\n *ngFor=\"let option of selectedOptions$ | async; trackBy: trackByValue\"\n type=\"info\"\n [round]=\"true\"\n [border]=\"true\"\n [size]=\"tagSize\"\n [closeable]=\"!disabled\"\n (close)=\"removeValue(option.value)\"\n [ngClass]=\"tagClassFn && tagClassFn(option.label, option.value)\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(option.label); else label\"\n [ngTemplateOutlet]=\"option.label\"\n [ngTemplateOutletContext]=\"option.labelContext\"\n ></ng-container>\n <ng-template #label>\n {{ option.label }}\n </ng-template>\n </aui-tag>\n <input\n #inputRef\n autocomplete=\"off\"\n [readonly]=\"inputReadonly\"\n [class]=\"inputClass\"\n (focus)=\"onInputFocus()\"\n (blur)=\"onInputBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (input)=\"onInput($event)\"\n />\n <span #inputValueMirror [class]=\"bem.element('mirror')\">\n {{ inputValue }}\n </span>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-option-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <ng-container\n *ngIf=\"\n allowSelectAll &&\n (hasEnabledOptions$ | async) &&\n ((hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString))\n \"\n >\n <div\n class=\"aui-option\"\n [class]=\"bemSelectAll.block(size$ | async)\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"!!(selectAllStatus$ | async)\"\n [class.isMulti]=\"true\"\n (click)=\"onSelectAllClick()\"\n >\n <i class=\"aui-option__pointer\">\n <aui-icon\n [icon]=\"\n (selectAllStatus$ | async) === 'checked'\n ? 'check_s'\n : 'square_s'\n \"\n [hidden]=\"!(selectAllStatus$ | async)\"\n ></aui-icon>\n </i>\n {{ 'select_all' | auiI18n }}\n </div>\n <hr class=\"divider\" />\n </ng-container>\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n >\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["@charset \"UTF-8\";.aui-input{display:inline-block;padding:0 var(--aui-inline-padding-xs);width:100%;min-width:0;border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg));color:rgb(var(--aui-color-main-text));outline:none;text-overflow:ellipsis}@keyframes cdk-text-field-autofill-color-0{to{background:rgb(var(--aui-color-n-9));color:rgb(var(--aui-color-main-text))}}.aui-input:-webkit-autofill{animation:cdk-text-field-autofill-color-0 both}.aui-input.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms,cdk-text-field-autofill-color-0 both}.aui-input::-webkit-outer-spin-button,.aui-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.aui-input[type=number]{-moz-appearance:textfield}.aui-input::placeholder{color:rgb(var(--aui-color-placeholder-text))}.aui-input:invalid,.aui-input:required{box-shadow:none}.aui-input:hover{border-color:rgb(var(--aui-color-primary))}.aui-input:focus,.aui-input.isFocused{border-color:rgb(var(--aui-color-primary))}:root .aui-input:focus,:root .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-input:focus,html[aui-theme-mode=light] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input:focus,html[aui-theme-mode=system] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-input:focus,html[aui-theme-mode=dark] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-input[readonly]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;cursor:default}.aui-input[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}.aui-input--large{height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l)}.aui-input--medium{height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m)}.aui-input--small{height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m)}.aui-input--mini{height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s)}textarea.aui-input{padding:var(--aui-inline-padding-xxs) var(--aui-inline-padding-xs);height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 3 + 2px);max-height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 6 + 2px);min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);color:rgb(var(--aui-color-main-text));resize:vertical;overflow:auto}.aui-input.ng-invalid.ng-dirty,.ng-submitted .aui-input.ng-invalid{border-color:rgb(var(--aui-color-red))!important}:root .aui-input.ng-invalid.ng-dirty:focus,:root .aui-input.ng-invalid.ng-dirty.isFocused,:root .ng-submitted .aui-input.ng-invalid:focus,:root .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n", "@charset \"UTF-8\";.aui-tag{display:inline-flex;border-radius:2px;border:1px solid transparent;max-width:300px;vertical-align:middle;transition:background-color .3s ease}.aui-tag__content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-tag .aui-tag__close .aui-icon{margin-left:4px;border-radius:50%;cursor:pointer;transition:all .3s ease}.aui-tag--large{height:32px;line-height:30px;font-size:14px;padding:0 15px}.aui-tag--large.isRound{border-radius:16px}.aui-tag--medium{height:28px;line-height:26px;font-size:var(--aui-font-size-m);padding:0 11px}.aui-tag--medium.isRound{border-radius:14px}.aui-tag--small{height:24px;line-height:22px;font-size:12px;padding:0 7px}.aui-tag--small.isRound{border-radius:12px}.aui-tag--mini{height:20px;line-height:18px;font-size:12px;padding:0 7px}.aui-tag--mini.isRound{border-radius:10px}.aui-tag--primary{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary.hasBorder{border-color:rgb(var(--aui-color-p-2))}.aui-tag--primary.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-p-1))}.aui-tag--primary.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-p-0))}.aui-tag--primary.allowClick:hover{background-color:rgb(var(--aui-color-p-7));cursor:pointer}.aui-tag--primary.allowClick:active{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary .aui-tag__close .aui-icon:hover{color:#e6f2fe;background-color:#007af5}.aui-tag--success{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success.hasBorder{border-color:rgb(var(--aui-color-g-2))}.aui-tag--success.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-g-1))}.aui-tag--success.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-g-0))}.aui-tag--success.allowClick:hover{background-color:rgb(var(--aui-color-g-7));cursor:pointer}.aui-tag--success.allowClick:active{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success .aui-tag__close .aui-icon:hover{color:#e6f9ef;background-color:#00c261}.aui-tag--warning{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning.hasBorder{border-color:rgb(var(--aui-color-y-2))}.aui-tag--warning.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-y-1))}.aui-tag--warning.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-y-0))}.aui-tag--warning.allowClick:hover{background-color:rgb(var(--aui-color-y-7));cursor:pointer}.aui-tag--warning.allowClick:active{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning .aui-tag__close .aui-icon:hover{color:#fef6e6;background-color:#f5a300}.aui-tag--error{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error.hasBorder{border-color:rgb(var(--aui-color-r-2))}.aui-tag--error.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-r-1))}.aui-tag--error.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-r-0))}.aui-tag--error.allowClick:hover{background-color:rgb(var(--aui-color-r-7));cursor:pointer}.aui-tag--error.allowClick:active{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error .aui-tag__close .aui-icon:hover{color:#fde6e9;background-color:#eb0027}.aui-tag--info{color:rgb(var(--aui-color-n-2));background-color:rgb(var(--aui-color-n-8))}.aui-tag--info.hasBorder{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-button-bg))}.aui-tag--info .aui-tag__close .aui-icon:hover{color:rgb(var(--aui-color-n-8));background-color:rgb(var(--aui-color-n-4))}.aui-tag.isInvalid{text-decoration:line-through}.aui-tag.isSolid,.aui-tag.isSolid .aui-tag__close .aui-icon:hover{color:#fff}.aui-tag.isSolid.aui-tag--primary{background-color:rgb(var(--aui-color-primary))}.aui-tag.isSolid.aui-tag--success{background-color:rgb(var(--aui-color-green))}.aui-tag.isSolid.aui-tag--warning{background-color:rgb(var(--aui-color-yellow))}.aui-tag.isSolid.aui-tag--error{background-color:rgb(var(--aui-color-red))}.aui-tag.isSolid.aui-tag--info{background-color:rgb(var(--aui-color-button-bg))}.aui-tag.allowClick a{color:inherit}.aui-tag.allowClick:hover{cursor:pointer}aui-tag+aui-tag .aui-tag--large,aui-tag+aui-tag .aui-tag--medium,aui-tag+aui-tag .aui-tag--small{margin-left:8px}aui-tag+aui-tag .aui-tag--mini{margin-left:6px}\n", "@charset \"UTF-8\";.aui-option{padding:0 var(--aui-inline-padding-xs);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.aui-option--large{padding:calc((var(--aui-inline-height-l) - var(--aui-line-height-l)) / 2);line-height:var(--aui-line-height-l);font-size:var(--aui-font-size-l)}.aui-option--medium{padding:calc((var(--aui-inline-height-m) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--small{padding:calc((var(--aui-inline-height-s) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--mini{padding:calc((var(--aui-inline-height-xs) - var(--aui-line-height-s)) / 2);line-height:var(--aui-line-height-s);font-size:var(--aui-font-size-s)}.aui-option:not(.isMulti).isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-option:hover,.aui-option.isFocused{background-color:rgb(var(--aui-color-p-6))}.aui-option.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-option__pointer{display:inline-block;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);margin-right:var(--aui-spacing-m);border-radius:var(--aui-border-radius-m);border:1px solid rgb(var(--aui-color-n-7));color:#fff;background-color:rgb(var(--aui-color-main-bg));position:relative;vertical-align:middle;transition:all .3s ease}.aui-option__pointer .aui-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin-left:0}.aui-option.cdk-keyboard-focused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}:root .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-option.isSelected .aui-option__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-primary))}.aui-option.isSelected.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-p-4));background-color:rgb(var(--aui-color-p-4))}.aui-option.isDisabled .aui-option__label{cursor:not-allowed}.aui-option.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-n-8))}.aui-option:not(.isDisabled):hover .aui-option__pointer,.aui-option:not(.isDisabled).isFocused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}.aui-option-container{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-option-container__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-option-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-option-container__content::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-option-container__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-option-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-option-container--small .aui-option-container__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-option-container--small .aui-option-container__placeholder{font-size:var(--aui-font-size-s)}.aui-multi-select{display:inline-block;position:relative;width:100%;color:rgb(var(--aui-color-main-text));vertical-align:middle}.aui-multi-select:hover{cursor:text}.aui-multi-select .aui-tag{max-width:100%}.aui-multi-select.isDisabled{background-color:rgb(var(--aui-color-n-8));border-color:#c8cacd;cursor:not-allowed}.aui-multi-select.isDisabled .aui-tag{color:#c8cacd;background-color:rgb(var(--aui-color-n-8))}.aui-multi-select__placeholder{display:inline-block;width:100%;color:rgb(var(--aui-color-placeholder-text));vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;margin-left:1px}.aui-multi-select__placeholder[hidden]{display:none}.aui-multi-select__mirror{opacity:0;left:0;z-index:-99;position:absolute;padding-left:1px}.aui-multi-select--large{min-height:40px;font-size:16px;padding:5px 11px 0}.aui-multi-select--large .aui-tag{margin:0 4px 5px 0}.aui-multi-select--medium{min-height:32px;font-size:14px;padding:5px 7px 0}.aui-multi-select--medium .aui-tag{margin:0 4px 5px 0}.aui-multi-select--small{min-height:28px;font-size:14px;padding:3px 7px 0}.aui-multi-select--small .aui-tag{margin:0 4px 3px 0}.aui-multi-select--mini{min-height:24px;font-size:12px;padding:1px 5px 0}.aui-multi-select--mini .aui-tag{margin:0 4px 1px 0}.aui-multi-select__suffix{position:absolute;top:50%;right:7px;transform:translateY(-50%)}.aui-multi-select .aui-tag.aui-multi-select__input{margin-right:0;padding:0;width:1em;max-width:100%;border:none;outline:none;background:none;color:rgb(var(--aui-color-main-text));font-family:inherit;font-size:inherit}.aui-multi-select .aui-tag.aui-multi-select__input--hidden{opacity:0;width:0;padding:0;margin:0;position:absolute}aui-multi-select.ng-invalid.ng-dirty .aui-input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input,.ng-submitted aui-multi-select.ng-invalid .aui-input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input{border-color:rgb(var(--aui-color-red))!important}:root aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}aui-multi-select.ng-invalid.ng-dirty .aui-input .aui-tags-input__input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input .aui-tags-input__input{color:rgb(var(--aui-color-red))}.aui-multi-select--large{min-height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l);line-height:var(--aui-line-height-l);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-l) + 1px)}.aui-multi-select--large .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-l)}.aui-multi-select--medium{min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--medium .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--small{min-height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--small .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--mini{min-height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-s) + 1px)}.aui-multi-select--mini .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-s)}.aui-multi-select__suffix{position:absolute;top:50%;transform:translateY(-50%)}.aui-multi-select__icon-container{display:block;position:relative;color:rgb(var(--aui-color-n-4))}.aui-multi-select__clear{display:none}.aui-multi-select__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-multi-select__clear .aui-icon:hover{color:#fff;background-color:rgb(var(--aui-color-help-text))}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__indicator{display:none}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__clear{display:flex}.aui-multi-select.withHeightLimit{overflow:auto;position:static}.aui-multi-select.withHeightLimit::-webkit-scrollbar{width:4px;height:4px}.aui-multi-select.withHeightLimit::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-multi-select .aui-tag--info{background-color:rgb(var(--aui-color-n-10))}\n"] }]
284
+ ], template: "<div\n [class]=\"rootClass\"\n #selectRef\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"templateRef\"\n [auiTooltipDisabled]=\"disabled\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n auiTooltipType=\"plain\"\n (auiTooltipShow)=\"onShowOptions()\"\n (auiTooltipHide)=\"onHideOptions()\"\n (mousedown)=\"$event.preventDefault()\"\n [style.max-height]=\"maxHeight\"\n>\n <div class=\"aui-multi-select__suffix\">\n <span class=\"aui-multi-select__icon-container\">\n <aui-icon\n class=\"aui-multi-select__indicator\"\n [icon]=\"loading ? 'spinner' : 'caret_down_s'\"\n ></aui-icon>\n <aui-icon\n class=\"aui-multi-select__clear\"\n icon=\"close_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </div>\n <span\n [hidden]=\"selectedValues.length || inputRef.value.length\"\n [class]=\"bem.element('placeholder')\"\n >\n {{ placeholder }}\n </span>\n <aui-tag\n *ngFor=\"let option of selectedOptions$ | async; trackBy: trackByValue\"\n type=\"info\"\n [round]=\"true\"\n [border]=\"true\"\n [size]=\"tagSize\"\n [closeable]=\"isOptionRemovable(option)\"\n (close)=\"removeValue(option.value)\"\n [ngClass]=\"tagClassFn && tagClassFn(option.label, option.value)\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(option.label); else label\"\n [ngTemplateOutlet]=\"option.label\"\n [ngTemplateOutletContext]=\"option.labelContext\"\n ></ng-container>\n <ng-template #label>\n {{ option.label }}\n </ng-template>\n </aui-tag>\n <input\n #inputRef\n autocomplete=\"off\"\n [readonly]=\"inputReadonly\"\n [class]=\"inputClass\"\n (focus)=\"onInputFocus()\"\n (blur)=\"onInputBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (input)=\"onInput($event)\"\n />\n <span #inputValueMirror [class]=\"bem.element('mirror')\">\n {{ inputValue }}\n </span>\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"aui-option-container\"\n [style.minWidth]=\"containerWidth\"\n (mousedown)=\"$event.preventDefault()\"\n >\n <div #optionListRef class=\"aui-option-container__content\">\n <ng-container\n *ngIf=\"\n allowSelectAll &&\n (hasEnabledOptions$ | async) &&\n ((hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString))\n \"\n >\n <div\n class=\"aui-option\"\n [class]=\"bemSelectAll.block(size$ | async)\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"!!(selectAllStatus$ | async)\"\n [class.isMulti]=\"true\"\n (click)=\"onSelectAllClick()\"\n >\n <i class=\"aui-option__pointer\">\n <aui-icon\n [icon]=\"\n (selectAllStatus$ | async) === 'checked'\n ? 'check_s'\n : 'square_s'\n \"\n [hidden]=\"!(selectAllStatus$ | async)\"\n ></aui-icon>\n </i>\n {{ 'select_all' | auiI18n }}\n </div>\n <hr class=\"divider\" />\n </ng-container>\n <aui-option\n #inputtingOption\n *ngIf=\"allowCreate && filterString && !(hasMatchedOption$ | async)\"\n [value]=\"filterString\"\n >\n {{ filterString }}\n </aui-option>\n <ng-container *ngIf=\"allowCreate\">\n <aui-option\n *ngFor=\"let option of customCreatedOptions$ | async\"\n [label]=\"option.label\"\n [value]=\"option.value\"\n >\n {{ option.label }}\n </aui-option>\n </ng-container>\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"\n !(\n (hasVisibleOption$ | async) ||\n (allowCreate && (customCreatedOptions$ | async).length) ||\n (allowCreate && filterString)\n )\n \"\n class=\"aui-option-container__placeholder\"\n >\n <ng-content select=\"aui-option-placeholder\"></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: ["@charset \"UTF-8\";.aui-input{display:inline-block;padding:0 var(--aui-inline-padding-xs);width:100%;min-width:0;border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg));color:rgb(var(--aui-color-main-text));outline:none;text-overflow:ellipsis}@keyframes cdk-text-field-autofill-color-0{to{background:rgb(var(--aui-color-n-9));color:rgb(var(--aui-color-main-text))}}.aui-input:-webkit-autofill{animation:cdk-text-field-autofill-color-0 both}.aui-input.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms,cdk-text-field-autofill-color-0 both}.aui-input::-webkit-outer-spin-button,.aui-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.aui-input[type=number]{-moz-appearance:textfield}.aui-input::placeholder{color:rgb(var(--aui-color-placeholder-text))}.aui-input:invalid,.aui-input:required{box-shadow:none}.aui-input:hover{border-color:rgb(var(--aui-color-primary))}.aui-input:focus,.aui-input.isFocused{border-color:rgb(var(--aui-color-primary))}:root .aui-input:focus,:root .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-input:focus,html[aui-theme-mode=light] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input:focus,html[aui-theme-mode=system] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-input:focus,html[aui-theme-mode=dark] .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-input[readonly]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;cursor:default}.aui-input[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}.aui-input--large{height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l)}.aui-input--medium{height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m)}.aui-input--small{height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m)}.aui-input--mini{height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s)}textarea.aui-input{padding:var(--aui-inline-padding-xxs) var(--aui-inline-padding-xs);height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 3 + 2px);max-height:calc(var(--aui-inline-padding-xxs) * 2 + var(--aui-line-height-m) * 6 + 2px);min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);color:rgb(var(--aui-color-main-text));resize:vertical;overflow:auto}.aui-input.ng-invalid.ng-dirty,.ng-submitted .aui-input.ng-invalid{border-color:rgb(var(--aui-color-red))!important}:root .aui-input.ng-invalid.ng-dirty:focus,:root .aui-input.ng-invalid.ng-dirty.isFocused,:root .ng-submitted .aui-input.ng-invalid:focus,:root .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=light] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=light] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=system] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=system] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty:focus,html[aui-theme-mode=dark] .aui-input.ng-invalid.ng-dirty.isFocused,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid:focus,html[aui-theme-mode=dark] .ng-submitted .aui-input.ng-invalid.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n", "@charset \"UTF-8\";.aui-tag{display:inline-flex;border-radius:2px;border:1px solid transparent;max-width:300px;vertical-align:middle;transition:background-color .3s ease}.aui-tag__content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-tag .aui-tag__close .aui-icon{margin-left:4px;border-radius:50%;cursor:pointer;transition:all .3s ease}.aui-tag--large{height:32px;line-height:30px;font-size:14px;padding:0 15px}.aui-tag--large.isRound{border-radius:16px}.aui-tag--medium{height:28px;line-height:26px;font-size:var(--aui-font-size-m);padding:0 11px}.aui-tag--medium.isRound{border-radius:14px}.aui-tag--small{height:24px;line-height:22px;font-size:12px;padding:0 7px}.aui-tag--small.isRound{border-radius:12px}.aui-tag--mini{height:20px;line-height:18px;font-size:12px;padding:0 7px}.aui-tag--mini.isRound{border-radius:10px}.aui-tag--primary{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary.hasBorder{border-color:rgb(var(--aui-color-p-2))}.aui-tag--primary.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-p-1))}.aui-tag--primary.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-p-0))}.aui-tag--primary.allowClick:hover{background-color:rgb(var(--aui-color-p-7));cursor:pointer}.aui-tag--primary.allowClick:active{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-tag--primary .aui-tag__close .aui-icon:hover{color:#e6f2fe;background-color:#007af5}.aui-tag--success{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success.hasBorder{border-color:rgb(var(--aui-color-g-2))}.aui-tag--success.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-g-1))}.aui-tag--success.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-g-0))}.aui-tag--success.allowClick:hover{background-color:rgb(var(--aui-color-g-7));cursor:pointer}.aui-tag--success.allowClick:active{color:rgb(var(--aui-color-green));background-color:rgb(var(--aui-color-g-6))}.aui-tag--success .aui-tag__close .aui-icon:hover{color:#e6f9ef;background-color:#00c261}.aui-tag--warning{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning.hasBorder{border-color:rgb(var(--aui-color-y-2))}.aui-tag--warning.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-y-1))}.aui-tag--warning.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-y-0))}.aui-tag--warning.allowClick:hover{background-color:rgb(var(--aui-color-y-7));cursor:pointer}.aui-tag--warning.allowClick:active{color:rgb(var(--aui-color-yellow));background-color:rgb(var(--aui-color-y-6))}.aui-tag--warning .aui-tag__close .aui-icon:hover{color:#fef6e6;background-color:#f5a300}.aui-tag--error{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error.hasBorder{border-color:rgb(var(--aui-color-r-2))}.aui-tag--error.hasBorder.allowClick:hover{border-color:rgb(var(--aui-color-r-1))}.aui-tag--error.hasBorder.allowClick:active{border-color:rgb(var(--aui-color-r-0))}.aui-tag--error.allowClick:hover{background-color:rgb(var(--aui-color-r-7));cursor:pointer}.aui-tag--error.allowClick:active{color:rgb(var(--aui-color-red));background-color:rgb(var(--aui-color-r-6))}.aui-tag--error .aui-tag__close .aui-icon:hover{color:#fde6e9;background-color:#eb0027}.aui-tag--info{color:rgb(var(--aui-color-n-2));background-color:rgb(var(--aui-color-n-8))}.aui-tag--info.hasBorder{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-button-bg))}.aui-tag--info .aui-tag__close .aui-icon:hover{color:rgb(var(--aui-color-n-8));background-color:rgb(var(--aui-color-n-4))}.aui-tag.isInvalid{text-decoration:line-through}.aui-tag.isSolid,.aui-tag.isSolid .aui-tag__close .aui-icon:hover{color:#fff}.aui-tag.isSolid.aui-tag--primary{background-color:rgb(var(--aui-color-primary))}.aui-tag.isSolid.aui-tag--success{background-color:rgb(var(--aui-color-green))}.aui-tag.isSolid.aui-tag--warning{background-color:rgb(var(--aui-color-yellow))}.aui-tag.isSolid.aui-tag--error{background-color:rgb(var(--aui-color-red))}.aui-tag.isSolid.aui-tag--info{background-color:rgb(var(--aui-color-button-bg))}.aui-tag.allowClick a{color:inherit}.aui-tag.allowClick:hover{cursor:pointer}aui-tag+aui-tag .aui-tag--large,aui-tag+aui-tag .aui-tag--medium,aui-tag+aui-tag .aui-tag--small{margin-left:8px}aui-tag+aui-tag .aui-tag--mini{margin-left:6px}\n", "@charset \"UTF-8\";.aui-option{padding:0 var(--aui-inline-padding-xs);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.aui-option--large{padding:calc((var(--aui-inline-height-l) - var(--aui-line-height-l)) / 2);line-height:var(--aui-line-height-l);font-size:var(--aui-font-size-l)}.aui-option--medium{padding:calc((var(--aui-inline-height-m) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--small{padding:calc((var(--aui-inline-height-s) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-option--mini{padding:calc((var(--aui-inline-height-xs) - var(--aui-line-height-s)) / 2);line-height:var(--aui-line-height-s);font-size:var(--aui-font-size-s)}.aui-option:not(.isMulti).isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-option:hover,.aui-option.isFocused{background-color:rgb(var(--aui-color-p-6))}.aui-option.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-option__pointer{display:inline-block;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);margin-right:var(--aui-spacing-m);border-radius:var(--aui-border-radius-m);border:1px solid rgb(var(--aui-color-n-7));color:#fff;background-color:rgb(var(--aui-color-main-bg));position:relative;vertical-align:middle;transition:all .3s ease}.aui-option__pointer .aui-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin-left:0}.aui-option.cdk-keyboard-focused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}:root .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-option.cdk-keyboard-focused .aui-option__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-option.isSelected .aui-option__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-primary))}.aui-option.isSelected.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-p-4));background-color:rgb(var(--aui-color-p-4))}.aui-option.isDisabled .aui-option__label{cursor:not-allowed}.aui-option.isDisabled .aui-option__pointer{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-n-8))}.aui-option:not(.isDisabled):hover .aui-option__pointer,.aui-option:not(.isDisabled).isFocused .aui-option__pointer{border-color:rgb(var(--aui-color-primary))}.aui-option-container{padding:8px 0;border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-popper-bg))}:root .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-option-container{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-option-container__content{max-height:calc(var(--aui-inline-height-m) * 10);position:relative;overflow:auto}.aui-option-container__content::-webkit-scrollbar{width:4px;height:4px}.aui-option-container__content::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-option-container__content .divider{border:none;border-top:1px solid rgb(var(--aui-color-n-8))}.aui-option-container__placeholder{color:rgb(var(--aui-color-n-4));font-size:var(--aui-font-size-m);text-align:center}.aui-option-container--small .aui-option-container__content{max-height:calc(var(--aui-inline-height-s) * 10)}.aui-option-container--small .aui-option-container__placeholder{font-size:var(--aui-font-size-s)}.aui-multi-select{display:inline-block;position:relative;width:100%;color:rgb(var(--aui-color-main-text));vertical-align:middle}.aui-multi-select:hover{cursor:text}.aui-multi-select .aui-tag{max-width:100%}.aui-multi-select.isDisabled{background-color:rgb(var(--aui-color-n-8));border-color:#c8cacd;cursor:not-allowed}.aui-multi-select.isDisabled .aui-tag{color:#c8cacd;background-color:rgb(var(--aui-color-n-8))}.aui-multi-select__placeholder{display:inline-block;width:100%;color:rgb(var(--aui-color-placeholder-text));vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:absolute;margin-left:1px}.aui-multi-select__placeholder[hidden]{display:none}.aui-multi-select__mirror{opacity:0;left:0;z-index:-99;position:absolute;padding-left:1px}.aui-multi-select--large{min-height:40px;font-size:16px;padding:5px 11px 0}.aui-multi-select--large .aui-tag{margin:0 4px 5px 0}.aui-multi-select--medium{min-height:32px;font-size:14px;padding:5px 7px 0}.aui-multi-select--medium .aui-tag{margin:0 4px 5px 0}.aui-multi-select--small{min-height:28px;font-size:14px;padding:3px 7px 0}.aui-multi-select--small .aui-tag{margin:0 4px 3px 0}.aui-multi-select--mini{min-height:24px;font-size:12px;padding:1px 5px 0}.aui-multi-select--mini .aui-tag{margin:0 4px 1px 0}.aui-multi-select__suffix{position:absolute;top:50%;right:7px;transform:translateY(-50%)}.aui-multi-select .aui-tag.aui-multi-select__input{margin-right:0;padding:0;width:1em;max-width:100%;border:none;outline:none;background:none;color:rgb(var(--aui-color-main-text));font-family:inherit;font-size:inherit}.aui-multi-select .aui-tag.aui-multi-select__input--hidden{opacity:0;width:0;padding:0;margin:0;position:absolute}aui-multi-select.ng-invalid.ng-dirty .aui-input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input,.ng-submitted aui-multi-select.ng-invalid .aui-input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input{border-color:rgb(var(--aui-color-red))!important}:root aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,:root aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,:root .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=light] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=light] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=system] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=system] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input:focus,html[aui-theme-mode=dark] aui-multi-select.ng-invalid.ng-dirty .aui-tags-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-multi-select.ng-invalid .aui-tags-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}aui-multi-select.ng-invalid.ng-dirty .aui-input .aui-tags-input__input,aui-multi-select.ng-invalid.ng-dirty .aui-tags-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-input .aui-tags-input__input,.ng-submitted aui-multi-select.ng-invalid .aui-tags-input .aui-tags-input__input{color:rgb(var(--aui-color-red))}.aui-multi-select--large{min-height:var(--aui-inline-height-l);font-size:var(--aui-font-size-l);line-height:var(--aui-line-height-l);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-l) + 1px)}.aui-multi-select--large .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-l)}.aui-multi-select--medium{min-height:var(--aui-inline-height-m);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--medium .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--small{min-height:var(--aui-inline-height-s);font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-m) + 1px)}.aui-multi-select--small .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-m)}.aui-multi-select--mini{min-height:var(--aui-inline-height-xs);font-size:var(--aui-font-size-s);line-height:var(--aui-line-height-s);padding-right:calc(var(--aui-inline-padding-xs) * 2 + var(--aui-icon-size-s) + 1px)}.aui-multi-select--mini .aui-multi-select__suffix{right:calc(var(--aui-inline-padding-xs) + 1px);font-size:var(--aui-icon-size-s)}.aui-multi-select__suffix{position:absolute;top:50%;transform:translateY(-50%)}.aui-multi-select__icon-container{display:block;position:relative;color:rgb(var(--aui-color-n-4))}.aui-multi-select__clear{display:none}.aui-multi-select__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-multi-select__clear .aui-icon:hover{color:#fff;background-color:rgb(var(--aui-color-help-text))}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__indicator{display:none}.aui-multi-select.isClearable:not(.isDisabled):hover .aui-multi-select__clear{display:flex}.aui-multi-select.withHeightLimit{overflow:auto;position:static}.aui-multi-select.withHeightLimit::-webkit-scrollbar{width:4px;height:4px}.aui-multi-select.withHeightLimit::-webkit-scrollbar-thumb{background-color:#0000004d}.aui-multi-select .aui-tag--info{background-color:rgb(var(--aui-color-n-10))}\n"] }]
271
285
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { tagClassFn: [{
272
286
  type: Input
273
287
  }], maxRowCount: [{
@@ -289,4 +303,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
289
303
  type: HostBinding,
290
304
  args: ['style.display']
291
305
  }] } });
292
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZWxlY3QvbXVsdGktc2VsZWN0L211bHRpLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvc2VsZWN0L211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFHTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQWMsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQ0wsR0FBRyxFQUNILGFBQWEsRUFDYixRQUFRLEVBQ1IsU0FBUyxFQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQU8sUUFBUSxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUNMLGVBQWUsR0FHaEIsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7QUF5QnpCLE1BQU0sT0FBTyxvQkFDWCxTQUFRLFVBQWtCO0lBdUYxQixZQUFZLEdBQXNCLEVBQW1CLFFBQW1CO1FBQ3RFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUR3QyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FB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YW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIG1hcCxcbiAgcHVibGlzaFJlcGxheSxcbiAgcmVmQ291bnQsXG4gIHN0YXJ0V2l0aCxcbiAgc3dpdGNoTWFwLFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBjcmVhdGVXaXRoTWF4Um93Q291bnQgfSBmcm9tICcuLi8uLi9pbnB1dC90YWdzLWlucHV0L3dpdGgtbWF4LXJvdy1jb3VudCc7XG5pbXBvcnQgeyBDb21wb25lbnRTaXplIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQmVtLCBidWlsZEJlbSwgY29lcmNlQXR0ckJvb2xlYW4sIGNvZXJjZVN0cmluZyB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IEJhc2VTZWxlY3QgfSBmcm9tICcuLi9iYXNlLXNlbGVjdCc7XG5pbXBvcnQgeyBPcHRpb25Db21wb25lbnQgfSBmcm9tICcuLi9vcHRpb24vb3B0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBTZWxlY3RBbGxTdGF0dXMsXG4gIFNlbGVjdEZpbHRlck9wdGlvbixcbiAgVGFnQ2xhc3NGbixcbn0gZnJvbSAnLi4vc2VsZWN0LnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLW11bHRpLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi4vLi4vaW5wdXQvaW5wdXQuY29tcG9uZW50LnNjc3MnLFxuICAgICcuLi8uLi90YWcvdGFnLmNvbXBvbmVudC5zY3NzJyxcbiAgICAnLi9tdWx0aS1zZWxlY3QuY29tcG9uZW50LnNjc3MnLFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTXVsdGlTZWxlY3RDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBCYXNlU2VsZWN0LFxuICAgICAgdXNlRXhpc3Rpbmc6IE11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE11bHRpU2VsZWN0Q29tcG9uZW50PFQgPSB1bmtub3duPlxuICBleHRlbmRzIEJhc2VTZWxlY3Q8VCwgVFtdPlxuICBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXRcbntcbiAgYmVtOiBCZW0gPSBidWlsZEJlbSgnYXVpLW11bHRpLXNlbGVjdCcpO1xuICBiZW1TZWxlY3RBbGw6IEJlbSA9IGJ1aWxkQmVtKCdhdWktb3B0aW9uJyk7XG4gIHNlbGVjdGVkT3B0aW9ucyQ6IE9ic2VydmFibGU8QXJyYXk8U2VsZWN0RmlsdGVyT3B0aW9uPFQ+Pj47XG4gIHNlbGVjdEFsbFN0YXR1cyQ6IE9ic2VydmFibGU8U2VsZWN0QWxsU3RhdHVzPjtcbiAgc2VsZWN0QWxsU3RhdHVzOiBTZWxlY3RBbGxTdGF0dXM7XG4gIGhhc0VuYWJsZWRPcHRpb25zJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBwcml2YXRlIF9hbGxvd1NlbGVjdEFsbCA9IGZhbHNlO1xuICBvdmVycmlkZSBpc011bHRpID0gdHJ1ZTtcbiAgc2VsZWN0ZWRWYWx1ZXM6IFRbXSA9IFtdO1xuICB2YWx1ZXMkID0gdGhpcy52YWx1ZSQkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIEBJbnB1dCgpXG4gIHRhZ0NsYXNzRm46IFRhZ0NsYXNzRm48VD47XG5cbiAgQElucHV0KClcbiAgbWF4Um93Q291bnQgPSAwO1xuXG4gIEBJbnB1dCgpXG4gIGN1c3RvbVJvd0hlaWdodCA9IDA7IC8vIDA6IHVzZSBkZWZhdWx0IHN0eWxlIGNvbnN0IHZhbHVlLCA+IDE6IGZvciBgYGB0YWdDbGFzc0ZuYGBgIG1heWJlIGFmZmVjdCBsaW5lSGVpZ2h0XG5cbiAgQElucHV0KClcbiAgZ2V0IGFsbG93U2VsZWN0QWxsKCkge1xuICAgIHJldHVybiB0aGlzLl9hbGxvd1NlbGVjdEFsbDtcbiAgfVxuXG4gIHNldCBhbGxvd1NlbGVjdEFsbCh2YWw6IGJvb2xlYW4gfCAnJykge1xuICAgIHRoaXMuX2FsbG93U2VsZWN0QWxsID0gY29lcmNlQXR0ckJvb2xlYW4odmFsKTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0UmVmJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgaW5wdXRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXRWYWx1ZU1pcnJvcicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIGlucHV0VmFsdWVNaXJyb3I6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUucG9zaXRpb24nKVxuICBnZXQgaG9zdFBvc2l0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLndpdGhNYXhSb3dDb3VudC5ob3N0UG9zaXRpb24oKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuZGlzcGxheScpXG4gIGdldCBob3N0RGlzcGxheSgpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoTWF4Um93Q291bnQuaG9zdERpc3BsYXkoKTtcbiAgfVxuXG4gIGlucHV0VmFsdWUgPSAnJztcblxuICBnZXQgcm9vdENsYXNzKCkge1xuICAgIGNvbnN0IHNpemUgPSB0aGlzLnNpemUgfHwgQ29tcG9uZW50U2l6ZS5NZWRpdW07XG4gICAgcmV0dXJuIGBhdWktaW5wdXQgJHt0aGlzLmJlbS5ibG9jayhzaXplKX0gJHtcbiAgICAgIHRoaXMuZGlzYWJsZWQgPyAnaXNEaXNhYmxlZCcgOiAnJ1xuICAgIH0gJHt0aGlzLmZvY3VzZWQgPyAnaXNGb2N1c2VkJyA6ICcnfSAke1xuICAgICAgdGhpcy5kaXNwbGF5Q2xlYXJCdG4gPyAnaXNDbGVhcmFibGUnIDogJydcbiAgICB9ICR7dGhpcy5tYXhSb3dDb3VudCA+IDAgPyAnd2l0aEhlaWdodExpbWl0JyA6ICcnfWA7XG4gIH1cblxuICBnZXQgdGFnU2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSBDb21wb25lbnRTaXplLkxhcmdlXG4gICAgICA/IENvbXBvbmVudFNpemUuTWVkaXVtXG4gICAgICA6IENvbXBvbmVudFNpemUuTWluaTtcbiAgfVxuXG4gIGdldCBpbnB1dENsYXNzKCkge1xuICAgIHJldHVybiBgJHt0aGlzLmJlbS5lbGVtZW50KCdpbnB1dCcsIHtcbiAgICAgIGhpZGRlbjogdGhpcy5pbnB1dFJlYWRvbmx5LFxuICAgIH0pfSBhdWktdGFnIGF1aS10YWctLSR7dGhpcy50YWdTaXplfWA7XG4gIH1cblxuICBnZXQgZGlzcGxheUNsZWFyQnRuKCkge1xuICAgIHJldHVybiAhdGhpcy5kaXNhYmxlZCAmJiB0aGlzLmNsZWFyYWJsZSAmJiB0aGlzLnNlbGVjdGVkVmFsdWVzLmxlbmd0aDtcbiAgfVxuXG4gIGdldCBtYXhIZWlnaHQoKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aE1heFJvd0NvdW50Lm1heEhlaWdodCgpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSB3aXRoTWF4Um93Q291bnQgPSBjcmVhdGVXaXRoTWF4Um93Q291bnQodGhpcyk7XG5cbiAgZm9jdXNlZCA9IGZhbHNlO1xuXG4gIHRyYWNrQnlWYWx1ZSA9IChfOiBudW1iZXIsIGl0ZW06IFNlbGVjdEZpbHRlck9wdGlvbjxUPikgPT5cbiAgICB0aGlzLnRyYWNrRm4oaXRlbS52YWx1ZSk7XG5cbiAgY29uc3RydWN0b3IoY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyKSB7XG4gICAgc3VwZXIoY2RyKTtcbiAgICB0aGlzLnZhbHVlcyQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKS5zdWJzY3JpYmUodmFsdWVzID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMgPSB2YWx1ZXM7XG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgc3VwZXIubmdBZnRlckNvbnRlbnRJbml0KCk7XG5cbiAgICB0aGlzLnNlbGVjdGVkT3B0aW9ucyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMudmFsdWUkLFxuICAgICAgdGhpcy5jb250ZW50T3B0aW9ucy5jaGFuZ2VzLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCh0aGlzLmNvbnRlbnRPcHRpb25zKSxcbiAgICAgICAgc3dpdGNoTWFwKChvcHRpb25zOiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PikgPT5cbiAgICAgICAgICBvcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gY29tYmluZUxhdGVzdChcbiAgICAgICAgICAgICAgICBvcHRpb25zLm1hcChvcHRpb24gPT5cbiAgICAgICAgICAgICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICAgICAgICBvcHRpb24udmFsdWUkLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb24ubGFiZWwkLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb24ubGFiZWxDb250ZXh0JCxcbiAgICAgICAgICAgICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoW3ZhbHVlLCBsYWJlbCwgbGFiZWxDb250ZXh0XSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgICBsYWJlbENvbnRleHQsXG4gICAgICAgICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBvZihbXSBhcyBBcnJheTxTZWxlY3RGaWx0ZXJPcHRpb248VD4+KSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3ZhbHVlcywgb3B0aW9uc10pID0+XG4gICAgICAgIHZhbHVlcy5tYXAodmFsdWUgPT4ge1xuICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZChcbiAgICAgICAgICAgIG9wdGlvbiA9PiB0aGlzLnRyYWNrRm4ob3B0aW9uLnZhbHVlKSA9PT0gdGhpcy50cmFja0ZuKHZhbHVlKSxcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiBvcHRpb25cbiAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgIGxhYmVsOiBvcHRpb24ubGFiZWwgfHwgY29lcmNlU3RyaW5nKHRoaXMudHJhY2tGbihvcHRpb24udmFsdWUpKSxcbiAgICAgICAgICAgICAgICBsYWJlbENvbnRleHQ6IG9wdGlvbi5sYWJlbENvbnRleHQsXG4gICAgICAgICAgICAgICAgdmFsdWU6IG9wdGlvbi52YWx1ZSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgbGFiZWw6XG4gICAgICAgICAgICAgICAgICB0aGlzLmxhYmVsRm4/Lih2YWx1ZSkgfHwgY29lcmNlU3RyaW5nKHRoaXMudHJhY2tGbih2YWx1ZSkpLFxuICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICB9O1xuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgICBwdWJsaXNoUmVwbGF5KDEpLFxuICAgICAgcmVmQ291bnQoKSxcbiAgICApO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgIHRoaXMuc2VsZWN0QWxsU3RhdHVzJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5hbGxPcHRpb25zJCxcbiAgICAgIHRoaXMuZmlsdGVyU3RyaW5nJCxcbiAgICBdKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChbYWxsT3B0aW9uc10pID0+XG4gICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgIC4uLihhbGxPcHRpb25zID8/IFtdKVxuICAgICAgICAgICAgLmZpbHRlcigoeyB2aXNpYmxlLCBkaXNhYmxlZCB9KSA9PiB2aXNpYmxlICYmICFkaXNhYmxlZClcbiAgICAgICAgICAgIC5tYXAoKHsgc2VsZWN0ZWQkIH0pID0+IHNlbGVjdGVkJCksXG4gICAgICAgIF0pLFxuICAgICAgKSxcbiAgICAgIG1hcChzdGF0dXNlcyA9PiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkID0gc3RhdHVzZXMuZmlsdGVyKGkgPT4gaSk7XG4gICAgICAgIHJldHVybiBzZWxlY3RlZC5sZW5ndGggPT09IDBcbiAgICAgICAgICA/IFNlbGVjdEFsbFN0YXR1cy5FbXB0eVxuICAgICAgICAgIDogc2VsZWN0ZWQubGVuZ3RoICE9PSBzdGF0dXNlcy5sZW5ndGhcbiAgICAgICAgICA/IFNlbGVjdEFsbFN0YXR1cy5JbmRldGVybWluYXRlXG4gICAgICAgICAgOiBTZWxlY3RBbGxTdGF0dXMuQ2hlY2tlZDtcbiAgICAgIH0pLFxuICAgICAgc3RhcnRXaXRoKFNlbGVjdEFsbFN0YXR1cy5FbXB0eSksXG4gICAgICB0YXAoc2VsZWN0QWxsU3RhdHVzID0+ICh0aGlzLnNlbGVjdEFsbFN0YXR1cyA9IHNlbGVjdEFsbFN0YXR1cykpLFxuICAgICAgcHVibGlzaFJlcGxheSgxKSxcbiAgICAgIHJlZkNvdW50KCksXG4gICAgKTtcbiAgICB0aGlzLmhhc0VuYWJsZWRPcHRpb25zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5hbGxPcHRpb25zJCxcbiAgICAgIHRoaXMuZmlsdGVyU3RyaW5nJCxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoW2FsbE9wdGlvbnNdKSA9PlxuICAgICAgICAgICEhYWxsT3B0aW9ucy5maWx0ZXIoKHsgdmlzaWJsZSwgZGlzYWJsZWQgfSkgPT4gdmlzaWJsZSAmJiAhZGlzYWJsZWQpXG4gICAgICAgICAgICAubGVuZ3RoLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgb3ZlcnJpZGUgb25TaG93T3B0aW9ucygpIHtcbiAgICBzdXBlci5vblNob3dPcHRpb25zKCk7XG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBvdmVycmlkZSBvbkhpZGVPcHRpb25zKCkge1xuICAgIHN1cGVyLm9uSGlkZU9wdGlvbnMoKTtcbiAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudCwgJ3dpZHRoJyk7XG4gIH1cblxuICBvdmVycmlkZSBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIHN1cGVyLm9uSW5wdXQoZXZlbnQpO1xuICAgIHRoaXMuc2V0SW5wdXRXaWR0aCgpO1xuICAgIHRoaXMudG9vbHRpcFJlZi51cGRhdGVQb3NpdGlvbigpO1xuICB9XG5cbiAgb25JbnB1dEZvY3VzKCkge1xuICAgIHRoaXMuZm9jdXNlZCA9IHRydWU7XG4gIH1cblxuICBvbklucHV0Qmx1cigpIHtcbiAgICB0aGlzLmZvY3VzZWQgPSBmYWxzZTtcbiAgICB0aGlzLmNsb3NlT3B0aW9uKCk7XG4gIH1cblxuICBvdmVycmlkZSBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoXG4gICAgICBldmVudC5rZXkgPT09ICdCYWNrc3BhY2UnICYmXG4gICAgICB0aGlzLmZpbHRlclN0cmluZyA9PT0gJycgJiZcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMubGVuZ3RoID4gMFxuICAgICkge1xuICAgICAgdGhpcy5yZW1vdmVWYWx1ZSh0aGlzLnNlbGVjdGVkVmFsdWVzW3RoaXMuc2VsZWN0ZWRWYWx1ZXMubGVuZ3RoIC0gMV0pO1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNcbiAgICAgICAgICAubWFwKHZhbHVlID0+IHRoaXMudHJhY2tGbih2YWx1ZSkpXG4gICAgICAgICAgLmluY2x1ZGVzKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5zZWxlY3RGb2N1c2VkT3B0aW9uKCk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN1cGVyLm9uS2V5RG93bihldmVudCk7XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWw6IFRbXSkge1xuICAgIHRoaXMudmFsdWUkJC5uZXh0KHZhbCB8fCBbXSk7XG4gICAgdGhpcy5yZXNldElucHV0KCk7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMudG9vbHRpcFJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgIH0pO1xuICB9XG5cbiAgc2VsZWN0T3B0aW9uKG9wdGlvbjogT3B0aW9uQ29tcG9uZW50PFQ+KSB7XG4gICAgaWYgKG9wdGlvbi5zZWxlY3RlZCkge1xuICAgICAgdGhpcy5yZW1vdmVWYWx1ZShvcHRpb24udmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFkZFZhbHVlKG9wdGlvbi52YWx1ZSk7XG4gICAgfVxuICAgIGNvbnN0IGlzQ3VzdG9tID0gIXRoaXMuY29udGVudE9wdGlvbnMuc29tZShcbiAgICAgICh7IHZhbHVlIH0pID0+IHZhbHVlID09PSBvcHRpb24udmFsdWUsXG4gICAgKTtcbiAgICBpZiAoaXNDdXN0b20pIHtcbiAgICAgIHRoaXMucmVzZXRGb2N1c2VkT3B0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgYWRkVmFsdWUodmFsdWU6IFQpIHtcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLnNlbGVjdGVkVmFsdWVzLmNvbmNhdCh2YWx1ZSk7XG4gICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2UodmFsdWVzKTtcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgdGhpcy5yZXNldElucHV0KCk7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnRvb2x0aXBSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZVZhbHVlKHZhbHVlOiBUKSB7XG4gICAgY29uc3QgdmFsdWVzID0gdGhpcy5zZWxlY3RlZFZhbHVlcy5maWx0ZXIoXG4gICAgICBpdGVtID0+IHRoaXMudHJhY2tGbihpdGVtKSAhPT0gdGhpcy50cmFja0ZuKHZhbHVlKSxcbiAgICApO1xuICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKHZhbHVlcyk7XG4gICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcbiAgICAgIHRoaXMucmVzZXRJbnB1dCgpO1xuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgdGhpcy50b29sdGlwUmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjbGVhclZhbHVlKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKFtdKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgb25TZWxlY3RBbGxDbGljaygpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2aXNpYmxlT3B0aW9uc1ZhbHVlID0gdGhpcy5hbGxPcHRpb25zXG4gICAgICAuZmlsdGVyKCh7IHZpc2libGUsIGRpc2FibGVkIH0pID0+IHZpc2libGUgJiYgIWRpc2FibGVkKVxuICAgICAgLm1hcCgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSk7XG4gICAgaWYgKHRoaXMuc2VsZWN0QWxsU3RhdHVzID09PSBTZWxlY3RBbGxTdGF0dXMuQ2hlY2tlZCkge1xuICAgICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2UoXG4gICAgICAgIHRoaXMuc25hcHNob3QudmFsdWUuZmlsdGVyKFxuICAgICAgICAgIHZhbHVlID0+ICF2aXNpYmxlT3B0aW9uc1ZhbHVlLmluY2x1ZGVzKHZhbHVlKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKFtcbiAgICAgICAgLi4ubmV3IFNldCh0aGlzLnNuYXBzaG90LnZhbHVlLmNvbmNhdCh2aXNpYmxlT3B0aW9uc1ZhbHVlKSksXG4gICAgICBdKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlc2V0SW5wdXQoKSB7XG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgdGhpcy5zZXRJbnB1dFdpZHRoKCk7XG4gICAgdGhpcy5maWx0ZXJTdHJpbmcgPSAnJztcbiAgfVxuXG4gIC8vIGNhbGN1bGF0ZSBpbnB1dCBlbGVtZW50IHdpZHRoIGFjY29yZGluZyB0byBpdHMgdmFsdWVcbiAgcHJpdmF0ZSBzZXRJbnB1dFdpZHRoKCkge1xuICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIXZhbHVlLmxlbmd0aCkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gJyc7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudCwgJ3dpZHRoJyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdmFsdWU7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgICAgIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAnd2lkdGgnLFxuICAgICAgICAgIGAke3RoaXMuaW5wdXRWYWx1ZU1pcnJvci5uYXRpdmVFbGVtZW50LnNjcm9sbFdpZHRofXB4YCxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBbY2xhc3NdPVwicm9vdENsYXNzXCJcbiAgI3NlbGVjdFJlZlxuICAjdG9vbHRpcFJlZj1cImF1aVRvb2x0aXBcIlxuICBbYXVpVG9vbHRpcF09XCJ0ZW1wbGF0ZVJlZlwiXG4gIFthdWlUb29sdGlwRGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgYXVpVG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tIHN0YXJ0XCJcbiAgYXVpVG9vbHRpcFR5cGU9XCJwbGFpblwiXG4gIChhdWlUb29sdGlwU2hvdyk9XCJvblNob3dPcHRpb25zKClcIlxuICAoYXVpVG9vbHRpcEhpZGUpPVwib25IaWRlT3B0aW9ucygpXCJcbiAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gIFtzdHlsZS5tYXgtaGVpZ2h0XT1cIm1heEhlaWdodFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJhdWktbXVsdGktc2VsZWN0X19zdWZmaXhcIj5cbiAgICA8c3BhbiBjbGFzcz1cImF1aS1tdWx0aS1zZWxlY3RfX2ljb24tY29udGFpbmVyXCI+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJhdWktbXVsdGktc2VsZWN0X19pbmRpY2F0b3JcIlxuICAgICAgICBbaWNvbl09XCJsb2FkaW5nID8gJ3NwaW5uZXInIDogJ2NhcmV0X2Rvd25fcydcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJhdWktbXVsdGktc2VsZWN0X19jbGVhclwiXG4gICAgICAgIGljb249XCJjbG9zZV9zbWFsbFwiXG4gICAgICAgIChjbGljayk9XCJjbGVhclZhbHVlKCRldmVudClcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgPC9zcGFuPlxuICA8L2Rpdj5cbiAgPHNwYW5cbiAgICBbaGlkZGVuXT1cInNlbGVjdGVkVmFsdWVzLmxlbmd0aCB8fCBpbnB1dFJlZi52YWx1ZS5sZW5ndGhcIlxuICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgncGxhY2Vob2xkZXInKVwiXG4gID5cbiAgICB7eyBwbGFjZWhvbGRlciB9fVxuICA8L3NwYW4+XG4gIDxhdWktdGFnXG4gICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBzZWxlY3RlZE9wdGlvbnMkIHwgYXN5bmM7IHRyYWNrQnk6IHRyYWNrQnlWYWx1ZVwiXG4gICAgdHlwZT1cImluZm9cIlxuICAgIFtyb3VuZF09XCJ0cnVlXCJcbiAgICBbYm9yZGVyXT1cInRydWVcIlxuICAgIFtzaXplXT1cInRhZ1NpemVcIlxuICAgIFtjbG9zZWFibGVdPVwiIWRpc2FibGVkXCJcbiAgICAoY2xvc2UpPVwicmVtb3ZlVmFsdWUob3B0aW9uLnZhbHVlKVwiXG4gICAgW25nQ2xhc3NdPVwidGFnQ2xhc3NGbiAmJiB0YWdDbGFzc0ZuKG9wdGlvbi5sYWJlbCwgb3B0aW9uLnZhbHVlKVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cImlzVGVtcGxhdGVSZWYob3B0aW9uLmxhYmVsKTsgZWxzZSBsYWJlbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJvcHRpb24ubGFiZWxcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIm9wdGlvbi5sYWJlbENvbnRleHRcIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2xhYmVsPlxuICAgICAge3sgb3B0aW9uLmxhYmVsIH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9hdWktdGFnPlxuICA8aW5wdXRcbiAgICAjaW5wdXRSZWZcbiAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgIFtyZWFkb25seV09XCJpbnB1dFJlYWRvbmx5XCJcbiAgICBbY2xhc3NdPVwiaW5wdXRDbGFzc1wiXG4gICAgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygpXCJcbiAgICAoYmx1cik9XCJvbklucHV0Qmx1cigpXCJcbiAgICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiXG4gICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gIC8+XG4gIDxzcGFuICNpbnB1dFZhbHVlTWlycm9yIFtjbGFzc109XCJiZW0uZWxlbWVudCgnbWlycm9yJylcIj5cbiAgICB7eyBpbnB1dFZhbHVlIH19XG4gIDwvc3Bhbj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RlbXBsYXRlUmVmPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJhdWktb3B0aW9uLWNvbnRhaW5lclwiXG4gICAgW3N0eWxlLm1pbldpZHRoXT1cImNvbnRhaW5lcldpZHRoXCJcbiAgICAobW91c2Vkb3duKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCJcbiAgPlxuICAgIDxkaXYgI29wdGlvbkxpc3RSZWYgY2xhc3M9XCJhdWktb3B0aW9uLWNvbnRhaW5lcl9fY29udGVudFwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIGFsbG93U2VsZWN0QWxsICYmXG4gICAgICAgICAgKGhhc0VuYWJsZWRPcHRpb25zJCB8IGFzeW5jKSAmJlxuICAgICAgICAgICgoaGFzVmlzaWJsZU9wdGlvbiQgfCBhc3luYykgfHxcbiAgICAgICAgICAgIChhbGxvd0NyZWF0ZSAmJiAoY3VzdG9tQ3JlYXRlZE9wdGlvbnMkIHwgYXN5bmMpLmxlbmd0aCkgfHxcbiAgICAgICAgICAgIChhbGxvd0NyZWF0ZSAmJiBmaWx0ZXJTdHJpbmcpKVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJhdWktb3B0aW9uXCJcbiAgICAgICAgICBbY2xhc3NdPVwiYmVtU2VsZWN0QWxsLmJsb2NrKHNpemUkIHwgYXN5bmMpXCJcbiAgICAgICAgICBbY2xhc3MuaXNEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgW2NsYXNzLmlzU2VsZWN0ZWRdPVwiISEoc2VsZWN0QWxsU3RhdHVzJCB8IGFzeW5jKVwiXG4gICAgICAgICAgW2NsYXNzLmlzTXVsdGldPVwidHJ1ZVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0QWxsQ2xpY2soKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8aSBjbGFzcz1cImF1aS1vcHRpb25fX3BvaW50ZXJcIj5cbiAgICAgICAgICAgIDxhdWktaWNvblxuICAgICAgICAgICAgICBbaWNvbl09XCJcbiAgICAgICAgICAgICAgICAoc2VsZWN0QWxsU3RhdHVzJCB8IGFzeW5jKSA9PT0gJ2NoZWNrZWQnXG4gICAgICAgICAgICAgICAgICA/ICdjaGVja19zJ1xuICAgICAgICAgICAgICAgICAgOiAnc3F1YXJlX3MnXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgIFtoaWRkZW5dPVwiIShzZWxlY3RBbGxTdGF0dXMkIHwgYXN5bmMpXCJcbiAgICAgICAgICAgID48L2F1aS1pY29uPlxuICAgICAgICAgIDwvaT5cbiAgICAgICAgICB7eyAnc2VsZWN0X2FsbCcgfCBhdWlJMThuIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aHIgY2xhc3M9XCJkaXZpZGVyXCIgLz5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPGF1aS1vcHRpb25cbiAgICAgICAgI2lucHV0dGluZ09wdGlvblxuICAgICAgICAqbmdJZj1cImFsbG93Q3JlYXRlICYmIGZpbHRlclN0cmluZyAmJiAhKGhhc01hdGNoZWRPcHRpb24kIHwgYXN5bmMpXCJcbiAgICAgICAgW3ZhbHVlXT1cImZpbHRlclN0cmluZ1wiXG4gICAgICA+XG4gICAgICAgIHt7IGZpbHRlclN0cmluZyB9fVxuICAgICAgPC9hdWktb3B0aW9uPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFsbG93Q3JlYXRlXCI+XG4gICAgICAgIDxhdWktb3B0aW9uXG4gICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBjdXN0b21DcmVhdGVkT3B0aW9ucyQgfCBhc3luY1wiXG4gICAgICAgICAgW2xhYmVsXT1cIm9wdGlvbi5sYWJlbFwiXG4gICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvbi52YWx1ZVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBvcHRpb24ubGFiZWwgfX1cbiAgICAgICAgPC9hdWktb3B0aW9uPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJcbiAgICAgICAgIShcbiAgICAgICAgICAoaGFzVmlzaWJsZU9wdGlvbiQgfCBhc3luYykgfHxcbiAgICAgICAgICAoYWxsb3dDcmVhdGUgJiYgKGN1c3RvbUNyZWF0ZWRPcHRpb25zJCB8IGFzeW5jKS5sZW5ndGgpIHx8XG4gICAgICAgICAgKGFsbG93Q3JlYXRlICYmIGZpbHRlclN0cmluZylcbiAgICAgICAgKVxuICAgICAgXCJcbiAgICAgIGNsYXNzPVwiYXVpLW9wdGlvbi1jb250YWluZXJfX3BsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJhdWktb3B0aW9uLXBsYWNlaG9sZGVyXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
306
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZWxlY3QvbXVsdGktc2VsZWN0L211bHRpLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvc2VsZWN0L211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFHTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQWMsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQ0wsR0FBRyxFQUNILGFBQWEsRUFDYixRQUFRLEVBQ1IsU0FBUyxFQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQU8sUUFBUSxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUNMLGVBQWUsR0FHaEIsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7QUF5QnpCLE1BQU0sT0FBTyxvQkFDWCxTQUFRLFVBQWtCO0lBdUYxQixZQUFZLEdBQXNCLEVBQW1CLFFBQW1CO1FBQ3RFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUR3QyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FB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NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUscUJBQXFCLENBQUM7NEJBQ25ELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxVQUFVOzRCQUNuQixXQUFXLHNCQUFzQjt5QkFDbEM7cUJBQ0Y7Z0lBbUJELFVBQVU7c0JBRFQsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlGLGNBQWM7c0JBRGpCLEtBQUs7Z0JBVU4sUUFBUTtzQkFEUCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSXZDLGdCQUFnQjtzQkFEZixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJM0MsWUFBWTtzQkFEZixXQUFXO3VCQUFDLGdCQUFnQjtnQkFNekIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBRdWVyeUxpc3QsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBtYXAsXG4gIHB1Ymxpc2hSZXBsYXksXG4gIHJlZkNvdW50LFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZVVudGlsLFxuICB0YXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgY3JlYXRlV2l0aE1heFJvd0NvdW50IH0gZnJvbSAnLi4vLi4vaW5wdXQvdGFncy1pbnB1dC93aXRoLW1heC1yb3ctY291bnQnO1xuaW1wb3J0IHsgQ29tcG9uZW50U2l6ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEJlbSwgYnVpbGRCZW0sIGNvZXJjZUF0dHJCb29sZWFuLCBjb2VyY2VTdHJpbmcgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBCYXNlU2VsZWN0IH0gZnJvbSAnLi4vYmFzZS1zZWxlY3QnO1xuaW1wb3J0IHsgT3B0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vb3B0aW9uL29wdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgU2VsZWN0QWxsU3RhdHVzLFxuICBTZWxlY3RGaWx0ZXJPcHRpb24sXG4gIFRhZ0NsYXNzRm4sXG59IGZyb20gJy4uL3NlbGVjdC50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1tdWx0aS1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vbXVsdGktc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXG4gICAgJy4uLy4uL2lucHV0L2lucHV0LmNvbXBvbmVudC5zY3NzJyxcbiAgICAnLi4vLi4vdGFnL3RhZy5jb21wb25lbnQuc2NzcycsXG4gICAgJy4vbXVsdGktc2VsZWN0LmNvbXBvbmVudC5zY3NzJyxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE11bHRpU2VsZWN0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQmFzZVNlbGVjdCxcbiAgICAgIHVzZUV4aXN0aW5nOiBNdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNdWx0aVNlbGVjdENvbXBvbmVudDxUID0gdW5rbm93bj5cbiAgZXh0ZW5kcyBCYXNlU2VsZWN0PFQsIFRbXT5cbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0XG57XG4gIGJlbTogQmVtID0gYnVpbGRCZW0oJ2F1aS1tdWx0aS1zZWxlY3QnKTtcbiAgYmVtU2VsZWN0QWxsOiBCZW0gPSBidWlsZEJlbSgnYXVpLW9wdGlvbicpO1xuICBzZWxlY3RlZE9wdGlvbnMkOiBPYnNlcnZhYmxlPEFycmF5PFNlbGVjdEZpbHRlck9wdGlvbjxUPj4+O1xuICBzZWxlY3RBbGxTdGF0dXMkOiBPYnNlcnZhYmxlPFNlbGVjdEFsbFN0YXR1cz47XG4gIHNlbGVjdEFsbFN0YXR1czogU2VsZWN0QWxsU3RhdHVzO1xuICBoYXNFbmFibGVkT3B0aW9ucyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgcHJpdmF0ZSBfYWxsb3dTZWxlY3RBbGwgPSBmYWxzZTtcbiAgb3ZlcnJpZGUgaXNNdWx0aSA9IHRydWU7XG4gIHNlbGVjdGVkVmFsdWVzOiBUW10gPSBbXTtcbiAgdmFsdWVzJCA9IHRoaXMudmFsdWUkJC5hc09ic2VydmFibGUoKTtcblxuICBASW5wdXQoKVxuICB0YWdDbGFzc0ZuOiBUYWdDbGFzc0ZuPFQ+O1xuXG4gIEBJbnB1dCgpXG4gIG1heFJvd0NvdW50ID0gMDtcblxuICBASW5wdXQoKVxuICBjdXN0b21Sb3dIZWlnaHQgPSAwOyAvLyAwOiB1c2UgZGVmYXVsdCBzdHlsZSBjb25zdCB2YWx1ZSwgPiAxOiBmb3IgYGBgdGFnQ2xhc3NGbmBgYCBtYXliZSBhZmZlY3QgbGluZUhlaWdodFxuXG4gIEBJbnB1dCgpXG4gIGdldCBhbGxvd1NlbGVjdEFsbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYWxsb3dTZWxlY3RBbGw7XG4gIH1cblxuICBzZXQgYWxsb3dTZWxlY3RBbGwodmFsOiBib29sZWFuIHwgJycpIHtcbiAgICB0aGlzLl9hbGxvd1NlbGVjdEFsbCA9IGNvZXJjZUF0dHJCb29sZWFuKHZhbCk7XG4gIH1cblxuICBAVmlld0NoaWxkKCdpbnB1dFJlZicsIHsgc3RhdGljOiB0cnVlIH0pXG4gIGlucHV0UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0VmFsdWVNaXJyb3InLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBpbnB1dFZhbHVlTWlycm9yOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLnBvc2l0aW9uJylcbiAgZ2V0IGhvc3RQb3NpdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy53aXRoTWF4Um93Q291bnQuaG9zdFBvc2l0aW9uKCk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLmRpc3BsYXknKVxuICBnZXQgaG9zdERpc3BsYXkoKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aE1heFJvd0NvdW50Lmhvc3REaXNwbGF5KCk7XG4gIH1cblxuICBpbnB1dFZhbHVlID0gJyc7XG5cbiAgZ2V0IHJvb3RDbGFzcygpIHtcbiAgICBjb25zdCBzaXplID0gdGhpcy5zaXplIHx8IENvbXBvbmVudFNpemUuTWVkaXVtO1xuICAgIHJldHVybiBgYXVpLWlucHV0ICR7dGhpcy5iZW0uYmxvY2soc2l6ZSl9ICR7XG4gICAgICB0aGlzLmRpc2FibGVkID8gJ2lzRGlzYWJsZWQnIDogJydcbiAgICB9ICR7dGhpcy5mb2N1c2VkID8gJ2lzRm9jdXNlZCcgOiAnJ30gJHtcbiAgICAgIHRoaXMuZGlzcGxheUNsZWFyQnRuID8gJ2lzQ2xlYXJhYmxlJyA6ICcnXG4gICAgfSAke3RoaXMubWF4Um93Q291bnQgPiAwID8gJ3dpdGhIZWlnaHRMaW1pdCcgOiAnJ31gO1xuICB9XG5cbiAgZ2V0IHRhZ1NpemUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gQ29tcG9uZW50U2l6ZS5MYXJnZVxuICAgICAgPyBDb21wb25lbnRTaXplLk1lZGl1bVxuICAgICAgOiBDb21wb25lbnRTaXplLk1pbmk7XG4gIH1cblxuICBnZXQgaW5wdXRDbGFzcygpIHtcbiAgICByZXR1cm4gYCR7dGhpcy5iZW0uZWxlbWVudCgnaW5wdXQnLCB7XG4gICAgICBoaWRkZW46IHRoaXMuaW5wdXRSZWFkb25seSxcbiAgICB9KX0gYXVpLXRhZyBhdWktdGFnLS0ke3RoaXMudGFnU2l6ZX1gO1xuICB9XG5cbiAgZ2V0IGRpc3BsYXlDbGVhckJ0bigpIHtcbiAgICByZXR1cm4gIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5jbGVhcmFibGUgJiYgdGhpcy5zZWxlY3RlZFZhbHVlcy5sZW5ndGg7XG4gIH1cblxuICBnZXQgbWF4SGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLndpdGhNYXhSb3dDb3VudC5tYXhIZWlnaHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgd2l0aE1heFJvd0NvdW50ID0gY3JlYXRlV2l0aE1heFJvd0NvdW50KHRoaXMpO1xuXG4gIGZvY3VzZWQgPSBmYWxzZTtcblxuICB0cmFja0J5VmFsdWUgPSAoXzogbnVtYmVyLCBpdGVtOiBTZWxlY3RGaWx0ZXJPcHRpb248VD4pID0+XG4gICAgdGhpcy50cmFja0ZuKGl0ZW0udmFsdWUpO1xuXG4gIGNvbnN0cnVjdG9yKGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xuICAgIHN1cGVyKGNkcik7XG4gICAgdGhpcy52YWx1ZXMkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQkKSkuc3Vic2NyaWJlKHZhbHVlcyA9PiB7XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gdmFsdWVzO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHN1cGVyLm5nQWZ0ZXJDb250ZW50SW5pdCgpO1xuXG4gICAgdGhpcy5zZWxlY3RlZE9wdGlvbnMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLnZhbHVlJCxcbiAgICAgIChcbiAgICAgICAgdGhpcy5jb250ZW50T3B0aW9ucy5jaGFuZ2VzIGFzIE9ic2VydmFibGU8UXVlcnlMaXN0PE9wdGlvbkNvbXBvbmVudDxUPj4+XG4gICAgICApLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCh0aGlzLmNvbnRlbnRPcHRpb25zKSxcbiAgICAgICAgc3dpdGNoTWFwKChvcHRpb25zOiBRdWVyeUxpc3Q8T3B0aW9uQ29tcG9uZW50PFQ+PikgPT5cbiAgICAgICAgICBvcHRpb25zLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gY29tYmluZUxhdGVzdChcbiAgICAgICAgICAgICAgICBbLi4ub3B0aW9uc11cbiAgICAgICAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChhLnNlbGVjdGVkICYmIGEuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAoYi5zZWxlY3RlZCAmJiBiLmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAubWFwKG9wdGlvbiA9PlxuICAgICAgICAgICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgICAgICAgICAgICBvcHRpb24udmFsdWUkLFxuICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbi5sYWJlbCQsXG4gICAgICAgICAgICAgICAgICAgICAgb3B0aW9uLmxhYmVsQ29udGV4dCQsXG4gICAgICAgICAgICAgICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgbWFwKChbdmFsdWUsIGxhYmVsLCBsYWJlbENvbnRleHRdKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsQ29udGV4dCxcbiAgICAgICAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICA6IG9mKFtdIGFzIEFycmF5PFNlbGVjdEZpbHRlck9wdGlvbjxUPj4pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbdmFsdWVzLCBvcHRpb25zXSkgPT5cbiAgICAgICAgdmFsdWVzLm1hcCh2YWx1ZSA9PiB7XG4gICAgICAgICAgY29uc3Qgb3B0aW9uID0gb3B0aW9ucy5maW5kKFxuICAgICAgICAgICAgb3B0aW9uID0+IHRoaXMudHJhY2tGbihvcHRpb24udmFsdWUpID09PSB0aGlzLnRyYWNrRm4odmFsdWUpLFxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIG9wdGlvblxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgbGFiZWw6IG9wdGlvbi5sYWJlbCB8fCBjb2VyY2VTdHJpbmcodGhpcy50cmFja0ZuKG9wdGlvbi52YWx1ZSkpLFxuICAgICAgICAgICAgICAgIGxhYmVsQ29udGV4dDogb3B0aW9uLmxhYmVsQ29udGV4dCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICBsYWJlbDpcbiAgICAgICAgICAgICAgICAgIHRoaXMubGFiZWxGbj8uKHZhbHVlKSB8fCBjb2VyY2VTdHJpbmcodGhpcy50cmFja0ZuKHZhbHVlKSksXG4gICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIH07XG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICAgIHB1Ymxpc2hSZXBsYXkoMSksXG4gICAgICByZWZDb3VudCgpLFxuICAgICk7XG4gIH1cblxuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgdGhpcy5zZWxlY3RBbGxTdGF0dXMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmFsbE9wdGlvbnMkLFxuICAgICAgdGhpcy5maWx0ZXJTdHJpbmckLFxuICAgIF0pLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKFthbGxPcHRpb25zXSkgPT5cbiAgICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgLi4uKGFsbE9wdGlvbnMgPz8gW10pXG4gICAgICAgICAgICAuZmlsdGVyKCh7IHZpc2libGUsIGRpc2FibGVkIH0pID0+IHZpc2libGUgJiYgIWRpc2FibGVkKVxuICAgICAgICAgICAgLm1hcCgoeyBzZWxlY3RlZCQgfSkgPT4gc2VsZWN0ZWQkKSxcbiAgICAgICAgXSksXG4gICAgICApLFxuICAgICAgbWFwKHN0YXR1c2VzID0+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBzdGF0dXNlcy5maWx0ZXIoaSA9PiBpKTtcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkLmxlbmd0aCA9PT0gMFxuICAgICAgICAgID8gU2VsZWN0QWxsU3RhdHVzLkVtcHR5XG4gICAgICAgICAgOiBzZWxlY3RlZC5sZW5ndGggIT09IHN0YXR1c2VzLmxlbmd0aFxuICAgICAgICAgID8gU2VsZWN0QWxsU3RhdHVzLkluZGV0ZXJtaW5hdGVcbiAgICAgICAgICA6IFNlbGVjdEFsbFN0YXR1cy5DaGVja2VkO1xuICAgICAgfSksXG4gICAgICBzdGFydFdpdGgoU2VsZWN0QWxsU3RhdHVzLkVtcHR5KSxcbiAgICAgIHRhcChzZWxlY3RBbGxTdGF0dXMgPT4gKHRoaXMuc2VsZWN0QWxsU3RhdHVzID0gc2VsZWN0QWxsU3RhdHVzKSksXG4gICAgICBwdWJsaXNoUmVwbGF5KDEpLFxuICAgICAgcmVmQ291bnQoKSxcbiAgICApO1xuICAgIHRoaXMuaGFzRW5hYmxlZE9wdGlvbnMkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLmFsbE9wdGlvbnMkLFxuICAgICAgdGhpcy5maWx0ZXJTdHJpbmckLFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIChbYWxsT3B0aW9uc10pID0+XG4gICAgICAgICAgISFhbGxPcHRpb25zLmZpbHRlcigoeyB2aXNpYmxlLCBkaXNhYmxlZCB9KSA9PiB2aXNpYmxlICYmICFkaXNhYmxlZClcbiAgICAgICAgICAgIC5sZW5ndGgsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBvdmVycmlkZSBvblNob3dPcHRpb25zKCkge1xuICAgIHN1cGVyLm9uU2hvd09wdGlvbnMoKTtcbiAgICB0aGlzLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG9uSGlkZU9wdGlvbnMoKSB7XG4gICAgc3VwZXIub25IaWRlT3B0aW9ucygpO1xuICAgIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlU3R5bGUodGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LCAnd2lkdGgnKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG9uSW5wdXQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgc3VwZXIub25JbnB1dChldmVudCk7XG4gICAgdGhpcy5zZXRJbnB1dFdpZHRoKCk7XG4gICAgdGhpcy50b29sdGlwUmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gIH1cblxuICBvbklucHV0Rm9jdXMoKSB7XG4gICAgdGhpcy5mb2N1c2VkID0gdHJ1ZTtcbiAgfVxuXG4gIG9uSW5wdXRCbHVyKCkge1xuICAgIHRoaXMuZm9jdXNlZCA9IGZhbHNlO1xuICAgIHRoaXMuY2xvc2VPcHRpb24oKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0JhY2tzcGFjZScgJiZcbiAgICAgIHRoaXMuZmlsdGVyU3RyaW5nID09PSAnJyAmJlxuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5sZW5ndGggPiAwXG4gICAgKSB7XG4gICAgICB0aGlzLnJlbW92ZVZhbHVlKHRoaXMuc2VsZWN0ZWRWYWx1ZXNbdGhpcy5zZWxlY3RlZFZhbHVlcy5sZW5ndGggLSAxXSk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc1xuICAgICAgICAgIC5tYXAodmFsdWUgPT4gdGhpcy50cmFja0ZuKHZhbHVlKSlcbiAgICAgICAgICAuaW5jbHVkZXMoKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSlcbiAgICAgICkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLnNlbGVjdEZvY3VzZWRPcHRpb24oKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3VwZXIub25LZXlEb3duKGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbDogVFtdKSB7XG4gICAgdGhpcy52YWx1ZSQkLm5leHQodmFsIHx8IFtdKTtcbiAgICB0aGlzLnJlc2V0SW5wdXQoKTtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgdGhpcy50b29sdGlwUmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgfSk7XG4gIH1cblxuICBpc09wdGlvblJlbW92YWJsZShvcHRpb246IFNlbGVjdEZpbHRlck9wdGlvbjxUPikge1xuICAgIGNvbnN0IGN1cnJPcHRpb24gPSB0aGlzLmNvbnRlbnRPcHRpb25zLmZpbmQoXG4gICAgICBvcHQgPT4gdGhpcy50cmFja0ZuKG9wdC52YWx1ZSkgPT09IHRoaXMudHJhY2tGbihvcHRpb24udmFsdWUpLFxuICAgICk7XG4gICAgcmV0dXJuICF0aGlzLmRpc2FibGVkICYmICFjdXJyT3B0aW9uLmRpc2FibGVkO1xuICB9XG5cbiAgc2VsZWN0T3B0aW9uKG9wdGlvbjogT3B0aW9uQ29tcG9uZW50PFQ+KSB7XG4gICAgaWYgKG9wdGlvbi5zZWxlY3RlZCkge1xuICAgICAgdGhpcy5yZW1vdmVWYWx1ZShvcHRpb24udmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmFkZFZhbHVlKG9wdGlvbi52YWx1ZSk7XG4gICAgfVxuICAgIGNvbnN0IGlzQ3VzdG9tID0gIXRoaXMuY29udGVudE9wdGlvbnMuc29tZShcbiAgICAgICh7IHZhbHVlIH0pID0+IHZhbHVlID09PSBvcHRpb24udmFsdWUsXG4gICAgKTtcbiAgICBpZiAoaXNDdXN0b20pIHtcbiAgICAgIHRoaXMucmVzZXRGb2N1c2VkT3B0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgYWRkVmFsdWUodmFsdWU6IFQpIHtcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLnNlbGVjdGVkVmFsdWVzLmNvbmNhdCh2YWx1ZSk7XG4gICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2UodmFsdWVzKTtcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgdGhpcy5yZXNldElucHV0KCk7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnRvb2x0aXBSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZVZhbHVlKHZhbHVlOiBUKSB7XG4gICAgY29uc3QgdmFsdWVzID0gdGhpcy5zZWxlY3RlZFZhbHVlcy5maWx0ZXIoXG4gICAgICBpdGVtID0+IHRoaXMudHJhY2tGbihpdGVtKSAhPT0gdGhpcy50cmFja0ZuKHZhbHVlKSxcbiAgICApO1xuICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKHZhbHVlcyk7XG4gICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcbiAgICAgIHRoaXMucmVzZXRJbnB1dCgpO1xuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgdGhpcy50b29sdGlwUmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjbGVhclZhbHVlKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKFtdKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgb25TZWxlY3RBbGxDbGljaygpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2aXNpYmxlT3B0aW9uc1ZhbHVlID0gdGhpcy5hbGxPcHRpb25zXG4gICAgICAuZmlsdGVyKCh7IHZpc2libGUsIGRpc2FibGVkIH0pID0+IHZpc2libGUgJiYgIWRpc2FibGVkKVxuICAgICAgLm1hcCgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSk7XG4gICAgaWYgKHRoaXMuc2VsZWN0QWxsU3RhdHVzID09PSBTZWxlY3RBbGxTdGF0dXMuQ2hlY2tlZCkge1xuICAgICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2UoXG4gICAgICAgIHRoaXMuc25hcHNob3QudmFsdWUuZmlsdGVyKFxuICAgICAgICAgIHZhbHVlID0+ICF2aXNpYmxlT3B0aW9uc1ZhbHVlLmluY2x1ZGVzKHZhbHVlKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKFtcbiAgICAgICAgLi4ubmV3IFNldCh0aGlzLnNuYXBzaG90LnZhbHVlLmNvbmNhdCh2aXNpYmxlT3B0aW9uc1ZhbHVlKSksXG4gICAgICBdKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlc2V0SW5wdXQoKSB7XG4gICAgdGhpcy5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgdGhpcy5zZXRJbnB1dFdpZHRoKCk7XG4gICAgdGhpcy5maWx0ZXJTdHJpbmcgPSAnJztcbiAgfVxuXG4gIC8vIGNhbGN1bGF0ZSBpbnB1dCBlbGVtZW50IHdpZHRoIGFjY29yZGluZyB0byBpdHMgdmFsdWVcbiAgcHJpdmF0ZSBzZXRJbnB1dFdpZHRoKCkge1xuICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIXZhbHVlLmxlbmd0aCkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gJyc7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudCwgJ3dpZHRoJyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdmFsdWU7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxuICAgICAgICAgIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAnd2lkdGgnLFxuICAgICAgICAgIGAke3RoaXMuaW5wdXRWYWx1ZU1pcnJvci5uYXRpdmVFbGVtZW50LnNjcm9sbFdpZHRofXB4YCxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBbY2xhc3NdPVwicm9vdENsYXNzXCJcbiAgI3NlbGVjdFJlZlxuICAjdG9vbHRpcFJlZj1cImF1aVRvb2x0aXBcIlxuICBbYXVpVG9vbHRpcF09XCJ0ZW1wbGF0ZVJlZlwiXG4gIFthdWlUb29sdGlwRGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgYXVpVG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tIHN0YXJ0XCJcbiAgYXVpVG9vbHRpcFR5cGU9XCJwbGFpblwiXG4gIChhdWlUb29sdGlwU2hvdyk9XCJvblNob3dPcHRpb25zKClcIlxuICAoYXVpVG9vbHRpcEhpZGUpPVwib25IaWRlT3B0aW9ucygpXCJcbiAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gIFtzdHlsZS5tYXgtaGVpZ2h0XT1cIm1heEhlaWdodFwiXG4+XG4gIDxkaXYgY2xhc3M9XCJhdWktbXVsdGktc2VsZWN0X19zdWZmaXhcIj5cbiAgICA8c3BhbiBjbGFzcz1cImF1aS1tdWx0aS1zZWxlY3RfX2ljb24tY29udGFpbmVyXCI+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJhdWktbXVsdGktc2VsZWN0X19pbmRpY2F0b3JcIlxuICAgICAgICBbaWNvbl09XCJsb2FkaW5nID8gJ3NwaW5uZXInIDogJ2NhcmV0X2Rvd25fcydcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgY2xhc3M9XCJhdWktbXVsdGktc2VsZWN0X19jbGVhclwiXG4gICAgICAgIGljb249XCJjbG9zZV9zbWFsbFwiXG4gICAgICAgIChjbGljayk9XCJjbGVhclZhbHVlKCRldmVudClcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgPC9zcGFuPlxuICA8L2Rpdj5cbiAgPHNwYW5cbiAgICBbaGlkZGVuXT1cInNlbGVjdGVkVmFsdWVzLmxlbmd0aCB8fCBpbnB1dFJlZi52YWx1ZS5sZW5ndGhcIlxuICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgncGxhY2Vob2xkZXInKVwiXG4gID5cbiAgICB7eyBwbGFjZWhvbGRlciB9fVxuICA8L3NwYW4+XG4gIDxhdWktdGFnXG4gICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBzZWxlY3RlZE9wdGlvbnMkIHwgYXN5bmM7IHRyYWNrQnk6IHRyYWNrQnlWYWx1ZVwiXG4gICAgdHlwZT1cImluZm9cIlxuICAgIFtyb3VuZF09XCJ0cnVlXCJcbiAgICBbYm9yZGVyXT1cInRydWVcIlxuICAgIFtzaXplXT1cInRhZ1NpemVcIlxuICAgIFtjbG9zZWFibGVdPVwiaXNPcHRpb25SZW1vdmFibGUob3B0aW9uKVwiXG4gICAgKGNsb3NlKT1cInJlbW92ZVZhbHVlKG9wdGlvbi52YWx1ZSlcIlxuICAgIFtuZ0NsYXNzXT1cInRhZ0NsYXNzRm4gJiYgdGFnQ2xhc3NGbihvcHRpb24ubGFiZWwsIG9wdGlvbi52YWx1ZSlcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJpc1RlbXBsYXRlUmVmKG9wdGlvbi5sYWJlbCk7IGVsc2UgbGFiZWxcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwib3B0aW9uLmxhYmVsXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJvcHRpb24ubGFiZWxDb250ZXh0XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNsYWJlbD5cbiAgICAgIHt7IG9wdGlvbi5sYWJlbCB9fVxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvYXVpLXRhZz5cbiAgPGlucHV0XG4gICAgI2lucHV0UmVmXG4gICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICBbcmVhZG9ubHldPVwiaW5wdXRSZWFkb25seVwiXG4gICAgW2NsYXNzXT1cImlucHV0Q2xhc3NcIlxuICAgIChmb2N1cyk9XCJvbklucHV0Rm9jdXMoKVwiXG4gICAgKGJsdXIpPVwib25JbnB1dEJsdXIoKVwiXG4gICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxuICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxuICAvPlxuICA8c3BhbiAjaW5wdXRWYWx1ZU1pcnJvciBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ21pcnJvcicpXCI+XG4gICAge3sgaW5wdXRWYWx1ZSB9fVxuICA8L3NwYW4+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZVJlZj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYXVpLW9wdGlvbi1jb250YWluZXJcIlxuICAgIFtzdHlsZS5taW5XaWR0aF09XCJjb250YWluZXJXaWR0aFwiXG4gICAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID5cbiAgICA8ZGl2ICNvcHRpb25MaXN0UmVmIGNsYXNzPVwiYXVpLW9wdGlvbi1jb250YWluZXJfX2NvbnRlbnRcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICBhbGxvd1NlbGVjdEFsbCAmJlxuICAgICAgICAgIChoYXNFbmFibGVkT3B0aW9ucyQgfCBhc3luYykgJiZcbiAgICAgICAgICAoKGhhc1Zpc2libGVPcHRpb24kIHwgYXN5bmMpIHx8XG4gICAgICAgICAgICAoYWxsb3dDcmVhdGUgJiYgKGN1c3RvbUNyZWF0ZWRPcHRpb25zJCB8IGFzeW5jKS5sZW5ndGgpIHx8XG4gICAgICAgICAgICAoYWxsb3dDcmVhdGUgJiYgZmlsdGVyU3RyaW5nKSlcbiAgICAgICAgXCJcbiAgICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYXVpLW9wdGlvblwiXG4gICAgICAgICAgW2NsYXNzXT1cImJlbVNlbGVjdEFsbC5ibG9jayhzaXplJCB8IGFzeW5jKVwiXG4gICAgICAgICAgW2NsYXNzLmlzRGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIFtjbGFzcy5pc1NlbGVjdGVkXT1cIiEhKHNlbGVjdEFsbFN0YXR1cyQgfCBhc3luYylcIlxuICAgICAgICAgIFtjbGFzcy5pc011bHRpXT1cInRydWVcIlxuICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdEFsbENsaWNrKClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgY2xhc3M9XCJhdWktb3B0aW9uX19wb2ludGVyXCI+XG4gICAgICAgICAgICA8YXVpLWljb25cbiAgICAgICAgICAgICAgW2ljb25dPVwiXG4gICAgICAgICAgICAgICAgKHNlbGVjdEFsbFN0YXR1cyQgfCBhc3luYykgPT09ICdjaGVja2VkJ1xuICAgICAgICAgICAgICAgICAgPyAnY2hlY2tfcydcbiAgICAgICAgICAgICAgICAgIDogJ3NxdWFyZV9zJ1xuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICBbaGlkZGVuXT1cIiEoc2VsZWN0QWxsU3RhdHVzJCB8IGFzeW5jKVwiXG4gICAgICAgICAgICA+PC9hdWktaWNvbj5cbiAgICAgICAgICA8L2k+XG4gICAgICAgICAge3sgJ3NlbGVjdF9hbGwnIHwgYXVpSTE4biB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGhyIGNsYXNzPVwiZGl2aWRlclwiIC8+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxhdWktb3B0aW9uXG4gICAgICAgICNpbnB1dHRpbmdPcHRpb25cbiAgICAgICAgKm5nSWY9XCJhbGxvd0NyZWF0ZSAmJiBmaWx0ZXJTdHJpbmcgJiYgIShoYXNNYXRjaGVkT3B0aW9uJCB8IGFzeW5jKVwiXG4gICAgICAgIFt2YWx1ZV09XCJmaWx0ZXJTdHJpbmdcIlxuICAgICAgPlxuICAgICAgICB7eyBmaWx0ZXJTdHJpbmcgfX1cbiAgICAgIDwvYXVpLW9wdGlvbj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhbGxvd0NyZWF0ZVwiPlxuICAgICAgICA8YXVpLW9wdGlvblxuICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgY3VzdG9tQ3JlYXRlZE9wdGlvbnMkIHwgYXN5bmNcIlxuICAgICAgICAgIFtsYWJlbF09XCJvcHRpb24ubGFiZWxcIlxuICAgICAgICAgIFt2YWx1ZV09XCJvcHRpb24udmFsdWVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgb3B0aW9uLmxhYmVsIH19XG4gICAgICAgIDwvYXVpLW9wdGlvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiXG4gICAgICAgICEoXG4gICAgICAgICAgKGhhc1Zpc2libGVPcHRpb24kIHwgYXN5bmMpIHx8XG4gICAgICAgICAgKGFsbG93Q3JlYXRlICYmIChjdXN0b21DcmVhdGVkT3B0aW9ucyQgfCBhc3luYykubGVuZ3RoKSB8fFxuICAgICAgICAgIChhbGxvd0NyZWF0ZSAmJiBmaWx0ZXJTdHJpbmcpXG4gICAgICAgIClcbiAgICAgIFwiXG4gICAgICBjbGFzcz1cImF1aS1vcHRpb24tY29udGFpbmVyX19wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXVpLW9wdGlvbi1wbGFjZWhvbGRlclwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19