@datarailsshared/datarailsshared 1.5.279 → 1.5.282

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/datarailsshared-datarailsshared-1.5.282.tgz +0 -0
  2. package/esm2022/lib/dr-avatar/dr-avatar.component.mjs +1 -1
  3. package/esm2022/lib/dr-badge-status/dr-badge-status.component.mjs +1 -1
  4. package/esm2022/lib/dr-chat/dr-chat-alert/dr-chat-alert.component.mjs +1 -1
  5. package/esm2022/lib/dr-chat/dr-chat-message/chat-message.component.mjs +3 -3
  6. package/esm2022/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.mjs +1 -1
  7. package/esm2022/lib/dr-dropdown/dr-dropdown.component.mjs +2 -2
  8. package/esm2022/lib/dr-error/dr-error.component.mjs +1 -1
  9. package/esm2022/lib/dr-inputs/checkbox/checkbox.component.mjs +1 -1
  10. package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.mjs +1 -1
  11. package/esm2022/lib/dr-inputs/dr-input/dr-input.component.mjs +24 -13
  12. package/esm2022/lib/dr-tabs/dr-tabs.component.mjs +1 -1
  13. package/esm2022/lib/dr-tooltip/components/tooltip-default/tooltip-default.component.mjs +22 -0
  14. package/esm2022/lib/dr-tooltip/dr-tooltip.component.mjs +4 -3
  15. package/esm2022/lib/dr-tooltip/dr-tooltip.directive.mjs +20 -3
  16. package/esm2022/lib/dr-tooltip/dr-tooltip.module.mjs +7 -3
  17. package/esm2022/lib/models/chat.mjs +3 -2
  18. package/esm2022/lib/stepper/stepper.component.mjs +1 -1
  19. package/esm2022/public-api.mjs +2 -1
  20. package/fesm2022/datarailsshared-datarailsshared.mjs +84 -33
  21. package/fesm2022/datarailsshared-datarailsshared.mjs.map +1 -1
  22. package/lib/dr-inputs/dr-input/dr-input.component.d.ts +7 -3
  23. package/lib/dr-tooltip/components/tooltip-default/tooltip-default.component.d.ts +9 -0
  24. package/lib/dr-tooltip/dr-tooltip.directive.d.ts +4 -1
  25. package/lib/dr-tooltip/dr-tooltip.module.d.ts +7 -6
  26. package/package.json +1 -1
  27. package/public-api.d.ts +1 -0
  28. package/datarailsshared-datarailsshared-1.5.279.tgz +0 -0
@@ -36,7 +36,7 @@ export class DrAvatarComponent {
36
36
  return DrAvatarService.avatarColors[user.colorNumber] || DrAvatarService.avatarColors[0];
37
37
  }
38
38
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
39
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrAvatarComponent, selector: "dr-avatar", inputs: { users: "users", warning: "warning", showUnassigned: "showUnassigned", drAvatarTooltipPosition: "drAvatarTooltipPosition", drAvatarTooltipClass: "drAvatarTooltipClass", drAvatarSize: "drAvatarSize", drAvatarIsClickable: "drAvatarIsClickable" }, outputs: { userClicked: "userClicked" }, ngImport: i0, template: "<div class=\"users-section\">\n <div *ngIf=\"!parsedUsers.length\"\n class=\"users-section__default\">\n </div>\n\n <div *ngFor=\"let user of getFirstUsers()\"\n class=\"users-section__user\"\n [class]=\"user.status\"\n [style.width]=\"drAvatarSize || null\"\n [style.height]=\"drAvatarSize || null\"\n [style.background-color]=\"getAvatarColor(user)\"\n [ngClass]=\"{\n 'users-section__default': showUnassigned && !user.email,\n 'users-section__user--clickable': drAvatarIsClickable\n }\"\n [drTooltip]=\"user | drAvatar\"\n [drTooltipClass]=\"drAvatarTooltipClass\"\n [drTooltipPosition]=\"drAvatarTooltipPosition\"\n (click)=\"drAvatarIsClickable && userClicked.emit()\">\n {{user | drAvatar: 'initials'}}\n </div>\n\n <div *ngIf=\"parsedUsers.length > 2\"\n class=\"users-section__user icon-2\"\n [drTooltip]=\"usersTemplate\"\n [drTooltipPosition]=\"'bottom'\">\n {{getLastUsers().length}}\n </div>\n</div>\n\n<ng-template #usersTemplate>\n <div *ngFor=\"let user of getLastUsers()\" class=\"users-popover-item\">\n <div class=\"users-section__user\"\n (click)=\"userClicked.emit()\"\n [class]=\"user.class\">\n {{user | drAvatar: 'initials'}}\n </div>\n <span class=\"username\">\n {{user | drAvatar}}\n </span>\n </div>\n</ng-template>\n", styles: [":host{width:auto}.users-section{display:flex;height:28px}.users-section__default{display:flex;height:28px;width:28px;border-radius:14px;background:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Crect width%3D%2224%22 height%3D%2224%22 rx%3D%2212%22 fill%3D%22%23E5E6EA%22%2F%3E %3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M15 9.75C15 11.4069 13.6569 12.75 12 12.75C10.3431 12.75 9 11.4069 9 9.75C9 8.09315 10.3431 6.75 12 6.75C13.6569 6.75 15 8.09315 15 9.75ZM13.875 9.75C13.875 10.7855 13.0355 11.625 12 11.625C10.9645 11.625 10.125 10.7855 10.125 9.75C10.125 8.71447 10.9645 7.875 12 7.875C13.0355 7.875 13.875 8.71447 13.875 9.75Z%22 fill%3D%22%2351566F%22%2F%3E %3Cpath d%3D%22M15.9968 16.7631C15.5425 15.3973 14.0368 14.25 12 14.25C9.9632 14.25 8.45748 15.3973 8.00319 16.7631C7.91242 17.0359 7.67416 17.25 7.38657 17.25C7.04536 17.25 6.77507 16.9539 6.86275 16.6241C7.39546 14.6206 9.49327 13.125 12 13.125C14.5067 13.125 16.6045 14.6206 17.1373 16.6241C17.2249 16.9539 16.9546 17.25 16.6134 17.25C16.3259 17.25 16.0876 17.0359 15.9968 16.7631Z%22 fill%3D%22%2351566F%22%2F%3E%3C%2Fsvg%3E\") no-repeat!important;background-size:cover}.users-popover-item{display:flex;align-items:center;margin:12px}.users-popover-item .username{color:#51566f;font-size:14px}.users-popover-item .users-section__user{margin-right:8px}.users-section__user{position:relative;display:flex;justify-content:center;align-items:center;height:28px;width:28px;border-radius:14px;background:red;color:#fff;font-size:12px}.users-section__user--clickable{cursor:pointer}.users-section__user:not(:first-child){margin-left:4px}.users-section__user.online:after,.users-section__user.offline:after,.users-section__user.warning:after{content:\"\";display:flex;width:8px;height:8px;position:absolute;border-radius:4px;top:-2px;right:0}.users-section__user.online:after{background:#03a678}.users-section__user.offline:after{background:#de2833}.users-section__user.warning:after{background:#fda014}\n"], dependencies: [{ kind: "directive", type: i1.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.DrAvatarPipe, name: "drAvatar" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
39
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrAvatarComponent, selector: "dr-avatar", inputs: { users: "users", warning: "warning", showUnassigned: "showUnassigned", drAvatarTooltipPosition: "drAvatarTooltipPosition", drAvatarTooltipClass: "drAvatarTooltipClass", drAvatarSize: "drAvatarSize", drAvatarIsClickable: "drAvatarIsClickable" }, outputs: { userClicked: "userClicked" }, ngImport: i0, template: "<div class=\"users-section\">\n <div *ngIf=\"!parsedUsers.length\"\n class=\"users-section__default\">\n </div>\n\n <div *ngFor=\"let user of getFirstUsers()\"\n class=\"users-section__user\"\n [class]=\"user.status\"\n [style.width]=\"drAvatarSize || null\"\n [style.height]=\"drAvatarSize || null\"\n [style.background-color]=\"getAvatarColor(user)\"\n [ngClass]=\"{\n 'users-section__default': showUnassigned && !user.email,\n 'users-section__user--clickable': drAvatarIsClickable\n }\"\n [drTooltip]=\"user | drAvatar\"\n [drTooltipClass]=\"drAvatarTooltipClass\"\n [drTooltipPosition]=\"drAvatarTooltipPosition\"\n (click)=\"drAvatarIsClickable && userClicked.emit()\">\n {{user | drAvatar: 'initials'}}\n </div>\n\n <div *ngIf=\"parsedUsers.length > 2\"\n class=\"users-section__user icon-2\"\n [drTooltip]=\"usersTemplate\"\n [drTooltipPosition]=\"'bottom'\">\n {{getLastUsers().length}}\n </div>\n</div>\n\n<ng-template #usersTemplate>\n <div *ngFor=\"let user of getLastUsers()\" class=\"users-popover-item\">\n <div class=\"users-section__user\"\n (click)=\"userClicked.emit()\"\n [class]=\"user.class\">\n {{user | drAvatar: 'initials'}}\n </div>\n <span class=\"username\">\n {{user | drAvatar}}\n </span>\n </div>\n</ng-template>\n", styles: [":host{width:auto}.users-section{display:flex;height:28px}.users-section__default{display:flex;height:28px;width:28px;border-radius:14px;background:url(\"data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Crect width%3D%2224%22 height%3D%2224%22 rx%3D%2212%22 fill%3D%22%23E5E6EA%22%2F%3E %3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M15 9.75C15 11.4069 13.6569 12.75 12 12.75C10.3431 12.75 9 11.4069 9 9.75C9 8.09315 10.3431 6.75 12 6.75C13.6569 6.75 15 8.09315 15 9.75ZM13.875 9.75C13.875 10.7855 13.0355 11.625 12 11.625C10.9645 11.625 10.125 10.7855 10.125 9.75C10.125 8.71447 10.9645 7.875 12 7.875C13.0355 7.875 13.875 8.71447 13.875 9.75Z%22 fill%3D%22%2351566F%22%2F%3E %3Cpath d%3D%22M15.9968 16.7631C15.5425 15.3973 14.0368 14.25 12 14.25C9.9632 14.25 8.45748 15.3973 8.00319 16.7631C7.91242 17.0359 7.67416 17.25 7.38657 17.25C7.04536 17.25 6.77507 16.9539 6.86275 16.6241C7.39546 14.6206 9.49327 13.125 12 13.125C14.5067 13.125 16.6045 14.6206 17.1373 16.6241C17.2249 16.9539 16.9546 17.25 16.6134 17.25C16.3259 17.25 16.0876 17.0359 15.9968 16.7631Z%22 fill%3D%22%2351566F%22%2F%3E%3C%2Fsvg%3E\") no-repeat!important;background-size:cover}.users-popover-item{display:flex;align-items:center;margin:12px}.users-popover-item .username{color:#51566f;font-size:14px}.users-popover-item .users-section__user{margin-right:8px}.users-section__user{position:relative;display:flex;justify-content:center;align-items:center;height:28px;width:28px;border-radius:14px;background:red;color:#fff;font-size:12px}.users-section__user--clickable{cursor:pointer}.users-section__user:not(:first-child){margin-left:4px}.users-section__user.online:after,.users-section__user.offline:after,.users-section__user.warning:after{content:\"\";display:flex;width:8px;height:8px;position:absolute;border-radius:4px;top:-2px;right:0}.users-section__user.online:after{background:#03a678}.users-section__user.offline:after{background:#de2833}.users-section__user.warning:after{background:#fda014}\n"], dependencies: [{ kind: "directive", type: i1.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.DrAvatarPipe, name: "drAvatar" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
40
40
  }
41
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrAvatarComponent, decorators: [{
42
42
  type: Component,
@@ -8,7 +8,7 @@ export class DrBadgeStatusComponent {
8
8
  this.theme = BadgeStatus.REGULAR;
9
9
  }
10
10
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrBadgeStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrBadgeStatusComponent, selector: "dr-badge-status", inputs: { theme: "theme", icon: "icon", label: "label", tooltip: "tooltip" }, ngImport: i0, template: "<div class=\"badge-status\" [drTooltip]=\"tooltip\"\n [ngClass]=\"'badge-status--' + theme\">\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i>\n <span *ngIf=\"label\">{{ label }}</span>\n</div>\n", styles: [".badge-status{display:flex;align-items:center;font-family:Poppins,sans-serif;font-style:normal;font-size:12px;font-weight:600;line-height:20px;height:24px;padding:2px 8px 2px 4px;border-radius:4px;cursor:pointer}.badge-status i{font-size:20px;margin-right:4px}.badge-status--info{color:#0b5af9;background:#e6efff}.badge-status--error{color:#bf1d30;background:#f7d9dc}.badge-status--warning{color:#ffb800;background:#ffefc7}.badge-status--success{color:#037c5a;background:#dbf5e6}.badge-status--regular{color:#7e828e;background:#f0f1f4}.badge-status--progress{color:#4646ce;background:#f2f2fb}.badge-status--dotted{color:#7e828e;background:transparent}.badge-status--dotted i{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }], encapsulation: i0.ViewEncapsulation.None }); }
11
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrBadgeStatusComponent, selector: "dr-badge-status", inputs: { theme: "theme", icon: "icon", label: "label", tooltip: "tooltip" }, ngImport: i0, template: "<div class=\"badge-status\" [drTooltip]=\"tooltip\"\n [ngClass]=\"'badge-status--' + theme\">\n <i *ngIf=\"icon\" class=\"{{ icon }}\"></i>\n <span *ngIf=\"label\">{{ label }}</span>\n</div>\n", styles: [".badge-status{display:flex;align-items:center;font-family:Poppins,sans-serif;font-style:normal;font-size:12px;font-weight:600;line-height:20px;height:24px;padding:2px 8px 2px 4px;border-radius:4px;cursor:pointer}.badge-status i{font-size:20px;margin-right:4px}.badge-status--info{color:#0b5af9;background:#e6efff}.badge-status--error{color:#bf1d30;background:#f7d9dc}.badge-status--warning{color:#ffb800;background:#ffefc7}.badge-status--success{color:#037c5a;background:#dbf5e6}.badge-status--regular{color:#7e828e;background:#f0f1f4}.badge-status--progress{color:#4646ce;background:#f2f2fb}.badge-status--dotted{color:#7e828e;background:transparent}.badge-status--dotted i{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }], encapsulation: i0.ViewEncapsulation.None }); }
12
12
  }
13
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrBadgeStatusComponent, decorators: [{
14
14
  type: Component,
@@ -8,7 +8,7 @@ export class DrChatAlertComponent {
8
8
  this.close = new EventEmitter();
9
9
  }
10
10
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrChatAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrChatAlertComponent, selector: "dr-chat-alert", inputs: { iconClass: "iconClass" }, outputs: { close: "close" }, ngImport: i0, template: "<i [class]=\"iconClass\"></i>\n<ng-content></ng-content>\n<dr-button (click)=\"close.emit()\"\n theme=\"icon\"\n icon=\"dr-icon-exit\"\n class=\"chat-alert-close-btn\"\n drTooltip=\"Close\">\n</dr-button>\n", styles: [":host{display:flex;padding:8px 24px;align-items:center;min-height:40px;color:#6d6e6f;background-color:#f6f7f8;border-top:1px solid #DFE0E3;font-size:12px;line-height:20px;white-space:pre-line}:host i{margin-right:8px}:host .chat-alert-close-btn{display:none;position:absolute;right:16px;color:#aeabac}:host:hover .chat-alert-close-btn{display:block}\n"], dependencies: [{ kind: "component", type: i1.DrButtonComponent, selector: "dr-button", inputs: ["theme", "icon", "iconColor", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "disabled", "isLoading", "isActive"] }, { kind: "directive", type: i2.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrChatAlertComponent, selector: "dr-chat-alert", inputs: { iconClass: "iconClass" }, outputs: { close: "close" }, ngImport: i0, template: "<i [class]=\"iconClass\"></i>\n<ng-content></ng-content>\n<dr-button (click)=\"close.emit()\"\n theme=\"icon\"\n icon=\"dr-icon-exit\"\n class=\"chat-alert-close-btn\"\n drTooltip=\"Close\">\n</dr-button>\n", styles: [":host{display:flex;padding:8px 24px;align-items:center;min-height:40px;color:#6d6e6f;background-color:#f6f7f8;border-top:1px solid #DFE0E3;font-size:12px;line-height:20px;white-space:pre-line}:host i{margin-right:8px}:host .chat-alert-close-btn{display:none;position:absolute;right:16px;color:#aeabac}:host:hover .chat-alert-close-btn{display:block}\n"], dependencies: [{ kind: "component", type: i1.DrButtonComponent, selector: "dr-button", inputs: ["theme", "icon", "iconColor", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "disabled", "isLoading", "isActive"] }, { kind: "directive", type: i2.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
12
  }
13
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrChatAlertComponent, decorators: [{
14
14
  type: Component,
@@ -46,7 +46,7 @@ export class DrChatMessageComponent {
46
46
  return customMessageDirective;
47
47
  }
48
48
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrChatMessageComponent, deps: [{ token: i1.DrChatCustomMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
49
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrChatMessageComponent, selector: "dr-chat-message", inputs: { reply: "reply", type: "type", message: "message", customMessageData: "customMessageData", user: "user" }, host: { properties: { "@flyInOut": "this.flyInOut", "class.not-reply": "this.notReply", "class.reply": "this.reply" } }, queries: [{ propertyName: "drChatMessageActions", first: true, predicate: ["drChatMessageActions"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"message.avatarUrl; else userAvatar\">\n <div class=\"avatar\" [style.background-image]=\"'url(' + message.avatarUrl + ')'\"></div>\n</ng-container>\n<ng-template #userAvatar>\n <dr-avatar *ngIf=\"message.user\" [users]=\"message.user\"></dr-avatar>\n</ng-template>\n<div class=\"message\" [class.message--custom]=\"customMessage\">\n <ng-container [ngSwitch]=\"message.kind\">\n <dr-chat-message-text *ngSwitchCase=\"MESSAGE_TYPE.TEXT\" [message]=\"message\"></dr-chat-message-text>\n <dr-chat-message-file *ngSwitchCase=\"MESSAGE_TYPE.DOWNLOAD_FILE\" [message]=\"message\"></dr-chat-message-file>\n <ng-container *ngSwitchDefault>\n <ng-container [ngTemplateOutlet]=\"getTemplate()\" [ngTemplateOutletContext]=\"getTemplateContext()\"></ng-container>\n </ng-container>\n </ng-container>\n <div class=\"message__actions\" *ngIf=\"drChatMessageActions;\">\n <ng-container [ngTemplateOutlet]=\"drChatMessageActions\"></ng-container>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:row;width:100%;background:#f9faffb3;border-top:1px solid #E5E5E5;padding:16px 24px}:host:first-child{border:none}:host:last-child{border-bottom:1px solid #E5E5E5}.reply+:host.reply,.not-reply+:host.not-reply{border-top:none;padding-top:0;padding-left:75px}.reply+:host.reply .avatar,.reply+:host.reply dr-avatar,.not-reply+:host.not-reply .avatar,.not-reply+:host.not-reply dr-avatar{display:none}:host.not-reply{background-color:#fff}:host .avatar{display:flex;width:28px;height:28px;background-color:#fff;border-radius:16px;flex-shrink:0;border:1px solid #DFE0E3;background-image:url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22UTF-8%22%3F%3E%3Csvg id%3D%22Layer_1%22 data-name%3D%22Layer 1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 viewBox%3D%220 0 74 65%22%3E %3Cdefs%3E %3Cstyle%3E .cls-1%2C .cls-2%2C .cls-3 %7B fill%3A none%3B %7D .cls-4 %7B fill%3A url(%23linear-gradient)%3B %7D .cls-5 %7B fill%3A %234eb7df%3B %7D .cls-2 %7B stroke%3A %23a6a8aa%3B stroke-miterlimit%3A 10%3B stroke-width%3A .37px%3B %7D .cls-6 %7B fill%3A url(%23linear-gradient-3)%3B %7D .cls-7 %7B fill%3A url(%23linear-gradient-2)%3B %7D .cls-3 %7B clip-path%3A url(%23clippath)%3B %7D %3C%2Fstyle%3E %3CclipPath id%3D%22clippath%22%3E %3Crect class%3D%22cls-1%22 width%3D%2274%22 height%3D%2265%22%2F%3E %3C%2FclipPath%3E %3ClinearGradient id%3D%22linear-gradient%22 x1%3D%2224.26%22 y1%3D%22-3.79%22 x2%3D%2295.63%22 y2%3D%2288.82%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%237676ff%22%2F%3E %3Cstop offset%3D%22.18%22 stop-color%3D%22%235959ff%22%2F%3E %3Cstop offset%3D%22.35%22 stop-color%3D%22%235757e0%22%2F%3E %3Cstop offset%3D%22.61%22 stop-color%3D%22%234646ce%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234b4be4%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234444eb%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-2%22 x1%3D%2212.05%22 y1%3D%2277.06%22 x2%3D%2210.77%22 y2%3D%2213.85%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%22.45%22 stop-color%3D%22%232f92b8%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234eb7df%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234eb7df%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-3%22 x1%3D%2262.26%22 y1%3D%22-2.54%22 x2%3D%2261.76%22 y2%3D%2285.91%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%2336369b%22%2F%3E %3Cstop offset%3D%22.52%22 stop-color%3D%22%234848d0%22%2F%3E %3C%2FlinearGradient%3E %3C%2Fdefs%3E %3Cg class%3D%22cls-3%22%3E %3Cg%3E %3Cpath class%3D%22cls-4%22 d%3D%22m73.32%2C24.79v15.73c0%2C13.12-9.87%2C23.79-22%2C23.79h-21.32c-3.46-.06-6.25-3.11-6.25-6.87s2.79-6.81%2C6.25-6.87h21.32c5.13%2C0%2C9.29-4.51%2C9.29-10.05v-15.73c0-5.54-4.17-10.05-9.29-10.05h-7.46c3.51%2C0%2C6.35-3.08%2C6.35-6.88s-2.79-6.8-6.25-6.87h7.35c12.12%2C0%2C22%2C10.67%2C22%2C23.79h0Z%22%2F%3E %3Cpath class%3D%22cls-5%22 d%3D%22m50.26%2C7.82c0%2C3.8-2.9%2C6.93-6.41%2C6.93h-21.86c-5.13%2C0-9.29%2C4.51-9.29%2C10.05v15.73c0%2C5.54%2C4.17%2C10.05%2C9.29%2C10.05h8.01c-3.46.06-6.25%2C3.11-6.25%2C6.87s2.79%2C6.81%2C6.25%2C6.87h-8.01c-12.12%2C0-22-10.67-22-23.79v-15.73C0%2C11.68%2C9.87%2C1%2C21.99%2C1h21.97c3.46.06%2C6.3%2C3.06%2C6.3%2C6.82Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m66.45%2C1h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m36.05%2C50.58h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-7%22 d%3D%22m0%2C33.78v-2.76C0%2C12.9%2C13.62%2C14.48%2C13.62%2C14.48h8.38c-5.5.46-9.5%2C4.71-9.5%2C9.96l.02%2C15.8c0%2C5.54%2C4.44%2C10.59%2C9.48%2C10.59l-8-.5S0%2C51.88%2C0%2C33.77h0Z%22%2F%3E %3Cpath class%3D%22cls-6%22 d%3D%22m73%2C31.51v2.76c0%2C18.12-13.62%2C16.53-13.62%2C16.53h-7.99c5.61-.85%2C9.09-4.76%2C9.09-10.02l.02-16.33c0-5.54-4.46-10-9.5-10h8s13.99-1.05%2C13.99%2C17.07h0Z%22%2F%3E %3C%2Fg%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-size:20px 22px;background-repeat:no-repeat;background-position-x:4px;background-position-y:3px}:host .avatar,:host dr-avatar{margin:0 23px 0 0}:host .avatar::ng-deep .users-section__user,:host dr-avatar::ng-deep .users-section__user{border:1px solid #DFE0E3}:host .message{display:flex;align-items:center;flex-grow:1}:host .message__actions{display:flex;align-items:center;margin-left:24px;flex-grow:1;justify-content:flex-end}:host .message__actions::ng-deep button:not(:hover) i[class*=dr-icon]{color:#b9b9ec!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i3.DrAvatarComponent, selector: "dr-avatar", inputs: ["users", "warning", "showUnassigned", "drAvatarTooltipPosition", "drAvatarTooltipClass", "drAvatarSize", "drAvatarIsClickable"], outputs: ["userClicked"] }, { kind: "component", type: i4.DrChatMessageTextComponent, selector: "dr-chat-message-text", inputs: ["message"] }, { kind: "component", type: i5.DrChatMessageFileComponent, selector: "dr-chat-message-file", inputs: ["message", "files"] }], animations: [
49
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrChatMessageComponent, selector: "dr-chat-message", inputs: { reply: "reply", type: "type", message: "message", customMessageData: "customMessageData", user: "user" }, host: { properties: { "@flyInOut": "this.flyInOut", "class.not-reply": "this.notReply", "class.reply": "this.reply" } }, queries: [{ propertyName: "drChatMessageActions", first: true, predicate: ["drChatMessageActions"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"message.avatarUrl; else userAvatar\">\n <div class=\"avatar\" [style.background-image]=\"'url(' + message.avatarUrl + ')'\"></div>\n</ng-container>\n<ng-template #userAvatar>\n <dr-avatar *ngIf=\"message.user\" [users]=\"message.user\"></dr-avatar>\n</ng-template>\n<div class=\"message\" [class.message--custom]=\"customMessage\">\n <ng-container [ngSwitch]=\"message.kind\">\n <dr-chat-message-text *ngSwitchCase=\"MESSAGE_TYPE.TEXT\" [message]=\"message\"></dr-chat-message-text>\n <dr-chat-message-file *ngSwitchCase=\"MESSAGE_TYPE.DOWNLOAD_FILE\" [message]=\"message\"></dr-chat-message-file>\n <ng-container *ngSwitchDefault>\n <ng-container [ngTemplateOutlet]=\"getTemplate()\" [ngTemplateOutletContext]=\"getTemplateContext()\"></ng-container>\n </ng-container>\n </ng-container>\n <div class=\"message__actions\" *ngIf=\"drChatMessageActions;\">\n <ng-container [ngTemplateOutlet]=\"drChatMessageActions\"></ng-container>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:row;width:100%;background:#f9faffb3;border-top:1px solid #E5E5E5;padding:16px 24px}:host:first-child{border:none}:host:last-child{border-bottom:1px solid #E5E5E5}.reply+:host.reply,.not-reply+:host.not-reply{border-top:none;padding-top:0;padding-left:75px}.reply+:host.reply .avatar,.reply+:host.reply dr-avatar,.not-reply+:host.not-reply .avatar,.not-reply+:host.not-reply dr-avatar{display:none}:host.not-reply{background-color:#fff}:host .avatar{display:flex;width:28px;height:28px;background-color:#fff;border-radius:16px;flex-shrink:0;border:1px solid #DFE0E3;background-image:url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22UTF-8%22%3F%3E%3Csvg id%3D%22Layer_1%22 data-name%3D%22Layer 1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 viewBox%3D%220 0 74 65%22%3E %3Cdefs%3E %3Cstyle%3E .cls-1%2C .cls-2%2C .cls-3 %7B fill%3A none%3B %7D .cls-4 %7B fill%3A url(%23linear-gradient)%3B %7D .cls-5 %7B fill%3A %234eb7df%3B %7D .cls-2 %7B stroke%3A %23a6a8aa%3B stroke-miterlimit%3A 10%3B stroke-width%3A .37px%3B %7D .cls-6 %7B fill%3A url(%23linear-gradient-3)%3B %7D .cls-7 %7B fill%3A url(%23linear-gradient-2)%3B %7D .cls-3 %7B clip-path%3A url(%23clippath)%3B %7D %3C%2Fstyle%3E %3CclipPath id%3D%22clippath%22%3E %3Crect class%3D%22cls-1%22 width%3D%2274%22 height%3D%2265%22%2F%3E %3C%2FclipPath%3E %3ClinearGradient id%3D%22linear-gradient%22 x1%3D%2224.26%22 y1%3D%22-3.79%22 x2%3D%2295.63%22 y2%3D%2288.82%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%237676ff%22%2F%3E %3Cstop offset%3D%22.18%22 stop-color%3D%22%235959ff%22%2F%3E %3Cstop offset%3D%22.35%22 stop-color%3D%22%235757e0%22%2F%3E %3Cstop offset%3D%22.61%22 stop-color%3D%22%234646ce%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234b4be4%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234444eb%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-2%22 x1%3D%2212.05%22 y1%3D%2277.06%22 x2%3D%2210.77%22 y2%3D%2213.85%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%22.45%22 stop-color%3D%22%232f92b8%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234eb7df%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234eb7df%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-3%22 x1%3D%2262.26%22 y1%3D%22-2.54%22 x2%3D%2261.76%22 y2%3D%2285.91%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%2336369b%22%2F%3E %3Cstop offset%3D%22.52%22 stop-color%3D%22%234848d0%22%2F%3E %3C%2FlinearGradient%3E %3C%2Fdefs%3E %3Cg class%3D%22cls-3%22%3E %3Cg%3E %3Cpath class%3D%22cls-4%22 d%3D%22m73.32%2C24.79v15.73c0%2C13.12-9.87%2C23.79-22%2C23.79h-21.32c-3.46-.06-6.25-3.11-6.25-6.87s2.79-6.81%2C6.25-6.87h21.32c5.13%2C0%2C9.29-4.51%2C9.29-10.05v-15.73c0-5.54-4.17-10.05-9.29-10.05h-7.46c3.51%2C0%2C6.35-3.08%2C6.35-6.88s-2.79-6.8-6.25-6.87h7.35c12.12%2C0%2C22%2C10.67%2C22%2C23.79h0Z%22%2F%3E %3Cpath class%3D%22cls-5%22 d%3D%22m50.26%2C7.82c0%2C3.8-2.9%2C6.93-6.41%2C6.93h-21.86c-5.13%2C0-9.29%2C4.51-9.29%2C10.05v15.73c0%2C5.54%2C4.17%2C10.05%2C9.29%2C10.05h8.01c-3.46.06-6.25%2C3.11-6.25%2C6.87s2.79%2C6.81%2C6.25%2C6.87h-8.01c-12.12%2C0-22-10.67-22-23.79v-15.73C0%2C11.68%2C9.87%2C1%2C21.99%2C1h21.97c3.46.06%2C6.3%2C3.06%2C6.3%2C6.82Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m66.45%2C1h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m36.05%2C50.58h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-7%22 d%3D%22m0%2C33.78v-2.76C0%2C12.9%2C13.62%2C14.48%2C13.62%2C14.48h8.38c-5.5.46-9.5%2C4.71-9.5%2C9.96l.02%2C15.8c0%2C5.54%2C4.44%2C10.59%2C9.48%2C10.59l-8-.5S0%2C51.88%2C0%2C33.77h0Z%22%2F%3E %3Cpath class%3D%22cls-6%22 d%3D%22m73%2C31.51v2.76c0%2C18.12-13.62%2C16.53-13.62%2C16.53h-7.99c5.61-.85%2C9.09-4.76%2C9.09-10.02l.02-16.33c0-5.54-4.46-10-9.5-10h8s13.99-1.05%2C13.99%2C17.07h0Z%22%2F%3E %3C%2Fg%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-size:20px;background-repeat:no-repeat;background-position-x:3px;background-position-y:4px}:host .avatar,:host dr-avatar{margin:0 23px 0 0}:host .avatar::ng-deep .users-section__user,:host dr-avatar::ng-deep .users-section__user{border:1px solid #DFE0E3}:host .message{display:flex;align-items:center;flex-grow:1}:host .message__actions{display:flex;align-items:center;margin-left:24px;flex-grow:1;justify-content:flex-end}:host .message__actions::ng-deep button:not(:hover) i[class*=dr-icon]{color:#b9b9ec!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i3.DrAvatarComponent, selector: "dr-avatar", inputs: ["users", "warning", "showUnassigned", "drAvatarTooltipPosition", "drAvatarTooltipClass", "drAvatarSize", "drAvatarIsClickable"], outputs: ["userClicked"] }, { kind: "component", type: i4.DrChatMessageTextComponent, selector: "dr-chat-message-text", inputs: ["message"] }, { kind: "component", type: i5.DrChatMessageFileComponent, selector: "dr-chat-message-file", inputs: ["message", "files"] }], animations: [
50
50
  trigger('flyInOut', [
51
51
  state('in', style({ transform: 'translateX(0)' })),
52
52
  transition('void => *', [style({ transform: 'translateX(-100%)' }), animate(80)]),
@@ -62,7 +62,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
62
62
  transition('void => *', [style({ transform: 'translateX(-100%)' }), animate(80)]),
63
63
  transition('* => void', [animate(80, style({ transform: 'translateX(100%)' }))]),
64
64
  ]),
65
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"message.avatarUrl; else userAvatar\">\n <div class=\"avatar\" [style.background-image]=\"'url(' + message.avatarUrl + ')'\"></div>\n</ng-container>\n<ng-template #userAvatar>\n <dr-avatar *ngIf=\"message.user\" [users]=\"message.user\"></dr-avatar>\n</ng-template>\n<div class=\"message\" [class.message--custom]=\"customMessage\">\n <ng-container [ngSwitch]=\"message.kind\">\n <dr-chat-message-text *ngSwitchCase=\"MESSAGE_TYPE.TEXT\" [message]=\"message\"></dr-chat-message-text>\n <dr-chat-message-file *ngSwitchCase=\"MESSAGE_TYPE.DOWNLOAD_FILE\" [message]=\"message\"></dr-chat-message-file>\n <ng-container *ngSwitchDefault>\n <ng-container [ngTemplateOutlet]=\"getTemplate()\" [ngTemplateOutletContext]=\"getTemplateContext()\"></ng-container>\n </ng-container>\n </ng-container>\n <div class=\"message__actions\" *ngIf=\"drChatMessageActions;\">\n <ng-container [ngTemplateOutlet]=\"drChatMessageActions\"></ng-container>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:row;width:100%;background:#f9faffb3;border-top:1px solid #E5E5E5;padding:16px 24px}:host:first-child{border:none}:host:last-child{border-bottom:1px solid #E5E5E5}.reply+:host.reply,.not-reply+:host.not-reply{border-top:none;padding-top:0;padding-left:75px}.reply+:host.reply .avatar,.reply+:host.reply dr-avatar,.not-reply+:host.not-reply .avatar,.not-reply+:host.not-reply dr-avatar{display:none}:host.not-reply{background-color:#fff}:host .avatar{display:flex;width:28px;height:28px;background-color:#fff;border-radius:16px;flex-shrink:0;border:1px solid #DFE0E3;background-image:url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22UTF-8%22%3F%3E%3Csvg id%3D%22Layer_1%22 data-name%3D%22Layer 1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 viewBox%3D%220 0 74 65%22%3E %3Cdefs%3E %3Cstyle%3E .cls-1%2C .cls-2%2C .cls-3 %7B fill%3A none%3B %7D .cls-4 %7B fill%3A url(%23linear-gradient)%3B %7D .cls-5 %7B fill%3A %234eb7df%3B %7D .cls-2 %7B stroke%3A %23a6a8aa%3B stroke-miterlimit%3A 10%3B stroke-width%3A .37px%3B %7D .cls-6 %7B fill%3A url(%23linear-gradient-3)%3B %7D .cls-7 %7B fill%3A url(%23linear-gradient-2)%3B %7D .cls-3 %7B clip-path%3A url(%23clippath)%3B %7D %3C%2Fstyle%3E %3CclipPath id%3D%22clippath%22%3E %3Crect class%3D%22cls-1%22 width%3D%2274%22 height%3D%2265%22%2F%3E %3C%2FclipPath%3E %3ClinearGradient id%3D%22linear-gradient%22 x1%3D%2224.26%22 y1%3D%22-3.79%22 x2%3D%2295.63%22 y2%3D%2288.82%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%237676ff%22%2F%3E %3Cstop offset%3D%22.18%22 stop-color%3D%22%235959ff%22%2F%3E %3Cstop offset%3D%22.35%22 stop-color%3D%22%235757e0%22%2F%3E %3Cstop offset%3D%22.61%22 stop-color%3D%22%234646ce%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234b4be4%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234444eb%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-2%22 x1%3D%2212.05%22 y1%3D%2277.06%22 x2%3D%2210.77%22 y2%3D%2213.85%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%22.45%22 stop-color%3D%22%232f92b8%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234eb7df%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234eb7df%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-3%22 x1%3D%2262.26%22 y1%3D%22-2.54%22 x2%3D%2261.76%22 y2%3D%2285.91%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%2336369b%22%2F%3E %3Cstop offset%3D%22.52%22 stop-color%3D%22%234848d0%22%2F%3E %3C%2FlinearGradient%3E %3C%2Fdefs%3E %3Cg class%3D%22cls-3%22%3E %3Cg%3E %3Cpath class%3D%22cls-4%22 d%3D%22m73.32%2C24.79v15.73c0%2C13.12-9.87%2C23.79-22%2C23.79h-21.32c-3.46-.06-6.25-3.11-6.25-6.87s2.79-6.81%2C6.25-6.87h21.32c5.13%2C0%2C9.29-4.51%2C9.29-10.05v-15.73c0-5.54-4.17-10.05-9.29-10.05h-7.46c3.51%2C0%2C6.35-3.08%2C6.35-6.88s-2.79-6.8-6.25-6.87h7.35c12.12%2C0%2C22%2C10.67%2C22%2C23.79h0Z%22%2F%3E %3Cpath class%3D%22cls-5%22 d%3D%22m50.26%2C7.82c0%2C3.8-2.9%2C6.93-6.41%2C6.93h-21.86c-5.13%2C0-9.29%2C4.51-9.29%2C10.05v15.73c0%2C5.54%2C4.17%2C10.05%2C9.29%2C10.05h8.01c-3.46.06-6.25%2C3.11-6.25%2C6.87s2.79%2C6.81%2C6.25%2C6.87h-8.01c-12.12%2C0-22-10.67-22-23.79v-15.73C0%2C11.68%2C9.87%2C1%2C21.99%2C1h21.97c3.46.06%2C6.3%2C3.06%2C6.3%2C6.82Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m66.45%2C1h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m36.05%2C50.58h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-7%22 d%3D%22m0%2C33.78v-2.76C0%2C12.9%2C13.62%2C14.48%2C13.62%2C14.48h8.38c-5.5.46-9.5%2C4.71-9.5%2C9.96l.02%2C15.8c0%2C5.54%2C4.44%2C10.59%2C9.48%2C10.59l-8-.5S0%2C51.88%2C0%2C33.77h0Z%22%2F%3E %3Cpath class%3D%22cls-6%22 d%3D%22m73%2C31.51v2.76c0%2C18.12-13.62%2C16.53-13.62%2C16.53h-7.99c5.61-.85%2C9.09-4.76%2C9.09-10.02l.02-16.33c0-5.54-4.46-10-9.5-10h8s13.99-1.05%2C13.99%2C17.07h0Z%22%2F%3E %3C%2Fg%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-size:20px 22px;background-repeat:no-repeat;background-position-x:4px;background-position-y:3px}:host .avatar,:host dr-avatar{margin:0 23px 0 0}:host .avatar::ng-deep .users-section__user,:host dr-avatar::ng-deep .users-section__user{border:1px solid #DFE0E3}:host .message{display:flex;align-items:center;flex-grow:1}:host .message__actions{display:flex;align-items:center;margin-left:24px;flex-grow:1;justify-content:flex-end}:host .message__actions::ng-deep button:not(:hover) i[class*=dr-icon]{color:#b9b9ec!important}\n"] }]
65
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"message.avatarUrl; else userAvatar\">\n <div class=\"avatar\" [style.background-image]=\"'url(' + message.avatarUrl + ')'\"></div>\n</ng-container>\n<ng-template #userAvatar>\n <dr-avatar *ngIf=\"message.user\" [users]=\"message.user\"></dr-avatar>\n</ng-template>\n<div class=\"message\" [class.message--custom]=\"customMessage\">\n <ng-container [ngSwitch]=\"message.kind\">\n <dr-chat-message-text *ngSwitchCase=\"MESSAGE_TYPE.TEXT\" [message]=\"message\"></dr-chat-message-text>\n <dr-chat-message-file *ngSwitchCase=\"MESSAGE_TYPE.DOWNLOAD_FILE\" [message]=\"message\"></dr-chat-message-file>\n <ng-container *ngSwitchDefault>\n <ng-container [ngTemplateOutlet]=\"getTemplate()\" [ngTemplateOutletContext]=\"getTemplateContext()\"></ng-container>\n </ng-container>\n </ng-container>\n <div class=\"message__actions\" *ngIf=\"drChatMessageActions;\">\n <ng-container [ngTemplateOutlet]=\"drChatMessageActions\"></ng-container>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:row;width:100%;background:#f9faffb3;border-top:1px solid #E5E5E5;padding:16px 24px}:host:first-child{border:none}:host:last-child{border-bottom:1px solid #E5E5E5}.reply+:host.reply,.not-reply+:host.not-reply{border-top:none;padding-top:0;padding-left:75px}.reply+:host.reply .avatar,.reply+:host.reply dr-avatar,.not-reply+:host.not-reply .avatar,.not-reply+:host.not-reply dr-avatar{display:none}:host.not-reply{background-color:#fff}:host .avatar{display:flex;width:28px;height:28px;background-color:#fff;border-radius:16px;flex-shrink:0;border:1px solid #DFE0E3;background-image:url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22UTF-8%22%3F%3E%3Csvg id%3D%22Layer_1%22 data-name%3D%22Layer 1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 viewBox%3D%220 0 74 65%22%3E %3Cdefs%3E %3Cstyle%3E .cls-1%2C .cls-2%2C .cls-3 %7B fill%3A none%3B %7D .cls-4 %7B fill%3A url(%23linear-gradient)%3B %7D .cls-5 %7B fill%3A %234eb7df%3B %7D .cls-2 %7B stroke%3A %23a6a8aa%3B stroke-miterlimit%3A 10%3B stroke-width%3A .37px%3B %7D .cls-6 %7B fill%3A url(%23linear-gradient-3)%3B %7D .cls-7 %7B fill%3A url(%23linear-gradient-2)%3B %7D .cls-3 %7B clip-path%3A url(%23clippath)%3B %7D %3C%2Fstyle%3E %3CclipPath id%3D%22clippath%22%3E %3Crect class%3D%22cls-1%22 width%3D%2274%22 height%3D%2265%22%2F%3E %3C%2FclipPath%3E %3ClinearGradient id%3D%22linear-gradient%22 x1%3D%2224.26%22 y1%3D%22-3.79%22 x2%3D%2295.63%22 y2%3D%2288.82%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%237676ff%22%2F%3E %3Cstop offset%3D%22.18%22 stop-color%3D%22%235959ff%22%2F%3E %3Cstop offset%3D%22.35%22 stop-color%3D%22%235757e0%22%2F%3E %3Cstop offset%3D%22.61%22 stop-color%3D%22%234646ce%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234b4be4%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234444eb%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-2%22 x1%3D%2212.05%22 y1%3D%2277.06%22 x2%3D%2210.77%22 y2%3D%2213.85%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%22.45%22 stop-color%3D%22%232f92b8%22%2F%3E %3Cstop offset%3D%22.84%22 stop-color%3D%22%234eb7df%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%234eb7df%22%2F%3E %3C%2FlinearGradient%3E %3ClinearGradient id%3D%22linear-gradient-3%22 x1%3D%2262.26%22 y1%3D%22-2.54%22 x2%3D%2261.76%22 y2%3D%2285.91%22 gradientTransform%3D%22translate(0 65.89) scale(1 -1)%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%2336369b%22%2F%3E %3Cstop offset%3D%22.52%22 stop-color%3D%22%234848d0%22%2F%3E %3C%2FlinearGradient%3E %3C%2Fdefs%3E %3Cg class%3D%22cls-3%22%3E %3Cg%3E %3Cpath class%3D%22cls-4%22 d%3D%22m73.32%2C24.79v15.73c0%2C13.12-9.87%2C23.79-22%2C23.79h-21.32c-3.46-.06-6.25-3.11-6.25-6.87s2.79-6.81%2C6.25-6.87h21.32c5.13%2C0%2C9.29-4.51%2C9.29-10.05v-15.73c0-5.54-4.17-10.05-9.29-10.05h-7.46c3.51%2C0%2C6.35-3.08%2C6.35-6.88s-2.79-6.8-6.25-6.87h7.35c12.12%2C0%2C22%2C10.67%2C22%2C23.79h0Z%22%2F%3E %3Cpath class%3D%22cls-5%22 d%3D%22m50.26%2C7.82c0%2C3.8-2.9%2C6.93-6.41%2C6.93h-21.86c-5.13%2C0-9.29%2C4.51-9.29%2C10.05v15.73c0%2C5.54%2C4.17%2C10.05%2C9.29%2C10.05h8.01c-3.46.06-6.25%2C3.11-6.25%2C6.87s2.79%2C6.81%2C6.25%2C6.87h-8.01c-12.12%2C0-22-10.67-22-23.79v-15.73C0%2C11.68%2C9.87%2C1%2C21.99%2C1h21.97c3.46.06%2C6.3%2C3.06%2C6.3%2C6.82Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m66.45%2C1h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-2%22 d%3D%22m36.05%2C50.58h-.22.22%2C0Z%22%2F%3E %3Cpath class%3D%22cls-7%22 d%3D%22m0%2C33.78v-2.76C0%2C12.9%2C13.62%2C14.48%2C13.62%2C14.48h8.38c-5.5.46-9.5%2C4.71-9.5%2C9.96l.02%2C15.8c0%2C5.54%2C4.44%2C10.59%2C9.48%2C10.59l-8-.5S0%2C51.88%2C0%2C33.77h0Z%22%2F%3E %3Cpath class%3D%22cls-6%22 d%3D%22m73%2C31.51v2.76c0%2C18.12-13.62%2C16.53-13.62%2C16.53h-7.99c5.61-.85%2C9.09-4.76%2C9.09-10.02l.02-16.33c0-5.54-4.46-10-9.5-10h8s13.99-1.05%2C13.99%2C17.07h0Z%22%2F%3E %3C%2Fg%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-size:20px;background-repeat:no-repeat;background-position-x:3px;background-position-y:4px}:host .avatar,:host dr-avatar{margin:0 23px 0 0}:host .avatar::ng-deep .users-section__user,:host dr-avatar::ng-deep .users-section__user{border:1px solid #DFE0E3}:host .message{display:flex;align-items:center;flex-grow:1}:host .message__actions{display:flex;align-items:center;margin-left:24px;flex-grow:1;justify-content:flex-end}:host .message__actions::ng-deep button:not(:hover) i[class*=dr-icon]{color:#b9b9ec!important}\n"] }]
66
66
  }], ctorParameters: function () { return [{ type: i1.DrChatCustomMessageService }]; }, propDecorators: { flyInOut: [{
67
67
  type: HostBinding,
68
68
  args: ['@flyInOut']
@@ -86,4 +86,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
86
86
  type: ContentChild,
87
87
  args: ['drChatMessageActions']
88
88
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1tZXNzYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWNoYXQvZHItY2hhdC1tZXNzYWdlL2NoYXQtbWVzc2FnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1jaGF0L2RyLWNoYXQtbWVzc2FnZS9jaGF0LW1lc3NhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsaUJBQWlCLEVBQWdCLE1BQU0sbUJBQW1CLENBQUM7QUFFcEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7Ozs7Ozs7QUFlbEcsTUFBTSxPQUFPLHNCQUFzQjtJQUkvQixJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFDSSxRQUFRO1FBQ1IsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFFSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFjO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBNkJELFlBQW9CLG9CQUFnRDtRQUFoRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQTRCO1FBcERwRSxpQkFBWSxHQUFHLGlCQUFpQixDQUFDO1FBeUJ2QixXQUFNLEdBQUcsS0FBSyxDQUFDO0lBNEJ6QixDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzFCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsT0FBTyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQ3JDLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0RSxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsSUFBWTtRQUNuQyxNQUFNLHNCQUFzQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFM0UsSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQ1gsaURBQWtELElBQUssS0FBSztnQkFDNUQseUVBQTBFLElBQUssSUFBSSxDQUN0RixDQUFDO1NBQ0w7UUFFRCxPQUFPLHNCQUFzQixDQUFDO0lBQ2xDLENBQUM7a0lBOUVRLHNCQUFzQjtzSEFBdEIsc0JBQXNCLDhaQ25CbkMsNmdDQWtCQSx1NExEUmdCO1lBQ1IsT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDaEIsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztnQkFDbEQsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pGLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ25GLENBQUM7U0FDTDs7NEZBR1Esc0JBQXNCO2tCQWJsQyxTQUFTOytCQUNJLGlCQUFpQixjQUdmO3dCQUNSLE9BQU8sQ0FBQyxVQUFVLEVBQUU7NEJBQ2hCLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7NEJBQ2xELFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDOzRCQUNqRixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzt5QkFDbkYsQ0FBQztxQkFDTCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTtpSEFPM0MsUUFBUTtzQkFEWCxXQUFXO3VCQUFDLFdBQVc7Z0JBTXBCLFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBVTFCLEtBQUs7c0JBRlIsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxhQUFhO2dCQVdqQixJQUFJO3NCQUFaLEtBQUs7Z0JBT0csT0FBTztzQkFBZixLQUFLO2dCQU9HLGlCQUFpQjtzQkFBekIsS0FBSztnQkFLRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRWdDLG9CQUFvQjtzQkFBekQsWUFBWTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ0hBVF9NRVNTQUdFX1RZUEUsIElDaGF0TWVzc2FnZSB9IGZyb20gJy4uLy4uL21vZGVscy9jaGF0JztcbmltcG9ydCB7IERyQ2hhdEN1c3RvbU1lc3NhZ2VEaXJlY3RpdmUgfSBmcm9tICcuL2RyLWNoYXQtbWVzc2FnZS1jdXN0b20vY2hhdC1jdXN0b20tbWVzc2FnZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRHJDaGF0Q3VzdG9tTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuL2RyLWNoYXQtbWVzc2FnZS1jdXN0b20vY2hhdC1jdXN0b20tbWVzc2FnZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1jaGF0LW1lc3NhZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnY2hhdC1tZXNzYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGF0LW1lc3NhZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2ZseUluT3V0JywgW1xuICAgICAgICAgICAgc3RhdGUoJ2luJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IConLCBbc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC0xMDAlKScgfSksIGFuaW1hdGUoODApXSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCcqID0+IHZvaWQnLCBbYW5pbWF0ZSg4MCwgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSldKSxcbiAgICAgICAgXSksXG4gICAgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRHJDaGF0TWVzc2FnZUNvbXBvbmVudCB7XG5cbiAgICBNRVNTQUdFX1RZUEUgPSBDSEFUX01FU1NBR0VfVFlQRTtcblxuICAgIEBIb3N0QmluZGluZygnQGZseUluT3V0JylcbiAgICBnZXQgZmx5SW5PdXQoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Mubm90LXJlcGx5JylcbiAgICBnZXQgbm90UmVwbHkoKSB7XG4gICAgICAgIHJldHVybiAhdGhpcy5yZXBseTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIGEgbWVzc2FnZSBpcyBhIHJlcGx5XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnJlcGx5JylcbiAgICBnZXQgcmVwbHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXBseTtcbiAgICB9XG5cbiAgICBzZXQgcmVwbHkodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fcmVwbHkgPSAhIXZhbHVlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfcmVwbHkgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHR5cGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIE1lc3NhZ2VcbiAgICAgKlxuICAgICAqIEB0eXBlIHtJQ2hhdE1lc3NhZ2V9XG4gICAgICovXG4gICAgQElucHV0KCkgbWVzc2FnZTogSUNoYXRNZXNzYWdlO1xuXG4gICAgLyoqXG4gICAgICogRGF0YSB3aGljaCB3aWxsIGJlIHNldCBhcyBjdXN0b20gbWVzc2FnZSB0ZW1wbGF0ZSBjb250ZXh0XG4gICAgICpcbiAgICAgKiBAdHlwZSB7YW55fVxuICAgICAqL1xuICAgIEBJbnB1dCgpIGN1c3RvbU1lc3NhZ2VEYXRhOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBVc2VyIGluZm8gZm9yIGF2YXRhclxuICAgICAqL1xuICAgIEBJbnB1dCgpIHVzZXI6IGFueTtcblxuICAgIEBDb250ZW50Q2hpbGQoJ2RyQ2hhdE1lc3NhZ2VBY3Rpb25zJykgZHJDaGF0TWVzc2FnZUFjdGlvbnM6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBwdWJsaWMgY3VzdG9tTWVzc2FnZTogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY3VzdG9tTWVzc2FnZVNlcnZpY2U6IERyQ2hhdEN1c3RvbU1lc3NhZ2VTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgICAgICB0aGlzLmN1c3RvbU1lc3NhZ2UgPSB0cnVlO1xuICAgICAgICBjb25zdCBjdXN0b21NZXNzYWdlID0gdGhpcy5nZXRDdXN0b21NZXNzYWdlKHRoaXMudHlwZSk7XG4gICAgICAgIHJldHVybiBjdXN0b21NZXNzYWdlLnRlbXBsYXRlUmVmO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUZW1wbGF0ZUNvbnRleHQoKTogeyAkaW1wbGljaXQ6IGFueTsgaXNSZXBseTogYm9vbGVhbiB9IHtcbiAgICAgICAgcmV0dXJuIHsgJGltcGxpY2l0OiB0aGlzLmN1c3RvbU1lc3NhZ2VEYXRhLCBpc1JlcGx5OiB0aGlzLnJlcGx5IH07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEN1c3RvbU1lc3NhZ2UodHlwZTogc3RyaW5nKTogRHJDaGF0Q3VzdG9tTWVzc2FnZURpcmVjdGl2ZSB7XG4gICAgICAgIGNvbnN0IGN1c3RvbU1lc3NhZ2VEaXJlY3RpdmUgPSB0aGlzLmN1c3RvbU1lc3NhZ2VTZXJ2aWNlLmdldEluc3RhbmNlKHR5cGUpO1xuXG4gICAgICAgIGlmICghY3VzdG9tTWVzc2FnZURpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgIGBkci1jaGF0OiBDYW4ndCBmaW5kIHRlbXBsYXRlIGZvciBjdXN0b20gdHlwZSAnJHsgdHlwZSB9Jy4gYCArXG4gICAgICAgICAgICAgICAgYE1ha2Ugc3VyZSB5b3UgcHJvdmlkZSBpdCBpbiB0aGUgY2hhdCBjb21wb25lbnQgd2l0aCAqZHJDdXN0b21NZXNzYWdlPSckeyB0eXBlIH0nLmAsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGN1c3RvbU1lc3NhZ2VEaXJlY3RpdmU7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1lc3NhZ2UuYXZhdGFyVXJsOyBlbHNlIHVzZXJBdmF0YXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyXCIgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgbWVzc2FnZS5hdmF0YXJVcmwgKyAnKSdcIj48L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICN1c2VyQXZhdGFyPlxuICAgIDxkci1hdmF0YXIgKm5nSWY9XCJtZXNzYWdlLnVzZXJcIiBbdXNlcnNdPVwibWVzc2FnZS51c2VyXCI+PC9kci1hdmF0YXI+XG48L25nLXRlbXBsYXRlPlxuPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIiBbY2xhc3MubWVzc2FnZS0tY3VzdG9tXT1cImN1c3RvbU1lc3NhZ2VcIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJtZXNzYWdlLmtpbmRcIj5cbiAgICAgICAgPGRyLWNoYXQtbWVzc2FnZS10ZXh0ICpuZ1N3aXRjaENhc2U9XCJNRVNTQUdFX1RZUEUuVEVYVFwiIFttZXNzYWdlXT1cIm1lc3NhZ2VcIj48L2RyLWNoYXQtbWVzc2FnZS10ZXh0PlxuICAgICAgICA8ZHItY2hhdC1tZXNzYWdlLWZpbGUgKm5nU3dpdGNoQ2FzZT1cIk1FU1NBR0VfVFlQRS5ET1dOTE9BRF9GSUxFXCIgW21lc3NhZ2VdPVwibWVzc2FnZVwiPjwvZHItY2hhdC1tZXNzYWdlLWZpbGU+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZ2V0VGVtcGxhdGUoKVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJnZXRUZW1wbGF0ZUNvbnRleHQoKVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZV9fYWN0aW9uc1wiICpuZ0lmPVwiZHJDaGF0TWVzc2FnZUFjdGlvbnM7XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZHJDaGF0TWVzc2FnZUFjdGlvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1tZXNzYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWNoYXQvZHItY2hhdC1tZXNzYWdlL2NoYXQtbWVzc2FnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1jaGF0L2RyLWNoYXQtbWVzc2FnZS9jaGF0LW1lc3NhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsaUJBQWlCLEVBQWdCLE1BQU0sbUJBQW1CLENBQUM7QUFFcEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7Ozs7Ozs7QUFlbEcsTUFBTSxPQUFPLHNCQUFzQjtJQUkvQixJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFDSSxRQUFRO1FBQ1IsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFFSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFjO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBNkJELFlBQW9CLG9CQUFnRDtRQUFoRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQTRCO1FBcERwRSxpQkFBWSxHQUFHLGlCQUFpQixDQUFDO1FBeUJ2QixXQUFNLEdBQUcsS0FBSyxDQUFDO0lBNEJ6QixDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzFCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkQsT0FBTyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQ3JDLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0RSxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsSUFBWTtRQUNuQyxNQUFNLHNCQUFzQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFM0UsSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQ1gsaURBQWtELElBQUssS0FBSztnQkFDNUQseUVBQTBFLElBQUssSUFBSSxDQUN0RixDQUFDO1NBQ0w7UUFFRCxPQUFPLHNCQUFzQixDQUFDO0lBQ2xDLENBQUM7a0lBOUVRLHNCQUFzQjtzSEFBdEIsc0JBQXNCLDhaQ25CbkMsNmdDQWtCQSxrNExEUmdCO1lBQ1IsT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDaEIsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztnQkFDbEQsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pGLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ25GLENBQUM7U0FDTDs7NEZBR1Esc0JBQXNCO2tCQWJsQyxTQUFTOytCQUNJLGlCQUFpQixjQUdmO3dCQUNSLE9BQU8sQ0FBQyxVQUFVLEVBQUU7NEJBQ2hCLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7NEJBQ2xELFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDOzRCQUNqRixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzt5QkFDbkYsQ0FBQztxQkFDTCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTtpSEFPM0MsUUFBUTtzQkFEWCxXQUFXO3VCQUFDLFdBQVc7Z0JBTXBCLFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBVTFCLEtBQUs7c0JBRlIsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxhQUFhO2dCQVdqQixJQUFJO3NCQUFaLEtBQUs7Z0JBT0csT0FBTztzQkFBZixLQUFLO2dCQU9HLGlCQUFpQjtzQkFBekIsS0FBSztnQkFLRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRWdDLG9CQUFvQjtzQkFBekQsWUFBWTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ0hBVF9NRVNTQUdFX1RZUEUsIElDaGF0TWVzc2FnZSB9IGZyb20gJy4uLy4uL21vZGVscy9jaGF0JztcbmltcG9ydCB7IERyQ2hhdEN1c3RvbU1lc3NhZ2VEaXJlY3RpdmUgfSBmcm9tICcuL2RyLWNoYXQtbWVzc2FnZS1jdXN0b20vY2hhdC1jdXN0b20tbWVzc2FnZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRHJDaGF0Q3VzdG9tTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuL2RyLWNoYXQtbWVzc2FnZS1jdXN0b20vY2hhdC1jdXN0b20tbWVzc2FnZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1jaGF0LW1lc3NhZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnY2hhdC1tZXNzYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGF0LW1lc3NhZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2ZseUluT3V0JywgW1xuICAgICAgICAgICAgc3RhdGUoJ2luJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IConLCBbc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC0xMDAlKScgfSksIGFuaW1hdGUoODApXSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCcqID0+IHZvaWQnLCBbYW5pbWF0ZSg4MCwgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSldKSxcbiAgICAgICAgXSksXG4gICAgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRHJDaGF0TWVzc2FnZUNvbXBvbmVudCB7XG5cbiAgICBNRVNTQUdFX1RZUEUgPSBDSEFUX01FU1NBR0VfVFlQRTtcblxuICAgIEBIb3N0QmluZGluZygnQGZseUluT3V0JylcbiAgICBnZXQgZmx5SW5PdXQoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Mubm90LXJlcGx5JylcbiAgICBnZXQgbm90UmVwbHkoKSB7XG4gICAgICAgIHJldHVybiAhdGhpcy5yZXBseTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIGEgbWVzc2FnZSBpcyBhIHJlcGx5XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnJlcGx5JylcbiAgICBnZXQgcmVwbHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXBseTtcbiAgICB9XG5cbiAgICBzZXQgcmVwbHkodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fcmVwbHkgPSAhIXZhbHVlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfcmVwbHkgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHR5cGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIE1lc3NhZ2VcbiAgICAgKlxuICAgICAqIEB0eXBlIHtJQ2hhdE1lc3NhZ2V9XG4gICAgICovXG4gICAgQElucHV0KCkgbWVzc2FnZTogSUNoYXRNZXNzYWdlO1xuXG4gICAgLyoqXG4gICAgICogRGF0YSB3aGljaCB3aWxsIGJlIHNldCBhcyBjdXN0b20gbWVzc2FnZSB0ZW1wbGF0ZSBjb250ZXh0XG4gICAgICpcbiAgICAgKiBAdHlwZSB7YW55fVxuICAgICAqL1xuICAgIEBJbnB1dCgpIGN1c3RvbU1lc3NhZ2VEYXRhOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBVc2VyIGluZm8gZm9yIGF2YXRhclxuICAgICAqL1xuICAgIEBJbnB1dCgpIHVzZXI6IGFueTtcblxuICAgIEBDb250ZW50Q2hpbGQoJ2RyQ2hhdE1lc3NhZ2VBY3Rpb25zJykgZHJDaGF0TWVzc2FnZUFjdGlvbnM6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBwdWJsaWMgY3VzdG9tTWVzc2FnZTogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY3VzdG9tTWVzc2FnZVNlcnZpY2U6IERyQ2hhdEN1c3RvbU1lc3NhZ2VTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgICAgICB0aGlzLmN1c3RvbU1lc3NhZ2UgPSB0cnVlO1xuICAgICAgICBjb25zdCBjdXN0b21NZXNzYWdlID0gdGhpcy5nZXRDdXN0b21NZXNzYWdlKHRoaXMudHlwZSk7XG4gICAgICAgIHJldHVybiBjdXN0b21NZXNzYWdlLnRlbXBsYXRlUmVmO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUZW1wbGF0ZUNvbnRleHQoKTogeyAkaW1wbGljaXQ6IGFueTsgaXNSZXBseTogYm9vbGVhbiB9IHtcbiAgICAgICAgcmV0dXJuIHsgJGltcGxpY2l0OiB0aGlzLmN1c3RvbU1lc3NhZ2VEYXRhLCBpc1JlcGx5OiB0aGlzLnJlcGx5IH07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEN1c3RvbU1lc3NhZ2UodHlwZTogc3RyaW5nKTogRHJDaGF0Q3VzdG9tTWVzc2FnZURpcmVjdGl2ZSB7XG4gICAgICAgIGNvbnN0IGN1c3RvbU1lc3NhZ2VEaXJlY3RpdmUgPSB0aGlzLmN1c3RvbU1lc3NhZ2VTZXJ2aWNlLmdldEluc3RhbmNlKHR5cGUpO1xuXG4gICAgICAgIGlmICghY3VzdG9tTWVzc2FnZURpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgIGBkci1jaGF0OiBDYW4ndCBmaW5kIHRlbXBsYXRlIGZvciBjdXN0b20gdHlwZSAnJHsgdHlwZSB9Jy4gYCArXG4gICAgICAgICAgICAgICAgYE1ha2Ugc3VyZSB5b3UgcHJvdmlkZSBpdCBpbiB0aGUgY2hhdCBjb21wb25lbnQgd2l0aCAqZHJDdXN0b21NZXNzYWdlPSckeyB0eXBlIH0nLmAsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGN1c3RvbU1lc3NhZ2VEaXJlY3RpdmU7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1lc3NhZ2UuYXZhdGFyVXJsOyBlbHNlIHVzZXJBdmF0YXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyXCIgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgbWVzc2FnZS5hdmF0YXJVcmwgKyAnKSdcIj48L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICN1c2VyQXZhdGFyPlxuICAgIDxkci1hdmF0YXIgKm5nSWY9XCJtZXNzYWdlLnVzZXJcIiBbdXNlcnNdPVwibWVzc2FnZS51c2VyXCI+PC9kci1hdmF0YXI+XG48L25nLXRlbXBsYXRlPlxuPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIiBbY2xhc3MubWVzc2FnZS0tY3VzdG9tXT1cImN1c3RvbU1lc3NhZ2VcIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJtZXNzYWdlLmtpbmRcIj5cbiAgICAgICAgPGRyLWNoYXQtbWVzc2FnZS10ZXh0ICpuZ1N3aXRjaENhc2U9XCJNRVNTQUdFX1RZUEUuVEVYVFwiIFttZXNzYWdlXT1cIm1lc3NhZ2VcIj48L2RyLWNoYXQtbWVzc2FnZS10ZXh0PlxuICAgICAgICA8ZHItY2hhdC1tZXNzYWdlLWZpbGUgKm5nU3dpdGNoQ2FzZT1cIk1FU1NBR0VfVFlQRS5ET1dOTE9BRF9GSUxFXCIgW21lc3NhZ2VdPVwibWVzc2FnZVwiPjwvZHItY2hhdC1tZXNzYWdlLWZpbGU+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZ2V0VGVtcGxhdGUoKVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJnZXRUZW1wbGF0ZUNvbnRleHQoKVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZV9fYWN0aW9uc1wiICpuZ0lmPVwiZHJDaGF0TWVzc2FnZUFjdGlvbnM7XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZHJDaGF0TWVzc2FnZUFjdGlvbnNcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -79,7 +79,7 @@ export class DialogWrapperComponent {
79
79
  this.destroy$.complete();
80
80
  }
81
81
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogWrapperComponent, deps: [{ token: i1.MatLegacyDialogRef }, { token: i2.DialogService }, { token: i0.ChangeDetectorRef }, { token: i0.ComponentFactoryResolver }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
82
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DialogWrapperComponent, selector: "dr-dialog-wrapper", host: { properties: { "class": "this.elementClass" } }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"dialog-wrapper\"\n [class.dialog-wrapper--confirmation-no-title]=\"dialogData.theme?.isConfirmation && !dialogData.title\">\n <i class=\"dr-icon-exit\" data-test=\"close_btn\" (click)=\"closeDialog()\" *ngIf=\"!dialogData?.hideCloseBtn\"></i>\n\n <div header class=\"dialog-wrapper__header\" *ngIf=\"dialogData.title\">\n <h1 class=\"dialog-wrapper__header__title\"\n data-test=\"dialogTitle\">{{ dialogData.title }}</h1>\n <h1 class=\"dialog-wrapper__header__subtitle\" data-test=\"dialogSubtitle\"\n *ngIf=\"dialogData.subtitle\">{{ dialogData.subtitle }}</h1>\n </div>\n <div class=\"dialog-wrapper__content\"\n [class.dialog-wrapper__content--no-padding]=\"dialogData.theme?.contentNoPadding\"\n [ngClass]=\"{ 'flex-position': dialogData.contentIcon?.class && !childComponent }\">\n <span *ngIf=\"dialogData.contentIcon?.class\" class=\"dialog-wrapper__content__icon\">\n <i [ngClass]=\"dialogData.contentIcon.class\" [style.color]=\"dialogData.contentIcon?.color || 'inherit'\"></i>\n </span>\n <span class=\"dialog-content__wrapper\" [innerHTML]=\"dialogData.content\"></span>\n <span #content class=\"dialog-wrapper__content__anchor\"> </span>\n </div>\n <dr-details-list *ngIf=\"dialogData.details\"\n [title]=\"dialogData.details.title\"\n [items]=\"dialogData.details.items\">\n </dr-details-list>\n <div footer class=\"dialog-wrapper__footer\" *ngIf=\"dialogData.cancelButton || dialogData.acceptButton\">\n <div class=\"dialog-wrapper__footer__buttons\">\n <span *ngIf=\"dialogData.customButton\"\n class=\"dialog-wrapper__footer__button-wrapper dialog-wrapper__footer__button-wrapper--custom\"\n [drTooltip]=\"dialogData.customButton.isDisabled && dialogData.tooltips?.customDisabled\">\n <dr-button (click)=\"onDecline()\"\n [theme]=\"dialogData.customButton?.theme || 'secondary'\"\n [isLoading]=\"isLoading\"\n data-test=\"declineBtn\"\n [disabled]=\"dialogData.customButton.isDisabled\"\n [drTooltip]=\"dialogData.tooltips?.custom\">{{ dialogData.customButton.label }}</dr-button>\n </span>\n <span *ngIf=\"dialogData.cancelButton\"\n class=\"dialog-wrapper__footer__button-wrapper\"\n [drTooltip]=\"dialogData.cancelButton.isDisabled && dialogData.tooltips?.cancelDisabled\">\n <dr-button (click)=\"closeDialog()\"\n [theme]=\"dialogData.cancelButton?.theme || 'secondary'\"\n data-test=\"closeBtn\"\n [disabled]=\"dialogData.cancelButton.isDisabled\"\n [drTooltip]=\"dialogData.tooltips?.cancel\">{{ dialogData.cancelButton.label }}</dr-button>\n </span>\n <span *ngIf=\"dialogData.acceptButton\"\n class=\"dialog-wrapper__footer__button-wrapper\"\n [drTooltip]=\"dialogData.acceptButton.isDisabled && dialogData.tooltips?.acceptDisabled\">\n <dr-button (click)=\"onAcceptDialog()\"\n [theme]=\"dialogData.acceptButton?.theme || 'primary'\"\n [isLoading]=\"isLoading\"\n data-test=\"acceptBtn\"\n [disabled]=\"dialogData.acceptButton.isDisabled\"\n [drTooltip]=\"dialogData.tooltips?.accept\">{{ dialogData.acceptButton.label }}</dr-button>\n </span>\n </div>\n </div>\n</div>\n", styles: [":host.small-modal,:host.small-modal-max-height{min-height:188px;max-height:467px;min-width:400px;max-width:400px}:host.medium-modal,:host.medium-modal-max-height{min-height:188px;max-height:467px;min-width:632px;max-width:632px}:host.medium-small-modal{min-height:188px;max-height:345px;min-width:460px;max-width:460px}:host.medium-modal-max-height,:host.small-modal-max-height{max-height:85vh}:host.large-modal{min-width:750px;max-width:750px}:host.xl-medium-modal{min-width:850px;max-width:850px}:host.medium-large-modal{min-width:669px;max-width:669px}:host.xl-modal{min-height:188px;max-height:800px;min-width:1100px;max-width:1100px}:host.xl-custom-modal{min-height:188px;max-height:800px;min-width:1100px;max-width:100%}::ng-deep .dialog-wrapper{display:flex;justify-content:space-between;flex-direction:column;position:relative}::ng-deep .dialog-wrapper>.dr-icon-exit{z-index:1;position:absolute;right:32px;top:16px;color:#6d6e6f;cursor:pointer}::ng-deep .dialog-wrapper__header{display:flex;flex-direction:column;padding:16px 56px 16px 32px;border-bottom:1px solid #DFE0E3}::ng-deep .dialog-wrapper__header__title{color:#333;position:static;font-weight:600;font-size:16px;line-height:24px;margin-top:0;margin-bottom:0}::ng-deep .dialog-wrapper__header__subtitle{color:#333;font-weight:400;font-size:14px;line-height:22px;margin:4px 0 0}::ng-deep .dialog-wrapper--confirmation-no-title{padding-top:16px;height:100%}::ng-deep .dialog-wrapper__content{overflow-y:inherit;font-size:14px;font-weight:400;line-height:22px;padding:24px 32px 32px}::ng-deep .dialog-wrapper__content__anchor{display:none}::ng-deep .dialog-wrapper__content--no-padding{padding:0}::ng-deep .dialog-wrapper__content__icon{margin-right:10px;top:5px;position:relative}::ng-deep .dialog-wrapper__content.flex-position{display:flex}::ng-deep .dialog-wrapper__content .dialog-content__wrapper{white-space:pre-line}::ng-deep .dialog-wrapper dr-details-list{margin-top:-24px;padding:0 32px 32px}::ng-deep .dialog-wrapper__footer{border-top:1px solid #DFE0E3}::ng-deep .dialog-wrapper__footer__buttons{display:flex;justify-content:flex-end;padding:11px 32px}::ng-deep .dialog-wrapper__footer__buttons>dr-button:nth-child(n+2){margin-left:12px}::ng-deep .dialog-wrapper__footer__button-wrapper:nth-child(n+2){margin-left:12px}::ng-deep .dialog-wrapper__footer__button-wrapper--custom:nth-last-child(3){margin-right:auto}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.DrButtonComponent, selector: "dr-button", inputs: ["theme", "icon", "iconColor", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "disabled", "isLoading", "isActive"] }, { kind: "directive", type: i5.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "component", type: i6.DrDetailsListComponent, selector: "dr-details-list", inputs: ["title", "items", "collapse"] }] }); }
82
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DialogWrapperComponent, selector: "dr-dialog-wrapper", host: { properties: { "class": "this.elementClass" } }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"dialog-wrapper\"\n [class.dialog-wrapper--confirmation-no-title]=\"dialogData.theme?.isConfirmation && !dialogData.title\">\n <i class=\"dr-icon-exit\" data-test=\"close_btn\" (click)=\"closeDialog()\" *ngIf=\"!dialogData?.hideCloseBtn\"></i>\n\n <div header class=\"dialog-wrapper__header\" *ngIf=\"dialogData.title\">\n <h1 class=\"dialog-wrapper__header__title\"\n data-test=\"dialogTitle\">{{ dialogData.title }}</h1>\n <h1 class=\"dialog-wrapper__header__subtitle\" data-test=\"dialogSubtitle\"\n *ngIf=\"dialogData.subtitle\">{{ dialogData.subtitle }}</h1>\n </div>\n <div class=\"dialog-wrapper__content\"\n [class.dialog-wrapper__content--no-padding]=\"dialogData.theme?.contentNoPadding\"\n [ngClass]=\"{ 'flex-position': dialogData.contentIcon?.class && !childComponent }\">\n <span *ngIf=\"dialogData.contentIcon?.class\" class=\"dialog-wrapper__content__icon\">\n <i [ngClass]=\"dialogData.contentIcon.class\" [style.color]=\"dialogData.contentIcon?.color || 'inherit'\"></i>\n </span>\n <span class=\"dialog-content__wrapper\" [innerHTML]=\"dialogData.content\"></span>\n <span #content class=\"dialog-wrapper__content__anchor\"> </span>\n </div>\n <dr-details-list *ngIf=\"dialogData.details\"\n [title]=\"dialogData.details.title\"\n [items]=\"dialogData.details.items\">\n </dr-details-list>\n <div footer class=\"dialog-wrapper__footer\" *ngIf=\"dialogData.cancelButton || dialogData.acceptButton\">\n <div class=\"dialog-wrapper__footer__buttons\">\n <span *ngIf=\"dialogData.customButton\"\n class=\"dialog-wrapper__footer__button-wrapper dialog-wrapper__footer__button-wrapper--custom\"\n [drTooltip]=\"dialogData.customButton.isDisabled && dialogData.tooltips?.customDisabled\">\n <dr-button (click)=\"onDecline()\"\n [theme]=\"dialogData.customButton?.theme || 'secondary'\"\n [isLoading]=\"isLoading\"\n data-test=\"declineBtn\"\n [disabled]=\"dialogData.customButton.isDisabled\"\n [drTooltip]=\"dialogData.tooltips?.custom\">{{ dialogData.customButton.label }}</dr-button>\n </span>\n <span *ngIf=\"dialogData.cancelButton\"\n class=\"dialog-wrapper__footer__button-wrapper\"\n [drTooltip]=\"dialogData.cancelButton.isDisabled && dialogData.tooltips?.cancelDisabled\">\n <dr-button (click)=\"closeDialog()\"\n [theme]=\"dialogData.cancelButton?.theme || 'secondary'\"\n data-test=\"closeBtn\"\n [disabled]=\"dialogData.cancelButton.isDisabled\"\n [drTooltip]=\"dialogData.tooltips?.cancel\">{{ dialogData.cancelButton.label }}</dr-button>\n </span>\n <span *ngIf=\"dialogData.acceptButton\"\n class=\"dialog-wrapper__footer__button-wrapper\"\n [drTooltip]=\"dialogData.acceptButton.isDisabled && dialogData.tooltips?.acceptDisabled\">\n <dr-button (click)=\"onAcceptDialog()\"\n [theme]=\"dialogData.acceptButton?.theme || 'primary'\"\n [isLoading]=\"isLoading\"\n data-test=\"acceptBtn\"\n [disabled]=\"dialogData.acceptButton.isDisabled\"\n [drTooltip]=\"dialogData.tooltips?.accept\">{{ dialogData.acceptButton.label }}</dr-button>\n </span>\n </div>\n </div>\n</div>\n", styles: [":host.small-modal,:host.small-modal-max-height{min-height:188px;max-height:467px;min-width:400px;max-width:400px}:host.medium-modal,:host.medium-modal-max-height{min-height:188px;max-height:467px;min-width:632px;max-width:632px}:host.medium-small-modal{min-height:188px;max-height:345px;min-width:460px;max-width:460px}:host.medium-modal-max-height,:host.small-modal-max-height{max-height:85vh}:host.large-modal{min-width:750px;max-width:750px}:host.xl-medium-modal{min-width:850px;max-width:850px}:host.medium-large-modal{min-width:669px;max-width:669px}:host.xl-modal{min-height:188px;max-height:800px;min-width:1100px;max-width:1100px}:host.xl-custom-modal{min-height:188px;max-height:800px;min-width:1100px;max-width:100%}::ng-deep .dialog-wrapper{display:flex;justify-content:space-between;flex-direction:column;position:relative}::ng-deep .dialog-wrapper>.dr-icon-exit{z-index:1;position:absolute;right:32px;top:16px;color:#6d6e6f;cursor:pointer}::ng-deep .dialog-wrapper__header{display:flex;flex-direction:column;padding:16px 56px 16px 32px;border-bottom:1px solid #DFE0E3}::ng-deep .dialog-wrapper__header__title{color:#333;position:static;font-weight:600;font-size:16px;line-height:24px;margin-top:0;margin-bottom:0}::ng-deep .dialog-wrapper__header__subtitle{color:#333;font-weight:400;font-size:14px;line-height:22px;margin:4px 0 0}::ng-deep .dialog-wrapper--confirmation-no-title{padding-top:16px;height:100%}::ng-deep .dialog-wrapper__content{overflow-y:inherit;font-size:14px;font-weight:400;line-height:22px;padding:24px 32px 32px}::ng-deep .dialog-wrapper__content__anchor{display:none}::ng-deep .dialog-wrapper__content--no-padding{padding:0}::ng-deep .dialog-wrapper__content__icon{margin-right:10px;top:5px;position:relative}::ng-deep .dialog-wrapper__content.flex-position{display:flex}::ng-deep .dialog-wrapper__content .dialog-content__wrapper{white-space:pre-line}::ng-deep .dialog-wrapper dr-details-list{margin-top:-24px;padding:0 32px 32px}::ng-deep .dialog-wrapper__footer{border-top:1px solid #DFE0E3}::ng-deep .dialog-wrapper__footer__buttons{display:flex;justify-content:flex-end;padding:11px 32px}::ng-deep .dialog-wrapper__footer__buttons>dr-button:nth-child(n+2){margin-left:12px}::ng-deep .dialog-wrapper__footer__button-wrapper:nth-child(n+2){margin-left:12px}::ng-deep .dialog-wrapper__footer__button-wrapper--custom:nth-last-child(3){margin-right:auto}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.DrButtonComponent, selector: "dr-button", inputs: ["theme", "icon", "iconColor", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "disabled", "isLoading", "isActive"] }, { kind: "directive", type: i5.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "component", type: i6.DrDetailsListComponent, selector: "dr-details-list", inputs: ["title", "items", "collapse"] }] }); }
83
83
  }
84
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogWrapperComponent, decorators: [{
85
85
  type: Component,
@@ -99,7 +99,7 @@ export class DrDropdownComponent {
99
99
  }
100
100
  }
101
101
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrDropdownComponent, deps: [{ token: i1.DrDropdownService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
102
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrDropdownComponent, selector: "dr-dropdown", inputs: { options: "options" }, viewQueries: [{ propertyName: "viewMenu", first: true, predicate: ["listMenu"], descendants: true }, { propertyName: "menuContainer", first: true, predicate: ["menuContainer"], descendants: true }], ngImport: i0, template: "<div #menuContainer\n (mouseleave)=\"onMouseLeave()\"\n (mouseenter)=\"onMouseEnter()\"\n (clickOutside)=\"onClickedOutside()\"\n [drDropdownPosition]=\"option\"\n #dropdownPosition=\"dropdownPosition\"\n [position]=\"position\"\n [class]=\"containerClass\"\n class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\">\n <div *ngFor=\"let act of list | drDropdownItemShowPipe\"\n (click)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"tooltipPosition(dropdownPosition.widthMoreRight)\"\n [drTooltipOptions]=\"{ withoutArrow: true }\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n class=\"dr-dropdown__container__item\"\n [class.item-disabled]=\"disabled(act)\"\n [class.item-selected]=\"selected(act)\"\n [class.separate-line]=\"act.separateLine\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\"></i>\n <span class=\"dr-dropdown__container__item__text\">{{act.title}}</span>\n <i *ngFor=\"let actionIcon of act.actionIcons\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (click)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"act.children?.length\" class=\"dr-icon-arrow-right\"></i>\n <dr-dropdown *ngIf=\"act.children?.length\" [options]=\"act.childOptions\"></dr-dropdown>\n </div>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__container__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__container__item:hover>*>.dr-dropdown{visibility:visible;transition-delay:0s}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{position:absolute;z-index:-1;top:0;left:0;width:auto}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;border-radius:4px;box-shadow:0 4px 8px 1px #00000040;padding:8px 0;overflow-y:auto;max-height:60vh}.dr-dropdown__container__item{display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0;background:#fff}.dr-dropdown__container__item.separate-line{border-top:1px solid #DFE0E3}.dr-dropdown__container__item:hover{background-color:#f5f5f5}.dr-dropdown__container__item:hover .showOnHover{visibility:visible}.dr-dropdown__container__item.item-selected{background:#eaeaff}.dr-dropdown__container__item.item-disabled,.dr-dropdown__container__item.item-disabled i,.dr-dropdown__container__item.item-disabled .dr-dropdown__container__item__text{background:#fff!important;color:#aeabac}.dr-dropdown__container__item i:first-child{margin-right:8px}.dr-dropdown__container__item__text{margin-right:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dr-dropdown__container__item i,.dr-dropdown__container__item__text{color:#333}.dr-dropdown__container__item__text+i:hover{color:#4646ce}.dr-dropdown__container__item .showOnHover{visibility:hidden}.dr-dropdown.content-top{transform:translate(-50%,-100%)}.dr-dropdown.content-top-left{transform:translate(-100%,-100%)}.dr-dropdown.content-bottom{transform:translate(-50%,50%)}.dr-dropdown.content-bottom-left{transform:translate(-90%,35%)}.dr-dropdown.content-bottom-right{transform:translateY(15%)}.dr-dropdown.content-left{transform:translate(-100%)}.dr-dropdown.content-left-center{transform:translate(-100%,-50%)}.dr-dropdown.content-right{transform:translate(5%)}\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: "directive", type: i3.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "directive", type: i4.DrDropdownPositionDirective, selector: "[drDropdownPosition]", inputs: ["drDropdownPosition", "position"], exportAs: ["dropdownPosition"] }, { kind: "component", type: DrDropdownComponent, selector: "dr-dropdown", inputs: ["options"] }, { kind: "pipe", type: i5.DrDropdownItemShowPipe, name: "drDropdownItemShowPipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
102
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrDropdownComponent, selector: "dr-dropdown", inputs: { options: "options" }, viewQueries: [{ propertyName: "viewMenu", first: true, predicate: ["listMenu"], descendants: true }, { propertyName: "menuContainer", first: true, predicate: ["menuContainer"], descendants: true }], ngImport: i0, template: "<div #menuContainer\n (mouseleave)=\"onMouseLeave()\"\n (mouseenter)=\"onMouseEnter()\"\n (clickOutside)=\"onClickedOutside()\"\n [drDropdownPosition]=\"option\"\n #dropdownPosition=\"dropdownPosition\"\n [position]=\"position\"\n [class]=\"containerClass\"\n class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\">\n <div *ngFor=\"let act of list | drDropdownItemShowPipe\"\n (click)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"tooltipPosition(dropdownPosition.widthMoreRight)\"\n [drTooltipOptions]=\"{ withoutArrow: true }\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n class=\"dr-dropdown__container__item\"\n [class.item-disabled]=\"disabled(act)\"\n [class.item-selected]=\"selected(act)\"\n [class.separate-line]=\"act.separateLine\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\"></i>\n <span class=\"dr-dropdown__container__item__text\">{{act.title}}</span>\n <i *ngFor=\"let actionIcon of act.actionIcons\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (click)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"act.children?.length\" class=\"dr-icon-arrow-right\"></i>\n <dr-dropdown *ngIf=\"act.children?.length\" [options]=\"act.childOptions\"></dr-dropdown>\n </div>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__container__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__container__item:hover>*>.dr-dropdown{visibility:visible;transition-delay:0s}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{position:absolute;z-index:-1;top:0;left:0;width:auto}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;border-radius:4px;box-shadow:0 4px 8px 1px #00000040;padding:8px 0;overflow-y:auto;max-height:60vh}.dr-dropdown__container__item{display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0;background:#fff}.dr-dropdown__container__item.separate-line{border-top:1px solid #DFE0E3}.dr-dropdown__container__item:hover{background-color:#f5f5f5}.dr-dropdown__container__item:hover .showOnHover{visibility:visible}.dr-dropdown__container__item.item-selected{background:#eaeaff}.dr-dropdown__container__item.item-disabled,.dr-dropdown__container__item.item-disabled i,.dr-dropdown__container__item.item-disabled .dr-dropdown__container__item__text{background:#fff!important;color:#aeabac}.dr-dropdown__container__item i:first-child{margin-right:8px}.dr-dropdown__container__item__text{margin-right:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dr-dropdown__container__item i,.dr-dropdown__container__item__text{color:#333}.dr-dropdown__container__item__text+i:hover{color:#4646ce}.dr-dropdown__container__item .showOnHover{visibility:hidden}.dr-dropdown.content-top{transform:translate(-50%,-100%)}.dr-dropdown.content-top-left{transform:translate(-100%,-100%)}.dr-dropdown.content-bottom{transform:translate(-50%,50%)}.dr-dropdown.content-bottom-left{transform:translate(-90%,35%)}.dr-dropdown.content-bottom-right{transform:translateY(15%)}.dr-dropdown.content-left{transform:translate(-100%)}.dr-dropdown.content-left-center{transform:translate(-100%,-50%)}.dr-dropdown.content-right{transform:translate(5%)}\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: "directive", type: i3.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "directive", type: i4.DrDropdownPositionDirective, selector: "[drDropdownPosition]", inputs: ["drDropdownPosition", "position"], exportAs: ["dropdownPosition"] }, { kind: "component", type: DrDropdownComponent, selector: "dr-dropdown", inputs: ["options"] }, { kind: "pipe", type: i5.DrDropdownItemShowPipe, name: "drDropdownItemShowPipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
103
103
  }
104
104
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrDropdownComponent, decorators: [{
105
105
  type: Component,
@@ -113,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
113
113
  }], options: [{
114
114
  type: Input
115
115
  }] } });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBUTFELE1BQU0sT0FBTyxtQkFBbUI7SUFZNUIsWUFBc0IsV0FBOEIsRUFBVSxHQUFzQjtRQUE5RCxnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQVBwRixhQUFRLEdBQXFDLE1BQU0sQ0FBQztRQUk3QyxlQUFVLEdBQUcsS0FBSyxDQUFDO0lBSTFCLENBQUM7SUFFRCxJQUFhLE9BQU8sQ0FBQyxJQUFtQztRQUNwRCxJQUFJLElBQUksRUFBRTtZQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDOUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztZQUNoRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDakMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8s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QUM7U0FDZjtJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsVUFBb0MsRUFBRSxJQUFTO1FBQ3JFLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM1QixVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNmO0lBQ0wsQ0FBQztrSUF2R1EsbUJBQW1CO3NIQUFuQixtQkFBbUIsMFJDVmhDLG1oREErQkEseXdGRHJCYSxtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBTi9CLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNO3dJQUl4QixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBQ08sYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQVliLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWxQb3NpdGlvbiwgSURyb3Bkb3duLCBJRHJvcGRvd25BY3Rpb25JY29uLCBJRHJvcGRvd25Db29yZGluYXRlLCBJRHJvcGRvd25JdGVtIH0gZnJvbSAnLi4vbW9kZWxzL2Ryb3Bkb3duJztcbmltcG9ydCB7IERyRHJvcGRvd25TZXJ2aWNlIH0gZnJvbSAnLi9kci1kcm9wZG93bi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci1kcm9wZG93bi5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERyRHJvcGRvd25Db21wb25lbnQge1xuXG4gICAgQFZpZXdDaGlsZCgnbGlzdE1lbnUnKSB2aWV3TWVudTogSFRNTEVsZW1lbnQ7XG4gICAgQFZpZXdDaGlsZCgnbWVudUNvbnRhaW5lcicpIG1lbnVDb250YWluZXI6IEhUTUxFbGVtZW50O1xuICAgIG9wdGlvbjogYW55O1xuICAgIHBvc2l0aW9uOiBFbFBvc2l0aW9uIHwgSURyb3Bkb3duQ29vcmRpbmF0ZSA9ICdsZWZ0JztcbiAgICBkckRyb3Bkb3duSW5Ib3ZlcjogYm9vbGVhbjtcbiAgICBsaXN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+W107XG4gICAgY29udGFpbmVyQ2xhc3M6IHN0cmluZztcbiAgICBwdWJsaWMgd2FzSG92ZXJlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgZmlyc3RJbml0OiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIG1lbnVTZXJ2aWNlOiBEckRyb3Bkb3duU2VydmljZSwgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgfVxuXG4gICAgQElucHV0KCkgc2V0IG9wdGlvbnMoZGF0YTogSURyb3Bkb3duPElEcm9wZG93bkl0ZW08YW55Pj4pIHtcbiAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9uID0gZGF0YS5vcHRpb247XG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gZGF0YS5wb3NpdGlvbjtcbiAgICAgICAgICAgIHRoaXMuZHJEcm9wZG93bkluSG92ZXIgPSBkYXRhLmRyRHJvcGRvd25JbkhvdmVyO1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXJDbGFzcyA9IGRhdGEuY2xhc3M7XG4gICAgICAgICAgICB0aGlzLmxpc3QgPSBkYXRhLmxpc3QgfHwgW107XG4gICAgICAgICAgICB0aGlzLmxpc3QuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS5jaGlsZHJlbj8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uY2hpbGRPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGlzdDogaXRlbS5jaGlsZHJlbixcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiBpdGVtPy5jaGlsZE9wdGlvbnM/LmNsYXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICdjaGlsZCdcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Nb3VzZUVudGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndhc0hvdmVyZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIG9uTW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZHJEcm9wZG93bkluSG92ZXIpIHRoaXMubWVudVNlcnZpY2UuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIG9uQ2xpY2tlZE91dHNpZGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZpcnN0SW5pdCkge1xuICAgICAgICAgICAgdGhpcy5tZW51U2VydmljZS5kZXN0cm95KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmZpcnN0SW5pdCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoaWRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBkaXNhYmxlZChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4gfCBJRHJvcGRvd25BY3Rpb25JY29uPGFueT4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFhY3QuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGFjdC5kaXNhYmxlZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LmRpc2FibGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5kaXNhYmxlZChhY3QuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3RlZChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFhY3Quc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGFjdC5zZWxlY3RlZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LnNlbGVjdGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5zZWxlY3RlZChhY3QuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0b29sdGlwVG9TaG93KGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IHN0cmluZyB7XG4gICAgICAgIGlmIChhY3QudG9vbFRpcElmRGlzYWJsZWQgJiYgIXRoaXMuZGlzYWJsZWQoYWN0KSkgcmV0dXJuICcnO1xuICAgICAgICByZXR1cm4gYWN0LmN1c3RvbVRvb2x0aXAgPyBhY3QuY3VzdG9tVG9vbHRpcChhY3QuZGF0YSkgOiBhY3QudG9vbFRpcDtcbiAgICB9XG5cbiAgICB0b29sdGlwUG9zaXRpb24od2lkdGhNb3JlUmlnaHQ6IGJvb2xlYW4pIHtcbiAgICAgICAgcmV0dXJuIHdpZHRoTW9yZVJpZ2h0ID8gJ3JpZ2h0JyA6ICdsZWZ0JztcbiAgICB9XG5cbiAgICBhY3Rpb24oYWN0OiBJRHJvcGRvd25JdGVtPGFueT4pIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKGFjdCkpIHtcbiAgICAgICAgICAgIGlmIChhY3QuYWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgYWN0LmFjdGlvbihhY3QuZGF0YSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMubWVudVNlcnZpY2UuYWN0aW9uSXRlbS5uZXh0KHsgZXZlbnQ6IGFjdC5ldmVudCB8fCBhY3QudGl0bGUgfHwgJ2RlZmF1bHQnLCBkYXRhOiBhY3QuZGF0YSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3Rpb25JY29uQ2xpY2soJGV2ZW50LCBhY3Rpb25JY29uOiBJRHJvcGRvd25BY3Rpb25JY29uPGFueT4sIGRhdGE6IGFueSkge1xuICAgICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZChhY3Rpb25JY29uKSkge1xuICAgICAgICAgICAgYWN0aW9uSWNvbi5hY3Rpb24oZGF0YSk7XG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiPGRpdiAjbWVudUNvbnRhaW5lclxuICAgICAobW91c2VsZWF2ZSk9XCJvbk1vdXNlTGVhdmUoKVwiXG4gICAgIChtb3VzZWVudGVyKT1cIm9uTW91c2VFbnRlcigpXCJcbiAgICAgKGNsaWNrT3V0c2lkZSk9XCJvbkNsaWNrZWRPdXRzaWRlKClcIlxuICAgICBbZHJEcm9wZG93blBvc2l0aW9uXT1cIm9wdGlvblwiXG4gICAgICNkcm9wZG93blBvc2l0aW9uPVwiZHJvcGRvd25Qb3NpdGlvblwiXG4gICAgIFtwb3NpdGlvbl09XCJwb3NpdGlvblwiXG4gICAgIFtjbGFzc109XCJjb250YWluZXJDbGFzc1wiXG4gICAgIGNsYXNzPVwiZHItZHJvcGRvd25cIj5cbiAgICA8ZGl2IGNsYXNzPVwiZHItZHJvcGRvd25fX2NvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBhY3Qgb2YgbGlzdCB8IGRyRHJvcGRvd25JdGVtU2hvd1BpcGVcIlxuICAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb24oYWN0KVwiXG4gICAgICAgICAgICAgW2RyVG9vbHRpcF09XCJ0b29sdGlwVG9TaG93KGFjdClcIlxuICAgICAgICAgICAgIFtkclRvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb24oZHJvcGRvd25Qb3NpdGlvbi53aWR0aE1vcmVSaWdodClcIlxuICAgICAgICAgICAgIFtkclRvb2x0aXBPcHRpb25zXT1cInsgd2l0aG91dEFycm93OiB0cnVlIH1cIlxuICAgICAgICAgICAgIFtkclRvb2x0aXBDbGFzc109XCInZHItZHJvcGRvd25fX3Rvb2x0aXAnXCJcbiAgICAgICAgICAgICBjbGFzcz1cImRyLWRyb3Bkb3duX19jb250YWluZXJfX2l0ZW1cIlxuICAgICAgICAgICAgIFtjbGFzcy5pdGVtLWRpc2FibGVkXT1cImRpc2FibGVkKGFjdClcIlxuICAgICAgICAgICAgIFtjbGFzcy5pdGVtLXNlbGVjdGVkXT1cInNlbGVjdGVkKGFjdClcIlxuICAgICAgICAgICAgIFtjbGFzcy5zZXBhcmF0ZS1saW5lXT1cImFjdC5zZXBhcmF0ZUxpbmVcIj5cbiAgICAgICAgICAgIDxpICpuZ0lmPVwiYWN0Lmljb25cIiBbY2xhc3NdPVwiYWN0Lmljb25cIj48L2k+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRyLWRyb3Bkb3duX19jb250YWluZXJfX2l0ZW1fX3RleHRcIj57e2FjdC50aXRsZX19PC9zcGFuPlxuICAgICAgICAgICAgPGkgKm5nRm9yPVwibGV0IGFjdGlvbkljb24gb2YgYWN0LmFjdGlvbkljb25zXCJcbiAgICAgICAgICAgICAgIFtjbGFzc109XCJhY3Rpb25JY29uLmljb25cIlxuICAgICAgICAgICAgICAgW2NsYXNzLnNob3dPbkhvdmVyXT1cImFjdGlvbkljb24uc2hvd09uSG92ZXJcIlxuICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uSWNvbkNsaWNrKCRldmVudCwgYWN0aW9uSWNvbiwgYWN0LmRhdGEpXCI+PC9pPlxuICAgICAgICAgICAgPGkgKm5nSWY9XCJhY3QuY2hpbGRyZW4/Lmxlbmd0aFwiIGNsYXNzPVwiZHItaWNvbi1hcnJvdy1yaWdodFwiPjwvaT5cbiAgICAgICAgICAgIDxkci1kcm9wZG93biAqbmdJZj1cImFjdC5jaGlsZHJlbj8ubGVuZ3RoXCIgW29wdGlvbnNdPVwiYWN0LmNoaWxkT3B0aW9uc1wiPjwvZHItZHJvcGRvd24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBUTFELE1BQU0sT0FBTyxtQkFBbUI7SUFZNUIsWUFBc0IsV0FBOEIsRUFBVSxHQUFzQjtRQUE5RCxnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQVBwRixhQUFRLEdBQXFDLE1BQU0sQ0FBQztRQUk3QyxlQUFVLEdBQUcsS0FBSyxDQUFDO0lBSTFCLENBQUM7SUFFRCxJQUFhLE9BQU8sQ0FBQyxJQUFtQztRQUNwRCxJQUFJLElBQUksRUFBRTtZQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDOUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztZQUNoRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDakMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8s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QUM7U0FDZjtJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsVUFBb0MsRUFBRSxJQUFTO1FBQ3JFLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM1QixVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNmO0lBQ0wsQ0FBQztrSUF2R1EsbUJBQW1CO3NIQUFuQixtQkFBbUIsMFJDVmhDLG1oREErQkEsdXlGRHJCYSxtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBTi9CLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNO3dJQUl4QixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBQ08sYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQVliLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWxQb3NpdGlvbiwgSURyb3Bkb3duLCBJRHJvcGRvd25BY3Rpb25JY29uLCBJRHJvcGRvd25Db29yZGluYXRlLCBJRHJvcGRvd25JdGVtIH0gZnJvbSAnLi4vbW9kZWxzL2Ryb3Bkb3duJztcbmltcG9ydCB7IERyRHJvcGRvd25TZXJ2aWNlIH0gZnJvbSAnLi9kci1kcm9wZG93bi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci1kcm9wZG93bi5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERyRHJvcGRvd25Db21wb25lbnQge1xuXG4gICAgQFZpZXdDaGlsZCgnbGlzdE1lbnUnKSB2aWV3TWVudTogSFRNTEVsZW1lbnQ7XG4gICAgQFZpZXdDaGlsZCgnbWVudUNvbnRhaW5lcicpIG1lbnVDb250YWluZXI6IEhUTUxFbGVtZW50O1xuICAgIG9wdGlvbjogYW55O1xuICAgIHBvc2l0aW9uOiBFbFBvc2l0aW9uIHwgSURyb3Bkb3duQ29vcmRpbmF0ZSA9ICdsZWZ0JztcbiAgICBkckRyb3Bkb3duSW5Ib3ZlcjogYm9vbGVhbjtcbiAgICBsaXN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+W107XG4gICAgY29udGFpbmVyQ2xhc3M6IHN0cmluZztcbiAgICBwdWJsaWMgd2FzSG92ZXJlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgZmlyc3RJbml0OiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIG1lbnVTZXJ2aWNlOiBEckRyb3Bkb3duU2VydmljZSwgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgfVxuXG4gICAgQElucHV0KCkgc2V0IG9wdGlvbnMoZGF0YTogSURyb3Bkb3duPElEcm9wZG93bkl0ZW08YW55Pj4pIHtcbiAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9uID0gZGF0YS5vcHRpb247XG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gZGF0YS5wb3NpdGlvbjtcbiAgICAgICAgICAgIHRoaXMuZHJEcm9wZG93bkluSG92ZXIgPSBkYXRhLmRyRHJvcGRvd25JbkhvdmVyO1xuICAgICAgICAgICAgdGhpcy5jb250YWluZXJDbGFzcyA9IGRhdGEuY2xhc3M7XG4gICAgICAgICAgICB0aGlzLmxpc3QgPSBkYXRhLmxpc3QgfHwgW107XG4gICAgICAgICAgICB0aGlzLmxpc3QuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS5jaGlsZHJlbj8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uY2hpbGRPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGlzdDogaXRlbS5jaGlsZHJlbixcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiBpdGVtPy5jaGlsZE9wdGlvbnM/LmNsYXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246ICdjaGlsZCdcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Nb3VzZUVudGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndhc0hvdmVyZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIG9uTW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZHJEcm9wZG93bkluSG92ZXIpIHRoaXMubWVudVNlcnZpY2UuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIG9uQ2xpY2tlZE91dHNpZGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZpcnN0SW5pdCkge1xuICAgICAgICAgICAgdGhpcy5tZW51U2VydmljZS5kZXN0cm95KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmZpcnN0SW5pdCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoaWRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBkaXNhYmxlZChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4gfCBJRHJvcGRvd25BY3Rpb25JY29uPGFueT4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFhY3QuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGFjdC5kaXNhYmxlZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LmRpc2FibGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5kaXNhYmxlZChhY3QuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3RlZChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFhY3Quc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGFjdC5zZWxlY3RlZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LnNlbGVjdGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5zZWxlY3RlZChhY3QuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0b29sdGlwVG9TaG93KGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IHN0cmluZyB7XG4gICAgICAgIGlmIChhY3QudG9vbFRpcElmRGlzYWJsZWQgJiYgIXRoaXMuZGlzYWJsZWQoYWN0KSkgcmV0dXJuICcnO1xuICAgICAgICByZXR1cm4gYWN0LmN1c3RvbVRvb2x0aXAgPyBhY3QuY3VzdG9tVG9vbHRpcChhY3QuZGF0YSkgOiBhY3QudG9vbFRpcDtcbiAgICB9XG5cbiAgICB0b29sdGlwUG9zaXRpb24od2lkdGhNb3JlUmlnaHQ6IGJvb2xlYW4pIHtcbiAgICAgICAgcmV0dXJuIHdpZHRoTW9yZVJpZ2h0ID8gJ3JpZ2h0JyA6ICdsZWZ0JztcbiAgICB9XG5cbiAgICBhY3Rpb24oYWN0OiBJRHJvcGRvd25JdGVtPGFueT4pIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKGFjdCkpIHtcbiAgICAgICAgICAgIGlmIChhY3QuYWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgYWN0LmFjdGlvbihhY3QuZGF0YSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMubWVudVNlcnZpY2UuYWN0aW9uSXRlbS5uZXh0KHsgZXZlbnQ6IGFjdC5ldmVudCB8fCBhY3QudGl0bGUgfHwgJ2RlZmF1bHQnLCBkYXRhOiBhY3QuZGF0YSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BY3Rpb25JY29uQ2xpY2soJGV2ZW50LCBhY3Rpb25JY29uOiBJRHJvcGRvd25BY3Rpb25JY29uPGFueT4sIGRhdGE6IGFueSkge1xuICAgICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZChhY3Rpb25JY29uKSkge1xuICAgICAgICAgICAgYWN0aW9uSWNvbi5hY3Rpb24oZGF0YSk7XG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiPGRpdiAjbWVudUNvbnRhaW5lclxuICAgICAobW91c2VsZWF2ZSk9XCJvbk1vdXNlTGVhdmUoKVwiXG4gICAgIChtb3VzZWVudGVyKT1cIm9uTW91c2VFbnRlcigpXCJcbiAgICAgKGNsaWNrT3V0c2lkZSk9XCJvbkNsaWNrZWRPdXRzaWRlKClcIlxuICAgICBbZHJEcm9wZG93blBvc2l0aW9uXT1cIm9wdGlvblwiXG4gICAgICNkcm9wZG93blBvc2l0aW9uPVwiZHJvcGRvd25Qb3NpdGlvblwiXG4gICAgIFtwb3NpdGlvbl09XCJwb3NpdGlvblwiXG4gICAgIFtjbGFzc109XCJjb250YWluZXJDbGFzc1wiXG4gICAgIGNsYXNzPVwiZHItZHJvcGRvd25cIj5cbiAgICA8ZGl2IGNsYXNzPVwiZHItZHJvcGRvd25fX2NvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBhY3Qgb2YgbGlzdCB8IGRyRHJvcGRvd25JdGVtU2hvd1BpcGVcIlxuICAgICAgICAgICAgIChjbGljayk9XCJhY3Rpb24oYWN0KVwiXG4gICAgICAgICAgICAgW2RyVG9vbHRpcF09XCJ0b29sdGlwVG9TaG93KGFjdClcIlxuICAgICAgICAgICAgIFtkclRvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb24oZHJvcGRvd25Qb3NpdGlvbi53aWR0aE1vcmVSaWdodClcIlxuICAgICAgICAgICAgIFtkclRvb2x0aXBPcHRpb25zXT1cInsgd2l0aG91dEFycm93OiB0cnVlIH1cIlxuICAgICAgICAgICAgIFtkclRvb2x0aXBDbGFzc109XCInZHItZHJvcGRvd25fX3Rvb2x0aXAnXCJcbiAgICAgICAgICAgICBjbGFzcz1cImRyLWRyb3Bkb3duX19jb250YWluZXJfX2l0ZW1cIlxuICAgICAgICAgICAgIFtjbGFzcy5pdGVtLWRpc2FibGVkXT1cImRpc2FibGVkKGFjdClcIlxuICAgICAgICAgICAgIFtjbGFzcy5pdGVtLXNlbGVjdGVkXT1cInNlbGVjdGVkKGFjdClcIlxuICAgICAgICAgICAgIFtjbGFzcy5zZXBhcmF0ZS1saW5lXT1cImFjdC5zZXBhcmF0ZUxpbmVcIj5cbiAgICAgICAgICAgIDxpICpuZ0lmPVwiYWN0Lmljb25cIiBbY2xhc3NdPVwiYWN0Lmljb25cIj48L2k+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRyLWRyb3Bkb3duX19jb250YWluZXJfX2l0ZW1fX3RleHRcIj57e2FjdC50aXRsZX19PC9zcGFuPlxuICAgICAgICAgICAgPGkgKm5nRm9yPVwibGV0IGFjdGlvbkljb24gb2YgYWN0LmFjdGlvbkljb25zXCJcbiAgICAgICAgICAgICAgIFtjbGFzc109XCJhY3Rpb25JY29uLmljb25cIlxuICAgICAgICAgICAgICAgW2NsYXNzLnNob3dPbkhvdmVyXT1cImFjdGlvbkljb24uc2hvd09uSG92ZXJcIlxuICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uSWNvbkNsaWNrKCRldmVudCwgYWN0aW9uSWNvbiwgYWN0LmRhdGEpXCI+PC9pPlxuICAgICAgICAgICAgPGkgKm5nSWY9XCJhY3QuY2hpbGRyZW4/Lmxlbmd0aFwiIGNsYXNzPVwiZHItaWNvbi1hcnJvdy1yaWdodFwiPjwvaT5cbiAgICAgICAgICAgIDxkci1kcm9wZG93biAqbmdJZj1cImFjdC5jaGlsZHJlbj8ubGVuZ3RoXCIgW29wdGlvbnNdPVwiYWN0LmNoaWxkT3B0aW9uc1wiPjwvZHItZHJvcGRvd24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -35,7 +35,7 @@ export class DrErrorComponent {
35
35
  return this._control.errors?.isWarning;
36
36
  }
37
37
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrErrorComponent, deps: [{ token: i1.FormGroupDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
38
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrErrorComponent, selector: "dr-error", inputs: { control: "control", controlName: "controlName", label: "label", errorTooltipPosition: "errorTooltipPosition", displayAsLabel: "displayAsLabel", noIcon: "noIcon" }, host: { properties: { "class.no-icon": "this.noIcon" } }, ngImport: i0, template: "<div *ngIf=\"_control.status === 'INVALID' && !_control.pristine\"\n [drTooltip]=\"displayAsLabel ? null : errorString\"\n [drTooltipPosition]=\"errorTooltipPosition\"\n class=\"error-container\"\n [class.error-container--cursor-pointer]=\"!displayAsLabel\"\n [class.warning]=\"isWarning\">\n <i *ngIf=\"!noIcon\" class=\"dr-icon-status-error\"></i>\n <span>{{ displayAsLabel ? errorString : label }}</span>\n</div>\n", styles: [":host{display:flex;margin-top:8px}:host:empty{display:none}:host .error-container{display:flex;align-items:center;width:auto;color:#bf1d30}:host .error-container i{font-size:16px;margin-right:2px}:host .error-container span{font-family:Poppins,sans-serif;font-style:normal;font-weight:400;font-size:11px;line-height:20px}:host .error-container.warning{color:#ffb800}:host .error-container.warning span{color:#9e5f00}:host .error-container--cursor-pointer{cursor:pointer}:host.no-icon{margin-top:2px}:host.no-icon .error-container span{font-size:12px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }] }); }
38
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrErrorComponent, selector: "dr-error", inputs: { control: "control", controlName: "controlName", label: "label", errorTooltipPosition: "errorTooltipPosition", displayAsLabel: "displayAsLabel", noIcon: "noIcon" }, host: { properties: { "class.no-icon": "this.noIcon" } }, ngImport: i0, template: "<div *ngIf=\"_control.status === 'INVALID' && !_control.pristine\"\n [drTooltip]=\"displayAsLabel ? null : errorString\"\n [drTooltipPosition]=\"errorTooltipPosition\"\n class=\"error-container\"\n [class.error-container--cursor-pointer]=\"!displayAsLabel\"\n [class.warning]=\"isWarning\">\n <i *ngIf=\"!noIcon\" class=\"dr-icon-status-error\"></i>\n <span>{{ displayAsLabel ? errorString : label }}</span>\n</div>\n", styles: [":host{display:flex;margin-top:8px}:host:empty{display:none}:host .error-container{display:flex;align-items:center;width:auto;color:#bf1d30}:host .error-container i{font-size:16px;margin-right:2px}:host .error-container span{font-family:Poppins,sans-serif;font-style:normal;font-weight:400;font-size:11px;line-height:20px}:host .error-container.warning{color:#ffb800}:host .error-container.warning span{color:#9e5f00}:host .error-container--cursor-pointer{cursor:pointer}:host.no-icon{margin-top:2px}:host.no-icon .error-container span{font-size:12px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }] }); }
39
39
  }
40
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrErrorComponent, decorators: [{
41
41
  type: Component,
@@ -51,7 +51,7 @@ export class CheckboxComponent {
51
51
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
52
52
  /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CheckboxComponent, selector: "dr-checkbox", inputs: { checkedStatus: "checkedStatus", disabled: "disabled", icon: "icon", indeterminate: "indeterminate", textNowrap: "textNowrap" }, outputs: { checkedChange: "checkedChange" }, host: { properties: { "class.disabled": "this.disabled", "class.text-nowrap": "this.textNowrap" } }, providers: [
53
53
  { provide: NG_VALUE_ACCESSOR, useExisting: CheckboxComponent, multi: true }
54
- ], viewQueries: [{ propertyName: "checkboxContent", first: true, predicate: ["checkboxContent"], descendants: true }], ngImport: i0, template: "<label>\n <input type=\"checkbox\"\n [attr.data-test]=\"checkedStatus ? 'checked' : 'unchecked'\"\n [checked]=\"checkedStatus\"\n [disabled]=\"disabled\"\n (change)=\"setValue($event)\"\n (click)=\"$event.stopPropagation()\">\n <span #checkboxContent\n [class]=\"icon\"\n [class.indeterminate]=\"indeterminate\"\n [drTooltip]=\"tooltip\">\n <ng-content></ng-content>\n </span>\n</label>\n", styles: ["input+span{vertical-align:middle;line-height:30px}input+span,input+span:before{box-sizing:content-box!important;-webkit-box-sizing:content-box!important;-moz-box-sizing:content-box!important}input{visibility:hidden;position:absolute;width:0}label input+span{position:relative;z-index:19;display:inline-block;margin:0 5px 0 0;line-height:17px;min-height:14px;min-width:14px}:host.text-nowrap label input+span{white-space:nowrap;overflow:hidden;max-width:100%;text-overflow:ellipsis;line-height:20px}label input+span:hover{cursor:pointer}label input+span:before{content:\"\";font-size:14px;border-radius:0;display:inline-block;text-align:center;vertical-align:middle;padding:1px;min-height:12px;line-height:12px;min-width:12px;margin-right:5px;border:1.5px solid #8f929e;background-color:#fff;font-weight:400;margin-top:-1px}label input+span:before,label:hover input+span:before{background-color:#fff;border-color:#8f929e;color:#4646ce;border-radius:2px}label input:checked+span:before,label:hover input:checked+span:before{content:url('data:image/svg+xml; utf8, <svg width=\"12\" height=\"10\" viewBox=\"0 0 12 10\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M1 5L4.5 8.5L11 1.5\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/> </svg>');background:#4646ce;border-color:#4646ce;color:#fff}label input:checked+span.cross:before,label:hover input:checked+span.cross:before{content:url('data:image/svg+xml; utf8, <svg width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M5.91786 4.99992L9.03356 1.88386C9.11927 1.79808 9.16654 1.68365 9.16668 1.56162C9.16668 1.43952 9.1194 1.32495 9.03356 1.23931L8.7605 0.966323C8.67466 0.880342 8.56026 0.833252 8.43811 0.833252C8.31615 0.833252 8.20169 0.880342 8.11585 0.966323L5.00016 4.08218L1.88431 0.966323C1.79861 0.880342 1.68407 0.833252 1.56199 0.833252C1.44004 0.833252 1.32559 0.880342 1.23988 0.966323L0.966677 1.23931C0.788899 1.4171 0.788899 1.70628 0.966677 1.88386L4.08245 4.99992L0.966677 8.11584C0.880904 8.20175 0.833707 8.31619 0.833707 8.43822C0.833707 8.56025 0.880904 8.67468 0.966677 8.76053L1.23981 9.03351C1.32551 9.11943 1.44003 9.16658 1.56191 9.16658C1.684 9.16658 1.79853 9.11943 1.88424 9.03351L5.00008 5.91759L8.11578 9.03351C8.20162 9.11943 8.31608 9.16658 8.43803 9.16658C8.56005 9.16658 8.67459 9.11943 8.76043 9.03351L9.03349 8.76053C9.11919 8.67475 9.16646 8.56025 9.16646 8.43822C9.16646 8.31619 9.11919 8.20175 9.03349 8.11591L5.91786 4.99992Z\" fill=\"white\"/></svg>')}label input+span.indeterminate:before,label:hover input+span.indeterminate:before{content:url('data:image/svg+xml; utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 2\" fill=\"none\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0.25 1C0.25 0.585786 0.585786 0.25 1 0.25L11 0.250001C11.4142 0.250001 11.75 0.585787 11.75 1C11.75 1.41421 11.4142 1.75 11 1.75L1 1.75C0.585786 1.75 0.25 1.41421 0.25 1Z\" fill=\"white\"/></svg>');background:#4646ce;border-color:#4646ce;color:#fff}label input:disabled+span{color:#8f929e}label input:disabled+span:before{border-color:#dfe0e3;pointer-events:none}label input[disabled]:checked+span:before{background:#8f929e;border-color:#8f929e;pointer-events:none}:host label{position:relative}:host label:hover:after{content:\"\";width:24px;height:24px;background:#f2f2fb;border-radius:50%;position:absolute;left:-4px;top:.5px}:host.disabled label:hover:after{display:none}\n"], dependencies: [{ kind: "directive", type: i1.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
+ ], viewQueries: [{ propertyName: "checkboxContent", first: true, predicate: ["checkboxContent"], descendants: true }], ngImport: i0, template: "<label>\n <input type=\"checkbox\"\n [attr.data-test]=\"checkedStatus ? 'checked' : 'unchecked'\"\n [checked]=\"checkedStatus\"\n [disabled]=\"disabled\"\n (change)=\"setValue($event)\"\n (click)=\"$event.stopPropagation()\">\n <span #checkboxContent\n [class]=\"icon\"\n [class.indeterminate]=\"indeterminate\"\n [drTooltip]=\"tooltip\">\n <ng-content></ng-content>\n </span>\n</label>\n", styles: ["input+span{vertical-align:middle;line-height:30px}input+span,input+span:before{box-sizing:content-box!important;-webkit-box-sizing:content-box!important;-moz-box-sizing:content-box!important}input{visibility:hidden;position:absolute;width:0}label input+span{position:relative;z-index:19;display:inline-block;margin:0 5px 0 0;line-height:17px;min-height:14px;min-width:14px}:host.text-nowrap label input+span{white-space:nowrap;overflow:hidden;max-width:100%;text-overflow:ellipsis;line-height:20px}label input+span:hover{cursor:pointer}label input+span:before{content:\"\";font-size:14px;border-radius:0;display:inline-block;text-align:center;vertical-align:middle;padding:1px;min-height:12px;line-height:12px;min-width:12px;margin-right:5px;border:1.5px solid #8f929e;background-color:#fff;font-weight:400;margin-top:-1px}label input+span:before,label:hover input+span:before{background-color:#fff;border-color:#8f929e;color:#4646ce;border-radius:2px}label input:checked+span:before,label:hover input:checked+span:before{content:url('data:image/svg+xml; utf8, <svg width=\"12\" height=\"10\" viewBox=\"0 0 12 10\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M1 5L4.5 8.5L11 1.5\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/> </svg>');background:#4646ce;border-color:#4646ce;color:#fff}label input:checked+span.cross:before,label:hover input:checked+span.cross:before{content:url('data:image/svg+xml; utf8, <svg width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M5.91786 4.99992L9.03356 1.88386C9.11927 1.79808 9.16654 1.68365 9.16668 1.56162C9.16668 1.43952 9.1194 1.32495 9.03356 1.23931L8.7605 0.966323C8.67466 0.880342 8.56026 0.833252 8.43811 0.833252C8.31615 0.833252 8.20169 0.880342 8.11585 0.966323L5.00016 4.08218L1.88431 0.966323C1.79861 0.880342 1.68407 0.833252 1.56199 0.833252C1.44004 0.833252 1.32559 0.880342 1.23988 0.966323L0.966677 1.23931C0.788899 1.4171 0.788899 1.70628 0.966677 1.88386L4.08245 4.99992L0.966677 8.11584C0.880904 8.20175 0.833707 8.31619 0.833707 8.43822C0.833707 8.56025 0.880904 8.67468 0.966677 8.76053L1.23981 9.03351C1.32551 9.11943 1.44003 9.16658 1.56191 9.16658C1.684 9.16658 1.79853 9.11943 1.88424 9.03351L5.00008 5.91759L8.11578 9.03351C8.20162 9.11943 8.31608 9.16658 8.43803 9.16658C8.56005 9.16658 8.67459 9.11943 8.76043 9.03351L9.03349 8.76053C9.11919 8.67475 9.16646 8.56025 9.16646 8.43822C9.16646 8.31619 9.11919 8.20175 9.03349 8.11591L5.91786 4.99992Z\" fill=\"white\"/></svg>')}label input+span.indeterminate:before,label:hover input+span.indeterminate:before{content:url('data:image/svg+xml; utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 2\" fill=\"none\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0.25 1C0.25 0.585786 0.585786 0.25 1 0.25L11 0.250001C11.4142 0.250001 11.75 0.585787 11.75 1C11.75 1.41421 11.4142 1.75 11 1.75L1 1.75C0.585786 1.75 0.25 1.41421 0.25 1Z\" fill=\"white\"/></svg>');background:#4646ce;border-color:#4646ce;color:#fff}label input:disabled+span{color:#8f929e}label input:disabled+span:before{border-color:#dfe0e3;pointer-events:none}label input[disabled]:checked+span:before{background:#8f929e;border-color:#8f929e;pointer-events:none}:host label{position:relative}:host label:hover:after{content:\"\";width:24px;height:24px;background:#f2f2fb;border-radius:50%;position:absolute;left:-4px;top:.5px}:host.disabled label:hover:after{display:none}\n"], dependencies: [{ kind: "directive", type: i1.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
55
55
  }
56
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CheckboxComponent, decorators: [{
57
57
  type: Component,
@@ -174,7 +174,7 @@ export class DrDatePickerCustomHeaderComponent {
174
174
  this.datePickerService.updateDatePickerByPreset(this.selectedPresetTag, this._calendar);
175
175
  }
176
176
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrDatePickerCustomHeaderComponent, deps: [{ token: i1.MatCalendar }, { token: i2.DateAdapter }, { token: MAT_DATE_FORMATS }, { token: i0.ChangeDetectorRef }, { token: i3.DrDatePickerService }], target: i0.ɵɵFactoryTarget.Component }); }
177
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrDatePickerCustomHeaderComponent, selector: "dr-date-picker_custom-header.component", ngImport: i0, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\">\n <div *ngFor=\"let tag of presetTagList\" \n id=\"preset_tag\" \n class=\"dr-datepicker-preset-date__tags__tag\" \n (click)=\"onSelectPresetTag(tag)\" \n [ngClass]=\"{'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag}\"\n [drTooltip]=\"selectedPresetTag === tag.key? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\"\n (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\"\n (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\" (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n >Q{{quarter}}</div>\n</div>\n\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9EA1AA;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646CE}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}\n"], dependencies: [{ kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "component", type: i7.DrSelectComponent, selector: "dr-select", inputs: ["className", "items", "addTag", "appendTo", "bindLabel", "bindValue", "clearable", "searchable", "searchFn", "multiple", "hideSelected", "placeholder", "loading", "loadingText", "readonly", "disabled", "groupBy", "optionWithDescription", "id", "keyDownFn", "selectedItem", "dropdownClass", "closeOnSelect", "textView", "autofocus", "isOpen"], outputs: ["change", "open", "closeUp"] }, { kind: "pipe", type: i8.DrShowTimeframePipe, name: "drShowTimeframePipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
177
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrDatePickerCustomHeaderComponent, selector: "dr-date-picker_custom-header.component", ngImport: i0, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\">\n <div *ngFor=\"let tag of presetTagList\" \n id=\"preset_tag\" \n class=\"dr-datepicker-preset-date__tags__tag\" \n (click)=\"onSelectPresetTag(tag)\" \n [ngClass]=\"{'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag}\"\n [drTooltip]=\"selectedPresetTag === tag.key? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\"\n (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\"\n (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\" (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n >Q{{quarter}}</div>\n</div>\n\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9EA1AA;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646CE}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}\n"], dependencies: [{ kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.DrTooltipDirective, selector: "[drTooltip]", inputs: ["drTooltip", "drTooltipContext", "drTooltipPosition", "drTooltipClass", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipOptions", "drTooltipShow"] }, { kind: "component", type: i7.DrSelectComponent, selector: "dr-select", inputs: ["className", "items", "addTag", "appendTo", "bindLabel", "bindValue", "clearable", "searchable", "searchFn", "multiple", "hideSelected", "placeholder", "loading", "loadingText", "readonly", "disabled", "groupBy", "optionWithDescription", "id", "keyDownFn", "selectedItem", "dropdownClass", "closeOnSelect", "textView", "autofocus", "isOpen"], outputs: ["change", "open", "closeUp"] }, { kind: "pipe", type: i8.DrShowTimeframePipe, name: "drShowTimeframePipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
178
178
  }
179
179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrDatePickerCustomHeaderComponent, decorators: [{
180
180
  type: Component,
@@ -31,6 +31,26 @@ export class DrInputComponent {
31
31
  }
32
32
  this.cdr.markForCheck();
33
33
  }
34
+ set type(val) {
35
+ this._type = val;
36
+ if (this._type === 'search') {
37
+ this._elementClass.push('search-type');
38
+ if (!this._placeholder) {
39
+ this._placeholder = 'Search...';
40
+ }
41
+ }
42
+ }
43
+ ;
44
+ get type() {
45
+ return this._type;
46
+ }
47
+ set placeholder(val) {
48
+ this._placeholder = val;
49
+ }
50
+ ;
51
+ get placeholder() {
52
+ return this._placeholder;
53
+ }
34
54
  set clearable(val) {
35
55
  this._clearable = !!val;
36
56
  if (this._clearable) {
@@ -61,9 +81,6 @@ export class DrInputComponent {
61
81
  this.elementRef = elementRef;
62
82
  this.renderer = renderer;
63
83
  this.cdr = cdr;
64
- this._clearable = false;
65
- this.type = 'string';
66
- this.placeholder = '';
67
84
  this.readonly = false;
68
85
  this.blur = new EventEmitter();
69
86
  this.modelDebounceChange = new EventEmitter();
@@ -87,23 +104,17 @@ export class DrInputComponent {
87
104
  };
88
105
  this.onTouched = () => {
89
106
  };
107
+ this._placeholder = '';
108
+ this._type = 'string';
109
+ this._clearable = false;
90
110
  }
91
111
  ngAfterViewInit() {
92
- if (this.clearable) {
93
- this._elementClass.push('clearable');
94
- }
95
112
  if (this.prefixIcon) {
96
113
  this._elementClass.push('with-prefix');
97
114
  }
98
115
  if (this.suffixIcon) {
99
116
  this._elementClass.push('with-suffix');
100
117
  }
101
- if (this.type === 'search') {
102
- this._elementClass.push('search-type');
103
- if (!this.placeholder) {
104
- this.placeholder = 'Search...';
105
- }
106
- }
107
118
  }
108
119
  registerOnChange(fn) {
109
120
  this.onChangeCallback = fn;
@@ -223,4 +234,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
223
234
  type: HostBinding,
224
235
  args: ['tabindex']
225
236
  }] } });
226
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItaW5wdXRzL2RyLWlucHV0L2RyLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWlucHV0cy9kci1pbnB1dC9kci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFBRSxTQUFTLEdBQ3ZCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQWE1QixNQUFNLE9BQU8sZ0JBQWdCO0lBR3pCLElBQWEsUUFBUSxDQUFDLEtBQUs7UUFDdkIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFhLGFBQWEsQ0FBQyxLQUFLO1FBQzVCLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO1lBQzNELElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxXQUFXLEVBQUU7Z0JBQy9ELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQzFDO1NBQ0o7UUFDRCxJQUFJ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RyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBVUcsR0FBRztzQkFBWCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdOLFVBQVU7c0JBRlQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBRTNCLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBR0gsWUFBWTtzQkFEZixXQUFXO3VCQUFDLE9BQU87Z0JBbUJWLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUVpQyxZQUFZO3NCQUFuRCxTQUFTO3VCQUFDLFVBQVU7Z0JBQ3NCLFVBQVU7c0JBQXBELFlBQVk7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDRSxVQUFVO3NCQUFwRCxZQUFZO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRWhCLFFBQVE7c0JBQWhDLFdBQVc7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBSZW5kZXJlcjIsIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItaW5wdXQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFt7XG4gICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEcklucHV0Q29tcG9uZW50KSxcbiAgICAgICAgbXVsdGk6IHRydWVcbiAgICB9XSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRHJJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuICAgIF9jbGVhcmFibGUgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWx1ZSkge1xuICAgICAgICB0aGlzLnNldERpc2FibGVkU3RhdGUodmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHNldCBidXR0b25PcHRpb25zKHZhbHVlKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fYnV0dG9uT3B0aW9ucyA9IHsgLi4udGhpcy5fYnV0dG9uT3B0aW9ucywgLi4udmFsdWUgfTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9idXR0b25PcHRpb25zPy5zaG93IHx8IHRoaXMuX2J1dHRvbk9wdGlvbnM/LnNob3dPbkZvY3VzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzLnB1c2goJ3dpdGgtYnV0dG9uJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2J1dHRvbk9wdGlvbnMuc2hvd09uRm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMubGlzdGVuRnVuYyA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnY2xpY2snLCAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9idXR0b25PcHRpb25zLmZvY3VzU2V0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5nbG9iYWxMaXN0ZW5GdW5jID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oJ2RvY3VtZW50JywgJ2NsaWNrJywgZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChldmVudC50YXJnZXQucGFyZW50Tm9kZSAhPT0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX2J1dHRvbk9wdGlvbnMuY2hlY2tGb2N1c091dChldmVudC50YXJnZXQsIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkJ1dHRvbkNsaWNrZWQoZXZlbnQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgdHlwZSA9ICdzdHJpbmcnO1xuICAgIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xuICAgIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBzZXQgY2xlYXJhYmxlKHZhbCkge1xuICAgICAgICB0aGlzLl9jbGVhcmFibGUgPSAhIXZhbDtcbiAgICAgICAgaWYgKHRoaXMuX2NsZWFyYWJsZSkge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzLnB1c2goJ2NsZWFyYWJsZScpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzID0gdGhpcy5fZWxlbWVudENsYXNzLmZpbHRlcihpdGVtID0+IGl0ZW0gIT09ICdjbGVhcmFibGUnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBtaW46IG51bWJlciB8IHN0cmluZztcbiAgICBASW5wdXQoKSBtYXg6IG51bWJlciB8IHN0cmluZztcbiAgICBASW5wdXQoKSBtaW5MZW5ndGg6IG51bWJlcjtcbiAgICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlcjtcbiAgICBASW5wdXQoKSBzdGVwO1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWFyY2gtdHlwZS1taW5pJylcbiAgICBzZWFyY2hNaW5pOiBib29sZWFuO1xuICAgIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIEBPdXRwdXQoKSBtb2RlbERlYm91bmNlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGVsZW1lbnRDbGFzcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVudENsYXNzLmpvaW4oJyAnKTtcbiAgICB9XG5cbiAgICBpbm5lclZhbHVlID0gbnVsbDtcbiAgICBfZGlzYWJsZWQgPSBudWxsO1xuICAgIF9lbGVtZW50Q2xhc3M6IHN0cmluZ1tdID0gW107XG4gICAgX2J1dHRvbk9wdGlvbnMgPSB7XG4gICAgICAgIHNob3c6IGZhbHNlLFxuICAgICAgICBzaG93T25Gb2N1czogZmFsc2UsXG4gICAgICAgIGZvY3VzU2V0OiBmYWxzZSxcbiAgICAgICAgY2hlY2tGb2N1c091dDogKHRhcmdldDogYW55LCBlbGVtZW50OiBhbnkpID0+IHRydWUsXG4gICAgICAgIHRleHQ6ICdTYXZlJ1xuICAgIH07XG4gICAgbGlzdGVuRnVuYzogKC4uLnBhcmFtcykgPT4gYW55O1xuICAgIGdsb2JhbExpc3RlbkZ1bmM6ICguLi5wYXJhbXMpID0+IGFueTtcblxuXG4gICAgQE91dHB1dCgpIHNlYXJjaEhhbmRsZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgY2xlYXJIYW5kbGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgQE91dHB1dCgpIGJ1dHRvbkhhbmRsZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0UmVmJykgcHJpdmF0ZSByZWFkb25seSBpbnB1dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gICAgQENvbnRlbnRDaGlsZCgncHJlZml4JywgeyBzdGF0aWM6IGZhbHNlIH0pIHByZWZpeEljb246IEVsZW1lbnRSZWY7XG4gICAgQENvbnRlbnRDaGlsZCgnc3VmZml4JywgeyBzdGF0aWM6IGZhbHNlIH0pIHN1ZmZpeEljb246IEVsZW1lbnRSZWY7XG5cbiAgICBASG9zdEJpbmRpbmcoJ3RhYmluZGV4JykgdGFiaW5kZXggPSAtMTtcbiAgICBvbkNoYW5nZUNhbGxiYWNrOiAoXzogYW55KSA9PiB2b2lkID0gbm9vcDtcbiAgICBvblRvdWNoZWRDYWxsYmFjazogKCkgPT4gdm9pZCA9IG5vb3A7XG4gICAgb25DaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge1xuICAgIH07XG4gICAgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4ge1xuICAgIH07XG5cbiAgICBzZXQodmFsOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzID0gdmFsLnNwbGl0KCcgJyk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5pbm5lclZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQgdmFsdWUodjogc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgICAgIGlmICh2ICE9PSB0aGlzLmlubmVyVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuaW5uZXJWYWx1ZSA9IHRoaXMudHlwZSA9PT0gJ251bWJlcicgPyArdiA6IHY7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodGhpcy5pbm5lclZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jbGVhcmFibGUpIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRDbGFzcy5wdXNoKCdjbGVhcmFibGUnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5wcmVmaXhJY29uKSB7XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50Q2xhc3MucHVzaCgnd2l0aC1wcmVmaXgnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5zdWZmaXhJY29uKSB7XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50Q2xhc3MucHVzaCgnd2l0aC1zdWZmaXgnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy50eXBlID09PSAnc2VhcmNoJykge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzLnB1c2goJ3NlYXJjaC10eXBlJyk7XG4gICAgICAgICAgICBpZiAoIXRoaXMucGxhY2Vob2xkZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBsYWNlaG9sZGVyID0gJ1NlYXJjaC4uLidcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLmlubmVyVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuaW5uZXJWYWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDaGFuZ2VzKCk7XG4gICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZUNoYW5nZXMoKSB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgICAgIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50Q2xhc3MucHVzaCgnZGlzYWJsZWQnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRDbGFzcyA9IHRoaXMuX2VsZW1lbnRDbGFzcy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSAnZGlzYWJsZWQnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIG9uU2VhcmNoQ2xpY2tlZCgpIHtcbiAgICAgICAgdGhpcy5zZWFyY2hIYW5kbGVyLmVtaXQodGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgb25CdXR0b25DbGlja2VkKCRldmVudDogYW55KSB7XG4gICAgICAgIHRoaXMuYnV0dG9uSGFuZGxlci5lbWl0KCRldmVudCk7XG4gICAgICAgIHRoaXMuX2J1dHRvbk9wdGlvbnMuZm9jdXNTZXQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmxpc3RlbkZ1bmMpIHtcbiAgICAgICAgICAgIHRoaXMubGlzdGVuRnVuYygpO1xuICAgICAgICAgICAgdGhpcy5nbG9iYWxMaXN0ZW5GdW5jKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNsZWFyKCRldmVudCkge1xuICAgICAgICB0aGlzLmNsZWFySGFuZGxlci5lbWl0KCRldmVudCk7XG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xuICAgIH1cblxuICAgIGZvY3VzKCkge1xuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3ByZWZpeEljb25dXCI+PC9uZy1jb250ZW50PlxuPGlucHV0ICNpbnB1dFJlZlxuICAgICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZUNoYW5nZXMoKVwiXG4gICAgICAgKG5nTW9kZWxEZWJvdW5jZUNoYW5nZSk9XCJtb2RlbERlYm91bmNlQ2hhbmdlLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgKGJsdXIpPVwiYmx1ci5lbWl0KHZhbHVlKTsgb25Ub3VjaGVkKClcIlxuICAgICAgIFtkaXNhYmxlZF09XCJfZGlzYWJsZWRcIlxuICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgW3R5cGVdPVwidHlwZVwiXG4gICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgW21heF09XCJtYXhcIlxuICAgICAgIFttaW5MZW5ndGhdPVwibWluTGVuZ3RoXCJcbiAgICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXG4gICAgICAgW3N0ZXBdPVwic3RlcFwiXG4+XG48c3BhbiAqbmdJZj1cInZhbHVlXCIgY2xhc3M9XCJjbGVhci1pY29uXCIgKGNsaWNrKT1cIm9uQ2xlYXIoJGV2ZW50KVwiPjwvc3Bhbj5cbjxzcGFuICpuZ0lmPVwidHlwZSA9PT0gJ3NlYXJjaCdcIiBjbGFzcz1cInNlYXJjaC1pY29uXCIgKGNsaWNrKT1cIm9uU2VhcmNoQ2xpY2tlZCgpXCI+PC9zcGFuPlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3N1ZmZpeEljb25dXCI+PC9uZy1jb250ZW50PlxuPGJ1dHRvbiAqbmdJZj1cIl9idXR0b25PcHRpb25zLnNob3cgfHwgKF9idXR0b25PcHRpb25zLnNob3dPbkZvY3VzICYmIF9idXR0b25PcHRpb25zLmZvY3VzU2V0KVwiXG4gICAgICAgIChjbGljayk9XCJvbkJ1dHRvbkNsaWNrZWQoJGV2ZW50KVwiPlxuICAgIHt7X2J1dHRvbk9wdGlvbnMudGV4dH19XG48L2J1dHRvbj5cbiJdfQ==
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItaW5wdXRzL2RyLWlucHV0L2RyLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWlucHV0cy9kci1pbnB1dC9kci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBYTVCLE1BQU0sT0FBTyxnQkFBZ0I7SUFDekIsSUFBYSxRQUFRLENBQUMsS0FBSztRQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQWEsYUFBYSxDQUFDLEtBQUs7UUFDNUIsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUM7WUFDM0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLFdBQVcsRUFBRTtnQkFDL0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDMUM7U0FDSjtRQUNELElBQUks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RSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLEVBQUMsR0FBRyxFQUFFLGlCQUFpQixFQUFDOzRCQUMvQyxLQUFLLEVBQUUsSUFBSTt5QkFDZCxDQUFDLG1CQUNlLHVCQUF1QixDQUFDLE1BQU07eUpBR2xDLFFBQVE7c0JBQXBCLEtBQUs7Z0JBSU8sYUFBYTtzQkFBekIsS0FBSztnQkF1Qk8sSUFBSTtzQkFBaEIsS0FBSztnQkFjRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRU8sV0FBVztzQkFBdkIsS0FBSztnQkFRRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBVUcsR0FBRztzQkFBWCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUdOLFVBQVU7c0JBRlQsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBRTNCLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBR0gsWUFBWTtzQkFEZixXQUFXO3VCQUFDLE9BQU87Z0JBbUJWLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUVpQyxZQUFZO3NCQUFuRCxTQUFTO3VCQUFDLFVBQVU7Z0JBQ3NCLFVBQVU7c0JBQXBELFlBQVk7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDRSxVQUFVO3NCQUFwRCxZQUFZO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRWhCLFFBQVE7c0JBQWhDLFdBQVc7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBSZW5kZXJlcjIsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IG5vb3AgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1pbnB1dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW3tcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERySW5wdXRDb21wb25lbnQpLFxuICAgICAgICBtdWx0aTogdHJ1ZVxuICAgIH1dLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEcklucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgc2V0IGJ1dHRvbk9wdGlvbnModmFsdWUpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl9idXR0b25PcHRpb25zID0geyAuLi50aGlzLl9idXR0b25PcHRpb25zLCAuLi52YWx1ZSB9O1xuICAgICAgICAgICAgaWYgKHRoaXMuX2J1dHRvbk9wdGlvbnM/LnNob3cgfHwgdGhpcy5fYnV0dG9uT3B0aW9ucz8uc2hvd09uRm9jdXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50Q2xhc3MucHVzaCgnd2l0aC1idXR0b24nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fYnV0dG9uT3B0aW9ucy5zaG93T25Gb2N1cykge1xuICAgICAgICAgICAgdGhpcy5saXN0ZW5GdW5jID0gdGhpcy5yZW5kZXJlci5saXN0ZW4odGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbGljaycsIChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2J1dHRvbk9wdGlvbnMuZm9jdXNTZXQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmdsb2JhbExpc3RlbkZ1bmMgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnY2xpY2snLCBldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGV2ZW50LnRhcmdldC5wYXJlbnROb2RlICE9PSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5fYnV0dG9uT3B0aW9ucy5jaGVja0ZvY3VzT3V0KGV2ZW50LnRhcmdldCwgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uQnV0dG9uQ2xpY2tlZChldmVudCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBzZXQgdHlwZSh2YWwpIHtcbiAgICAgICAgdGhpcy5fdHlwZSA9IHZhbDtcbiAgICAgICAgaWYgKHRoaXMuX3R5cGUgPT09ICdzZWFyY2gnKSB7XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50Q2xhc3MucHVzaCgnc2VhcmNoLXR5cGUnKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5fcGxhY2Vob2xkZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9wbGFjZWhvbGRlciA9ICdTZWFyY2guLi4nO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcblxuICAgIGdldCB0eXBlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl90eXBlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIG5hbWU6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIHNldCBwbGFjZWhvbGRlcih2YWw6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHZhbDtcbiAgICB9O1xuXG4gICAgZ2V0IHBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wbGFjZWhvbGRlcjtcbiAgICB9XG5cbiAgICBASW5wdXQoKSByZWFkb25seSA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc2V0IGNsZWFyYWJsZSh2YWwpIHtcbiAgICAgICAgdGhpcy5fY2xlYXJhYmxlID0gISF2YWw7XG4gICAgICAgIGlmICh0aGlzLl9jbGVhcmFibGUpIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRDbGFzcy5wdXNoKCdjbGVhcmFibGUnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRDbGFzcyA9IHRoaXMuX2VsZW1lbnRDbGFzcy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSAnY2xlYXJhYmxlJyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgbWluOiBudW1iZXIgfCBzdHJpbmc7XG4gICAgQElucHV0KCkgbWF4OiBudW1iZXIgfCBzdHJpbmc7XG4gICAgQElucHV0KCkgbWluTGVuZ3RoOiBudW1iZXI7XG4gICAgQElucHV0KCkgbWF4bGVuZ3RoOiBudW1iZXI7XG4gICAgQElucHV0KCkgc3RlcDtcbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2VhcmNoLXR5cGUtbWluaScpXG4gICAgc2VhcmNoTWluaTogYm9vbGVhbjtcbiAgICBAT3V0cHV0KCkgYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBAT3V0cHV0KCkgbW9kZWxEZWJvdW5jZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBlbGVtZW50Q2xhc3MoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRDbGFzcy5qb2luKCcgJyk7XG4gICAgfVxuXG4gICAgaW5uZXJWYWx1ZSA9IG51bGw7XG4gICAgX2Rpc2FibGVkID0gbnVsbDtcbiAgICBfZWxlbWVudENsYXNzOiBzdHJpbmdbXSA9IFtdO1xuICAgIF9idXR0b25PcHRpb25zID0ge1xuICAgICAgICBzaG93OiBmYWxzZSxcbiAgICAgICAgc2hvd09uRm9jdXM6IGZhbHNlLFxuICAgICAgICBmb2N1c1NldDogZmFsc2UsXG4gICAgICAgIGNoZWNrRm9jdXNPdXQ6ICh0YXJnZXQ6IGFueSwgZWxlbWVudDogYW55KSA9PiB0cnVlLFxuICAgICAgICB0ZXh0OiAnU2F2ZSdcbiAgICB9O1xuICAgIGxpc3RlbkZ1bmM6ICguLi5wYXJhbXMpID0+IGFueTtcbiAgICBnbG9iYWxMaXN0ZW5GdW5jOiAoLi4ucGFyYW1zKSA9PiBhbnk7XG5cblxuICAgIEBPdXRwdXQoKSBzZWFyY2hIYW5kbGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgQE91dHB1dCgpIGNsZWFySGFuZGxlciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIEBPdXRwdXQoKSBidXR0b25IYW5kbGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dFJlZicpIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICAgIEBDb250ZW50Q2hpbGQoJ3ByZWZpeCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwcmVmaXhJY29uOiBFbGVtZW50UmVmO1xuICAgIEBDb250ZW50Q2hpbGQoJ3N1ZmZpeCcsIHsgc3RhdGljOiBmYWxzZSB9KSBzdWZmaXhJY29uOiBFbGVtZW50UmVmO1xuXG4gICAgQEhvc3RCaW5kaW5nKCd0YWJpbmRleCcpIHRhYmluZGV4ID0gLTE7XG4gICAgb25DaGFuZ2VDYWxsYmFjazogKF86IGFueSkgPT4gdm9pZCA9IG5vb3A7XG4gICAgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xuICAgIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHtcbiAgICB9O1xuICAgIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHtcbiAgICB9O1xuXG4gICAgc2V0KHZhbDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRDbGFzcyA9IHZhbC5zcGxpdCgnICcpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdmFsdWUoKTogc3RyaW5nIHwgbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5uZXJWYWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0IHZhbHVlKHY6IHN0cmluZyB8IG51bWJlcikge1xuICAgICAgICBpZiAodiAhPT0gdGhpcy5pbm5lclZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmlubmVyVmFsdWUgPSB0aGlzLnR5cGUgPT09ICdudW1iZXInID8gK3YgOiB2O1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHRoaXMuaW5uZXJWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcGxhY2Vob2xkZXIgPSAnJztcbiAgICBwcml2YXRlIF90eXBlID0gJ3N0cmluZyc7XG4gICAgcHJpdmF0ZSBfY2xlYXJhYmxlID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucHJlZml4SWNvbikge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzLnB1c2goJ3dpdGgtcHJlZml4Jyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuc3VmZml4SWNvbikge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzLnB1c2goJ3dpdGgtc3VmZml4Jyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5pbm5lclZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ2hhbmdlcygpO1xuICAgICAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGVDaGFuZ2VzKCkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgICAgICBpZiAoaXNEaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudENsYXNzLnB1c2goJ2Rpc2FibGVkJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50Q2xhc3MgPSB0aGlzLl9lbGVtZW50Q2xhc3MuZmlsdGVyKGl0ZW0gPT4gaXRlbSAhPT0gJ2Rpc2FibGVkJyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBvblNlYXJjaENsaWNrZWQoKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoSGFuZGxlci5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIG9uQnV0dG9uQ2xpY2tlZCgkZXZlbnQ6IGFueSkge1xuICAgICAgICB0aGlzLmJ1dHRvbkhhbmRsZXIuZW1pdCgkZXZlbnQpO1xuICAgICAgICB0aGlzLl9idXR0b25PcHRpb25zLmZvY3VzU2V0ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5saXN0ZW5GdW5jKSB7XG4gICAgICAgICAgICB0aGlzLmxpc3RlbkZ1bmMoKTtcbiAgICAgICAgICAgIHRoaXMuZ2xvYmFsTGlzdGVuRnVuYygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25DbGVhcigkZXZlbnQpIHtcbiAgICAgICAgdGhpcy5jbGVhckhhbmRsZXIuZW1pdCgkZXZlbnQpO1xuICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICB9XG5cbiAgICBmb2N1cygpIHtcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cIltwcmVmaXhJY29uXVwiPjwvbmctY29udGVudD5cbjxpbnB1dCAjaW5wdXRSZWZcbiAgICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDaGFuZ2VzKClcIlxuICAgICAgIChuZ01vZGVsRGVib3VuY2VDaGFuZ2UpPVwibW9kZWxEZWJvdW5jZUNoYW5nZS5lbWl0KCRldmVudClcIlxuICAgICAgIChibHVyKT1cImJsdXIuZW1pdCh2YWx1ZSk7IG9uVG91Y2hlZCgpXCJcbiAgICAgICBbZGlzYWJsZWRdPVwiX2Rpc2FibGVkXCJcbiAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgIFt0eXBlXT1cInR5cGVcIlxuICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICAgW21pbl09XCJtaW5cIlxuICAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgICBbbWluTGVuZ3RoXT1cIm1pbkxlbmd0aFwiXG4gICAgICAgW21heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgICAgIFtzdGVwXT1cInN0ZXBcIlxuPlxuPHNwYW4gKm5nSWY9XCJ2YWx1ZVwiIGNsYXNzPVwiY2xlYXItaWNvblwiIChjbGljayk9XCJvbkNsZWFyKCRldmVudClcIj48L3NwYW4+XG48c3BhbiAqbmdJZj1cInR5cGUgPT09ICdzZWFyY2gnXCIgY2xhc3M9XCJzZWFyY2gtaWNvblwiIChjbGljayk9XCJvblNlYXJjaENsaWNrZWQoKVwiPjwvc3Bhbj5cbjxuZy1jb250ZW50IHNlbGVjdD1cIltzdWZmaXhJY29uXVwiPjwvbmctY29udGVudD5cbjxidXR0b24gKm5nSWY9XCJfYnV0dG9uT3B0aW9ucy5zaG93IHx8IChfYnV0dG9uT3B0aW9ucy5zaG93T25Gb2N1cyAmJiBfYnV0dG9uT3B0aW9ucy5mb2N1c1NldClcIlxuICAgICAgICAoY2xpY2spPVwib25CdXR0b25DbGlja2VkKCRldmVudClcIj5cbiAgICB7e19idXR0b25PcHRpb25zLnRleHR9fVxuPC9idXR0b24+XG4iXX0=