@snabcentr/client-ui 4.14.1 → 4.14.2

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,12 +1,13 @@
1
+ import { Clipboard } from '@angular/cdk/clipboard';
1
2
  import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
2
3
  import { toSignal } from '@angular/core/rxjs-interop';
3
- import { WA_NAVIGATOR, WA_WINDOW } from '@ng-web-apis/common';
4
+ import { WA_WINDOW } from '@ng-web-apis/common';
4
5
  import { IS_RUNNING_ON_TERMINAL, IS_SERVER, ScUserMetrikaGoalsEnum, ScUserMetrikaService } from '@snabcentr/client-core';
5
6
  import { TUI_WINDOW_SIZE } from '@taiga-ui/cdk';
6
7
  import { TuiAlertService, TuiButton, TuiDialogService, TuiIconPipe } from '@taiga-ui/core';
7
8
  import { POLYMORPHEUS_CONTEXT, PolymorpheusComponent } from '@taiga-ui/polymorpheus';
8
9
  import { QRCodeModule } from 'angularx-qrcode';
9
- import { map, noop, of } from 'rxjs';
10
+ import { map, of } from 'rxjs';
10
11
  import { ScEmailLinkDirective } from '../../directives';
11
12
  import { ScQRCodeDialogComponent } from '../../qrcode';
12
13
  import * as i0 from "@angular/core";
@@ -27,9 +28,9 @@ export class ScShareDialogComponent {
27
28
  */
28
29
  this.context = inject(POLYMORPHEUS_CONTEXT);
29
30
  /**
30
- * Ссылка на объект навигатора браузера.
31
+ * Сервис копирования текста в буфер обмена.
31
32
  */
32
- this.navigator = inject(WA_NAVIGATOR);
33
+ this.clipboard = inject(Clipboard);
33
34
  /**
34
35
  * Ссылка на объект окна браузера.
35
36
  */
@@ -92,8 +93,12 @@ export class ScShareDialogComponent {
92
93
  */
93
94
  copyShareLink() {
94
95
  this.emitShareClick('copy_to_clipboard');
95
- this.navigator.clipboard.writeText(this.shareUrl).catch(noop);
96
- this.alerts.open('Ссылка скопирована в буфер обмена.', { appearance: 'positive' }).subscribe();
96
+ if (this.clipboard.copy(this.shareUrl)) {
97
+ this.alerts.open('Ссылка скопирована в буфер обмена.', { appearance: 'positive' }).subscribe();
98
+ }
99
+ else {
100
+ this.alerts.open('Не удалось скопировать ссылку в буфер обмена.', { appearance: 'negative' }).subscribe();
101
+ }
97
102
  }
98
103
  /**
99
104
  * Открывает диалоговое окно с QR-кодом ссылки.
@@ -131,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
131
136
  type: Component,
132
137
  args: [{ standalone: true, selector: 'sc-share-dialog', imports: [TuiButton, TuiIconPipe, ScEmailLinkDirective, QRCodeModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (terminal.isRunningOnTerminal) {\n <p class=\"-mt-2 mb-3 text-tui-text-02\">\u0421\u043A\u0430\u043D\u0438\u0440\u0443\u0439\u0442\u0435 QR-\u043A\u043E\u0434.</p>\n <qrcode\n [margin]=\"0\"\n [qrdata]=\"shareUrl\"\n [width]=\"250\"\n elementType=\"img\"\n ></qrcode>\n} @else {\n @let isRow = viewMode() === 'row';\n @let appearance = isRow ? 'flat' : 'outline';\n @let buttonClass = isRow ? 'button _row' : 'button w-full !justify-start';\n @let iconClass = isRow ? '!m-0 !size-8' : '!m-0 !size-6';\n @let iconSize = isRow ? 32 : 24;\n\n <div\n class=\"gap-2\"\n [class.flex]=\"isRow\"\n [class.grid]=\"!isRow\"\n [class.grid-cols-2]=\"!isRow\"\n >\n <a\n tuiButton\n size=\"m\"\n scEmailLink\n linkLocation=\"share-link\"\n automation-id=\"sc-share-dialog__email\"\n [appearance]=\"appearance\"\n [class]=\"buttonClass\"\n [href]=\"emailLink\"\n >\n <img\n [src]=\"'@tui.sc.img.email' | tuiIcon\"\n alt=\"Email\"\n [width]=\"iconSize\"\n [height]=\"iconSize\"\n [class]=\"iconClass\"\n />\n <span>Email</span>\n </a>\n <a\n tuiButton\n size=\"m\"\n target=\"_blank\"\n automation-id=\"sc-share-dialog__vk\"\n [appearance]=\"appearance\"\n [class]=\"buttonClass\"\n [href]=\"vkLink\"\n (click)=\"$event.preventDefault(); openShareWindow(vkLink, 'vk')\"\n >\n <img\n [src]=\"'@tui.sc.img.vk' | tuiIcon\"\n alt=\"\u0412\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u0435\"\n [width]=\"iconSize\"\n [height]=\"iconSize\"\n [class]=\"iconClass\"\n />\n <span>\u0412\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u0435</span>\n </a>\n <a\n tuiButton\n size=\"m\"\n target=\"_blank\"\n automation-id=\"sc-share-dialog__telegram\"\n [appearance]=\"appearance\"\n [class]=\"buttonClass\"\n [href]=\"telegramLink\"\n (click)=\"$event.preventDefault(); openShareWindow(telegramLink, 'telegram')\"\n >\n <img\n [src]=\"'@tui.sc.img.telegram' | tuiIcon\"\n alt=\"Telegram\"\n [width]=\"iconSize\"\n [height]=\"iconSize\"\n [class]=\"iconClass\"\n />\n <span>Telegram</span>\n </a>\n <button\n tuiButton\n size=\"m\"\n type=\"button\"\n automation-id=\"sc-share-dialog__copy\"\n [appearance]=\"appearance\"\n [class]=\"buttonClass\"\n (click)=\"copyShareLink()\"\n >\n <img\n [src]=\"'@tui.sc.img.copy' | tuiIcon\"\n alt=\"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C\"\n [width]=\"iconSize\"\n [height]=\"iconSize\"\n [class]=\"iconClass\"\n />\n <span>\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C</span>\n </button>\n <button\n tuiButton\n size=\"m\"\n type=\"button\"\n automation-id=\"sc-share-dialog__qr\"\n [appearance]=\"appearance\"\n [class]=\"buttonClass\"\n (click)=\"showQRCode()\"\n >\n <img\n [src]=\"'@tui.sc.img.qr-code' | tuiIcon\"\n alt=\"QR-\u043A\u043E\u0434\"\n [width]=\"iconSize\"\n [height]=\"iconSize\"\n [class]=\"iconClass\"\n />\n <span>QR-\u043A\u043E\u0434</span>\n </button>\n </div>\n}\n", styles: [".button._row{--tui-padding: .625rem;--t-gap: 0 !important}.button._row span{max-width:0;overflow:hidden;opacity:0;transition-duration:.5s}.button._row:hover span{opacity:1;max-width:11.5rem;padding-left:1rem}\n"] }]
133
138
  }] });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS9zaGFyZS1kaWFsb2cvc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS9zaGFyZS1kaWFsb2cvc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUF1QixzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlJLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQW9CLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFHdkQ7Ozs7R0FJRztBQVNILE1B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QUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUM7WUFDekMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLE1BQU07U0FDeEMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU07YUFDTixJQUFJLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFO1lBQ3RELElBQUksRUFBRSxHQUFHO1lBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUksUUFBUTtZQUM3QixJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtTQUNsQyxDQUFDO2FBQ0QsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxjQUFjLENBQUMsYUFBcUI7UUFDeEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO1lBQ3pDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxVQUFVO1lBQ3pDLE1BQU0sRUFBRTtnQkFDSixlQUFlLEVBQUUsYUFBYTthQUNqQztTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBOUhRLHNCQUFzQjttR0FBdEIsc0JBQXNCLDJFQzNCbkMsdTVIQW9IQSw0UUQ1RmMsU0FBUywrSEFBRSxXQUFXLGdEQUFFLG9CQUFvQixvRkFBRSxZQUFZOzs0RkFHM0Qsc0JBQXNCO2tCQVJsQyxTQUFTO2lDQUNNLElBQUksWUFDTixpQkFBaUIsV0FHbEIsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLFlBQVksQ0FBQyxtQkFDcEQsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgT25Jbml0LCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgV0FfTkFWSUdBVE9SLCBXQV9XSU5ET1cgfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7IElTX1JVTk5JTkdfT05fVEVSTUlOQUwsIElTX1NFUlZFUiwgU2NJVGVybWluYWxQcm92aWRlciwgU2NVc2VyTWV0cmlrYUdvYWxzRW51bSwgU2NVc2VyTWV0cmlrYVNlcnZpY2UgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IFRVSV9XSU5ET1dfU0laRSB9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHsgVHVpQWxlcnRTZXJ2aWNlLCBUdWlCdXR0b24sIFR1aURpYWxvZ0NvbnRleHQsIFR1aURpYWxvZ1NlcnZpY2UsIFR1aUljb25QaXBlIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHsgUE9MWU1PUlBIRVVTX0NPTlRFWFQsIFBvbHltb3JwaGV1c0NvbXBvbmVudCB9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHsgUVJDb2RlTW9kdWxlIH0gZnJvbSAnYW5ndWxhcngtcXJjb2RlJztcbmltcG9ydCB7IG1hcCwgbm9vcCwgb2YgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2NFbWFpbExpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFNjUVJDb2RlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcXJjb2RlJztcbmltcG9ydCB7IFNjU2hhcmVEaWFsb2dEYXRhIH0gZnJvbSAnLi4vc2Mtc2hhcmUtZGlhbG9nLWRhdGEnO1xuXG4vKipcbiAqINCU0LjQsNC70L7Qs9C+0LLQvtC1INC+0LrQvdC+IFwi0J/QvtC00LXQu9C40YLRjNGB0Y9cIjog0LLQsNGA0LjQsNC90YLRiywg0LrQsNC6INC/0L7QtNC10LvQuNGC0YzRgdGPINGB0YHRi9C70LrQvtC5LlxuICpcbiAqINCd0LAg0YLQtdGA0LzQuNC90LDQu9C1INCy0LzQtdGB0YLQviDQstCw0YDQuNCw0L3RgtC+0LIg0L7RgtC+0LHRgNCw0LbQsNC10YLRgdGPINGC0L7Qu9GM0LrQviBRUi3QutC+0LQg0YHRgdGL0LvQutC4LlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnc2Mtc2hhcmUtZGlhbG9nJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5zY3NzJyxcbiAgICBpbXBvcnRzOiBbVHVpQnV0dG9uLCBUdWlJY29uUGlwZSwgU2NFbWFpbExpbmtEaXJlY3RpdmUsIFFSQ29kZU1vZHVsZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNjU2hhcmVEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIC8qKlxuICAgICAqINCf0YDQvtCy0LDQudC00LXRgCDQtNCw0L3QvdGL0YUg0L4g0YLQtdGA0LzQuNC90LDQu9C1LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXJtaW5hbDogU2NJVGVybWluYWxQcm92aWRlciA9IGluamVjdDxTY0lUZXJtaW5hbFByb3ZpZGVyPihJU19SVU5OSU5HX09OX1RFUk1JTkFMKTtcblxuICAgIC8qKlxuICAgICAqINCa0L7QvdGC0LXQutGB0YIg0LTQuNCw0LvQvtCz0L7QstC+0LPQviDQvtC60L3QsCwg0LIg0LrQvtGC0L7RgNC+0Lwg0L7RgtC60YDRi9GCINC60L7QvNC/0L7QvdC10L3Rgi5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRleHQ6IFR1aURpYWxvZ0NvbnRleHQ8dm9pZCwgU2NTaGFyZURpYWxvZ0RhdGE+ID0gaW5qZWN0PFR1aURpYWxvZ0NvbnRleHQ8dm9pZCwgU2NTaGFyZURpYWxvZ0RhdGE+PihQT0xZTU9SUEhFVVNfQ09OVEVYVCk7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAg0L3QsCDQvtCx0YrQtdC60YIg0L3QsNCy0LjQs9Cw0YLQvtGA0LAg0LHRgNCw0YPQt9C10YDQsC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IG5hdmlnYXRvcjogTmF2aWdhdG9yID0gaW5qZWN0KFdBX05BVklHQVRPUik7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAg0L3QsCDQvtCx0YrQtdC60YIg0L7QutC90LAg0LHRgNCw0YPQt9C10YDQsC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93ID0gaW5qZWN0KFdBX1dJTkRPVyk7XG5cbiAgICAvKipcbiAgICAgKiDQodC10YDQstC40YEg0YPQstC10LTQvtC80LvQtdC90LjQuS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsZXJ0czogVHVpQWxlcnRTZXJ2aWNlID0gaW5qZWN0KFR1aUFsZXJ0U2VydmljZSk7XG5cbiAgICAvKipcbiAgICAgKiDQodC10YDQstC40YEg0LTQu9GPINGA0LDQsdC+0YLRiyDRgSDQtNC40LDQu9C+0LPQvtCy0YvQvNC4INC+0LrQvdCw0LzQuC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZzogVHVpRGlhbG9nU2VydmljZSA9IGluamVjdChUdWlEaWFsb2dTZXJ2aWNlKTtcblxuICAgIC8qKlxuICAgICAqINCh0LXRgNCy0LjRgSDQtNC70Y8g0YHQsdC+0YDQsCDQvNC10YLRgNC40Log0L4g0LTQtdC50YHRgtCy0LjRj9GFINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlck1ldHJpa2FTZXJ2aWNlOiBTY1VzZXJNZXRyaWthU2VydmljZSA9IGluamVjdChTY1VzZXJNZXRyaWthU2VydmljZSk7XG5cbiAgICAvKipcbiAgICAgKiB7QGxpbmsgU2lnbmFsfSDRhNC+0YDQvNCw0YLQsCDQvtGC0L7QsdGA0LDQttC10L3QuNGPINCy0LDRgNC40LDQvdGC0L7Qsjog0LIg0YHRgtGA0L7QutGDINC90LAg0YjQuNGA0L7QutC40YUg0Y3QutGA0LDQvdCw0YUsINGB0L/QuNGB0LrQvtC8INC90LAg0YPQt9C60LjRhS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdmlld01vZGU6IFNpZ25hbDwncm93JyB8ICdsaXN0Jz4gPSB0b1NpZ25hbChcbiAgICAgICAgaW5qZWN0PGJvb2xlYW4+KElTX1NFUlZFUikgPyBvZjwncm93JyB8ICdsaXN0Jz4oJ2xpc3QnKSA6IGluamVjdChUVUlfV0lORE9XX1NJWkUpLnBpcGUobWFwKChyZWN0KSA9PiAocmVjdC53aWR0aCA+IDc2OCA/ICdyb3cnIDogJ2xpc3QnKSkpLFxuICAgICAgICB7IGluaXRpYWxWYWx1ZTogJ2xpc3QnIH1cbiAgICApO1xuXG4gICAgLyoqXG4gICAgICog0JfQsNCz0L7Qu9C+0LLQvtC6INGB0YHRi9C70LrQuCwg0LrQvtGC0L7RgNC+0Lkg0L3QtdC+0LHRhdC+0LTQuNC80L4g0L/QvtC00LXQu9C40YLRjNGB0Y8uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRpdGxlOiBzdHJpbmcgPSB0aGlzLmNvbnRleHQuZGF0YS50aXRsZTtcblxuICAgIC8qKlxuICAgICAqINCh0YHRi9C70LrQsCwg0LrQvtGC0L7RgNC+0Lkg0L3QtdC+0LHRhdC+0LTQuNC80L4g0L/QvtC00LXQu9C40YLRjNGB0Y8uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNoYXJlVXJsOiBzdHJpbmcgPSB0aGlzLmNvbnRleHQuZGF0YS5zaGFyZVVybDtcblxuICAgIC8qKlxuICAgICAqINCh0YHRi9C70LrQsCDQvtGC0L/RgNCw0LLQutC4INC/0L4gRW1haWwuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVtYWlsTGluazogc3RyaW5nID0gYG1haWx0bzo/c3ViamVjdD0ke2VuY29kZVVSSUNvbXBvbmVudChbJ9Ce0J7QniDQodC90LDQsdGG0LXQvdGC0YAnLCB0aGlzLnRpdGxlXS5maWx0ZXIoQm9vbGVhbikuam9pbignIC0gJykpfSZib2R5PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHRoaXMuc2hhcmVVcmwpfWA7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAg0L7RgtC/0YDQsNCy0LrQuCDQstC+INCS0JrQvtC90YLQsNC60YLQtS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdmtMaW5rOiBzdHJpbmcgPSBgaHR0cHM6Ly92ay5jb20vc2hhcmUucGhwP3VybD0ke2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLnNoYXJlVXJsKX1gO1xuXG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINC+0YLQv9GA0LDQstC60Lgg0LIgVGVsZWdyYW0uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRlbGVncmFtTGluazogc3RyaW5nID0gYGh0dHBzOi8vdC5tZS9zaGFyZS91cmw/dXJsPSR7ZW5jb2RlVVJJQ29tcG9uZW50KHRoaXMuc2hhcmVVcmwpfWA7XG5cbiAgICAvKiogQGluaGVyaXREb2MgKi9cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5zaGFyZVNob3csXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCe0YLQutGA0YvQstCw0LXRgiDQvtC60L3QviDQv9C10YDQtdGF0L7QtNCwINCyINGB0L7RhtC40LDQu9GM0L3Rg9GOINGB0LXRgtGMLlxuICAgICAqXG4gICAgICogQHBhcmFtIHNoYXJlTGluayDQodGB0YvQu9C60LAg0L/QtdGA0LXRhdC+0LTQsCDQsiDRgdC+0YbQuNCw0LvRjNC90YPRjiDRgdC10YLRjC5cbiAgICAgKiBAcGFyYW0gc29jaWFsTWVkaWEgU2x1ZyDRgdC+0YbQuNCw0LvRjNC90L7QuSDRgdC10YLQuC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgb3BlblNoYXJlV2luZG93KHNoYXJlTGluazogc3RyaW5nLCBzb2NpYWxNZWRpYTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZW1pdFNoYXJlQ2xpY2soc29jaWFsTWVkaWEpO1xuICAgICAgICB0aGlzLndpbmRvdy5vcGVuKHNoYXJlTGluaywgJ3NoYXJlcicsICdzdGF0dXM9MCx0b29sYmFyPTAsd2lkdGg9NjUwLGhlaWdodD01MDAnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQmtC+0L/QuNGA0YPQtdGCINGB0YHRi9C70LrRgyDQsiDQsdGD0YTQtdGAINC+0LHQvNC10L3QsC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgY29weVNoYXJlTGluaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbWl0U2hhcmVDbGljaygnY29weV90b19jbGlwYm9hcmQnKTtcbiAgICAgICAgdGhpcy5uYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh0aGlzLnNoYXJlVXJsKS5jYXRjaChub29wKTtcbiAgICAgICAgdGhpcy5hbGVydHMub3Blbign0KHRgdGL0LvQutCwINGB0LrQvtC/0LjRgNC+0LLQsNC90LAg0LIg0LHRg9GE0LXRgCDQvtCx0LzQtdC90LAuJywgeyBhcHBlYXJhbmNlOiAncG9zaXRpdmUnIH0pLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCe0YLQutGA0YvQstCw0LXRgiDQtNC40LDQu9C+0LPQvtCy0L7QtSDQvtC60L3QviDRgSBRUi3QutC+0LTQvtC8INGB0YHRi9C70LrQuC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2hvd1FSQ29kZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbWl0U2hhcmVDbGljaygncXInKTtcbiAgICAgICAgdGhpcy51c2VyTWV0cmlrYVNlcnZpY2UuZW1pdFVzZXJNZXRyaWthRXZlbnQoe1xuICAgICAgICAgICAgdGFyZ2V0OiBTY1VzZXJNZXRyaWthR29hbHNFbnVtLnFyU2hvdyxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5kaWFsb2dcbiAgICAgICAgICAgIC5vcGVuKG5ldyBQb2x5bW9ycGhldXNDb21wb25lbnQoU2NRUkNvZGVEaWFsb2dDb21wb25lbnQpLCB7XG4gICAgICAgICAgICAgICAgc2l6ZTogJ3MnLFxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRpdGxlIHx8ICdRUi3QutC+0LQnLFxuICAgICAgICAgICAgICAgIGRhdGE6IHsgcXJkYXRhOiB0aGlzLnNoYXJlVXJsIH0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqINCe0YLQv9GA0LDQstC70Y/QtdGCINC80LXRgtGA0LjQutGDINCy0YvQsdC+0YDQsCDQstCw0YDQuNCw0L3RgtCwIFwi0J/QvtC00LXQu9C40YLRjNGB0Y9cIi5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBzaGFyZUxpbmtOYW1lINCd0LDQuNC80LXQvdC+0LLQsNC90LjQtSDQstCw0YDQuNCw0L3RgtCwLlxuICAgICAqL1xuICAgIHByaXZhdGUgZW1pdFNoYXJlQ2xpY2soc2hhcmVMaW5rTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXNlck1ldHJpa2FTZXJ2aWNlLmVtaXRVc2VyTWV0cmlrYUV2ZW50KHtcbiAgICAgICAgICAgIHRhcmdldDogU2NVc2VyTWV0cmlrYUdvYWxzRW51bS5zaGFyZUNsaWNrLFxuICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgc2hhcmVfbGlua19uYW1lOiBzaGFyZUxpbmtOYW1lLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiQGlmICh0ZXJtaW5hbC5pc1J1bm5pbmdPblRlcm1pbmFsKSB7XG4gICAgPHAgY2xhc3M9XCItbXQtMiBtYi0zIHRleHQtdHVpLXRleHQtMDJcIj7QodC60LDQvdC40YDRg9C50YLQtSBRUi3QutC+0LQuPC9wPlxuICAgIDxxcmNvZGVcbiAgICAgICAgW21hcmdpbl09XCIwXCJcbiAgICAgICAgW3FyZGF0YV09XCJzaGFyZVVybFwiXG4gICAgICAgIFt3aWR0aF09XCIyNTBcIlxuICAgICAgICBlbGVtZW50VHlwZT1cImltZ1wiXG4gICAgPjwvcXJjb2RlPlxufSBAZWxzZSB7XG4gICAgQGxldCBpc1JvdyA9IHZpZXdNb2RlKCkgPT09ICdyb3cnO1xuICAgIEBsZXQgYXBwZWFyYW5jZSA9IGlzUm93ID8gJ2ZsYXQnIDogJ291dGxpbmUnO1xuICAgIEBsZXQgYnV0dG9uQ2xhc3MgPSBpc1JvdyA/ICdidXR0b24gX3JvdycgOiAnYnV0dG9uIHctZnVsbCAhanVzdGlmeS1zdGFydCc7XG4gICAgQGxldCBpY29uQ2xhc3MgPSBpc1JvdyA/ICchbS0wICFzaXplLTgnIDogJyFtLTAgIXNpemUtNic7XG4gICAgQGxldCBpY29uU2l6ZSA9IGlzUm93ID8gMzIgOiAyNDtcblxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJnYXAtMlwiXG4gICAgICAgIFtjbGFzcy5mbGV4XT1cImlzUm93XCJcbiAgICAgICAgW2NsYXNzLmdyaWRdPVwiIWlzUm93XCJcbiAgICAgICAgW2NsYXNzLmdyaWQtY29scy0yXT1cIiFpc1Jvd1wiXG4gICAgPlxuICAgICAgICA8YVxuICAgICAgICAgICAgdHVpQnV0dG9uXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICBzY0VtYWlsTGlua1xuICAgICAgICAgICAgbGlua0xvY2F0aW9uPVwic2hhcmUtbGlua1wiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwic2Mtc2hhcmUtZGlhbG9nX19lbWFpbFwiXG4gICAgICAgICAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJidXR0b25DbGFzc1wiXG4gICAgICAgICAgICBbaHJlZl09XCJlbWFpbExpbmtcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW3NyY109XCInQHR1aS5zYy5pbWcuZW1haWwnIHwgdHVpSWNvblwiXG4gICAgICAgICAgICAgICAgYWx0PVwiRW1haWxcIlxuICAgICAgICAgICAgICAgIFt3aWR0aF09XCJpY29uU2l6ZVwiXG4gICAgICAgICAgICAgICAgW2hlaWdodF09XCJpY29uU2l6ZVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cImljb25DbGFzc1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4+RW1haWw8L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGFcbiAgICAgICAgICAgIHR1aUJ1dHRvblxuICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJzYy1zaGFyZS1kaWFsb2dfX3ZrXCJcbiAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgW2NsYXNzXT1cImJ1dHRvbkNsYXNzXCJcbiAgICAgICAgICAgIFtocmVmXT1cInZrTGlua1wiXG4gICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7IG9wZW5TaGFyZVdpbmRvdyh2a0xpbmssICd2aycpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgIFtzcmNdPVwiJ0B0dWkuc2MuaW1nLnZrJyB8IHR1aUljb25cIlxuICAgICAgICAgICAgICAgIGFsdD1cItCS0JrQvtC90YLQsNC60YLQtVwiXG4gICAgICAgICAgICAgICAgW3dpZHRoXT1cImljb25TaXplXCJcbiAgICAgICAgICAgICAgICBbaGVpZ2h0XT1cImljb25TaXplXCJcbiAgICAgICAgICAgICAgICBbY2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3Bhbj7QktCa0L7QvdGC0LDQutGC0LU8L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGFcbiAgICAgICAgICAgIHR1aUJ1dHRvblxuICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJzYy1zaGFyZS1kaWFsb2dfX3RlbGVncmFtXCJcbiAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgW2NsYXNzXT1cImJ1dHRvbkNsYXNzXCJcbiAgICAgICAgICAgIFtocmVmXT1cInRlbGVncmFtTGlua1wiXG4gICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7IG9wZW5TaGFyZVdpbmRvdyh0ZWxlZ3JhbUxpbmssICd0ZWxlZ3JhbScpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgIFtzcmNdPVwiJ0B0dWkuc2MuaW1nLnRlbGVncmFtJyB8IHR1aUljb25cIlxuICAgICAgICAgICAgICAgIGFsdD1cIlRlbGVncmFtXCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJpY29uQ2xhc3NcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuPlRlbGVncmFtPC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR1aUJ1dHRvblxuICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwic2Mtc2hhcmUtZGlhbG9nX19jb3B5XCJcbiAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgW2NsYXNzXT1cImJ1dHRvbkNsYXNzXCJcbiAgICAgICAgICAgIChjbGljayk9XCJjb3B5U2hhcmVMaW5rKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW3NyY109XCInQHR1aS5zYy5pbWcuY29weScgfCB0dWlJY29uXCJcbiAgICAgICAgICAgICAgICBhbHQ9XCLQmtC+0L/QuNGA0L7QstCw0YLRjFwiXG4gICAgICAgICAgICAgICAgW3dpZHRoXT1cImljb25TaXplXCJcbiAgICAgICAgICAgICAgICBbaGVpZ2h0XT1cImljb25TaXplXCJcbiAgICAgICAgICAgICAgICBbY2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3Bhbj7QmtC+0L/QuNGA0L7QstCw0YLRjDwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR1aUJ1dHRvblxuICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwic2Mtc2hhcmUtZGlhbG9nX19xclwiXG4gICAgICAgICAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICAgICAgICAgIFtjbGFzc109XCJidXR0b25DbGFzc1wiXG4gICAgICAgICAgICAoY2xpY2spPVwic2hvd1FSQ29kZSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgIFtzcmNdPVwiJ0B0dWkuc2MuaW1nLnFyLWNvZGUnIHwgdHVpSWNvblwiXG4gICAgICAgICAgICAgICAgYWx0PVwiUVIt0LrQvtC0XCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJpY29uQ2xhc3NcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuPlFSLdC60L7QtDwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG59XG4iXX0=
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS9zaGFyZS1kaWFsb2cvc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9zaGFyZS9zaGFyZS1kaWFsb2cvc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsU0FBUyxFQUF1QixzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlJLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQW9CLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7OztBQUd2RDs7OztHQUlHO0FBU0gsTUFBTSxPQUFPLHNCQUFzQjtJQVJuQztRQVNJOztXQUVHO1FBQ2dCLGFBQVEsR0FBd0IsTUFBTSxDQUFzQixzQkFBc0IsQ0FBQyxDQUFDO1FBRXZHOztXQUVHO1FBQ2MsWUFBTyxHQUE4QyxNQUFNLENBQTRDLG9CQUFvQixDQUFDLENBQUM7UUFFOUk7O1dBRUc7UUFDYyxjQUFTLEdBQWMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTFEOztXQUVHO1FBQ2MsV0FBTSxHQUFXLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVwRDs7V0FFRztRQUNjLFdBQU0sR0FBb0IsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRW5FOztXQUVHO1FBQ2MsV0FBTSxHQUFxQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUVyRTs7V0FFRztRQUNjLHVCQUFrQixHQUF5QixNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUV6Rjs7V0FFRztRQUNnQixhQUFRLEdBQTJCLFFBQVEsQ0FDMUQsTUFBTSxDQUFVLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQWlCLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQzFJLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUMzQixDQUFDO1FBRUY7O1dBRUc7UUFDZ0IsVUFBSyxHQUFXLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUzRDs7V0FFRztRQUNnQixhQUFRLEdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBRWpFOztXQUVHO1FBQ2dCLGNBQVMsR0FBVyxtQkFBbUIsa0JBQWtCLENBQUMsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUVwTDs7V0FFRztRQUNnQixXQUFNLEdBQVcsZ0NBQWdDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBRXhHOztXQUVHO1FBQ2dCLGlCQUFZLEdBQVcsOEJBQThCLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0tBZ0UvRztJQTlERyxrQkFBa0I7SUFDWCxRQUFRO1FBQ1gsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO1lBQ3pDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxTQUFTO1NBQzNDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNPLGVBQWUsQ0FBQyxTQUFpQixFQUFFLFdBQW1CO1FBQzVELElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSx5Q0FBeUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRDs7T0FFRztJQUNPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRXpDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0NBQW9DLEVBQUUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNuRyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLCtDQUErQyxFQUFFLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDOUcsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNPLFVBQVU7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUM7WUFDekMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLE1BQU07U0FDeEMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU07YUFDTixJQUFJLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFO1lBQ3RELElBQUksRUFBRSxHQUFHO1lBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUksUUFBUTtZQUM3QixJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtTQUNsQyxDQUFDO2FBQ0QsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxjQUFjLENBQUMsYUFBcUI7UUFDeEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO1lBQ3pDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxVQUFVO1lBQ3pDLE1BQU0sRUFBRTtnQkFDSixlQUFlLEVBQUUsYUFBYTthQUNqQztTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBbElRLHNCQUFzQjttR0FBdEIsc0JBQXNCLDJFQzVCbkMsdTVIQW9IQSw0UUQzRmMsU0FBUywrSEFBRSxXQUFXLGdEQUFFLG9CQUFvQixvRkFBRSxZQUFZOzs0RkFHM0Qsc0JBQXNCO2tCQVJsQyxTQUFTO2lDQUNNLElBQUksWUFDTixpQkFBaUIsV0FHbEIsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLFlBQVksQ0FBQyxtQkFDcEQsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaXBib2FyZCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jbGlwYm9hcmQnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQsIFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBXQV9XSU5ET1cgfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7IElTX1JVTk5JTkdfT05fVEVSTUlOQUwsIElTX1NFUlZFUiwgU2NJVGVybWluYWxQcm92aWRlciwgU2NVc2VyTWV0cmlrYUdvYWxzRW51bSwgU2NVc2VyTWV0cmlrYVNlcnZpY2UgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IFRVSV9XSU5ET1dfU0laRSB9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHsgVHVpQWxlcnRTZXJ2aWNlLCBUdWlCdXR0b24sIFR1aURpYWxvZ0NvbnRleHQsIFR1aURpYWxvZ1NlcnZpY2UsIFR1aUljb25QaXBlIH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHsgUE9MWU1PUlBIRVVTX0NPTlRFWFQsIFBvbHltb3JwaGV1c0NvbXBvbmVudCB9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHsgUVJDb2RlTW9kdWxlIH0gZnJvbSAnYW5ndWxhcngtcXJjb2RlJztcbmltcG9ydCB7IG1hcCwgb2YgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2NFbWFpbExpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFNjUVJDb2RlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcXJjb2RlJztcbmltcG9ydCB7IFNjU2hhcmVEaWFsb2dEYXRhIH0gZnJvbSAnLi4vc2Mtc2hhcmUtZGlhbG9nLWRhdGEnO1xuXG4vKipcbiAqINCU0LjQsNC70L7Qs9C+0LLQvtC1INC+0LrQvdC+IFwi0J/QvtC00LXQu9C40YLRjNGB0Y9cIjog0LLQsNGA0LjQsNC90YLRiywg0LrQsNC6INC/0L7QtNC10LvQuNGC0YzRgdGPINGB0YHRi9C70LrQvtC5LlxuICpcbiAqINCd0LAg0YLQtdGA0LzQuNC90LDQu9C1INCy0LzQtdGB0YLQviDQstCw0YDQuNCw0L3RgtC+0LIg0L7RgtC+0LHRgNCw0LbQsNC10YLRgdGPINGC0L7Qu9GM0LrQviBRUi3QutC+0LQg0YHRgdGL0LvQutC4LlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnc2Mtc2hhcmUtZGlhbG9nJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vc2Mtc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5zY3NzJyxcbiAgICBpbXBvcnRzOiBbVHVpQnV0dG9uLCBUdWlJY29uUGlwZSwgU2NFbWFpbExpbmtEaXJlY3RpdmUsIFFSQ29kZU1vZHVsZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNjU2hhcmVEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIC8qKlxuICAgICAqINCf0YDQvtCy0LDQudC00LXRgCDQtNCw0L3QvdGL0YUg0L4g0YLQtdGA0LzQuNC90LDQu9C1LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXJtaW5hbDogU2NJVGVybWluYWxQcm92aWRlciA9IGluamVjdDxTY0lUZXJtaW5hbFByb3ZpZGVyPihJU19SVU5OSU5HX09OX1RFUk1JTkFMKTtcblxuICAgIC8qKlxuICAgICAqINCa0L7QvdGC0LXQutGB0YIg0LTQuNCw0LvQvtCz0L7QstC+0LPQviDQvtC60L3QsCwg0LIg0LrQvtGC0L7RgNC+0Lwg0L7RgtC60YDRi9GCINC60L7QvNC/0L7QvdC10L3Rgi5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRleHQ6IFR1aURpYWxvZ0NvbnRleHQ8dm9pZCwgU2NTaGFyZURpYWxvZ0RhdGE+ID0gaW5qZWN0PFR1aURpYWxvZ0NvbnRleHQ8dm9pZCwgU2NTaGFyZURpYWxvZ0RhdGE+PihQT0xZTU9SUEhFVVNfQ09OVEVYVCk7XG5cbiAgICAvKipcbiAgICAgKiDQodC10YDQstC40YEg0LrQvtC/0LjRgNC+0LLQsNC90LjRjyDRgtC10LrRgdGC0LAg0LIg0LHRg9GE0LXRgCDQvtCx0LzQtdC90LAuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBjbGlwYm9hcmQ6IENsaXBib2FyZCA9IGluamVjdChDbGlwYm9hcmQpO1xuXG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINC90LAg0L7QsdGK0LXQutGCINC+0LrQvdCwINCx0YDQsNGD0LfQtdGA0LAuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IFdpbmRvdyA9IGluamVjdChXQV9XSU5ET1cpO1xuXG4gICAgLyoqXG4gICAgICog0KHQtdGA0LLQuNGBINGD0LLQtdC00L7QvNC70LXQvdC40LkuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGVydHM6IFR1aUFsZXJ0U2VydmljZSA9IGluamVjdChUdWlBbGVydFNlcnZpY2UpO1xuXG4gICAgLyoqXG4gICAgICog0KHQtdGA0LLQuNGBINC00LvRjyDRgNCw0LHQvtGC0Ysg0YEg0LTQuNCw0LvQvtCz0L7QstGL0LzQuCDQvtC60L3QsNC80LguXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IFR1aURpYWxvZ1NlcnZpY2UgPSBpbmplY3QoVHVpRGlhbG9nU2VydmljZSk7XG5cbiAgICAvKipcbiAgICAgKiDQodC10YDQstC40YEg0LTQu9GPINGB0LHQvtGA0LAg0LzQtdGC0YDQuNC6INC+INC00LXQudGB0YLQstC40Y/RhSDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJNZXRyaWthU2VydmljZTogU2NVc2VyTWV0cmlrYVNlcnZpY2UgPSBpbmplY3QoU2NVc2VyTWV0cmlrYVNlcnZpY2UpO1xuXG4gICAgLyoqXG4gICAgICoge0BsaW5rIFNpZ25hbH0g0YTQvtGA0LzQsNGC0LAg0L7RgtC+0LHRgNCw0LbQtdC90LjRjyDQstCw0YDQuNCw0L3RgtC+0LI6INCyINGB0YLRgNC+0LrRgyDQvdCwINGI0LjRgNC+0LrQuNGFINGN0LrRgNCw0L3QsNGFLCDRgdC/0LjRgdC60L7QvCDQvdCwINGD0LfQutC40YUuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHZpZXdNb2RlOiBTaWduYWw8J3JvdycgfCAnbGlzdCc+ID0gdG9TaWduYWwoXG4gICAgICAgIGluamVjdDxib29sZWFuPihJU19TRVJWRVIpID8gb2Y8J3JvdycgfCAnbGlzdCc+KCdsaXN0JykgOiBpbmplY3QoVFVJX1dJTkRPV19TSVpFKS5waXBlKG1hcCgocmVjdCkgPT4gKHJlY3Qud2lkdGggPiA3NjggPyAncm93JyA6ICdsaXN0JykpKSxcbiAgICAgICAgeyBpbml0aWFsVmFsdWU6ICdsaXN0JyB9XG4gICAgKTtcblxuICAgIC8qKlxuICAgICAqINCX0LDQs9C+0LvQvtCy0L7QuiDRgdGB0YvQu9C60LgsINC60L7RgtC+0YDQvtC5INC90LXQvtCx0YXQvtC00LjQvNC+INC/0L7QtNC10LvQuNGC0YzRgdGPLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0aXRsZTogc3RyaW5nID0gdGhpcy5jb250ZXh0LmRhdGEudGl0bGU7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAsINC60L7RgtC+0YDQvtC5INC90LXQvtCx0YXQvtC00LjQvNC+INC/0L7QtNC10LvQuNGC0YzRgdGPLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzaGFyZVVybDogc3RyaW5nID0gdGhpcy5jb250ZXh0LmRhdGEuc2hhcmVVcmw7XG5cbiAgICAvKipcbiAgICAgKiDQodGB0YvQu9C60LAg0L7RgtC/0YDQsNCy0LrQuCDQv9C+IEVtYWlsLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBlbWFpbExpbms6IHN0cmluZyA9IGBtYWlsdG86P3N1YmplY3Q9JHtlbmNvZGVVUklDb21wb25lbnQoWyfQntCe0J4g0KHQvdCw0LHRhtC10L3RgtGAJywgdGhpcy50aXRsZV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyAtICcpKX0mYm9keT0ke2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLnNoYXJlVXJsKX1gO1xuXG4gICAgLyoqXG4gICAgICog0KHRgdGL0LvQutCwINC+0YLQv9GA0LDQstC60Lgg0LLQviDQktCa0L7QvdGC0LDQutGC0LUuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHZrTGluazogc3RyaW5nID0gYGh0dHBzOi8vdmsuY29tL3NoYXJlLnBocD91cmw9JHtlbmNvZGVVUklDb21wb25lbnQodGhpcy5zaGFyZVVybCl9YDtcblxuICAgIC8qKlxuICAgICAqINCh0YHRi9C70LrQsCDQvtGC0L/RgNCw0LLQutC4INCyIFRlbGVncmFtLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZWxlZ3JhbUxpbms6IHN0cmluZyA9IGBodHRwczovL3QubWUvc2hhcmUvdXJsP3VybD0ke2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLnNoYXJlVXJsKX1gO1xuXG4gICAgLyoqIEBpbmhlcml0RG9jICovXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0uc2hhcmVTaG93LFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDQntGC0LrRgNGL0LLQsNC10YIg0L7QutC90L4g0L/QtdGA0LXRhdC+0LTQsCDQsiDRgdC+0YbQuNCw0LvRjNC90YPRjiDRgdC10YLRjC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBzaGFyZUxpbmsg0KHRgdGL0LvQutCwINC/0LXRgNC10YXQvtC00LAg0LIg0YHQvtGG0LjQsNC70YzQvdGD0Y4g0YHQtdGC0YwuXG4gICAgICogQHBhcmFtIHNvY2lhbE1lZGlhIFNsdWcg0YHQvtGG0LjQsNC70YzQvdC+0Lkg0YHQtdGC0LguXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG9wZW5TaGFyZVdpbmRvdyhzaGFyZUxpbms6IHN0cmluZywgc29jaWFsTWVkaWE6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmVtaXRTaGFyZUNsaWNrKHNvY2lhbE1lZGlhKTtcbiAgICAgICAgdGhpcy53aW5kb3cub3BlbihzaGFyZUxpbmssICdzaGFyZXInLCAnc3RhdHVzPTAsdG9vbGJhcj0wLHdpZHRoPTY1MCxoZWlnaHQ9NTAwJyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0JrQvtC/0LjRgNGD0LXRgiDRgdGB0YvQu9C60YMg0LIg0LHRg9GE0LXRgCDQvtCx0LzQtdC90LAuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGNvcHlTaGFyZUxpbmsoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZW1pdFNoYXJlQ2xpY2soJ2NvcHlfdG9fY2xpcGJvYXJkJyk7XG5cbiAgICAgICAgaWYgKHRoaXMuY2xpcGJvYXJkLmNvcHkodGhpcy5zaGFyZVVybCkpIHtcbiAgICAgICAgICAgIHRoaXMuYWxlcnRzLm9wZW4oJ9Ch0YHRi9C70LrQsCDRgdC60L7Qv9C40YDQvtCy0LDQvdCwINCyINCx0YPRhNC10YAg0L7QsdC80LXQvdCwLicsIHsgYXBwZWFyYW5jZTogJ3Bvc2l0aXZlJyB9KS5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYWxlcnRzLm9wZW4oJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0YHQutC+0L/QuNGA0L7QstCw0YLRjCDRgdGB0YvQu9C60YMg0LIg0LHRg9GE0LXRgCDQvtCx0LzQtdC90LAuJywgeyBhcHBlYXJhbmNlOiAnbmVnYXRpdmUnIH0pLnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0J7RgtC60YDRi9Cy0LDQtdGCINC00LjQsNC70L7Qs9C+0LLQvtC1INC+0LrQvdC+INGBIFFSLdC60L7QtNC+0Lwg0YHRgdGL0LvQutC4LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBzaG93UVJDb2RlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVtaXRTaGFyZUNsaWNrKCdxcicpO1xuICAgICAgICB0aGlzLnVzZXJNZXRyaWthU2VydmljZS5lbWl0VXNlck1ldHJpa2FFdmVudCh7XG4gICAgICAgICAgICB0YXJnZXQ6IFNjVXNlck1ldHJpa2FHb2Fsc0VudW0ucXJTaG93LFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmRpYWxvZ1xuICAgICAgICAgICAgLm9wZW4obmV3IFBvbHltb3JwaGV1c0NvbXBvbmVudChTY1FSQ29kZURpYWxvZ0NvbXBvbmVudCksIHtcbiAgICAgICAgICAgICAgICBzaXplOiAncycsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudGl0bGUgfHwgJ1FSLdC60L7QtCcsXG4gICAgICAgICAgICAgICAgZGF0YTogeyBxcmRhdGE6IHRoaXMuc2hhcmVVcmwgfSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog0J7RgtC/0YDQsNCy0LvRj9C10YIg0LzQtdGC0YDQuNC60YMg0LLRi9Cx0L7RgNCwINCy0LDRgNC40LDQvdGC0LAgXCLQn9C+0LTQtdC70LjRgtGM0YHRj1wiLlxuICAgICAqXG4gICAgICogQHBhcmFtIHNoYXJlTGlua05hbWUg0J3QsNC40LzQtdC90L7QstCw0L3QuNC1INCy0LDRgNC40LDQvdGC0LAuXG4gICAgICovXG4gICAgcHJpdmF0ZSBlbWl0U2hhcmVDbGljayhzaGFyZUxpbmtOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51c2VyTWV0cmlrYVNlcnZpY2UuZW1pdFVzZXJNZXRyaWthRXZlbnQoe1xuICAgICAgICAgICAgdGFyZ2V0OiBTY1VzZXJNZXRyaWthR29hbHNFbnVtLnNoYXJlQ2xpY2ssXG4gICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICBzaGFyZV9saW5rX25hbWU6IHNoYXJlTGlua05hbWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCJAaWYgKHRlcm1pbmFsLmlzUnVubmluZ09uVGVybWluYWwpIHtcbiAgICA8cCBjbGFzcz1cIi1tdC0yIG1iLTMgdGV4dC10dWktdGV4dC0wMlwiPtCh0LrQsNC90LjRgNGD0LnRgtC1IFFSLdC60L7QtC48L3A+XG4gICAgPHFyY29kZVxuICAgICAgICBbbWFyZ2luXT1cIjBcIlxuICAgICAgICBbcXJkYXRhXT1cInNoYXJlVXJsXCJcbiAgICAgICAgW3dpZHRoXT1cIjI1MFwiXG4gICAgICAgIGVsZW1lbnRUeXBlPVwiaW1nXCJcbiAgICA+PC9xcmNvZGU+XG59IEBlbHNlIHtcbiAgICBAbGV0IGlzUm93ID0gdmlld01vZGUoKSA9PT0gJ3Jvdyc7XG4gICAgQGxldCBhcHBlYXJhbmNlID0gaXNSb3cgPyAnZmxhdCcgOiAnb3V0bGluZSc7XG4gICAgQGxldCBidXR0b25DbGFzcyA9IGlzUm93ID8gJ2J1dHRvbiBfcm93JyA6ICdidXR0b24gdy1mdWxsICFqdXN0aWZ5LXN0YXJ0JztcbiAgICBAbGV0IGljb25DbGFzcyA9IGlzUm93ID8gJyFtLTAgIXNpemUtOCcgOiAnIW0tMCAhc2l6ZS02JztcbiAgICBAbGV0IGljb25TaXplID0gaXNSb3cgPyAzMiA6IDI0O1xuXG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImdhcC0yXCJcbiAgICAgICAgW2NsYXNzLmZsZXhdPVwiaXNSb3dcIlxuICAgICAgICBbY2xhc3MuZ3JpZF09XCIhaXNSb3dcIlxuICAgICAgICBbY2xhc3MuZ3JpZC1jb2xzLTJdPVwiIWlzUm93XCJcbiAgICA+XG4gICAgICAgIDxhXG4gICAgICAgICAgICB0dWlCdXR0b25cbiAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgIHNjRW1haWxMaW5rXG4gICAgICAgICAgICBsaW5rTG9jYXRpb249XCJzaGFyZS1saW5rXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJzYy1zaGFyZS1kaWFsb2dfX2VtYWlsXCJcbiAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgW2NsYXNzXT1cImJ1dHRvbkNsYXNzXCJcbiAgICAgICAgICAgIFtocmVmXT1cImVtYWlsTGlua1wiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICBbc3JjXT1cIidAdHVpLnNjLmltZy5lbWFpbCcgfCB0dWlJY29uXCJcbiAgICAgICAgICAgICAgICBhbHQ9XCJFbWFpbFwiXG4gICAgICAgICAgICAgICAgW3dpZHRoXT1cImljb25TaXplXCJcbiAgICAgICAgICAgICAgICBbaGVpZ2h0XT1cImljb25TaXplXCJcbiAgICAgICAgICAgICAgICBbY2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3Bhbj5FbWFpbDwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgICAgICA8YVxuICAgICAgICAgICAgdHVpQnV0dG9uXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInNjLXNoYXJlLWRpYWxvZ19fdmtcIlxuICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwiYnV0dG9uQ2xhc3NcIlxuICAgICAgICAgICAgW2hyZWZdPVwidmtMaW5rXCJcbiAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKTsgb3BlblNoYXJlV2luZG93KHZrTGluaywgJ3ZrJylcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW3NyY109XCInQHR1aS5zYy5pbWcudmsnIHwgdHVpSWNvblwiXG4gICAgICAgICAgICAgICAgYWx0PVwi0JLQmtC+0L3RgtCw0LrRgtC1XCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJpY29uQ2xhc3NcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuPtCS0JrQvtC90YLQsNC60YLQtTwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgICAgICA8YVxuICAgICAgICAgICAgdHVpQnV0dG9uXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInNjLXNoYXJlLWRpYWxvZ19fdGVsZWdyYW1cIlxuICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwiYnV0dG9uQ2xhc3NcIlxuICAgICAgICAgICAgW2hyZWZdPVwidGVsZWdyYW1MaW5rXCJcbiAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKTsgb3BlblNoYXJlV2luZG93KHRlbGVncmFtTGluaywgJ3RlbGVncmFtJylcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW3NyY109XCInQHR1aS5zYy5pbWcudGVsZWdyYW0nIHwgdHVpSWNvblwiXG4gICAgICAgICAgICAgICAgYWx0PVwiVGVsZWdyYW1cIlxuICAgICAgICAgICAgICAgIFt3aWR0aF09XCJpY29uU2l6ZVwiXG4gICAgICAgICAgICAgICAgW2hlaWdodF09XCJpY29uU2l6ZVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cImljb25DbGFzc1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4+VGVsZWdyYW08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHVpQnV0dG9uXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJzYy1zaGFyZS1kaWFsb2dfX2NvcHlcIlxuICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwiYnV0dG9uQ2xhc3NcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNvcHlTaGFyZUxpbmsoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICBbc3JjXT1cIidAdHVpLnNjLmltZy5jb3B5JyB8IHR1aUljb25cIlxuICAgICAgICAgICAgICAgIGFsdD1cItCa0L7Qv9C40YDQvtCy0LDRgtGMXCJcbiAgICAgICAgICAgICAgICBbd2lkdGhdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiaWNvblNpemVcIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJpY29uQ2xhc3NcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuPtCa0L7Qv9C40YDQvtCy0LDRgtGMPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHVpQnV0dG9uXG4gICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJzYy1zaGFyZS1kaWFsb2dfX3FyXCJcbiAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgW2NsYXNzXT1cImJ1dHRvbkNsYXNzXCJcbiAgICAgICAgICAgIChjbGljayk9XCJzaG93UVJDb2RlKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW3NyY109XCInQHR1aS5zYy5pbWcucXItY29kZScgfCB0dWlJY29uXCJcbiAgICAgICAgICAgICAgICBhbHQ9XCJRUi3QutC+0LRcIlxuICAgICAgICAgICAgICAgIFt3aWR0aF09XCJpY29uU2l6ZVwiXG4gICAgICAgICAgICAgICAgW2hlaWdodF09XCJpY29uU2l6ZVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzXT1cImljb25DbGFzc1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4+UVIt0LrQvtC0PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbn1cbiJdfQ==
@@ -4,7 +4,7 @@ import * as i1 from '@snabcentr/client-core';
4
4
  import { ScContactsService, ScUserService, ScLocationsService, ScAuthService, SEARCH_TERM, ScUnitsHelper, ScImageHelper, SC_PATH_IMAGE_NOT_FOUND, ScImage, ScPhoneService, ScUserMetrikaService, ScUserMetrikaGoalsEnum, IS_RUNNING_ON_TERMINAL, ScVCardService, ScVerificationService, ScISuggestionType, SC_MIN_LENGTH_SEARCH_TERM, ScConvertersService, ScOpfList, ScReferencesService, ScContragentService, ScBannerService, ScMediaImageTransformerPipe, ScCartService, ScUploadedFile, loadingPlaceholder, SC_ORDER_LOADER, ScMimeTypes, ScCatalogService, SC_URLS, ScWarehouseService, SEARCH_TERM_PROVIDERS, ScPaginationService, SC_NEXT_PAGE_PAGINATION_CLICK, SC_PRODUCT_PAGINATION_OPTIONS, ScCatalogFilterService, ScIdOrSlugPipe, SC_CATEGORY_INFO, ScConfiguratorService, IS_SERVER, RESPONSE, ScIconTypesEnum, ScDocumentInfoTypesEnum, ScDeliveryAddressService, ScOrdersService, ScUIService, SC_USER_INFO as SC_USER_INFO$1, ScPaymentType, ScDeliveryType, TERMINAL_PROVIDERS, ScOrderDraftsService, ScRouteKeys, ScSeoService, scOrderIsLoaded, SC_PAGE_QUERY_PARAM, ScFrequentlyAskedQuestionsService, SchemaOrgFactory, scGetPageQueryParamChanges, ScNewsService, SC_COMPANY_INFO, ScFeedbackService } from '@snabcentr/client-core';
5
5
  import * as i5$1 from 'rxjs';
6
6
  import { EMPTY, BehaviorSubject, switchMap, of, shareReplay, map, Subject, filter, tap, catchError, finalize, startWith, share, timer, scan, takeWhile, endWith, distinctUntilChanged, debounceTime, throwError, combineLatest, Observable, pairwise, Subscription, merge, skip, from, concatMap, noop, first, retry } from 'rxjs';
7
- import { WA_WINDOW, WA_NAVIGATOR } from '@ng-web-apis/common';
7
+ import { WA_WINDOW } from '@ng-web-apis/common';
8
8
  import { takeUntilDestroyed, toSignal, outputFromObservable, toObservable } from '@angular/core/rxjs-interop';
9
9
  import * as i4$1 from '@taiga-ui/cdk';
10
10
  import { TuiDay, TuiTime, TuiValueTransformer, TUI_IS_MOBILE, tuiControlValue, tuiIsPresent, tuiMarkControlAsTouchedAndValidate, tuiIsFalsy, TuiAutoFocus, TuiRepeatTimes, TuiHovered, TuiDayRange, TuiMonth, tuiPure, tuiProvide, TuiValidationError, TUI_WINDOW_SIZE, tuiClamp, TUI_TRUE_HANDLER } from '@taiga-ui/cdk';
@@ -51,6 +51,7 @@ import * as i5$2 from '@taiga-ui/kit/components/slider';
51
51
  import * as i9 from 'angular8-yandex-maps';
52
52
  import { AngularYandexMapsModule } from 'angular8-yandex-maps';
53
53
  import { isValid, parse, format } from 'date-fns';
54
+ import { Clipboard } from '@angular/cdk/clipboard';
54
55
  import * as i2$5 from '@taiga-ui/experimental/components/expand';
55
56
  import * as i3$3 from '@taiga-ui/kit/components/data-list-wrapper';
56
57
  import { TuiGroup } from '@taiga-ui/core/directives/group';
@@ -9483,9 +9484,9 @@ class ScShareDialogComponent {
9483
9484
  */
9484
9485
  this.context = inject(POLYMORPHEUS_CONTEXT);
9485
9486
  /**
9486
- * Ссылка на объект навигатора браузера.
9487
+ * Сервис копирования текста в буфер обмена.
9487
9488
  */
9488
- this.navigator = inject(WA_NAVIGATOR);
9489
+ this.clipboard = inject(Clipboard);
9489
9490
  /**
9490
9491
  * Ссылка на объект окна браузера.
9491
9492
  */
@@ -9548,8 +9549,12 @@ class ScShareDialogComponent {
9548
9549
  */
9549
9550
  copyShareLink() {
9550
9551
  this.emitShareClick('copy_to_clipboard');
9551
- this.navigator.clipboard.writeText(this.shareUrl).catch(noop);
9552
- this.alerts.open('Ссылка скопирована в буфер обмена.', { appearance: 'positive' }).subscribe();
9552
+ if (this.clipboard.copy(this.shareUrl)) {
9553
+ this.alerts.open('Ссылка скопирована в буфер обмена.', { appearance: 'positive' }).subscribe();
9554
+ }
9555
+ else {
9556
+ this.alerts.open('Не удалось скопировать ссылку в буфер обмена.', { appearance: 'negative' }).subscribe();
9557
+ }
9553
9558
  }
9554
9559
  /**
9555
9560
  * Открывает диалоговое окно с QR-кодом ссылки.