@agorapulse/ui-components 13.2.8 → 13.2.9

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 (35) hide show
  1. package/agorapulse-ui-components-13.2.9.tgz +0 -0
  2. package/esm2020/index.mjs +2 -9
  3. package/esm2020/src/lib/agorapulse-ui-components.module.mjs +7 -37
  4. package/esm2020/src/lib/image-carousel/image-carousel.component.mjs +12 -8
  5. package/esm2020/src/lib/popmenu/index.mjs +5 -0
  6. package/esm2020/src/lib/users-tag/users-tag.component.mjs +96 -0
  7. package/fesm2015/agorapulse-ui-components.mjs +602 -773
  8. package/fesm2015/agorapulse-ui-components.mjs.map +1 -1
  9. package/fesm2020/agorapulse-ui-components.mjs +596 -766
  10. package/fesm2020/agorapulse-ui-components.mjs.map +1 -1
  11. package/index.d.ts +1 -9
  12. package/package.json +1 -1
  13. package/src/lib/agorapulse-ui-components.module.d.ts +48 -54
  14. package/src/lib/image-carousel/image-carousel.component.d.ts +4 -1
  15. package/src/lib/popmenu/index.d.ts +4 -0
  16. package/src/lib/users-tag/users-tag.component.d.ts +32 -0
  17. package/agorapulse-ui-components-13.2.8.tgz +0 -0
  18. package/esm2020/src/lib/overlay/overlay-dialog-service.component.mjs +0 -61
  19. package/esm2020/src/lib/overlay/overlay-dialog.component.mjs +0 -33
  20. package/esm2020/src/lib/overlay-in-div/overlay-in-div.component.mjs +0 -27
  21. package/esm2020/src/lib/places/place-list.component.mjs +0 -11
  22. package/esm2020/src/lib/places/place.component.mjs +0 -14
  23. package/esm2020/src/lib/splashscreen/splashscreen.component.mjs +0 -43
  24. package/esm2020/src/lib/star-rating/star-rating.component.mjs +0 -43
  25. package/esm2020/src/lib/try-popup/try-popup-texts.model.mjs +0 -2
  26. package/esm2020/src/lib/try-popup/try-popup.component.mjs +0 -37
  27. package/src/lib/overlay/overlay-dialog-service.component.d.ts +0 -23
  28. package/src/lib/overlay/overlay-dialog.component.d.ts +0 -20
  29. package/src/lib/overlay-in-div/overlay-in-div.component.d.ts +0 -11
  30. package/src/lib/places/place-list.component.d.ts +0 -5
  31. package/src/lib/places/place.component.d.ts +0 -6
  32. package/src/lib/splashscreen/splashscreen.component.d.ts +0 -18
  33. package/src/lib/star-rating/star-rating.component.d.ts +0 -13
  34. package/src/lib/try-popup/try-popup-texts.model.d.ts +0 -4
  35. package/src/lib/try-popup/try-popup.component.d.ts +0 -15
@@ -0,0 +1,96 @@
1
+ import { Component, Input, ViewChild, ChangeDetectionStrategy, ViewChildren } from '@angular/core';
2
+ import { takeUntil } from "rxjs/operators";
3
+ import { Subject } from "rxjs";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@agorapulse/ui-symbol";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "../directives/ellipsis.directive";
8
+ import * as i4 from "../tooltip-neo/tooltip-neo.directive";
9
+ export class InstagramUserTag {
10
+ }
11
+ const MIDDLE_IMAGE = 0.5;
12
+ const TOOLTIP_INFO_PIXEL_CORRECTION = 8;
13
+ const ARROW_HEIGHT = 7;
14
+ const INSTAGRAM_WEBSITE_URL = 'http://www.instagram.com';
15
+ export class UsersTagComponent {
16
+ constructor(changeDetectorRef, elementRef) {
17
+ this.changeDetectorRef = changeDetectorRef;
18
+ this.elementRef = elementRef;
19
+ this.userTags = [];
20
+ this.tagOverlayShown = true;
21
+ this.toggleTagItems = false;
22
+ this.destroyed = new Subject();
23
+ this.THRESHOLD_VALUE = 0.5;
24
+ }
25
+ ngAfterViewInit() {
26
+ this.tagItems.changes.pipe(takeUntil(this.destroyed)).subscribe(() => {
27
+ this.updateUserTagsPosition(this.userTags);
28
+ });
29
+ this.changeDetectorRef.markForCheck();
30
+ this.updateUserTagsPosition(this.userTags);
31
+ }
32
+ ngOnDestroy() {
33
+ this.destroyed.next();
34
+ }
35
+ toggleTagsOverlay() {
36
+ this.toggleTagItems = !this.toggleTagItems;
37
+ }
38
+ updateUserTagsPosition(userTags) {
39
+ if (userTags) {
40
+ userTags.forEach(userTag => {
41
+ const id = 'tagPreview-' + userTag.username;
42
+ const tagDivs = this.tagItems?.map(directive => directive.nativeElement);
43
+ const div = tagDivs?.find(tag => tag.id === id);
44
+ if (div) {
45
+ this.updateDOM(id, userTags, div);
46
+ }
47
+ });
48
+ }
49
+ }
50
+ updateDOM(id, userTags, element) {
51
+ const userName = id.split('-')[1];
52
+ const selectedUserTag = userTags.find(userTag => userTag.username === userName);
53
+ if (selectedUserTag) {
54
+ const x = selectedUserTag.x;
55
+ const y = selectedUserTag.y;
56
+ const imagePreview = this.elementRef.nativeElement.parentElement.querySelector('#imagePreview');
57
+ const imageContainer = this.elementRef.nativeElement.parentElement.querySelector('#imageContainer');
58
+ if (this.tooltipInformation) {
59
+ this.tooltipOffsetTop = imageContainer.offsetHeight + imageContainer.offsetTop - this.tooltipInformation.nativeElement.offsetHeight - TOOLTIP_INFO_PIXEL_CORRECTION;
60
+ this.tooltipOffsetLeft = (imageContainer.offsetWidth - this.tooltipInformation.nativeElement.offsetWidth) / 2;
61
+ }
62
+ const left = (x * imagePreview.offsetWidth) + imagePreview.offsetLeft - (element.offsetWidth / 2);
63
+ let top = (y * imagePreview.offsetHeight) + imagePreview.offsetTop;
64
+ top = y > MIDDLE_IMAGE ? top - element.offsetHeight + ARROW_HEIGHT : top - ARROW_HEIGHT;
65
+ element.style.left = left + 'px';
66
+ element.style.top = top + 'px';
67
+ }
68
+ this.changeDetectorRef.markForCheck();
69
+ }
70
+ openInstagramLink(tagName) {
71
+ window.open(INSTAGRAM_WEBSITE_URL + '/' + tagName, '_blank', 'noopener,noreferrer');
72
+ }
73
+ userTagsTrackByFn(index, userTag) {
74
+ return userTag.username;
75
+ }
76
+ }
77
+ /** @nocollapse */ /** @nocollapse */ UsersTagComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: UsersTagComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
78
+ /** @nocollapse */ /** @nocollapse */ UsersTagComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: UsersTagComponent, selector: "ap-users-tag", inputs: { userTags: "userTags", tagOverlayShown: "tagOverlayShown" }, viewQueries: [{ propertyName: "popMenuDiv", first: true, predicate: ["popMenuDiv"], descendants: true }, { propertyName: "tooltipInformation", first: true, predicate: ["tooltipInformation"], descendants: true }, { propertyName: "tagItems", predicate: ["tagItems"], descendants: true }], ngImport: i0, template: "<div class=\"tag-overlay\"\n [hidden]=\"!tagOverlayShown\"\n (click)=\"toggleTagsOverlay()\">\n\n <button class=\"toggle-button\">\n <ap-symbol\n symbolId=\"custom-instagram-tags\"\n color=\"white\"\n size=\"nano\">\n </ap-symbol>\n </button>\n <div *ngFor=\"let userTag of userTags; trackBy: userTagsTrackByFn\"\n [class.hide-tags]=\"toggleTagItems\"\n [id]=\"'tagPreview-'+ userTag.username\" class=\"mention-user-tag\"\n [class.mention-user-tag-column-direction]=\"userTag.y < THRESHOLD_VALUE\"\n [class.mention-user-tag-column-reverse-direction]=\"userTag.y > THRESHOLD_VALUE\" #tagItems>\n <div class=\"triangle\"\n [class.top-triangle]=\"userTag.y < THRESHOLD_VALUE\"\n [class.bottom-triangle]=\"userTag.y > THRESHOLD_VALUE\"></div>\n <div class=\"mention-content-user-tag user-tag-name\">\n <span class=\"user-name\"\n [apTooltipNeo]=\"{content: userTag.username, position: 'bottom'}\"\n (click)=\"openInstagramLink(userTag.username)\"\n apEllipsis>{{userTag.username}}</span>\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}.tag-overlay{height:100%;width:100%;position:absolute;inset:0;cursor:pointer}.tag-overlay .toggle-button{bottom:12px;left:12px;position:absolute;border-radius:50px;background-color:#000;height:22px;border:none;cursor:pointer}.tag-overlay .arrow{color:#858fa1;min-width:52px;max-width:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;flex:1;border-radius:8px}.tag-overlay .arrow.arrow-right{margin-left:8px}.tag-overlay .arrow.arrow-left{margin-right:8px}.tag-overlay .arrow:hover{background:#f5f5f7}.tag-overlay .mention-user-tag{color:#fff;border-radius:4px;font-size:14px;font-weight:600;max-width:150px;min-height:29px;position:absolute;display:flex}.tag-overlay .mention-user-tag[hidden]{display:none}.tag-overlay .mention-user-tag-column-direction{flex-direction:column}.tag-overlay .mention-user-tag-column-reverse-direction{flex-direction:column-reverse}.tag-overlay .user-tag-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;background-color:#000000d9;box-sizing:border-box;color:#fff;border-radius:4px;padding:8px;font-size:14px;font-weight:600;max-width:150px;cursor:pointer;display:block}.tag-overlay .mention-content-user-tag{display:flex;justify-content:space-between}.tag-overlay .triangle{margin:0 auto;border-top:0 solid;border-left:0 solid;border-right:0 solid;border-bottom:0 solid;border-bottom-width:7px;border-top-width:7px;border-left-width:7px;border-right-width:7px;background:transparent;width:0;height:0}.tag-overlay .top-triangle{border-bottom:0 solid rgba(0,0,0,.85);border-bottom-width:7px;border-top-color:transparent;border-left-color:transparent;border-right-color:transparent}.tag-overlay .bottom-triangle{border-top:0 solid rgba(0,0,0,.85);border-top-width:7px;border-bottom-color:transparent;border-left-color:transparent;border-right-color:transparent}.tag-overlay .right-triangle{margin-right:10px}.tag-overlay .left-triangle{margin-left:10px}.tag-overlay .hide-tags{opacity:0}\n"], components: [{ type: i1.SymbolComponent, selector: "ap-symbol", inputs: ["color", "id", "symbolId", "size", "state"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.EllipsisDirective, selector: "[apEllipsis]", inputs: ["apEllipsisSeparator", "apEllipsisClip", "apEllipsisIndex", "apEllipsisChar", "apEllipsisClickable"], outputs: ["apEllipsisRemovedElementsCount", "apEllipsisRemovedText"] }, { type: i4.TooltipNeoDirective, selector: "[apTooltipNeo]", inputs: ["apTooltipNeo"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: UsersTagComponent, decorators: [{
80
+ type: Component,
81
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'ap-users-tag', template: "<div class=\"tag-overlay\"\n [hidden]=\"!tagOverlayShown\"\n (click)=\"toggleTagsOverlay()\">\n\n <button class=\"toggle-button\">\n <ap-symbol\n symbolId=\"custom-instagram-tags\"\n color=\"white\"\n size=\"nano\">\n </ap-symbol>\n </button>\n <div *ngFor=\"let userTag of userTags; trackBy: userTagsTrackByFn\"\n [class.hide-tags]=\"toggleTagItems\"\n [id]=\"'tagPreview-'+ userTag.username\" class=\"mention-user-tag\"\n [class.mention-user-tag-column-direction]=\"userTag.y < THRESHOLD_VALUE\"\n [class.mention-user-tag-column-reverse-direction]=\"userTag.y > THRESHOLD_VALUE\" #tagItems>\n <div class=\"triangle\"\n [class.top-triangle]=\"userTag.y < THRESHOLD_VALUE\"\n [class.bottom-triangle]=\"userTag.y > THRESHOLD_VALUE\"></div>\n <div class=\"mention-content-user-tag user-tag-name\">\n <span class=\"user-name\"\n [apTooltipNeo]=\"{content: userTag.username, position: 'bottom'}\"\n (click)=\"openInstagramLink(userTag.username)\"\n apEllipsis>{{userTag.username}}</span>\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#1877f2}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#1877f2}[border=facebook]{border:1px solid #1877f2}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #A566A5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #C7AB82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #F2713C}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #FFD006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94C5AA}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2A9D8F}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78ACD8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525A9E}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6A2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729E}.tag-overlay{height:100%;width:100%;position:absolute;inset:0;cursor:pointer}.tag-overlay .toggle-button{bottom:12px;left:12px;position:absolute;border-radius:50px;background-color:#000;height:22px;border:none;cursor:pointer}.tag-overlay .arrow{color:#858fa1;min-width:52px;max-width:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;flex:1;border-radius:8px}.tag-overlay .arrow.arrow-right{margin-left:8px}.tag-overlay .arrow.arrow-left{margin-right:8px}.tag-overlay .arrow:hover{background:#f5f5f7}.tag-overlay .mention-user-tag{color:#fff;border-radius:4px;font-size:14px;font-weight:600;max-width:150px;min-height:29px;position:absolute;display:flex}.tag-overlay .mention-user-tag[hidden]{display:none}.tag-overlay .mention-user-tag-column-direction{flex-direction:column}.tag-overlay .mention-user-tag-column-reverse-direction{flex-direction:column-reverse}.tag-overlay .user-tag-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;background-color:#000000d9;box-sizing:border-box;color:#fff;border-radius:4px;padding:8px;font-size:14px;font-weight:600;max-width:150px;cursor:pointer;display:block}.tag-overlay .mention-content-user-tag{display:flex;justify-content:space-between}.tag-overlay .triangle{margin:0 auto;border-top:0 solid;border-left:0 solid;border-right:0 solid;border-bottom:0 solid;border-bottom-width:7px;border-top-width:7px;border-left-width:7px;border-right-width:7px;background:transparent;width:0;height:0}.tag-overlay .top-triangle{border-bottom:0 solid rgba(0,0,0,.85);border-bottom-width:7px;border-top-color:transparent;border-left-color:transparent;border-right-color:transparent}.tag-overlay .bottom-triangle{border-top:0 solid rgba(0,0,0,.85);border-top-width:7px;border-bottom-color:transparent;border-left-color:transparent;border-right-color:transparent}.tag-overlay .right-triangle{margin-right:10px}.tag-overlay .left-triangle{margin-left:10px}.tag-overlay .hide-tags{opacity:0}\n"] }]
82
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { userTags: [{
83
+ type: Input
84
+ }], tagOverlayShown: [{
85
+ type: Input
86
+ }], popMenuDiv: [{
87
+ type: ViewChild,
88
+ args: ['popMenuDiv']
89
+ }], tooltipInformation: [{
90
+ type: ViewChild,
91
+ args: ['tooltipInformation']
92
+ }], tagItems: [{
93
+ type: ViewChildren,
94
+ args: ['tagItems']
95
+ }] } });
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMtdGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9zcmMvbGliL3VzZXJzLXRhZy91c2Vycy10YWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NyYy9saWIvdXNlcnMtdGFnL3VzZXJzLXRhZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFHTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ0osWUFBWSxFQUNsQyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBRTdCLE1BQU0sT0FBTyxnQkFBZ0I7Q0FJNUI7QUFFRCxNQUFNLFlBQVksR0FBVyxHQUFHLENBQUM7QUFFakMsTUFBTSw2QkFBNkIsR0FBVyxDQUFDLENBQUM7QUFFaEQsTUFBTSxZQUFZLEdBQVcsQ0FBQyxDQUFDO0FBRS9CLE1BQU0scUJBQXFCLEdBQVcsMEJBQTBCLENBQUM7QUFRakUsTUFBTSxPQUFPLGlCQUFpQjtJQWdCMUIsWUFBbUIsaUJBQW9DLEVBQ25DLFVBQXNCO1FBRHZCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDbkMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWZqQyxhQUFRLEdBQXVCLEVBQUUsQ0FBQztRQUNsQyxvQkFBZSxHQUFZLElBQUksQ0FBQztRQU16QyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUdoQyxjQUFTLEdBQWtCLElBQUksT0FBTyxFQUFRLENBQUM7UUFFL0Msb0JBQWUsR0FBVyxHQUFHLENBQUM7SUFJOUIsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDakUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0MsQ0FBQztJQUVPLHNCQUFzQixDQUFDLFFBQTRCO1FBQ3ZELElBQUksUUFBUSxFQUFFO1lBQ1YsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDdkIsTUFBTSxFQUFFLEdBQUcsYUFBYSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7Z0JBQzVDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFBO2dCQUN4RSxNQUFNLEdBQUcsR0FBRyxPQUFPLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxHQUFHLEVBQUU7b0JBQ0wsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO2lCQUNyQztZQUNMLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU8sU0FBUyxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsT0FBTztRQUNuQyxNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sZUFBZSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1FBQ2hGLElBQUksZUFBZSxFQUFFO1lBQ2pCLE1BQU0sQ0FBQyxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUM7WUFDNUIsTUFBTSxDQUFDLEdBQUcsZUFBZSxDQUFDLENBQUMsQ0FBQztZQUM1QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ2hHLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUNwRyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtnQkFDekIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGNBQWMsQ0FBQyxZQUFZLEdBQUcsY0FBYyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLFlBQVksR0FBRyw2QkFBNkIsQ0FBQztnQkFDcEssSUFBSSxDQUFDLGlCQUFpQixHQUFHLENBQUMsY0FBYyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNqSDtZQUNELE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxXQUFXLENBQUMsR0FBRyxZQUFZLENBQUMsVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNsRyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsWUFBWSxDQUFDLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQztZQUNuRSxHQUFHLEdBQUcsQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsWUFBWSxDQUFDO1lBQ3hGLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUM7WUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQztTQUNsQztRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsT0FBTztRQUNyQixNQUFNLENBQUMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEdBQUcsR0FBRyxPQUFPLEVBQUUsUUFBUSxFQUFFLHFCQUFxQixDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQUssRUFBRSxPQUFPO1FBQzVCLE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUM1QixDQUFDOztvSkE1RVEsaUJBQWlCO3dJQUFqQixpQkFBaUIseVpDaEM5Qixtd0NBMkJBOzJGREthLGlCQUFpQjtrQkFON0IsU0FBUztzQ0FDVyx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGNBQWM7aUlBTWYsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVtQixVQUFVO3NCQUFsQyxTQUFTO3VCQUFDLFlBQVk7Z0JBQ1Usa0JBQWtCO3NCQUFsRCxTQUFTO3VCQUFDLG9CQUFvQjtnQkFDTCxRQUFRO3NCQUFqQyxZQUFZO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBJbnB1dCxcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLCBWaWV3Q2hpbGRyZW4sIFF1ZXJ5TGlzdCwgT25EZXN0cm95XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHtTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xuXG5leHBvcnQgY2xhc3MgSW5zdGFncmFtVXNlclRhZyB7XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgICB4OiBudW1iZXI7XG4gICAgeTogbnVtYmVyO1xufVxuXG5jb25zdCBNSURETEVfSU1BR0U6IG51bWJlciA9IDAuNTtcblxuY29uc3QgVE9PTFRJUF9JTkZPX1BJWEVMX0NPUlJFQ1RJT046IG51bWJlciA9IDg7XG5cbmNvbnN0IEFSUk9XX0hFSUdIVDogbnVtYmVyID0gNztcblxuY29uc3QgSU5TVEFHUkFNX1dFQlNJVEVfVVJMOiBzdHJpbmcgPSAnaHR0cDovL3d3dy5pbnN0YWdyYW0uY29tJztcblxuQENvbXBvbmVudCh7XG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc2VsZWN0b3I6ICdhcC11c2Vycy10YWcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91c2Vycy10YWcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VzZXJzLXRhZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJzVGFnQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICAgIEBJbnB1dCgpIHVzZXJUYWdzOiBJbnN0YWdyYW1Vc2VyVGFnW10gPSBbXTtcbiAgICBASW5wdXQoKSB0YWdPdmVybGF5U2hvd246IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgQFZpZXdDaGlsZCgncG9wTWVudURpdicpIHBvcE1lbnVEaXY6IEVsZW1lbnRSZWY7XG4gICAgQFZpZXdDaGlsZCgndG9vbHRpcEluZm9ybWF0aW9uJykgdG9vbHRpcEluZm9ybWF0aW9uOiBFbGVtZW50UmVmO1xuICAgIEBWaWV3Q2hpbGRyZW4oJ3RhZ0l0ZW1zJykgdGFnSXRlbXM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICAgIHRvZ2dsZVRhZ0l0ZW1zOiBib29sZWFuID0gZmFsc2U7XG4gICAgdG9vbHRpcE9mZnNldFRvcDogbnVtYmVyO1xuICAgIHRvb2x0aXBPZmZzZXRMZWZ0OiBudW1iZXI7XG4gICAgZGVzdHJveWVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIFRIUkVTSE9MRF9WQUxVRTogbnVtYmVyID0gMC41O1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFnSXRlbXMuY2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVVzZXJUYWdzUG9zaXRpb24odGhpcy51c2VyVGFncyk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB0aGlzLnVwZGF0ZVVzZXJUYWdzUG9zaXRpb24odGhpcy51c2VyVGFncyk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICB9XG5cbiAgICB0b2dnbGVUYWdzT3ZlcmxheSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50b2dnbGVUYWdJdGVtcyA9ICF0aGlzLnRvZ2dsZVRhZ0l0ZW1zO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlVXNlclRhZ3NQb3NpdGlvbih1c2VyVGFnczogSW5zdGFncmFtVXNlclRhZ1tdKTogdm9pZCB7XG4gICAgICAgIGlmICh1c2VyVGFncykge1xuICAgICAgICAgICAgdXNlclRhZ3MuZm9yRWFjaCh1c2VyVGFnID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBpZCA9ICd0YWdQcmV2aWV3LScgKyB1c2VyVGFnLnVzZXJuYW1lO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRhZ0RpdnMgPSB0aGlzLnRhZ0l0ZW1zPy5tYXAoZGlyZWN0aXZlID0+IGRpcmVjdGl2ZS5uYXRpdmVFbGVtZW50KVxuICAgICAgICAgICAgICAgIGNvbnN0IGRpdiA9IHRhZ0RpdnM/LmZpbmQodGFnID0+IHRhZy5pZCA9PT0gaWQpO1xuICAgICAgICAgICAgICAgIGlmIChkaXYpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVET00oaWQsIHVzZXJUYWdzLCBkaXYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVET00oaWQsIHVzZXJUYWdzLCBlbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHVzZXJOYW1lID0gaWQuc3BsaXQoJy0nKVsxXTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRVc2VyVGFnID0gdXNlclRhZ3MuZmluZCh1c2VyVGFnID0+IHVzZXJUYWcudXNlcm5hbWUgPT09IHVzZXJOYW1lKTtcbiAgICAgICAgaWYgKHNlbGVjdGVkVXNlclRhZykge1xuICAgICAgICAgICAgY29uc3QgeCA9IHNlbGVjdGVkVXNlclRhZy54O1xuICAgICAgICAgICAgY29uc3QgeSA9IHNlbGVjdGVkVXNlclRhZy55O1xuICAgICAgICAgICAgY29uc3QgaW1hZ2VQcmV2aWV3ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKCcjaW1hZ2VQcmV2aWV3Jyk7XG4gICAgICAgICAgICBjb25zdCBpbWFnZUNvbnRhaW5lciA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3RvcignI2ltYWdlQ29udGFpbmVyJyk7XG4gICAgICAgICAgICBpZiAodGhpcy50b29sdGlwSW5mb3JtYXRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRvb2x0aXBPZmZzZXRUb3AgPSBpbWFnZUNvbnRhaW5lci5vZmZzZXRIZWlnaHQgKyBpbWFnZUNvbnRhaW5lci5vZmZzZXRUb3AgLSB0aGlzLnRvb2x0aXBJbmZvcm1hdGlvbi5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCAtIFRPT0xUSVBfSU5GT19QSVhFTF9DT1JSRUNUSU9OO1xuICAgICAgICAgICAgICAgIHRoaXMudG9vbHRpcE9mZnNldExlZnQgPSAoaW1hZ2VDb250YWluZXIub2Zmc2V0V2lkdGggLSB0aGlzLnRvb2x0aXBJbmZvcm1hdGlvbi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoKSAvIDI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBsZWZ0ID0gKHggKiBpbWFnZVByZXZpZXcub2Zmc2V0V2lkdGgpICsgaW1hZ2VQcmV2aWV3Lm9mZnNldExlZnQgLSAoZWxlbWVudC5vZmZzZXRXaWR0aCAvIDIpO1xuICAgICAgICAgICAgbGV0IHRvcCA9ICh5ICogaW1hZ2VQcmV2aWV3Lm9mZnNldEhlaWdodCkgKyBpbWFnZVByZXZpZXcub2Zmc2V0VG9wO1xuICAgICAgICAgICAgdG9wID0geSA+IE1JRERMRV9JTUFHRSA/IHRvcCAtIGVsZW1lbnQub2Zmc2V0SGVpZ2h0ICsgQVJST1dfSEVJR0hUIDogdG9wIC0gQVJST1dfSEVJR0hUO1xuICAgICAgICAgICAgZWxlbWVudC5zdHlsZS5sZWZ0ID0gbGVmdCArICdweCc7XG4gICAgICAgICAgICBlbGVtZW50LnN0eWxlLnRvcCA9IHRvcCArICdweCc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBvcGVuSW5zdGFncmFtTGluayh0YWdOYW1lKTogdm9pZCB7XG4gICAgICAgIHdpbmRvdy5vcGVuKElOU1RBR1JBTV9XRUJTSVRFX1VSTCArICcvJyArIHRhZ05hbWUsICdfYmxhbmsnLCAnbm9vcGVuZXIsbm9yZWZlcnJlcicpO1xuICAgIH1cblxuICAgIHVzZXJUYWdzVHJhY2tCeUZuKGluZGV4LCB1c2VyVGFnKTogdm9pZCB7XG4gICAgICAgIHJldHVybiB1c2VyVGFnLnVzZXJuYW1lO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0YWctb3ZlcmxheVwiXG4gICAgIFtoaWRkZW5dPVwiIXRhZ092ZXJsYXlTaG93blwiXG4gICAgIChjbGljayk9XCJ0b2dnbGVUYWdzT3ZlcmxheSgpXCI+XG5cbiAgICA8YnV0dG9uIGNsYXNzPVwidG9nZ2xlLWJ1dHRvblwiPlxuICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICBzeW1ib2xJZD1cImN1c3RvbS1pbnN0YWdyYW0tdGFnc1wiXG4gICAgICAgICAgICBjb2xvcj1cIndoaXRlXCJcbiAgICAgICAgICAgIHNpemU9XCJuYW5vXCI+XG4gICAgICAgIDwvYXAtc3ltYm9sPlxuICAgIDwvYnV0dG9uPlxuICAgIDxkaXYgKm5nRm9yPVwibGV0IHVzZXJUYWcgb2YgdXNlclRhZ3M7IHRyYWNrQnk6IHVzZXJUYWdzVHJhY2tCeUZuXCJcbiAgICAgICAgIFtjbGFzcy5oaWRlLXRhZ3NdPVwidG9nZ2xlVGFnSXRlbXNcIlxuICAgICAgICAgW2lkXT1cIid0YWdQcmV2aWV3LScrIHVzZXJUYWcudXNlcm5hbWVcIiBjbGFzcz1cIm1lbnRpb24tdXNlci10YWdcIlxuICAgICAgICAgW2NsYXNzLm1lbnRpb24tdXNlci10YWctY29sdW1uLWRpcmVjdGlvbl09XCJ1c2VyVGFnLnkgPCBUSFJFU0hPTERfVkFMVUVcIlxuICAgICAgICAgW2NsYXNzLm1lbnRpb24tdXNlci10YWctY29sdW1uLXJldmVyc2UtZGlyZWN0aW9uXT1cInVzZXJUYWcueSA+IFRIUkVTSE9MRF9WQUxVRVwiICN0YWdJdGVtcz5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRyaWFuZ2xlXCJcbiAgICAgICAgICAgICBbY2xhc3MudG9wLXRyaWFuZ2xlXT1cInVzZXJUYWcueSA8IFRIUkVTSE9MRF9WQUxVRVwiXG4gICAgICAgICAgICAgW2NsYXNzLmJvdHRvbS10cmlhbmdsZV09XCJ1c2VyVGFnLnkgPiBUSFJFU0hPTERfVkFMVUVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnRpb24tY29udGVudC11c2VyLXRhZyB1c2VyLXRhZy1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1c2VyLW5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcFRvb2x0aXBOZW9dPVwie2NvbnRlbnQ6IHVzZXJUYWcudXNlcm5hbWUsIHBvc2l0aW9uOiAnYm90dG9tJ31cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvcGVuSW5zdGFncmFtTGluayh1c2VyVGFnLnVzZXJuYW1lKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBFbGxpcHNpcz57e3VzZXJUYWcudXNlcm5hbWV9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==