@datarailsshared/datarailsshared 1.6.204 → 1.6.208

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.
@@ -12,6 +12,7 @@ import { DrPopoverRef } from '../models/popover';
12
12
  import { first, merge, Subject, takeUntil } from 'rxjs';
13
13
  import { DropdownInstanceService } from './dr-dropdown.service';
14
14
  import { Debounce } from '../utils/decorators';
15
+ import { TooltipTheme } from '../dr-tooltip/enums/tooltip-theme.enum';
15
16
  import * as i0 from "@angular/core";
16
17
  const _c0 = ["menuContainer"];
17
18
  function DrDropdownComponent_dr_dropdown_item_4_ng_container_1_i_1_Template(rf, ctx) { if (rf & 1) {
@@ -70,7 +71,6 @@ function DrDropdownComponent_dr_dropdown_item_4_ng_container_3_Template(rf, ctx)
70
71
  const act_r2 = i0.ɵɵnextContext().$implicit;
71
72
  i0.ɵɵproperty("ngTemplateOutlet", act_r2.templateRef)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c1, act_r2));
72
73
  } }
73
- const _c2 = function () { return { withoutArrow: true }; };
74
74
  function DrDropdownComponent_dr_dropdown_item_4_Template(rf, ctx) { if (rf & 1) {
75
75
  const _r20 = i0.ɵɵgetCurrentView();
76
76
  i0.ɵɵelementStart(0, "dr-dropdown-item", 4);
@@ -83,7 +83,7 @@ function DrDropdownComponent_dr_dropdown_item_4_Template(rf, ctx) { if (rf & 1)
83
83
  const act_r2 = ctx.$implicit;
84
84
  const index_r3 = ctx.index;
85
85
  const ctx_r1 = i0.ɵɵnextContext();
86
- i0.ɵɵproperty("drTooltip", ctx_r1.tooltipToShow(act_r2))("drTooltipPosition", "left")("drTooltipOptions", i0.ɵɵpureFunction0(15, _c2))("drTooltipClass", "dr-dropdown__tooltip")("drDropdown", ctx_r1.hasChildren(act_r2) && act_r2.children)("drDropdownClass", act_r2.childOptions == null ? null : act_r2.childOptions.class)("drDropdownInHover", true)("drDropdownPosition", act_r2.childOptions == null ? null : act_r2.childOptions.position)("disabled", ctx_r1.disabled(act_r2))("selected", ctx_r1.selected(act_r2))("divider", act_r2.separateLine);
86
+ i0.ɵɵproperty("drTooltip", ctx_r1.tooltipToShow(act_r2))("drTooltipPosition", ctx_r1.getTooltipPosition(act_r2))("drTooltipOptions", ctx_r1.getTooltipOptions(act_r2))("drTooltipTheme", ctx_r1.getTooltipTheme(act_r2))("drTooltipMousleaveTimeout", ctx_r1.getTooltipMousleaveTimeout(act_r2))("drTooltipMouseEnterTimeout", ctx_r1.getTooltipMouseEnterTimeout(act_r2))("drTooltipClass", "dr-dropdown__tooltip")("drDropdown", ctx_r1.hasChildren(act_r2) && act_r2.children)("drDropdownClass", act_r2.childOptions == null ? null : act_r2.childOptions.class)("drDropdownInHover", true)("drDropdownPosition", act_r2.childOptions == null ? null : act_r2.childOptions.position)("disabled", ctx_r1.disabled(act_r2))("selected", ctx_r1.selected(act_r2))("divider", act_r2.separateLine);
87
87
  i0.ɵɵattribute("data-analytics", ctx_r1.getDataAnalyticsTag(act_r2, index_r3));
88
88
  i0.ɵɵadvance(1);
89
89
  i0.ɵɵproperty("ngIf", !act_r2.templateRef);
@@ -92,9 +92,29 @@ function DrDropdownComponent_dr_dropdown_item_4_Template(rf, ctx) { if (rf & 1)
92
92
  i0.ɵɵadvance(1);
93
93
  i0.ɵɵproperty("ngIf", act_r2.templateRef);
94
94
  } }
95
- const _c3 = [[["dr-dropdown-item"]]];
96
- const _c4 = ["dr-dropdown-item"];
95
+ const _c2 = [[["dr-dropdown-item"]]];
96
+ const _c3 = ["dr-dropdown-item"];
97
97
  export class DrDropdownComponent {
98
+ constructor() {
99
+ this.cdr = inject(ChangeDetectorRef);
100
+ this.popoverRef = inject(DrPopoverRef, { optional: true });
101
+ this.dropdownInstanceService = inject(DropdownInstanceService, { optional: true });
102
+ this.drDropdownInHoverChange$ = new Subject();
103
+ this.destroy$ = new Subject();
104
+ this._active = true;
105
+ this.list = [];
106
+ this.wasHovered = false;
107
+ this.asChild = false;
108
+ this.onAction = new EventEmitter();
109
+ if (!this.dropdownInstanceService)
110
+ return;
111
+ this.dropdownInstanceService.register(this);
112
+ inject(DestroyRef).onDestroy(() => {
113
+ this.dropdownInstanceService.unregister(this);
114
+ this.destroy$.next();
115
+ this.destroy$.next();
116
+ });
117
+ }
98
118
  set options(data) {
99
119
  if (data) {
100
120
  this.drDropdownInHover = data.drDropdownInHover;
@@ -120,31 +140,17 @@ export class DrDropdownComponent {
120
140
  }
121
141
  }
122
142
  }
123
- constructor() {
124
- this.cdr = inject(ChangeDetectorRef);
125
- this.popoverRef = inject(DrPopoverRef, { optional: true });
126
- this.dropdownInstanceService = inject(DropdownInstanceService, { optional: true });
127
- this.destroy$ = new Subject();
128
- this._active = true;
129
- this.drDropdownInHoverChange$ = new Subject();
130
- this.list = [];
131
- this.wasHovered = false;
132
- this.asChild = false;
133
- this.onAction = new EventEmitter();
134
- if (!this.dropdownInstanceService)
135
- return;
136
- this.dropdownInstanceService.register(this);
137
- inject(DestroyRef).onDestroy(() => {
138
- this.dropdownInstanceService.unregister(this);
139
- this.destroy$.next();
140
- this.destroy$.next();
141
- });
142
- }
143
143
  ngOnChanges(changes) {
144
144
  if (!changes?.drDropdownInHover?.isFirstChange()) {
145
145
  this.drDropdownInHoverChange$.next();
146
146
  }
147
147
  }
148
+ onMouseleave() {
149
+ this._active = false;
150
+ }
151
+ active() {
152
+ return this._active;
153
+ }
148
154
  disabled(act) {
149
155
  if (!act.disabled) {
150
156
  return false;
@@ -168,9 +174,45 @@ export class DrDropdownComponent {
168
174
  }
169
175
  }
170
176
  tooltipToShow(act) {
171
- if (act.toolTipIfDisabled && !this.disabled(act))
177
+ if (act.toolTipIfDisabled && !this.disabled(act)) {
172
178
  return '';
173
- return act.customTooltip ? act.customTooltip(act.data) : act.toolTip;
179
+ }
180
+ if (act.customTooltip) {
181
+ return act.customTooltip(act.data);
182
+ }
183
+ if (act.toolTip) {
184
+ return act.toolTip;
185
+ }
186
+ return '';
187
+ }
188
+ getTooltipOptions(act) {
189
+ const customOptions = this.getCustomTooltipComponent(act)?.options;
190
+ if (!customOptions)
191
+ return { withoutArrow: true };
192
+ return {
193
+ withoutArrow: customOptions.withoutArrow,
194
+ withoutContainerStyles: customOptions.withoutContainerStyles,
195
+ };
196
+ }
197
+ getTooltipPosition(act) {
198
+ return this.getCustomTooltipComponent(act)?.options?.position ?? 'left';
199
+ }
200
+ getTooltipTheme(act) {
201
+ return this.getCustomTooltipComponent(act)?.options?.theme ?? TooltipTheme.LIGHT;
202
+ }
203
+ getTooltipMousleaveTimeout(act) {
204
+ return this.getCustomTooltipComponent(act)?.options?.drTooltipMousleaveTimeout ?? 0;
205
+ }
206
+ getTooltipMouseEnterTimeout(act) {
207
+ return this.getCustomTooltipComponent(act)?.options?.drTooltipMouseEnterTimeout ?? 0;
208
+ }
209
+ getCustomTooltipComponent(act) {
210
+ if (act.customTooltip) {
211
+ const result = act.customTooltip(act.data);
212
+ if (typeof result !== 'string')
213
+ return result;
214
+ }
215
+ return null;
174
216
  }
175
217
  action(act) {
176
218
  if (!this.disabled(act)) {
@@ -194,12 +236,6 @@ export class DrDropdownComponent {
194
236
  this.wasHovered = true;
195
237
  this._active = true;
196
238
  }
197
- onMouseleave() {
198
- this._active = false;
199
- }
200
- active() {
201
- return this._active;
202
- }
203
239
  getDataAnalyticsTag(act, index) {
204
240
  return act.dataAnalytics
205
241
  ? act.dataAnalytics
@@ -213,12 +249,12 @@ export class DrDropdownComponent {
213
249
  } if (rf & 2) {
214
250
  let _t;
215
251
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.menuContainer = _t.first);
216
- } }, inputs: { options: "options" }, outputs: { onAction: "action" }, features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c4, decls: 6, vars: 5, consts: [[1, "dr-dropdown"], ["menuContainer", ""], ["tabindex", "-1", "role", "listbox", 1, "dr-dropdown__container", 3, "mouseenter", "mouseleave"], ["drDropdownChild", "", "tabindex", "0", 3, "drTooltip", "drTooltipPosition", "drTooltipOptions", "drTooltipClass", "drDropdown", "drDropdownClass", "drDropdownInHover", "drDropdownPosition", "disabled", "selected", "divider", "mousedown", 4, "ngFor", "ngForOf"], ["drDropdownChild", "", "tabindex", "0", 3, "drTooltip", "drTooltipPosition", "drTooltipOptions", "drTooltipClass", "drDropdown", "drDropdownClass", "drDropdownInHover", "drDropdownPosition", "disabled", "selected", "divider", "mousedown"], ["dropdownItemContent", "", 4, "ngIf"], ["dropdownItemActions", "", 4, "ngIf"], ["dropdownItemContent", "", 3, "ngTemplateOutlet", "ngTemplateOutletContext", 4, "ngIf"], ["dropdownItemContent", ""], ["class", "dr-dropdown__icon", 3, "class", 4, "ngIf"], [1, "dr-dropdown__text"], [1, "dr-dropdown__icon"], ["dropdownItemActions", ""], [3, "class", "showOnHover", "mousedown", 4, "ngFor", "ngForOf"], ["class", "dr-icon-arrow-right", 4, "ngIf"], [3, "mousedown"], [1, "dr-icon-arrow-right"], ["dropdownItemContent", "", 3, "ngTemplateOutlet", "ngTemplateOutletContext"]], template: function DrDropdownComponent_Template(rf, ctx) { if (rf & 1) {
217
- i0.ɵɵprojectionDef(_c3);
252
+ } }, inputs: { options: "options" }, outputs: { onAction: "action" }, features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c3, decls: 6, vars: 5, consts: [[1, "dr-dropdown"], ["menuContainer", ""], ["tabindex", "-1", "role", "listbox", 1, "dr-dropdown__container", 3, "mouseenter", "mouseleave"], ["drDropdownChild", "", "tabindex", "0", 3, "drTooltip", "drTooltipPosition", "drTooltipOptions", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipClass", "drDropdown", "drDropdownClass", "drDropdownInHover", "drDropdownPosition", "disabled", "selected", "divider", "mousedown", 4, "ngFor", "ngForOf"], ["drDropdownChild", "", "tabindex", "0", 3, "drTooltip", "drTooltipPosition", "drTooltipOptions", "drTooltipTheme", "drTooltipMousleaveTimeout", "drTooltipMouseEnterTimeout", "drTooltipClass", "drDropdown", "drDropdownClass", "drDropdownInHover", "drDropdownPosition", "disabled", "selected", "divider", "mousedown"], ["dropdownItemContent", "", 4, "ngIf"], ["dropdownItemActions", "", 4, "ngIf"], ["dropdownItemContent", "", 3, "ngTemplateOutlet", "ngTemplateOutletContext", 4, "ngIf"], ["dropdownItemContent", ""], ["class", "dr-dropdown__icon", 3, "class", 4, "ngIf"], [1, "dr-dropdown__text"], [1, "dr-dropdown__icon"], ["dropdownItemActions", ""], [3, "class", "showOnHover", "mousedown", 4, "ngFor", "ngForOf"], ["class", "dr-icon-arrow-right", 4, "ngIf"], [3, "mousedown"], [1, "dr-icon-arrow-right"], ["dropdownItemContent", "", 3, "ngTemplateOutlet", "ngTemplateOutletContext"]], template: function DrDropdownComponent_Template(rf, ctx) { if (rf & 1) {
253
+ i0.ɵɵprojectionDef(_c2);
218
254
  i0.ɵɵelementStart(0, "div", 0, 1)(2, "div", 2);
219
255
  i0.ɵɵlistener("mouseenter", function DrDropdownComponent_Template_div_mouseenter_2_listener() { return ctx.onMouseenter(); })("mouseleave", function DrDropdownComponent_Template_div_mouseleave_2_listener() { return ctx.onMouseleave(); });
220
256
  i0.ɵɵprojection(3);
221
- i0.ɵɵtemplate(4, DrDropdownComponent_dr_dropdown_item_4_Template, 4, 16, "dr-dropdown-item", 3);
257
+ i0.ɵɵtemplate(4, DrDropdownComponent_dr_dropdown_item_4_Template, 4, 18, "dr-dropdown-item", 3);
222
258
  i0.ɵɵpipe(5, "drDropdownItemShowPipe");
223
259
  i0.ɵɵelementEnd()();
224
260
  } if (rf & 2) {
@@ -235,7 +271,7 @@ __decorate([
235
271
  ], DrDropdownComponent.prototype, "onMouseleave", null);
236
272
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDropdownComponent, [{
237
273
  type: Component,
238
- args: [{ selector: 'dr-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #menuContainer [class]=\"containerClass\" class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\" (mouseenter)=\"onMouseenter()\" (mouseleave)=\"onMouseleave()\" tabindex=\"-1\" role=\"listbox\">\n <ng-content select=\"dr-dropdown-item\"></ng-content>\n\n <dr-dropdown-item\n *ngFor=\"let act of list | drDropdownItemShowPipe; let index = index\"\n (mousedown)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"'left'\"\n [drTooltipOptions]=\"{ withoutArrow: true }\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n [drDropdown]=\"hasChildren(act) && act.children\"\n [drDropdownClass]=\"act.childOptions?.class\"\n [drDropdownInHover]=\"true\"\n [drDropdownPosition]=\"act.childOptions?.position\"\n drDropdownChild\n [disabled]=\"disabled(act)\"\n [selected]=\"selected(act)\"\n [divider]=\"act.separateLine\"\n [attr.data-analytics]=\"getDataAnalyticsTag(act, index)\"\n tabindex=\"0\">\n <ng-container dropdownItemContent *ngIf=\"!act.templateRef\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\" class=\"dr-dropdown__icon\"></i>\n <span class=\"dr-dropdown__text\">{{ act.title }}</span>\n </ng-container>\n\n <ng-container dropdownItemActions *ngIf=\"!act.templateRef\">\n <i\n *ngFor=\"let actionIcon of act.actionIcons\"\n [attr.data-analytics]=\"getDataAnalyticsTag(actionIcon, index)\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (mousedown)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"hasChildren(act)\" class=\"dr-icon-arrow-right\"></i>\n </ng-container>\n\n <ng-container\n *ngIf=\"act.templateRef\"\n dropdownItemContent\n [ngTemplateOutlet]=\"act.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: act }\">\n </ng-container>\n </dr-dropdown-item>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__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{width:auto}.dr-dropdown__text{overflow:hidden;text-overflow:ellipsis;flex:1}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;padding:8px 0;overflow-y:auto;max-height:60vh;max-width:300px}.dr-dropdown__icon{margin-right:8px}.dr-dropdown i:not(:first-child):hover{color:#4646ce}.dr-dropdown dr-dropdown-item:hover .showOnHover{visibility:visible}.dr-dropdown .showOnHover{visibility:hidden}\n"] }]
274
+ args: [{ selector: 'dr-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #menuContainer [class]=\"containerClass\" class=\"dr-dropdown\">\n <div class=\"dr-dropdown__container\" (mouseenter)=\"onMouseenter()\" (mouseleave)=\"onMouseleave()\" tabindex=\"-1\" role=\"listbox\">\n <ng-content select=\"dr-dropdown-item\"></ng-content>\n\n <dr-dropdown-item\n *ngFor=\"let act of list | drDropdownItemShowPipe; let index = index\"\n (mousedown)=\"action(act)\"\n [drTooltip]=\"tooltipToShow(act)\"\n [drTooltipPosition]=\"getTooltipPosition(act)\"\n [drTooltipOptions]=\"getTooltipOptions(act)\"\n [drTooltipTheme]=\"getTooltipTheme(act)\"\n [drTooltipMousleaveTimeout]=\"getTooltipMousleaveTimeout(act)\"\n [drTooltipMouseEnterTimeout]=\"getTooltipMouseEnterTimeout(act)\"\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\n [drDropdown]=\"hasChildren(act) && act.children\"\n [drDropdownClass]=\"act.childOptions?.class\"\n [drDropdownInHover]=\"true\"\n [drDropdownPosition]=\"act.childOptions?.position\"\n drDropdownChild\n [disabled]=\"disabled(act)\"\n [selected]=\"selected(act)\"\n [divider]=\"act.separateLine\"\n [attr.data-analytics]=\"getDataAnalyticsTag(act, index)\"\n tabindex=\"0\">\n <ng-container dropdownItemContent *ngIf=\"!act.templateRef\">\n <i *ngIf=\"act.icon\" [class]=\"act.icon\" class=\"dr-dropdown__icon\"></i>\n <span class=\"dr-dropdown__text\">{{ act.title }}</span>\n </ng-container>\n\n <ng-container dropdownItemActions *ngIf=\"!act.templateRef\">\n <i\n *ngFor=\"let actionIcon of act.actionIcons\"\n [attr.data-analytics]=\"getDataAnalyticsTag(actionIcon, index)\"\n [class]=\"actionIcon.icon\"\n [class.showOnHover]=\"actionIcon.showOnHover\"\n (mousedown)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\n <i *ngIf=\"hasChildren(act)\" class=\"dr-icon-arrow-right\"></i>\n </ng-container>\n\n <ng-container\n *ngIf=\"act.templateRef\"\n dropdownItemContent\n [ngTemplateOutlet]=\"act.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: act }\">\n </ng-container>\n </dr-dropdown-item>\n </div>\n</div>\n", styles: ["::ng-deep .dr-dropdown__item .dr-dropdown{visibility:hidden;transition-delay:.2s}::ng-deep .dr-dropdown__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{width:auto}.dr-dropdown__text{overflow:hidden;text-overflow:ellipsis;flex:1}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;padding:8px 0;overflow-y:auto;max-height:60vh;max-width:300px}.dr-dropdown__icon{margin-right:8px}.dr-dropdown i:not(:first-child):hover{color:#4646ce}.dr-dropdown dr-dropdown-item:hover .showOnHover{visibility:visible}.dr-dropdown .showOnHover{visibility:hidden}\n"] }]
239
275
  }], function () { return []; }, { menuContainer: [{
240
276
  type: ViewChild,
241
277
  args: ['menuContainer', { static: true }]
@@ -245,4 +281,4 @@ __decorate([
245
281
  type: Output,
246
282
  args: ['action']
247
283
  }], onMouseleave: [] }); })();
248
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0lDSy9CLHdCQUFxRTs7O0lBQWpELDBCQUFrQjs7O0lBRDFDLGdDQUEyRDtJQUN2RCxrR0FBcUU7SUFDckUsZ0NBQWdDO0lBQUEsWUFBZTtJQUFBLGlCQUFPO0lBQzFELDBCQUFlOzs7SUFGUCxlQUFjO0lBQWQsa0NBQWM7SUFDYyxlQUFlO0lBQWYsa0NBQWU7Ozs7SUFJL0MsNkJBS2tFO0lBQTlELDJUQUFhLGVBQUEsOERBQStDLENBQUEsSUFBQztJQUFDLGlCQUFJOzs7OztJQUZsRSxrQ0FBeUI7SUFDekIseURBQTRDO0lBRjVDLHVGQUE4RDs7O0lBSWxFLHdCQUE0RDs7O0lBUGhFLGlD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QUM7SUFDeEIsQ0FBQztJQUVELG1CQUFtQixDQUFDLEdBQTJCLEVBQUUsS0FBYTtRQUMxRCxPQUFPLEdBQUcsQ0FBQyxhQUFhO1lBQ3BCLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYTtZQUNuQixDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWE7Z0JBQ2xCLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUM7Z0JBQ3JFLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDakIsQ0FBQzt1R0F2SVEsbUJBQW1CO21HQUFuQixtQkFBbUI7Ozs7Ozs7WUN6QmhDLGlDQUFpRSxhQUFBO1lBQ3pCLHVHQUFjLGtCQUFjLElBQUMsMEZBQWUsa0JBQWMsSUFBN0I7WUFDN0Qsa0JBQW1EO1lBRW5ELCtGQXNDbUI7O1lBQ3ZCLGlCQUFNLEVBQUE7O1lBM0NVLGlDQUF3QjtZQUtoQixlQUFrQztZQUFsQyx3REFBa0M7OztBRDRJMUQ7SUFBQyxRQUFRLENBQUMsR0FBRyxDQUFDOzs7O3VEQUdiO3VGQTNIUSxtQkFBbUI7Y0FOL0IsU0FBUzsyQkFDSSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU07c0NBWS9DLGFBQWE7a0JBRFosU0FBUzttQkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO1lBWXhDLE9BQU87a0JBRFYsS0FBSztZQTZCTixRQUFRO2tCQURQLE1BQU07bUJBQUMsUUFBUTtZQXlFaEIsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJRHJvcGRvd24sIElEcm9wZG93bkFjdGlvbiwgSURyb3Bkb3duQWN0aW9uSWNvbiwgSURyb3Bkb3duSXRlbSB9IGZyb20gJy4uL21vZGVscy9kcm9wZG93bic7XG5pbXBvcnQgeyBEclBvcG92ZXJSZWYgfSBmcm9tICcuLi9tb2RlbHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBmaXJzdCwgbWVyZ2UsIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRHJvcGRvd25JbnN0YW5jZVJlZiwgRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UgfSBmcm9tICcuL2RyLWRyb3Bkb3duLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGVib3VuY2UgfSBmcm9tICcuLi91dGlscy9kZWNvcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci1kcm9wZG93bi5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEckRyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgRHJvcGRvd25JbnN0YW5jZVJlZiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcG9wb3ZlclJlZiA9IGluamVjdChEclBvcG92ZXJSZWYsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkluc3RhbmNlU2VydmljZSA9IGluamVjdChEcm9wZG93bkluc3RhbmNlU2VydmljZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHJpdmF0ZSBfYWN0aXZlID0gdHJ1ZTtcblxuICAgIEBWaWV3Q2hpbGQoJ21lbnVDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIG1lbnVDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gICAgZHJEcm9wZG93bkluSG92ZXI6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSByZWFkb25seSBkckRyb3Bkb3duSW5Ib3ZlckNoYW5nZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIGxpc3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj5bXSA9IFtdO1xuICAgIGNvbnRhaW5lckNsYXNzOiBzdHJpbmc7XG4gICAgd2FzSG92ZXJlZCA9IGZhbHNlO1xuICAgIGFzQ2hpbGQgPSBmYWxzZTtcbiAgICBkYXRhQW5hbHl0aWNzOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBvcHRpb25zKGRhdGE6IElEcm9wZG93bjxJRHJvcGRvd25JdGVtPHVua25vd24+Pikge1xuICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgdGhpcy5kckRyb3Bkb3duSW5Ib3ZlciA9IGRhdGEuZHJEcm9wZG93bkluSG92ZXI7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lckNsYXNzID0gZGF0YS5jbGFzcztcbiAgICAgICAgICAgIHRoaXMuZGF0YUFuYWx5dGljcyA9IGRhdGEuZGF0YUFuYWx5dGljcztcbiAgICAgICAgICAgIHRoaXMubGlzdCA9IGRhdGEubGlzdCB8fCBbXTtcbiAgICAgICAgICAgIHRoaXMubGlzdC5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBpdGVtLmNoaWxkT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiBpdGVtPy5jaGlsZE9wdGlvbnM/LmNsYXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGl0ZW0/LmNoaWxkT3B0aW9ucz8ucG9zaXRpb24gfHwgJ2xlZnQtdG9wJyxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5kckRyb3Bkb3duSW5Ib3Zlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuZHJvcGRvd25JbnN0YW5jZVNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLmluYWN0aXZlKHRoaXMpXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKGZpcnN0KCksIHRha2VVbnRpbChtZXJnZSh0aGlzLmRlc3Ryb3kkLCB0aGlzLmRyRHJvcGRvd25JbkhvdmVyQ2hhbmdlJCkpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBPdXRwdXQoJ2FjdGlvbicpXG4gICAgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPElEcm9wZG93bkFjdGlvbjx1bmtub3duPj4oKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBpZiAoIXRoaXMuZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UpIHJldHVybjtcblxuICAgICAgICB0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlLnJlZ2lzdGVyKHRoaXMpO1xuICAgICAgICBpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UudW5yZWdpc3Rlcih0aGlzKTtcbiAgICAgICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFjaGFuZ2VzPy5kckRyb3Bkb3duSW5Ib3Zlcj8uaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICB0aGlzLmRyRHJvcGRvd25JbkhvdmVyQ2hhbmdlJC5uZXh0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBkaXNhYmxlZChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFhY3QuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGFjdC5kaXNhYmxlZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LmRpc2FibGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5kaXNhYmxlZChhY3QuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3RlZChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFhY3Quc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGFjdC5zZWxlY3RlZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LnNlbGVjdGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5zZWxlY3RlZChhY3QuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0b29sdGlwVG9TaG93KGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IHN0cmluZyB7XG4gICAgICAgIGlmIChhY3QudG9vbFRpcElmRGlzYWJsZWQgJiYgIXRoaXMuZGlzYWJsZWQoYWN0KSkgcmV0dXJuICcnO1xuICAgICAgICByZXR1cm4gYWN0LmN1c3RvbVRvb2x0aXAgPyBhY3QuY3VzdG9tVG9vbHRpcChhY3QuZGF0YSkgOiBhY3QudG9vbFRpcDtcbiAgICB9XG5cbiAgICBhY3Rpb24oYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+KSB7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZChhY3QpKSB7XG4gICAgICAgICAgICBpZiAoYWN0LmFjdGlvbikge1xuICAgICAgICAgICAgICAgIGFjdC5hY3Rpb24oYWN0LmRhdGEpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBldmVudCA9IHsgZXZlbnQ6IGFjdC5ldmVudCB8fCBhY3QudGl0bGUgfHwgJ2RlZmF1bHQnLCBkYXRhOiBhY3QuZGF0YSB9O1xuICAgICAgICAgICAgICAgIHRoaXMub25BY3Rpb24uZW1pdChldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkFjdGlvbkljb25DbGljaygkZXZlbnQ6IE1vdXNlRXZlbnQsIGFjdGlvbkljb246IElEcm9wZG93bkFjdGlvbkljb248dW5rbm93bj4sIGRhdGE6IHVua25vd24pIHtcbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBhY3Rpb25JY29uLmFjdGlvbihkYXRhKTtcbiAgICB9XG5cbiAgICBoYXNDaGlsZHJlbihpdGVtOiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIWl0ZW0uY2hpbGRyZW4/Lmxlbmd0aDtcbiAgICB9XG5cbiAgICBvbk1vdXNlZW50ZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud2FzSG92ZXJlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuX2FjdGl2ZSA9IHRydWU7XG4gICAgfVxuXG4gICAgQERlYm91bmNlKDIwMClcbiAgICBvbk1vdXNlbGVhdmUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2FjdGl2ZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIGFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZTtcbiAgICB9XG5cbiAgICBnZXREYXRhQW5hbHl0aWNzVGFnKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPiwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBhY3QuZGF0YUFuYWx5dGljc1xuICAgICAgICAgICAgPyBhY3QuZGF0YUFuYWx5dGljc1xuICAgICAgICAgICAgOiB0aGlzLmRhdGFBbmFseXRpY3NcbiAgICAgICAgICAgICAgPyB0aGlzLmRhdGFBbmFseXRpY3MgKyAnXycgKyAoYWN0LnRpdGxlPy5yZXBsYWNlKC8gL2csICctJykgfHwgaW5kZXgpXG4gICAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG59XG4iLCI8ZGl2ICNtZW51Q29udGFpbmVyIFtjbGFzc109XCJjb250YWluZXJDbGFzc1wiIGNsYXNzPVwiZHItZHJvcGRvd25cIj5cbiAgICA8ZGl2IGNsYXNzPVwiZHItZHJvcGRvd25fX2NvbnRhaW5lclwiIChtb3VzZWVudGVyKT1cIm9uTW91c2VlbnRlcigpXCIgKG1vdXNlbGVhdmUpPVwib25Nb3VzZWxlYXZlKClcIiB0YWJpbmRleD1cIi0xXCIgcm9sZT1cImxpc3Rib3hcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZHItZHJvcGRvd24taXRlbVwiPjwvbmctY29udGVudD5cblxuICAgICAgICA8ZHItZHJvcGRvd24taXRlbVxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFjdCBvZiBsaXN0IHwgZHJEcm9wZG93bkl0ZW1TaG93UGlwZTsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgICAgICAgKG1vdXNlZG93bik9XCJhY3Rpb24oYWN0KVwiXG4gICAgICAgICAgICBbZHJUb29sdGlwXT1cInRvb2x0aXBUb1Nob3coYWN0KVwiXG4gICAgICAgICAgICBbZHJUb29sdGlwUG9zaXRpb25dPVwiJ2xlZnQnXCJcbiAgICAgICAgICAgIFtkclRvb2x0aXBPcHRpb25zXT1cInsgd2l0aG91dEFycm93OiB0cnVlIH1cIlxuICAgICAgICAgICAgW2RyVG9vbHRpcENsYXNzXT1cIidkci1kcm9wZG93bl9fdG9vbHRpcCdcIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25dPVwiaGFzQ2hpbGRyZW4oYWN0KSAmJiBhY3QuY2hpbGRyZW5cIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25DbGFzc109XCJhY3QuY2hpbGRPcHRpb25zPy5jbGFzc1wiXG4gICAgICAgICAgICBbZHJEcm9wZG93bkluSG92ZXJdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbZHJEcm9wZG93blBvc2l0aW9uXT1cImFjdC5jaGlsZE9wdGlvbnM/LnBvc2l0aW9uXCJcbiAgICAgICAgICAgIGRyRHJvcGRvd25DaGlsZFxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKGFjdClcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cInNlbGVjdGVkKGFjdClcIlxuICAgICAgICAgICAgW2RpdmlkZXJdPVwiYWN0LnNlcGFyYXRlTGluZVwiXG4gICAgICAgICAgICBbYXR0ci5kYXRhLWFuYWx5dGljc109XCJnZXREYXRhQW5hbHl0aWNzVGFnKGFjdCwgaW5kZXgpXCJcbiAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1Db250ZW50ICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiYWN0Lmljb25cIiBbY2xhc3NdPVwiYWN0Lmljb25cIiBjbGFzcz1cImRyLWRyb3Bkb3duX19pY29uXCI+PC9pPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHItZHJvcGRvd25fX3RleHRcIj57eyBhY3QudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1BY3Rpb25zICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb25JY29uIG9mIGFjdC5hY3Rpb25JY29uc1wiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtYW5hbHl0aWNzXT1cImdldERhdGFBbmFseXRpY3NUYWcoYWN0aW9uSWNvbiwgaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImFjdGlvbkljb24uaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zaG93T25Ib3Zlcl09XCJhY3Rpb25JY29uLnNob3dPbkhvdmVyXCJcbiAgICAgICAgICAgICAgICAgICAgKG1vdXNlZG93bik9XCJvbkFjdGlvbkljb25DbGljaygkZXZlbnQsIGFjdGlvbkljb24sIGFjdC5kYXRhKVwiPjwvaT5cbiAgICAgICAgICAgICAgICA8aSAqbmdJZj1cImhhc0NoaWxkcmVuKGFjdClcIiBjbGFzcz1cImRyLWljb24tYXJyb3ctcmlnaHRcIj48L2k+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiYWN0LnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgICAgICBkcm9wZG93bkl0ZW1Db250ZW50XG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiYWN0LnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGFjdCB9XCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kci1kcm9wZG93bi1pdGVtPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
284
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7OztJQ0l0RCx3QkFBcUU7OztJQUFqRCwwQkFBa0I7OztJQUQxQyxnQ0FBMkQ7SUFDdkQsa0dBQXFFO0lBQ3JFLGdDQUFnQztJQUFBLFlBQWU7SUFBQSxpQkFBTztJQUMxRCwwQkFBZTs7O0lBRlAsZUFBYztJQUFkLGtDQUFjO0lBQ2MsZUFBZTtJQUFmLGtDQUFlOzs7O0lBSS9DLDZCQUtrRTtJQUE5RCwyVEFBYSxlQUFBLDhEQUErQyxDQUFBLElBQUM7SUFBQyxpQkFBSTs7Ozs7SUFGbEUsa0NBQXlCO0lBQ3pCLHlE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Y3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRGVzdHJveVJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJQ3VzdG9tVG9vbHRpcENvbXBvbmVudCwgSURyb3Bkb3duLCBJRHJvcGRvd25BY3Rpb24sIElEcm9wZG93bkFjdGlvbkljb24sIElEcm9wZG93bkl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgRHJQb3BvdmVyUmVmIH0gZnJvbSAnLi4vbW9kZWxzL3BvcG92ZXInO1xuaW1wb3J0IHsgZmlyc3QsIG1lcmdlLCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERyb3Bkb3duSW5zdGFuY2VSZWYsIERyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9kci1kcm9wZG93bi5zZXJ2aWNlJztcbmltcG9ydCB7IERlYm91bmNlIH0gZnJvbSAnLi4vdXRpbHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gJy4uL21vZGVscy9wb3NpdGlvbic7XG5pbXBvcnQgeyBUb29sdGlwT3B0aW9ucyB9IGZyb20gJy4uL2RyLXRvb2x0aXAvZHItdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbHRpcFRoZW1lIH0gZnJvbSAnLi4vZHItdG9vbHRpcC9lbnVtcy90b29sdGlwLXRoZW1lLmVudW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWRyb3Bkb3duJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RyLWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIERyRHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBEcm9wZG93bkluc3RhbmNlUmVmLCBPbkNoYW5nZXMge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBpZiAoIXRoaXMuZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UpIHJldHVybjtcblxuICAgICAgICB0aGlzLmRyb3Bkb3duSW5zdGFuY2VTZXJ2aWNlLnJlZ2lzdGVyKHRoaXMpO1xuICAgICAgICBpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UudW5yZWdpc3Rlcih0aGlzKTtcbiAgICAgICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBvcG92ZXJSZWYgPSBpbmplY3QoRHJQb3BvdmVyUmVmLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25JbnN0YW5jZVNlcnZpY2UgPSBpbmplY3QoRHJvcGRvd25JbnN0YW5jZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkckRyb3Bkb3duSW5Ib3ZlckNoYW5nZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgX2FjdGl2ZSA9IHRydWU7XG5cbiAgICBwdWJsaWMgZHJEcm9wZG93bkluSG92ZXI6IGJvb2xlYW47XG4gICAgcHVibGljIGxpc3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj5bXSA9IFtdO1xuICAgIHB1YmxpYyBjb250YWluZXJDbGFzczogc3RyaW5nO1xuICAgIHB1YmxpYyB3YXNIb3ZlcmVkID0gZmFsc2U7XG4gICAgcHVibGljIGFzQ2hpbGQgPSBmYWxzZTtcbiAgICBwdWJsaWMgZGF0YUFuYWx5dGljczogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZCgnbWVudUNvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgbWVudUNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBvcHRpb25zKGRhdGE6IElEcm9wZG93bjxJRHJvcGRvd25JdGVtPHVua25vd24+Pikge1xuICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgdGhpcy5kckRyb3Bkb3duSW5Ib3ZlciA9IGRhdGEuZHJEcm9wZG93bkluSG92ZXI7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lckNsYXNzID0gZGF0YS5jbGFzcztcbiAgICAgICAgICAgIHRoaXMuZGF0YUFuYWx5dGljcyA9IGRhdGEuZGF0YUFuYWx5dGljcztcbiAgICAgICAgICAgIHRoaXMubGlzdCA9IGRhdGEubGlzdCB8fCBbXTtcbiAgICAgICAgICAgIHRoaXMubGlzdC5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBpdGVtLmNoaWxkT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiBpdGVtPy5jaGlsZE9wdGlvbnM/LmNsYXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGl0ZW0/LmNoaWxkT3B0aW9ucz8ucG9zaXRpb24gfHwgJ2xlZnQtdG9wJyxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5kckRyb3Bkb3duSW5Ib3Zlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuZHJvcGRvd25JbnN0YW5jZVNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLmluYWN0aXZlKHRoaXMpXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKGZpcnN0KCksIHRha2VVbnRpbChtZXJnZSh0aGlzLmRlc3Ryb3kkLCB0aGlzLmRyRHJvcGRvd25JbkhvdmVyQ2hhbmdlJCkpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBPdXRwdXQoJ2FjdGlvbicpXG4gICAgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPElEcm9wZG93bkFjdGlvbjx1bmtub3duPj4oKTtcblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFjaGFuZ2VzPy5kckRyb3Bkb3duSW5Ib3Zlcj8uaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICB0aGlzLmRyRHJvcGRvd25JbkhvdmVyQ2hhbmdlJC5uZXh0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBARGVib3VuY2UoMjAwKVxuICAgIHB1YmxpYyBvbk1vdXNlbGVhdmUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2FjdGl2ZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBhY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hY3RpdmU7XG4gICAgfVxuXG4gICAgcHVibGljIGRpc2FibGVkKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIWFjdC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgYWN0LmRpc2FibGVkID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgIHJldHVybiBhY3QuZGlzYWJsZWQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LmRpc2FibGVkKGFjdC5kYXRhKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzZWxlY3RlZChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFhY3Quc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGFjdC5zZWxlY3RlZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LnNlbGVjdGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGFjdC5zZWxlY3RlZChhY3QuZGF0YSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgdG9vbHRpcFRvU2hvdyhhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBzdHJpbmcgfCBJQ3VzdG9tVG9vbHRpcENvbXBvbmVudCB7XG4gICAgICAgIGlmIChhY3QudG9vbFRpcElmRGlzYWJsZWQgJiYgIXRoaXMuZGlzYWJsZWQoYWN0KSkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFjdC5jdXN0b21Ub29sdGlwKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LmN1c3RvbVRvb2x0aXAoYWN0LmRhdGEpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFjdC50b29sVGlwKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0LnRvb2xUaXA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRvb2x0aXBPcHRpb25zKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IFRvb2x0aXBPcHRpb25zIHtcbiAgICAgICAgY29uc3QgY3VzdG9tT3B0aW9ucyA9IHRoaXMuZ2V0Q3VzdG9tVG9vbHRpcENvbXBvbmVudChhY3QpPy5vcHRpb25zO1xuICAgICAgICBpZiAoIWN1c3RvbU9wdGlvbnMpIHJldHVybiA8VG9vbHRpcE9wdGlvbnM+eyB3aXRob3V0QXJyb3c6IHRydWUgfTtcblxuICAgICAgICByZXR1cm4gPFRvb2x0aXBPcHRpb25zPntcbiAgICAgICAgICAgIHdpdGhvdXRBcnJvdzogY3VzdG9tT3B0aW9ucy53aXRob3V0QXJyb3csXG4gICAgICAgICAgICB3aXRob3V0Q29udGFpbmVyU3R5bGVzOiBjdXN0b21PcHRpb25zLndpdGhvdXRDb250YWluZXJTdHlsZXMsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRvb2x0aXBQb3NpdGlvbihhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBQb3NpdGlvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEN1c3RvbVRvb2x0aXBDb21wb25lbnQoYWN0KT8ub3B0aW9ucz8ucG9zaXRpb24gPz8gJ2xlZnQnO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUb29sdGlwVGhlbWUoYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogVG9vbHRpcFRoZW1lIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q3VzdG9tVG9vbHRpcENvbXBvbmVudChhY3QpPy5vcHRpb25zPy50aGVtZSA/PyBUb29sdGlwVGhlbWUuTElHSFQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRvb2x0aXBNb3VzbGVhdmVUaW1lb3V0KGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEN1c3RvbVRvb2x0aXBDb21wb25lbnQoYWN0KT8ub3B0aW9ucz8uZHJUb29sdGlwTW91c2xlYXZlVGltZW91dCA/PyAwO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUb29sdGlwTW91c2VFbnRlclRpbWVvdXQoYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q3VzdG9tVG9vbHRpcENvbXBvbmVudChhY3QpPy5vcHRpb25zPy5kclRvb2x0aXBNb3VzZUVudGVyVGltZW91dCA/PyAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q3VzdG9tVG9vbHRpcENvbXBvbmVudChhY3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj4pOiBJQ3VzdG9tVG9vbHRpcENvbXBvbmVudCB8IG51bGwge1xuICAgICAgICBpZiAoYWN0LmN1c3RvbVRvb2x0aXApIHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGFjdC5jdXN0b21Ub29sdGlwKGFjdC5kYXRhKTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVzdWx0ICE9PSAnc3RyaW5nJykgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWN0aW9uKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPikge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoYWN0KSkge1xuICAgICAgICAgICAgaWYgKGFjdC5hY3Rpb24pIHtcbiAgICAgICAgICAgICAgICBhY3QuYWN0aW9uKGFjdC5kYXRhKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXZlbnQgPSB7IGV2ZW50OiBhY3QuZXZlbnQgfHwgYWN0LnRpdGxlIHx8ICdkZWZhdWx0JywgZGF0YTogYWN0LmRhdGEgfTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQWN0aW9uLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uQWN0aW9uSWNvbkNsaWNrKCRldmVudDogTW91c2VFdmVudCwgYWN0aW9uSWNvbjogSURyb3Bkb3duQWN0aW9uSWNvbjx1bmtub3duPiwgZGF0YTogdW5rbm93bik6IHZvaWQge1xuICAgICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGFjdGlvbkljb24uYWN0aW9uKGRhdGEpO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYXNDaGlsZHJlbihpdGVtOiBJRHJvcGRvd25JdGVtPHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIWl0ZW0uY2hpbGRyZW4/Lmxlbmd0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25Nb3VzZWVudGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndhc0hvdmVyZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLl9hY3RpdmUgPSB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXREYXRhQW5hbHl0aWNzVGFnKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPiwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBhY3QuZGF0YUFuYWx5dGljc1xuICAgICAgICAgICAgPyBhY3QuZGF0YUFuYWx5dGljc1xuICAgICAgICAgICAgOiB0aGlzLmRhdGFBbmFseXRpY3NcbiAgICAgICAgICAgICAgPyB0aGlzLmRhdGFBbmFseXRpY3MgKyAnXycgKyAoYWN0LnRpdGxlPy5yZXBsYWNlKC8gL2csICctJykgfHwgaW5kZXgpXG4gICAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG59XG4iLCI8ZGl2ICNtZW51Q29udGFpbmVyIFtjbGFzc109XCJjb250YWluZXJDbGFzc1wiIGNsYXNzPVwiZHItZHJvcGRvd25cIj5cbiAgICA8ZGl2IGNsYXNzPVwiZHItZHJvcGRvd25fX2NvbnRhaW5lclwiIChtb3VzZWVudGVyKT1cIm9uTW91c2VlbnRlcigpXCIgKG1vdXNlbGVhdmUpPVwib25Nb3VzZWxlYXZlKClcIiB0YWJpbmRleD1cIi0xXCIgcm9sZT1cImxpc3Rib3hcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZHItZHJvcGRvd24taXRlbVwiPjwvbmctY29udGVudD5cblxuICAgICAgICA8ZHItZHJvcGRvd24taXRlbVxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFjdCBvZiBsaXN0IHwgZHJEcm9wZG93bkl0ZW1TaG93UGlwZTsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgICAgICAgKG1vdXNlZG93bik9XCJhY3Rpb24oYWN0KVwiXG4gICAgICAgICAgICBbZHJUb29sdGlwXT1cInRvb2x0aXBUb1Nob3coYWN0KVwiXG4gICAgICAgICAgICBbZHJUb29sdGlwUG9zaXRpb25dPVwiZ2V0VG9vbHRpcFBvc2l0aW9uKGFjdClcIlxuICAgICAgICAgICAgW2RyVG9vbHRpcE9wdGlvbnNdPVwiZ2V0VG9vbHRpcE9wdGlvbnMoYWN0KVwiXG4gICAgICAgICAgICBbZHJUb29sdGlwVGhlbWVdPVwiZ2V0VG9vbHRpcFRoZW1lKGFjdClcIlxuICAgICAgICAgICAgW2RyVG9vbHRpcE1vdXNsZWF2ZVRpbWVvdXRdPVwiZ2V0VG9vbHRpcE1vdXNsZWF2ZVRpbWVvdXQoYWN0KVwiXG4gICAgICAgICAgICBbZHJUb29sdGlwTW91c2VFbnRlclRpbWVvdXRdPVwiZ2V0VG9vbHRpcE1vdXNlRW50ZXJUaW1lb3V0KGFjdClcIlxuICAgICAgICAgICAgW2RyVG9vbHRpcENsYXNzXT1cIidkci1kcm9wZG93bl9fdG9vbHRpcCdcIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25dPVwiaGFzQ2hpbGRyZW4oYWN0KSAmJiBhY3QuY2hpbGRyZW5cIlxuICAgICAgICAgICAgW2RyRHJvcGRvd25DbGFzc109XCJhY3QuY2hpbGRPcHRpb25zPy5jbGFzc1wiXG4gICAgICAgICAgICBbZHJEcm9wZG93bkluSG92ZXJdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbZHJEcm9wZG93blBvc2l0aW9uXT1cImFjdC5jaGlsZE9wdGlvbnM/LnBvc2l0aW9uXCJcbiAgICAgICAgICAgIGRyRHJvcGRvd25DaGlsZFxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKGFjdClcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cInNlbGVjdGVkKGFjdClcIlxuICAgICAgICAgICAgW2RpdmlkZXJdPVwiYWN0LnNlcGFyYXRlTGluZVwiXG4gICAgICAgICAgICBbYXR0ci5kYXRhLWFuYWx5dGljc109XCJnZXREYXRhQW5hbHl0aWNzVGFnKGFjdCwgaW5kZXgpXCJcbiAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1Db250ZW50ICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwiYWN0Lmljb25cIiBbY2xhc3NdPVwiYWN0Lmljb25cIiBjbGFzcz1cImRyLWRyb3Bkb3duX19pY29uXCI+PC9pPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHItZHJvcGRvd25fX3RleHRcIj57eyBhY3QudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBkcm9wZG93bkl0ZW1BY3Rpb25zICpuZ0lmPVwiIWFjdC50ZW1wbGF0ZVJlZlwiPlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb25JY29uIG9mIGFjdC5hY3Rpb25JY29uc1wiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtYW5hbHl0aWNzXT1cImdldERhdGFBbmFseXRpY3NUYWcoYWN0aW9uSWNvbiwgaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImFjdGlvbkljb24uaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zaG93T25Ib3Zlcl09XCJhY3Rpb25JY29uLnNob3dPbkhvdmVyXCJcbiAgICAgICAgICAgICAgICAgICAgKG1vdXNlZG93bik9XCJvbkFjdGlvbkljb25DbGljaygkZXZlbnQsIGFjdGlvbkljb24sIGFjdC5kYXRhKVwiPjwvaT5cbiAgICAgICAgICAgICAgICA8aSAqbmdJZj1cImhhc0NoaWxkcmVuKGFjdClcIiBjbGFzcz1cImRyLWljb24tYXJyb3ctcmlnaHRcIj48L2k+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiYWN0LnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgICAgICBkcm9wZG93bkl0ZW1Db250ZW50XG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiYWN0LnRlbXBsYXRlUmVmXCJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGFjdCB9XCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kci1kcm9wZG93bi1pdGVtPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,58 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, Input, ViewChild, ViewContainerRef, Injector, EnvironmentInjector, inject, } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ const _c0 = ["container"];
5
+ export class TooltipCustomComponent {
6
+ constructor() {
7
+ this.injector = inject(Injector);
8
+ this.environmentInjector = inject(EnvironmentInjector);
9
+ }
10
+ ngOnChanges(changes) {
11
+ if (changes.content) {
12
+ this.renderComponent();
13
+ }
14
+ }
15
+ renderComponent() {
16
+ this.cmpRef?.destroy();
17
+ this.container.clear();
18
+ const customInjector = Injector.create({
19
+ providers: this.content.providers ?? [],
20
+ parent: this.injector,
21
+ });
22
+ this.cmpRef = this.container.createComponent(this.content.component, {
23
+ injector: customInjector,
24
+ environmentInjector: this.environmentInjector,
25
+ });
26
+ if (this.content.inputs) {
27
+ Object.entries(this.content.inputs).forEach(([key, value]) => {
28
+ this.cmpRef.setInput(key, value);
29
+ });
30
+ this.cmpRef.changeDetectorRef.detectChanges();
31
+ }
32
+ }
33
+ /** @nocollapse */ static { this.ɵfac = function TooltipCustomComponent_Factory(t) { return new (t || TooltipCustomComponent)(); }; }
34
+ /** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: TooltipCustomComponent, selectors: [["dr-tooltip-custom"]], viewQuery: function TooltipCustomComponent_Query(rf, ctx) { if (rf & 1) {
35
+ i0.ɵɵviewQuery(_c0, 7, ViewContainerRef);
36
+ } if (rf & 2) {
37
+ let _t;
38
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.container = _t.first);
39
+ } }, inputs: { content: "content" }, standalone: true, features: [i0.ɵɵNgOnChangesFeature, i0.ɵɵStandaloneFeature], decls: 2, vars: 0, consts: [["container", ""]], template: function TooltipCustomComponent_Template(rf, ctx) { if (rf & 1) {
40
+ i0.ɵɵelementContainer(0, null, 0);
41
+ } }, dependencies: [CommonModule], encapsulation: 2, changeDetection: 0 }); }
42
+ }
43
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TooltipCustomComponent, [{
44
+ type: Component,
45
+ args: [{
46
+ selector: 'dr-tooltip-custom',
47
+ template: `<ng-container #container></ng-container>`,
48
+ standalone: true,
49
+ imports: [CommonModule],
50
+ changeDetection: ChangeDetectionStrategy.OnPush,
51
+ }]
52
+ }], null, { container: [{
53
+ type: ViewChild,
54
+ args: ['container', { read: ViewContainerRef, static: true }]
55
+ }], content: [{
56
+ type: Input
57
+ }] }); })();
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1jdXN0b20uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItdG9vbHRpcC9jb21wb25lbnRzL3Rvb2x0aXAtY3VzdG9tL3Rvb2x0aXAtY3VzdG9tLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsRUFDVCxnQkFBZ0IsRUFFaEIsUUFBUSxFQUNSLG1CQUFtQixFQUNuQixNQUFNLEdBR1QsTUFBTSxlQUFlLENBQUM7OztBQVV2QixNQUFNLE9BQU8sc0JBQXNCO0lBUG5DO1FBUXFCLGFBQVEsR0FBYSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsd0JBQW1CLEdBQXdCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0tBb0MzRjtJQTVCRyxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUMxQjtJQUNMLENBQUM7SUFFTyxlQUFlO1FBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUV2QixNQUFNLGNBQWMsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ25DLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxFQUFFO1lBQ3ZDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN4QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ2pFLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLG1CQUFtQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7U0FDaEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNyQixNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtnQkFDekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9DLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUNqRDtJQUNMLENBQUM7MEdBckNRLHNCQUFzQjttR0FBdEIsc0JBQXNCO21DQUtDLGdCQUFnQjs7Ozs7WUFWckMsaUNBQXdDOzRCQUV6QyxZQUFZOzt1RkFHYixzQkFBc0I7Y0FQbEMsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLFFBQVEsRUFBRSwwQ0FBMEM7Z0JBQ3BELFVBQVUsRUFBRSxJQUFJO2dCQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2xEO2dCQU9XLFNBQVM7a0JBRGhCLFNBQVM7bUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7WUFHdkQsT0FBTztrQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIElucHV0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxuICAgIENvbXBvbmVudFJlZixcbiAgICBJbmplY3RvcixcbiAgICBFbnZpcm9ubWVudEluamVjdG9yLFxuICAgIGluamVjdCxcbiAgICBPbkNoYW5nZXMsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJQ3VzdG9tVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9kcm9wZG93bic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItdG9vbHRpcC1jdXN0b20nLFxuICAgIHRlbXBsYXRlOiBgPG5nLWNvbnRhaW5lciAjY29udGFpbmVyPjwvbmctY29udGFpbmVyPmAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcEN1c3RvbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZW52aXJvbm1lbnRJbmplY3RvcjogRW52aXJvbm1lbnRJbmplY3RvciA9IGluamVjdChFbnZpcm9ubWVudEluamVjdG9yKTtcbiAgICBwcml2YXRlIGNtcFJlZjogQ29tcG9uZW50UmVmPGFueT47XG5cbiAgICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICAgIHByaXZhdGUgY29udGFpbmVyITogVmlld0NvbnRhaW5lclJlZjtcblxuICAgIEBJbnB1dCgpIGNvbnRlbnQ6IElDdXN0b21Ub29sdGlwQ29tcG9uZW50O1xuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5jb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJDb21wb25lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY21wUmVmPy5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLmNsZWFyKCk7XG5cbiAgICAgICAgY29uc3QgY3VzdG9tSW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICAgICAgcHJvdmlkZXJzOiB0aGlzLmNvbnRlbnQucHJvdmlkZXJzID8/IFtdLFxuICAgICAgICAgICAgcGFyZW50OiB0aGlzLmluamVjdG9yLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmNtcFJlZiA9IHRoaXMuY29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudCh0aGlzLmNvbnRlbnQuY29tcG9uZW50LCB7XG4gICAgICAgICAgICBpbmplY3RvcjogY3VzdG9tSW5qZWN0b3IsXG4gICAgICAgICAgICBlbnZpcm9ubWVudEluamVjdG9yOiB0aGlzLmVudmlyb25tZW50SW5qZWN0b3IsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnQuaW5wdXRzKSB7XG4gICAgICAgICAgICBPYmplY3QuZW50cmllcyh0aGlzLmNvbnRlbnQuaW5wdXRzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNtcFJlZi5zZXRJbnB1dChrZXkgYXMgc3RyaW5nLCB2YWx1ZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgdGhpcy5jbXBSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -5,38 +5,57 @@ import { BehaviorSubject } from 'rxjs';
5
5
  import { TooltipTheme } from './enums/tooltip-theme.enum';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import { TooltipDefaultComponent } from './components/tooltip-default/tooltip-default.component';
8
+ import { TooltipCustomComponent } from './components/tooltip-custom/tooltip-custom.component';
8
9
  import * as i0 from "@angular/core";
9
10
  import * as i1 from "@angular/common";
10
11
  function TooltipComponent_div_1_Template(rf, ctx) { if (rf & 1) {
11
- i0.ɵɵelement(0, "div", 4);
12
+ i0.ɵɵelement(0, "div", 5);
12
13
  } }
13
14
  function TooltipComponent_ng_container_2_ng_container_1_Template(rf, ctx) { if (rf & 1) {
14
15
  i0.ɵɵelementContainer(0);
15
16
  } }
16
17
  function TooltipComponent_ng_container_2_Template(rf, ctx) { if (rf & 1) {
17
18
  i0.ɵɵelementContainerStart(0);
18
- i0.ɵɵtemplate(1, TooltipComponent_ng_container_2_ng_container_1_Template, 1, 0, "ng-container", 5);
19
+ i0.ɵɵtemplate(1, TooltipComponent_ng_container_2_ng_container_1_Template, 1, 0, "ng-container", 6);
19
20
  i0.ɵɵelementContainerEnd();
20
21
  } if (rf & 2) {
21
22
  const ctx_r1 = i0.ɵɵnextContext();
22
23
  i0.ɵɵadvance(1);
23
24
  i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.content)("ngTemplateOutletContext", ctx_r1.contentContext);
24
25
  } }
26
+ function TooltipComponent_ng_template_3_ng_container_0_Template(rf, ctx) { if (rf & 1) {
27
+ i0.ɵɵelementContainerStart(0);
28
+ i0.ɵɵelement(1, "dr-tooltip-custom", 7);
29
+ i0.ɵɵelementContainerEnd();
30
+ } if (rf & 2) {
31
+ const ctx_r7 = i0.ɵɵnextContext(2);
32
+ i0.ɵɵadvance(1);
33
+ i0.ɵɵproperty("content", ctx_r7.content);
34
+ } }
25
35
  function TooltipComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
26
- i0.ɵɵelement(0, "dr-tooltip-default", 6);
36
+ i0.ɵɵtemplate(0, TooltipComponent_ng_template_3_ng_container_0_Template, 2, 1, "ng-container", 2);
27
37
  } if (rf & 2) {
28
38
  const ctx_r3 = i0.ɵɵnextContext();
29
- i0.ɵɵproperty("content", ctx_r3.content)("theme", ctx_r3.theme);
39
+ const _r4 = i0.ɵɵreference(6);
40
+ i0.ɵɵproperty("ngIf", ctx_r3.isCustomTooltip)("ngIfElse", _r4);
41
+ } }
42
+ function TooltipComponent_ng_template_5_Template(rf, ctx) { if (rf & 1) {
43
+ i0.ɵɵelement(0, "dr-tooltip-default", 8);
44
+ } if (rf & 2) {
45
+ const ctx_r5 = i0.ɵɵnextContext();
46
+ i0.ɵɵproperty("content", ctx_r5.content)("theme", ctx_r5.theme);
30
47
  } }
31
48
  const _c0 = function (a0) { return { "dr-tooltip": a0 }; };
32
49
  export class TooltipComponent {
33
50
  constructor() {
34
51
  this.isContentTemplate = false;
52
+ this.isCustomTooltip = false;
35
53
  this.role = 'tooltip';
36
54
  this.isMouseOn$ = new BehaviorSubject(false);
37
55
  }
38
56
  ngOnInit() {
39
57
  this.isContentTemplate = this.content instanceof TemplateRef;
58
+ this.isCustomTooltip = typeof this.content === 'object' && !!this.content?.component;
40
59
  }
41
60
  setMouseOn() {
42
61
  this.isMouseOn$.next(true);
@@ -49,11 +68,12 @@ export class TooltipComponent {
49
68
  i0.ɵɵlistener("mouseenter", function TooltipComponent_mouseenter_HostBindingHandler() { return ctx.setMouseOn(); })("mouseleave", function TooltipComponent_mouseleave_HostBindingHandler() { return ctx.unsetMouseOn(); });
50
69
  } if (rf & 2) {
51
70
  i0.ɵɵattribute("role", ctx.role);
52
- } }, inputs: { content: "content", contentContext: "contentContext", position: "position", options: "options", class: "class", theme: "theme" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 5, vars: 8, consts: [[3, "ngClass"], ["class", "dr-tooltip-arrow", 4, "ngIf"], [4, "ngIf", "ngIfElse"], ["defaultContent", ""], [1, "dr-tooltip-arrow"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [3, "content", "theme"]], template: function TooltipComponent_Template(rf, ctx) { if (rf & 1) {
71
+ } }, inputs: { content: "content", contentContext: "contentContext", position: "position", options: "options", class: "class", theme: "theme" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 7, vars: 8, consts: [[3, "ngClass"], ["class", "dr-tooltip-arrow", 4, "ngIf"], [4, "ngIf", "ngIfElse"], ["checkCustomTooltip", ""], ["defaultContent", ""], [1, "dr-tooltip-arrow"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [3, "content"], [3, "content", "theme"]], template: function TooltipComponent_Template(rf, ctx) { if (rf & 1) {
53
72
  i0.ɵɵelementStart(0, "div", 0);
54
73
  i0.ɵɵtemplate(1, TooltipComponent_div_1_Template, 1, 0, "div", 1);
55
74
  i0.ɵɵtemplate(2, TooltipComponent_ng_container_2_Template, 2, 2, "ng-container", 2);
56
75
  i0.ɵɵtemplate(3, TooltipComponent_ng_template_3_Template, 1, 2, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
76
+ i0.ɵɵtemplate(5, TooltipComponent_ng_template_5_Template, 1, 2, "ng-template", null, 4, i0.ɵɵtemplateRefExtractor);
57
77
  i0.ɵɵelementEnd();
58
78
  } if (rf & 2) {
59
79
  const _r2 = i0.ɵɵreference(4);
@@ -63,11 +83,11 @@ export class TooltipComponent {
63
83
  i0.ɵɵproperty("ngIf", !(ctx.options == null ? null : ctx.options.withoutArrow));
64
84
  i0.ɵɵadvance(1);
65
85
  i0.ɵɵproperty("ngIf", ctx.isContentTemplate)("ngIfElse", _r2);
66
- } }, dependencies: [CommonModule, i1.NgClass, i1.NgIf, i1.NgTemplateOutlet, TooltipDefaultComponent], styles: ["[_nghost-%COMP%]{display:block;font-family:Poppins,sans-serif}.top[_ngcontent-%COMP%], .top-left[_ngcontent-%COMP%], .top-right.dr-tooltip[_ngcontent-%COMP%]{transform:translateY(-8px)}.bottom[_ngcontent-%COMP%], .bottom-left[_ngcontent-%COMP%], .bottom-right.dr-tooltip[_ngcontent-%COMP%]{transform:translateY(8px)}.left[_ngcontent-%COMP%], .left-top[_ngcontent-%COMP%], .left-bottom.dr-tooltip[_ngcontent-%COMP%]{transform:translate(-8px)}.right[_ngcontent-%COMP%], .right-top[_ngcontent-%COMP%], .right-bottom.dr-tooltip[_ngcontent-%COMP%]{transform:translate(8px)}.dr-tooltip[_ngcontent-%COMP%]{background:#fff;border:1px solid #cfd7dd;box-sizing:border-box;border-radius:8px;font-size:12px;color:#545a6b;max-width:80vw!important;box-shadow:0 2px 4px #9199b440}.dr-tooltip-arrow[_ngcontent-%COMP%]{border-width:8px}.dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip-arrow[_ngcontent-%COMP%]:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.dr-tooltip-arrow[_ngcontent-%COMP%]:after{content:\"\";border-width:8px}.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{bottom:-16px;border-top-color:#cfd7dd!important}.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{bottom:-6px;left:-8px;border-top-color:#fff}.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{top:-7px;border-top:none;border-bottom-color:#cfd7dd!important}.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-top:none;top:1px;left:-8px;border-bottom-color:#fff}.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{right:-16px;border-left-color:#cfd7dd!important}.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{bottom:-8px;left:-9px;border-left-color:#fff}.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{left:-16px;border-right-color:#cfd7dd!important}.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{bottom:-8px;left:-7px;border-right-color:#fff}.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{left:calc(50% - 8px)}.bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{left:8px}.bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{right:8px}.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{top:calc(50% - 8px)}.left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip-arrow[_ngcontent-%COMP%] .right-top[_ngcontent-%COMP%]{top:8px}.right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{bottom:8px}.dr-tooltip.dark[_ngcontent-%COMP%]{background:#0c142bcc;border:none;border-radius:8px;color:#fff}.dr-tooltip.dark.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-top-color:#0c142bcc!important}.dr-tooltip.dark.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-top-color:transparent}.dr-tooltip.dark.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-bottom-color:#0c142bcc!important}.dr-tooltip.dark.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-bottom-color:transparent}.dr-tooltip.dark.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-left-color:#0c142bcc!important}.dr-tooltip.dark.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-left-color:transparent}.dr-tooltip.dark.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-right-color:#0c142bcc!important}.dr-tooltip.dark.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-right-color:transparent}"], data: { animation: [trigger('tooltip', POPUP_ANIMATION)] } }); }
86
+ } }, dependencies: [CommonModule, i1.NgClass, i1.NgIf, i1.NgTemplateOutlet, TooltipDefaultComponent, TooltipCustomComponent], styles: ["[_nghost-%COMP%]{display:block;font-family:Poppins,sans-serif}.top[_ngcontent-%COMP%], .top-left[_ngcontent-%COMP%], .top-right.dr-tooltip[_ngcontent-%COMP%]{transform:translateY(-8px)}.bottom[_ngcontent-%COMP%], .bottom-left[_ngcontent-%COMP%], .bottom-right.dr-tooltip[_ngcontent-%COMP%]{transform:translateY(8px)}.left[_ngcontent-%COMP%], .left-top[_ngcontent-%COMP%], .left-bottom.dr-tooltip[_ngcontent-%COMP%]{transform:translate(-8px)}.right[_ngcontent-%COMP%], .right-top[_ngcontent-%COMP%], .right-bottom.dr-tooltip[_ngcontent-%COMP%]{transform:translate(8px)}.dr-tooltip[_ngcontent-%COMP%]{background:#fff;border:1px solid #cfd7dd;box-sizing:border-box;border-radius:8px;font-size:12px;color:#545a6b;max-width:80vw!important;box-shadow:0 2px 4px #9199b440}.dr-tooltip-arrow[_ngcontent-%COMP%]{border-width:8px}.dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip-arrow[_ngcontent-%COMP%]:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.dr-tooltip-arrow[_ngcontent-%COMP%]:after{content:\"\";border-width:8px}.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{bottom:-16px;border-top-color:#cfd7dd!important}.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{bottom:-6px;left:-8px;border-top-color:#fff}.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{top:-7px;border-top:none;border-bottom-color:#cfd7dd!important}.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-top:none;top:1px;left:-8px;border-bottom-color:#fff}.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{right:-16px;border-left-color:#cfd7dd!important}.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{bottom:-8px;left:-9px;border-left-color:#fff}.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{left:-16px;border-right-color:#cfd7dd!important}.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{bottom:-8px;left:-7px;border-right-color:#fff}.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{left:calc(50% - 8px)}.bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{left:8px}.bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{right:8px}.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{top:calc(50% - 8px)}.left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{top:8px}.right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{bottom:8px}.dr-tooltip.dark[_ngcontent-%COMP%]{background:#0c142bcc;border:none;border-radius:8px;color:#fff}.dr-tooltip.dark.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-top-color:#0c142bcc!important}.dr-tooltip.dark.top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.top-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.top-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-top-color:transparent}.dr-tooltip.dark.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-bottom-color:#0c142bcc!important}.dr-tooltip.dark.bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.bottom-left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.bottom-right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-bottom-color:transparent}.dr-tooltip.dark.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-left-color:#0c142bcc!important}.dr-tooltip.dark.left[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.left-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.left-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-left-color:transparent}.dr-tooltip.dark.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%], .dr-tooltip.dark.right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]{border-right-color:#0c142bcc!important}.dr-tooltip.dark.right[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.right-top[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after, .dr-tooltip.dark.right-bottom[_ngcontent-%COMP%] .dr-tooltip-arrow[_ngcontent-%COMP%]:after{border-right-color:transparent}"], data: { animation: [trigger('tooltip', POPUP_ANIMATION)] } }); }
67
87
  }
68
88
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TooltipComponent, [{
69
89
  type: Component,
70
- args: [{ selector: 'dr-tooltip', animations: [trigger('tooltip', POPUP_ANIMATION)], standalone: true, imports: [CommonModule, TooltipDefaultComponent], template: "<div [class]=\"position + ' ' + class + ' ' + theme\" [ngClass]=\"{ 'dr-tooltip': !options?.withoutContainerStyles }\">\n <div *ngIf=\"!options?.withoutArrow\" class=\"dr-tooltip-arrow\"></div>\n <ng-container *ngIf=\"isContentTemplate; else defaultContent\">\n <ng-container *ngTemplateOutlet=\"content; context: contentContext\"></ng-container>\n </ng-container>\n <ng-template #defaultContent>\n <dr-tooltip-default [content]=\"content\" [theme]=\"theme\"></dr-tooltip-default>\n </ng-template>\n</div>\n", styles: [":host{display:block;font-family:Poppins,sans-serif}.top,.top-left,.top-right.dr-tooltip{transform:translateY(-8px)}.bottom,.bottom-left,.bottom-right.dr-tooltip{transform:translateY(8px)}.left,.left-top,.left-bottom.dr-tooltip{transform:translate(-8px)}.right,.right-top,.right-bottom.dr-tooltip{transform:translate(8px)}.dr-tooltip{background:#fff;border:1px solid #cfd7dd;box-sizing:border-box;border-radius:8px;font-size:12px;color:#545a6b;max-width:80vw!important;box-shadow:0 2px 4px #9199b440}.dr-tooltip-arrow{border-width:8px}.dr-tooltip-arrow,.dr-tooltip-arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.dr-tooltip-arrow:after{content:\"\";border-width:8px}.top .dr-tooltip-arrow,.top-left .dr-tooltip-arrow,.top-right .dr-tooltip-arrow{bottom:-16px;border-top-color:#cfd7dd!important}.top .dr-tooltip-arrow:after,.top-left .dr-tooltip-arrow:after,.top-right .dr-tooltip-arrow:after{bottom:-6px;left:-8px;border-top-color:#fff}.bottom .dr-tooltip-arrow,.bottom-left .dr-tooltip-arrow,.bottom-right .dr-tooltip-arrow{top:-7px;border-top:none;border-bottom-color:#cfd7dd!important}.bottom .dr-tooltip-arrow:after,.bottom-left .dr-tooltip-arrow:after,.bottom-right .dr-tooltip-arrow:after{border-top:none;top:1px;left:-8px;border-bottom-color:#fff}.left .dr-tooltip-arrow,.left-top .dr-tooltip-arrow,.left-bottom .dr-tooltip-arrow{right:-16px;border-left-color:#cfd7dd!important}.left .dr-tooltip-arrow:after,.left-top .dr-tooltip-arrow:after,.left-bottom .dr-tooltip-arrow:after{bottom:-8px;left:-9px;border-left-color:#fff}.right .dr-tooltip-arrow,.right-top .dr-tooltip-arrow,.right-bottom .dr-tooltip-arrow{left:-16px;border-right-color:#cfd7dd!important}.right .dr-tooltip-arrow:after,.right-top .dr-tooltip-arrow:after,.right-bottom .dr-tooltip-arrow:after{bottom:-8px;left:-7px;border-right-color:#fff}.top .dr-tooltip-arrow,.bottom .dr-tooltip-arrow{left:calc(50% - 8px)}.bottom-left .dr-tooltip-arrow,.top-left .dr-tooltip-arrow{left:8px}.bottom-right .dr-tooltip-arrow,.top-right .dr-tooltip-arrow{right:8px}.left .dr-tooltip-arrow,.right .dr-tooltip-arrow{top:calc(50% - 8px)}.left-top .dr-tooltip-arrow,.dr-tooltip-arrow .right-top{top:8px}.right-bottom .dr-tooltip-arrow,.left-bottom .dr-tooltip-arrow{bottom:8px}.dr-tooltip.dark{background:#0c142bcc;border:none;border-radius:8px;color:#fff}.dr-tooltip.dark.top .dr-tooltip-arrow,.dr-tooltip.dark.top-left .dr-tooltip-arrow,.dr-tooltip.dark.top-right .dr-tooltip-arrow{border-top-color:#0c142bcc!important}.dr-tooltip.dark.top .dr-tooltip-arrow:after,.dr-tooltip.dark.top-left .dr-tooltip-arrow:after,.dr-tooltip.dark.top-right .dr-tooltip-arrow:after{border-top-color:transparent}.dr-tooltip.dark.bottom .dr-tooltip-arrow,.dr-tooltip.dark.bottom-left .dr-tooltip-arrow,.dr-tooltip.dark.bottom-right .dr-tooltip-arrow{border-bottom-color:#0c142bcc!important}.dr-tooltip.dark.bottom .dr-tooltip-arrow:after,.dr-tooltip.dark.bottom-left .dr-tooltip-arrow:after,.dr-tooltip.dark.bottom-right .dr-tooltip-arrow:after{border-bottom-color:transparent}.dr-tooltip.dark.left .dr-tooltip-arrow,.dr-tooltip.dark.left-top .dr-tooltip-arrow,.dr-tooltip.dark.left-bottom .dr-tooltip-arrow{border-left-color:#0c142bcc!important}.dr-tooltip.dark.left .dr-tooltip-arrow:after,.dr-tooltip.dark.left-top .dr-tooltip-arrow:after,.dr-tooltip.dark.left-bottom .dr-tooltip-arrow:after{border-left-color:transparent}.dr-tooltip.dark.right .dr-tooltip-arrow,.dr-tooltip.dark.right-top .dr-tooltip-arrow,.dr-tooltip.dark.right-bottom .dr-tooltip-arrow{border-right-color:#0c142bcc!important}.dr-tooltip.dark.right .dr-tooltip-arrow:after,.dr-tooltip.dark.right-top .dr-tooltip-arrow:after,.dr-tooltip.dark.right-bottom .dr-tooltip-arrow:after{border-right-color:transparent}\n"] }]
90
+ args: [{ selector: 'dr-tooltip', animations: [trigger('tooltip', POPUP_ANIMATION)], standalone: true, imports: [CommonModule, TooltipDefaultComponent, TooltipCustomComponent], template: "<div [class]=\"position + ' ' + class + ' ' + theme\" [ngClass]=\"{ 'dr-tooltip': !options?.withoutContainerStyles }\">\n <div *ngIf=\"!options?.withoutArrow\" class=\"dr-tooltip-arrow\"></div>\n\n <ng-container *ngIf=\"isContentTemplate; else checkCustomTooltip\">\n <ng-container *ngTemplateOutlet=\"content; context: contentContext\"></ng-container>\n </ng-container>\n\n <ng-template #checkCustomTooltip>\n <ng-container *ngIf=\"isCustomTooltip; else defaultContent\">\n <dr-tooltip-custom [content]=\"content\"></dr-tooltip-custom>\n </ng-container>\n </ng-template>\n\n <ng-template #defaultContent>\n <dr-tooltip-default [content]=\"content\" [theme]=\"theme\"></dr-tooltip-default>\n </ng-template>\n</div>\n", styles: [":host{display:block;font-family:Poppins,sans-serif}.top,.top-left,.top-right.dr-tooltip{transform:translateY(-8px)}.bottom,.bottom-left,.bottom-right.dr-tooltip{transform:translateY(8px)}.left,.left-top,.left-bottom.dr-tooltip{transform:translate(-8px)}.right,.right-top,.right-bottom.dr-tooltip{transform:translate(8px)}.dr-tooltip{background:#fff;border:1px solid #cfd7dd;box-sizing:border-box;border-radius:8px;font-size:12px;color:#545a6b;max-width:80vw!important;box-shadow:0 2px 4px #9199b440}.dr-tooltip-arrow{border-width:8px}.dr-tooltip-arrow,.dr-tooltip-arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.dr-tooltip-arrow:after{content:\"\";border-width:8px}.top .dr-tooltip-arrow,.top-left .dr-tooltip-arrow,.top-right .dr-tooltip-arrow{bottom:-16px;border-top-color:#cfd7dd!important}.top .dr-tooltip-arrow:after,.top-left .dr-tooltip-arrow:after,.top-right .dr-tooltip-arrow:after{bottom:-6px;left:-8px;border-top-color:#fff}.bottom .dr-tooltip-arrow,.bottom-left .dr-tooltip-arrow,.bottom-right .dr-tooltip-arrow{top:-7px;border-top:none;border-bottom-color:#cfd7dd!important}.bottom .dr-tooltip-arrow:after,.bottom-left .dr-tooltip-arrow:after,.bottom-right .dr-tooltip-arrow:after{border-top:none;top:1px;left:-8px;border-bottom-color:#fff}.left .dr-tooltip-arrow,.left-top .dr-tooltip-arrow,.left-bottom .dr-tooltip-arrow{right:-16px;border-left-color:#cfd7dd!important}.left .dr-tooltip-arrow:after,.left-top .dr-tooltip-arrow:after,.left-bottom .dr-tooltip-arrow:after{bottom:-8px;left:-9px;border-left-color:#fff}.right .dr-tooltip-arrow,.right-top .dr-tooltip-arrow,.right-bottom .dr-tooltip-arrow{left:-16px;border-right-color:#cfd7dd!important}.right .dr-tooltip-arrow:after,.right-top .dr-tooltip-arrow:after,.right-bottom .dr-tooltip-arrow:after{bottom:-8px;left:-7px;border-right-color:#fff}.top .dr-tooltip-arrow,.bottom .dr-tooltip-arrow{left:calc(50% - 8px)}.bottom-left .dr-tooltip-arrow,.top-left .dr-tooltip-arrow{left:8px}.bottom-right .dr-tooltip-arrow,.top-right .dr-tooltip-arrow{right:8px}.left .dr-tooltip-arrow,.right .dr-tooltip-arrow{top:calc(50% - 8px)}.left-top .dr-tooltip-arrow,.right-top .dr-tooltip-arrow{top:8px}.right-bottom .dr-tooltip-arrow,.left-bottom .dr-tooltip-arrow{bottom:8px}.dr-tooltip.dark{background:#0c142bcc;border:none;border-radius:8px;color:#fff}.dr-tooltip.dark.top .dr-tooltip-arrow,.dr-tooltip.dark.top-left .dr-tooltip-arrow,.dr-tooltip.dark.top-right .dr-tooltip-arrow{border-top-color:#0c142bcc!important}.dr-tooltip.dark.top .dr-tooltip-arrow:after,.dr-tooltip.dark.top-left .dr-tooltip-arrow:after,.dr-tooltip.dark.top-right .dr-tooltip-arrow:after{border-top-color:transparent}.dr-tooltip.dark.bottom .dr-tooltip-arrow,.dr-tooltip.dark.bottom-left .dr-tooltip-arrow,.dr-tooltip.dark.bottom-right .dr-tooltip-arrow{border-bottom-color:#0c142bcc!important}.dr-tooltip.dark.bottom .dr-tooltip-arrow:after,.dr-tooltip.dark.bottom-left .dr-tooltip-arrow:after,.dr-tooltip.dark.bottom-right .dr-tooltip-arrow:after{border-bottom-color:transparent}.dr-tooltip.dark.left .dr-tooltip-arrow,.dr-tooltip.dark.left-top .dr-tooltip-arrow,.dr-tooltip.dark.left-bottom .dr-tooltip-arrow{border-left-color:#0c142bcc!important}.dr-tooltip.dark.left .dr-tooltip-arrow:after,.dr-tooltip.dark.left-top .dr-tooltip-arrow:after,.dr-tooltip.dark.left-bottom .dr-tooltip-arrow:after{border-left-color:transparent}.dr-tooltip.dark.right .dr-tooltip-arrow,.dr-tooltip.dark.right-top .dr-tooltip-arrow,.dr-tooltip.dark.right-bottom .dr-tooltip-arrow{border-right-color:#0c142bcc!important}.dr-tooltip.dark.right .dr-tooltip-arrow:after,.dr-tooltip.dark.right-top .dr-tooltip-arrow:after,.dr-tooltip.dark.right-bottom .dr-tooltip-arrow:after{border-right-color:transparent}\n"] }]
71
91
  }], null, { content: [{
72
92
  type: Input
73
93
  }], contentContext: [{
@@ -90,4 +110,4 @@ export class TooltipComponent {
90
110
  type: HostListener,
91
111
  args: ['mouseleave']
92
112
  }] }); })();
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItdG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci10b29sdGlwL2RyLXRvb2x0aXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItdG9vbHRpcC9kci10b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDOzs7O0lDTDdGLHlCQUFtRTs7O0lBRS9ELHdCQUFrRjs7O0lBRHRGLDZCQUE2RDtJQUN6RCxrR0FBa0Y7SUFDdEYsMEJBQWU7OztJQURJLGVBQTJCO0lBQTNCLGlEQUEyQixrREFBQTs7O0lBRzFDLHdDQUE2RTs7O0lBQXpELHdDQUFtQix1QkFBQTs7O0FEZS9DLE1BQU0sT0FBTyxnQkFBZ0I7SUFSN0I7UUFlSSxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFHakIsU0FBSSxHQUFHLFNBQVMsQ0FBQztRQUVuQixlQUFVLEdBQTZCLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0tBZXJGO0lBYkcsUUFBUTtRQUNKLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsT0FBTyxZQUFZLFdBQVcsQ0FBQztJQUNqRSxDQUFDO0lBR0QsVUFBVTtRQUNOLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFHRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztvR0ExQlEsZ0JBQWdCO21HQUFoQixnQkFBZ0I7MkdBQWhCLGdCQUFZLHNGQUFaLGtCQUFjOzs7O1lDckIzQiw4QkFBbUg7WUFDL0csaUVBQW1FO1lBQ25FLG1GQUVlO1lBQ2Ysa0hBRWM7WUFDbEIsaUJBQU07OztZQVJELCtEQUE4QztZQUFDLHdIQUE4RDtZQUN4RyxlQUE0QjtZQUE1QiwrRUFBNEI7WUFDbkIsZUFBeUI7WUFBekIsNENBQXlCLGlCQUFBOzRCRGlCOUIsWUFBWSw0Q0FBRSx1QkFBdUIsbzlNQUZuQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsZUFBZSxDQUFDLENBQUM7O3VGQUl4QyxnQkFBZ0I7Y0FSNUIsU0FBUzsyQkFDSSxZQUFZLGNBR1YsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLGVBQWUsQ0FBQyxDQUFDLGNBQ3JDLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSx1QkFBdUIsQ0FBQztnQkFHdkMsT0FBTztrQkFBZixLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUs7WUFDRyxPQUFPO2tCQUFmLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFJRyxJQUFJO2tCQURaLFdBQVc7bUJBQUMsV0FBVztZQVV4QixVQUFVO2tCQURULFlBQVk7bUJBQUMsWUFBWTtZQU0xQixZQUFZO2tCQURYLFlBQVk7bUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IFBPUFVQX0FOSU1BVElPTiB9IGZyb20gJy4uL21vZGVscy9jb25zdGFudHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUb29sdGlwVGhlbWUgfSBmcm9tICcuL2VudW1zL3Rvb2x0aXAtdGhlbWUuZW51bSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVG9vbHRpcERlZmF1bHRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdG9vbHRpcC1kZWZhdWx0L3Rvb2x0aXAtZGVmYXVsdC5jb21wb25lbnQnO1xuXG50eXBlIFRvb2x0aXBPcHRpb25zID0ge1xuICAgIHdpdGhvdXRDb250YWluZXJTdHlsZXM/OiBib29sZWFuO1xuICAgIHdpdGhvdXRBcnJvdz86IGJvb2xlYW47XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLXRvb2x0aXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci10b29sdGlwLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci10b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgYW5pbWF0aW9uczogW3RyaWdnZXIoJ3Rvb2x0aXAnLCBQT1BVUF9BTklNQVRJT04pXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRvb2x0aXBEZWZhdWx0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgY29udGVudDtcbiAgICBASW5wdXQoKSBjb250ZW50Q29udGV4dDtcbiAgICBASW5wdXQoKSBwb3NpdGlvbjtcbiAgICBASW5wdXQoKSBvcHRpb25zOiBUb29sdGlwT3B0aW9ucztcbiAgICBASW5wdXQoKSBjbGFzczogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHRoZW1lOiBUb29sdGlwVGhlbWU7XG4gICAgaXNDb250ZW50VGVtcGxhdGUgPSBmYWxzZTtcblxuICAgIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJylcbiAgICByZWFkb25seSByb2xlID0gJ3Rvb2x0aXAnO1xuXG4gICAgcHVibGljIGlzTW91c2VPbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNDb250ZW50VGVtcGxhdGUgPSB0aGlzLmNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZjtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJylcbiAgICBzZXRNb3VzZU9uKCkge1xuICAgICAgICB0aGlzLmlzTW91c2VPbiQubmV4dCh0cnVlKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcbiAgICB1bnNldE1vdXNlT24oKSB7XG4gICAgICAgIHRoaXMuaXNNb3VzZU9uJC5uZXh0KGZhbHNlKTtcbiAgICB9XG59XG4iLCI8ZGl2IFtjbGFzc109XCJwb3NpdGlvbiArICcgJyArIGNsYXNzICsgJyAnICsgdGhlbWVcIiBbbmdDbGFzc109XCJ7ICdkci10b29sdGlwJzogIW9wdGlvbnM/LndpdGhvdXRDb250YWluZXJTdHlsZXMgfVwiPlxuICAgIDxkaXYgKm5nSWY9XCIhb3B0aW9ucz8ud2l0aG91dEFycm93XCIgY2xhc3M9XCJkci10b29sdGlwLWFycm93XCI+PC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzQ29udGVudFRlbXBsYXRlOyBlbHNlIGRlZmF1bHRDb250ZW50XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50OyBjb250ZXh0OiBjb250ZW50Q29udGV4dFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbnRlbnQ+XG4gICAgICAgIDxkci10b29sdGlwLWRlZmF1bHQgW2NvbnRlbnRdPVwiY29udGVudFwiIFt0aGVtZV09XCJ0aGVtZVwiPjwvZHItdG9vbHRpcC1kZWZhdWx0PlxuICAgIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItdG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci10b29sdGlwL2RyLXRvb2x0aXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItdG9vbHRpcC9kci10b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7O0lDTjFGLHlCQUFtRTs7O0lBRy9ELHdCQUFrRjs7O0lBRHRGLDZCQUFpRTtJQUM3RCxrR0FBa0Y7SUFDdEYsMEJBQWU7OztJQURJLGVBQTJCO0lBQTNCLGlEQUEyQixrREFBQTs7O0lBSTFDLDZCQUEyRDtJQUN2RCx1Q0FBMkQ7SUFDL0QsMEJBQWU7OztJQURRLGVBQW1CO0lBQW5CLHdDQUFtQjs7O0lBRDFDLGlHQUVlOzs7O0lBRkEsNkNBQXVCLGlCQUFBOzs7SUFNdEMsd0NBQTZFOzs7SUFBekQsd0NBQW1CLHVCQUFBOzs7QURRL0MsTUFBTSxPQUFPLGdCQUFnQjtJQVI3QjtRQWVXLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUd0QixTQUFJLEdBQUcsU0FBUyxDQUFDO1FBRW5CLGVBQVUsR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7S0FnQnJGO0lBZEcsUUFBUTtRQUNKLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsT0FBTyxZQUFZLFdBQVcsQ0FBQztRQUM3RCxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxRQUFRLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDO0lBQ3pGLENBQUM7SUFHRCxVQUFVO1FBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUdELFlBQVk7UUFDUixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO29HQTVCUSxnQkFBZ0I7bUdBQWhCLGdCQUFnQjsyR0FBaEIsZ0JBQVksc0ZBQVosa0JBQWM7Ozs7WUN0QjNCLDhCQUFtSDtZQUMvRyxpRUFBbUU7WUFFbkUsbUZBRWU7WUFFZixrSEFJYztZQUVkLGtIQUVjO1lBQ2xCLGlCQUFNOzs7WUFoQkQsK0RBQThDO1lBQUMsd0hBQThEO1lBQ3hHLGVBQTRCO1lBQTVCLCtFQUE0QjtZQUVuQixlQUF5QjtZQUF6Qiw0Q0FBeUIsaUJBQUE7NEJEaUI5QixZQUFZLDRDQUFFLHVCQUF1QixFQUFFLHNCQUFzQixvOU1BRjNELENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxlQUFlLENBQUMsQ0FBQzs7dUZBSXhDLGdCQUFnQjtjQVI1QixTQUFTOzJCQUNJLFlBQVksY0FHVixDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsZUFBZSxDQUFDLENBQUMsY0FDckMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixDQUFDO2dCQUcvRCxPQUFPO2tCQUFmLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csUUFBUTtrQkFBaEIsS0FBSztZQUNHLE9BQU87a0JBQWYsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUtHLElBQUk7a0JBRFosV0FBVzttQkFBQyxXQUFXO1lBV3hCLFVBQVU7a0JBRFQsWUFBWTttQkFBQyxZQUFZO1lBTTFCLFlBQVk7a0JBRFgsWUFBWTttQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgUE9QVVBfQU5JTUFUSU9OIH0gZnJvbSAnLi4vbW9kZWxzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2x0aXBUaGVtZSB9IGZyb20gJy4vZW51bXMvdG9vbHRpcC10aGVtZS5lbnVtJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUb29sdGlwRGVmYXVsdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90b29sdGlwLWRlZmF1bHQvdG9vbHRpcC1kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwQ3VzdG9tQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Rvb2x0aXAtY3VzdG9tL3Rvb2x0aXAtY3VzdG9tLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIFRvb2x0aXBPcHRpb25zID0ge1xuICAgIHdpdGhvdXRDb250YWluZXJTdHlsZXM/OiBib29sZWFuO1xuICAgIHdpdGhvdXRBcnJvdz86IGJvb2xlYW47XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLXRvb2x0aXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci10b29sdGlwLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci10b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgYW5pbWF0aW9uczogW3RyaWdnZXIoJ3Rvb2x0aXAnLCBQT1BVUF9BTklNQVRJT04pXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRvb2x0aXBEZWZhdWx0Q29tcG9uZW50LCBUb29sdGlwQ3VzdG9tQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgY29udGVudDtcbiAgICBASW5wdXQoKSBjb250ZW50Q29udGV4dDtcbiAgICBASW5wdXQoKSBwb3NpdGlvbjtcbiAgICBASW5wdXQoKSBvcHRpb25zOiBUb29sdGlwT3B0aW9ucztcbiAgICBASW5wdXQoKSBjbGFzczogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHRoZW1lOiBUb29sdGlwVGhlbWU7XG4gICAgcHVibGljIGlzQ29udGVudFRlbXBsYXRlID0gZmFsc2U7XG4gICAgcHVibGljIGlzQ3VzdG9tVG9vbHRpcCA9IGZhbHNlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxuICAgIHJlYWRvbmx5IHJvbGUgPSAndG9vbHRpcCc7XG5cbiAgICBwdWJsaWMgaXNNb3VzZU9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0NvbnRlbnRUZW1wbGF0ZSA9IHRoaXMuY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmO1xuICAgICAgICB0aGlzLmlzQ3VzdG9tVG9vbHRpcCA9IHR5cGVvZiB0aGlzLmNvbnRlbnQgPT09ICdvYmplY3QnICYmICEhdGhpcy5jb250ZW50Py5jb21wb25lbnQ7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gICAgc2V0TW91c2VPbigpIHtcbiAgICAgICAgdGhpcy5pc01vdXNlT24kLm5leHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScpXG4gICAgdW5zZXRNb3VzZU9uKCkge1xuICAgICAgICB0aGlzLmlzTW91c2VPbiQubmV4dChmYWxzZSk7XG4gICAgfVxufVxuIiwiPGRpdiBbY2xhc3NdPVwicG9zaXRpb24gKyAnICcgKyBjbGFzcyArICcgJyArIHRoZW1lXCIgW25nQ2xhc3NdPVwieyAnZHItdG9vbHRpcCc6ICFvcHRpb25zPy53aXRob3V0Q29udGFpbmVyU3R5bGVzIH1cIj5cbiAgICA8ZGl2ICpuZ0lmPVwiIW9wdGlvbnM/LndpdGhvdXRBcnJvd1wiIGNsYXNzPVwiZHItdG9vbHRpcC1hcnJvd1wiPjwvZGl2PlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzQ29udGVudFRlbXBsYXRlOyBlbHNlIGNoZWNrQ3VzdG9tVG9vbHRpcFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudDsgY29udGV4dDogY29udGVudENvbnRleHRcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjY2hlY2tDdXN0b21Ub29sdGlwPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNDdXN0b21Ub29sdGlwOyBlbHNlIGRlZmF1bHRDb250ZW50XCI+XG4gICAgICAgICAgICA8ZHItdG9vbHRpcC1jdXN0b20gW2NvbnRlbnRdPVwiY29udGVudFwiPjwvZHItdG9vbHRpcC1jdXN0b20+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRDb250ZW50PlxuICAgICAgICA8ZHItdG9vbHRpcC1kZWZhdWx0IFtjb250ZW50XT1cImNvbnRlbnRcIiBbdGhlbWVdPVwidGhlbWVcIj48L2RyLXRvb2x0aXAtZGVmYXVsdD5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
@@ -3,12 +3,22 @@ import { DrTooltipDirective } from './dr-tooltip.directive';
3
3
  import { TooltipComponent } from './dr-tooltip.component';
4
4
  import { TooltipInfoComponent } from './components/tooltip-info/tooltip-info.component';
5
5
  import { TooltipDefaultComponent } from './components/tooltip-default/tooltip-default.component';
6
+ import { TooltipCustomComponent } from './components/tooltip-custom/tooltip-custom.component';
6
7
  import * as i0 from "@angular/core";
7
- const TOOLTIP_COMPONENTS = [TooltipDefaultComponent, TooltipInfoComponent, TooltipComponent, DrTooltipDirective];
8
+ const TOOLTIP_COMPONENTS = [
9
+ TooltipDefaultComponent,
10
+ TooltipInfoComponent,
11
+ TooltipCustomComponent,
12
+ TooltipComponent,
13
+ DrTooltipDirective,
14
+ ];
8
15
  export class DrTooltipModule {
9
16
  /** @nocollapse */ static { this.ɵfac = function DrTooltipModule_Factory(t) { return new (t || DrTooltipModule)(); }; }
10
17
  /** @nocollapse */ static { this.ɵmod = /** @pureOrBreakMyCode */ i0.ɵɵdefineNgModule({ type: DrTooltipModule }); }
11
- /** @nocollapse */ static { this.ɵinj = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjector({ imports: [TooltipDefaultComponent, TooltipInfoComponent, TooltipComponent] }); }
18
+ /** @nocollapse */ static { this.ɵinj = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjector({ imports: [TooltipDefaultComponent,
19
+ TooltipInfoComponent,
20
+ TooltipCustomComponent,
21
+ TooltipComponent] }); }
12
22
  }
13
23
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrTooltipModule, [{
14
24
  type: NgModule,
@@ -17,5 +27,13 @@ export class DrTooltipModule {
17
27
  exports: [...TOOLTIP_COMPONENTS],
18
28
  }]
19
29
  }], null, null); })();
20
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DrTooltipModule, { imports: [TooltipDefaultComponent, TooltipInfoComponent, TooltipComponent, DrTooltipDirective], exports: [TooltipDefaultComponent, TooltipInfoComponent, TooltipComponent, DrTooltipDirective] }); })();
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItdG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci10b29sdGlwL2RyLXRvb2x0aXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7O0FBRWpHLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSxvQkFBb0IsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0FBTWpILE1BQU0sT0FBTyxlQUFlO21HQUFmLGVBQWU7a0dBQWYsZUFBZTtzR0FOQSx1QkFBdUIsRUFBRSxvQkFBb0IsRUFBRSxnQkFBZ0I7O3VGQU05RSxlQUFlO2NBSjNCLFFBQVE7ZUFBQztnQkFDTixPQUFPLEVBQUUsQ0FBQyxHQUFHLGtCQUFrQixDQUFDO2dCQUNoQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLGtCQUFrQixDQUFDO2FBQ25DOzt3RkFDWSxlQUFlLGNBTkEsdUJBQXVCLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLGFBQW5GLHVCQUF1QixFQUFFLG9CQUFvQixFQUFFLGdCQUFnQixFQUFFLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEclRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuL2RyLXRvb2x0aXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL2RyLXRvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2x0aXBJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Rvb2x0aXAtaW5mby90b29sdGlwLWluZm8uY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2x0aXBEZWZhdWx0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Rvb2x0aXAtZGVmYXVsdC90b29sdGlwLWRlZmF1bHQuY29tcG9uZW50JztcblxuY29uc3QgVE9PTFRJUF9DT01QT05FTlRTID0gW1Rvb2x0aXBEZWZhdWx0Q29tcG9uZW50LCBUb29sdGlwSW5mb0NvbXBvbmVudCwgVG9vbHRpcENvbXBvbmVudCwgRHJUb29sdGlwRGlyZWN0aXZlXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbLi4uVE9PTFRJUF9DT01QT05FTlRTXSxcbiAgICBleHBvcnRzOiBbLi4uVE9PTFRJUF9DT01QT05FTlRTXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJUb29sdGlwTW9kdWxlIHt9XG4iXX0=
30
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DrTooltipModule, { imports: [TooltipDefaultComponent,
31
+ TooltipInfoComponent,
32
+ TooltipCustomComponent,
33
+ TooltipComponent,
34
+ DrTooltipDirective], exports: [TooltipDefaultComponent,
35
+ TooltipInfoComponent,
36
+ TooltipCustomComponent,
37
+ TooltipComponent,
38
+ DrTooltipDirective] }); })();
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItdG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci10b29sdGlwL2RyLXRvb2x0aXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7O0FBRTlGLE1BQU0sa0JBQWtCLEdBQUc7SUFDdkIsdUJBQXVCO0lBQ3ZCLG9CQUFvQjtJQUNwQixzQkFBc0I7SUFDdEIsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtDQUNyQixDQUFDO0FBTUYsTUFBTSxPQUFPLGVBQWU7bUdBQWYsZUFBZTtrR0FBZixlQUFlO3NHQVh4Qix1QkFBdUI7WUFDdkIsb0JBQW9CO1lBQ3BCLHNCQUFzQjtZQUN0QixnQkFBZ0I7O3VGQVFQLGVBQWU7Y0FKM0IsUUFBUTtlQUFDO2dCQUNOLE9BQU8sRUFBRSxDQUFDLEdBQUcsa0JBQWtCLENBQUM7Z0JBQ2hDLE9BQU8sRUFBRSxDQUFDLEdBQUcsa0JBQWtCLENBQUM7YUFDbkM7O3dGQUNZLGVBQWUsY0FYeEIsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQixzQkFBc0I7UUFDdEIsZ0JBQWdCO1FBQ2hCLGtCQUFrQixhQUpsQix1QkFBdUI7UUFDdkIsb0JBQW9CO1FBQ3BCLHNCQUFzQjtRQUN0QixnQkFBZ0I7UUFDaEIsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERyVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4vZHItdG9vbHRpcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vZHItdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbHRpcEluZm9Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdG9vbHRpcC1pbmZvL3Rvb2x0aXAtaW5mby5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbHRpcERlZmF1bHRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdG9vbHRpcC1kZWZhdWx0L3Rvb2x0aXAtZGVmYXVsdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbHRpcEN1c3RvbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90b29sdGlwLWN1c3RvbS90b29sdGlwLWN1c3RvbS5jb21wb25lbnQnO1xuXG5jb25zdCBUT09MVElQX0NPTVBPTkVOVFMgPSBbXG4gICAgVG9vbHRpcERlZmF1bHRDb21wb25lbnQsXG4gICAgVG9vbHRpcEluZm9Db21wb25lbnQsXG4gICAgVG9vbHRpcEN1c3RvbUNvbXBvbmVudCxcbiAgICBUb29sdGlwQ29tcG9uZW50LFxuICAgIERyVG9vbHRpcERpcmVjdGl2ZSxcbl07XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogWy4uLlRPT0xUSVBfQ09NUE9ORU5UU10sXG4gICAgZXhwb3J0czogWy4uLlRPT0xUSVBfQ09NUE9ORU5UU10sXG59KVxuZXhwb3J0IGNsYXNzIERyVG9vbHRpcE1vZHVsZSB7fVxuIl19
@@ -66,11 +66,11 @@ export class EmojiPickerComponent {
66
66
  } if (rf & 2) {
67
67
  const _r1 = i0.ɵɵreference(2);
68
68
  i0.ɵɵproperty("ngIf", ctx.mode === ctx.EmojiPickerMode.BUTTON)("ngIfElse", _r1);
69
- } }, dependencies: [DrButtonComponent, PickerComponent, CdkOverlayOrigin, CdkConnectedOverlay, NgIf, NgTemplateOutlet], styles: [".emoji-picker-popup[_ngcontent-%COMP%]{position:relative;overflow:hidden;margin-top:8px;z-index:1000;box-shadow:0 2px 36px #00000026;border-radius:12px}.emoji-picker-popup-section[_ngcontent-%COMP%]{display:block}.emoji-picker-popup-section[_ngcontent-%COMP%] section.emoji-mart{border-color:transparent}"], changeDetection: 0 }); }
69
+ } }, dependencies: [DrButtonComponent, PickerComponent, CdkOverlayOrigin, CdkConnectedOverlay, NgIf, NgTemplateOutlet], styles: [".emoji-picker-popup[_ngcontent-%COMP%]{position:relative;overflow:hidden;margin-top:8px;z-index:1000;box-shadow:0 2px 36px #00000026;border-radius:12px}.emoji-picker-popup[_ngcontent-%COMP%] .emoji-picker-section[_ngcontent-%COMP%]{display:block}.emoji-picker-popup[_ngcontent-%COMP%] .emoji-picker-section[_ngcontent-%COMP%] section.emoji-mart{border-color:transparent}"], changeDetection: 0 }); }
70
70
  }
71
71
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EmojiPickerComponent, [{
72
72
  type: Component,
73
- args: [{ selector: 'dr-emoji-picker', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [DrButtonComponent, PickerComponent, CdkOverlayOrigin, CdkConnectedOverlay, NgIf, NgTemplateOutlet], template: "<ng-container *ngIf=\"mode === EmojiPickerMode.BUTTON; else flatTpl\">\n <dr-button\n #emojiButton\n theme=\"icon\"\n icon=\"dr-icon-emoji-smiley\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n (click)=\"toggleEmojiPicker()\"></dr-button>\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"emojisOpened\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'emoji-modal-backdrop'\"\n (backdropClick)=\"closeEmojiPicker()\">\n <div class=\"emoji-picker-popup\">\n <ng-container *ngTemplateOutlet=\"flatTpl\"></ng-container>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #flatTpl>\n <!-- See details here: https://github.com/scttcper/ngx-emoji-mart -->\n <emoji-mart\n emoji=\"thumbsup\"\n color=\"#0D99FF\"\n [darkMode]=\"false\"\n (emojiSelect)=\"onEmojiSelected($event)\"\n class=\"emoji-picker-section\"></emoji-mart>\n</ng-template>\n", styles: [".emoji-picker-popup{position:relative;overflow:hidden;margin-top:8px;z-index:1000;box-shadow:0 2px 36px #00000026;border-radius:12px}.emoji-picker-popup-section{display:block}.emoji-picker-popup-section ::ng-deep section.emoji-mart{border-color:transparent}\n"] }]
73
+ args: [{ selector: 'dr-emoji-picker', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [DrButtonComponent, PickerComponent, CdkOverlayOrigin, CdkConnectedOverlay, NgIf, NgTemplateOutlet], template: "<ng-container *ngIf=\"mode === EmojiPickerMode.BUTTON; else flatTpl\">\n <dr-button\n #emojiButton\n theme=\"icon\"\n icon=\"dr-icon-emoji-smiley\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n (click)=\"toggleEmojiPicker()\"></dr-button>\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"emojisOpened\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'emoji-modal-backdrop'\"\n (backdropClick)=\"closeEmojiPicker()\">\n <div class=\"emoji-picker-popup\">\n <ng-container *ngTemplateOutlet=\"flatTpl\"></ng-container>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #flatTpl>\n <!-- See details here: https://github.com/scttcper/ngx-emoji-mart -->\n <emoji-mart\n emoji=\"thumbsup\"\n color=\"#0D99FF\"\n [darkMode]=\"false\"\n (emojiSelect)=\"onEmojiSelected($event)\"\n class=\"emoji-picker-section\"></emoji-mart>\n</ng-template>\n", styles: [".emoji-picker-popup{position:relative;overflow:hidden;margin-top:8px;z-index:1000;box-shadow:0 2px 36px #00000026;border-radius:12px}.emoji-picker-popup .emoji-picker-section{display:block}.emoji-picker-popup .emoji-picker-section ::ng-deep section.emoji-mart{border-color:transparent}\n"] }]
74
74
  }], null, { mode: [{
75
75
  type: Input
76
76
  }], emojiSelected: [{