@snabcentr/client-ui 0.6.1 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. package/accordion/index.d.ts +3 -0
  2. package/accordion/sc-accordion-content.directive.d.ts +9 -0
  3. package/accordion/sc-accordion.component.d.ts +43 -0
  4. package/accordion/sc-accordion.module.d.ts +15 -0
  5. package/contacts/contacts-accordion/sc-contacts-accordion.component.d.ts +23 -0
  6. package/contacts/index.d.ts +2 -0
  7. package/contacts/sc-contacts.module.d.ts +14 -0
  8. package/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.d.ts +45 -0
  9. package/contragents/contragents-accordion/sc-contragents-accordion.component.d.ts +38 -0
  10. package/contragents/index.d.ts +3 -0
  11. package/contragents/sc-contragents.module.d.ts +16 -0
  12. package/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.d.ts +32 -0
  13. package/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.d.ts +26 -0
  14. package/delivery-address/index.d.ts +3 -0
  15. package/delivery-address/sc-delivery-address.module.d.ts +16 -0
  16. package/esm2020/accordion/index.mjs +4 -0
  17. package/esm2020/accordion/sc-accordion-content.directive.mjs +17 -0
  18. package/esm2020/accordion/sc-accordion.component.mjs +78 -0
  19. package/esm2020/accordion/sc-accordion.module.mjs +25 -0
  20. package/esm2020/contacts/contacts-accordion/sc-contacts-accordion.component.mjs +35 -0
  21. package/esm2020/contacts/index.mjs +3 -0
  22. package/esm2020/contacts/sc-contacts.module.mjs +24 -0
  23. package/esm2020/contragents/contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component.mjs +54 -0
  24. package/esm2020/contragents/contragents-accordion/sc-contragents-accordion.component.mjs +57 -0
  25. package/esm2020/contragents/index.mjs +4 -0
  26. package/esm2020/contragents/sc-contragents.module.mjs +26 -0
  27. package/esm2020/delivery-address/delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component.mjs +40 -0
  28. package/esm2020/delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component.mjs +39 -0
  29. package/esm2020/delivery-address/index.mjs +4 -0
  30. package/esm2020/delivery-address/sc-delivery-address.module.mjs +26 -0
  31. package/esm2020/profile/index.mjs +3 -0
  32. package/esm2020/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.mjs +99 -0
  33. package/esm2020/profile/sc-profile.module.mjs +76 -0
  34. package/esm2020/providers/index.mjs +2 -1
  35. package/esm2020/providers/scUserProviders.mjs +30 -0
  36. package/esm2020/public-api.mjs +7 -1
  37. package/esm2020/user/index.mjs +3 -0
  38. package/esm2020/user/reset-user-password/sc-reset-user-password.component.mjs +61 -0
  39. package/esm2020/user/sc-user.module.mjs +54 -0
  40. package/esm2020/validators/index.mjs +2 -1
  41. package/esm2020/validators/scPasswordConfirmMatchingValidator.mjs +18 -0
  42. package/fesm2015/snabcentr-client-ui.mjs +660 -37
  43. package/fesm2015/snabcentr-client-ui.mjs.map +1 -1
  44. package/fesm2020/snabcentr-client-ui.mjs +657 -37
  45. package/fesm2020/snabcentr-client-ui.mjs.map +1 -1
  46. package/package.json +1 -1
  47. package/profile/index.d.ts +2 -0
  48. package/profile/sc-profile-accordions-content/sc-profile-accordions-content.component.d.ts +61 -0
  49. package/profile/sc-profile.module.d.ts +19 -0
  50. package/providers/index.d.ts +1 -0
  51. package/providers/scUserProviders.d.ts +18 -0
  52. package/public-api.d.ts +6 -0
  53. package/styles/tailwind/tailwind.scss +38 -0
  54. package/user/index.d.ts +2 -0
  55. package/user/reset-user-password/sc-reset-user-password.component.d.ts +38 -0
  56. package/user/sc-user.module.d.ts +15 -0
  57. package/validators/index.d.ts +1 -0
  58. package/validators/scPasswordConfirmMatchingValidator.d.ts +7 -0
@@ -0,0 +1,54 @@
1
+ import { Component, ChangeDetectionStrategy, Output, EventEmitter, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@snabcentr/client-core";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "../../../accordion/sc-accordion.component";
6
+ import * as i4 from "../../../accordion/sc-accordion-content.directive";
7
+ import * as i5 from "@taiga-ui/core";
8
+ import * as i6 from "@taiga-ui/cdk";
9
+ import * as i7 from "../../../contacts/contacts-accordion/sc-contacts-accordion.component";
10
+ /**
11
+ * Компонент контрагента пользователя.
12
+ */
13
+ export class ScContragentsAccordionItemComponent {
14
+ /**
15
+ * Инициализирует экземпляр класса {@link ScContragentsAccordionItemComponent}.
16
+ *
17
+ * @param contragentService Сервис работы с контрагентами.
18
+ */
19
+ constructor(contragentService) {
20
+ this.contragentService = contragentService;
21
+ /**
22
+ * Событие нажатия на кнопку добавления банковского счёта контрагенту.
23
+ */
24
+ this.addBankAccountsClick = new EventEmitter();
25
+ /**
26
+ * Событие нажатия на кнопку редактирования банковского счёта контрагента.
27
+ */
28
+ this.editBankAccountsContragentClick = new EventEmitter();
29
+ /**
30
+ * Событие нажатия на кнопку редактирования контрагента.
31
+ */
32
+ this.editContragentClick = new EventEmitter();
33
+ }
34
+ /** @inheritDoc */
35
+ ngOnInit() {
36
+ this.bankAccounts$ = this.contragentService.getContragentBankAccounts$(this.contragent.id);
37
+ this.contacts$ = this.contragentService.getContragentContacts$(this.contragent.id);
38
+ }
39
+ }
40
+ ScContragentsAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionItemComponent, deps: [{ token: i1.ScContragentService }], target: i0.ɵɵFactoryTarget.Component });
41
+ ScContragentsAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContragentsAccordionItemComponent, selector: "sc-contragents-accordion-item", inputs: { contragent: "contragent" }, outputs: { addBankAccountsClick: "addBankAccountsClick", editBankAccountsContragentClick: "editBankAccountsContragentClick", editContragentClick: "editContragentClick" }, ngImport: i0, template: "<sc-accordion [showAddButton]=\"false\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n\n <ng-template scAccordionContent>\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex gap-2\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n <span *ngIf=\"$any(contragent).kpp as kpp\">\u041A\u041F\u041F: {{ kpp }}</span>\n </div>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editContragentClick.emit()\"\n ></button>\n </div>\n\n <sc-accordion (addButtonClick)=\"addBankAccountsClick.emit()\">\n \u0411\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"bankAccounts$ | async as bankAccounts\" [overlay]=\"true\" [showLoader]=\"bankAccounts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!bankAccounts || bankAccounts.length; else bankAccountsNotExist\">\n <div *ngFor=\"let bankAccount of bankAccounts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n <span>\u0411\u0430\u043D\u043A: {{ bankAccount.bankName }}</span>\n <span>\u0411\u0418\u041A: {{ bankAccount.bic }}</span>\n <span>\u0420/\u0441\u0447\u0451\u0442: {{ bankAccount.accountNumber }}</span>\n <span>\u041A\u043E\u0440/\u0441\u0447\u0451\u0442: {{ bankAccount.correspondentAccount }}</span>\n <span>\u0412\u0430\u043B\u044E\u0442\u0430: {{ bankAccount.currency.name }}</span>\n </div>\n <div class=\"flex flex-col md:flex-row gap-4\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation();\"\n ></button>\n\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation();\"\n ></button>\n </div>\n </div>\n </ng-container>\n\n <ng-template #bankAccountsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0423 \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u0430 {{ contragent.name }} \u043D\u0435\u0442 \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0445 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u043E\u0432.\n <button tuiButton size=\"s\" icon=\"tuiIconPlusLarge\" (click)=\"addBankAccountsClick.emit()\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B</button>\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n </sc-accordion>\n <sc-contacts-accordion *ngIf=\"contacts$\" [contacts$]=\"contacts$\"></sc-contacts-accordion>\n </div>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { kind: "directive", type: i5.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScContactsAccordionComponent, selector: "sc-contacts-accordion", inputs: ["contacts$"], outputs: ["addContactClick", "editContactClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionItemComponent, decorators: [{
43
+ type: Component,
44
+ args: [{ selector: 'sc-contragents-accordion-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion [showAddButton]=\"false\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n\n <ng-template scAccordionContent>\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex gap-2\">\n <div class=\"flex flex-col gap-2 grow\">\n {{ contragent.name }}\n <span *ngIf=\"$any(contragent).inn as inn\">\u0418\u041D\u041D: {{ inn }}</span>\n <span *ngIf=\"$any(contragent).kpp as kpp\">\u041A\u041F\u041F: {{ kpp }}</span>\n </div>\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation(); editContragentClick.emit()\"\n ></button>\n </div>\n\n <sc-accordion (addButtonClick)=\"addBankAccountsClick.emit()\">\n \u0411\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"bankAccounts$ | async as bankAccounts\" [overlay]=\"true\" [showLoader]=\"bankAccounts === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!bankAccounts || bankAccounts.length; else bankAccountsNotExist\">\n <div *ngFor=\"let bankAccount of bankAccounts\" class=\"flex gap-2 border-b border-tui-base-03\">\n <div class=\"flex flex-col gap-2 grow\">\n <span>\u0411\u0430\u043D\u043A: {{ bankAccount.bankName }}</span>\n <span>\u0411\u0418\u041A: {{ bankAccount.bic }}</span>\n <span>\u0420/\u0441\u0447\u0451\u0442: {{ bankAccount.accountNumber }}</span>\n <span>\u041A\u043E\u0440/\u0441\u0447\u0451\u0442: {{ bankAccount.correspondentAccount }}</span>\n <span>\u0412\u0430\u043B\u044E\u0442\u0430: {{ bankAccount.currency.name }}</span>\n </div>\n <div class=\"flex flex-col md:flex-row gap-4\">\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconEdit3Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation();\"\n ></button>\n\n <button\n tuiIconButton\n size=\"m\"\n type=\"button\"\n icon=\"tuiIconTrash2Large\"\n tuiMode=\"onLight\"\n appearance=\"flat\"\n (click)=\"$event.stopPropagation();\"\n ></button>\n </div>\n </div>\n </ng-container>\n\n <ng-template #bankAccountsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0423 \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u0430 {{ contragent.name }} \u043D\u0435\u0442 \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0445 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u043E\u0432.\n <button tuiButton size=\"s\" icon=\"tuiIconPlusLarge\" (click)=\"addBankAccountsClick.emit()\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0435 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u044B</button>\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n </sc-accordion>\n <sc-contacts-accordion *ngIf=\"contacts$\" [contacts$]=\"contacts$\"></sc-contacts-accordion>\n </div>\n </ng-template>\n</sc-accordion>\n" }]
45
+ }], ctorParameters: function () { return [{ type: i1.ScContragentService }]; }, propDecorators: { contragent: [{
46
+ type: Input
47
+ }], addBankAccountsClick: [{
48
+ type: Output
49
+ }], editBankAccountsContragentClick: [{
50
+ type: Output
51
+ }], editContragentClick: [{
52
+ type: Output
53
+ }] } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2NvbnRyYWdlbnRzL2NvbnRyYWdlbnRzLWFjY29yZGlvbi9jb250cmFnZW50cy1hY2NvcmRpb24taXRlbS9zYy1jb250cmFnZW50cy1hY2NvcmRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY29udHJhZ2VudHMvY29udHJhZ2VudHMtYWNjb3JkaW9uL2NvbnRyYWdlbnRzLWFjY29yZGlvbi1pdGVtL3NjLWNvbnRyYWdlbnRzLWFjY29yZGlvbi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQUt4Rzs7R0FFRztBQU1ILE1BQU0sT0FBTyxtQ0FBbUM7SUFtQzVDOzs7O09BSUc7SUFDSCxZQUFvQyxpQkFBc0M7UUFBdEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQWpDMUU7O1dBRUc7UUFFSSx5QkFBb0IsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUzRTs7V0FFRztRQUVJLG9DQUErQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXRGOztXQUVHO1FBRUksd0JBQW1CLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFpQkcsQ0FBQztJQUU5RSxrQkFBa0I7SUFDWCxRQUFRO1FBQ1gsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzRixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7O2dJQTlDUSxtQ0FBbUM7b0hBQW5DLG1DQUFtQyxzUkNiaEQsdTRKQTZFQTsyRkRoRWEsbUNBQW1DO2tCQUwvQyxTQUFTOytCQUNJLCtCQUErQixtQkFFeEIsdUJBQXVCLENBQUMsTUFBTTswR0FPeEMsVUFBVTtzQkFEaEIsS0FBSztnQkFPQyxvQkFBb0I7c0JBRDFCLE1BQU07Z0JBT0EsK0JBQStCO3NCQURyQyxNQUFNO2dCQU9BLG1CQUFtQjtzQkFEekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY0NvbnRyYWdlbnQsIFNjQ29udHJhZ2VudFNlcnZpY2UsIFNjSUNvbnRhY3QgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IFNjSUJhbmtBY2NvdW50IH0gZnJvbSAnQHNuYWJjZW50ci9jbGllbnQtY29yZS9jb250cmFnZW50L2R0by9zYy1pLWJhbmstYWNjb3VudCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINC60L7QvdGC0YDQsNCz0LXQvdGC0LAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjLWNvbnRyYWdlbnRzLWFjY29yZGlvbi1pdGVtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY0NvbnRyYWdlbnRzQWNjb3JkaW9uSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgLyoqXG4gICAgICog0JrQvtC90YLRgNCw0LPQtdC90YIg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGNvbnRyYWdlbnQ6IFNjQ29udHJhZ2VudDtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINC00L7QsdCw0LLQu9C10L3QuNGPINCx0LDQvdC60L7QstGB0LrQvtCz0L4g0YHRh9GR0YLQsCDQutC+0L3RgtGA0LDQs9C10L3RgtGDLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBhZGRCYW5rQWNjb3VudHNDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0L3QsNC20LDRgtC40Y8g0L3QsCDQutC90L7Qv9C60YMg0YDQtdC00LDQutGC0LjRgNC+0LLQsNC90LjRjyDQsdCw0L3QutC+0LLRgdC60L7Qs9C+INGB0YfRkdGC0LAg0LrQvtC90YLRgNCw0LPQtdC90YLQsC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgZWRpdEJhbmtBY2NvdW50c0NvbnRyYWdlbnRDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0L3QsNC20LDRgtC40Y8g0L3QsCDQutC90L7Qv9C60YMg0YDQtdC00LDQutGC0LjRgNC+0LLQsNC90LjRjyDQutC+0L3RgtGA0LDQs9C10L3RgtCwLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBlZGl0Q29udHJhZ2VudENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQodC/0LjRgdC+0Log0LHQsNC90LrQvtCy0YHQutC40YUg0YHRh9C10YLQvtCyINC60L7QvdGC0YDQsNCz0LXQvdGC0LAuXG4gICAgICovXG4gICAgcHVibGljIGJhbmtBY2NvdW50cyQ/OiBPYnNlcnZhYmxlPFNjSUJhbmtBY2NvdW50W10gfCBudWxsPjtcblxuICAgIC8qKlxuICAgICAqINCh0L/QuNGB0L7QuiDQsdCw0L3QutC+0LLRgdC60LjRhSDRgdGH0LXRgtC+0LIg0LrQvtC90YLRgNCw0LPQtdC90YLQsC5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29udGFjdHMkPzogT2JzZXJ2YWJsZTxTY0lDb250YWN0W10gfCBudWxsPjtcblxuICAgIC8qKlxuICAgICAqINCY0L3QuNGG0LjQsNC70LjQt9C40YDRg9C10YIg0Y3QutC30LXQvNC/0LvRj9GAINC60LvQsNGB0YHQsCB7QGxpbmsgU2NDb250cmFnZW50c0FjY29yZGlvbkl0ZW1Db21wb25lbnR9LlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbnRyYWdlbnRTZXJ2aWNlINCh0LXRgNCy0LjRgSDRgNCw0LHQvtGC0Ysg0YEg0LrQvtC90YLRgNCw0LPQtdC90YLQsNC80LguXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29udHJhZ2VudFNlcnZpY2U6IFNjQ29udHJhZ2VudFNlcnZpY2UpIHt9XG5cbiAgICAvKiogQGluaGVyaXREb2MgKi9cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYmFua0FjY291bnRzJCA9IHRoaXMuY29udHJhZ2VudFNlcnZpY2UuZ2V0Q29udHJhZ2VudEJhbmtBY2NvdW50cyQodGhpcy5jb250cmFnZW50LmlkKTtcbiAgICAgICAgdGhpcy5jb250YWN0cyQgPSB0aGlzLmNvbnRyYWdlbnRTZXJ2aWNlLmdldENvbnRyYWdlbnRDb250YWN0cyQodGhpcy5jb250cmFnZW50LmlkKTtcbiAgICB9XG59XG4iLCI8c2MtYWNjb3JkaW9uIFtzaG93QWRkQnV0dG9uXT1cImZhbHNlXCI+XG4gICAge3sgY29udHJhZ2VudC5uYW1lIH19XG4gICAgPHNwYW4gKm5nSWY9XCIkYW55KGNvbnRyYWdlbnQpLmlubiBhcyBpbm5cIj7QmNCd0J06IHt7IGlubiB9fTwvc3Bhbj5cblxuICAgIDxuZy10ZW1wbGF0ZSBzY0FjY29yZGlvbkNvbnRlbnQ+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtMlwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yIGdyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgY29udHJhZ2VudC5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiJGFueShjb250cmFnZW50KS5pbm4gYXMgaW5uXCI+0JjQndCdOiB7eyBpbm4gfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiJGFueShjb250cmFnZW50KS5rcHAgYXMga3BwXCI+0JrQn9CfOiB7eyBrcHAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJ0dWlJY29uRWRpdDNMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgIHR1aU1vZGU9XCJvbkxpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImZsYXRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBlZGl0Q29udHJhZ2VudENsaWNrLmVtaXQoKVwiXG4gICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxzYy1hY2NvcmRpb24gKGFkZEJ1dHRvbkNsaWNrKT1cImFkZEJhbmtBY2NvdW50c0NsaWNrLmVtaXQoKVwiPlxuICAgICAgICAgICAgICAgINCR0LDQvdC60L7QstGB0LrQuNC1INGA0LXQutCy0LjQt9C40YLRi1xuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBzY0FjY29yZGlvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIDx0dWktbG9hZGVyICp0dWlMZXQ9XCJiYW5rQWNjb3VudHMkIHwgYXN5bmMgYXMgYmFua0FjY291bnRzXCIgW292ZXJsYXldPVwidHJ1ZVwiIFtzaG93TG9hZGVyXT1cImJhbmtBY2NvdW50cyA9PT0gbnVsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWJhbmtBY2NvdW50cyB8fCBiYW5rQWNjb3VudHMubGVuZ3RoOyBlbHNlIGJhbmtBY2NvdW50c05vdEV4aXN0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGJhbmtBY2NvdW50IG9mIGJhbmtBY2NvdW50c1wiIGNsYXNzPVwiZmxleCBnYXAtMiBib3JkZXItYiBib3JkZXItdHVpLWJhc2UtMDNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yIGdyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj7QkdCw0L3Qujoge3sgYmFua0FjY291bnQuYmFua05hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+0JHQmNCaOiB7eyBiYW5rQWNjb3VudC5iaWMgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+0KAv0YHRh9GR0YI6IHt7IGJhbmtBY2NvdW50LmFjY291bnROdW1iZXIgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+0JrQvtGAL9GB0YfRkdGCOiB7eyBiYW5rQWNjb3VudC5jb3JyZXNwb25kZW50QWNjb3VudCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj7QktCw0LvRjtGC0LA6IHt7IGJhbmtBY2NvdW50LmN1cnJlbmN5Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIG1kOmZsZXgtcm93IGdhcC00XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJ0dWlJY29uRWRpdDNMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR1aU1vZGU9XCJvbkxpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImZsYXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJ0dWlJY29uVHJhc2gyTGFyZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlNb2RlPVwib25MaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJmbGF0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYmFua0FjY291bnRzTm90RXhpc3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktbm90aWZpY2F0aW9uIHNpemU9XCJsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTIgZm9udC1tZWRpdW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQoyDQutC+0L3RgtGA0LDQs9C10L3RgtCwIHt7IGNvbnRyYWdlbnQubmFtZSB9fSDQvdC10YIg0LHQsNC90LrQvtCy0YHQutC40YUg0YDQtdC60LLQuNC30LjRgtC+0LIuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0dWlCdXR0b24gc2l6ZT1cInNcIiBpY29uPVwidHVpSWNvblBsdXNMYXJnZVwiIChjbGljayk9XCJhZGRCYW5rQWNjb3VudHNDbGljay5lbWl0KClcIj7QlNC+0LHQsNCy0LjRgtGMINCx0LDQvdC60L7QstGB0LrQuNC1INGA0LXQutCy0LjQt9C40YLRizwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHVpLW5vdGlmaWNhdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvdHVpLWxvYWRlcj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9zYy1hY2NvcmRpb24+XG4gICAgICAgICAgICA8c2MtY29udGFjdHMtYWNjb3JkaW9uICpuZ0lmPVwiY29udGFjdHMkXCIgW2NvbnRhY3RzJF09XCJjb250YWN0cyRcIj48L3NjLWNvbnRhY3RzLWFjY29yZGlvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvc2MtYWNjb3JkaW9uPlxuIl19
@@ -0,0 +1,57 @@
1
+ import { Component, ChangeDetectionStrategy, Output, EventEmitter } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@snabcentr/client-core";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "../../accordion/sc-accordion.component";
6
+ import * as i4 from "../../accordion/sc-accordion-content.directive";
7
+ import * as i5 from "@taiga-ui/core";
8
+ import * as i6 from "@taiga-ui/cdk";
9
+ import * as i7 from "./contragents-accordion-item/sc-contragents-accordion-item.component";
10
+ /**
11
+ * Компонент контрагента пользователя.
12
+ */
13
+ export class ScContragentsAccordionComponent {
14
+ /**
15
+ * Инициализирует экземпляр класса {@link ScContragentsAccordionComponent}.
16
+ *
17
+ * @param contragentService Сервис работы с контрагентами.
18
+ */
19
+ constructor(contragentService) {
20
+ this.contragentService = contragentService;
21
+ /**
22
+ * {@link Observable} данных о контрагентах пользователя.
23
+ */
24
+ this.contragents$ = this.contragentService.contragents$;
25
+ /**
26
+ * Событие нажатия на кнопку добавления контрагента.
27
+ */
28
+ this.addContragentClick = new EventEmitter();
29
+ /**
30
+ * Событие нажатия на кнопку редактирования банковского счёта контрагента.
31
+ */
32
+ this.editBankAccountsContragentClick = new EventEmitter();
33
+ /**
34
+ * Событие нажатия на кнопку добавления банковского счёта контрагенту.
35
+ */
36
+ this.addBankAccountsClick = new EventEmitter();
37
+ /**
38
+ * Событие нажатия на кнопку редактирования контрагента.
39
+ */
40
+ this.editContragentClick = new EventEmitter();
41
+ }
42
+ }
43
+ ScContragentsAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionComponent, deps: [{ token: i1.ScContragentService }], target: i0.ɵɵFactoryTarget.Component });
44
+ ScContragentsAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScContragentsAccordionComponent, selector: "sc-contragents-accordion", outputs: { addContragentClick: "addContragentClick", editBankAccountsContragentClick: "editBankAccountsContragentClick", addBankAccountsClick: "addBankAccountsClick", editContragentClick: "editContragentClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addContragentClick.emit()\">\n \u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contragents$ | async as contragents\" [overlay]=\"true\" [showLoader]=\"contragents === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contragents || contragents.length; else contragentsNotExist\">\n <sc-contragents-accordion-item\n *ngFor=\"let contragent of contragents\"\n [contragent]=\"contragent\"\n (addBankAccountsClick)=\"addBankAccountsClick.emit()\"\n (editContragentClick)=\"editContragentClick.emit()\"\n (editBankAccountsContragentClick)=\"editBankAccountsContragentClick.emit()\"\n ></sc-contragents-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0421\u043F\u0438\u0441\u043E\u043A \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u043E\u0432 \u043F\u0443\u0441\u0442.\n <button tuiButton size=\"s\" icon=\"tuiIconPlusLarge\" (click)=\"addContragentClick.emit()\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u0430</button>\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScContragentsAccordionItemComponent, selector: "sc-contragents-accordion-item", inputs: ["contragent"], outputs: ["addBankAccountsClick", "editBankAccountsContragentClick", "editContragentClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsAccordionComponent, decorators: [{
46
+ type: Component,
47
+ args: [{ selector: 'sc-contragents-accordion', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion (addButtonClick)=\"addContragentClick.emit()\">\n \u041A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u044B\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"contragents$ | async as contragents\" [overlay]=\"true\" [showLoader]=\"contragents === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!contragents || contragents.length; else contragentsNotExist\">\n <sc-contragents-accordion-item\n *ngFor=\"let contragent of contragents\"\n [contragent]=\"contragent\"\n (addBankAccountsClick)=\"addBankAccountsClick.emit()\"\n (editContragentClick)=\"editContragentClick.emit()\"\n (editBankAccountsContragentClick)=\"editBankAccountsContragentClick.emit()\"\n ></sc-contragents-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0421\u043F\u0438\u0441\u043E\u043A \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u043E\u0432 \u043F\u0443\u0441\u0442.\n <button tuiButton size=\"s\" icon=\"tuiIconPlusLarge\" (click)=\"addContragentClick.emit()\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043A\u043E\u043D\u0442\u0440\u0430\u0433\u0435\u043D\u0442\u0430</button>\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n" }]
48
+ }], ctorParameters: function () { return [{ type: i1.ScContragentService }]; }, propDecorators: { addContragentClick: [{
49
+ type: Output
50
+ }], editBankAccountsContragentClick: [{
51
+ type: Output
52
+ }], addBankAccountsClick: [{
53
+ type: Output
54
+ }], editContragentClick: [{
55
+ type: Output
56
+ }] } });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9jb250cmFnZW50cy9jb250cmFnZW50cy1hY2NvcmRpb24vc2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC11aS9jb250cmFnZW50cy9jb250cmFnZW50cy1hY2NvcmRpb24vc2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7O0FBSXpGOztHQUVHO0FBTUgsTUFBTSxPQUFPLCtCQUErQjtJQThCeEM7Ozs7T0FJRztJQUNILFlBQW9DLGlCQUFzQztRQUF0QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQXFCO1FBbEMxRTs7V0FFRztRQUNJLGlCQUFZLEdBQXNDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7UUFFN0Y7O1dBRUc7UUFFSSx1QkFBa0IsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV6RTs7V0FFRztRQUVJLG9DQUErQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXRGOztXQUVHO1FBRUkseUJBQW9CLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFM0U7O1dBRUc7UUFFSSx3QkFBbUIsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQU9HLENBQUM7OzRIQW5DckUsK0JBQStCO2dIQUEvQiwrQkFBK0IscVJDWjVDLHF0REEyQkE7MkZEZmEsK0JBQStCO2tCQUwzQyxTQUFTOytCQUNJLDBCQUEwQixtQkFFbkIsdUJBQXVCLENBQUMsTUFBTTswR0FZeEMsa0JBQWtCO3NCQUR4QixNQUFNO2dCQU9BLCtCQUErQjtzQkFEckMsTUFBTTtnQkFPQSxvQkFBb0I7c0JBRDFCLE1BQU07Z0JBT0EsbUJBQW1CO3NCQUR6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNjQ29udHJhZ2VudCwgU2NDb250cmFnZW50U2VydmljZSB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqINCa0L7QvNC/0L7QvdC10L3RgiDQutC+0L3RgtGA0LDQs9C10L3RgtCwINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjy5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzYy1jb250cmFnZW50cy1hY2NvcmRpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zYy1jb250cmFnZW50cy1hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY0NvbnRyYWdlbnRzQWNjb3JkaW9uQ29tcG9uZW50IHtcbiAgICAvKipcbiAgICAgKiB7QGxpbmsgT2JzZXJ2YWJsZX0g0LTQsNC90L3Ri9GFINC+INC60L7QvdGC0YDQsNCz0LXQvdGC0LDRhSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8uXG4gICAgICovXG4gICAgcHVibGljIGNvbnRyYWdlbnRzJDogT2JzZXJ2YWJsZTxTY0NvbnRyYWdlbnRbXSB8IG51bGw+ID0gdGhpcy5jb250cmFnZW50U2VydmljZS5jb250cmFnZW50cyQ7XG5cbiAgICAvKipcbiAgICAgKiDQodC+0LHRi9GC0LjQtSDQvdCw0LbQsNGC0LjRjyDQvdCwINC60L3QvtC/0LrRgyDQtNC+0LHQsNCy0LvQtdC90LjRjyDQutC+0L3RgtGA0LDQs9C10L3RgtCwLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBhZGRDb250cmFnZW50Q2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40Y8g0LHQsNC90LrQvtCy0YHQutC+0LPQviDRgdGH0ZHRgtCwINC60L7QvdGC0YDQsNCz0LXQvdGC0LAuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGVkaXRCYW5rQWNjb3VudHNDb250cmFnZW50Q2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINC00L7QsdCw0LLQu9C10L3QuNGPINCx0LDQvdC60L7QstGB0LrQvtCz0L4g0YHRh9GR0YLQsCDQutC+0L3RgtGA0LDQs9C10L3RgtGDLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBhZGRCYW5rQWNjb3VudHNDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0L3QsNC20LDRgtC40Y8g0L3QsCDQutC90L7Qv9C60YMg0YDQtdC00LDQutGC0LjRgNC+0LLQsNC90LjRjyDQutC+0L3RgtGA0LDQs9C10L3RgtCwLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBlZGl0Q29udHJhZ2VudENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQmNC90LjRhtC40LDQu9C40LfQuNGA0YPQtdGCINGN0LrQt9C10LzQv9C70Y/RgCDQutC70LDRgdGB0LAge0BsaW5rIFNjQ29udHJhZ2VudHNBY2NvcmRpb25Db21wb25lbnR9LlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbnRyYWdlbnRTZXJ2aWNlINCh0LXRgNCy0LjRgSDRgNCw0LHQvtGC0Ysg0YEg0LrQvtC90YLRgNCw0LPQtdC90YLQsNC80LguXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29udHJhZ2VudFNlcnZpY2U6IFNjQ29udHJhZ2VudFNlcnZpY2UpIHt9XG59XG4iLCI8c2MtYWNjb3JkaW9uIChhZGRCdXR0b25DbGljayk9XCJhZGRDb250cmFnZW50Q2xpY2suZW1pdCgpXCI+XG4gICAg0JrQvtC90YLRgNCw0LPQtdC90YLRi1xuICAgIDxuZy10ZW1wbGF0ZSBzY0FjY29yZGlvbkNvbnRlbnQ+XG4gICAgICAgIDx0dWktbG9hZGVyICp0dWlMZXQ9XCJjb250cmFnZW50cyQgfCBhc3luYyBhcyBjb250cmFnZW50c1wiIFtvdmVybGF5XT1cInRydWVcIiBbc2hvd0xvYWRlcl09XCJjb250cmFnZW50cyA9PT0gbnVsbFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbnRyYWdlbnRzIHx8IGNvbnRyYWdlbnRzLmxlbmd0aDsgZWxzZSBjb250cmFnZW50c05vdEV4aXN0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxzYy1jb250cmFnZW50cy1hY2NvcmRpb24taXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbnRyYWdlbnQgb2YgY29udHJhZ2VudHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRyYWdlbnRdPVwiY29udHJhZ2VudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoYWRkQmFua0FjY291bnRzQ2xpY2spPVwiYWRkQmFua0FjY291bnRzQ2xpY2suZW1pdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChlZGl0Q29udHJhZ2VudENsaWNrKT1cImVkaXRDb250cmFnZW50Q2xpY2suZW1pdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChlZGl0QmFua0FjY291bnRzQ29udHJhZ2VudENsaWNrKT1cImVkaXRCYW5rQWNjb3VudHNDb250cmFnZW50Q2xpY2suZW1pdCgpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvc2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLWl0ZW0+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2NvbnRyYWdlbnRzTm90RXhpc3Q+XG4gICAgICAgICAgICAgICAgICAgIDx0dWktbm90aWZpY2F0aW9uIHNpemU9XCJsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTIgZm9udC1tZWRpdW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICDQodC/0LjRgdC+0Log0LrQvtC90YLRgNCw0LPQtdC90YLQvtCyINC/0YPRgdGCLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHVpQnV0dG9uIHNpemU9XCJzXCIgaWNvbj1cInR1aUljb25QbHVzTGFyZ2VcIiAoY2xpY2spPVwiYWRkQ29udHJhZ2VudENsaWNrLmVtaXQoKVwiPtCU0L7QsdCw0LLQuNGC0Ywg0LrQvtC90YLRgNCw0LPQtdC90YLQsDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvdHVpLW5vdGlmaWNhdGlvbj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdHVpLWxvYWRlcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9zYy1hY2NvcmRpb24+XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component';
2
+ export * from './contragents-accordion/sc-contragents-accordion.component';
3
+ export * from './sc-contragents.module';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvY29udHJhZ2VudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0RkFBNEYsQ0FBQztBQUMzRyxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnRyYWdlbnRzLWFjY29yZGlvbi9jb250cmFnZW50cy1hY2NvcmRpb24taXRlbS9zYy1jb250cmFnZW50cy1hY2NvcmRpb24taXRlbS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250cmFnZW50cy1hY2NvcmRpb24vc2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWNvbnRyYWdlbnRzLm1vZHVsZSc7XG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { ScContragentsAccordionComponent } from './contragents-accordion/sc-contragents-accordion.component';
3
+ import { ScAccordionModule } from '../accordion';
4
+ import { CommonModule } from '@angular/common';
5
+ import { TuiButtonModule, TuiLoaderModule, TuiModeModule, TuiNotificationModule } from '@taiga-ui/core';
6
+ import { TuiLetModule } from '@taiga-ui/cdk';
7
+ import { ScContragentsAccordionItemComponent } from './contragents-accordion/contragents-accordion-item/sc-contragents-accordion-item.component';
8
+ import { ScContactsModule } from '../contacts/sc-contacts.module';
9
+ import * as i0 from "@angular/core";
10
+ /**
11
+ * Модуль для отображение контента разделами, с возможностью скрывать и отображать содержимое.
12
+ */
13
+ export class ScContragentsModule {
14
+ }
15
+ ScContragentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ ScContragentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsModule, declarations: [ScContragentsAccordionComponent, ScContragentsAccordionItemComponent], imports: [CommonModule, ScAccordionModule, TuiButtonModule, TuiModeModule, TuiLoaderModule, TuiLetModule, TuiNotificationModule, ScContactsModule], exports: [ScContragentsAccordionComponent] });
17
+ ScContragentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsModule, imports: [CommonModule, ScAccordionModule, TuiButtonModule, TuiModeModule, TuiLoaderModule, TuiLetModule, TuiNotificationModule, ScContactsModule] });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScContragentsModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ declarations: [ScContragentsAccordionComponent, ScContragentsAccordionItemComponent],
22
+ imports: [CommonModule, ScAccordionModule, TuiButtonModule, TuiModeModule, TuiLoaderModule, TuiLetModule, TuiNotificationModule, ScContactsModule],
23
+ exports: [ScContragentsAccordionComponent],
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtY29udHJhZ2VudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2NvbnRyYWdlbnRzL3NjLWNvbnRyYWdlbnRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzdHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw0RkFBNEYsQ0FBQztBQUNqSixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFFbEU7O0dBRUc7QUFNSCxNQUFNLE9BQU8sbUJBQW1COztnSEFBbkIsbUJBQW1CO2lIQUFuQixtQkFBbUIsaUJBSmIsK0JBQStCLEVBQUUsbUNBQW1DLGFBQ3pFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLGFBQ3ZJLCtCQUErQjtpSEFFaEMsbUJBQW1CLFlBSGxCLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCOzJGQUd4SSxtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsK0JBQStCLEVBQUUsbUNBQW1DLENBQUM7b0JBQ3BGLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ2xKLE9BQU8sRUFBRSxDQUFDLCtCQUErQixDQUFDO2lCQUM3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY0NvbnRyYWdlbnRzQWNjb3JkaW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cmFnZW50cy1hY2NvcmRpb24vc2MtY29udHJhZ2VudHMtYWNjb3JkaW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY0FjY29yZGlvbk1vZHVsZSB9IGZyb20gJy4uL2FjY29yZGlvbic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVHVpQnV0dG9uTW9kdWxlLCBUdWlMb2FkZXJNb2R1bGUsIFR1aU1vZGVNb2R1bGUsIFR1aU5vdGlmaWNhdGlvbk1vZHVsZSB9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7IFR1aUxldE1vZHVsZSB9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHsgU2NDb250cmFnZW50c0FjY29yZGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbnRyYWdlbnRzLWFjY29yZGlvbi9jb250cmFnZW50cy1hY2NvcmRpb24taXRlbS9zYy1jb250cmFnZW50cy1hY2NvcmRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2NDb250YWN0c01vZHVsZSB9IGZyb20gJy4uL2NvbnRhY3RzL3NjLWNvbnRhY3RzLm1vZHVsZSc7XG5cbi8qKlxuICog0JzQvtC00YPQu9GMINC00LvRjyDQvtGC0L7QsdGA0LDQttC10L3QuNC1INC60L7QvdGC0LXQvdGC0LAg0YDQsNC30LTQtdC70LDQvNC4LCDRgSDQstC+0LfQvNC+0LbQvdC+0YHRgtGM0Y4g0YHQutGA0YvQstCw0YLRjCDQuCDQvtGC0L7QsdGA0LDQttCw0YLRjCDRgdC+0LTQtdGA0LbQuNC80L7QtS5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtTY0NvbnRyYWdlbnRzQWNjb3JkaW9uQ29tcG9uZW50LCBTY0NvbnRyYWdlbnRzQWNjb3JkaW9uSXRlbUNvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgU2NBY2NvcmRpb25Nb2R1bGUsIFR1aUJ1dHRvbk1vZHVsZSwgVHVpTW9kZU1vZHVsZSwgVHVpTG9hZGVyTW9kdWxlLCBUdWlMZXRNb2R1bGUsIFR1aU5vdGlmaWNhdGlvbk1vZHVsZSwgU2NDb250YWN0c01vZHVsZV0sXG4gICAgZXhwb3J0czogW1NjQ29udHJhZ2VudHNBY2NvcmRpb25Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBTY0NvbnRyYWdlbnRzTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,40 @@
1
+ import { Component, ChangeDetectionStrategy, Output, EventEmitter, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@snabcentr/client-core";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "../../../accordion/sc-accordion.component";
6
+ import * as i4 from "../../../accordion/sc-accordion-content.directive";
7
+ import * as i5 from "@taiga-ui/core";
8
+ import * as i6 from "../../../contacts/contacts-accordion/sc-contacts-accordion.component";
9
+ /**
10
+ * Компонент адреса доставки.
11
+ */
12
+ export class ScDeliveryAddressAccordionItemComponent {
13
+ /**
14
+ * Инициализирует экземпляр класса {@link ScDeliveryAddressAccordionItemComponent}.
15
+ *
16
+ * @param deliveryAddressService Сервис работы с адресами доставки.
17
+ */
18
+ constructor(deliveryAddressService) {
19
+ this.deliveryAddressService = deliveryAddressService;
20
+ /**
21
+ * Событие нажатия на кнопку редактирования контрагента.
22
+ */
23
+ this.editDeliveryAddressClick = new EventEmitter();
24
+ }
25
+ /** @inheritDoc */
26
+ ngOnInit() {
27
+ this.contacts$ = this.deliveryAddressService.getDeliveryAddressContacts$(this.deliveryAddress.id);
28
+ }
29
+ }
30
+ ScDeliveryAddressAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressAccordionItemComponent, deps: [{ token: i1.ScDeliveryAddressService }], target: i0.ɵɵFactoryTarget.Component });
31
+ ScDeliveryAddressAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScDeliveryAddressAccordionItemComponent, selector: "sc-delivery-address-accordion-item", inputs: { deliveryAddress: "deliveryAddress" }, outputs: { editDeliveryAddressClick: "editDeliveryAddressClick" }, ngImport: i0, template: "<sc-accordion [showAddButton]=\"false\">\n {{ deliveryAddress.address }}\n\n <ng-template scAccordionContent>\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex gap-2\">\n <div class=\"flex flex-col gap-2 grow\">\n <span> \u0410\u0434\u0440\u0435\u0441: {{ deliveryAddress.address }} </span>\n <span *ngIf=\"deliveryAddress.comment\"> \u041A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439: {{ deliveryAddress.comment }} </span>\n </div>\n <button tuiIconButton size=\"m\" type=\"button\" icon=\"tuiIconEdit3Large\" tuiMode=\"onLight\" appearance=\"flat\" (click)=\"$event.stopPropagation();\"></button>\n </div>\n\n <sc-contacts-accordion *ngIf=\"contacts$\" [contacts$]=\"contacts$\"></sc-contacts-accordion>\n </div>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { kind: "directive", type: i5.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { kind: "component", type: i6.ScContactsAccordionComponent, selector: "sc-contacts-accordion", inputs: ["contacts$"], outputs: ["addContactClick", "editContactClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressAccordionItemComponent, decorators: [{
33
+ type: Component,
34
+ args: [{ selector: 'sc-delivery-address-accordion-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion [showAddButton]=\"false\">\n {{ deliveryAddress.address }}\n\n <ng-template scAccordionContent>\n <div class=\"flex flex-col gap-2\">\n <div class=\"flex gap-2\">\n <div class=\"flex flex-col gap-2 grow\">\n <span> \u0410\u0434\u0440\u0435\u0441: {{ deliveryAddress.address }} </span>\n <span *ngIf=\"deliveryAddress.comment\"> \u041A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0439: {{ deliveryAddress.comment }} </span>\n </div>\n <button tuiIconButton size=\"m\" type=\"button\" icon=\"tuiIconEdit3Large\" tuiMode=\"onLight\" appearance=\"flat\" (click)=\"$event.stopPropagation();\"></button>\n </div>\n\n <sc-contacts-accordion *ngIf=\"contacts$\" [contacts$]=\"contacts$\"></sc-contacts-accordion>\n </div>\n </ng-template>\n</sc-accordion>\n" }]
35
+ }], ctorParameters: function () { return [{ type: i1.ScDeliveryAddressService }]; }, propDecorators: { deliveryAddress: [{
36
+ type: Input
37
+ }], editDeliveryAddressClick: [{
38
+ type: Output
39
+ }] } });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGVsaXZlcnktYWRkcmVzcy9kZWxpdmVyeS1hZGRyZXNzLWFjY29yZGlvbi9kZWxpdmVyeS1hZGRyZXNzLWFjY29yZGlvbi1pdGVtL3NjLWRlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2RlbGl2ZXJ5LWFkZHJlc3MvZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24vZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24taXRlbS9zYy1kZWxpdmVyeS1hZGRyZXNzLWFjY29yZGlvbi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7O0FBSXhHOztHQUVHO0FBTUgsTUFBTSxPQUFPLHVDQUF1QztJQWtCaEQ7Ozs7T0FJRztJQUNILFlBQW9DLHNCQUFnRDtRQUFoRCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQTBCO1FBaEJwRjs7V0FFRztRQUVJLDZCQUF3QixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBWVEsQ0FBQztJQUV4RixrQkFBa0I7SUFDWCxRQUFRO1FBQ1gsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN0RyxDQUFDOztvSUE1QlEsdUNBQXVDO3dIQUF2Qyx1Q0FBdUMsNkxDWnBELG01QkFpQkE7MkZETGEsdUNBQXVDO2tCQUxuRCxTQUFTOytCQUNJLG9DQUFvQyxtQkFFN0IsdUJBQXVCLENBQUMsTUFBTTsrR0FPeEMsZUFBZTtzQkFEckIsS0FBSztnQkFPQyx3QkFBd0I7c0JBRDlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2NEZWxpdmVyeUFkZHJlc3NTZXJ2aWNlLCBTY0lDb250YWN0LCBTY0lEZWxpdmVyeUFkZHJlc3MgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0LDQtNGA0LXRgdCwINC00L7RgdGC0LDQstC60LguXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2MtZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24taXRlbScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NjLWRlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY0RlbGl2ZXJ5QWRkcmVzc0FjY29yZGlvbkl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIC8qKlxuICAgICAqINCQ0LTRgNC10YEg0LTQvtGB0YLQsNCy0LrQuC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkZWxpdmVyeUFkZHJlc3M6IFNjSURlbGl2ZXJ5QWRkcmVzcztcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40Y8g0LrQvtC90YLRgNCw0LPQtdC90YLQsC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgZWRpdERlbGl2ZXJ5QWRkcmVzc0NsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQodC/0LjRgdC+0Log0LHQsNC90LrQvtCy0YHQutC40YUg0YHRh9C10YLQvtCyINC60L7QvdGC0YDQsNCz0LXQvdGC0LAuXG4gICAgICovXG4gICAgcHVibGljIGNvbnRhY3RzJD86IE9ic2VydmFibGU8U2NJQ29udGFjdFtdIHwgbnVsbD47XG5cbiAgICAvKipcbiAgICAgKiDQmNC90LjRhtC40LDQu9C40LfQuNGA0YPQtdGCINGN0LrQt9C10LzQv9C70Y/RgCDQutC70LDRgdGB0LAge0BsaW5rIFNjRGVsaXZlcnlBZGRyZXNzQWNjb3JkaW9uSXRlbUNvbXBvbmVudH0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGVsaXZlcnlBZGRyZXNzU2VydmljZSDQodC10YDQstC40YEg0YDQsNCx0L7RgtGLINGBINCw0LTRgNC10YHQsNC80Lgg0LTQvtGB0YLQsNCy0LrQuC5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBkZWxpdmVyeUFkZHJlc3NTZXJ2aWNlOiBTY0RlbGl2ZXJ5QWRkcmVzc1NlcnZpY2UpIHt9XG5cbiAgICAvKiogQGluaGVyaXREb2MgKi9cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGFjdHMkID0gdGhpcy5kZWxpdmVyeUFkZHJlc3NTZXJ2aWNlLmdldERlbGl2ZXJ5QWRkcmVzc0NvbnRhY3RzJCh0aGlzLmRlbGl2ZXJ5QWRkcmVzcy5pZCk7XG4gICAgfVxufVxuIiwiPHNjLWFjY29yZGlvbiBbc2hvd0FkZEJ1dHRvbl09XCJmYWxzZVwiPlxuICAgIHt7IGRlbGl2ZXJ5QWRkcmVzcy5hZGRyZXNzIH19XG5cbiAgICA8bmctdGVtcGxhdGUgc2NBY2NvcmRpb25Db250ZW50PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMiBncm93XCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPiDQkNC00YDQtdGBOiB7eyBkZWxpdmVyeUFkZHJlc3MuYWRkcmVzcyB9fSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZGVsaXZlcnlBZGRyZXNzLmNvbW1lbnRcIj4g0JrQvtC80LzQtdC90YLQsNGA0LjQuToge3sgZGVsaXZlcnlBZGRyZXNzLmNvbW1lbnQgfX0gPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxidXR0b24gdHVpSWNvbkJ1dHRvbiBzaXplPVwibVwiIHR5cGU9XCJidXR0b25cIiBpY29uPVwidHVpSWNvbkVkaXQzTGFyZ2VcIiB0dWlNb2RlPVwib25MaWdodFwiIGFwcGVhcmFuY2U9XCJmbGF0XCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcIj48L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8c2MtY29udGFjdHMtYWNjb3JkaW9uICpuZ0lmPVwiY29udGFjdHMkXCIgW2NvbnRhY3RzJF09XCJjb250YWN0cyRcIj48L3NjLWNvbnRhY3RzLWFjY29yZGlvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvc2MtYWNjb3JkaW9uPlxuIl19
@@ -0,0 +1,39 @@
1
+ import { Component, ChangeDetectionStrategy, Output, EventEmitter } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@snabcentr/client-core";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "../../accordion/sc-accordion.component";
6
+ import * as i4 from "../../accordion/sc-accordion-content.directive";
7
+ import * as i5 from "@taiga-ui/core";
8
+ import * as i6 from "@taiga-ui/cdk";
9
+ import * as i7 from "./delivery-address-accordion-item/sc-delivery-address-accordion-item.component";
10
+ /**
11
+ * Компонент адресов доставки.
12
+ */
13
+ export class ScDeliveryAddressAccordionComponent {
14
+ /**
15
+ * Инициализирует экземпляр класса {@link ScDeliveryAddressAccordionComponent}.
16
+ *
17
+ * @param deliveryAddressService Сервис работы с адресами доставки.
18
+ */
19
+ constructor(deliveryAddressService) {
20
+ this.deliveryAddressService = deliveryAddressService;
21
+ /**
22
+ * {@link Observable} данных адресов доставки.
23
+ */
24
+ this.deliveryAddress$ = this.deliveryAddressService.deliveryAddresses$;
25
+ /**
26
+ * Событие нажатия на кнопку добавления адреса доставки клиента.
27
+ */
28
+ this.addDeliveryAddressClick = new EventEmitter();
29
+ }
30
+ }
31
+ ScDeliveryAddressAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressAccordionComponent, deps: [{ token: i1.ScDeliveryAddressService }], target: i0.ɵɵFactoryTarget.Component });
32
+ ScDeliveryAddressAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScDeliveryAddressAccordionComponent, selector: "sc-delivery-address-accordion", outputs: { addDeliveryAddressClick: "addDeliveryAddressClick" }, ngImport: i0, template: "<sc-accordion (addButtonClick)=\"addDeliveryAddressClick.emit()\">\n \u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"deliveryAddress$ | async as deliveryAddress\" [overlay]=\"true\" [showLoader]=\"deliveryAddress === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!deliveryAddress || deliveryAddress.length; else contragentsNotExist\">\n <sc-delivery-address-accordion-item *ngFor=\"let address of deliveryAddress\" [deliveryAddress]=\"address\"></sc-delivery-address-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0421\u043F\u0438\u0441\u043E\u043A \u0430\u0434\u0440\u0435\u0441\u043E\u0432 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438 \u043F\u0443\u0441\u0442.\n <button tuiButton size=\"s\" icon=\"tuiIconPlusLarge\" (click)=\"addDeliveryAddressClick.emit()\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0430\u0434\u0440\u0435\u0441 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438</button>\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i4.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i5.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { kind: "component", type: i5.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i6.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i5.TuiNotificationComponent, selector: "tui-notification", inputs: ["hasIcon", "icon", "status", "size", "hideClose"], outputs: ["close"] }, { kind: "component", type: i7.ScDeliveryAddressAccordionItemComponent, selector: "sc-delivery-address-accordion-item", inputs: ["deliveryAddress"], outputs: ["editDeliveryAddressClick"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressAccordionComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ selector: 'sc-delivery-address-accordion', changeDetection: ChangeDetectionStrategy.OnPush, template: "<sc-accordion (addButtonClick)=\"addDeliveryAddressClick.emit()\">\n \u0410\u0434\u0440\u0435\u0441\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"deliveryAddress$ | async as deliveryAddress\" [overlay]=\"true\" [showLoader]=\"deliveryAddress === null\">\n <div class=\"flex flex-col gap-2\">\n <ng-container *ngIf=\"!deliveryAddress || deliveryAddress.length; else contragentsNotExist\">\n <sc-delivery-address-accordion-item *ngFor=\"let address of deliveryAddress\" [deliveryAddress]=\"address\"></sc-delivery-address-accordion-item>\n </ng-container>\n\n <ng-template #contragentsNotExist>\n <tui-notification size=\"l\">\n <div class=\"flex flex-wrap gap-2 font-medium\">\n \u0421\u043F\u0438\u0441\u043E\u043A \u0430\u0434\u0440\u0435\u0441\u043E\u0432 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438 \u043F\u0443\u0441\u0442.\n <button tuiButton size=\"s\" icon=\"tuiIconPlusLarge\" (click)=\"addDeliveryAddressClick.emit()\">\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0430\u0434\u0440\u0435\u0441 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438</button>\n </div>\n </tui-notification>\n </ng-template>\n </div>\n </tui-loader>\n </ng-template>\n</sc-accordion>\n" }]
36
+ }], ctorParameters: function () { return [{ type: i1.ScDeliveryAddressService }]; }, propDecorators: { addDeliveryAddressClick: [{
37
+ type: Output
38
+ }] } });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2RlbGl2ZXJ5LWFkZHJlc3MvZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24vc2MtZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL2RlbGl2ZXJ5LWFkZHJlc3MvZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24vc2MtZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFJekY7O0dBRUc7QUFNSCxNQUFNLE9BQU8sbUNBQW1DO0lBWTVDOzs7O09BSUc7SUFDSCxZQUFvQyxzQkFBZ0Q7UUFBaEQsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUEwQjtRQWhCcEY7O1dBRUc7UUFDSSxxQkFBZ0IsR0FBNEMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGtCQUFrQixDQUFDO1FBRWxIOztXQUVHO1FBRUksNEJBQXVCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFPUyxDQUFDOztnSUFqQi9FLG1DQUFtQztvSEFBbkMsbUNBQW1DLHNJQ1poRCx1K0NBcUJBOzJGRFRhLG1DQUFtQztrQkFML0MsU0FBUzsrQkFDSSwrQkFBK0IsbUJBRXhCLHVCQUF1QixDQUFDLE1BQU07K0dBWXhDLHVCQUF1QjtzQkFEN0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTY0RlbGl2ZXJ5QWRkcmVzc1NlcnZpY2UsIFNjSURlbGl2ZXJ5QWRkcmVzcyB9IGZyb20gJ0BzbmFiY2VudHIvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqINCa0L7QvNC/0L7QvdC10L3RgiDQsNC00YDQtdGB0L7QsiDQtNC+0YHRgtCw0LLQutC4LlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjLWRlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2MtZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY0RlbGl2ZXJ5QWRkcmVzc0FjY29yZGlvbkNvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICoge0BsaW5rIE9ic2VydmFibGV9INC00LDQvdC90YvRhSDQsNC00YDQtdGB0L7QsiDQtNC+0YHRgtCw0LLQutC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBkZWxpdmVyeUFkZHJlc3MkOiBPYnNlcnZhYmxlPFNjSURlbGl2ZXJ5QWRkcmVzc1tdIHwgbnVsbD4gPSB0aGlzLmRlbGl2ZXJ5QWRkcmVzc1NlcnZpY2UuZGVsaXZlcnlBZGRyZXNzZXMkO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0L3QsNC20LDRgtC40Y8g0L3QsCDQutC90L7Qv9C60YMg0LTQvtCx0LDQstC70LXQvdC40Y8g0LDQtNGA0LXRgdCwINC00L7RgdGC0LDQstC60Lgg0LrQu9C40LXQvdGC0LAuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGFkZERlbGl2ZXJ5QWRkcmVzc0NsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQmNC90LjRhtC40LDQu9C40LfQuNGA0YPQtdGCINGN0LrQt9C10LzQv9C70Y/RgCDQutC70LDRgdGB0LAge0BsaW5rIFNjRGVsaXZlcnlBZGRyZXNzQWNjb3JkaW9uQ29tcG9uZW50fS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBkZWxpdmVyeUFkZHJlc3NTZXJ2aWNlINCh0LXRgNCy0LjRgSDRgNCw0LHQvtGC0Ysg0YEg0LDQtNGA0LXRgdCw0LzQuCDQtNC+0YHRgtCw0LLQutC4LlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGRlbGl2ZXJ5QWRkcmVzc1NlcnZpY2U6IFNjRGVsaXZlcnlBZGRyZXNzU2VydmljZSkge31cbn1cbiIsIjxzYy1hY2NvcmRpb24gKGFkZEJ1dHRvbkNsaWNrKT1cImFkZERlbGl2ZXJ5QWRkcmVzc0NsaWNrLmVtaXQoKVwiPlxuICAgINCQ0LTRgNC10YHQsCDQtNC+0YHRgtCw0LLQutC4XG4gICAgPG5nLXRlbXBsYXRlIHNjQWNjb3JkaW9uQ29udGVudD5cbiAgICAgICAgPHR1aS1sb2FkZXIgKnR1aUxldD1cImRlbGl2ZXJ5QWRkcmVzcyQgfCBhc3luYyBhcyBkZWxpdmVyeUFkZHJlc3NcIiBbb3ZlcmxheV09XCJ0cnVlXCIgW3Nob3dMb2FkZXJdPVwiZGVsaXZlcnlBZGRyZXNzID09PSBudWxsXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZGVsaXZlcnlBZGRyZXNzIHx8IGRlbGl2ZXJ5QWRkcmVzcy5sZW5ndGg7IGVsc2UgY29udHJhZ2VudHNOb3RFeGlzdFwiPlxuICAgICAgICAgICAgICAgICAgICA8c2MtZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24taXRlbSAqbmdGb3I9XCJsZXQgYWRkcmVzcyBvZiBkZWxpdmVyeUFkZHJlc3NcIiBbZGVsaXZlcnlBZGRyZXNzXT1cImFkZHJlc3NcIj48L3NjLWRlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uLWl0ZW0+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2NvbnRyYWdlbnRzTm90RXhpc3Q+XG4gICAgICAgICAgICAgICAgICAgIDx0dWktbm90aWZpY2F0aW9uIHNpemU9XCJsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTIgZm9udC1tZWRpdW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICDQodC/0LjRgdC+0Log0LDQtNGA0LXRgdC+0LIg0LTQvtGB0YLQsNCy0LrQuCDQv9GD0YHRgi5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR1aUJ1dHRvbiBzaXplPVwic1wiIGljb249XCJ0dWlJY29uUGx1c0xhcmdlXCIgKGNsaWNrKT1cImFkZERlbGl2ZXJ5QWRkcmVzc0NsaWNrLmVtaXQoKVwiPtCU0L7QsdCw0LLQuNGC0Ywg0LDQtNGA0LXRgSDQtNC+0YHRgtCw0LLQutC4PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC90dWktbm90aWZpY2F0aW9uPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC90dWktbG9hZGVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L3NjLWFjY29yZGlvbj5cbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component';
2
+ export * from './delivery-address-accordion/sc-delivery-address-accordion.component';
3
+ export * from './sc-delivery-address.module';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGVsaXZlcnktYWRkcmVzcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJHQUEyRyxDQUFDO0FBQzFILGNBQWMsc0VBQXNFLENBQUM7QUFDckYsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24vZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24taXRlbS9zYy1kZWxpdmVyeS1hZGRyZXNzLWFjY29yZGlvbi1pdGVtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2RlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uL3NjLWRlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NjLWRlbGl2ZXJ5LWFkZHJlc3MubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { ScAccordionModule } from '../accordion';
3
+ import { CommonModule } from '@angular/common';
4
+ import { TuiButtonModule, TuiLoaderModule, TuiModeModule, TuiNotificationModule } from '@taiga-ui/core';
5
+ import { TuiLetModule } from '@taiga-ui/cdk';
6
+ import { ScDeliveryAddressAccordionItemComponent } from './delivery-address-accordion/delivery-address-accordion-item/sc-delivery-address-accordion-item.component';
7
+ import { ScContactsModule } from '../contacts/sc-contacts.module';
8
+ import { ScDeliveryAddressAccordionComponent } from './delivery-address-accordion/sc-delivery-address-accordion.component';
9
+ import * as i0 from "@angular/core";
10
+ /**
11
+ * Модуль для отображение адресов доставки разделами, с возможностью скрывать и отображать содержимое.
12
+ */
13
+ export class ScDeliveryAddressModule {
14
+ }
15
+ ScDeliveryAddressModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ ScDeliveryAddressModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressModule, declarations: [ScDeliveryAddressAccordionComponent, ScDeliveryAddressAccordionItemComponent], imports: [CommonModule, ScAccordionModule, TuiButtonModule, TuiModeModule, TuiLoaderModule, TuiLetModule, TuiNotificationModule, ScContactsModule], exports: [ScDeliveryAddressAccordionComponent] });
17
+ ScDeliveryAddressModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressModule, imports: [CommonModule, ScAccordionModule, TuiButtonModule, TuiModeModule, TuiLoaderModule, TuiLetModule, TuiNotificationModule, ScContactsModule] });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScDeliveryAddressModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ declarations: [ScDeliveryAddressAccordionComponent, ScDeliveryAddressAccordionItemComponent],
22
+ imports: [CommonModule, ScAccordionModule, TuiButtonModule, TuiModeModule, TuiLoaderModule, TuiLetModule, TuiNotificationModule, ScContactsModule],
23
+ exports: [ScDeliveryAddressAccordionComponent],
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtZGVsaXZlcnktYWRkcmVzcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvZGVsaXZlcnktYWRkcmVzcy9zYy1kZWxpdmVyeS1hZGRyZXNzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSwyR0FBMkcsQ0FBQztBQUNwSyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQzs7QUFFM0g7O0dBRUc7QUFNSCxNQUFNLE9BQU8sdUJBQXVCOztvSEFBdkIsdUJBQXVCO3FIQUF2Qix1QkFBdUIsaUJBSmpCLG1DQUFtQyxFQUFFLHVDQUF1QyxhQUNqRixZQUFZLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixhQUN2SSxtQ0FBbUM7cUhBRXBDLHVCQUF1QixZQUh0QixZQUFZLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQjsyRkFHeEksdUJBQXVCO2tCQUxuQyxRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLG1DQUFtQyxFQUFFLHVDQUF1QyxDQUFDO29CQUM1RixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixDQUFDO29CQUNsSixPQUFPLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQztpQkFDakQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2NBY2NvcmRpb25Nb2R1bGUgfSBmcm9tICcuLi9hY2NvcmRpb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFR1aUJ1dHRvbk1vZHVsZSwgVHVpTG9hZGVyTW9kdWxlLCBUdWlNb2RlTW9kdWxlLCBUdWlOb3RpZmljYXRpb25Nb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQgeyBUdWlMZXRNb2R1bGUgfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7IFNjRGVsaXZlcnlBZGRyZXNzQWNjb3JkaW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24vZGVsaXZlcnktYWRkcmVzcy1hY2NvcmRpb24taXRlbS9zYy1kZWxpdmVyeS1hZGRyZXNzLWFjY29yZGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY0NvbnRhY3RzTW9kdWxlIH0gZnJvbSAnLi4vY29udGFjdHMvc2MtY29udGFjdHMubW9kdWxlJztcbmltcG9ydCB7IFNjRGVsaXZlcnlBZGRyZXNzQWNjb3JkaW9uQ29tcG9uZW50IH0gZnJvbSAnLi9kZWxpdmVyeS1hZGRyZXNzLWFjY29yZGlvbi9zYy1kZWxpdmVyeS1hZGRyZXNzLWFjY29yZGlvbi5jb21wb25lbnQnO1xuXG4vKipcbiAqINCc0L7QtNGD0LvRjCDQtNC70Y8g0L7RgtC+0LHRgNCw0LbQtdC90LjQtSDQsNC00YDQtdGB0L7QsiDQtNC+0YHRgtCw0LLQutC4INGA0LDQt9C00LXQu9Cw0LzQuCwg0YEg0LLQvtC30LzQvtC20L3QvtGB0YLRjNGOINGB0LrRgNGL0LLQsNGC0Ywg0Lgg0L7RgtC+0LHRgNCw0LbQsNGC0Ywg0YHQvtC00LXRgNC20LjQvNC+0LUuXG4gKi9cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbU2NEZWxpdmVyeUFkZHJlc3NBY2NvcmRpb25Db21wb25lbnQsIFNjRGVsaXZlcnlBZGRyZXNzQWNjb3JkaW9uSXRlbUNvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgU2NBY2NvcmRpb25Nb2R1bGUsIFR1aUJ1dHRvbk1vZHVsZSwgVHVpTW9kZU1vZHVsZSwgVHVpTG9hZGVyTW9kdWxlLCBUdWlMZXRNb2R1bGUsIFR1aU5vdGlmaWNhdGlvbk1vZHVsZSwgU2NDb250YWN0c01vZHVsZV0sXG4gICAgZXhwb3J0czogW1NjRGVsaXZlcnlBZGRyZXNzQWNjb3JkaW9uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2NEZWxpdmVyeUFkZHJlc3NNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './sc-profile-accordions-content/sc-profile-accordions-content.component';
2
+ export * from './sc-profile.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtdWkvcHJvZmlsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NjLXByb2ZpbGUtYWNjb3JkaW9ucy1jb250ZW50L3NjLXByb2ZpbGUtYWNjb3JkaW9ucy1jb250ZW50LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NjLXByb2ZpbGUubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,99 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, ChangeDetectionStrategy, Inject, Output, EventEmitter } from '@angular/core';
3
+ import { map, share, skip, startWith, switchMap, tap } from 'rxjs';
4
+ import { SC_USER_PROVIDERS, SC_USER_INFO } from '../../providers';
5
+ import { FormControl } from '@angular/forms';
6
+ import { tuiIsFalsy, tuiPure } from '@taiga-ui/cdk';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@snabcentr/client-core";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "../../user/reset-user-password/sc-reset-user-password.component";
11
+ import * as i4 from "../../accordion/sc-accordion.component";
12
+ import * as i5 from "../../accordion/sc-accordion-content.directive";
13
+ import * as i6 from "../../contragents/contragents-accordion/sc-contragents-accordion.component";
14
+ import * as i7 from "../../delivery-address/delivery-address-accordion/sc-delivery-address-accordion.component";
15
+ import * as i8 from "@taiga-ui/core";
16
+ import * as i9 from "@taiga-ui/cdk";
17
+ import * as i10 from "@taiga-ui/kit";
18
+ import * as i11 from "@angular/forms";
19
+ import * as i12 from "rxjs";
20
+ /**
21
+ * Компонент контента профиля пользователя в виде раскрывающихся смысловых блоков.
22
+ */
23
+ export class ScProfileAccordionsContentComponent {
24
+ /**
25
+ * Инициализирует экземпляр класса {@link ScProfileComponent}.
26
+ *
27
+ * @param user$ Поток информации о текущем пользователе.
28
+ * @param locationsService Сервис для получения списков стран, регионов, городов.
29
+ * @param userService Сервис информации о пользователе.
30
+ */
31
+ constructor(user$, locationsService, userService) {
32
+ this.user$ = user$;
33
+ this.locationsService = locationsService;
34
+ this.userService = userService;
35
+ /**
36
+ * {@link FormControl} переключателя 'Я хочу получать рассылку'.
37
+ */
38
+ this.getNewsControl = new FormControl(false, { nonNullable: true });
39
+ /**
40
+ * {@link Observable} Запроса изменения признака пользователя 'Я хочу получать рассылку'.
41
+ */
42
+ this.getNewsRequest$ = this.getNewsControl.valueChanges.pipe(skip(1), switchMap((value) => this.userService.updateUserInfo$({ getNews: value }).pipe(switchMap(() => this.userService.updateUserChange$().pipe(tap((user) => this.getNewsControl.patchValue(user.getNews, { emitEvent: false })), startWith(null))), startWith(null))), share());
43
+ /**
44
+ * {@link Observable} Изменения состояния загрузки данных изменения признака пользователя 'Я хочу получать рассылку'.
45
+ */
46
+ this.getNewsLoading$ = this.getNewsRequest$.pipe(map(tuiIsFalsy));
47
+ /**
48
+ * Событие нажатия на кнопку редактирование контактного лица.
49
+ */
50
+ this.editProfileClick = new EventEmitter();
51
+ /**
52
+ * Событие нажатия на кнопку подтверждения телефона.
53
+ */
54
+ this.approvePhoneClick = new EventEmitter();
55
+ /**
56
+ * Событие нажатия на кнопку подтверждения электронной почты.
57
+ */
58
+ this.approveEmailClick = new EventEmitter();
59
+ /**
60
+ * Событие нажатия на кнопку добавления контрагента.
61
+ */
62
+ this.addContragentClick = new EventEmitter();
63
+ /**
64
+ * Событие нажатия на кнопку добавления адреса доставки клиента.
65
+ */
66
+ this.addDeliveryAddressClick = new EventEmitter();
67
+ }
68
+ /**
69
+ * Создает запрос получения информации о городе текущего пользователя по идентификатору города.
70
+ *
71
+ * @param cityId Идентификатор записи города.
72
+ */
73
+ getUserCity$(cityId) {
74
+ return this.locationsService.getUserCity$(cityId);
75
+ }
76
+ }
77
+ ScProfileAccordionsContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScProfileAccordionsContentComponent, deps: [{ token: SC_USER_INFO }, { token: i1.ScLocationsService }, { token: i1.ScUserService }], target: i0.ɵɵFactoryTarget.Component });
78
+ ScProfileAccordionsContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ScProfileAccordionsContentComponent, selector: "sc-profile-accordions-content", outputs: { editProfileClick: "editProfileClick", approvePhoneClick: "approvePhoneClick", approveEmailClick: "approveEmailClick", addContragentClick: "addContragentClick", addDeliveryAddressClick: "addDeliveryAddressClick" }, providers: [SC_USER_PROVIDERS], ngImport: i0, template: "<div class=\"flex flex-col gap-4\">\n <sc-accordion [showArrow]=\"false\" [showAddButton]=\"false\" [open]=\"true\">\n \u041E\u0431\u0449\u0438\u0435 \u0434\u0430\u043D\u043D\u044B\u0435\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"user$ | async as user\" [overlay]=\"true\" [showLoader]=\"user === null\">\n <div class=\"flex gap-2 pl-4\">\n <div *ngIf=\"user\" class=\"flex flex-col flex-grow gap-2\">\n {{ user.name }}\n <div *ngIf=\"user.city && (getUserCity$(user.city) | async) as city\" class=\"flex items-center gap-1\">\n <tui-svg src=\"tuiIconMapPin\"></tui-svg>\n <span>\u0433. {{ city.name }}, </span>\n <span *ngIf=\"city.region\">{{ city.region.name }}</span>\n </div>\n <div class=\"flex flex-wrap gap-2\">\n <a\n tuiLink\n tuiMode=\"onLight\"\n icon=\"tuiIconPhone\"\n iconAlign=\"left\"\n [pseudo]=\"true\"\n href=\"tel:{{ user.contacts.phone.value}}\"\n >{{ user.contacts.phone.value | tuiFormatPhone }}</a\n >\n <span *ngIf=\"!user.contacts.phone.isApproved\" class=\"text-tui-text-03\">\n (\u0422\u0435\u043B\u0435\u0444\u043E\u043D \u043D\u0435 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D. <button tuiLink [pseudo]=\"true\" (click)=\"approvePhoneClick.emit()\">\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C</button>)\n </span>\n </div>\n <div class=\"flex flex-wrap gap-2\">\n <a tuiLink tuiMode=\"onLight\" icon=\"tuiIconMail\" iconAlign=\"left\" [pseudo]=\"true\" href=\"mailto:{{ user.contacts.email.value }}\">\n {{ user.contacts.email.value }}\n </a>\n <span *ngIf=\"!user.contacts.email.isApproved\" class=\"text-tui-text-03\">\n (E-mail \u043D\u0435 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D. <button tuiLink [pseudo]=\"true\" (click)=\"approveEmailClick.emit()\">\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C</button>)\n </span>\n </div>\n <tui-loader [showLoader]=\"!!(getNewsLoading$ | async)\" [overlay]=\"true\">\n <tui-checkbox-labeled size=\"m\" class=\"w-full\" [formControl]=\"getNewsControl\" [ngModel]=\"user.getNews\">\n \u042F \u0445\u043E\u0447\u0443 \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u044C \u0440\u0430\u0441\u0441\u044B\u043B\u043A\u0443 \u0421\u043D\u0430\u0431\u0446\u0435\u043D\u0442\u0440 \u043E \u0441\u043A\u0438\u0434\u043A\u0430\u0445 \u0438 \u043D\u043E\u0432\u043E\u0441\u0442\u044F\u0445 \u043F\u043E \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0439 \u043F\u043E\u0447\u0442\u0435.\n </tui-checkbox-labeled>\n </tui-loader>\n </div>\n\n <button tuiIconButton size=\"m\" type=\"button\" icon=\"tuiIconEdit3Large\" tuiMode=\"onLight\" appearance=\"flat\" (click)=\"editProfileClick.emit()\"></button>\n </div>\n </tui-loader>\n </ng-template>\n </sc-accordion>\n <sc-contragents-accordion (addContragentClick)=\"addContragentClick.emit()\"></sc-contragents-accordion>\n <sc-delivery-address-accordion (addDeliveryAddressClick)=\"addDeliveryAddressClick.emit()\"></sc-delivery-address-accordion>\n <sc-accordion [showArrow]=\"false\" [showAddButton]=\"false\">\n \u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u043E\u043B\u044C\n <ng-template scAccordionContent>\n <sc-reset-user-password></sc-reset-user-password>\n </ng-template>\n </sc-accordion>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ScResetUserPasswordComponent, selector: "sc-reset-user-password" }, { kind: "component", type: i4.ScAccordionComponent, selector: "sc-accordion", inputs: ["showAddButton", "showDeleteButton", "showArrow", "open", "size"], outputs: ["addButtonClick", "deleteButtonClick"] }, { kind: "directive", type: i5.ScAccordionContentDirective, selector: "ng-template[scAccordionContent]" }, { kind: "component", type: i6.ScContragentsAccordionComponent, selector: "sc-contragents-accordion", outputs: ["addContragentClick", "editBankAccountsContragentClick", "addBankAccountsClick", "editContragentClick"] }, { kind: "component", type: i7.ScDeliveryAddressAccordionComponent, selector: "sc-delivery-address-accordion", outputs: ["addDeliveryAddressClick"] }, { kind: "component", type: i8.TuiLoaderComponent, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i9.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { kind: "component", type: i8.TuiLinkComponent, selector: "a[tuiLink], button[tuiLink]", inputs: ["pseudo", "icon", "iconAlign", "iconRotated", "mode"], exportAs: ["tuiLink"] }, { kind: "directive", type: i8.TuiModeDirective, selector: "[tuiMode]", inputs: ["tuiMode"] }, { kind: "component", type: i10.TuiCheckboxLabeledComponent, selector: "tui-checkbox-labeled", inputs: ["size"] }, { kind: "component", type: i8.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { kind: "directive", type: i11.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i11.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i8.TuiButtonComponent, selector: "button[tuiButton], button[tuiIconButton], a[tuiButton], a[tuiIconButton]", inputs: ["appearance", "disabled", "icon", "iconRight", "shape", "showLoader", "size"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.TuiFormatPhonePipe, name: "tuiFormatPhone" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
79
+ __decorate([
80
+ tuiPure // TODO: TASK[#7615] Удалить поле рефакторинга сервиса работы с пользователем.
81
+ ], ScProfileAccordionsContentComponent.prototype, "getUserCity$", null);
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ScProfileAccordionsContentComponent, decorators: [{
83
+ type: Component,
84
+ args: [{ selector: 'sc-profile-accordions-content', providers: [SC_USER_PROVIDERS], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col gap-4\">\n <sc-accordion [showArrow]=\"false\" [showAddButton]=\"false\" [open]=\"true\">\n \u041E\u0431\u0449\u0438\u0435 \u0434\u0430\u043D\u043D\u044B\u0435\n <ng-template scAccordionContent>\n <tui-loader *tuiLet=\"user$ | async as user\" [overlay]=\"true\" [showLoader]=\"user === null\">\n <div class=\"flex gap-2 pl-4\">\n <div *ngIf=\"user\" class=\"flex flex-col flex-grow gap-2\">\n {{ user.name }}\n <div *ngIf=\"user.city && (getUserCity$(user.city) | async) as city\" class=\"flex items-center gap-1\">\n <tui-svg src=\"tuiIconMapPin\"></tui-svg>\n <span>\u0433. {{ city.name }}, </span>\n <span *ngIf=\"city.region\">{{ city.region.name }}</span>\n </div>\n <div class=\"flex flex-wrap gap-2\">\n <a\n tuiLink\n tuiMode=\"onLight\"\n icon=\"tuiIconPhone\"\n iconAlign=\"left\"\n [pseudo]=\"true\"\n href=\"tel:{{ user.contacts.phone.value}}\"\n >{{ user.contacts.phone.value | tuiFormatPhone }}</a\n >\n <span *ngIf=\"!user.contacts.phone.isApproved\" class=\"text-tui-text-03\">\n (\u0422\u0435\u043B\u0435\u0444\u043E\u043D \u043D\u0435 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D. <button tuiLink [pseudo]=\"true\" (click)=\"approvePhoneClick.emit()\">\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C</button>)\n </span>\n </div>\n <div class=\"flex flex-wrap gap-2\">\n <a tuiLink tuiMode=\"onLight\" icon=\"tuiIconMail\" iconAlign=\"left\" [pseudo]=\"true\" href=\"mailto:{{ user.contacts.email.value }}\">\n {{ user.contacts.email.value }}\n </a>\n <span *ngIf=\"!user.contacts.email.isApproved\" class=\"text-tui-text-03\">\n (E-mail \u043D\u0435 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D. <button tuiLink [pseudo]=\"true\" (click)=\"approveEmailClick.emit()\">\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C</button>)\n </span>\n </div>\n <tui-loader [showLoader]=\"!!(getNewsLoading$ | async)\" [overlay]=\"true\">\n <tui-checkbox-labeled size=\"m\" class=\"w-full\" [formControl]=\"getNewsControl\" [ngModel]=\"user.getNews\">\n \u042F \u0445\u043E\u0447\u0443 \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u044C \u0440\u0430\u0441\u0441\u044B\u043B\u043A\u0443 \u0421\u043D\u0430\u0431\u0446\u0435\u043D\u0442\u0440 \u043E \u0441\u043A\u0438\u0434\u043A\u0430\u0445 \u0438 \u043D\u043E\u0432\u043E\u0441\u0442\u044F\u0445 \u043F\u043E \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0439 \u043F\u043E\u0447\u0442\u0435.\n </tui-checkbox-labeled>\n </tui-loader>\n </div>\n\n <button tuiIconButton size=\"m\" type=\"button\" icon=\"tuiIconEdit3Large\" tuiMode=\"onLight\" appearance=\"flat\" (click)=\"editProfileClick.emit()\"></button>\n </div>\n </tui-loader>\n </ng-template>\n </sc-accordion>\n <sc-contragents-accordion (addContragentClick)=\"addContragentClick.emit()\"></sc-contragents-accordion>\n <sc-delivery-address-accordion (addDeliveryAddressClick)=\"addDeliveryAddressClick.emit()\"></sc-delivery-address-accordion>\n <sc-accordion [showArrow]=\"false\" [showAddButton]=\"false\">\n \u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u043E\u043B\u044C\n <ng-template scAccordionContent>\n <sc-reset-user-password></sc-reset-user-password>\n </ng-template>\n </sc-accordion>\n</div>\n" }]
85
+ }], ctorParameters: function () { return [{ type: i12.Observable, decorators: [{
86
+ type: Inject,
87
+ args: [SC_USER_INFO]
88
+ }] }, { type: i1.ScLocationsService }, { type: i1.ScUserService }]; }, propDecorators: { editProfileClick: [{
89
+ type: Output
90
+ }], approvePhoneClick: [{
91
+ type: Output
92
+ }], approveEmailClick: [{
93
+ type: Output
94
+ }], addContragentClick: [{
95
+ type: Output
96
+ }], addDeliveryAddressClick: [{
97
+ type: Output
98
+ }], getUserCity$: [] } });
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2MtcHJvZmlsZS1hY2NvcmRpb25zLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL3Byb2ZpbGUvc2MtcHJvZmlsZS1hY2NvcmRpb25zLWNvbnRlbnQvc2MtcHJvZmlsZS1hY2NvcmRpb25zLWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xpZW50LXVpL3Byb2ZpbGUvc2MtcHJvZmlsZS1hY2NvcmRpb25zLWNvbnRlbnQvc2MtcHJvZmlsZS1hY2NvcmRpb25zLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakcsT0FBTyxFQUFjLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBRXBEOztHQUVHO0FBT0gsTUFBTSxPQUFPLG1DQUFtQztJQTZENUM7Ozs7OztPQU1HO0lBQ0gsWUFDMEMsS0FBeUIsRUFDOUMsZ0JBQW9DLEVBQ3BDLFdBQTBCO1FBRkwsVUFBSyxHQUFMLEtBQUssQ0FBb0I7UUFDOUMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBZTtRQXRFL0M7O1dBRUc7UUFDSSxtQkFBYyxHQUF5QixJQUFJLFdBQVcsQ0FBVSxLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVyRzs7V0FFRztRQUNjLG9CQUFlLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNwRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDaEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3JELFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDWCxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUMsSUFBSSxDQUNyQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUNqRixTQUFTLENBQUMsSUFBSSxDQUFDLENBQ2xCLENBQ0osRUFDRCxTQUFTLENBQUMsSUFBSSxDQUFDLENBQ2xCLENBQ0osRUFFRCxLQUFLLEVBQUUsQ0FDVixDQUFDO1FBRUY7O1dBRUc7UUFDYSxvQkFBZSxHQUF3QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUVsRzs7V0FFRztRQUVJLHFCQUFnQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXZFOztXQUVHO1FBRUksc0JBQWlCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFeEU7O1dBRUc7UUFFSSxzQkFBaUIsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV4RTs7V0FFRztRQUVJLHVCQUFrQixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXpFOztXQUVHO1FBRUksNEJBQXVCLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFhM0UsQ0FBQztJQUVKOzs7O09BSUc7SUFFSSxZQUFZLENBQUMsTUFBYztRQUM5QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7Z0lBbEZRLG1DQUFtQyxrQkFxRWhDLFlBQVk7b0hBckVmLG1DQUFtQyx5UkFIakMsQ0FBQyxpQkFBaUIsQ0FBQywwQkNibEMsd3ZJQXdEQTtBRHdDSTtJQURDLE9BQU8sQ0FBQyw4RUFBOEU7dUVBR3RGOzJGQWxGUSxtQ0FBbUM7a0JBTi9DLFNBQVM7K0JBQ0ksK0JBQStCLGFBRTlCLENBQUMsaUJBQWlCLENBQUMsbUJBQ2IsdUJBQXVCLENBQUMsTUFBTTs7MEJBdUUxQyxNQUFNOzJCQUFDLFlBQVk7eUdBbENqQixnQkFBZ0I7c0JBRHRCLE1BQU07Z0JBT0EsaUJBQWlCO3NCQUR2QixNQUFNO2dCQU9BLGlCQUFpQjtzQkFEdkIsTUFBTTtnQkFPQSxrQkFBa0I7c0JBRHhCLE1BQU07Z0JBT0EsdUJBQXVCO3NCQUQ3QixNQUFNO2dCQXNCQSxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5qZWN0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2NJQ2l0eSwgU2NMb2NhdGlvbnNTZXJ2aWNlLCBTY1VzZXIsIFNjVXNlclNlcnZpY2UgfSBmcm9tICdAc25hYmNlbnRyL2NsaWVudC1jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG1hcCwgc2hhcmUsIHNraXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNDX1VTRVJfUFJPVklERVJTLCBTQ19VU0VSX0lORk8gfSBmcm9tICcuLi8uLi9wcm92aWRlcnMnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyB0dWlJc0ZhbHN5LCB0dWlQdXJlIH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5cbi8qKlxuICog0JrQvtC80L/QvtC90LXQvdGCINC60L7QvdGC0LXQvdGC0LAg0L/RgNC+0YTQuNC70Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINCyINCy0LjQtNC1INGA0LDRgdC60YDRi9Cy0LDRjtGJ0LjRhdGB0Y8g0YHQvNGL0YHQu9C+0LLRi9GFINCx0LvQvtC60L7Qsi5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzYy1wcm9maWxlLWFjY29yZGlvbnMtY29udGVudCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NjLXByb2ZpbGUtYWNjb3JkaW9ucy1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtTQ19VU0VSX1BST1ZJREVSU10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNjUHJvZmlsZUFjY29yZGlvbnNDb250ZW50Q29tcG9uZW50IHtcbiAgICAvKipcbiAgICAgKiB7QGxpbmsgRm9ybUNvbnRyb2x9INC/0LXRgNC10LrQu9GO0YfQsNGC0LXQu9GPICfQryDRhdC+0YfRgyDQv9C+0LvRg9GH0LDRgtGMINGA0LDRgdGB0YvQu9C60YMnLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXROZXdzQ29udHJvbDogRm9ybUNvbnRyb2w8Ym9vbGVhbj4gPSBuZXcgRm9ybUNvbnRyb2w8Ym9vbGVhbj4oZmFsc2UsIHsgbm9uTnVsbGFibGU6IHRydWUgfSk7XG5cbiAgICAvKipcbiAgICAgKiB7QGxpbmsgT2JzZXJ2YWJsZX0g0JfQsNC/0YDQvtGB0LAg0LjQt9C80LXQvdC10L3QuNGPINC/0YDQuNC30L3QsNC60LAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICfQryDRhdC+0YfRgyDQv9C+0LvRg9GH0LDRgtGMINGA0LDRgdGB0YvQu9C60YMnLlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZ2V0TmV3c1JlcXVlc3QkID0gdGhpcy5nZXROZXdzQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT5cbiAgICAgICAgICAgIHRoaXMudXNlclNlcnZpY2UudXBkYXRlVXNlckluZm8kKHsgZ2V0TmV3czogdmFsdWUgfSkucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy51c2VyU2VydmljZS51cGRhdGVVc2VyQ2hhbmdlJCgpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXAoKHVzZXIpID0+IHRoaXMuZ2V0TmV3c0NvbnRyb2wucGF0Y2hWYWx1ZSh1c2VyLmdldE5ld3MsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KSksXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGFydFdpdGgobnVsbClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKG51bGwpXG4gICAgICAgICAgICApXG4gICAgICAgICksXG5cbiAgICAgICAgc2hhcmUoKVxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiB7QGxpbmsgT2JzZXJ2YWJsZX0g0JjQt9C80LXQvdC10L3QuNGPINGB0L7RgdGC0L7Rj9C90LjRjyDQt9Cw0LPRgNGD0LfQutC4INC00LDQvdC90YvRhSDQuNC30LzQtdC90LXQvdC40Y8g0L/RgNC40LfQvdCw0LrQsCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8gJ9CvINGF0L7Rh9GDINC/0L7Qu9GD0YfQsNGC0Ywg0YDQsNGB0YHRi9C70LrRgycuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGdldE5ld3NMb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuZ2V0TmV3c1JlcXVlc3QkLnBpcGUobWFwKHR1aUlzRmFsc3kpKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40LUg0LrQvtC90YLQsNC60YLQvdC+0LPQviDQu9C40YbQsC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgZWRpdFByb2ZpbGVDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0L3QsNC20LDRgtC40Y8g0L3QsCDQutC90L7Qv9C60YMg0L/QvtC00YLQstC10YDQttC00LXQvdC40Y8g0YLQtdC70LXRhNC+0L3QsC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgYXBwcm92ZVBob25lQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINC/0L7QtNGC0LLQtdGA0LbQtNC10L3QuNGPINGN0LvQtdC60YLRgNC+0L3QvdC+0Lkg0L/QvtGH0YLRiy5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgYXBwcm92ZUVtYWlsQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKlxuICAgICAqINCh0L7QsdGL0YLQuNC1INC90LDQttCw0YLQuNGPINC90LAg0LrQvdC+0L/QutGDINC00L7QsdCw0LLQu9C10L3QuNGPINC60L7QvdGC0YDQsNCz0LXQvdGC0LAuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGFkZENvbnRyYWdlbnRDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLyoqXG4gICAgICog0KHQvtCx0YvRgtC40LUg0L3QsNC20LDRgtC40Y8g0L3QsCDQutC90L7Qv9C60YMg0LTQvtCx0LDQstC70LXQvdC40Y8g0LDQtNGA0LXRgdCwINC00L7RgdGC0LDQstC60Lgg0LrQu9C40LXQvdGC0LAuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGFkZERlbGl2ZXJ5QWRkcmVzc0NsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiDQmNC90LjRhtC40LDQu9C40LfQuNGA0YPQtdGCINGN0LrQt9C10LzQv9C70Y/RgCDQutC70LDRgdGB0LAge0BsaW5rIFNjUHJvZmlsZUNvbXBvbmVudH0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdXNlciQg0J/QvtGC0L7QuiDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDRgtC10LrRg9GJ0LXQvCDQv9C+0LvRjNC30L7QstCw0YLQtdC70LUuXG4gICAgICogQHBhcmFtIGxvY2F0aW9uc1NlcnZpY2Ug0KHQtdGA0LLQuNGBINC00LvRjyDQv9C+0LvRg9GH0LXQvdC40Y8g0YHQv9C40YHQutC+0LIg0YHRgtGA0LDQvSwg0YDQtdCz0LjQvtC90L7Qsiwg0LPQvtGA0L7QtNC+0LIuXG4gICAgICogQHBhcmFtIHVzZXJTZXJ2aWNlINCh0LXRgNCy0LjRgSDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70LUuXG4gICAgICovXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFNDX1VTRVJfSU5GTykgcHVibGljIHJlYWRvbmx5IHVzZXIkOiBPYnNlcnZhYmxlPFNjVXNlcj4sXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25zU2VydmljZTogU2NMb2NhdGlvbnNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJTZXJ2aWNlOiBTY1VzZXJTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICog0KHQvtC30LTQsNC10YIg0LfQsNC/0YDQvtGBINC/0L7Qu9GD0YfQtdC90LjRjyDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDQs9C+0YDQvtC00LUg0YLQtdC60YPRidC10LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0L/QviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGDINCz0L7RgNC+0LTQsC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjaXR5SWQg0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC/0LjRgdC4INCz0L7RgNC+0LTQsC5cbiAgICAgKi9cbiAgICBAdHVpUHVyZSAvLyBUT0RPOiBUQVNLWyM3NjE1XSDQo9C00LDQu9C40YLRjCDQv9C+0LvQtSDRgNC10YTQsNC60YLQvtGA0LjQvdCz0LAg0YHQtdGA0LLQuNGB0LAg0YDQsNCx0L7RgtGLINGBINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC8LlxuICAgIHB1YmxpYyBnZXRVc2VyQ2l0eSQoY2l0eUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFNjSUNpdHk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMubG9jYXRpb25zU2VydmljZS5nZXRVc2VyQ2l0eSQoY2l0eUlkKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNFwiPlxuICAgIDxzYy1hY2NvcmRpb24gW3Nob3dBcnJvd109XCJmYWxzZVwiIFtzaG93QWRkQnV0dG9uXT1cImZhbHNlXCIgW29wZW5dPVwidHJ1ZVwiPlxuICAgICAgICDQntCx0YnQuNC1INC00LDQvdC90YvQtVxuICAgICAgICA8bmctdGVtcGxhdGUgc2NBY2NvcmRpb25Db250ZW50PlxuICAgICAgICAgICAgPHR1aS1sb2FkZXIgKnR1aUxldD1cInVzZXIkIHwgYXN5bmMgYXMgdXNlclwiIFtvdmVybGF5XT1cInRydWVcIiBbc2hvd0xvYWRlcl09XCJ1c2VyID09PSBudWxsXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZ2FwLTIgcGwtNFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidXNlclwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBmbGV4LWdyb3cgZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IHVzZXIubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInVzZXIuY2l0eSAmJiAoZ2V0VXNlckNpdHkkKHVzZXIuY2l0eSkgfCBhc3luYykgYXMgY2l0eVwiIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHVpLXN2ZyBzcmM9XCJ0dWlJY29uTWFwUGluXCI+PC90dWktc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPtCzLiB7eyBjaXR5Lm5hbWUgfX0sIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNpdHkucmVnaW9uXCI+e3sgY2l0eS5yZWdpb24ubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHVpTGlua1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dWlNb2RlPVwib25MaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJ0dWlJY29uUGhvbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uQWxpZ249XCJsZWZ0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BzZXVkb109XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj1cInRlbDp7eyB1c2VyLmNvbnRhY3RzLnBob25lLnZhbHVlfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgdXNlci5jb250YWN0cy5waG9uZS52YWx1ZSB8IHR1aUZvcm1hdFBob25lIH19PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIXVzZXIuY29udGFjdHMucGhvbmUuaXNBcHByb3ZlZFwiIGNsYXNzPVwidGV4dC10dWktdGV4dC0wM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo0KLQtdC70LXRhNC+0L0g0L3QtSDQv9C+0LTRgtCy0LXRgNC20LTQtdC9LiA8YnV0dG9uIHR1aUxpbmsgW3BzZXVkb109XCJ0cnVlXCIgKGNsaWNrKT1cImFwcHJvdmVQaG9uZUNsaWNrLmVtaXQoKVwiPtCf0L7QtNGC0LLQtdGA0LTQuNGC0Yw8L2J1dHRvbj4pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSB0dWlMaW5rIHR1aU1vZGU9XCJvbkxpZ2h0XCIgaWNvbj1cInR1aUljb25NYWlsXCIgaWNvbkFsaWduPVwibGVmdFwiIFtwc2V1ZG9dPVwidHJ1ZVwiIGhyZWY9XCJtYWlsdG86e3sgdXNlci5jb250YWN0cy5lbWFpbC52YWx1ZSB9fVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyB1c2VyLmNvbnRhY3RzLmVtYWlsLnZhbHVlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIXVzZXIuY29udGFjdHMuZW1haWwuaXNBcHByb3ZlZFwiIGNsYXNzPVwidGV4dC10dWktdGV4dC0wM1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoRS1tYWlsINC90LUg0L/QvtC00YLQstC10YDQttC00LXQvS4gPGJ1dHRvbiB0dWlMaW5rIFtwc2V1ZG9dPVwidHJ1ZVwiIChjbGljayk9XCJhcHByb3ZlRW1haWxDbGljay5lbWl0KClcIj7Qn9C+0LTRgtCy0LXRgNC00LjRgtGMPC9idXR0b24+KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHR1aS1sb2FkZXIgW3Nob3dMb2FkZXJdPVwiISEoZ2V0TmV3c0xvYWRpbmckIHwgYXN5bmMpXCIgW292ZXJsYXldPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0dWktY2hlY2tib3gtbGFiZWxlZCBzaXplPVwibVwiIGNsYXNzPVwidy1mdWxsXCIgW2Zvcm1Db250cm9sXT1cImdldE5ld3NDb250cm9sXCIgW25nTW9kZWxdPVwidXNlci5nZXROZXdzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCvINGF0L7Rh9GDINC/0L7Qu9GD0YfQsNGC0Ywg0YDQsNGB0YHRi9C70LrRgyDQodC90LDQsdGG0LXQvdGC0YAg0L4g0YHQutC40LTQutCw0YUg0Lgg0L3QvtCy0L7RgdGC0Y/RhSDQv9C+INGN0LvQtdC60YLRgNC+0L3QvdC+0Lkg0L/QvtGH0YLQtS5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3R1aS1jaGVja2JveC1sYWJlbGVkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90dWktbG9hZGVyPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR1aUljb25CdXR0b24gc2l6ZT1cIm1cIiB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInR1aUljb25FZGl0M0xhcmdlXCIgdHVpTW9kZT1cIm9uTGlnaHRcIiBhcHBlYXJhbmNlPVwiZmxhdFwiIChjbGljayk9XCJlZGl0UHJvZmlsZUNsaWNrLmVtaXQoKVwiPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90dWktbG9hZGVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvc2MtYWNjb3JkaW9uPlxuICAgIDxzYy1jb250cmFnZW50cy1hY2NvcmRpb24gKGFkZENvbnRyYWdlbnRDbGljayk9XCJhZGRDb250cmFnZW50Q2xpY2suZW1pdCgpXCI+PC9zYy1jb250cmFnZW50cy1hY2NvcmRpb24+XG4gICAgPHNjLWRlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uIChhZGREZWxpdmVyeUFkZHJlc3NDbGljayk9XCJhZGREZWxpdmVyeUFkZHJlc3NDbGljay5lbWl0KClcIj48L3NjLWRlbGl2ZXJ5LWFkZHJlc3MtYWNjb3JkaW9uPlxuICAgIDxzYy1hY2NvcmRpb24gW3Nob3dBcnJvd109XCJmYWxzZVwiIFtzaG93QWRkQnV0dG9uXT1cImZhbHNlXCI+XG4gICAgICAgINCY0LfQvNC10L3QuNGC0Ywg0L/QsNGA0L7Qu9GMXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBzY0FjY29yZGlvbkNvbnRlbnQ+XG4gICAgICAgICAgICA8c2MtcmVzZXQtdXNlci1wYXNzd29yZD48L3NjLXJlc2V0LXVzZXItcGFzc3dvcmQ+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9zYy1hY2NvcmRpb24+XG48L2Rpdj5cbiJdfQ==