@fundamental-ngx/core 0.47.0-rc.19 → 0.47.0-rc.20

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.
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable @typescript-eslint/member-ordering */
2
2
  import { LiveAnnouncer } from '@angular/cdk/a11y';
3
- import { Directive, HostListener, inject, Input } from '@angular/core';
3
+ import { ContentChildren, Directive, HostListener, inject, Input, QueryList } from '@angular/core';
4
4
  import { KeyUtil } from '@fundamental-ngx/cdk/utils';
5
+ import { TokenComponent } from '@fundamental-ngx/core/token';
5
6
  import { resolveTranslationSyncFn } from '@fundamental-ngx/i18n';
6
7
  import * as i0 from "@angular/core";
7
8
  export class MultiAnnouncerDirective {
@@ -35,13 +36,15 @@ export class MultiAnnouncerDirective {
35
36
  count: this.multiAnnouncerOptions.length
36
37
  }));
37
38
  }
39
+ this._buildAnnouncement(this._resolveTranslation('coreMultiInput.navigateSelectionsWithArrows'));
38
40
  if (!this._resultsAnnounced) {
39
- this._buildAnnouncement(this._resolveTranslation('coreMultiInput.navigateSelectionsWithArrows'));
40
41
  this._noResultsAnnounced = false;
41
42
  this._resultsAnnounced = true;
42
43
  }
43
44
  }
44
- this._buildAnnouncement(this._resolveTranslation('coreMultiInput.escapeNavigateTokens'));
45
+ if (this._tokens && this._tokens.length) {
46
+ this._buildAnnouncement(this._resolveTranslation('coreMultiInput.escapeNavigateTokens'));
47
+ }
45
48
  this._makeAnnouncement(this._announcement);
46
49
  }
47
50
  }
@@ -56,7 +59,7 @@ export class MultiAnnouncerDirective {
56
59
  });
57
60
  }
58
61
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: MultiAnnouncerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
59
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: MultiAnnouncerDirective, isStandalone: true, selector: "[fdMultiAnnouncer]", inputs: { multiAnnouncerOptions: "multiAnnouncerOptions" }, host: { listeners: { "keyup": "_makeSearchTermChangeAnnouncements($event)" } }, exportAs: ["fdMultiAnnouncer"], ngImport: i0 }); }
62
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: MultiAnnouncerDirective, isStandalone: true, selector: "[fdMultiAnnouncer]", inputs: { multiAnnouncerOptions: "multiAnnouncerOptions" }, host: { listeners: { "keyup": "_makeSearchTermChangeAnnouncements($event)" } }, queries: [{ propertyName: "_tokens", predicate: TokenComponent, descendants: true }], exportAs: ["fdMultiAnnouncer"], ngImport: i0 }); }
60
63
  }
61
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: MultiAnnouncerDirective, decorators: [{
62
65
  type: Directive,
@@ -67,8 +70,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImpor
67
70
  }]
68
71
  }], propDecorators: { multiAnnouncerOptions: [{
69
72
  type: Input
73
+ }], _tokens: [{
74
+ type: ContentChildren,
75
+ args: [TokenComponent, { descendants: true }]
70
76
  }], _makeSearchTermChangeAnnouncements: [{
71
77
  type: HostListener,
72
78
  args: ['keyup', ['$event']]
73
79
  }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktYW5ub3VuY2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL211bHRpLWNvbWJvYm94L211bHRpLWFubm91bmNlci9tdWx0aS1hbm5vdW5jZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyx1QkFBdUI7SUFMcEM7UUFVSSxjQUFjO1FBQ04sd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRXBDLGNBQWM7UUFDTixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFbEMsY0FBYztRQUNOLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBRTNCLGNBQWM7UUFDRyxtQkFBYyxHQUFrQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFdkUsY0FBYztRQUNOLHdCQUFtQixHQUFHLHdCQUF3QixFQUFFLENBQUM7S0E2QzVEO0lBM0NHLGNBQWM7SUFFTixrQ0FBa0MsQ0FBQyxLQUFvQjtRQUMzRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFO1lBQ2pGLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7Z0JBQ2pFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDO2dCQUM5RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO2FBQ2xDO2lCQUFNLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRTtnQkFDMUMsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtvQkFDekMsSUFBSSxDQUFDLGtCQUFrQixDQUNuQixJQUFJLENBQUMsbUJBQW1CLENBQUMseUNBQXlDLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FDcEYsQ0FBQztpQkFDTDtxQkFBTTtvQkFDSCxJQUFJLENBQUMsa0JBQWtCLENBQ25CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx1Q0FBdUMsRUFBRTt3QkFDOUQsS0FBSyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNO3FCQUMzQyxDQUFDLENBQ0wsQ0FBQztpQkFDTDtnQkFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO29CQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDZDQUE2QyxDQUFDLENBQUMsQ0FBQztvQkFDakcsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztvQkFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztpQkFDakM7YUFDSjtZQUNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMscUNBQXFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDOUM7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNOLGtCQUFrQixDQUFDLE9BQWU7UUFDdEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sR0FBRyxHQUFHLENBQUM7SUFDNUQsQ0FBQztJQUVELGNBQWM7SUFDTixLQUFLLENBQUMsaUJBQWlCLENBQUMsT0FBZTtRQUMzQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQy9ELElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0E5RFEsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ25COzhCQUlHLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFvQkUsa0NBQWtDO3NCQUR6QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmcgKi9cbmltcG9ydCB7IExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS2V5VXRpbCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IHJlc29sdmVUcmFuc2xhdGlvblN5bmNGbiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkTXVsdGlBbm5vdW5jZXJdJyxcbiAgICBleHBvcnRBczogJ2ZkTXVsdGlBbm5vdW5jZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTXVsdGlBbm5vdW5jZXJEaXJlY3RpdmUge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQElucHV0KClcbiAgICBtdWx0aUFubm91bmNlck9wdGlvbnM6IHVua25vd25bXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbm9SZXN1bHRzQW5ub3VuY2VkID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Jlc3VsdHNBbm5vdW5jZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYW5ub3VuY2VtZW50ID0gJyc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2xpdmVBbm5vdW5jZXI6IExpdmVBbm5vdW5jZXIgPSBpbmplY3QoTGl2ZUFubm91bmNlcik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Jlc29sdmVUcmFuc2xhdGlvbiA9IHJlc29sdmVUcmFuc2xhdGlvblN5bmNGbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gICAgcHJpdmF0ZSBfbWFrZVNlYXJjaFRlcm1DaGFuZ2VBbm5vdW5jZW1lbnRzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChLZXlVdGlsLmlzS2V5VHlwZShldmVudCwgJ2FscGhhYmV0aWNhbCcpIHx8IEtleVV0aWwuaXNLZXlUeXBlKGV2ZW50LCAnbnVtZXJpYycpKSB7XG4gICAgICAgICAgICB0aGlzLl9saXZlQW5ub3VuY2VyLmNsZWFyKCk7XG4gICAgICAgICAgICBpZiAoIXRoaXMubXVsdGlBbm5vdW5jZXJPcHRpb25zLmxlbmd0aCAmJiAhdGhpcy5fbm9SZXN1bHRzQW5ub3VuY2VkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYnVpbGRBbm5vdW5jZW1lbnQodGhpcy5fcmVzb2x2ZVRyYW5zbGF0aW9uKCdjb3JlTXVsdGlJbnB1dC5ub1Jlc3VsdHMnKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbm9SZXN1bHRzQW5ub3VuY2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLl9yZXN1bHRzQW5ub3VuY2VkID0gZmFsc2U7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMubXVsdGlBbm5vdW5jZXJPcHRpb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLm11bHRpQW5ub3VuY2VyT3B0aW9ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fYnVpbGRBbm5vdW5jZW1lbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZXNvbHZlVHJhbnNsYXRpb24oJ2NvcmVNdWx0aUlucHV0LmNvdW50TGlzdFJlc3VsdHNTaW5ndWxhcicsIHsgY291bnQ6IDEgfSlcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9idWlsZEFubm91bmNlbWVudChcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3Jlc29sdmVUcmFuc2xhdGlvbignY29yZU11bHRpSW5wdXQuY291bnRMaXN0UmVzdWx0c1BsdXJhbCcsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudDogdGhpcy5tdWx0aUFubm91bmNlck9wdGlvbnMubGVuZ3RoXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuX3Jlc3VsdHNBbm5vdW5jZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fYnVpbGRBbm5vdW5jZW1lbnQodGhpcy5fcmVzb2x2ZVRyYW5zbGF0aW9uKCdjb3JlTXVsdGlJbnB1dC5uYXZpZ2F0ZVNlbGVjdGlvbnNXaXRoQXJyb3dzJykpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ub1Jlc3VsdHNBbm5vdW5jZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fcmVzdWx0c0Fubm91bmNlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5fYnVpbGRBbm5vdW5jZW1lbnQodGhpcy5fcmVzb2x2ZVRyYW5zbGF0aW9uKCdjb3JlTXVsdGlJbnB1dC5lc2NhcGVOYXZpZ2F0ZVRva2VucycpKTtcbiAgICAgICAgICAgIHRoaXMuX21ha2VBbm5vdW5jZW1lbnQodGhpcy5fYW5ub3VuY2VtZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYnVpbGRBbm5vdW5jZW1lbnQobWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Fubm91bmNlbWVudCA9IHRoaXMuX2Fubm91bmNlbWVudCArIG1lc3NhZ2UgKyAnICc7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGFzeW5jIF9tYWtlQW5ub3VuY2VtZW50KG1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLl9saXZlQW5ub3VuY2VyLmFubm91bmNlKG1lc3NhZ2UsICdhc3NlcnRpdmUnKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Fubm91bmNlbWVudCA9ICcnO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktYW5ub3VuY2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL211bHRpLWNvbWJvYm94L211bHRpLWFubm91bmNlci9tdWx0aS1hbm5vdW5jZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyx1QkFBdUI7SUFMcEM7UUFjSSxjQUFjO1FBQ04sd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRXBDLGNBQWM7UUFDTixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFbEMsY0FBYztRQUNOLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBRTNCLGNBQWM7UUFDRyxtQkFBYyxHQUFrQixNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFdkUsY0FBYztRQUNOLHdCQUFtQixHQUFHLHdCQUF3QixFQUFFLENBQUM7S0ErQzVEO0lBN0NHLGNBQWM7SUFFTixrQ0FBa0MsQ0FBQyxLQUFvQjtRQUMzRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFO1lBQ2pGLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7Z0JBQ2pFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDO2dCQUM5RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO2FBQ2xDO2lCQUFNLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBRTtnQkFDMUMsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtvQkFDekMsSUFBSSxDQUFDLGtCQUFrQixDQUNuQixJQUFJLENBQUMsbUJBQW1CLENBQUMseUNBQXlDLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FDcEYsQ0FBQztpQkFDTDtxQkFBTTtvQkFDSCxJQUFJLENBQUMsa0JBQWtCLENBQ25CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx1Q0FBdUMsRUFBRTt3QkFDOUQsS0FBSyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNO3FCQUMzQyxDQUFDLENBQ0wsQ0FBQztpQkFDTDtnQkFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDZDQUE2QyxDQUFDLENBQUMsQ0FBQztnQkFDakcsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtvQkFDekIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztvQkFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztpQkFDakM7YUFDSjtZQUNELElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDckMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDLENBQUM7YUFDNUY7WUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQzlDO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDTixrQkFBa0IsQ0FBQyxPQUFlO1FBQ3RDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLEdBQUcsR0FBRyxDQUFDO0lBQzVELENBQUM7SUFFRCxjQUFjO0lBQ04sS0FBSyxDQUFDLGlCQUFpQixDQUFDLE9BQWU7UUFDM0MsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUMvRCxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBcEVRLHVCQUF1QjtrR0FBdkIsdUJBQXVCLGtQQU1mLGNBQWM7OzJGQU50Qix1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ25COzhCQUlHLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFLRSxPQUFPO3NCQURkLGVBQWU7dUJBQUMsY0FBYyxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFvQjlDLGtDQUFrQztzQkFEekMsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbWVtYmVyLW9yZGVyaW5nICovXG5pbXBvcnQgeyBMaXZlQW5ub3VuY2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbnB1dCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLZXlVdGlsIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgVG9rZW5Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdG9rZW4nO1xuaW1wb3J0IHsgcmVzb2x2ZVRyYW5zbGF0aW9uU3luY0ZuIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmRNdWx0aUFubm91bmNlcl0nLFxuICAgIGV4cG9ydEFzOiAnZmRNdWx0aUFubm91bmNlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBNdWx0aUFubm91bmNlckRpcmVjdGl2ZSB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASW5wdXQoKVxuICAgIG11bHRpQW5ub3VuY2VyT3B0aW9uczogdW5rbm93bltdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkcmVuKFRva2VuQ29tcG9uZW50LCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gICAgcHJpdmF0ZSBfdG9rZW5zOiBRdWVyeUxpc3Q8VG9rZW5Db21wb25lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9ub1Jlc3VsdHNBbm5vdW5jZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVzdWx0c0Fubm91bmNlZCA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hbm5vdW5jZW1lbnQgPSAnJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbGl2ZUFubm91bmNlcjogTGl2ZUFubm91bmNlciA9IGluamVjdChMaXZlQW5ub3VuY2VyKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVzb2x2ZVRyYW5zbGF0aW9uID0gcmVzb2x2ZVRyYW5zbGF0aW9uU3luY0ZuKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleXVwJywgWyckZXZlbnQnXSlcbiAgICBwcml2YXRlIF9tYWtlU2VhcmNoVGVybUNoYW5nZUFubm91bmNlbWVudHMoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlUeXBlKGV2ZW50LCAnYWxwaGFiZXRpY2FsJykgfHwgS2V5VXRpbC5pc0tleVR5cGUoZXZlbnQsICdudW1lcmljJykpIHtcbiAgICAgICAgICAgIHRoaXMuX2xpdmVBbm5vdW5jZXIuY2xlYXIoKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5tdWx0aUFubm91bmNlck9wdGlvbnMubGVuZ3RoICYmICF0aGlzLl9ub1Jlc3VsdHNBbm5vdW5jZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9idWlsZEFubm91bmNlbWVudCh0aGlzLl9yZXNvbHZlVHJhbnNsYXRpb24oJ2NvcmVNdWx0aUlucHV0Lm5vUmVzdWx0cycpKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9ub1Jlc3VsdHNBbm5vdW5jZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Jlc3VsdHNBbm5vdW5jZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5tdWx0aUFubm91bmNlck9wdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubXVsdGlBbm5vdW5jZXJPcHRpb25zLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9idWlsZEFubm91bmNlbWVudChcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3Jlc29sdmVUcmFuc2xhdGlvbignY29yZU11bHRpSW5wdXQuY291bnRMaXN0UmVzdWx0c1Npbmd1bGFyJywgeyBjb3VudDogMSB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2J1aWxkQW5ub3VuY2VtZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fcmVzb2x2ZVRyYW5zbGF0aW9uKCdjb3JlTXVsdGlJbnB1dC5jb3VudExpc3RSZXN1bHRzUGx1cmFsJywge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50OiB0aGlzLm11bHRpQW5ub3VuY2VyT3B0aW9ucy5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuX2J1aWxkQW5ub3VuY2VtZW50KHRoaXMuX3Jlc29sdmVUcmFuc2xhdGlvbignY29yZU11bHRpSW5wdXQubmF2aWdhdGVTZWxlY3Rpb25zV2l0aEFycm93cycpKTtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuX3Jlc3VsdHNBbm5vdW5jZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbm9SZXN1bHRzQW5ub3VuY2VkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3Jlc3VsdHNBbm5vdW5jZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLl90b2tlbnMgJiYgdGhpcy5fdG9rZW5zLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2J1aWxkQW5ub3VuY2VtZW50KHRoaXMuX3Jlc29sdmVUcmFuc2xhdGlvbignY29yZU11bHRpSW5wdXQuZXNjYXBlTmF2aWdhdGVUb2tlbnMnKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9tYWtlQW5ub3VuY2VtZW50KHRoaXMuX2Fubm91bmNlbWVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2J1aWxkQW5ub3VuY2VtZW50KG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9hbm5vdW5jZW1lbnQgPSB0aGlzLl9hbm5vdW5jZW1lbnQgKyBtZXNzYWdlICsgJyAnO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBhc3luYyBfbWFrZUFubm91bmNlbWVudChtZXNzYWdlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5fbGl2ZUFubm91bmNlci5hbm5vdW5jZShtZXNzYWdlLCAnYXNzZXJ0aXZlJykudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9hbm5vdW5jZW1lbnQgPSAnJztcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19