@dereekb/dbx-web 12.6.18 → 12.6.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/esm2022/lib/extension/help/absract.help.widget.directive.mjs +7 -7
  2. package/esm2022/lib/extension/help/help.context.directive.mjs +4 -4
  3. package/esm2022/lib/extension/help/help.context.mjs +3 -3
  4. package/esm2022/lib/extension/help/help.context.service.mjs +3 -3
  5. package/esm2022/lib/extension/help/help.mjs +1 -1
  6. package/esm2022/lib/extension/help/help.view.list.component.mjs +30 -11
  7. package/esm2022/lib/extension/help/help.view.list.entry.component.mjs +4 -3
  8. package/esm2022/lib/extension/help/help.view.popover.component.mjs +5 -4
  9. package/esm2022/lib/extension/help/help.widget.mjs +1 -1
  10. package/esm2022/lib/extension/help/help.widget.service.mjs +18 -10
  11. package/esm2022/lib/router/layout/anchor/anchor.component.mjs +20 -7
  12. package/esm2022/lib/router/provider/ngrouter/anchor.component.mjs +13 -4
  13. package/esm2022/lib/router/provider/uirouter/anchor.component.mjs +7 -51
  14. package/esm2022/lib/screen/resize.mjs +2 -2
  15. package/esm2022/lib/util/click.mjs +56 -0
  16. package/esm2022/lib/util/index.mjs +2 -1
  17. package/fesm2022/dereekb-dbx-web.mjs +152 -94
  18. package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
  19. package/lib/extension/help/absract.help.widget.directive.d.ts +8 -7
  20. package/lib/extension/help/help.context.d.ts +2 -2
  21. package/lib/extension/help/help.context.directive.d.ts +2 -2
  22. package/lib/extension/help/help.context.service.d.ts +3 -3
  23. package/lib/extension/help/help.d.ts +3 -3
  24. package/lib/extension/help/help.view.list.component.d.ts +16 -9
  25. package/lib/extension/help/help.view.list.entry.component.d.ts +1 -1
  26. package/lib/extension/help/help.view.popover.component.d.ts +8 -3
  27. package/lib/extension/help/help.widget.d.ts +13 -9
  28. package/lib/extension/help/help.widget.service.d.ts +15 -8
  29. package/lib/layout/style/_style.scss +8 -0
  30. package/lib/router/layout/anchor/anchor.component.d.ts +4 -1
  31. package/lib/router/provider/ngrouter/anchor.component.d.ts +5 -0
  32. package/lib/router/provider/uirouter/anchor.component.d.ts +2 -14
  33. package/lib/screen/resize.d.ts +1 -1
  34. package/lib/util/click.d.ts +29 -0
  35. package/lib/util/index.d.ts +1 -0
  36. package/package.json +1 -1
@@ -1,10 +1,11 @@
1
1
  import { skipAllInitialMaybe } from '@dereekb/rxjs';
2
- import { Component, TemplateRef, HostListener, inject, viewChild, input, ChangeDetectionStrategy, computed } from '@angular/core';
2
+ import { Component, TemplateRef, HostListener, inject, viewChild, input, ChangeDetectionStrategy, computed, ElementRef } from '@angular/core';
3
3
  import { AbstractDbxAnchorDirective, DbxInjectionComponent } from '@dereekb/dbx-core';
4
4
  import { NgTemplateOutlet, NgClass } from '@angular/common';
5
5
  import { toObservable } from '@angular/core/rxjs-interop';
6
6
  import { shareReplay } from 'rxjs';
7
7
  import { DbxRouterWebProviderConfig } from '../../provider/router.provider.config';
8
+ import { overrideClickElementEffect } from '../../../util/click';
8
9
  import * as i0 from "@angular/core";
9
10
  /**
10
11
  * Component that renders an anchor element depending on the input.
@@ -12,11 +13,19 @@ import * as i0 from "@angular/core";
12
13
  export class DbxAnchorComponent extends AbstractDbxAnchorDirective {
13
14
  _dbNgxRouterWebProviderConfig = inject(DbxRouterWebProviderConfig);
14
15
  block = input();
16
+ clickableElement = viewChild('clickable', { read: ElementRef });
17
+ childClickTarget = viewChild('childClickTarget', { read: ElementRef });
15
18
  templateRef = viewChild('content', { read: TemplateRef });
16
19
  templateRef$ = toObservable(this.templateRef).pipe(skipAllInitialMaybe(), shareReplay(1));
17
20
  selectedClassSignal = computed(() => (this.selectedSignal() ? 'dbx-anchor-selected' : ''));
18
21
  srefAnchorConfig = this._dbNgxRouterWebProviderConfig.anchorSegueRefComponent;
22
+ _overrideClickElementEffect = overrideClickElementEffect({
23
+ clickTarget: this.clickableElement,
24
+ childClickTarget: this.childClickTarget,
25
+ disabledSignal: computed(() => this.typeSignal() !== 'clickable')
26
+ });
19
27
  clickAnchor(event) {
28
+ console.log('click anchor');
20
29
  this.anchor()?.onClick?.(event);
21
30
  }
22
31
  onMouseEnter(event) {
@@ -26,14 +35,16 @@ export class DbxAnchorComponent extends AbstractDbxAnchorDirective {
26
35
  this.anchor()?.onMouse?.('leave', event);
27
36
  }
28
37
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxAnchorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
29
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxAnchorComponent, isStandalone: true, selector: "dbx-anchor, [dbx-anchor]", inputs: { block: { classPropertyName: "block", publicName: "block", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "dbx-anchor-block": "block()" }, listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" }, classAttribute: "d-inline dbx-anchor" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["content"], descendants: true, read: TemplateRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
38
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DbxAnchorComponent, isStandalone: true, selector: "dbx-anchor, [dbx-anchor]", inputs: { block: { classPropertyName: "block", publicName: "block", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "dbx-anchor-block": "block()" }, listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" }, classAttribute: "d-inline dbx-anchor" }, viewQueries: [{ propertyName: "clickableElement", first: true, predicate: ["clickable"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "childClickTarget", first: true, predicate: ["childClickTarget"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "templateRef", first: true, predicate: ["content"], descendants: true, read: TemplateRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
30
39
  @switch (typeSignal()) {
31
40
  @case ('plain') {
32
41
  <ng-container *ngTemplateOutlet="content"></ng-container>
33
42
  }
34
43
  @case ('clickable') {
35
- <a class="dbx-anchor-a dbx-anchor-click" [ngClass]="selectedClassSignal()" (click)="clickAnchor()">
36
- <ng-container *ngTemplateOutlet="content"></ng-container>
44
+ <a #clickable class="dbx-anchor-a dbx-anchor-click" [ngClass]="selectedClassSignal()" (click)="clickAnchor()">
45
+ <span #childClickTarget>
46
+ <ng-container *ngTemplateOutlet="content"></ng-container>
47
+ </span>
37
48
  </a>
38
49
  }
39
50
  @case ('sref') {
@@ -68,8 +79,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
68
79
  <ng-container *ngTemplateOutlet="content"></ng-container>
69
80
  }
70
81
  @case ('clickable') {
71
- <a class="dbx-anchor-a dbx-anchor-click" [ngClass]="selectedClassSignal()" (click)="clickAnchor()">
72
- <ng-container *ngTemplateOutlet="content"></ng-container>
82
+ <a #clickable class="dbx-anchor-a dbx-anchor-click" [ngClass]="selectedClassSignal()" (click)="clickAnchor()">
83
+ <span #childClickTarget>
84
+ <ng-container *ngTemplateOutlet="content"></ng-container>
85
+ </span>
73
86
  </a>
74
87
  }
75
88
  @case ('sref') {
@@ -108,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
108
121
  type: HostListener,
109
122
  args: ['mouseleave']
110
123
  }] } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5jaG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvbGF5b3V0L2FuY2hvci9hbmNob3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xJLE9BQU8sRUFBRSwwQkFBMEIsRUFBK0IscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBRW5GOztHQUVHO0FBMENILE1BQU0sT0FBTyxrQkFBbUIsU0FBUSwwQkFBMEI7SUFDL0MsNkJBQTZCLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFFM0UsS0FBSyxHQUFHLEtBQUssRUFBa0IsQ0FBQztJQUVoQyxXQUFXLEdBQUcsU0FBUyxDQUFzQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUMvRixZQUFZLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUxRixtQkFBbUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRTNGLGdCQUFnQixHQUFnQyxJQUFJLENBQUMsNkJBQTZCLENBQUMsdUJBQXVCLENBQUM7SUFFcEgsV0FBVyxDQUFDLEtBQXlCO1FBQ25DLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBR0QsWUFBWSxDQUFDLEtBQXlCO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUdELFlBQVksQ0FBQyxLQUF5QjtRQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7d0dBeEJVLGtCQUFrQjs0RkFBbEIsa0JBQWtCLDBkQUs0RCxXQUFXLG9FQTVDMUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVCw0REFFUyxnQkFBZ0Isb0pBQUUsT0FBTyxvRkFBRSxxQkFBcUI7OzRGQU8vQyxrQkFBa0I7a0JBekM5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOEJUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUscUJBQXFCLENBQUM7b0JBQzNELElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUscUJBQXFCO3dCQUM1QixrQkFBa0IsRUFBRSxTQUFTO3FCQUM5QjtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OEJBa0JDLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZO2dCQU0xQixZQUFZO3NCQURYLFlBQVk7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNraXBBbGxJbml0aWFsTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCB2aWV3Q2hpbGQsIGlucHV0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4QW5jaG9yRGlyZWN0aXZlLCBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcsIERieEluamVjdGlvbkNvbXBvbmVudCB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQsIE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXIvcm91dGVyLnByb3ZpZGVyLmNvbmZpZyc7XG5cbi8qKlxuICogQ29tcG9uZW50IHRoYXQgcmVuZGVycyBhbiBhbmNob3IgZWxlbWVudCBkZXBlbmRpbmcgb24gdGhlIGlucHV0LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtYW5jaG9yLCBbZGJ4LWFuY2hvcl0nLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBzd2l0Y2ggKHR5cGVTaWduYWwoKSkge1xuICAgICAgQGNhc2UgKCdwbGFpbicpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIH1cbiAgICAgIEBjYXNlICgnY2xpY2thYmxlJykge1xuICAgICAgICA8YSBjbGFzcz1cImRieC1hbmNob3ItYSBkYngtYW5jaG9yLWNsaWNrXCIgW25nQ2xhc3NdPVwic2VsZWN0ZWRDbGFzc1NpZ25hbCgpXCIgKGNsaWNrKT1cImNsaWNrQW5jaG9yKClcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgICBAY2FzZSAoJ3NyZWYnKSB7XG4gICAgICAgIDxkYngtaW5qZWN0aW9uIFtjb25maWddPVwic3JlZkFuY2hvckNvbmZpZ1wiPlxuICAgICAgICAgIDwhLS0gSW5qZWN0ZWQgaW4gY2hpbGQuIC0tPlxuICAgICAgICA8L2RieC1pbmplY3Rpb24+XG4gICAgICB9XG4gICAgICBAY2FzZSAoJ2hyZWYnKSB7XG4gICAgICAgIDxhIGNsYXNzPVwiZGJ4LWFuY2hvci1hIGRieC1hbmNob3ItaHJlZlwiIFtocmVmXT1cInVybFNpZ25hbCgpXCIgW2F0dHIudGFyZ2V0XT1cInRhcmdldFNpZ25hbCgpXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hPlxuICAgICAgfVxuICAgICAgQGNhc2UgKCdkaXNhYmxlZCcpIHtcbiAgICAgICAgPGEgY2xhc3M9XCJkYngtYW5jaG9yLWEgZGJ4LWFuY2hvci1kaXNhYmxlZFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYT5cbiAgICAgIH1cbiAgICB9XG4gICAgPCEtLSBUZW1wbGF0ZSBjb250ZW50IC0tPlxuICAgIDxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldCwgTmdDbGFzcywgRGJ4SW5qZWN0aW9uQ29tcG9uZW50XSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZC1pbmxpbmUgZGJ4LWFuY2hvcicsXG4gICAgJ2RieC1hbmNob3ItYmxvY2snOiAnYmxvY2soKSdcbiAgfSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QW5jaG9yQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhBbmNob3JEaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9kYk5neFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnID0gaW5qZWN0KERieFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnKTtcblxuICByZWFkb25seSBibG9jayA9IGlucHV0PE1heWJlPGJvb2xlYW4+PigpO1xuXG4gIHJlYWRvbmx5IHRlbXBsYXRlUmVmID0gdmlld0NoaWxkPHN0cmluZywgTWF5YmU8VGVtcGxhdGVSZWY8dW5rbm93bj4+PignY29udGVudCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSk7XG4gIHJlYWRvbmx5IHRlbXBsYXRlUmVmJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnRlbXBsYXRlUmVmKS5waXBlKHNraXBBbGxJbml0aWFsTWF5YmUoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IHNlbGVjdGVkQ2xhc3NTaWduYWwgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5zZWxlY3RlZFNpZ25hbCgpID8gJ2RieC1hbmNob3Itc2VsZWN0ZWQnIDogJycpKTtcblxuICByZWFkb25seSBzcmVmQW5jaG9yQ29uZmlnOiBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcgPSB0aGlzLl9kYk5neFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnLmFuY2hvclNlZ3VlUmVmQ29tcG9uZW50O1xuXG4gIGNsaWNrQW5jaG9yKGV2ZW50PzogTWF5YmU8TW91c2VFdmVudD4pOiB2b2lkIHtcbiAgICB0aGlzLmFuY2hvcigpPy5vbkNsaWNrPy4oZXZlbnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gIG9uTW91c2VFbnRlcihldmVudD86IE1heWJlPE1vdXNlRXZlbnQ+KSB7XG4gICAgdGhpcy5hbmNob3IoKT8ub25Nb3VzZT8uKCdlbnRlcicsIGV2ZW50KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICBvbk1vdXNlTGVhdmUoZXZlbnQ/OiBNYXliZTxNb3VzZUV2ZW50Pikge1xuICAgIHRoaXMuYW5jaG9yKCk/Lm9uTW91c2U/LignbGVhdmUnLCBldmVudCk7XG4gIH1cbn1cbiJdfQ==
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5jaG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvbGF5b3V0L2FuY2hvci9hbmNob3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5SSxPQUFPLEVBQUUsMEJBQTBCLEVBQStCLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25DLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUVqRTs7R0FFRztBQTRDSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsMEJBQTBCO0lBQy9DLDZCQUE2QixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBRTNFLEtBQUssR0FBRyxLQUFLLEVBQWtCLENBQUM7SUFFaEMsZ0JBQWdCLEdBQUcsU0FBUyxDQUF5QyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUN4RyxnQkFBZ0IsR0FBRyxTQUFTLENBQXlDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFFL0csV0FBVyxHQUFHLFNBQVMsQ0FBc0MsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDL0YsWUFBWSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFMUYsbUJBQW1CLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUUzRixnQkFBZ0IsR0FBZ0MsSUFBSSxDQUFDLDZCQUE2QixDQUFDLHVCQUF1QixDQUFDO0lBRWpHLDJCQUEyQixHQUFHLDBCQUEwQixDQUFDO1FBQzFFLFdBQVcsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1FBQ2xDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7UUFDdkMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssV0FBVyxDQUFDO0tBQ2xFLENBQUMsQ0FBQztJQUVILFdBQVcsQ0FBQyxLQUF5QjtRQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBR0QsWUFBWSxDQUFDLEtBQXlCO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUdELFlBQVksQ0FBQyxLQUF5QjtRQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7d0dBbENVLGtCQUFrQjs0RkFBbEIsa0JBQWtCLGllQUtzRSxVQUFVLCtIQUNILFVBQVUsaUhBRTNCLFdBQVcsb0VBakQxRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQ1QsNERBRVMsZ0JBQWdCLG9KQUFFLE9BQU8sb0ZBQUUscUJBQXFCOzs0RkFPL0Msa0JBQWtCO2tCQTNDOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ0NUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUscUJBQXFCLENBQUM7b0JBQzNELElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUscUJBQXFCO3dCQUM1QixrQkFBa0IsRUFBRSxTQUFTO3FCQUM5QjtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OEJBNEJDLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZO2dCQU0xQixZQUFZO3NCQURYLFlBQVk7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNraXBBbGxJbml0aWFsTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCB2aWV3Q2hpbGQsIGlucHV0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgY29tcHV0ZWQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4QW5jaG9yRGlyZWN0aXZlLCBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcsIERieEluamVjdGlvbkNvbXBvbmVudCB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQsIE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXIvcm91dGVyLnByb3ZpZGVyLmNvbmZpZyc7XG5pbXBvcnQgeyBvdmVycmlkZUNsaWNrRWxlbWVudEVmZmVjdCB9IGZyb20gJy4uLy4uLy4uL3V0aWwvY2xpY2snO1xuXG4vKipcbiAqIENvbXBvbmVudCB0aGF0IHJlbmRlcnMgYW4gYW5jaG9yIGVsZW1lbnQgZGVwZW5kaW5nIG9uIHRoZSBpbnB1dC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGJ4LWFuY2hvciwgW2RieC1hbmNob3JdJyxcbiAgdGVtcGxhdGU6IGBcbiAgICBAc3dpdGNoICh0eXBlU2lnbmFsKCkpIHtcbiAgICAgIEBjYXNlICgncGxhaW4nKSB7XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICB9XG4gICAgICBAY2FzZSAoJ2NsaWNrYWJsZScpIHtcbiAgICAgICAgPGEgI2NsaWNrYWJsZSBjbGFzcz1cImRieC1hbmNob3ItYSBkYngtYW5jaG9yLWNsaWNrXCIgW25nQ2xhc3NdPVwic2VsZWN0ZWRDbGFzc1NpZ25hbCgpXCIgKGNsaWNrKT1cImNsaWNrQW5jaG9yKClcIj5cbiAgICAgICAgICA8c3BhbiAjY2hpbGRDbGlja1RhcmdldD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICB9XG4gICAgICBAY2FzZSAoJ3NyZWYnKSB7XG4gICAgICAgIDxkYngtaW5qZWN0aW9uIFtjb25maWddPVwic3JlZkFuY2hvckNvbmZpZ1wiPlxuICAgICAgICAgIDwhLS0gSW5qZWN0ZWQgaW4gY2hpbGQuIC0tPlxuICAgICAgICA8L2RieC1pbmplY3Rpb24+XG4gICAgICB9XG4gICAgICBAY2FzZSAoJ2hyZWYnKSB7XG4gICAgICAgIDxhIGNsYXNzPVwiZGJ4LWFuY2hvci1hIGRieC1hbmNob3ItaHJlZlwiIFtocmVmXT1cInVybFNpZ25hbCgpXCIgW2F0dHIudGFyZ2V0XT1cInRhcmdldFNpZ25hbCgpXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9hPlxuICAgICAgfVxuICAgICAgQGNhc2UgKCdkaXNhYmxlZCcpIHtcbiAgICAgICAgPGEgY2xhc3M9XCJkYngtYW5jaG9yLWEgZGJ4LWFuY2hvci1kaXNhYmxlZFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYT5cbiAgICAgIH1cbiAgICB9XG4gICAgPCEtLSBUZW1wbGF0ZSBjb250ZW50IC0tPlxuICAgIDxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldCwgTmdDbGFzcywgRGJ4SW5qZWN0aW9uQ29tcG9uZW50XSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZC1pbmxpbmUgZGJ4LWFuY2hvcicsXG4gICAgJ2RieC1hbmNob3ItYmxvY2snOiAnYmxvY2soKSdcbiAgfSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QW5jaG9yQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhBbmNob3JEaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9kYk5neFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnID0gaW5qZWN0KERieFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnKTtcblxuICByZWFkb25seSBibG9jayA9IGlucHV0PE1heWJlPGJvb2xlYW4+PigpO1xuXG4gIHJlYWRvbmx5IGNsaWNrYWJsZUVsZW1lbnQgPSB2aWV3Q2hpbGQ8c3RyaW5nLCBNYXliZTxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4+KCdjbGlja2FibGUnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG4gIHJlYWRvbmx5IGNoaWxkQ2xpY2tUYXJnZXQgPSB2aWV3Q2hpbGQ8c3RyaW5nLCBNYXliZTxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4+KCdjaGlsZENsaWNrVGFyZ2V0JywgeyByZWFkOiBFbGVtZW50UmVmIH0pO1xuXG4gIHJlYWRvbmx5IHRlbXBsYXRlUmVmID0gdmlld0NoaWxkPHN0cmluZywgTWF5YmU8VGVtcGxhdGVSZWY8dW5rbm93bj4+PignY29udGVudCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSk7XG4gIHJlYWRvbmx5IHRlbXBsYXRlUmVmJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnRlbXBsYXRlUmVmKS5waXBlKHNraXBBbGxJbml0aWFsTWF5YmUoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IHNlbGVjdGVkQ2xhc3NTaWduYWwgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5zZWxlY3RlZFNpZ25hbCgpID8gJ2RieC1hbmNob3Itc2VsZWN0ZWQnIDogJycpKTtcblxuICByZWFkb25seSBzcmVmQW5jaG9yQ29uZmlnOiBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcgPSB0aGlzLl9kYk5neFJvdXRlcldlYlByb3ZpZGVyQ29uZmlnLmFuY2hvclNlZ3VlUmVmQ29tcG9uZW50O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfb3ZlcnJpZGVDbGlja0VsZW1lbnRFZmZlY3QgPSBvdmVycmlkZUNsaWNrRWxlbWVudEVmZmVjdCh7XG4gICAgY2xpY2tUYXJnZXQ6IHRoaXMuY2xpY2thYmxlRWxlbWVudCxcbiAgICBjaGlsZENsaWNrVGFyZ2V0OiB0aGlzLmNoaWxkQ2xpY2tUYXJnZXQsXG4gICAgZGlzYWJsZWRTaWduYWw6IGNvbXB1dGVkKCgpID0+IHRoaXMudHlwZVNpZ25hbCgpICE9PSAnY2xpY2thYmxlJylcbiAgfSk7XG5cbiAgY2xpY2tBbmNob3IoZXZlbnQ/OiBNYXliZTxNb3VzZUV2ZW50Pik6IHZvaWQge1xuICAgIGNvbnNvbGUubG9nKCdjbGljayBhbmNob3InKTtcbiAgICB0aGlzLmFuY2hvcigpPy5vbkNsaWNrPy4oZXZlbnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gIG9uTW91c2VFbnRlcihldmVudD86IE1heWJlPE1vdXNlRXZlbnQ+KSB7XG4gICAgdGhpcy5hbmNob3IoKT8ub25Nb3VzZT8uKCdlbnRlcicsIGV2ZW50KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICBvbk1vdXNlTGVhdmUoZXZlbnQ/OiBNYXliZTxNb3VzZUV2ZW50Pikge1xuICAgIHRoaXMuYW5jaG9yKCk/Lm9uTW91c2U/LignbGVhdmUnLCBldmVudCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,16 +1,25 @@
1
- import { Component } from '@angular/core';
1
+ import { Component, computed, ElementRef, viewChild } from '@angular/core';
2
2
  import { AbstractDbxSegueAnchorDirective } from '../../layout/anchor/anchor.segue.directive';
3
3
  import { DbxInjectionComponent } from '@dereekb/dbx-core';
4
+ import { overrideClickElementEffect } from '../../../util/click';
4
5
  import * as i0 from "@angular/core";
5
6
  /**
6
7
  * SegueAnchor implementation for Angular Router.
7
8
  */
8
9
  export class DbxAngularRouterSegueAnchorComponent extends AbstractDbxSegueAnchorDirective {
10
+ anchorElement = viewChild.required('anchor', { read: ElementRef });
11
+ injectionElement = viewChild.required('injection', { read: ElementRef });
12
+ anchorDisabledSignal = computed(() => this.anchorSignal()?.disabled ?? false);
13
+ _overrideClickElementEffect = overrideClickElementEffect({
14
+ clickTarget: this.anchorElement,
15
+ childClickTarget: this.injectionElement,
16
+ disabledSignal: this.anchorDisabledSignal
17
+ });
9
18
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxAngularRouterSegueAnchorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
10
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxAngularRouterSegueAnchorComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<a class=\"dbx-anchor-a\" [attr.target]=\"targetSignal()\">\n <dbx-injection [template]=\"templateConfigSignal()\"></dbx-injection>\n</a>\n", dependencies: [{ kind: "component", type: DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }] });
19
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: DbxAngularRouterSegueAnchorComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "anchorElement", first: true, predicate: ["anchor"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "injectionElement", first: true, predicate: ["injection"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<a class=\"dbx-anchor-a\" #anchor [attr.target]=\"targetSignal()\">\n <dbx-injection #injection [template]=\"templateConfigSignal()\"></dbx-injection>\n</a>\n", dependencies: [{ kind: "component", type: DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }] });
11
20
  }
12
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxAngularRouterSegueAnchorComponent, decorators: [{
13
22
  type: Component,
14
- args: [{ imports: [DbxInjectionComponent], standalone: true, template: "<a class=\"dbx-anchor-a\" [attr.target]=\"targetSignal()\">\n <dbx-injection [template]=\"templateConfigSignal()\"></dbx-injection>\n</a>\n" }]
23
+ args: [{ imports: [DbxInjectionComponent], standalone: true, template: "<a class=\"dbx-anchor-a\" #anchor [attr.target]=\"targetSignal()\">\n <dbx-injection #injection [template]=\"templateConfigSignal()\"></dbx-injection>\n</a>\n" }]
15
24
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5jaG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvbmdyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvbmdyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDN0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRTFEOztHQUVHO0FBTUgsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLCtCQUErQjt3R0FBNUUsb0NBQW9DOzRGQUFwQyxvQ0FBb0MsK0ZDWmpELDhJQUdBLDRDRE1ZLHFCQUFxQjs7NEZBR3BCLG9DQUFvQztrQkFMaEQsU0FBUzs4QkFFQyxDQUFDLHFCQUFxQixDQUFDLGNBQ3BCLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4U2VndWVBbmNob3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9sYXlvdXQvYW5jaG9yL2FuY2hvci5zZWd1ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuXG4vKipcbiAqIFNlZ3VlQW5jaG9yIGltcGxlbWVudGF0aW9uIGZvciBBbmd1bGFyIFJvdXRlci5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9hbmNob3IuY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbRGJ4SW5qZWN0aW9uQ29tcG9uZW50XSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBbmd1bGFyUm91dGVyU2VndWVBbmNob3JDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdERieFNlZ3VlQW5jaG9yRGlyZWN0aXZlIHt9XG4iLCI8YSBjbGFzcz1cImRieC1hbmNob3ItYVwiIFthdHRyLnRhcmdldF09XCJ0YXJnZXRTaWduYWwoKVwiPlxuICA8ZGJ4LWluamVjdGlvbiBbdGVtcGxhdGVdPVwidGVtcGxhdGVDb25maWdTaWduYWwoKVwiPjwvZGJ4LWluamVjdGlvbj5cbjwvYT5cbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5jaG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvbmdyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvbmdyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDN0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRWpFOztHQUVHO0FBTUgsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLCtCQUErQjtJQUM5RSxhQUFhLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBa0MsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDcEcsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBa0MsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDMUcsb0JBQW9CLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLElBQUksS0FBSyxDQUFDLENBQUM7SUFFcEUsMkJBQTJCLEdBQUcsMEJBQTBCLENBQUM7UUFDMUUsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhO1FBQy9CLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7UUFDdkMsY0FBYyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7S0FDMUMsQ0FBQyxDQUFDO3dHQVRRLG9DQUFvQzs0RkFBcEMsb0NBQW9DLDRKQUNnRCxVQUFVLHdIQUNKLFVBQVUsb0VDZmpILGlLQUdBLDRDRE9ZLHFCQUFxQjs7NEZBR3BCLG9DQUFvQztrQkFMaEQsU0FBUzs4QkFFQyxDQUFDLHFCQUFxQixDQUFDLGNBQ3BCLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFbGVtZW50UmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0RGJ4U2VndWVBbmNob3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9sYXlvdXQvYW5jaG9yL2FuY2hvci5zZWd1ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgb3ZlcnJpZGVDbGlja0VsZW1lbnRFZmZlY3QgfSBmcm9tICcuLi8uLi8uLi91dGlsL2NsaWNrJztcblxuLyoqXG4gKiBTZWd1ZUFuY2hvciBpbXBsZW1lbnRhdGlvbiBmb3IgQW5ndWxhciBSb3V0ZXIuXG4gKi9cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vYW5jaG9yLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW0RieEluamVjdGlvbkNvbXBvbmVudF0sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QW5ndWxhclJvdXRlclNlZ3VlQW5jaG9yQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhTZWd1ZUFuY2hvckRpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IGFuY2hvckVsZW1lbnQgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8c3RyaW5nLCBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ2FuY2hvcicsIHsgcmVhZDogRWxlbWVudFJlZiB9KTtcbiAgcmVhZG9ubHkgaW5qZWN0aW9uRWxlbWVudCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxzdHJpbmcsIEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PignaW5qZWN0aW9uJywgeyByZWFkOiBFbGVtZW50UmVmIH0pO1xuICByZWFkb25seSBhbmNob3JEaXNhYmxlZFNpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuYW5jaG9yU2lnbmFsKCk/LmRpc2FibGVkID8/IGZhbHNlKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX292ZXJyaWRlQ2xpY2tFbGVtZW50RWZmZWN0ID0gb3ZlcnJpZGVDbGlja0VsZW1lbnRFZmZlY3Qoe1xuICAgIGNsaWNrVGFyZ2V0OiB0aGlzLmFuY2hvckVsZW1lbnQsXG4gICAgY2hpbGRDbGlja1RhcmdldDogdGhpcy5pbmplY3Rpb25FbGVtZW50LFxuICAgIGRpc2FibGVkU2lnbmFsOiB0aGlzLmFuY2hvckRpc2FibGVkU2lnbmFsXG4gIH0pO1xufVxuIiwiPGEgY2xhc3M9XCJkYngtYW5jaG9yLWFcIiAjYW5jaG9yIFthdHRyLnRhcmdldF09XCJ0YXJnZXRTaWduYWwoKVwiPlxuICA8ZGJ4LWluamVjdGlvbiAjaW5qZWN0aW9uIFt0ZW1wbGF0ZV09XCJ0ZW1wbGF0ZUNvbmZpZ1NpZ25hbCgpXCI+PC9kYngtaW5qZWN0aW9uPlxuPC9hPlxuIl19
@@ -1,71 +1,27 @@
1
- import { ChangeDetectionStrategy, Component, computed, effect, ElementRef, viewChild } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, computed, ElementRef, viewChild } from '@angular/core';
2
2
  import { AbstractDbxSegueAnchorDirective } from '../../layout/anchor/anchor.segue.directive';
3
3
  import { UIRouterModule } from '@uirouter/angular';
4
4
  import { DbxInjectionComponent } from '@dereekb/dbx-core';
5
5
  import { toSignal } from '@angular/core/rxjs-interop';
6
+ import { overrideClickElementEffect } from '../../../util/click';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@uirouter/angular";
8
9
  /**
9
10
  * SegueAnchor implementation for UIRouter.
10
11
  */
11
12
  export class DbxUIRouterSegueAnchorComponent extends AbstractDbxSegueAnchorDirective {
12
- _cleanupClickOverride = null;
13
13
  _parentAnchorSignal = toSignal(this.parent.anchor$, { initialValue: undefined });
14
14
  anchorElement = viewChild.required('anchor', { read: ElementRef });
15
15
  injectionElement = viewChild.required('injection', { read: ElementRef });
16
16
  anchorDisabledSignal = computed(() => this.anchorSignal()?.disabled ?? false);
17
- /**
18
- * This effect exists to solve the issue of an injected element that utilizes event.stopPropogation() and doesn't also call event.preventDefault().
19
- *
20
- * We didn't want to use css's pointer-events: none as that would disable the Angular Material button effects.
21
- *
22
- * For example, dbx-button would call event.stopPropagation() on click, which would prevent the uiSref from being triggered, but the default behavior
23
- * of the anchor element would still be triggered, causing the browser to load/reload the page at the given href instead of navigating to the new state using uiSref.
24
- *
25
- * NOTE: Those nested event listeners are still ultimately triggered.
26
- */
27
- _overrideClickElementEffect = effect(() => {
28
- const anchorElement = this.anchorElement();
29
- const injectionElement = this.injectionElement();
30
- const anchorDisabled = this.anchorDisabledSignal();
31
- if (injectionElement) {
32
- // cleanup/remove the previous/existing click function
33
- if (this._cleanupClickOverride) {
34
- this._cleanupClickOverride();
35
- }
36
- if (!anchorDisabled) {
37
- const clickOverride = (event) => {
38
- // Allow ctrl+click, cmd+click, shift+click, and middle-click for new tab/window
39
- // Don't preventDefault or stopPropagation - let browser handle it naturally
40
- if (event.ctrlKey || event.metaKey || event.shiftKey || event.button === 1) {
41
- return; // Browser will open in new tab/window
42
- }
43
- else {
44
- // otherwise, also trigger a click on the uiSref anchor element
45
- anchorElement?.nativeElement.click();
46
- // Prevents the default behavior of the anchor element's href from being triggered
47
- event.preventDefault();
48
- event.stopPropagation();
49
- }
50
- };
51
- this._cleanupClickOverride = () => {
52
- injectionElement.nativeElement.removeEventListener('click', clickOverride);
53
- delete this._cleanupClickOverride;
54
- };
55
- injectionElement.nativeElement.addEventListener('click', clickOverride, {
56
- capture: true // Use capture to ensure this event listener is called before any nested child's event listeners
57
- });
58
- }
59
- }
17
+ _overrideClickElementEffect = overrideClickElementEffect({
18
+ clickTarget: this.anchorElement,
19
+ childClickTarget: this.injectionElement,
20
+ disabledSignal: this.anchorDisabledSignal
60
21
  });
61
22
  uiSrefSignal = computed(() => (this._parentAnchorSignal()?.ref ?? ''));
62
23
  uiParamsSignal = computed(() => this._parentAnchorSignal()?.refParams);
63
24
  uiOptionsSignal = computed(() => this._parentAnchorSignal()?.refOptions ?? {});
64
- ngOnDestroy() {
65
- if (this._cleanupClickOverride) {
66
- this._cleanupClickOverride();
67
- }
68
- }
69
25
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxUIRouterSegueAnchorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
70
26
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: DbxUIRouterSegueAnchorComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "anchorElement", first: true, predicate: ["anchor"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "injectionElement", first: true, predicate: ["injection"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<a class=\"dbx-anchor-a dbx-anchor-sref\" #anchor [attr.target]=\"targetSignal()\" [uiSref]=\"uiSrefSignal()\" [uiParams]=\"uiParamsSignal()\" [uiOptions]=\"uiOptionsSignal()\" uiSrefActive=\"dbx-anchor-active\" uiSrefActiveEq=\"dbx-anchor-active-eq\">\n <dbx-injection #injection [template]=\"templateConfigSignal()\"></dbx-injection>\n</a>\n", dependencies: [{ kind: "ngmodule", type: UIRouterModule }, { kind: "directive", type: i1.UISref, selector: "[uiSref]", inputs: ["uiSref", "uiParams", "uiOptions"], exportAs: ["uiSref"] }, { kind: "directive", type: i1.AnchorUISref, selector: "a[uiSref]" }, { kind: "directive", type: i1.UISrefActive, selector: "[uiSrefActive],[uiSrefActiveEq]", inputs: ["uiSrefActive", "uiSrefActiveEq"] }, { kind: "component", type: DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
71
27
  }
@@ -73,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
73
29
  type: Component,
74
30
  args: [{ imports: [UIRouterModule, DbxInjectionComponent], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<a class=\"dbx-anchor-a dbx-anchor-sref\" #anchor [attr.target]=\"targetSignal()\" [uiSref]=\"uiSrefSignal()\" [uiParams]=\"uiParamsSignal()\" [uiOptions]=\"uiOptionsSignal()\" uiSrefActive=\"dbx-anchor-active\" uiSrefActiveEq=\"dbx-anchor-active-eq\">\n <dbx-injection #injection [template]=\"templateConfigSignal()\"></dbx-injection>\n</a>\n" }]
75
31
  }] });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5jaG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvdWlyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvdWlyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdGLE9BQU8sRUFBdUMsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFHdEQ7O0dBRUc7QUFPSCxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsK0JBQStCO0lBQzFFLHFCQUFxQixHQUFzQixJQUFJLENBQUM7SUFFdkMsbUJBQW1CLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFFekYsYUFBYSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQWtDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3BHLGdCQUFnQixHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQWtDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzFHLG9CQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBRXZGOzs7Ozs7Ozs7T0FTRztJQUNnQiwyQkFBMkIsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1FBQzNELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ2pELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBRW5ELElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUNyQixzREFBc0Q7WUFDdEQsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDL0IsQ0FBQztZQUVELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDcEIsTUFBTSxhQUFhLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEVBQUU7b0JBQzFDLGdGQUFnRjtvQkFDaEYsNEVBQTRFO29CQUM1RSxJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7d0JBQzNFLE9BQU8sQ0FBQyxzQ0FBc0M7b0JBQ2hELENBQUM7eUJBQU0sQ0FBQzt3QkFDTiwrREFBK0Q7d0JBQy9ELGFBQWEsRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7d0JBQ3JDLGtGQUFrRjt3QkFDbEYsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7b0JBQzFCLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDO2dCQUVGLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxHQUFHLEVBQUU7b0JBQ2hDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUM7b0JBQzNFLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO2dCQUNwQyxDQUFDLENBQUM7Z0JBRUYsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUU7b0JBQ3RFLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0dBQWdHO2lCQUMvRyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRU0sWUFBWSxHQUFHLFFBQVEsQ0FBYyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQWdCLENBQUMsQ0FBQztJQUNuRyxjQUFjLEdBQUcsUUFBUSxDQUFrQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN4RixlQUFlLEdBQUcsUUFBUSxDQUFvQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxVQUFVLElBQUssRUFBd0IsQ0FBQyxDQUFDO0lBRWxJLFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO3dHQWpFVSwrQkFBK0I7NEZBQS9CLCtCQUErQiw0SkFLcUQsVUFBVSx3SEFDSixVQUFVLG9FQ3RCakgsMFZBR0EsMkNEU1ksY0FBYyw0V0FBRSxxQkFBcUI7OzRGQUlwQywrQkFBK0I7a0JBTjNDLFNBQVM7OEJBRUMsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUMsbUJBQy9CLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdERieFNlZ3VlQW5jaG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vbGF5b3V0L2FuY2hvci9hbmNob3Iuc2VndWUuZGlyZWN0aXZlJztcbmltcG9ydCB7IE9iaiwgU3RhdGVPck5hbWUsIFRyYW5zaXRpb25PcHRpb25zLCBVSVJvdXRlck1vZHVsZSB9IGZyb20gJ0B1aXJvdXRlci9hbmd1bGFyJztcbmltcG9ydCB7IERieEluamVjdGlvbkNvbXBvbmVudCB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuLyoqXG4gKiBTZWd1ZUFuY2hvciBpbXBsZW1lbnRhdGlvbiBmb3IgVUlSb3V0ZXIuXG4gKi9cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vYW5jaG9yLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW1VJUm91dGVyTW9kdWxlLCBEYnhJbmplY3Rpb25Db21wb25lbnRdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhVSVJvdXRlclNlZ3VlQW5jaG9yQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhTZWd1ZUFuY2hvckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2NsZWFudXBDbGlja092ZXJyaWRlOiBNYXliZTwoKSA9PiB2b2lkPiA9IG51bGw7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcGFyZW50QW5jaG9yU2lnbmFsID0gdG9TaWduYWwodGhpcy5wYXJlbnQuYW5jaG9yJCwgeyBpbml0aWFsVmFsdWU6IHVuZGVmaW5lZCB9KTtcblxuICByZWFkb25seSBhbmNob3JFbGVtZW50ID0gdmlld0NoaWxkLnJlcXVpcmVkPHN0cmluZywgRWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdhbmNob3InLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG4gIHJlYWRvbmx5IGluamVjdGlvbkVsZW1lbnQgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8c3RyaW5nLCBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oJ2luamVjdGlvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KTtcbiAgcmVhZG9ubHkgYW5jaG9yRGlzYWJsZWRTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmFuY2hvclNpZ25hbCgpPy5kaXNhYmxlZCA/PyBmYWxzZSk7XG5cbiAgLyoqXG4gICAqIFRoaXMgZWZmZWN0IGV4aXN0cyB0byBzb2x2ZSB0aGUgaXNzdWUgb2YgYW4gaW5qZWN0ZWQgZWxlbWVudCB0aGF0IHV0aWxpemVzIGV2ZW50LnN0b3BQcm9wb2dhdGlvbigpIGFuZCBkb2Vzbid0IGFsc28gY2FsbCBldmVudC5wcmV2ZW50RGVmYXVsdCgpLlxuICAgKlxuICAgKiBXZSBkaWRuJ3Qgd2FudCB0byB1c2UgY3NzJ3MgcG9pbnRlci1ldmVudHM6IG5vbmUgYXMgdGhhdCB3b3VsZCBkaXNhYmxlIHRoZSBBbmd1bGFyIE1hdGVyaWFsIGJ1dHRvbiBlZmZlY3RzLlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgZGJ4LWJ1dHRvbiB3b3VsZCBjYWxsIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpIG9uIGNsaWNrLCB3aGljaCB3b3VsZCBwcmV2ZW50IHRoZSB1aVNyZWYgZnJvbSBiZWluZyB0cmlnZ2VyZWQsIGJ1dCB0aGUgZGVmYXVsdCBiZWhhdmlvclxuICAgKiBvZiB0aGUgYW5jaG9yIGVsZW1lbnQgd291bGQgc3RpbGwgYmUgdHJpZ2dlcmVkLCBjYXVzaW5nIHRoZSBicm93c2VyIHRvIGxvYWQvcmVsb2FkIHRoZSBwYWdlIGF0IHRoZSBnaXZlbiBocmVmIGluc3RlYWQgb2YgbmF2aWdhdGluZyB0byB0aGUgbmV3IHN0YXRlIHVzaW5nIHVpU3JlZi5cbiAgICpcbiAgICogTk9URTogVGhvc2UgbmVzdGVkIGV2ZW50IGxpc3RlbmVycyBhcmUgc3RpbGwgdWx0aW1hdGVseSB0cmlnZ2VyZWQuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX292ZXJyaWRlQ2xpY2tFbGVtZW50RWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhbmNob3JFbGVtZW50ID0gdGhpcy5hbmNob3JFbGVtZW50KCk7XG4gICAgY29uc3QgaW5qZWN0aW9uRWxlbWVudCA9IHRoaXMuaW5qZWN0aW9uRWxlbWVudCgpO1xuICAgIGNvbnN0IGFuY2hvckRpc2FibGVkID0gdGhpcy5hbmNob3JEaXNhYmxlZFNpZ25hbCgpO1xuXG4gICAgaWYgKGluamVjdGlvbkVsZW1lbnQpIHtcbiAgICAgIC8vIGNsZWFudXAvcmVtb3ZlIHRoZSBwcmV2aW91cy9leGlzdGluZyBjbGljayBmdW5jdGlvblxuICAgICAgaWYgKHRoaXMuX2NsZWFudXBDbGlja092ZXJyaWRlKSB7XG4gICAgICAgIHRoaXMuX2NsZWFudXBDbGlja092ZXJyaWRlKCk7XG4gICAgICB9XG5cbiAgICAgIGlmICghYW5jaG9yRGlzYWJsZWQpIHtcbiAgICAgICAgY29uc3QgY2xpY2tPdmVycmlkZSA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICAgIC8vIEFsbG93IGN0cmwrY2xpY2ssIGNtZCtjbGljaywgc2hpZnQrY2xpY2ssIGFuZCBtaWRkbGUtY2xpY2sgZm9yIG5ldyB0YWIvd2luZG93XG4gICAgICAgICAgLy8gRG9uJ3QgcHJldmVudERlZmF1bHQgb3Igc3RvcFByb3BhZ2F0aW9uIC0gbGV0IGJyb3dzZXIgaGFuZGxlIGl0IG5hdHVyYWxseVxuICAgICAgICAgIGlmIChldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgfHwgZXZlbnQuc2hpZnRLZXkgfHwgZXZlbnQuYnV0dG9uID09PSAxKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIEJyb3dzZXIgd2lsbCBvcGVuIGluIG5ldyB0YWIvd2luZG93XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIG90aGVyd2lzZSwgYWxzbyB0cmlnZ2VyIGEgY2xpY2sgb24gdGhlIHVpU3JlZiBhbmNob3IgZWxlbWVudFxuICAgICAgICAgICAgYW5jaG9yRWxlbWVudD8ubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICAgICAgICAgICAgLy8gUHJldmVudHMgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGFuY2hvciBlbGVtZW50J3MgaHJlZiBmcm9tIGJlaW5nIHRyaWdnZXJlZFxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLl9jbGVhbnVwQ2xpY2tPdmVycmlkZSA9ICgpID0+IHtcbiAgICAgICAgICBpbmplY3Rpb25FbGVtZW50Lm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjbGlja092ZXJyaWRlKTtcbiAgICAgICAgICBkZWxldGUgdGhpcy5fY2xlYW51cENsaWNrT3ZlcnJpZGU7XG4gICAgICAgIH07XG5cbiAgICAgICAgaW5qZWN0aW9uRWxlbWVudC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgY2xpY2tPdmVycmlkZSwge1xuICAgICAgICAgIGNhcHR1cmU6IHRydWUgLy8gVXNlIGNhcHR1cmUgdG8gZW5zdXJlIHRoaXMgZXZlbnQgbGlzdGVuZXIgaXMgY2FsbGVkIGJlZm9yZSBhbnkgbmVzdGVkIGNoaWxkJ3MgZXZlbnQgbGlzdGVuZXJzXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG5cbiAgcmVhZG9ubHkgdWlTcmVmU2lnbmFsID0gY29tcHV0ZWQ8U3RhdGVPck5hbWU+KCgpID0+ICh0aGlzLl9wYXJlbnRBbmNob3JTaWduYWwoKT8ucmVmID8/ICcnKSBhcyBTdGF0ZU9yTmFtZSk7XG4gIHJlYWRvbmx5IHVpUGFyYW1zU2lnbmFsID0gY29tcHV0ZWQ8T2JqIHwgdW5kZWZpbmVkPigoKSA9PiB0aGlzLl9wYXJlbnRBbmNob3JTaWduYWwoKT8ucmVmUGFyYW1zKTtcbiAgcmVhZG9ubHkgdWlPcHRpb25zU2lnbmFsID0gY29tcHV0ZWQ8VHJhbnNpdGlvbk9wdGlvbnM+KCgpID0+IHRoaXMuX3BhcmVudEFuY2hvclNpZ25hbCgpPy5yZWZPcHRpb25zID8/ICh7fSBhcyBUcmFuc2l0aW9uT3B0aW9ucykpO1xuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9jbGVhbnVwQ2xpY2tPdmVycmlkZSkge1xuICAgICAgdGhpcy5fY2xlYW51cENsaWNrT3ZlcnJpZGUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxhIGNsYXNzPVwiZGJ4LWFuY2hvci1hIGRieC1hbmNob3Itc3JlZlwiICNhbmNob3IgW2F0dHIudGFyZ2V0XT1cInRhcmdldFNpZ25hbCgpXCIgW3VpU3JlZl09XCJ1aVNyZWZTaWduYWwoKVwiIFt1aVBhcmFtc109XCJ1aVBhcmFtc1NpZ25hbCgpXCIgW3VpT3B0aW9uc109XCJ1aU9wdGlvbnNTaWduYWwoKVwiIHVpU3JlZkFjdGl2ZT1cImRieC1hbmNob3ItYWN0aXZlXCIgdWlTcmVmQWN0aXZlRXE9XCJkYngtYW5jaG9yLWFjdGl2ZS1lcVwiPlxuICA8ZGJ4LWluamVjdGlvbiAjaW5qZWN0aW9uIFt0ZW1wbGF0ZV09XCJ0ZW1wbGF0ZUNvbmZpZ1NpZ25hbCgpXCI+PC9kYngtaW5qZWN0aW9uPlxuPC9hPlxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5jaG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvdWlyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9yb3V0ZXIvcHJvdmlkZXIvdWlyb3V0ZXIvYW5jaG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDN0YsT0FBTyxFQUF1QyxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQUVqRTs7R0FFRztBQU9ILE1BQU0sT0FBTywrQkFBZ0MsU0FBUSwrQkFBK0I7SUFDakUsbUJBQW1CLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFFekYsYUFBYSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQWtDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3BHLGdCQUFnQixHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQWtDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzFHLG9CQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBRXBFLDJCQUEyQixHQUFHLDBCQUEwQixDQUFDO1FBQzFFLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYTtRQUMvQixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1FBQ3ZDLGNBQWMsRUFBRSxJQUFJLENBQUMsb0JBQW9CO0tBQzFDLENBQUMsQ0FBQztJQUVNLFlBQVksR0FBRyxRQUFRLENBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxHQUFHLElBQUksRUFBRSxDQUFnQixDQUFDLENBQUM7SUFDbkcsY0FBYyxHQUFHLFFBQVEsQ0FBa0IsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDeEYsZUFBZSxHQUFHLFFBQVEsQ0FBb0IsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsVUFBVSxJQUFLLEVBQXdCLENBQUMsQ0FBQzt3R0FmdkgsK0JBQStCOzRGQUEvQiwrQkFBK0IsNEpBR3FELFVBQVUsd0hBQ0osVUFBVSxvRUNwQmpILDBWQUdBLDJDRFNZLGNBQWMsNFdBQUUscUJBQXFCOzs0RkFJcEMsK0JBQStCO2tCQU4zQyxTQUFTOzhCQUVDLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDLG1CQUMvQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgRWxlbWVudFJlZiwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdERieFNlZ3VlQW5jaG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vbGF5b3V0L2FuY2hvci9hbmNob3Iuc2VndWUuZGlyZWN0aXZlJztcbmltcG9ydCB7IE9iaiwgU3RhdGVPck5hbWUsIFRyYW5zaXRpb25PcHRpb25zLCBVSVJvdXRlck1vZHVsZSB9IGZyb20gJ0B1aXJvdXRlci9hbmd1bGFyJztcbmltcG9ydCB7IERieEluamVjdGlvbkNvbXBvbmVudCB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgb3ZlcnJpZGVDbGlja0VsZW1lbnRFZmZlY3QgfSBmcm9tICcuLi8uLi8uLi91dGlsL2NsaWNrJztcblxuLyoqXG4gKiBTZWd1ZUFuY2hvciBpbXBsZW1lbnRhdGlvbiBmb3IgVUlSb3V0ZXIuXG4gKi9cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vYW5jaG9yLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW1VJUm91dGVyTW9kdWxlLCBEYnhJbmplY3Rpb25Db21wb25lbnRdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhVSVJvdXRlclNlZ3VlQW5jaG9yQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3REYnhTZWd1ZUFuY2hvckRpcmVjdGl2ZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3BhcmVudEFuY2hvclNpZ25hbCA9IHRvU2lnbmFsKHRoaXMucGFyZW50LmFuY2hvciQsIHsgaW5pdGlhbFZhbHVlOiB1bmRlZmluZWQgfSk7XG5cbiAgcmVhZG9ubHkgYW5jaG9yRWxlbWVudCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxzdHJpbmcsIEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PignYW5jaG9yJywgeyByZWFkOiBFbGVtZW50UmVmIH0pO1xuICByZWFkb25seSBpbmplY3Rpb25FbGVtZW50ID0gdmlld0NoaWxkLnJlcXVpcmVkPHN0cmluZywgRWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdpbmplY3Rpb24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG4gIHJlYWRvbmx5IGFuY2hvckRpc2FibGVkU2lnbmFsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5hbmNob3JTaWduYWwoKT8uZGlzYWJsZWQgPz8gZmFsc2UpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfb3ZlcnJpZGVDbGlja0VsZW1lbnRFZmZlY3QgPSBvdmVycmlkZUNsaWNrRWxlbWVudEVmZmVjdCh7XG4gICAgY2xpY2tUYXJnZXQ6IHRoaXMuYW5jaG9yRWxlbWVudCxcbiAgICBjaGlsZENsaWNrVGFyZ2V0OiB0aGlzLmluamVjdGlvbkVsZW1lbnQsXG4gICAgZGlzYWJsZWRTaWduYWw6IHRoaXMuYW5jaG9yRGlzYWJsZWRTaWduYWxcbiAgfSk7XG5cbiAgcmVhZG9ubHkgdWlTcmVmU2lnbmFsID0gY29tcHV0ZWQ8U3RhdGVPck5hbWU+KCgpID0+ICh0aGlzLl9wYXJlbnRBbmNob3JTaWduYWwoKT8ucmVmID8/ICcnKSBhcyBTdGF0ZU9yTmFtZSk7XG4gIHJlYWRvbmx5IHVpUGFyYW1zU2lnbmFsID0gY29tcHV0ZWQ8T2JqIHwgdW5kZWZpbmVkPigoKSA9PiB0aGlzLl9wYXJlbnRBbmNob3JTaWduYWwoKT8ucmVmUGFyYW1zKTtcbiAgcmVhZG9ubHkgdWlPcHRpb25zU2lnbmFsID0gY29tcHV0ZWQ8VHJhbnNpdGlvbk9wdGlvbnM+KCgpID0+IHRoaXMuX3BhcmVudEFuY2hvclNpZ25hbCgpPy5yZWZPcHRpb25zID8/ICh7fSBhcyBUcmFuc2l0aW9uT3B0aW9ucykpO1xufVxuIiwiPGEgY2xhc3M9XCJkYngtYW5jaG9yLWEgZGJ4LWFuY2hvci1zcmVmXCIgI2FuY2hvciBbYXR0ci50YXJnZXRdPVwidGFyZ2V0U2lnbmFsKClcIiBbdWlTcmVmXT1cInVpU3JlZlNpZ25hbCgpXCIgW3VpUGFyYW1zXT1cInVpUGFyYW1zU2lnbmFsKClcIiBbdWlPcHRpb25zXT1cInVpT3B0aW9uc1NpZ25hbCgpXCIgdWlTcmVmQWN0aXZlPVwiZGJ4LWFuY2hvci1hY3RpdmVcIiB1aVNyZWZBY3RpdmVFcT1cImRieC1hbmNob3ItYWN0aXZlLWVxXCI+XG4gIDxkYngtaW5qZWN0aW9uICNpbmplY3Rpb24gW3RlbXBsYXRlXT1cInRlbXBsYXRlQ29uZmlnU2lnbmFsKClcIj48L2RieC1pbmplY3Rpb24+XG48L2E+XG4iXX0=
@@ -2,7 +2,7 @@ import { DestroyRef, ElementRef, inject, signal } from '@angular/core';
2
2
  /**
3
3
  * Creates a new Signal that emits resize events.
4
4
  *
5
- * Must be created in an injectable context.
5
+ * Must called in an Angular injection context.
6
6
  *
7
7
  * @param inputElement The element to observe for resize events. If not provided, the host element will be injected.
8
8
  */
@@ -31,4 +31,4 @@ export function resizeSignal(inputElement) {
31
31
  });
32
32
  return resizeSignal;
33
33
  }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL3NjcmVlbi9yZXNpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFlLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQWFwRjs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLFlBQXNDO0lBQ2pFLE1BQU0sT0FBTyxHQUFHLFlBQVksSUFBSSxNQUFNLENBQUMsQ0FBQSxVQUF1QixDQUFBLENBQUMsQ0FBQztJQUVoRSxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdEMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFlO1FBQ3hDLE9BQU8sRUFBRSxPQUFPLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFO1FBQ3RELE9BQU8sRUFBRSxJQUFJO0tBQ2QsQ0FBQyxDQUFDO0lBRUgsSUFBSSxPQUF3QixDQUFDO0lBRTdCLE1BQU0sWUFBWSxHQUFHLENBQUMsT0FBOEIsRUFBRSxFQUFFO1FBQ3RELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzQixNQUFNLFlBQVksR0FBaUI7WUFDakMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1lBQzVCLE9BQU87WUFDUCxPQUFPLEVBQUUsQ0FBQyxPQUFPO1NBQ2xCLENBQUM7UUFFRixPQUFPLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUM5QixZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2pDLENBQUMsQ0FBQztJQUVGLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xELFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRXhDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ3hCLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBFbGVtZW50UmVmLCBpbmplY3QsIHR5cGUgU2lnbmFsLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBSZXNpemUgZXZlbnQgdXNlZCBieSByZXNpemVTaWduYWwuXG4gKlxuICogTWFpbnRhaW5zIHRoZSBzYW1lIHBhdHRlcm4gYXMgaHR0cHM6Ly9naXRodWIuY29tL05lbWVzTGFzemxvL2FuZ3VsYXItcmVzaXplLWV2ZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaXplZEV2ZW50IHtcbiAgcmVhZG9ubHkgbmV3UmVjdDogRE9NUmVjdFJlYWRPbmx5O1xuICByZWFkb25seSBvbGRSZWN0PzogRE9NUmVjdFJlYWRPbmx5O1xuICByZWFkb25seSBpc0ZpcnN0OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcgU2lnbmFsIHRoYXQgZW1pdHMgcmVzaXplIGV2ZW50cy5cbiAqXG4gKiBNdXN0IGJlIGNyZWF0ZWQgaW4gYW4gaW5qZWN0YWJsZSBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSBpbnB1dEVsZW1lbnQgVGhlIGVsZW1lbnQgdG8gb2JzZXJ2ZSBmb3IgcmVzaXplIGV2ZW50cy4gSWYgbm90IHByb3ZpZGVkLCB0aGUgaG9zdCBlbGVtZW50IHdpbGwgYmUgaW5qZWN0ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNpemVTaWduYWwoaW5wdXRFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pOiBTaWduYWw8UmVzaXplZEV2ZW50PiB7XG4gIGNvbnN0IGVsZW1lbnQgPSBpbnB1dEVsZW1lbnQgPz8gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcblxuICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICBjb25zdCByZXNpemVTaWduYWwgPSBzaWduYWw8UmVzaXplZEV2ZW50Pih7XG4gICAgbmV3UmVjdDogZWxlbWVudC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgIGlzRmlyc3Q6IHRydWVcbiAgfSk7XG5cbiAgbGV0IG9sZFJlY3Q6IERPTVJlY3RSZWFkT25seTtcblxuICBjb25zdCBvYnNlcnZlRXZlbnQgPSAoZW50cmllczogUmVzaXplT2JzZXJ2ZXJFbnRyeVtdKSA9PiB7XG4gICAgY29uc3QgZG9tU2l6ZSA9IGVudHJpZXNbMF07XG4gICAgY29uc3QgcmVzaXplZEV2ZW50OiBSZXNpemVkRXZlbnQgPSB7XG4gICAgICBuZXdSZWN0OiBkb21TaXplLmNvbnRlbnRSZWN0LFxuICAgICAgb2xkUmVjdCxcbiAgICAgIGlzRmlyc3Q6ICFvbGRSZWN0XG4gICAgfTtcblxuICAgIG9sZFJlY3QgPSBkb21TaXplLmNvbnRlbnRSZWN0O1xuICAgIHJlc2l6ZVNpZ25hbC5zZXQocmVzaXplZEV2ZW50KTtcbiAgfTtcblxuICBjb25zdCBvYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcihvYnNlcnZlRXZlbnQpO1xuICBvYnNlcnZlci5vYnNlcnZlKGVsZW1lbnQubmF0aXZlRWxlbWVudCk7XG5cbiAgZGVzdHJveVJlZi5vbkRlc3Ryb3koKCkgPT4ge1xuICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgfSk7XG5cbiAgcmV0dXJuIHJlc2l6ZVNpZ25hbDtcbn1cbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL3NjcmVlbi9yZXNpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFlLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQWFwRjs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLFlBQXNDO0lBQ2pFLE1BQU0sT0FBTyxHQUFHLFlBQVksSUFBSSxNQUFNLENBQUMsQ0FBQSxVQUF1QixDQUFBLENBQUMsQ0FBQztJQUVoRSxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdEMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFlO1FBQ3hDLE9BQU8sRUFBRSxPQUFPLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFO1FBQ3RELE9BQU8sRUFBRSxJQUFJO0tBQ2QsQ0FBQyxDQUFDO0lBRUgsSUFBSSxPQUF3QixDQUFDO0lBRTdCLE1BQU0sWUFBWSxHQUFHLENBQUMsT0FBOEIsRUFBRSxFQUFFO1FBQ3RELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzQixNQUFNLFlBQVksR0FBaUI7WUFDakMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1lBQzVCLE9BQU87WUFDUCxPQUFPLEVBQUUsQ0FBQyxPQUFPO1NBQ2xCLENBQUM7UUFFRixPQUFPLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUM5QixZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2pDLENBQUMsQ0FBQztJQUVGLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xELFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRXhDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ3hCLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBFbGVtZW50UmVmLCBpbmplY3QsIHR5cGUgU2lnbmFsLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBSZXNpemUgZXZlbnQgdXNlZCBieSByZXNpemVTaWduYWwuXG4gKlxuICogTWFpbnRhaW5zIHRoZSBzYW1lIHBhdHRlcm4gYXMgaHR0cHM6Ly9naXRodWIuY29tL05lbWVzTGFzemxvL2FuZ3VsYXItcmVzaXplLWV2ZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzaXplZEV2ZW50IHtcbiAgcmVhZG9ubHkgbmV3UmVjdDogRE9NUmVjdFJlYWRPbmx5O1xuICByZWFkb25seSBvbGRSZWN0PzogRE9NUmVjdFJlYWRPbmx5O1xuICByZWFkb25seSBpc0ZpcnN0OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBuZXcgU2lnbmFsIHRoYXQgZW1pdHMgcmVzaXplIGV2ZW50cy5cbiAqXG4gKiBNdXN0IGNhbGxlZCBpbiBhbiBBbmd1bGFyIGluamVjdGlvbiBjb250ZXh0LlxuICpcbiAqIEBwYXJhbSBpbnB1dEVsZW1lbnQgVGhlIGVsZW1lbnQgdG8gb2JzZXJ2ZSBmb3IgcmVzaXplIGV2ZW50cy4gSWYgbm90IHByb3ZpZGVkLCB0aGUgaG9zdCBlbGVtZW50IHdpbGwgYmUgaW5qZWN0ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNpemVTaWduYWwoaW5wdXRFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pOiBTaWduYWw8UmVzaXplZEV2ZW50PiB7XG4gIGNvbnN0IGVsZW1lbnQgPSBpbnB1dEVsZW1lbnQgPz8gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcblxuICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICBjb25zdCByZXNpemVTaWduYWwgPSBzaWduYWw8UmVzaXplZEV2ZW50Pih7XG4gICAgbmV3UmVjdDogZWxlbWVudC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgIGlzRmlyc3Q6IHRydWVcbiAgfSk7XG5cbiAgbGV0IG9sZFJlY3Q6IERPTVJlY3RSZWFkT25seTtcblxuICBjb25zdCBvYnNlcnZlRXZlbnQgPSAoZW50cmllczogUmVzaXplT2JzZXJ2ZXJFbnRyeVtdKSA9PiB7XG4gICAgY29uc3QgZG9tU2l6ZSA9IGVudHJpZXNbMF07XG4gICAgY29uc3QgcmVzaXplZEV2ZW50OiBSZXNpemVkRXZlbnQgPSB7XG4gICAgICBuZXdSZWN0OiBkb21TaXplLmNvbnRlbnRSZWN0LFxuICAgICAgb2xkUmVjdCxcbiAgICAgIGlzRmlyc3Q6ICFvbGRSZWN0XG4gICAgfTtcblxuICAgIG9sZFJlY3QgPSBkb21TaXplLmNvbnRlbnRSZWN0O1xuICAgIHJlc2l6ZVNpZ25hbC5zZXQocmVzaXplZEV2ZW50KTtcbiAgfTtcblxuICBjb25zdCBvYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcihvYnNlcnZlRXZlbnQpO1xuICBvYnNlcnZlci5vYnNlcnZlKGVsZW1lbnQubmF0aXZlRWxlbWVudCk7XG5cbiAgZGVzdHJveVJlZi5vbkRlc3Ryb3koKCkgPT4ge1xuICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgfSk7XG5cbiAgcmV0dXJuIHJlc2l6ZVNpZ25hbDtcbn1cbiJdfQ==
@@ -0,0 +1,56 @@
1
+ import { DestroyRef, effect, inject } from '@angular/core';
2
+ /**
3
+ * This effect exists to solve the issue of an injected element that utilizes event.stopPropogation() and doesn't also call event.preventDefault().
4
+ *
5
+ * We didn't want to use css's pointer-events: none as that would disable the Angular Material button effects.
6
+ *
7
+ * For example, dbx-button would call event.stopPropagation() on click, which would prevent the uiSref from being triggered, but the default behavior
8
+ * of the anchor element would still be triggered, causing the browser to load/reload the page at the given href instead of navigating to the new state using uiSref.
9
+ *
10
+ * NOTE: Those nested event listeners are still ultimately triggered.
11
+ *
12
+ * Must be run in an Angular injection context.
13
+ */
14
+ export function overrideClickElementEffect(config) {
15
+ const { clickTarget, childClickTarget, disabledSignal } = config;
16
+ const destroyRef = inject(DestroyRef);
17
+ let _cleanupClickOverride;
18
+ destroyRef.onDestroy(() => {
19
+ _cleanupClickOverride?.();
20
+ });
21
+ return effect(() => {
22
+ const clickTargetElement = clickTarget?.();
23
+ const childClickElement = childClickTarget();
24
+ const anchorDisabled = disabledSignal?.() ?? false;
25
+ // cleanup/remove the previous/existing click function
26
+ if (_cleanupClickOverride) {
27
+ _cleanupClickOverride();
28
+ }
29
+ if (childClickElement) {
30
+ if (!anchorDisabled) {
31
+ const clickOverride = (event) => {
32
+ // Allow ctrl+click, cmd+click, shift+click, and middle-click for new tab/window
33
+ // Don't preventDefault or stopPropagation - let browser handle it naturally
34
+ if (event.ctrlKey || event.metaKey || event.shiftKey || event.button === 1) {
35
+ return; // Browser will open in new tab/window
36
+ }
37
+ else {
38
+ // otherwise, also trigger a click on the uiSref anchor element
39
+ clickTargetElement?.nativeElement.click();
40
+ // Prevents the default behavior of the anchor element's href from being triggered
41
+ event.preventDefault();
42
+ event.stopPropagation();
43
+ }
44
+ };
45
+ _cleanupClickOverride = () => {
46
+ childClickElement.nativeElement.removeEventListener('click', clickOverride);
47
+ _cleanupClickOverride = null;
48
+ };
49
+ childClickElement.nativeElement.addEventListener('click', clickOverride, {
50
+ capture: true // Use capture to ensure this event listener is called before any nested child's event listeners
51
+ });
52
+ }
53
+ }
54
+ });
55
+ }
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvdXRpbC9jbGljay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBbUIsTUFBTSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBa0J6Rjs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxNQUF3QztJQUNqRixNQUFNLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUVqRSxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFdEMsSUFBSSxxQkFBd0MsQ0FBQztJQUU3QyxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUN4QixxQkFBcUIsRUFBRSxFQUFFLENBQUM7SUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLE1BQU0sQ0FBQyxHQUFHLEVBQUU7UUFDakIsTUFBTSxrQkFBa0IsR0FBRyxXQUFXLEVBQUUsRUFBRSxDQUFDO1FBQzNDLE1BQU0saUJBQWlCLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUM3QyxNQUFNLGNBQWMsR0FBRyxjQUFjLEVBQUUsRUFBRSxJQUFJLEtBQUssQ0FBQztRQUVuRCxzREFBc0Q7UUFDdEQsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1lBQzFCLHFCQUFxQixFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUVELElBQUksaUJBQWlCLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sYUFBYSxHQUFHLENBQUMsS0FBaUIsRUFBRSxFQUFFO29CQUMxQyxnRkFBZ0Y7b0JBQ2hGLDRFQUE0RTtvQkFDNUUsSUFBSSxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO3dCQUMzRSxPQUFPLENBQUMsc0NBQXNDO29CQUNoRCxDQUFDO3lCQUFNLENBQUM7d0JBQ04sK0RBQStEO3dCQUMvRCxrQkFBa0IsRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7d0JBQzFDLGtGQUFrRjt3QkFDbEYsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7b0JBQzFCLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDO2dCQUVGLHFCQUFxQixHQUFHLEdBQUcsRUFBRTtvQkFDM0IsaUJBQWlCLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztvQkFDNUUscUJBQXFCLEdBQUcsSUFBSSxDQUFDO2dCQUMvQixDQUFDLENBQUM7Z0JBRUYsaUJBQWlCLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUU7b0JBQ3ZFLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0dBQWdHO2lCQUMvRyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc3Ryb3lSZWYsIGVmZmVjdCwgdHlwZSBFbGVtZW50UmVmLCBpbmplY3QsIHR5cGUgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3ZlcnJpZGVDbGlja0VsZW1lbnRFZmZlY3RDb25maWcge1xuICAvKipcbiAgICogVGFyZ2V0IHRvIHRyYW5zZmVyIFwiY2xpY2tcIiBldmVudHMgdG8uXG4gICAqL1xuICByZWFkb25seSBjbGlja1RhcmdldD86IE1heWJlPFNpZ25hbDxNYXliZTxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4+PjtcbiAgLyoqXG4gICAqIFRoZSBjaGlsZCB0YXJnZXQgdG8gd2F0Y2ggYW5kIG92ZXJyaWRlIGNsaWNrcyBmb3IuXG4gICAqL1xuICByZWFkb25seSBjaGlsZENsaWNrVGFyZ2V0OiBTaWduYWw8TWF5YmU8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+PjtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHNpZ25hbCB0byBkaXNhYmxlIHRoZSBjbGlja2luZyBvdmVycmlkZS5cbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVkU2lnbmFsPzogTWF5YmU8U2lnbmFsPGJvb2xlYW4+Pjtcbn1cblxuLyoqXG4gKiBUaGlzIGVmZmVjdCBleGlzdHMgdG8gc29sdmUgdGhlIGlzc3VlIG9mIGFuIGluamVjdGVkIGVsZW1lbnQgdGhhdCB1dGlsaXplcyBldmVudC5zdG9wUHJvcG9nYXRpb24oKSBhbmQgZG9lc24ndCBhbHNvIGNhbGwgZXZlbnQucHJldmVudERlZmF1bHQoKS5cbiAqXG4gKiBXZSBkaWRuJ3Qgd2FudCB0byB1c2UgY3NzJ3MgcG9pbnRlci1ldmVudHM6IG5vbmUgYXMgdGhhdCB3b3VsZCBkaXNhYmxlIHRoZSBBbmd1bGFyIE1hdGVyaWFsIGJ1dHRvbiBlZmZlY3RzLlxuICpcbiAqIEZvciBleGFtcGxlLCBkYngtYnV0dG9uIHdvdWxkIGNhbGwgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCkgb24gY2xpY2ssIHdoaWNoIHdvdWxkIHByZXZlbnQgdGhlIHVpU3JlZiBmcm9tIGJlaW5nIHRyaWdnZXJlZCwgYnV0IHRoZSBkZWZhdWx0IGJlaGF2aW9yXG4gKiBvZiB0aGUgYW5jaG9yIGVsZW1lbnQgd291bGQgc3RpbGwgYmUgdHJpZ2dlcmVkLCBjYXVzaW5nIHRoZSBicm93c2VyIHRvIGxvYWQvcmVsb2FkIHRoZSBwYWdlIGF0IHRoZSBnaXZlbiBocmVmIGluc3RlYWQgb2YgbmF2aWdhdGluZyB0byB0aGUgbmV3IHN0YXRlIHVzaW5nIHVpU3JlZi5cbiAqXG4gKiBOT1RFOiBUaG9zZSBuZXN0ZWQgZXZlbnQgbGlzdGVuZXJzIGFyZSBzdGlsbCB1bHRpbWF0ZWx5IHRyaWdnZXJlZC5cbiAqXG4gKiBNdXN0IGJlIHJ1biBpbiBhbiBBbmd1bGFyIGluamVjdGlvbiBjb250ZXh0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gb3ZlcnJpZGVDbGlja0VsZW1lbnRFZmZlY3QoY29uZmlnOiBPdmVycmlkZUNsaWNrRWxlbWVudEVmZmVjdENvbmZpZykge1xuICBjb25zdCB7IGNsaWNrVGFyZ2V0LCBjaGlsZENsaWNrVGFyZ2V0LCBkaXNhYmxlZFNpZ25hbCB9ID0gY29uZmlnO1xuXG4gIGNvbnN0IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgbGV0IF9jbGVhbnVwQ2xpY2tPdmVycmlkZTogTWF5YmU8KCkgPT4gdm9pZD47XG5cbiAgZGVzdHJveVJlZi5vbkRlc3Ryb3koKCkgPT4ge1xuICAgIF9jbGVhbnVwQ2xpY2tPdmVycmlkZT8uKCk7XG4gIH0pO1xuXG4gIHJldHVybiBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGNsaWNrVGFyZ2V0RWxlbWVudCA9IGNsaWNrVGFyZ2V0Py4oKTtcbiAgICBjb25zdCBjaGlsZENsaWNrRWxlbWVudCA9IGNoaWxkQ2xpY2tUYXJnZXQoKTtcbiAgICBjb25zdCBhbmNob3JEaXNhYmxlZCA9IGRpc2FibGVkU2lnbmFsPy4oKSA/PyBmYWxzZTtcblxuICAgIC8vIGNsZWFudXAvcmVtb3ZlIHRoZSBwcmV2aW91cy9leGlzdGluZyBjbGljayBmdW5jdGlvblxuICAgIGlmIChfY2xlYW51cENsaWNrT3ZlcnJpZGUpIHtcbiAgICAgIF9jbGVhbnVwQ2xpY2tPdmVycmlkZSgpO1xuICAgIH1cblxuICAgIGlmIChjaGlsZENsaWNrRWxlbWVudCkge1xuICAgICAgaWYgKCFhbmNob3JEaXNhYmxlZCkge1xuICAgICAgICBjb25zdCBjbGlja092ZXJyaWRlID0gKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgICAgLy8gQWxsb3cgY3RybCtjbGljaywgY21kK2NsaWNrLCBzaGlmdCtjbGljaywgYW5kIG1pZGRsZS1jbGljayBmb3IgbmV3IHRhYi93aW5kb3dcbiAgICAgICAgICAvLyBEb24ndCBwcmV2ZW50RGVmYXVsdCBvciBzdG9wUHJvcGFnYXRpb24gLSBsZXQgYnJvd3NlciBoYW5kbGUgaXQgbmF0dXJhbGx5XG4gICAgICAgICAgaWYgKGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSB8fCBldmVudC5zaGlmdEtleSB8fCBldmVudC5idXR0b24gPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybjsgLy8gQnJvd3NlciB3aWxsIG9wZW4gaW4gbmV3IHRhYi93aW5kb3dcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gb3RoZXJ3aXNlLCBhbHNvIHRyaWdnZXIgYSBjbGljayBvbiB0aGUgdWlTcmVmIGFuY2hvciBlbGVtZW50XG4gICAgICAgICAgICBjbGlja1RhcmdldEVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICAgICAgICAgIC8vIFByZXZlbnRzIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBhbmNob3IgZWxlbWVudCdzIGhyZWYgZnJvbSBiZWluZyB0cmlnZ2VyZWRcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgX2NsZWFudXBDbGlja092ZXJyaWRlID0gKCkgPT4ge1xuICAgICAgICAgIGNoaWxkQ2xpY2tFbGVtZW50Lm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjbGlja092ZXJyaWRlKTtcbiAgICAgICAgICBfY2xlYW51cENsaWNrT3ZlcnJpZGUgPSBudWxsO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNoaWxkQ2xpY2tFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjbGlja092ZXJyaWRlLCB7XG4gICAgICAgICAgY2FwdHVyZTogdHJ1ZSAvLyBVc2UgY2FwdHVyZSB0byBlbnN1cmUgdGhpcyBldmVudCBsaXN0ZW5lciBpcyBjYWxsZWQgYmVmb3JlIGFueSBuZXN0ZWQgY2hpbGQncyBldmVudCBsaXN0ZW5lcnNcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
@@ -1,4 +1,5 @@
1
1
  export * from './cdk';
2
2
  export * from './clipboard';
3
3
  export * from './clipboard.directive';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvdXRpbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jZGsnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGlwYm9hcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGlwYm9hcmQuZGlyZWN0aXZlJztcbiJdfQ==
4
+ export * from './click';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvdXRpbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jZGsnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGlwYm9hcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGlwYm9hcmQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpY2snO1xuIl19