@flywheel-io/vision 2.7.0-beta.0 → 2.7.0-beta.1

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.
@@ -16,7 +16,7 @@ export declare class FwAvatarListComponent implements OnInit {
16
16
  applyBorderToChildAvatars: import("@angular/core").EffectRef;
17
17
  childrenChanged: import("@angular/core").EffectRef;
18
18
  hiddenAvatars: import("@angular/core").WritableSignal<any[]>;
19
- calcChipOverflow(): void;
19
+ calcOverflow(): void;
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<FwAvatarListComponent, never>;
21
21
  static ɵcmp: i0.ɵɵComponentDeclaration<FwAvatarListComponent, "fw-avatar-list", never, { "resizeDebounceMs": { "alias": "resizeDebounceMs"; "required": false; "isSignal": true; }; }, {}, ["avatars", "avatarElementRefs"], ["fw-avatar"], true, never>;
22
22
  }
@@ -26,7 +26,7 @@ export class FwAvatarListComponent {
26
26
  });
27
27
  this.childrenChanged = effect(() => {
28
28
  this.avatarElementRefs();
29
- this.calcChipOverflow();
29
+ this.calcOverflow();
30
30
  }, { allowSignalWrites: true });
31
31
  this.hiddenAvatars = signal([]);
32
32
  }
@@ -38,32 +38,25 @@ export class FwAvatarListComponent {
38
38
  resize$.next(resizeEntries);
39
39
  });
40
40
  resizeObserver.observe(this.hostElement.nativeElement, {});
41
- recalcOnResize$.subscribe(() => this.calcChipOverflow());
41
+ recalcOnResize$.subscribe(() => this.calcOverflow());
42
42
  }
43
- calcChipOverflow() {
43
+ calcOverflow() {
44
44
  const hostRect = this.hostElement.nativeElement.getBoundingClientRect();
45
45
  const avatarElements = this.avatarElementRefs().map(ref => ref.nativeElement);
46
46
  const moreTextElement = this.moreText().nativeElement;
47
- avatarElements.forEach(chip => chip.classList.remove('hidden'));
47
+ avatarElements.forEach(avatar => avatar.classList.remove('hidden'));
48
48
  moreTextElement.classList.remove('hidden');
49
- const visibleChips = avatarElements.filter(chip => {
50
- const chipRect = chip.getBoundingClientRect();
51
- return !(chipRect.right > hostRect.right || chipRect.bottom > hostRect.bottom);
49
+ const visibleAvatars = avatarElements.filter(avatar => {
50
+ const avatarRect = avatar.getBoundingClientRect();
51
+ return !(avatarRect.right > hostRect.right || avatarRect.bottom > hostRect.bottom);
52
52
  });
53
- const overflowingAvatars = avatarElements.toSpliced(0, visibleChips.length);
53
+ const overflowingAvatars = avatarElements.toSpliced(0, visibleAvatars.length);
54
54
  if (overflowingAvatars.length > 0) {
55
- const lastVisibleAvatar = visibleChips[visibleChips.length - 1];
55
+ const lastVisibleAvatar = visibleAvatars[visibleAvatars.length - 1];
56
56
  const enoughRoomForMoreText = (hostRect.right - lastVisibleAvatar.getBoundingClientRect().right) > (moreTextElement.offsetWidth);
57
57
  if (!enoughRoomForMoreText) {
58
58
  overflowingAvatars.push(lastVisibleAvatar);
59
59
  }
60
- // avatars are less wide than the text so we might need to hide 2 to make room for the text
61
- // there's probably a fancy recursive solution here but ehhh
62
- const secondLastVisibleAvatar = visibleChips[visibleChips.length - 2];
63
- const needEvenMoreSpace = (hostRect.right - secondLastVisibleAvatar.getBoundingClientRect().right) > (moreTextElement.offsetWidth);
64
- if (!needEvenMoreSpace) {
65
- overflowingAvatars.push(secondLastVisibleAvatar);
66
- }
67
60
  this.hiddenAvatars.set(overflowingAvatars);
68
61
  overflowingAvatars.forEach(hiddenChip => {
69
62
  hiddenChip.classList.add('hidden');
@@ -84,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
84
77
  FwTooltipModule,
85
78
  ], template: "<ng-content select=\"fw-avatar\"></ng-content>\n<fw-tooltip> <!--TODO: figure out how to get a tooltip-->\n <p #moreText> +{{hiddenAvatars().length}} </p>\n</fw-tooltip>\n", styles: [":host{display:flex;align-items:center;flex-basis:max-content;flex-flow:row nowrap;justify-content:flex-start;max-height:36px;overflow:hidden}:host ::ng-deep fw-avatar:not(:first-child){margin-left:-4px}:host p{line-height:100%;cursor:default;margin:0;padding-left:8px;text-wrap:nowrap;color:var(--typography-muted)}:host::ng-deep .hidden{display:none}\n"] }]
86
79
  }] });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXZhdGFyLWxpc3QvYXZhdGFyLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXZhdGFyLWxpc3QvYXZhdGFyLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUksT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7OztBQUU1RCwrRkFBK0Y7QUFDL0YsZ0VBQWdFO0FBR2hFOzs7R0FHRztBQVdILE1BQU0sT0FBTyxxQkFBcUI7SUFWbEM7UUFZRSxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqQyxZQUFPLEdBQUcsZUFBZSxDQUFvQixpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hFLHNCQUFpQixHQUFHLGVBQWUsQ0FBZ0MsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUM1RyxhQUFRLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBbUMsVUFBVSxDQUFDLENBQUM7UUFDNUUsbUJBQWMsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMzQyxxQkFB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UDt3QkFDUCxjQUFjO3dCQUNkLGVBQWU7cUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgY29udGVudENoaWxkcmVuLCBlZmZlY3QsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQsIE9uSW5pdCwgc2lnbmFsLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGVib3VuY2UsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0aW1lciB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBGd0F2YXRhckNvbXBvbmVudCB9IGZyb20gJy4uL2F2YXRhci9hdmF0YXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZ3QXZhdGFyTW9kdWxlIH0gZnJvbSAnLi4vYXZhdGFyL2F2YXRhci5tb2R1bGUnO1xuaW1wb3J0IHsgRndUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi4vdG9vbHRpcC90b29sdGlwLm1vZHVsZSc7XG5cbi8vIHRoZSBuYXR1cmUgb2YgdGhpcyBjb21wb25lbnQgaXMgdG8gaGFuZGxlIGEgY29tcGxleCBsYXlvdXQgaXNzdWUgc28gZGlzYWJsaW5nIHRoaXMgbGludCBydWxlXG4vKiBlc2xpbnQtZGlzYWJsZSBAcngtYW5ndWxhci9wcmVmZXItbm8tbGF5b3V0LXNlbnNpdGl2ZS1hcGlzICovXG5cblxuLyoqXG4gKiBDb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgYW5kIG1hbmFnaW5nIHRoZSBvdmVyZmxvdyBvZiBhIGxpc3Qgb2YgYGZ3LWF2YXRhcmBzXG4gKiBAc2VlIFtWaXNpb24gRG9jc10oaHR0cHM6Ly9jZG4uZmx5d2hlZWwuaW8vZG9jcy92aXNpb24vbWFzdGVyLz9wYXRoPS9kb2NzL2NvbXBvbmVudHMtYXZhdGFyLWxpc3QtLWRvY3MpXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Z3LWF2YXRhci1saXN0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZ3QXZhdGFyTW9kdWxlLFxuICAgIEZ3VG9vbHRpcE1vZHVsZSxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2F2YXRhci1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2F2YXRhci1saXN0LmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgRndBdmF0YXJMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgYXZhdGFycyA9IGNvbnRlbnRDaGlsZHJlbjxGd0F2YXRhckNvbXBvbmVudD4oRndBdmF0YXJDb21wb25lbnQpO1xuICBhdmF0YXJFbGVtZW50UmVmcyA9IGNvbnRlbnRDaGlsZHJlbjxGd0F2YXRhckNvbXBvbmVudCwgRWxlbWVudFJlZj4oRndBdmF0YXJDb21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KTtcbiAgbW9yZVRleHQgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MUGFyYWdyYXBoRWxlbWVudD4+KCdtb3JlVGV4dCcpO1xuICBjaGFuZ2VEZXRlY3RvciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gIHJlc2l6ZURlYm91bmNlTXMgPSBpbnB1dCgxMDApO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIHdpcmUgdXAgcmVzaXplIG9ic2VydmVyIHRvIHJ4anMgYW5kIGRlYm91Y2VcbiAgICBjb25zdCByZXNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxSZXNpemVPYnNlcnZlckVudHJ5W10+KG51bGwpO1xuICAgIGNvbnN0IHJlY2FsY09uUmVzaXplJCA9IHJlc2l6ZSQucGlwZShcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBkZWJvdW5jZSgoKSA9PiB0aW1lcih0aGlzLnJlc2l6ZURlYm91bmNlTXMoKSkpLCAvLyBkZWJvdW5jZSBvdGhlcndpc2UgaXQgY2FuIHJ1biBFVkVSWSBmcmFtZVxuICAgICk7XG5cbiAgICBjb25zdCByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigocmVzaXplRW50cmllcykgPT4ge1xuICAgICAgcmVzaXplJC5uZXh0KHJlc2l6ZUVudHJpZXMpO1xuICAgIH0pXG4gICAgcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHsgfSk7XG4gICAgcmVjYWxjT25SZXNpemUkLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNhbGNDaGlwT3ZlcmZsb3coKSk7XG4gIH1cblxuICBhcHBseUJvcmRlclRvQ2hpbGRBdmF0YXJzID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLmF2YXRhcnMoKS5mb3JFYWNoKGF2YXRhciA9PiB7XG4gICAgICBhdmF0YXIuYm9yZGVyZWQgPSB0cnVlXG4gICAgfSk7XG4gIH0pXG5cbiAgY2hpbGRyZW5DaGFuZ2VkID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLmF2YXRhckVsZW1lbnRSZWZzKCk7XG4gICAgdGhpcy5jYWxjQ2hpcE92ZXJmbG93KCk7XG4gIH0sIHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSlcblxuXG4gIGhpZGRlbkF2YXRhcnMgPSBzaWduYWwoW10pO1xuXG4gIGNhbGNDaGlwT3ZlcmZsb3coKTogdm9pZCB7XG5cbiAgICBjb25zdCBob3N0UmVjdCA9ICh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IGF2YXRhckVsZW1lbnRzID0gdGhpcy5hdmF0YXJFbGVtZW50UmVmcygpLm1hcChyZWYgPT4gcmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpO1xuICAgIGNvbnN0IG1vcmVUZXh0RWxlbWVudCA9IHRoaXMubW9yZVRleHQoKS5uYXRpdmVFbGVtZW50O1xuXG4gICAgYXZhdGFyRWxlbWVudHMuZm9yRWFjaChjaGlwID0+IGNoaXAuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJykpO1xuICAgIG1vcmVUZXh0RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKTtcblxuICAgIGNvbnN0IHZpc2libGVDaGlwcyA9IGF2YXRhckVsZW1lbnRzLmZpbHRlcihjaGlwID0+IHtcbiAgICAgIGNvbnN0IGNoaXBSZWN0ID0gY2hpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIHJldHVybiAhKGNoaXBSZWN0LnJpZ2h0ID4gaG9zdFJlY3QucmlnaHQgfHwgY2hpcFJlY3QuYm90dG9tID4gaG9zdFJlY3QuYm90dG9tKTtcbiAgICB9KVxuXG4gICAgY29uc3Qgb3ZlcmZsb3dpbmdBdmF0YXJzID0gYXZhdGFyRWxlbWVudHMudG9TcGxpY2VkKDAsIHZpc2libGVDaGlwcy5sZW5ndGgpO1xuXG4gICAgaWYgKG92ZXJmbG93aW5nQXZhdGFycy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBsYXN0VmlzaWJsZUF2YXRhciA9IHZpc2libGVDaGlwc1t2aXNpYmxlQ2hpcHMubGVuZ3RoIC0gMV07XG4gICAgICBjb25zdCBlbm91Z2hSb29tRm9yTW9yZVRleHQgPSAoaG9zdFJlY3QucmlnaHQgLSBsYXN0VmlzaWJsZUF2YXRhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5yaWdodCkgPiAobW9yZVRleHRFbGVtZW50Lm9mZnNldFdpZHRoKTtcblxuICAgICAgaWYgKCFlbm91Z2hSb29tRm9yTW9yZVRleHQpIHtcbiAgICAgICAgb3ZlcmZsb3dpbmdBdmF0YXJzLnB1c2gobGFzdFZpc2libGVBdmF0YXIpXG4gICAgICB9XG5cbiAgICAgIC8vIGF2YXRhcnMgYXJlIGxlc3Mgd2lkZSB0aGFuIHRoZSB0ZXh0IHNvIHdlIG1pZ2h0IG5lZWQgdG8gaGlkZSAyIHRvIG1ha2Ugcm9vbSBmb3IgdGhlIHRleHRcbiAgICAgIC8vIHRoZXJlJ3MgcHJvYmFibHkgYSBmYW5jeSByZWN1cnNpdmUgc29sdXRpb24gaGVyZSBidXQgZWhoaFxuICAgICAgY29uc3Qgc2Vjb25kTGFzdFZpc2libGVBdmF0YXIgPSB2aXNpYmxlQ2hpcHNbdmlzaWJsZUNoaXBzLmxlbmd0aCAtIDJdO1xuICAgICAgY29uc3QgbmVlZEV2ZW5Nb3JlU3BhY2UgPSAoaG9zdFJlY3QucmlnaHQgLSBzZWNvbmRMYXN0VmlzaWJsZUF2YXRhci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5yaWdodCkgPiAobW9yZVRleHRFbGVtZW50Lm9mZnNldFdpZHRoKTtcblxuICAgICAgaWYgKCFuZWVkRXZlbk1vcmVTcGFjZSkge1xuICAgICAgICBvdmVyZmxvd2luZ0F2YXRhcnMucHVzaChzZWNvbmRMYXN0VmlzaWJsZUF2YXRhcilcbiAgICAgIH1cblxuICAgICAgdGhpcy5oaWRkZW5BdmF0YXJzLnNldChvdmVyZmxvd2luZ0F2YXRhcnMpO1xuICAgICAgb3ZlcmZsb3dpbmdBdmF0YXJzLmZvckVhY2goaGlkZGVuQ2hpcCA9PiB7XG4gICAgICAgIGhpZGRlbkNoaXAuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7XG4gICAgICB9KVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vcmVUZXh0KCkubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTtcbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJmdy1hdmF0YXJcIj48L25nLWNvbnRlbnQ+XG48ZnctdG9vbHRpcD4gPCEtLVRPRE86IGZpZ3VyZSBvdXQgaG93IHRvIGdldCBhIHRvb2x0aXAtLT5cbiAgPHAgI21vcmVUZXh0PiAre3toaWRkZW5BdmF0YXJzKCkubGVuZ3RofX0gPC9wPlxuPC9mdy10b29sdGlwPlxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXZhdGFyLWxpc3QvYXZhdGFyLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXZhdGFyLWxpc3QvYXZhdGFyLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUksT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7OztBQUU1RCwrRkFBK0Y7QUFDL0YsZ0VBQWdFO0FBR2hFOzs7R0FHRztBQVdILE1BQU0sT0FBTyxxQkFBcUI7SUFWbEM7UUFZRSxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqQyxZQUFPLEdBQUcsZUFBZSxDQUFvQixpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hFLHNCQUFpQixHQUFHLGVBQWUsQ0FBZ0MsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUM1RyxhQUFRLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBbUMsVUFBVSxDQUFDLENBQUM7UUFDNUUsbUJBQWMsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMzQyxxQkFB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ZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRWpJLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUMzQixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtZQUM1QyxDQUFDO1lBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUMzQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ3RDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUVELElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdEMsQ0FBQzsrR0F2RVUscUJBQXFCO21HQUFyQixxQkFBcUIsdVFBR2EsaUJBQWlCLG9FQUNLLGlCQUFpQixRQUFVLFVBQVUsbUtDN0IxRyw4S0FJQSwwWkRlSSxjQUFjLDhCQUNkLGVBQWU7OzRGQUtOLHFCQUFxQjtrQkFWakMsU0FBUzsrQkFDRSxnQkFBZ0IsY0FDZCxJQUFJLFdBQ1A7d0JBQ1AsY0FBYzt3QkFDZCxlQUFlO3FCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGNvbnRlbnRDaGlsZHJlbiwgZWZmZWN0LCBFbGVtZW50UmVmLCBpbmplY3QsIGlucHV0LCBPbkluaXQsIHNpZ25hbCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRlYm91bmNlLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGltZXIgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRndBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuLi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGd0F2YXRhck1vZHVsZSB9IGZyb20gJy4uL2F2YXRhci9hdmF0YXIubW9kdWxlJztcbmltcG9ydCB7IEZ3VG9vbHRpcE1vZHVsZSB9IGZyb20gJy4uL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuXG4vLyB0aGUgbmF0dXJlIG9mIHRoaXMgY29tcG9uZW50IGlzIHRvIGhhbmRsZSBhIGNvbXBsZXggbGF5b3V0IGlzc3VlIHNvIGRpc2FibGluZyB0aGlzIGxpbnQgcnVsZVxuLyogZXNsaW50LWRpc2FibGUgQHJ4LWFuZ3VsYXIvcHJlZmVyLW5vLWxheW91dC1zZW5zaXRpdmUtYXBpcyAqL1xuXG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBkaXNwbGF5aW5nIGFuZCBtYW5hZ2luZyB0aGUgb3ZlcmZsb3cgb2YgYSBsaXN0IG9mIGBmdy1hdmF0YXJgc1xuICogQHNlZSBbVmlzaW9uIERvY3NdKGh0dHBzOi8vY2RuLmZseXdoZWVsLmlvL2RvY3MvdmlzaW9uL21hc3Rlci8/cGF0aD0vZG9jcy9jb21wb25lbnRzLWF2YXRhci1saXN0LS1kb2NzKVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1hdmF0YXItbGlzdCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGd0F2YXRhck1vZHVsZSxcbiAgICBGd1Rvb2x0aXBNb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9hdmF0YXItbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9hdmF0YXItbGlzdC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEZ3QXZhdGFyTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgaG9zdEVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIGF2YXRhcnMgPSBjb250ZW50Q2hpbGRyZW48RndBdmF0YXJDb21wb25lbnQ+KEZ3QXZhdGFyQ29tcG9uZW50KTtcbiAgYXZhdGFyRWxlbWVudFJlZnMgPSBjb250ZW50Q2hpbGRyZW48RndBdmF0YXJDb21wb25lbnQsIEVsZW1lbnRSZWY+KEZ3QXZhdGFyQ29tcG9uZW50LCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG4gIG1vcmVUZXh0ID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTFBhcmFncmFwaEVsZW1lbnQ+PignbW9yZVRleHQnKTtcbiAgY2hhbmdlRGV0ZWN0b3IgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICByZXNpemVEZWJvdW5jZU1zID0gaW5wdXQoMTAwKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyB3aXJlIHVwIHJlc2l6ZSBvYnNlcnZlciB0byByeGpzIGFuZCBkZWJvdWNlXG4gICAgY29uc3QgcmVzaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UmVzaXplT2JzZXJ2ZXJFbnRyeVtdPihudWxsKTtcbiAgICBjb25zdCByZWNhbGNPblJlc2l6ZSQgPSByZXNpemUkLnBpcGUoXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgZGVib3VuY2UoKCkgPT4gdGltZXIodGhpcy5yZXNpemVEZWJvdW5jZU1zKCkpKSwgLy8gZGVib3VuY2Ugb3RoZXJ3aXNlIGl0IGNhbiBydW4gRVZFUlkgZnJhbWVcbiAgICApO1xuXG4gICAgY29uc3QgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKHJlc2l6ZUVudHJpZXMpID0+IHtcbiAgICAgIHJlc2l6ZSQubmV4dChyZXNpemVFbnRyaWVzKTtcbiAgICB9KVxuICAgIHJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCB7IH0pO1xuICAgIHJlY2FsY09uUmVzaXplJC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYWxjT3ZlcmZsb3coKSk7XG4gIH1cblxuICBhcHBseUJvcmRlclRvQ2hpbGRBdmF0YXJzID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLmF2YXRhcnMoKS5mb3JFYWNoKGF2YXRhciA9PiB7XG4gICAgICBhdmF0YXIuYm9yZGVyZWQgPSB0cnVlXG4gICAgfSk7XG4gIH0pXG5cbiAgY2hpbGRyZW5DaGFuZ2VkID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLmF2YXRhckVsZW1lbnRSZWZzKCk7XG4gICAgdGhpcy5jYWxjT3ZlcmZsb3coKTtcbiAgfSwgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9KVxuXG5cbiAgaGlkZGVuQXZhdGFycyA9IHNpZ25hbChbXSk7XG5cbiAgY2FsY092ZXJmbG93KCk6IHZvaWQge1xuXG4gICAgY29uc3QgaG9zdFJlY3QgPSAodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBhdmF0YXJFbGVtZW50cyA9IHRoaXMuYXZhdGFyRWxlbWVudFJlZnMoKS5tYXAocmVmID0+IHJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KTtcbiAgICBjb25zdCBtb3JlVGV4dEVsZW1lbnQgPSB0aGlzLm1vcmVUZXh0KCkubmF0aXZlRWxlbWVudDtcblxuICAgIGF2YXRhckVsZW1lbnRzLmZvckVhY2goYXZhdGFyID0+IGF2YXRhci5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKSk7XG4gICAgbW9yZVRleHRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ2hpZGRlbicpO1xuXG4gICAgY29uc3QgdmlzaWJsZUF2YXRhcnMgPSBhdmF0YXJFbGVtZW50cy5maWx0ZXIoYXZhdGFyID0+IHtcbiAgICAgIGNvbnN0IGF2YXRhclJlY3QgPSBhdmF0YXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICByZXR1cm4gIShhdmF0YXJSZWN0LnJpZ2h0ID4gaG9zdFJlY3QucmlnaHQgfHwgYXZhdGFyUmVjdC5ib3R0b20gPiBob3N0UmVjdC5ib3R0b20pO1xuICAgIH0pXG5cbiAgICBjb25zdCBvdmVyZmxvd2luZ0F2YXRhcnMgPSBhdmF0YXJFbGVtZW50cy50b1NwbGljZWQoMCwgdmlzaWJsZUF2YXRhcnMubGVuZ3RoKTtcblxuICAgIGlmIChvdmVyZmxvd2luZ0F2YXRhcnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgbGFzdFZpc2libGVBdmF0YXIgPSB2aXNpYmxlQXZhdGFyc1t2aXNpYmxlQXZhdGFycy5sZW5ndGggLSAxXTtcbiAgICAgIGNvbnN0IGVub3VnaFJvb21Gb3JNb3JlVGV4dCA9IChob3N0UmVjdC5yaWdodCAtIGxhc3RWaXNpYmxlQXZhdGFyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnJpZ2h0KSA+IChtb3JlVGV4dEVsZW1lbnQub2Zmc2V0V2lkdGgpO1xuXG4gICAgICBpZiAoIWVub3VnaFJvb21Gb3JNb3JlVGV4dCkge1xuICAgICAgICBvdmVyZmxvd2luZ0F2YXRhcnMucHVzaChsYXN0VmlzaWJsZUF2YXRhcilcbiAgICAgIH1cblxuICAgICAgdGhpcy5oaWRkZW5BdmF0YXJzLnNldChvdmVyZmxvd2luZ0F2YXRhcnMpO1xuICAgICAgb3ZlcmZsb3dpbmdBdmF0YXJzLmZvckVhY2goaGlkZGVuQ2hpcCA9PiB7XG4gICAgICAgIGhpZGRlbkNoaXAuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7XG4gICAgICB9KVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vcmVUZXh0KCkubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTtcbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJmdy1hdmF0YXJcIj48L25nLWNvbnRlbnQ+XG48ZnctdG9vbHRpcD4gPCEtLVRPRE86IGZpZ3VyZSBvdXQgaG93IHRvIGdldCBhIHRvb2x0aXAtLT5cbiAgPHAgI21vcmVUZXh0PiAre3toaWRkZW5BdmF0YXJzKCkubGVuZ3RofX0gPC9wPlxuPC9mdy10b29sdGlwPlxuIl19
@@ -76,7 +76,7 @@ export class FwTooltipDirective {
76
76
  this.overlayRef.set(this.overlayService.create());
77
77
  }
78
78
  showTooltip() {
79
- if (!this.enabled()) {
79
+ if (!this.enabled() || !this.title()) {
80
80
  return;
81
81
  }
82
82
  const overlayRef = this.overlayRef();
@@ -111,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
111
111
  standalone: true,
112
112
  }]
113
113
  }] });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsT0FBTyxFQUE2QixNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQWdCLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUksT0FBTyxFQUFFLHVCQUF1QixFQUFrQixNQUFNLHlDQUF5QyxDQUFDOztBQUtsRyxNQUFNLFdBQVcsR0FBeUM7SUFDeEQsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFO0lBQ2pHLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRTtJQUNsRyxPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRTtJQUNuRyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxF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Qy9DLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVztRQUVULE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxDQUFDO1FBRzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDNUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7WUFDaEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7K0dBaEhVLGtCQUFrQjttR0FBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheSwgT3ZlcmxheUNvbmZpZywgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBjb21wdXRlZCwgRGlyZWN0aXZlLCBlZmZlY3QsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQsIG1vZGVsLCBPbkluaXQsIHNpZ25hbCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGd1Rvb2x0aXBQYW5lbENvbXBvbmVudCwgU2ltcGxlUG9zaXRpb24gfSBmcm9tICcuL3Rvb2x0aXAtcGFuZWwvdG9vbHRpcC1wYW5lbC5jb21wb25lbnQnO1xuXG50eXBlIERlbGF5TGVuZ3RoID0gJ25vbmUnIHwgJ3Nob3J0JyB8ICdsb25nJztcbnR5cGUgRGVsYXlNYXAgPSB7IFtLIGluIERlbGF5TGVuZ3RoXTogbnVtYmVyIH07XG5cbmNvbnN0IHBvc2l0aW9uTWFwOiB7IFtrZXk6IHN0cmluZ106IENvbm5lY3RlZFBvc2l0aW9uIH0gPSB7XG4gICdub25lJzogeyBvcmlnaW5YOiAnY2VudGVyJywgb3JpZ2luWTogJ3RvcCcsIG92ZXJsYXlYOiAnY2VudGVyJywgb3ZlcmxheVk6ICdib3R0b20nLCBvZmZzZXRZOiAzIH0sXG4gICdhYm92ZSc6IHsgb3JpZ2luWDogJ2NlbnRlcicsIG9yaWdpblk6ICd0b3AnLCBvdmVybGF5WDogJ2NlbnRlcicsIG92ZXJsYXlZOiAnYm90dG9tJywgb2Zmc2V0WTogMyB9LFxuICAnYmVsb3cnOiB7IG9yaWdpblg6ICdjZW50ZXInLCBvcmlnaW5ZOiAnYm90dG9tJywgb3ZlcmxheVg6ICdjZW50ZXInLCBvdmVybGF5WTogJ3RvcCcsIG9mZnNldFk6IC0zIH0sXG4gICdsZWZ0JzogeyBvcmlnaW5YOiAnc3RhcnQnLCBvcmlnaW5ZOiAnY2VudGVyJywgb3ZlcmxheVg6ICdlbmQnLCBvdmVybGF5WTogJ2NlbnRlcicgfSxcbiAgJ3JpZ2h0JzogeyBvcmlnaW5YOiAnZW5kJywgb3JpZ2luWTogJ2NlbnRlcicsIG92ZXJsYXlYOiAnc3RhcnQnLCBvdmVybGF5WTogJ2NlbnRlcicgfSxcbn07XG5cbmNvbnN0IGRlbGF5TWFwOiBEZWxheU1hcCA9IHtcbiAgJ25vbmUnOiAwLFxuICAnc2hvcnQnOiA0MDAsXG4gICdsb25nJzogNzAwLFxufVxuXG5jb25zdCBkZWxheU5hbWVUb01zID0gKG5hbWU6IERlbGF5TGVuZ3RoKTogbnVtYmVyID0+IHtcbiAgcmV0dXJuIGRlbGF5TWFwW25hbWVdO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZndUb29sdGlwXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEZ3VG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLy8gRXh0ZXJuYWwgQ29udGV4dFxuICBwcml2YXRlIGVsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHZpZXdDb250YWluZXJSZWYgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZik7XG4gIHByaXZhdGUgb3ZlcmxheVNlcnZpY2UgPSBpbmplY3QoT3ZlcmxheSk7XG5cbiAgLy8gSW50ZXJuYWwgcmVmc1xuICBwcml2YXRlIG92ZXJsYXlSZWYgPSBzaWduYWw8T3ZlcmxheVJlZj4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSB0b29sdGlwUmVmID0gc2lnbmFsPENvbXBvbmVudFJlZjxGd1Rvb2x0aXBQYW5lbENvbXBvbmVudD4+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgdG9vbHRpcFBvcnRhbDogQ29tcG9uZW50UG9ydGFsPEZ3VG9vbHRpcFBhbmVsQ29tcG9uZW50PjtcblxuICAvLyBJbnB1dHNcbiAgZGVsYXlNcyA9IGlucHV0KDQwMCwge1xuICAgIHRyYW5zZm9ybTogZGVsYXlOYW1lVG9NcyxcbiAgICBhbGlhczogJ2Z3VG9vbHRpcERlbGF5JyxcbiAgfSk7XG5cbiAgLy8gYSBsb3Qgb2YgdGhlc2UgaWRlYWxseSB3b3VsZG4ndCBiZSBtb2RlbHMsXG4gIC8vIGJ1dCBpdCBtYWtlcyBpdCBlYXNpZXIgdG8gaW50ZXJhY3Qgd2l0aCB0aGlzIGZyb20gZGVyaXZhdGl2ZSBkaXJlY3RpdmVzXG5cbiAgdGl0bGUgPSBtb2RlbDxzdHJpbmc+KCd1bmRlZmluZWQnLCB7XG4gICAgYWxpYXM6ICdmd1Rvb2x0aXAnLFxuICB9KVxuXG4gIHBvc2l0aW9uID0gbW9kZWw8U2ltcGxlUG9zaXRpb24+KCdhYm92ZScsIHtcbiAgICBhbGlhczogJ2Z3VG9vbHRpcFBvc2l0aW9uJyxcbiAgfSk7XG5cbiAgbWF4V2lkdGggPSBtb2RlbDxudW1iZXI+KDIwMCwge1xuICAgIGFsaWFzOiAnZndUb29sdGlwTWF4V2lkdGhQeCcsXG4gIH0pXG5cbiAgZW5hYmxlZCA9IG1vZGVsKHRydWUsIHtcbiAgICBhbGlhczogJ2Z3VG9vbHRpcEVuYWJsZWQnXG4gIH0pO1xuXG4gIC8vIGRlcml2ZWQgc3RhdGVcbiAgY29ubmVjdGVkUG9zaXRpb24gPSBjb21wdXRlZCgoKSA9PiBbcG9zaXRpb25NYXBbdGhpcy5wb3NpdGlvbigpXV0pO1xuXG4gIHBvc2l0aW9uU3RyYXRlZ3kgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgcG9zaXRpb25CdWlsZGVyID0gdGhpcy5vdmVybGF5U2VydmljZS5wb3NpdGlvbigpO1xuICAgIGNvbnN0IHdpdGhPcmlnaW4gPSBwb3NpdGlvbkJ1aWxkZXIuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsZW1lbnRSZWYpO1xuICAgIGNvbnN0IGNvbXBsZXRlZFN0cmF0ZWd5ID0gd2l0aE9yaWdpbi53aXRoUG9zaXRpb25zKHRoaXMuY29ubmVjdGVkUG9zaXRpb24oKSk7XG4gICAgcmV0dXJuIGNvbXBsZXRlZFN0cmF0ZWd5O1xuICB9KTtcblxuICBvdmVybGF5Q29uZmlnID0gY29tcHV0ZWQ8T3ZlcmxheUNvbmZpZz4oKCkgPT4gKHtcbiAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLnBvc2l0aW9uU3RyYXRlZ3koKSxcbiAgICBtYXhXaWR0aDogdGhpcy5tYXhXaWR0aCgpLFxuICAgIFNjcm9sbFN0cmF0ZWd5T3B0aW9uczogdGhpcy5vdmVybGF5U2VydmljZS5zY3JvbGxTdHJhdGVnaWVzLmNsb3NlKCksXG4gICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcbiAgfSkpO1xuXG4gIC8vIGVmZmVjdHMgYW5kIG1ldGhvZHNcbiAgYWRkTW91c2VFdmVudExpc3RlbmVycyA9IGVmZmVjdCgoKSA9PiB7XG5cbiAgICBjb25zdCBuYXRpdmVFbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBuYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZW50ZXInLCAoKSA9PiB7XG4gICAgICB0aGlzLnNob3dUb29sdGlwKCk7XG4gICAgfSk7XG5cbiAgICBuYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCAoKSA9PiB7XG4gICAgICB0aGlzLmhpZGVUb29sdGlwKCk7XG4gICAgfSk7XG4gIH0pXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50b29sdGlwUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChGd1Rvb2x0aXBQYW5lbENvbXBvbmVudCwgdGhpcy52aWV3Q29udGFpbmVyUmVmKTtcblxuICAgIHRoaXMub3ZlcmxheVJlZi5zZXQodGhpcy5vdmVybGF5U2VydmljZS5jcmVhdGUoKSk7XG4gIH1cblxuXG4gIHByaXZhdGUgb3BlbkRlbGF5VGltZXI6IG51bWJlcjtcbiAgcHJpdmF0ZSBjbG9zZURlbGF5VGltZXI6IG51bWJlcjtcblxuICBzaG93VG9vbHRpcCgpOiB2b2lkIHtcblxuICAgIGlmKCF0aGlzLmVuYWJsZWQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXlSZWYoKTtcbiAgICBvdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kodGhpcy5wb3NpdGlvblN0cmF0ZWd5KCkpO1xuXG4gICAgaWYgKHRoaXMub3BlbkRlbGF5VGltZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm9wZW5EZWxheVRpbWVyID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgdG9vbHRpcFJlZiA9IG92ZXJsYXlSZWYuYXR0YWNoKHRoaXMudG9vbHRpcFBvcnRhbCk7XG4gICAgICB0aGlzLnRvb2x0aXBSZWYuc2V0KHRvb2x0aXBSZWYpO1xuXG4gICAgICB0b29sdGlwUmVmLnNldElucHV0KCd0aXRsZScsIHRoaXMudGl0bGUoKSk7XG4gICAgICB0b29sdGlwUmVmLnNldElucHV0KCdwb3NpdGlvbicsIHRoaXMucG9zaXRpb24oKSk7XG4gICAgICB0b29sdGlwUmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9LCB0aGlzLmRlbGF5TXMoKSk7XG4gIH1cblxuICBoaWRlVG9vbHRpcCgpOiB2b2lkIHtcblxuICAgIGNvbnN0IGFuaW1hdGlvbkRlbGF5TXMgPSAyMDA7XG5cblxuICAgIHRoaXMuY2xvc2VEZWxheVRpbWVyID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLm9wZW5EZWxheVRpbWVyKTtcbiAgICAgIHRoaXMub3BlbkRlbGF5VGltZXIgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLm92ZXJsYXlSZWYoKS5kZXRhY2goKTtcbiAgICAgIHRoaXMudG9vbHRpcFJlZi5zZXQodW5kZWZpbmVkKTtcbiAgICB9LCBhbmltYXRpb25EZWxheU1zKTtcbiAgfVxuXG59XG4iXX0=
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsT0FBTyxFQUE2QixNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQWdCLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUksT0FBTyxFQUFFLHVCQUF1QixFQUFrQixNQUFNLHlDQUF5QyxDQUFDOztBQUtsRyxNQUFNLFdBQVcsR0FBeUM7SUFDeEQsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFO0lBQ2pHLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRTtJQUNsRyxPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRTtJQUNuRyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxF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LGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQy9DLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVztRQUVULE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxDQUFDO1FBRzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDNUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7WUFDaEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7K0dBaEhVLGtCQUFrQjttR0FBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheSwgT3ZlcmxheUNvbmZpZywgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBjb21wdXRlZCwgRGlyZWN0aXZlLCBlZmZlY3QsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQsIG1vZGVsLCBPbkluaXQsIHNpZ25hbCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGd1Rvb2x0aXBQYW5lbENvbXBvbmVudCwgU2ltcGxlUG9zaXRpb24gfSBmcm9tICcuL3Rvb2x0aXAtcGFuZWwvdG9vbHRpcC1wYW5lbC5jb21wb25lbnQnO1xuXG50eXBlIERlbGF5TGVuZ3RoID0gJ25vbmUnIHwgJ3Nob3J0JyB8ICdsb25nJztcbnR5cGUgRGVsYXlNYXAgPSB7IFtLIGluIERlbGF5TGVuZ3RoXTogbnVtYmVyIH07XG5cbmNvbnN0IHBvc2l0aW9uTWFwOiB7IFtrZXk6IHN0cmluZ106IENvbm5lY3RlZFBvc2l0aW9uIH0gPSB7XG4gICdub25lJzogeyBvcmlnaW5YOiAnY2VudGVyJywgb3JpZ2luWTogJ3RvcCcsIG92ZXJsYXlYOiAnY2VudGVyJywgb3ZlcmxheVk6ICdib3R0b20nLCBvZmZzZXRZOiAzIH0sXG4gICdhYm92ZSc6IHsgb3JpZ2luWDogJ2NlbnRlcicsIG9yaWdpblk6ICd0b3AnLCBvdmVybGF5WDogJ2NlbnRlcicsIG92ZXJsYXlZOiAnYm90dG9tJywgb2Zmc2V0WTogMyB9LFxuICAnYmVsb3cnOiB7IG9yaWdpblg6ICdjZW50ZXInLCBvcmlnaW5ZOiAnYm90dG9tJywgb3ZlcmxheVg6ICdjZW50ZXInLCBvdmVybGF5WTogJ3RvcCcsIG9mZnNldFk6IC0zIH0sXG4gICdsZWZ0JzogeyBvcmlnaW5YOiAnc3RhcnQnLCBvcmlnaW5ZOiAnY2VudGVyJywgb3ZlcmxheVg6ICdlbmQnLCBvdmVybGF5WTogJ2NlbnRlcicgfSxcbiAgJ3JpZ2h0JzogeyBvcmlnaW5YOiAnZW5kJywgb3JpZ2luWTogJ2NlbnRlcicsIG92ZXJsYXlYOiAnc3RhcnQnLCBvdmVybGF5WTogJ2NlbnRlcicgfSxcbn07XG5cbmNvbnN0IGRlbGF5TWFwOiBEZWxheU1hcCA9IHtcbiAgJ25vbmUnOiAwLFxuICAnc2hvcnQnOiA0MDAsXG4gICdsb25nJzogNzAwLFxufVxuXG5jb25zdCBkZWxheU5hbWVUb01zID0gKG5hbWU6IERlbGF5TGVuZ3RoKTogbnVtYmVyID0+IHtcbiAgcmV0dXJuIGRlbGF5TWFwW25hbWVdO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZndUb29sdGlwXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEZ3VG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLy8gRXh0ZXJuYWwgQ29udGV4dFxuICBwcml2YXRlIGVsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHZpZXdDb250YWluZXJSZWYgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZik7XG4gIHByaXZhdGUgb3ZlcmxheVNlcnZpY2UgPSBpbmplY3QoT3ZlcmxheSk7XG5cbiAgLy8gSW50ZXJuYWwgcmVmc1xuICBwcml2YXRlIG92ZXJsYXlSZWYgPSBzaWduYWw8T3ZlcmxheVJlZj4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSB0b29sdGlwUmVmID0gc2lnbmFsPENvbXBvbmVudFJlZjxGd1Rvb2x0aXBQYW5lbENvbXBvbmVudD4+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgdG9vbHRpcFBvcnRhbDogQ29tcG9uZW50UG9ydGFsPEZ3VG9vbHRpcFBhbmVsQ29tcG9uZW50PjtcblxuICAvLyBJbnB1dHNcbiAgZGVsYXlNcyA9IGlucHV0KDQwMCwge1xuICAgIHRyYW5zZm9ybTogZGVsYXlOYW1lVG9NcyxcbiAgICBhbGlhczogJ2Z3VG9vbHRpcERlbGF5JyxcbiAgfSk7XG5cbiAgLy8gYSBsb3Qgb2YgdGhlc2UgaWRlYWxseSB3b3VsZG4ndCBiZSBtb2RlbHMsXG4gIC8vIGJ1dCBpdCBtYWtlcyBpdCBlYXNpZXIgdG8gaW50ZXJhY3Qgd2l0aCB0aGlzIGZyb20gZGVyaXZhdGl2ZSBkaXJlY3RpdmVzXG5cbiAgdGl0bGUgPSBtb2RlbDxzdHJpbmc+KCd1bmRlZmluZWQnLCB7XG4gICAgYWxpYXM6ICdmd1Rvb2x0aXAnLFxuICB9KVxuXG4gIHBvc2l0aW9uID0gbW9kZWw8U2ltcGxlUG9zaXRpb24+KCdhYm92ZScsIHtcbiAgICBhbGlhczogJ2Z3VG9vbHRpcFBvc2l0aW9uJyxcbiAgfSk7XG5cbiAgbWF4V2lkdGggPSBtb2RlbDxudW1iZXI+KDIwMCwge1xuICAgIGFsaWFzOiAnZndUb29sdGlwTWF4V2lkdGhQeCcsXG4gIH0pXG5cbiAgZW5hYmxlZCA9IG1vZGVsKHRydWUsIHtcbiAgICBhbGlhczogJ2Z3VG9vbHRpcEVuYWJsZWQnXG4gIH0pO1xuXG4gIC8vIGRlcml2ZWQgc3RhdGVcbiAgY29ubmVjdGVkUG9zaXRpb24gPSBjb21wdXRlZCgoKSA9PiBbcG9zaXRpb25NYXBbdGhpcy5wb3NpdGlvbigpXV0pO1xuXG4gIHBvc2l0aW9uU3RyYXRlZ3kgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgcG9zaXRpb25CdWlsZGVyID0gdGhpcy5vdmVybGF5U2VydmljZS5wb3NpdGlvbigpO1xuICAgIGNvbnN0IHdpdGhPcmlnaW4gPSBwb3NpdGlvbkJ1aWxkZXIuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsZW1lbnRSZWYpO1xuICAgIGNvbnN0IGNvbXBsZXRlZFN0cmF0ZWd5ID0gd2l0aE9yaWdpbi53aXRoUG9zaXRpb25zKHRoaXMuY29ubmVjdGVkUG9zaXRpb24oKSk7XG4gICAgcmV0dXJuIGNvbXBsZXRlZFN0cmF0ZWd5O1xuICB9KTtcblxuICBvdmVybGF5Q29uZmlnID0gY29tcHV0ZWQ8T3ZlcmxheUNvbmZpZz4oKCkgPT4gKHtcbiAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLnBvc2l0aW9uU3RyYXRlZ3koKSxcbiAgICBtYXhXaWR0aDogdGhpcy5tYXhXaWR0aCgpLFxuICAgIFNjcm9sbFN0cmF0ZWd5T3B0aW9uczogdGhpcy5vdmVybGF5U2VydmljZS5zY3JvbGxTdHJhdGVnaWVzLmNsb3NlKCksXG4gICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcbiAgfSkpO1xuXG4gIC8vIGVmZmVjdHMgYW5kIG1ldGhvZHNcbiAgYWRkTW91c2VFdmVudExpc3RlbmVycyA9IGVmZmVjdCgoKSA9PiB7XG5cbiAgICBjb25zdCBuYXRpdmVFbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBuYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZW50ZXInLCAoKSA9PiB7XG4gICAgICB0aGlzLnNob3dUb29sdGlwKCk7XG4gICAgfSk7XG5cbiAgICBuYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCAoKSA9PiB7XG4gICAgICB0aGlzLmhpZGVUb29sdGlwKCk7XG4gICAgfSk7XG4gIH0pXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50b29sdGlwUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChGd1Rvb2x0aXBQYW5lbENvbXBvbmVudCwgdGhpcy52aWV3Q29udGFpbmVyUmVmKTtcblxuICAgIHRoaXMub3ZlcmxheVJlZi5zZXQodGhpcy5vdmVybGF5U2VydmljZS5jcmVhdGUoKSk7XG4gIH1cblxuXG4gIHByaXZhdGUgb3BlbkRlbGF5VGltZXI6IG51bWJlcjtcbiAgcHJpdmF0ZSBjbG9zZURlbGF5VGltZXI6IG51bWJlcjtcblxuICBzaG93VG9vbHRpcCgpOiB2b2lkIHtcblxuICAgIGlmKCF0aGlzLmVuYWJsZWQoKSB8fCAhdGhpcy50aXRsZSgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheVJlZigpO1xuICAgIG92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb25TdHJhdGVneSh0aGlzLnBvc2l0aW9uU3RyYXRlZ3koKSk7XG5cbiAgICBpZiAodGhpcy5vcGVuRGVsYXlUaW1lcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMub3BlbkRlbGF5VGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCB0b29sdGlwUmVmID0gb3ZlcmxheVJlZi5hdHRhY2godGhpcy50b29sdGlwUG9ydGFsKTtcbiAgICAgIHRoaXMudG9vbHRpcFJlZi5zZXQodG9vbHRpcFJlZik7XG5cbiAgICAgIHRvb2x0aXBSZWYuc2V0SW5wdXQoJ3RpdGxlJywgdGhpcy50aXRsZSgpKTtcbiAgICAgIHRvb2x0aXBSZWYuc2V0SW5wdXQoJ3Bvc2l0aW9uJywgdGhpcy5wb3NpdGlvbigpKTtcbiAgICAgIHRvb2x0aXBSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0sIHRoaXMuZGVsYXlNcygpKTtcbiAgfVxuXG4gIGhpZGVUb29sdGlwKCk6IHZvaWQge1xuXG4gICAgY29uc3QgYW5pbWF0aW9uRGVsYXlNcyA9IDIwMDtcblxuXG4gICAgdGhpcy5jbG9zZURlbGF5VGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMub3BlbkRlbGF5VGltZXIpO1xuICAgICAgdGhpcy5vcGVuRGVsYXlUaW1lciA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMub3ZlcmxheVJlZigpLmRldGFjaCgpO1xuICAgICAgdGhpcy50b29sdGlwUmVmLnNldCh1bmRlZmluZWQpO1xuICAgIH0sIGFuaW1hdGlvbkRlbGF5TXMpO1xuICB9XG5cbn1cbiJdfQ==
@@ -1068,7 +1068,7 @@ class FwTooltipDirective {
1068
1068
  this.overlayRef.set(this.overlayService.create());
1069
1069
  }
1070
1070
  showTooltip() {
1071
- if (!this.enabled()) {
1071
+ if (!this.enabled() || !this.title()) {
1072
1072
  return;
1073
1073
  }
1074
1074
  const overlayRef = this.overlayRef();
@@ -1220,7 +1220,7 @@ class FwAvatarListComponent {
1220
1220
  });
1221
1221
  this.childrenChanged = effect(() => {
1222
1222
  this.avatarElementRefs();
1223
- this.calcChipOverflow();
1223
+ this.calcOverflow();
1224
1224
  }, { allowSignalWrites: true });
1225
1225
  this.hiddenAvatars = signal([]);
1226
1226
  }
@@ -1232,32 +1232,25 @@ class FwAvatarListComponent {
1232
1232
  resize$.next(resizeEntries);
1233
1233
  });
1234
1234
  resizeObserver.observe(this.hostElement.nativeElement, {});
1235
- recalcOnResize$.subscribe(() => this.calcChipOverflow());
1235
+ recalcOnResize$.subscribe(() => this.calcOverflow());
1236
1236
  }
1237
- calcChipOverflow() {
1237
+ calcOverflow() {
1238
1238
  const hostRect = this.hostElement.nativeElement.getBoundingClientRect();
1239
1239
  const avatarElements = this.avatarElementRefs().map(ref => ref.nativeElement);
1240
1240
  const moreTextElement = this.moreText().nativeElement;
1241
- avatarElements.forEach(chip => chip.classList.remove('hidden'));
1241
+ avatarElements.forEach(avatar => avatar.classList.remove('hidden'));
1242
1242
  moreTextElement.classList.remove('hidden');
1243
- const visibleChips = avatarElements.filter(chip => {
1244
- const chipRect = chip.getBoundingClientRect();
1245
- return !(chipRect.right > hostRect.right || chipRect.bottom > hostRect.bottom);
1243
+ const visibleAvatars = avatarElements.filter(avatar => {
1244
+ const avatarRect = avatar.getBoundingClientRect();
1245
+ return !(avatarRect.right > hostRect.right || avatarRect.bottom > hostRect.bottom);
1246
1246
  });
1247
- const overflowingAvatars = avatarElements.toSpliced(0, visibleChips.length);
1247
+ const overflowingAvatars = avatarElements.toSpliced(0, visibleAvatars.length);
1248
1248
  if (overflowingAvatars.length > 0) {
1249
- const lastVisibleAvatar = visibleChips[visibleChips.length - 1];
1249
+ const lastVisibleAvatar = visibleAvatars[visibleAvatars.length - 1];
1250
1250
  const enoughRoomForMoreText = (hostRect.right - lastVisibleAvatar.getBoundingClientRect().right) > (moreTextElement.offsetWidth);
1251
1251
  if (!enoughRoomForMoreText) {
1252
1252
  overflowingAvatars.push(lastVisibleAvatar);
1253
1253
  }
1254
- // avatars are less wide than the text so we might need to hide 2 to make room for the text
1255
- // there's probably a fancy recursive solution here but ehhh
1256
- const secondLastVisibleAvatar = visibleChips[visibleChips.length - 2];
1257
- const needEvenMoreSpace = (hostRect.right - secondLastVisibleAvatar.getBoundingClientRect().right) > (moreTextElement.offsetWidth);
1258
- if (!needEvenMoreSpace) {
1259
- overflowingAvatars.push(secondLastVisibleAvatar);
1260
- }
1261
1254
  this.hiddenAvatars.set(overflowingAvatars);
1262
1255
  overflowingAvatars.forEach(hiddenChip => {
1263
1256
  hiddenChip.classList.add('hidden');