@ethlete/cdk 3.20.1 → 3.22.0

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 (71) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/esm2022/lib/components/forms/components/select/components/combobox/components/combobox/combobox.component.mjs +9 -5
  3. package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.mjs +33 -7
  4. package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-body/combobox-body.component.mjs +3 -3
  5. package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-option/combobox-option.component.mjs +3 -4
  6. package/esm2022/lib/components/forms/components/select/components/combobox/private/combobox.private.types.mjs +1 -1
  7. package/esm2022/lib/components/forms/components/select/components/combobox/utils/public-api.mjs +1 -2
  8. package/esm2022/lib/components/forms/components/select/components/select/components/select/select.component.mjs +3 -3
  9. package/esm2022/lib/components/forms/components/select/components/select/directives/select/select.directive.mjs +144 -312
  10. package/esm2022/lib/components/forms/components/select/components/select/directives/select-body/select-body.directive.mjs +4 -3
  11. package/esm2022/lib/components/forms/components/select/components/select/directives/select-option/select-option.directive.mjs +15 -40
  12. package/esm2022/lib/components/forms/components/select/components/select/partials/select-body/select-body.component.mjs +8 -5
  13. package/esm2022/lib/components/forms/components/select/components/{combobox/utils → select/private}/index.mjs +2 -2
  14. package/esm2022/lib/components/forms/components/select/components/select/private/select.private.types.mjs +2 -0
  15. package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-container-base/bottom-sheet-container-base.component.mjs +4 -4
  16. package/esm2022/lib/components/overlay/components/dialog/partials/dialog-container-base/dialog-container-base.component.mjs +4 -4
  17. package/esm2022/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.mjs +6 -4
  18. package/esm2022/lib/components/overlay/components/overlay/services/overlay.service.mjs +10 -3
  19. package/esm2022/lib/components/overlay/components/overlay/utils/overlay-ref.mjs +35 -6
  20. package/esm2022/lib/components/overlay/components/toggletip/directives/toggletip/toggletip.directive.mjs +5 -3
  21. package/esm2022/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.mjs +5 -3
  22. package/esm2022/lib/components/overlay/directives/overlay-close-auto-blocker/index.mjs +2 -0
  23. package/esm2022/lib/components/overlay/directives/overlay-close-auto-blocker/overlay-close-auto-blocker.directive.mjs +51 -0
  24. package/esm2022/lib/components/overlay/directives/overlay-close-auto-blocker/public-api.mjs +2 -0
  25. package/esm2022/lib/components/overlay/directives/public-api.mjs +2 -1
  26. package/esm2022/lib/components/overlay/public-api.mjs +2 -1
  27. package/esm2022/lib/components/overlay/utils/overlay-dismiss-checker.util.mjs +79 -0
  28. package/esm2022/lib/components/overlay/utils/public-api.mjs +2 -0
  29. package/esm2022/lib/components/picture/picture-data.directive.mjs +1 -1
  30. package/esm2022/lib/components/picture/picture.component.mjs +6 -8
  31. package/esm2022/lib/components/picture/picture.component.types.mjs +1 -1
  32. package/esm2022/lib/components/picture/pipes/index.mjs +2 -0
  33. package/esm2022/lib/components/picture/pipes/normalize-source/index.mjs +2 -0
  34. package/esm2022/lib/components/picture/pipes/normalize-source/normalize-source.pipe.mjs +18 -0
  35. package/esm2022/lib/components/picture/pipes/normalize-source/normalize-source.util.mjs +11 -0
  36. package/fesm2022/ethlete-cdk.mjs +425 -415
  37. package/fesm2022/ethlete-cdk.mjs.map +1 -1
  38. package/lib/components/forms/components/select/components/combobox/components/combobox/combobox.component.d.ts +4 -3
  39. package/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.d.ts +4 -1
  40. package/lib/components/forms/components/select/components/combobox/partials/combobox-option/combobox-option.component.d.ts +1 -1
  41. package/lib/components/forms/components/select/components/combobox/private/combobox.private.types.d.ts +1 -1
  42. package/lib/components/forms/components/select/components/combobox/utils/public-api.d.ts +0 -1
  43. package/lib/components/forms/components/select/components/select/directives/select/select.directive.d.ts +16 -53
  44. package/lib/components/forms/components/select/components/select/directives/select-body/select-body.directive.d.ts +2 -1
  45. package/lib/components/forms/components/select/components/select/directives/select-option/select-option.directive.d.ts +7 -9
  46. package/lib/components/forms/components/select/components/select/partials/select-body/select-body.component.d.ts +2 -1
  47. package/lib/components/forms/components/select/components/select/private/index.d.ts +1 -0
  48. package/lib/components/forms/components/select/components/select/private/select.private.types.d.ts +13 -0
  49. package/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-container-base/bottom-sheet-container-base.component.d.ts +1 -1
  50. package/lib/components/overlay/components/dialog/partials/dialog-container-base/dialog-container-base.component.d.ts +1 -1
  51. package/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.d.ts +5 -3
  52. package/lib/components/overlay/components/overlay/utils/overlay-ref.d.ts +12 -3
  53. package/lib/components/overlay/components/toggletip/directives/toggletip/toggletip.directive.d.ts +2 -1
  54. package/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.d.ts +2 -1
  55. package/lib/components/overlay/directives/overlay-close-auto-blocker/overlay-close-auto-blocker.directive.d.ts +12 -0
  56. package/lib/components/overlay/directives/overlay-close-auto-blocker/public-api.d.ts +1 -0
  57. package/lib/components/overlay/directives/public-api.d.ts +1 -0
  58. package/lib/components/overlay/public-api.d.ts +1 -0
  59. package/lib/components/overlay/utils/overlay-dismiss-checker.util.d.ts +60 -0
  60. package/lib/components/overlay/utils/public-api.d.ts +1 -0
  61. package/lib/components/picture/picture-data.directive.d.ts +1 -1
  62. package/lib/components/picture/picture.component.d.ts +1 -1
  63. package/lib/components/picture/picture.component.types.d.ts +1 -1
  64. package/lib/components/picture/pipes/index.d.ts +1 -0
  65. package/lib/components/picture/pipes/normalize-source/index.d.ts +1 -0
  66. package/lib/components/picture/pipes/normalize-source/normalize-source.pipe.d.ts +7 -0
  67. package/lib/components/picture/pipes/normalize-source/normalize-source.util.d.ts +2 -0
  68. package/package.json +2 -2
  69. package/esm2022/lib/components/forms/components/select/components/combobox/utils/option.utils.mjs +0 -7
  70. package/lib/components/forms/components/select/components/combobox/utils/option.utils.d.ts +0 -1
  71. /package/lib/components/{forms/components/select/components/combobox/utils → overlay/directives/overlay-close-auto-blocker}/index.d.ts +0 -0
@@ -1,4 +1,4 @@
1
- import { Directive, InjectionToken, inject } from '@angular/core';
1
+ import { Directive, ElementRef, InjectionToken, inject } from '@angular/core';
2
2
  import { toSignal } from '@angular/core/rxjs-interop';
3
3
  import { ClickOutsideDirective, createDestroy, signalHostAttributes } from '@ethlete/core';
4
4
  import { takeUntil, tap } from 'rxjs';
@@ -10,6 +10,7 @@ let uniqueId = 0;
10
10
  export class SelectBodyDirective {
11
11
  constructor() {
12
12
  this._destroy$ = createDestroy();
13
+ this._elementRef = inject(ElementRef);
13
14
  this._select = inject(SELECT_TOKEN);
14
15
  this._clickOutside = inject(ClickOutsideDirective);
15
16
  this.id = `et-select-body-${uniqueId++}`;
@@ -20,7 +21,7 @@ export class SelectBodyDirective {
20
21
  }
21
22
  ngOnInit() {
22
23
  this._clickOutside.etClickOutside
23
- .pipe(takeUntil(this._destroy$), tap(() => this._select.unmountSelectBody()))
24
+ .pipe(takeUntil(this._destroy$), tap(() => this._select.close()))
24
25
  .subscribe();
25
26
  }
26
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: SelectBodyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -49,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
49
50
  hostDirectives: [ClickOutsideDirective],
50
51
  }]
51
52
  }] });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJvZHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvc2VsZWN0L2NvbXBvbmVudHMvc2VsZWN0L2RpcmVjdGl2ZXMvc2VsZWN0LWJvZHkvc2VsZWN0LWJvZHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDOzs7QUFFekMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQXNCLHNCQUFzQixDQUFDLENBQUM7QUFFakcsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBaUJqQixNQUFNLE9BQU8sbUJBQW1CO0lBZmhDO1FBZ0JtQixjQUFTLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFFNUIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQixrQkFBYSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRXRELE9BQUUsR0FBRyxrQkFBa0IsUUFBUSxFQUFFLEVBQUUsQ0FBQztRQUVwQywwQkFBcUIsR0FBRyxvQkFBb0IsQ0FBQztZQUNwRCxzQkFBc0IsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7WUFDeEQsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztTQUN6RCxDQUFDLENBQUM7S0FVSjtJQVJDLFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWM7YUFDOUIsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQ3pCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FDNUM7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDOzhHQXBCVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixpSUFibkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsbUJBQW1CO2FBQ2pDO1NBQ0Y7OzJGQVFVLG1CQUFtQjtrQkFmL0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcscUJBQXFCO3lCQUNqQztxQkFDRjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osV0FBVyxFQUFFLElBQUk7d0JBQ2pCLFFBQVEsRUFBRSxJQUFJO3dCQUNkLElBQUksRUFBRSxTQUFTO3FCQUNoQjtvQkFDRCxjQUFjLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztpQkFDeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdGlvblRva2VuLCBPbkluaXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDbGlja091dHNpZGVEaXJlY3RpdmUsIGNyZWF0ZURlc3Ryb3ksIHNpZ25hbEhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU0VMRUNUX1RPS0VOIH0gZnJvbSAnLi4vc2VsZWN0JztcblxuZXhwb3J0IGNvbnN0IFNFTEVDVF9CT0RZX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPFNlbGVjdEJvZHlEaXJlY3RpdmU+KCdFVF9TRUxFQ1RfQk9EWV9UT0tFTicpO1xuXG5sZXQgdW5pcXVlSWQgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogU0VMRUNUX0JPRFlfVE9LRU4sXG4gICAgICB1c2VFeGlzdGluZzogU2VsZWN0Qm9keURpcmVjdGl2ZSxcbiAgICB9LFxuICBdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdpZCcsXG4gICAgdGFiaW5kZXg6ICctMScsXG4gICAgcm9sZTogJ2xpc3Rib3gnLFxuICB9LFxuICBob3N0RGlyZWN0aXZlczogW0NsaWNrT3V0c2lkZURpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEJvZHlEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IGNyZWF0ZURlc3Ryb3koKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9zZWxlY3QgPSBpbmplY3QoU0VMRUNUX1RPS0VOKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2xpY2tPdXRzaWRlID0gaW5qZWN0KENsaWNrT3V0c2lkZURpcmVjdGl2ZSk7XG5cbiAgcmVhZG9ubHkgaWQgPSBgZXQtc2VsZWN0LWJvZHktJHt1bmlxdWVJZCsrfWA7XG5cbiAgcmVhZG9ubHkgaG9zdEF0dHJpYnV0ZUJpbmRpbmdzID0gc2lnbmFsSG9zdEF0dHJpYnV0ZXMoe1xuICAgICdhcmlhLW11bHRpc2VsZWN0YWJsZSc6IHRvU2lnbmFsKHRoaXMuX3NlbGVjdC5tdWx0aXBsZSQpLFxuICAgICdhcmlhLWxhYmVsbGVkYnknOiB0b1NpZ25hbCh0aGlzLl9zZWxlY3QuaW5wdXQubGFiZWxJZCQpLFxuICB9KTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9jbGlja091dHNpZGUuZXRDbGlja091dHNpZGVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgICB0YXAoKCkgPT4gdGhpcy5fc2VsZWN0LnVubW91bnRTZWxlY3RCb2R5KCkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJvZHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvc2VsZWN0L2NvbXBvbmVudHMvc2VsZWN0L2RpcmVjdGl2ZXMvc2VsZWN0LWJvZHkvc2VsZWN0LWJvZHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQzs7O0FBRXpDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUFzQixzQkFBc0IsQ0FBQyxDQUFDO0FBRWpHLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQWlCakIsTUFBTSxPQUFPLG1CQUFtQjtJQWZoQztRQWdCbUIsY0FBUyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBQ3BDLGdCQUFXLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztRQUNsRCxZQUFPLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9CLGtCQUFhLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFdEQsT0FBRSxHQUFHLGtCQUFrQixRQUFRLEVBQUUsRUFBRSxDQUFDO1FBRXBDLDBCQUFxQixHQUFHLG9CQUFvQixDQUFDO1lBQ3BELHNCQUFzQixFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztZQUN4RCxpQkFBaUIsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1NBQ3pELENBQUMsQ0FBQztLQVVKO0lBUkMsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYzthQUM5QixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFDekIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FDaEM7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDOzhHQXBCVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixpSUFibkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsbUJBQW1CO2FBQ2pDO1NBQ0Y7OzJGQVFVLG1CQUFtQjtrQkFmL0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcscUJBQXFCO3lCQUNqQztxQkFDRjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osV0FBVyxFQUFFLElBQUk7d0JBQ2pCLFFBQVEsRUFBRSxJQUFJO3dCQUNkLElBQUksRUFBRSxTQUFTO3FCQUNoQjtvQkFDRCxjQUFjLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztpQkFDeEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdGlvblRva2VuLCBPbkluaXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDbGlja091dHNpZGVEaXJlY3RpdmUsIGNyZWF0ZURlc3Ryb3ksIHNpZ25hbEhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU0VMRUNUX1RPS0VOIH0gZnJvbSAnLi4vc2VsZWN0JztcblxuZXhwb3J0IGNvbnN0IFNFTEVDVF9CT0RZX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPFNlbGVjdEJvZHlEaXJlY3RpdmU+KCdFVF9TRUxFQ1RfQk9EWV9UT0tFTicpO1xuXG5sZXQgdW5pcXVlSWQgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogU0VMRUNUX0JPRFlfVE9LRU4sXG4gICAgICB1c2VFeGlzdGluZzogU2VsZWN0Qm9keURpcmVjdGl2ZSxcbiAgICB9LFxuICBdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdpZCcsXG4gICAgdGFiaW5kZXg6ICctMScsXG4gICAgcm9sZTogJ2xpc3Rib3gnLFxuICB9LFxuICBob3N0RGlyZWN0aXZlczogW0NsaWNrT3V0c2lkZURpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEJvZHlEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IGNyZWF0ZURlc3Ryb3koKTtcbiAgcmVhZG9ubHkgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zZWxlY3QgPSBpbmplY3QoU0VMRUNUX1RPS0VOKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2xpY2tPdXRzaWRlID0gaW5qZWN0KENsaWNrT3V0c2lkZURpcmVjdGl2ZSk7XG5cbiAgcmVhZG9ubHkgaWQgPSBgZXQtc2VsZWN0LWJvZHktJHt1bmlxdWVJZCsrfWA7XG5cbiAgcmVhZG9ubHkgaG9zdEF0dHJpYnV0ZUJpbmRpbmdzID0gc2lnbmFsSG9zdEF0dHJpYnV0ZXMoe1xuICAgICdhcmlhLW11bHRpc2VsZWN0YWJsZSc6IHRvU2lnbmFsKHRoaXMuX3NlbGVjdC5tdWx0aXBsZSQpLFxuICAgICdhcmlhLWxhYmVsbGVkYnknOiB0b1NpZ25hbCh0aGlzLl9zZWxlY3QuaW5wdXQubGFiZWxJZCQpLFxuICB9KTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9jbGlja091dHNpZGUuZXRDbGlja091dHNpZGVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgICB0YXAoKCkgPT4gdGhpcy5fc2VsZWN0LmNsb3NlKCkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
- import { Directive, ElementRef, InjectionToken, Input, booleanAttribute, inject, isDevMode, } from '@angular/core';
1
+ import { Directive, ElementRef, InjectionToken, Input, booleanAttribute, inject } from '@angular/core';
2
2
  import { toSignal } from '@angular/core/rxjs-interop';
3
3
  import { ObserveContentDirective, signalHostAttributes, signalHostClasses } from '@ethlete/core';
4
- import { BehaviorSubject, combineLatest, firstValueFrom, map } from 'rxjs';
4
+ import { BehaviorSubject } from 'rxjs';
5
5
  import { SELECT_TOKEN } from '../select';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@ethlete/core";
@@ -12,23 +12,17 @@ export class SelectOptionDirective {
12
12
  this._select = inject(SELECT_TOKEN);
13
13
  this._elementRef = inject(ElementRef);
14
14
  this._viewValue$ = new BehaviorSubject(this._elementRef.nativeElement.textContent?.trim() ?? '');
15
- this._isActive$ = new BehaviorSubject(false);
15
+ this.isActive$ = this._select._activeSelectionModel.isOptionActive$(this);
16
16
  this.id = `et-select-option-${uniqueId++}`;
17
17
  this._value$ = new BehaviorSubject(null);
18
18
  this._disabled$ = new BehaviorSubject(false);
19
- this.isSelected$ = combineLatest([this._select.input.value$, this._value$]).pipe(map(([selectValue, optionValue]) => {
20
- if (Array.isArray(selectValue)) {
21
- return selectValue.includes(optionValue);
22
- }
23
- return selectValue === optionValue;
24
- }));
19
+ this.disabled$ = this._disabled$.asObservable();
20
+ this.isSelected$ = this._select._selectionModel.isSelected$(this);
25
21
  this.isSelected = toSignal(this.isSelected$);
26
22
  this.viewValue$ = this._viewValue$.asObservable();
27
- this.disabled$ = this._disabled$.asObservable();
28
- this.isActive$ = this._isActive$.asObservable();
29
23
  this.hostClassBindings = signalHostClasses({
30
24
  'et-select-option--selected': this.isSelected,
31
- 'et-select-option--active': toSignal(this._isActive$),
25
+ 'et-select-option--active': toSignal(this.isActive$),
32
26
  });
33
27
  this.hostAttributeBindings = signalHostAttributes({
34
28
  'aria-selected': this.isSelected,
@@ -49,43 +43,24 @@ export class SelectOptionDirective {
49
43
  get viewValue() {
50
44
  return this._viewValue$.value;
51
45
  }
52
- ngAfterContentInit() {
46
+ ngAfterViewInit() {
53
47
  this._updateViewValue();
54
48
  }
55
- async setSelectValue() {
56
- if (this.disabled)
49
+ selectOption() {
50
+ if (this._select._selectionModel.isDisabled(this)) {
57
51
  return;
58
- if (this._select.multiple) {
59
- if (!Array.isArray(this._select.input.value)) {
60
- if (isDevMode()) {
61
- console.warn('Select multiple is enabled but the value is not an array');
62
- }
63
- return;
64
- }
65
- const isSelected = await firstValueFrom(this.isSelected$);
66
- if (isSelected) {
67
- this._select.setValue(this._select.input.value.filter((value) => value !== this.value));
68
- }
69
- else {
70
- this._select.setValue([...this._select.input.value, this.value]);
71
- }
72
- }
73
- else {
74
- this._select.setValue(this.value);
75
- this._select.unmountSelectBody();
76
52
  }
53
+ this._select.writeValueFromOption(this);
54
+ this._select.focus();
77
55
  }
78
56
  _updateViewValue() {
79
57
  this._viewValue$.next(this._elementRef.nativeElement.textContent?.trim() ?? '');
80
58
  }
81
- _setActive(isActive) {
82
- this._isActive$.next(isActive);
83
- }
84
59
  setActiveByHover() {
85
- this._select._setActiveOption(this);
60
+ this._select._activeSelectionModel.setActiveOption(this);
86
61
  }
87
62
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: SelectOptionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
88
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: SelectOptionDirective, isStandalone: true, inputs: { value: "value", disabled: "disabled" }, host: { attributes: { "role": "option" }, listeners: { "click": "setSelectValue()", "mouseenter": "setActiveByHover()", "etObserveContent": "_updateViewValue()" }, properties: { "attr.id": "id", "attr.aria-disabled": "disabled", "class.et-select-option--disabled": "disabled" } }, providers: [
63
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: SelectOptionDirective, isStandalone: true, inputs: { value: "value", disabled: "disabled" }, host: { attributes: { "role": "option" }, listeners: { "click": "selectOption()", "mouseenter": "setActiveByHover()", "etObserveContent": "_updateViewValue()" }, properties: { "attr.id": "id", "attr.aria-disabled": "disabled", "class.et-select-option--disabled": "disabled" } }, providers: [
89
64
  {
90
65
  provide: SELECT_OPTION_TOKEN,
91
66
  useExisting: SelectOptionDirective,
@@ -106,7 +81,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
106
81
  '[attr.id]': 'id',
107
82
  '[attr.aria-disabled]': 'disabled',
108
83
  '[class.et-select-option--disabled]': 'disabled',
109
- '(click)': 'setSelectValue()',
84
+ '(click)': 'selectOption()',
110
85
  '(mouseenter)': 'setActiveByHover()',
111
86
  '(etObserveContent)': '_updateViewValue()',
112
87
  role: 'option',
@@ -119,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
119
94
  }], disabled: [{
120
95
  type: Input
121
96
  }] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWxlY3QvY29tcG9uZW50cy9zZWxlY3QvZGlyZWN0aXZlcy9zZWxlY3Qtb3B0aW9uL3NlbGVjdC1vcHRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLGNBQWMsRUFDZCxLQUFLLEVBQ0wsZ0JBQWdCLEVBQ2hCLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7OztBQUV6QyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FBd0Isd0JBQXdCLENBQUMsQ0FBQztBQUV2RyxJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFxQmpCLE1BQU0sT0FBTyxxQkFBcUI7SUFuQmxDO1FBb0JtQixZQUFPLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9CLGdCQUFXLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztRQUMxRCxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFTLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMs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RSxVQUFVO3dCQUNsQyxvQ0FBb0MsRUFBRSxVQUFVO3dCQUNoRCxTQUFTLEVBQUUsa0JBQWtCO3dCQUM3QixjQUFjLEVBQUUsb0JBQW9CO3dCQUNwQyxvQkFBb0IsRUFBRSxvQkFBb0I7d0JBQzFDLElBQUksRUFBRSxRQUFRO3FCQUNmO29CQUNELGNBQWMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO2lCQUMxQzs4QkFVSyxLQUFLO3NCQURSLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQVVyQixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGlvblRva2VuLFxuICBJbnB1dCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgaW5qZWN0LFxuICBpc0Rldk1vZGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBPYnNlcnZlQ29udGVudERpcmVjdGl2ZSwgc2lnbmFsSG9zdEF0dHJpYnV0ZXMsIHNpZ25hbEhvc3RDbGFzc2VzIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGZpcnN0VmFsdWVGcm9tLCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNFTEVDVF9UT0tFTiB9IGZyb20gJy4uL3NlbGVjdCc7XG5cbmV4cG9ydCBjb25zdCBTRUxFQ1RfT1BUSU9OX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPFNlbGVjdE9wdGlvbkRpcmVjdGl2ZT4oJ0VUX1NFTEVDVF9PUFRJT05fVE9LRU4nKTtcblxubGV0IHVuaXF1ZUlkID0gMDtcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNFTEVDVF9PUFRJT05fVE9LRU4sXG4gICAgICB1c2VFeGlzdGluZzogU2VsZWN0T3B0aW9uRGlyZWN0aXZlLFxuICAgIH0sXG4gIF0sXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICAnW2F0dHIuYXJpYS1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICdbY2xhc3MuZXQtc2VsZWN0LW9wdGlvbi0tZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAnKGNsaWNrKSc6ICdzZXRTZWxlY3RWYWx1ZSgpJyxcbiAgICAnKG1vdXNlZW50ZXIpJzogJ3NldEFjdGl2ZUJ5SG92ZXIoKScsXG4gICAgJyhldE9ic2VydmVDb250ZW50KSc6ICdfdXBkYXRlVmlld1ZhbHVlKCknLFxuICAgIHJvbGU6ICdvcHRpb24nLFxuICB9LFxuICBob3N0RGlyZWN0aXZlczogW09ic2VydmVDb250ZW50RGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0T3B0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3NlbGVjdCA9IGluamVjdChTRUxFQ1RfVE9LRU4pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdmlld1ZhbHVlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudGV4dENvbnRlbnQ/LnRyaW0oKSA/PyAnJyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2lzQWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGlkID0gYGV0LXNlbGVjdC1vcHRpb24tJHt1bmlxdWVJZCsrfWA7XG5cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgZ2V0IHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZSQudmFsdWU7XG4gIH1cbiAgc2V0IHZhbHVlKHZhbHVlOiB1bmtub3duKSB7XG4gICAgdGhpcy5fdmFsdWUkLm5leHQodmFsdWUpO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8dW5rbm93bj4obnVsbCk7XG5cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZCQudmFsdWU7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiB1bmtub3duKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQkLm5leHQoYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSkpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGlzU2VsZWN0ZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5fc2VsZWN0LmlucHV0LnZhbHVlJCwgdGhpcy5fdmFsdWUkXSkucGlwZShcbiAgICBtYXAoKFtzZWxlY3RWYWx1ZSwgb3B0aW9uVmFsdWVdKSA9PiB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShzZWxlY3RWYWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIHNlbGVjdFZhbHVlLmluY2x1ZGVzKG9wdGlvblZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHNlbGVjdFZhbHVlID09PSBvcHRpb25WYWx1ZTtcbiAgICB9KSxcbiAgKTtcbiAgcmVhZG9ubHkgaXNTZWxlY3RlZCA9IHRvU2lnbmFsKHRoaXMuaXNTZWxlY3RlZCQpO1xuXG4gIGdldCB2aWV3VmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZpZXdWYWx1ZSQudmFsdWU7XG4gIH1cblxuICByZWFkb25seSB2aWV3VmFsdWUkID0gdGhpcy5fdmlld1ZhbHVlJC5hc09ic2VydmFibGUoKTtcbiAgcmVhZG9ubHkgZGlzYWJsZWQkID0gdGhpcy5fZGlzYWJsZWQkLmFzT2JzZXJ2YWJsZSgpO1xuICByZWFkb25seSBpc0FjdGl2ZSQgPSB0aGlzLl9pc0FjdGl2ZSQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcmVhZG9ubHkgaG9zdENsYXNzQmluZGluZ3MgPSBzaWduYWxIb3N0Q2xhc3Nlcyh7XG4gICAgJ2V0LXNlbGVjdC1vcHRpb24tLXNlbGVjdGVkJzogdGhpcy5pc1NlbGVjdGVkLFxuICAgICdldC1zZWxlY3Qtb3B0aW9uLS1hY3RpdmUnOiB0b1NpZ25hbCh0aGlzLl9pc0FjdGl2ZSQpLFxuICB9KTtcblxuICByZWFkb25seSBob3N0QXR0cmlidXRlQmluZGluZ3MgPSBzaWduYWxIb3N0QXR0cmlidXRlcyh7XG4gICAgJ2FyaWEtc2VsZWN0ZWQnOiB0aGlzLmlzU2VsZWN0ZWQsXG4gIH0pO1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVWaWV3VmFsdWUoKTtcbiAgfVxuXG4gIGFzeW5jIHNldFNlbGVjdFZhbHVlKCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG5cbiAgICBpZiAodGhpcy5fc2VsZWN0Lm11bHRpcGxlKSB7XG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkodGhpcy5fc2VsZWN0LmlucHV0LnZhbHVlKSkge1xuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oJ1NlbGVjdCBtdWx0aXBsZSBpcyBlbmFibGVkIGJ1dCB0aGUgdmFsdWUgaXMgbm90IGFuIGFycmF5Jyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmlzU2VsZWN0ZWQkKTtcblxuICAgICAgaWYgKGlzU2VsZWN0ZWQpIHtcbiAgICAgICAgdGhpcy5fc2VsZWN0LnNldFZhbHVlKHRoaXMuX3NlbGVjdC5pbnB1dC52YWx1ZS5maWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZSAhPT0gdGhpcy52YWx1ZSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fc2VsZWN0LnNldFZhbHVlKFsuLi50aGlzLl9zZWxlY3QuaW5wdXQudmFsdWUsIHRoaXMudmFsdWVdKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fc2VsZWN0LnNldFZhbHVlKHRoaXMudmFsdWUpO1xuICAgICAgdGhpcy5fc2VsZWN0LnVubW91bnRTZWxlY3RCb2R5KCk7XG4gICAgfVxuICB9XG5cbiAgX3VwZGF0ZVZpZXdWYWx1ZSgpIHtcbiAgICB0aGlzLl92aWV3VmFsdWUkLm5leHQodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50Py50cmltKCkgPz8gJycpO1xuICB9XG5cbiAgX3NldEFjdGl2ZShpc0FjdGl2ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2lzQWN0aXZlJC5uZXh0KGlzQWN0aXZlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRBY3RpdmVCeUhvdmVyKCkge1xuICAgIHRoaXMuX3NlbGVjdC5fc2V0QWN0aXZlT3B0aW9uKHRoaXMpO1xuICB9XG59XG4iXX0=
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWxlY3QvY29tcG9uZW50cy9zZWxlY3QvZGlyZWN0aXZlcy9zZWxlY3Qtb3B0aW9uL3NlbGVjdC1vcHRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQzs7O0FBRXpDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUF3Qix3QkFBd0IsQ0FBQyxDQUFDO0FBRXZHLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQXFCakIsTUFBTSxPQUFPLHFCQUFxQjtJQW5CbEM7UUFvQm1CLFlBQU8sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdkMsZ0JBQVcsR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTVHLGNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFD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d0JBQzNCLGNBQWMsRUFBRSxvQkFBb0I7d0JBQ3BDLG9CQUFvQixFQUFFLG9CQUFvQjt3QkFDMUMsSUFBSSxFQUFFLFFBQVE7cUJBQ2Y7b0JBQ0QsY0FBYyxFQUFFLENBQUMsdUJBQXVCLENBQUM7aUJBQzFDOzhCQVdLLEtBQUs7c0JBRFIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBVXJCLFFBQVE7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0aW9uVG9rZW4sIElucHV0LCBib29sZWFuQXR0cmlidXRlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgT2JzZXJ2ZUNvbnRlbnREaXJlY3RpdmUsIHNpZ25hbEhvc3RBdHRyaWJ1dGVzLCBzaWduYWxIb3N0Q2xhc3NlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTRUxFQ1RfVE9LRU4gfSBmcm9tICcuLi9zZWxlY3QnO1xuXG5leHBvcnQgY29uc3QgU0VMRUNUX09QVElPTl9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTZWxlY3RPcHRpb25EaXJlY3RpdmU+KCdFVF9TRUxFQ1RfT1BUSU9OX1RPS0VOJyk7XG5cbmxldCB1bmlxdWVJZCA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBTRUxFQ1RfT1BUSU9OX1RPS0VOLFxuICAgICAgdXNlRXhpc3Rpbmc6IFNlbGVjdE9wdGlvbkRpcmVjdGl2ZSxcbiAgICB9LFxuICBdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdpZCcsXG4gICAgJ1thdHRyLmFyaWEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAnW2NsYXNzLmV0LXNlbGVjdC1vcHRpb24tLWRpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG4gICAgJyhjbGljayknOiAnc2VsZWN0T3B0aW9uKCknLFxuICAgICcobW91c2VlbnRlciknOiAnc2V0QWN0aXZlQnlIb3ZlcigpJyxcbiAgICAnKGV0T2JzZXJ2ZUNvbnRlbnQpJzogJ191cGRhdGVWaWV3VmFsdWUoKScsXG4gICAgcm9sZTogJ29wdGlvbicsXG4gIH0sXG4gIGhvc3REaXJlY3RpdmVzOiBbT2JzZXJ2ZUNvbnRlbnREaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RPcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2VsZWN0ID0gaW5qZWN0KFNFTEVDVF9UT0tFTik7XG4gIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdmlld1ZhbHVlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudGV4dENvbnRlbnQ/LnRyaW0oKSA/PyAnJyk7XG5cbiAgcmVhZG9ubHkgaXNBY3RpdmUkID0gdGhpcy5fc2VsZWN0Ll9hY3RpdmVTZWxlY3Rpb25Nb2RlbC5pc09wdGlvbkFjdGl2ZSQodGhpcyk7XG5cbiAgcmVhZG9ubHkgaWQgPSBgZXQtc2VsZWN0LW9wdGlvbi0ke3VuaXF1ZUlkKyt9YDtcblxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICBnZXQgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlJC52YWx1ZTtcbiAgfVxuICBzZXQgdmFsdWUodmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLl92YWx1ZSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx1bmtub3duPihudWxsKTtcblxuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkJC52YWx1ZTtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCQubmV4dChib29sZWFuQXR0cmlidXRlKHZhbHVlKSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIHJlYWRvbmx5IGRpc2FibGVkJCA9IHRoaXMuX2Rpc2FibGVkJC5hc09ic2VydmFibGUoKTtcblxuICByZWFkb25seSBpc1NlbGVjdGVkJCA9IHRoaXMuX3NlbGVjdC5fc2VsZWN0aW9uTW9kZWwuaXNTZWxlY3RlZCQodGhpcyk7XG4gIHJlYWRvbmx5IGlzU2VsZWN0ZWQgPSB0b1NpZ25hbCh0aGlzLmlzU2VsZWN0ZWQkKTtcblxuICBnZXQgdmlld1ZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLl92aWV3VmFsdWUkLnZhbHVlO1xuICB9XG4gIHJlYWRvbmx5IHZpZXdWYWx1ZSQgPSB0aGlzLl92aWV3VmFsdWUkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHJlYWRvbmx5IGhvc3RDbGFzc0JpbmRpbmdzID0gc2lnbmFsSG9zdENsYXNzZXMoe1xuICAgICdldC1zZWxlY3Qtb3B0aW9uLS1zZWxlY3RlZCc6IHRoaXMuaXNTZWxlY3RlZCxcbiAgICAnZXQtc2VsZWN0LW9wdGlvbi0tYWN0aXZlJzogdG9TaWduYWwodGhpcy5pc0FjdGl2ZSQpLFxuICB9KTtcblxuICByZWFkb25seSBob3N0QXR0cmlidXRlQmluZGluZ3MgPSBzaWduYWxIb3N0QXR0cmlidXRlcyh7XG4gICAgJ2FyaWEtc2VsZWN0ZWQnOiB0aGlzLmlzU2VsZWN0ZWQsXG4gIH0pO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVWaWV3VmFsdWUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZWxlY3RPcHRpb24oKSB7XG4gICAgaWYgKHRoaXMuX3NlbGVjdC5fc2VsZWN0aW9uTW9kZWwuaXNEaXNhYmxlZCh0aGlzKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3NlbGVjdC53cml0ZVZhbHVlRnJvbU9wdGlvbih0aGlzKTtcbiAgICB0aGlzLl9zZWxlY3QuZm9jdXMoKTtcbiAgfVxuXG4gIF91cGRhdGVWaWV3VmFsdWUoKSB7XG4gICAgdGhpcy5fdmlld1ZhbHVlJC5uZXh0KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC50ZXh0Q29udGVudD8udHJpbSgpID8/ICcnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRBY3RpdmVCeUhvdmVyKCkge1xuICAgIHRoaXMuX3NlbGVjdC5fYWN0aXZlU2VsZWN0aW9uTW9kZWwuc2V0QWN0aXZlT3B0aW9uKHRoaXMpO1xuICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import { NgTemplateOutlet } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation, inject } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, ElementRef, ViewChild, ViewEncapsulation, inject, } from '@angular/core';
3
3
  import { ANIMATED_LIFECYCLE_TOKEN, AnimatedLifecycleDirective } from '@ethlete/core';
4
4
  import { ProvideThemeDirective, THEME_PROVIDER } from '@ethlete/theming';
5
5
  import { SELECT_BODY_TOKEN, SelectBodyDirective } from '../../directives';
@@ -16,8 +16,8 @@ export class SelectBodyComponent {
16
16
  this._themeProvider.syncWithProvider(provider);
17
17
  }
18
18
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: SelectBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: SelectBodyComponent, isStandalone: true, selector: "et-select-body", host: { classAttribute: "et-select-body et-with-default-animation" }, viewQueries: [{ propertyName: "_animatedLifecycle", first: true, predicate: ANIMATED_LIFECYCLE_TOKEN, descendants: true, static: true }], hostDirectives: [{ directive: i1.SelectBodyDirective }, { directive: i2.ProvideThemeDirective }], ngImport: i0, template: `
20
- <div class="et-select-body-container" etAnimatedLifecycle>
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: SelectBodyComponent, isStandalone: true, selector: "et-select-body", host: { classAttribute: "et-select-body et-with-default-animation" }, viewQueries: [{ propertyName: "_animatedLifecycle", first: true, predicate: ANIMATED_LIFECYCLE_TOKEN, descendants: true, static: true }, { propertyName: "_containerElementRef", first: true, predicate: ["containerElement"], descendants: true, read: ElementRef, static: true }], hostDirectives: [{ directive: i1.SelectBodyDirective }, { directive: i2.ProvideThemeDirective }], ngImport: i0, template: `
20
+ <div #containerElement class="et-select-body-container" etAnimatedLifecycle>
21
21
  <ng-container [ngTemplateOutlet]="_bodyTemplate" />
22
22
  </div>
23
23
  `, isInline: true, styles: [".et-select-body.et-with-default-animation .et-select-body-container.et-animation-enter-from,.et-select-body.et-with-default-animation .et-select-body-container.et-animation-leave-to{opacity:0;transform:scaleY(0)}.et-select-body.et-with-default-animation .et-select-body-container.et-animation-enter-active{transition:transform 125ms var(--ease-out-5),opacity 125ms var(--ease-out-5)}.et-select-body.et-with-default-animation .et-select-body-container.et-animation-leave-active{transition:transform 50ms var(--ease-in-5),opacity 50ms var(--ease-in-5)}.et-select-body.et-with-default-animation[et-floating-placement^=top] .et-select-body-container{transform-origin:bottom}.et-select-body.et-with-default-animation[et-floating-placement^=bottom] .et-select-body-container{transform-origin:top}.et-select-body{transform:var(--et-floating-translate);will-change:transform}.et-select-body-container{display:block;background-color:#3d3d3d;color:#fff;max-height:min(200px,var(--et-floating-max-height, 200px));overflow:auto}@supports (overflow: overlay){.et-select-body-container{overflow:overlay}}.et-select-body{width:100%;display:grid}\n"], dependencies: [{ kind: "directive", type: AnimatedLifecycleDirective, selector: "[etAnimatedLifecycle]", exportAs: ["etAnimatedLifecycle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
@@ -25,7 +25,7 @@ export class SelectBodyComponent {
25
25
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: SelectBodyComponent, decorators: [{
26
26
  type: Component,
27
27
  args: [{ selector: 'et-select-body', template: `
28
- <div class="et-select-body-container" etAnimatedLifecycle>
28
+ <div #containerElement class="et-select-body-container" etAnimatedLifecycle>
29
29
  <ng-container [ngTemplateOutlet]="_bodyTemplate" />
30
30
  </div>
31
31
  `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
@@ -34,5 +34,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
34
34
  }], propDecorators: { _animatedLifecycle: [{
35
35
  type: ViewChild,
36
36
  args: [ANIMATED_LIFECYCLE_TOKEN, { static: true }]
37
+ }], _containerElementRef: [{
38
+ type: ViewChild,
39
+ args: ['containerElement', { static: true, read: ElementRef }]
37
40
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJvZHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvc2VsZWN0L2NvbXBvbmVudHMvc2VsZWN0L3BhcnRpYWxzL3NlbGVjdC1ib2R5L3NlbGVjdC1ib2R5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFlLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLDBCQUEwQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQW1CMUUsTUFBTSxPQUFPLG1CQUFtQjtJQWpCaEM7UUFrQlcsZUFBVSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQy9CLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBS3pELGtCQUFhLEdBQWdDLElBQUksQ0FBQztLQUtuRDtJQUhDLHFCQUFxQixDQUFDLFFBQStCO1FBQ25ELElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakQsQ0FBQzs4R0FYVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixvTUFJbkIsd0JBQXdCLGdLQW5CekI7Ozs7R0FJVCxzckNBUVMsMEJBQTBCLHFHQUFFLGdCQUFnQjs7MkZBRzNDLG1CQUFtQjtrQkFqQi9CLFNBQVM7K0JBQ0UsZ0JBQWdCLFlBQ2hCOzs7O0dBSVQsY0FFVyxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osS0FBSyxFQUFFLDBDQUEwQztxQkFDbEQsV0FDUSxDQUFDLDBCQUEwQixFQUFFLGdCQUFnQixDQUFDLGtCQUN2QyxDQUFDLG1CQUFtQixFQUFFLHFCQUFxQixDQUFDOzhCQU9uRCxrQkFBa0I7c0JBRDFCLFNBQVM7dUJBQUMsd0JBQXdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBTklNQVRFRF9MSUZFQ1lDTEVfVE9LRU4sIEFuaW1hdGVkTGlmZWN5Y2xlRGlyZWN0aXZlIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBQcm92aWRlVGhlbWVEaXJlY3RpdmUsIFRIRU1FX1BST1ZJREVSIH0gZnJvbSAnQGV0aGxldGUvdGhlbWluZyc7XG5pbXBvcnQgeyBTRUxFQ1RfQk9EWV9UT0tFTiwgU2VsZWN0Qm9keURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1zZWxlY3QtYm9keScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImV0LXNlbGVjdC1ib2R5LWNvbnRhaW5lclwiIGV0QW5pbWF0ZWRMaWZlY3ljbGU+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIl9ib2R5VGVtcGxhdGVcIiAvPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9zZWxlY3QtYm9keS5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtc2VsZWN0LWJvZHkgZXQtd2l0aC1kZWZhdWx0LWFuaW1hdGlvbicsXG4gIH0sXG4gIGltcG9ydHM6IFtBbmltYXRlZExpZmVjeWNsZURpcmVjdGl2ZSwgTmdUZW1wbGF0ZU91dGxldF0sXG4gIGhvc3REaXJlY3RpdmVzOiBbU2VsZWN0Qm9keURpcmVjdGl2ZSwgUHJvdmlkZVRoZW1lRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0Qm9keUNvbXBvbmVudCB7XG4gIHJlYWRvbmx5IHNlbGVjdEJvZHkgPSBpbmplY3QoU0VMRUNUX0JPRFlfVE9LRU4pO1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVByb3ZpZGVyID0gaW5qZWN0KFRIRU1FX1BST1ZJREVSKTtcblxuICBAVmlld0NoaWxkKEFOSU1BVEVEX0xJRkVDWUNMRV9UT0tFTiwgeyBzdGF0aWM6IHRydWUgfSlcbiAgcmVhZG9ubHkgX2FuaW1hdGVkTGlmZWN5Y2xlPzogQW5pbWF0ZWRMaWZlY3ljbGVEaXJlY3RpdmU7XG5cbiAgX2JvZHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcblxuICBfc2V0VGhlbWVGcm9tUHJvdmlkZXIocHJvdmlkZXI6IFByb3ZpZGVUaGVtZURpcmVjdGl2ZSkge1xuICAgIHRoaXMuX3RoZW1lUHJvdmlkZXIuc3luY1dpdGhQcm92aWRlcihwcm92aWRlcik7XG4gIH1cbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJvZHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvc2VsZWN0L2NvbXBvbmVudHMvc2VsZWN0L3BhcnRpYWxzL3NlbGVjdC1ib2R5L3NlbGVjdC1ib2R5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBRVYsU0FBUyxFQUNULGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLDBCQUEwQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQW1CMUUsTUFBTSxPQUFPLG1CQUFtQjtJQWpCaEM7UUFrQlcsZUFBVSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQy9CLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBUXpELGtCQUFhLEdBQWdDLElBQUksQ0FBQztLQUtuRDtJQUhDLHFCQUFxQixDQUFDLFFBQStCO1FBQ25ELElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakQsQ0FBQzs4R0FkVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixvTUFJbkIsd0JBQXdCLG9KQUdrQixVQUFVLDZJQXRCckQ7Ozs7R0FJVCxzckNBUVMsMEJBQTBCLHFHQUFFLGdCQUFnQjs7MkZBRzNDLG1CQUFtQjtrQkFqQi9CLFNBQVM7K0JBQ0UsZ0JBQWdCLFlBQ2hCOzs7O0dBSVQsY0FFVyxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osS0FBSyxFQUFFLDBDQUEwQztxQkFDbEQsV0FDUSxDQUFDLDBCQUEwQixFQUFFLGdCQUFnQixDQUFDLGtCQUN2QyxDQUFDLG1CQUFtQixFQUFFLHFCQUFxQixDQUFDOzhCQU9uRCxrQkFBa0I7c0JBRDFCLFNBQVM7dUJBQUMsd0JBQXdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUk1QyxvQkFBb0I7c0JBRDVCLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQU5JTUFURURfTElGRUNZQ0xFX1RPS0VOLCBBbmltYXRlZExpZmVjeWNsZURpcmVjdGl2ZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgUHJvdmlkZVRoZW1lRGlyZWN0aXZlLCBUSEVNRV9QUk9WSURFUiB9IGZyb20gJ0BldGhsZXRlL3RoZW1pbmcnO1xuaW1wb3J0IHsgU0VMRUNUX0JPRFlfVE9LRU4sIFNlbGVjdEJvZHlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtc2VsZWN0LWJvZHknLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgI2NvbnRhaW5lckVsZW1lbnQgY2xhc3M9XCJldC1zZWxlY3QtYm9keS1jb250YWluZXJcIiBldEFuaW1hdGVkTGlmZWN5Y2xlPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJfYm9keVRlbXBsYXRlXCIgLz5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vc2VsZWN0LWJvZHkuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2V0LXNlbGVjdC1ib2R5IGV0LXdpdGgtZGVmYXVsdC1hbmltYXRpb24nLFxuICB9LFxuICBpbXBvcnRzOiBbQW5pbWF0ZWRMaWZlY3ljbGVEaXJlY3RpdmUsIE5nVGVtcGxhdGVPdXRsZXRdLFxuICBob3N0RGlyZWN0aXZlczogW1NlbGVjdEJvZHlEaXJlY3RpdmUsIFByb3ZpZGVUaGVtZURpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEJvZHlDb21wb25lbnQge1xuICByZWFkb25seSBzZWxlY3RCb2R5ID0gaW5qZWN0KFNFTEVDVF9CT0RZX1RPS0VOKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdGhlbWVQcm92aWRlciA9IGluamVjdChUSEVNRV9QUk9WSURFUik7XG5cbiAgQFZpZXdDaGlsZChBTklNQVRFRF9MSUZFQ1lDTEVfVE9LRU4sIHsgc3RhdGljOiB0cnVlIH0pXG4gIHJlYWRvbmx5IF9hbmltYXRlZExpZmVjeWNsZT86IEFuaW1hdGVkTGlmZWN5Y2xlRGlyZWN0aXZlO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lckVsZW1lbnQnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogRWxlbWVudFJlZiB9KVxuICByZWFkb25seSBfY29udGFpbmVyRWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCB1bmRlZmluZWQ7XG5cbiAgX2JvZHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcblxuICBfc2V0VGhlbWVGcm9tUHJvdmlkZXIocHJvdmlkZXI6IFByb3ZpZGVUaGVtZURpcmVjdGl2ZSkge1xuICAgIHRoaXMuX3RoZW1lUHJvdmlkZXIuc3luY1dpdGhQcm92aWRlcihwcm92aWRlcik7XG4gIH1cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
- export * from './public-api';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWxlY3QvY29tcG9uZW50cy9jb21ib2JveC91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
1
+ export * from './select.private.types';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWxlY3QvY29tcG9uZW50cy9zZWxlY3QvcHJpdmF0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QucHJpdmF0ZS50eXBlcyc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LnByaXZhdGUudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWxlY3QvY29tcG9uZW50cy9zZWxlY3QvcHJpdmF0ZS9zZWxlY3QucHJpdmF0ZS50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTZWxlY3RLZXlIYW5kbGVyUmVzdWx0PFQgPSB1bmtub3duPiB7XG4gIG92ZXJsYXlPcGVyYXRpb24/OiAnb3BlbicgfCAnY2xvc2UnO1xuICBvcHRpb25BY3Rpb24/OlxuICAgIHwge1xuICAgICAgICB0eXBlOiAnYWRkJztcbiAgICAgICAgb3B0aW9uOiBUO1xuICAgICAgfVxuICAgIHwge1xuICAgICAgICB0eXBlOiAncmVtb3ZlJztcbiAgICAgICAgb3B0aW9uOiBUO1xuICAgICAgfVxuICAgIHwge1xuICAgICAgICB0eXBlOiAndG9nZ2xlJztcbiAgICAgICAgb3B0aW9uOiBUO1xuICAgICAgfVxuICAgIHwgJ2NsZWFyJ1xuICAgIHwgJ3RvZ2dsZUFsbCc7XG59XG4iXX0=
@@ -2,7 +2,7 @@ import { FocusMonitor, FocusTrapFactory, InteractivityChecker } from '@angular/c
2
2
  import { CdkDialogContainer } from '@angular/cdk/dialog';
3
3
  import { OverlayRef } from '@angular/cdk/overlay';
4
4
  import { DOCUMENT } from '@angular/common';
5
- import { Component, ElementRef, inject, Inject, NgZone, Optional } from '@angular/core';
5
+ import { Component, ElementRef, Inject, NgZone, Optional, inject } from '@angular/core';
6
6
  import { ANIMATED_LIFECYCLE_TOKEN } from '@ethlete/core';
7
7
  import { BOTTOM_SHEET_CONFIG } from '../../constants';
8
8
  import * as i0 from "@angular/core";
@@ -26,11 +26,11 @@ export class BottomSheetContainerBaseComponent extends CdkDialogContainer {
26
26
  }
27
27
  }
28
28
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: BottomSheetContainerBaseComponent, deps: [{ token: i0.ElementRef }, { token: i1.FocusTrapFactory }, { token: DOCUMENT, optional: true }, { token: BOTTOM_SHEET_CONFIG }, { token: i1.InteractivityChecker }, { token: i0.NgZone }, { token: i2.OverlayRef }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: BottomSheetContainerBaseComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: BottomSheetContainerBaseComponent, selector: "et-bottom-sheet-container-base", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
30
30
  }
31
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: BottomSheetContainerBaseComponent, decorators: [{
32
32
  type: Component,
33
- args: [{ template: '' }]
33
+ args: [{ selector: 'et-bottom-sheet-container-base', template: '' }]
34
34
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.FocusTrapFactory }, { type: Document, decorators: [{
35
35
  type: Optional
36
36
  }, {
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
40
40
  type: Inject,
41
41
  args: [BOTTOM_SHEET_CONFIG]
42
42
  }] }, { type: i1.InteractivityChecker }, { type: i0.NgZone }, { type: i2.OverlayRef }, { type: i1.FocusMonitor }]; } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tLXNoZWV0LWNvbnRhaW5lci1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvYm90dG9tLXNoZWV0L3BhcnRpYWxzL2JvdHRvbS1zaGVldC1jb250YWluZXItYmFzZS9ib3R0b20tc2hlZXQtY29udGFpbmVyLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFJdEQsTUFBTSxPQUFnQixpQ0FBa0MsU0FBUSxrQkFBcUM7SUFHbkcsWUFDUyxVQUFtQyxFQUMxQyxnQkFBa0MsRUFDSixTQUFtQixFQUVqRCxpQkFBb0MsRUFDcEMsb0JBQTBDLEVBQzFDLE1BQWMsRUFDUCxVQUFzQixFQUM3QixZQUEyQjtRQUUzQixLQUFLLENBQ0gsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sVUFBVSxFQUNWLFlBQVksQ0FDYixDQUFDO1FBbkJLLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBT25DLGVBQVUsR0FBVixVQUFVLENBQVk7UUFWdEIsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUF1Qi9ELENBQUM7SUFFa0Isb0JBQW9CO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRTtZQUNoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs4R0FwQ21CLGlDQUFpQyw0RUFNL0IsUUFBUSw2QkFDcEIsbUJBQW1CO2tHQVBULGlDQUFpQywyRUFEaEMsRUFBRTs7MkZBQ0gsaUNBQWlDO2tCQUR0RCxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTs7MEJBT3RCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsUUFBUTs7MEJBQzNCLE1BQU07MkJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNNb25pdG9yLCBGb2N1c1RyYXBGYWN0b3J5LCBJbnRlcmFjdGl2aXR5Q2hlY2tlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IENka0RpYWxvZ0NvbnRhaW5lciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbmplY3QsIE5nWm9uZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFOSU1BVEVEX0xJRkVDWUNMRV9UT0tFTiB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQk9UVE9NX1NIRUVUX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBCb3R0b21TaGVldENvbmZpZyB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7IHRlbXBsYXRlOiAnJyB9KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJvdHRvbVNoZWV0Q29udGFpbmVyQmFzZUNvbXBvbmVudCBleHRlbmRzIENka0RpYWxvZ0NvbnRhaW5lcjxCb3R0b21TaGVldENvbmZpZz4ge1xuICByZWFkb25seSBfYW5pbWF0ZWRMaWZlY3ljbGUgPSBpbmplY3QoQU5JTUFURURfTElGRUNZQ0xFX1RPS0VOKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgZm9jdXNUcmFwRmFjdG9yeTogRm9jdXNUcmFwRmFjdG9yeSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KERPQ1VNRU5UKSBfZG9jdW1lbnQ6IERvY3VtZW50LFxuICAgIEBJbmplY3QoQk9UVE9NX1NIRUVUX0NPTkZJRylcbiAgICBib3R0b21TaGVldENvbmZpZzogQm90dG9tU2hlZXRDb25maWcsXG4gICAgaW50ZXJhY3Rpdml0eUNoZWNrZXI6IEludGVyYWN0aXZpdHlDaGVja2VyLFxuICAgIG5nWm9uZTogTmdab25lLFxuICAgIHB1YmxpYyBvdmVybGF5UmVmOiBPdmVybGF5UmVmLFxuICAgIGZvY3VzTW9uaXRvcj86IEZvY3VzTW9uaXRvcixcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBlbGVtZW50UmVmLFxuICAgICAgZm9jdXNUcmFwRmFjdG9yeSxcbiAgICAgIF9kb2N1bWVudCxcbiAgICAgIGJvdHRvbVNoZWV0Q29uZmlnLFxuICAgICAgaW50ZXJhY3Rpdml0eUNoZWNrZXIsXG4gICAgICBuZ1pvbmUsXG4gICAgICBvdmVybGF5UmVmLFxuICAgICAgZm9jdXNNb25pdG9yLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgX2NhcHR1cmVJbml0aWFsRm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jb25maWcuZGVsYXlGb2N1c1RyYXApIHtcbiAgICAgIHRoaXMuX3RyYXBGb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfb3BlbkFuaW1hdGlvbkRvbmUoKSB7XG4gICAgaWYgKHRoaXMuX2NvbmZpZy5kZWxheUZvY3VzVHJhcCkge1xuICAgICAgdGhpcy5fdHJhcEZvY3VzKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tLXNoZWV0LWNvbnRhaW5lci1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvYm90dG9tLXNoZWV0L3BhcnRpYWxzL2JvdHRvbS1zaGVldC1jb250YWluZXItYmFzZS9ib3R0b20tc2hlZXQtY29udGFpbmVyLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFJdEQsTUFBTSxPQUFnQixpQ0FBa0MsU0FBUSxrQkFBcUM7SUFHbkcsWUFDUyxVQUFtQyxFQUMxQyxnQkFBa0MsRUFDSixTQUFtQixFQUVqRCxpQkFBb0MsRUFDcEMsb0JBQTBDLEVBQzFDLE1BQWMsRUFDUCxVQUFzQixFQUM3QixZQUEyQjtRQUUzQixLQUFLLENBQ0gsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sVUFBVSxFQUNWLFlBQVksQ0FDYixDQUFDO1FBbkJLLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBT25DLGVBQVUsR0FBVixVQUFVLENBQVk7UUFWdEIsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUF1Qi9ELENBQUM7SUFFa0Isb0JBQW9CO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRTtZQUNoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs4R0FwQ21CLGlDQUFpQyw0RUFNL0IsUUFBUSw2QkFDcEIsbUJBQW1CO2tHQVBULGlDQUFpQyw2RkFEWSxFQUFFOzsyRkFDL0MsaUNBQWlDO2tCQUR0RCxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLGdDQUFnQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7OzBCQU9sRSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLFFBQVE7OzBCQUMzQixNQUFNOzJCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNUcmFwRmFjdG9yeSwgSW50ZXJhY3Rpdml0eUNoZWNrZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBDZGtEaWFsb2dDb250YWluZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEluamVjdCwgTmdab25lLCBPcHRpb25hbCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBTklNQVRFRF9MSUZFQ1lDTEVfVE9LRU4gfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IEJPVFRPTV9TSEVFVF9DT05GSUcgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQm90dG9tU2hlZXRDb25maWcgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoeyBzZWxlY3RvcjogJ2V0LWJvdHRvbS1zaGVldC1jb250YWluZXItYmFzZScsIHRlbXBsYXRlOiAnJyB9KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJvdHRvbVNoZWV0Q29udGFpbmVyQmFzZUNvbXBvbmVudCBleHRlbmRzIENka0RpYWxvZ0NvbnRhaW5lcjxCb3R0b21TaGVldENvbmZpZz4ge1xuICByZWFkb25seSBfYW5pbWF0ZWRMaWZlY3ljbGUgPSBpbmplY3QoQU5JTUFURURfTElGRUNZQ0xFX1RPS0VOKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgZm9jdXNUcmFwRmFjdG9yeTogRm9jdXNUcmFwRmFjdG9yeSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KERPQ1VNRU5UKSBfZG9jdW1lbnQ6IERvY3VtZW50LFxuICAgIEBJbmplY3QoQk9UVE9NX1NIRUVUX0NPTkZJRylcbiAgICBib3R0b21TaGVldENvbmZpZzogQm90dG9tU2hlZXRDb25maWcsXG4gICAgaW50ZXJhY3Rpdml0eUNoZWNrZXI6IEludGVyYWN0aXZpdHlDaGVja2VyLFxuICAgIG5nWm9uZTogTmdab25lLFxuICAgIHB1YmxpYyBvdmVybGF5UmVmOiBPdmVybGF5UmVmLFxuICAgIGZvY3VzTW9uaXRvcj86IEZvY3VzTW9uaXRvcixcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBlbGVtZW50UmVmLFxuICAgICAgZm9jdXNUcmFwRmFjdG9yeSxcbiAgICAgIF9kb2N1bWVudCxcbiAgICAgIGJvdHRvbVNoZWV0Q29uZmlnLFxuICAgICAgaW50ZXJhY3Rpdml0eUNoZWNrZXIsXG4gICAgICBuZ1pvbmUsXG4gICAgICBvdmVybGF5UmVmLFxuICAgICAgZm9jdXNNb25pdG9yLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgX2NhcHR1cmVJbml0aWFsRm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jb25maWcuZGVsYXlGb2N1c1RyYXApIHtcbiAgICAgIHRoaXMuX3RyYXBGb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfb3BlbkFuaW1hdGlvbkRvbmUoKSB7XG4gICAgaWYgKHRoaXMuX2NvbmZpZy5kZWxheUZvY3VzVHJhcCkge1xuICAgICAgdGhpcy5fdHJhcEZvY3VzKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -2,7 +2,7 @@ import { FocusMonitor, FocusTrapFactory, InteractivityChecker } from '@angular/c
2
2
  import { CdkDialogContainer } from '@angular/cdk/dialog';
3
3
  import { OverlayRef } from '@angular/cdk/overlay';
4
4
  import { DOCUMENT } from '@angular/common';
5
- import { Component, ElementRef, inject, Inject, NgZone, Optional } from '@angular/core';
5
+ import { Component, ElementRef, Inject, NgZone, Optional, inject } from '@angular/core';
6
6
  import { ANIMATED_LIFECYCLE_TOKEN } from '@ethlete/core';
7
7
  import { DIALOG_CONFIG } from '../../constants';
8
8
  import * as i0 from "@angular/core";
@@ -26,11 +26,11 @@ export class DialogContainerBaseComponent extends CdkDialogContainer {
26
26
  }
27
27
  }
28
28
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: DialogContainerBaseComponent, deps: [{ token: i0.ElementRef }, { token: i1.FocusTrapFactory }, { token: DOCUMENT, optional: true }, { token: DIALOG_CONFIG }, { token: i1.InteractivityChecker }, { token: i0.NgZone }, { token: i2.OverlayRef }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: DialogContainerBaseComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: DialogContainerBaseComponent, selector: "et-dialog-container-base", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
30
30
  }
31
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: DialogContainerBaseComponent, decorators: [{
32
32
  type: Component,
33
- args: [{ template: '' }]
33
+ args: [{ selector: 'et-dialog-container-base', template: '' }]
34
34
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.FocusTrapFactory }, { type: Document, decorators: [{
35
35
  type: Optional
36
36
  }, {
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
40
40
  type: Inject,
41
41
  args: [DIALOG_CONFIG]
42
42
  }] }, { type: i1.InteractivityChecker }, { type: i0.NgZone }, { type: i2.OverlayRef }, { type: i1.FocusMonitor }]; } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbnRhaW5lci1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvZGlhbG9nL3BhcnRpYWxzL2RpYWxvZy1jb250YWluZXItYmFzZS9kaWFsb2ctY29udGFpbmVyLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBSWhELE1BQU0sT0FBZ0IsNEJBQTZCLFNBQVEsa0JBQWdDO0lBR3pGLFlBQ1MsVUFBbUMsRUFDMUMsZ0JBQWtDLEVBQ0osU0FBbUIsRUFFakQsWUFBMEIsRUFDMUIsb0JBQTBDLEVBQzFDLE1BQWMsRUFDUCxVQUFzQixFQUM3QixZQUEyQjtRQUUzQixLQUFLLENBQ0gsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixTQUFTLEVBQ1QsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sVUFBVSxFQUNWLFlBQVksQ0FDYixDQUFDO1FBbkJLLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBT25DLGVBQVUsR0FBVixVQUFVLENBQVk7UUFWdEIsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUF1Qi9ELENBQUM7SUFFa0Isb0JBQW9CO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRTtZQUNoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs4R0FwQ21CLDRCQUE0Qiw0RUFNMUIsUUFBUSw2QkFDcEIsYUFBYTtrR0FQSCw0QkFBNEIsMkVBRDNCLEVBQUU7OzJGQUNILDRCQUE0QjtrQkFEakQsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7OzBCQU90QixRQUFROzswQkFBSSxNQUFNOzJCQUFDLFFBQVE7OzBCQUMzQixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IsIEZvY3VzVHJhcEZhY3RvcnksIEludGVyYWN0aXZpdHlDaGVja2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ2RrRGlhbG9nQ29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RpYWxvZyc7XG5pbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QsIEluamVjdCwgTmdab25lLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQU5JTUFURURfTElGRUNZQ0xFX1RPS0VOIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBESUFMT0dfQ09ORklHIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IERpYWxvZ0NvbmZpZyB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7IHRlbXBsYXRlOiAnJyB9KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERpYWxvZ0NvbnRhaW5lckJhc2VDb21wb25lbnQgZXh0ZW5kcyBDZGtEaWFsb2dDb250YWluZXI8RGlhbG9nQ29uZmlnPiB7XG4gIHJlYWRvbmx5IF9hbmltYXRlZExpZmVjeWNsZSA9IGluamVjdChBTklNQVRFRF9MSUZFQ1lDTEVfVE9LRU4pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBmb2N1c1RyYXBGYWN0b3J5OiBGb2N1c1RyYXBGYWN0b3J5LFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRE9DVU1FTlQpIF9kb2N1bWVudDogRG9jdW1lbnQsXG4gICAgQEluamVjdChESUFMT0dfQ09ORklHKVxuICAgIGRpYWxvZ0NvbmZpZzogRGlhbG9nQ29uZmlnLFxuICAgIGludGVyYWN0aXZpdHlDaGVja2VyOiBJbnRlcmFjdGl2aXR5Q2hlY2tlcixcbiAgICBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwdWJsaWMgb3ZlcmxheVJlZjogT3ZlcmxheVJlZixcbiAgICBmb2N1c01vbml0b3I/OiBGb2N1c01vbml0b3IsXG4gICkge1xuICAgIHN1cGVyKFxuICAgICAgZWxlbWVudFJlZixcbiAgICAgIGZvY3VzVHJhcEZhY3RvcnksXG4gICAgICBfZG9jdW1lbnQsXG4gICAgICBkaWFsb2dDb25maWcsXG4gICAgICBpbnRlcmFjdGl2aXR5Q2hlY2tlcixcbiAgICAgIG5nWm9uZSxcbiAgICAgIG92ZXJsYXlSZWYsXG4gICAgICBmb2N1c01vbml0b3IsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBfY2FwdHVyZUluaXRpYWxGb2N1cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5kZWxheUZvY3VzVHJhcCkge1xuICAgICAgdGhpcy5fdHJhcEZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9vcGVuQW5pbWF0aW9uRG9uZSgpIHtcbiAgICBpZiAodGhpcy5fY29uZmlnLmRlbGF5Rm9jdXNUcmFwKSB7XG4gICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbnRhaW5lci1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvZGlhbG9nL3BhcnRpYWxzL2RpYWxvZy1jb250YWluZXItYmFzZS9kaWFsb2ctY29udGFpbmVyLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBSWhELE1BQU0sT0FBZ0IsNEJBQTZCLFNBQVEsa0JBQWdDO0lBR3pGLFlBQ1MsVUFBbUMsRUFDMUMsZ0JBQWtDLEVBQ0osU0FBbUIsRUFFakQsWUFBMEIsRUFDMUIsb0JBQTBDLEVBQzFDLE1BQWMsRUFDUCxVQUFzQixFQUM3QixZQUEyQjtRQUUzQixLQUFLLENBQ0gsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixTQUFTLEVBQ1QsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sVUFBVSxFQUNWLFlBQVksQ0FDYixDQUFDO1FBbkJLLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBT25DLGVBQVUsR0FBVixVQUFVLENBQVk7UUFWdEIsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUF1Qi9ELENBQUM7SUFFa0Isb0JBQW9CO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRTtZQUNoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs4R0FwQ21CLDRCQUE0Qiw0RUFNMUIsUUFBUSw2QkFDcEIsYUFBYTtrR0FQSCw0QkFBNEIsdUZBRFcsRUFBRTs7MkZBQ3pDLDRCQUE0QjtrQkFEakQsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSwwQkFBMEIsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFOzswQkFPNUQsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxRQUFROzswQkFDM0IsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNNb25pdG9yLCBGb2N1c1RyYXBGYWN0b3J5LCBJbnRlcmFjdGl2aXR5Q2hlY2tlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IENka0RpYWxvZ0NvbnRhaW5lciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0LCBOZ1pvbmUsIE9wdGlvbmFsLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFOSU1BVEVEX0xJRkVDWUNMRV9UT0tFTiB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgRElBTE9HX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBEaWFsb2dDb25maWcgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoeyBzZWxlY3RvcjogJ2V0LWRpYWxvZy1jb250YWluZXItYmFzZScsIHRlbXBsYXRlOiAnJyB9KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERpYWxvZ0NvbnRhaW5lckJhc2VDb21wb25lbnQgZXh0ZW5kcyBDZGtEaWFsb2dDb250YWluZXI8RGlhbG9nQ29uZmlnPiB7XG4gIHJlYWRvbmx5IF9hbmltYXRlZExpZmVjeWNsZSA9IGluamVjdChBTklNQVRFRF9MSUZFQ1lDTEVfVE9LRU4pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBmb2N1c1RyYXBGYWN0b3J5OiBGb2N1c1RyYXBGYWN0b3J5LFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRE9DVU1FTlQpIF9kb2N1bWVudDogRG9jdW1lbnQsXG4gICAgQEluamVjdChESUFMT0dfQ09ORklHKVxuICAgIGRpYWxvZ0NvbmZpZzogRGlhbG9nQ29uZmlnLFxuICAgIGludGVyYWN0aXZpdHlDaGVja2VyOiBJbnRlcmFjdGl2aXR5Q2hlY2tlcixcbiAgICBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwdWJsaWMgb3ZlcmxheVJlZjogT3ZlcmxheVJlZixcbiAgICBmb2N1c01vbml0b3I/OiBGb2N1c01vbml0b3IsXG4gICkge1xuICAgIHN1cGVyKFxuICAgICAgZWxlbWVudFJlZixcbiAgICAgIGZvY3VzVHJhcEZhY3RvcnksXG4gICAgICBfZG9jdW1lbnQsXG4gICAgICBkaWFsb2dDb25maWcsXG4gICAgICBpbnRlcmFjdGl2aXR5Q2hlY2tlcixcbiAgICAgIG5nWm9uZSxcbiAgICAgIG92ZXJsYXlSZWYsXG4gICAgICBmb2N1c01vbml0b3IsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBfY2FwdHVyZUluaXRpYWxGb2N1cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5kZWxheUZvY3VzVHJhcCkge1xuICAgICAgdGhpcy5fdHJhcEZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9vcGVuQW5pbWF0aW9uRG9uZSgpIHtcbiAgICBpZiAodGhpcy5fY29uZmlnLmRlbGF5Rm9jdXNUcmFwKSB7XG4gICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -4,7 +4,7 @@ import { OverlayRef as CdkOverlayRef } from '@angular/cdk/overlay';
4
4
  import { PortalModule } from '@angular/cdk/portal';
5
5
  import { DOCUMENT } from '@angular/common';
6
6
  import { ChangeDetectionStrategy, Component, ElementRef, NgZone, ViewEncapsulation, inject } from '@angular/core';
7
- import { ANIMATED_LIFECYCLE_TOKEN, AnimatedLifecycleDirective, elementCanScroll, nextFrame } from '@ethlete/core';
7
+ import { ANIMATED_LIFECYCLE_TOKEN, AnimatedLifecycleDirective, RootBoundaryDirective, elementCanScroll, nextFrame, } from '@ethlete/core';
8
8
  import { ProvideThemeDirective, THEME_PROVIDER } from '@ethlete/theming';
9
9
  import { Subject, fromEvent, merge, takeUntil, tap } from 'rxjs';
10
10
  import { SwipeHandlerService } from '../../../../../../services';
@@ -23,6 +23,7 @@ export class OverlayContainerComponent extends CdkDialogContainer {
23
23
  this._dragToDismissStop$ = new Subject();
24
24
  this._themeProvider = inject(THEME_PROVIDER);
25
25
  this._parentThemeProvider = inject(THEME_PROVIDER, { optional: true, skipSelf: true });
26
+ this._rootBoundary = inject(RootBoundaryDirective);
26
27
  this._animatedLifecycle = inject(ANIMATED_LIFECYCLE_TOKEN);
27
28
  this.cdkOverlayRef = inject(CdkOverlayRef);
28
29
  this.overlayRef = null;
@@ -33,6 +34,7 @@ export class OverlayContainerComponent extends CdkDialogContainer {
33
34
  }
34
35
  _contentAttached() {
35
36
  super._contentAttached();
37
+ this._rootBoundary.boundaryElement = this._elementRef.nativeElement;
36
38
  nextFrame(() => {
37
39
  this._animatedLifecycle.enter();
38
40
  });
@@ -260,7 +262,7 @@ export class OverlayContainerComponent extends CdkDialogContainer {
260
262
  }
261
263
  }
262
264
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: OverlayContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
263
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: OverlayContainerComponent, isStandalone: true, selector: "et-overlay-container", host: { attributes: { "tabindex": "-1" }, properties: { "attr.aria-modal": "_config.ariaModal", "id": "_config.id", "attr.role": "_config.role", "attr.aria-labelledby": "_config.ariaLabel ? null : _ariaLabelledBy", "attr.aria-label": "_config.ariaLabel", "attr.aria-describedby": "_config.ariaDescribedBy || null", "class.et-with-default-animation": "!_config.customAnimated" }, classAttribute: "et-overlay" }, usesInheritance: true, hostDirectives: [{ directive: i1.AnimatedLifecycleDirective }, { directive: i2.ProvideThemeDirective }], ngImport: i0, template: `<ng-template cdkPortalOutlet></ng-template>`, isInline: true, styles: [".et-overlay{position:relative;display:grid;overflow:hidden;pointer-events:all;outline:none}.et-overlay>*{overflow:auto}.et-overlay-pane{pointer-events:none}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-to{transform:scale(0)!important;border-radius:250px}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),border-radius .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-1),border-radius .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-active{transition:transform .15s var(--ease-in-5),border-radius .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet{bottom:-50px;padding-bottom:50px}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-to{transform:translateY(100%)!important}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--top-sheet{top:-50px;padding-top:50px}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-to{transform:translateY(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--left-sheet{left:-50px;padding-left:50px}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-to{transform:translate(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--right-sheet{right:-50px;padding-right:50px}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-to{transform:translate(100%)!important}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-from{opacity:0!important;transform:scale(.85)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-to{opacity:0!important;transform:scale(.7)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),opacity .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-2),opacity .3s var(--ease-out-5)}}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-active{transition:transform .15s var(--ease-out-5),opacity .15s var(--ease-out-5)}\n"], dependencies: [{ kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
265
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: OverlayContainerComponent, isStandalone: true, selector: "et-overlay-container", host: { attributes: { "tabindex": "-1" }, properties: { "attr.aria-modal": "_config.ariaModal", "id": "_config.id", "attr.role": "_config.role", "attr.aria-labelledby": "_config.ariaLabel ? null : _ariaLabelledBy", "attr.aria-label": "_config.ariaLabel", "attr.aria-describedby": "_config.ariaDescribedBy || null", "class.et-with-default-animation": "!_config.customAnimated" }, classAttribute: "et-overlay" }, usesInheritance: true, hostDirectives: [{ directive: i1.RootBoundaryDirective }, { directive: i1.AnimatedLifecycleDirective }, { directive: i2.ProvideThemeDirective }], ngImport: i0, template: `<ng-template cdkPortalOutlet></ng-template>`, isInline: true, styles: [".et-overlay{position:relative;display:grid;overflow:hidden;pointer-events:all;outline:none}.et-overlay>*{overflow:auto}.et-overlay-pane{pointer-events:none}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-to{transform:scale(0)!important;border-radius:250px}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),border-radius .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-1),border-radius .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-active{transition:transform .15s var(--ease-in-5),border-radius .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet{bottom:-50px;padding-bottom:50px}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-to{transform:translateY(100%)!important}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--top-sheet{top:-50px;padding-top:50px}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-to{transform:translateY(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--left-sheet{left:-50px;padding-left:50px}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-to{transform:translate(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--right-sheet{right:-50px;padding-right:50px}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-to{transform:translate(100%)!important}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-from{opacity:0!important;transform:scale(.85)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-to{opacity:0!important;transform:scale(.7)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),opacity .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-2),opacity .3s var(--ease-out-5)}}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-active{transition:transform .15s var(--ease-out-5),opacity .15s var(--ease-out-5)}\n"], dependencies: [{ kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
264
266
  }
265
267
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: OverlayContainerComponent, decorators: [{
266
268
  type: Component,
@@ -274,6 +276,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
274
276
  '[attr.aria-label]': '_config.ariaLabel',
275
277
  '[attr.aria-describedby]': '_config.ariaDescribedBy || null',
276
278
  '[class.et-with-default-animation]': '!_config.customAnimated',
277
- }, standalone: true, imports: [PortalModule], hostDirectives: [AnimatedLifecycleDirective, ProvideThemeDirective], styles: [".et-overlay{position:relative;display:grid;overflow:hidden;pointer-events:all;outline:none}.et-overlay>*{overflow:auto}.et-overlay-pane{pointer-events:none}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-to{transform:scale(0)!important;border-radius:250px}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),border-radius .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-1),border-radius .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-active{transition:transform .15s var(--ease-in-5),border-radius .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet{bottom:-50px;padding-bottom:50px}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-to{transform:translateY(100%)!important}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--top-sheet{top:-50px;padding-top:50px}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-to{transform:translateY(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--left-sheet{left:-50px;padding-left:50px}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-to{transform:translate(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--right-sheet{right:-50px;padding-right:50px}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-to{transform:translate(100%)!important}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-from{opacity:0!important;transform:scale(.85)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-to{opacity:0!important;transform:scale(.7)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),opacity .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-2),opacity .3s var(--ease-out-5)}}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-active{transition:transform .15s var(--ease-out-5),opacity .15s var(--ease-out-5)}\n"] }]
279
+ }, standalone: true, imports: [PortalModule], hostDirectives: [RootBoundaryDirective, AnimatedLifecycleDirective, ProvideThemeDirective], styles: [".et-overlay{position:relative;display:grid;overflow:hidden;pointer-events:all;outline:none}.et-overlay>*{overflow:auto}.et-overlay-pane{pointer-events:none}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-to{transform:scale(0)!important;border-radius:250px}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),border-radius .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-1),border-radius .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--full-screen-dialog.et-animation-leave-active{transition:transform .15s var(--ease-in-5),border-radius .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet{bottom:-50px;padding-bottom:50px}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-to{transform:translateY(100%)!important}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--bottom-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--top-sheet{top:-50px;padding-top:50px}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-to{transform:translateY(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--top-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--left-sheet{left:-50px;padding-left:50px}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-to{transform:translate(-100%)!important}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--left-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--right-sheet{right:-50px;padding-right:50px}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-from,.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-to{transform:translate(100%)!important}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-enter-active{transition:transform .3s var(--ease-spring-1)}}.et-overlay.et-with-default-animation.et-overlay--right-sheet.et-animation-leave-active{transition:transform .15s var(--ease-in-5)}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-from{opacity:0!important;transform:scale(.85)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-to{opacity:0!important;transform:scale(.7)!important}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-out-5),opacity .3s var(--ease-out-5)}@supports (transition-timing-function: linear(0,1)){.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-enter-active{transition:transform .3s var(--ease-spring-2),opacity .3s var(--ease-out-5)}}.et-overlay.et-with-default-animation.et-overlay--dialog.et-animation-leave-active{transition:transform .15s var(--ease-out-5),opacity .15s var(--ease-out-5)}\n"] }]
278
280
  }], ctorParameters: function () { return []; } });
279
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS1jb250YWluZXIvb3ZlcmxheS1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxJQUFJLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsMEJBQTBCLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7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LEVBQUUsSUFBSTt3QkFDZCxtQkFBbUIsRUFBRSxtQkFBbUI7d0JBQ3hDLE1BQU0sRUFBRSxZQUFZO3dCQUNwQixhQUFhLEVBQUUsY0FBYzt3QkFDN0Isd0JBQXdCLEVBQUUsNENBQTRDO3dCQUN0RSxtQkFBbUIsRUFBRSxtQkFBbUI7d0JBQ3hDLHlCQUF5QixFQUFFLGlDQUFpQzt3QkFDNUQsbUNBQW1DLEVBQUUseUJBQXlCO3FCQUMvRCxjQUNXLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxrQkFDUCxDQUFDLDBCQUEwQixFQUFFLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNNb25pdG9yLCBGb2N1c1RyYXBGYWN0b3J5LCBJbnRlcmFjdGl2aXR5Q2hlY2tlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IENka0RpYWxvZ0NvbnRhaW5lciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiBhcyBDZGtPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBOZ1pvbmUsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFOSU1BVEVEX0xJRkVDWUNMRV9UT0tFTiwgQW5pbWF0ZWRMaWZlY3ljbGVEaXJlY3RpdmUsIGVsZW1lbnRDYW5TY3JvbGwsIG5leHRGcmFtZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgUHJvdmlkZVRoZW1lRGlyZWN0aXZlLCBUSEVNRV9QUk9WSURFUiB9IGZyb20gJ0BldGhsZXRlL3RoZW1pbmcnO1xuaW1wb3J0IHsgU3ViamVjdCwgZnJvbUV2ZW50LCBtZXJnZSwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN3aXBlSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBTd2lwZUVuZEV2ZW50LCBTd2lwZVVwZGF0ZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgT1ZFUkxBWV9DT05GSUcgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgT3ZlcmxheUNvbmZpZywgT3ZlcmxheURyYWdUb0Rpc21pc3NDb25maWcgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5jb25zdCBpc1RvdWNoRXZlbnQgPSAoZXZlbnQ6IEV2ZW50KTogZXZlbnQgaXMgVG91Y2hFdmVudCA9PiB7XG4gIHJldHVybiBldmVudC50eXBlWzBdID09PSAndCc7XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1vdmVybGF5LWNvbnRhaW5lcicsXG4gIHN0eWxlVXJsczogWycuL292ZXJsYXktY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlOiBgPG5nLXRlbXBsYXRlIGNka1BvcnRhbE91dGxldD48L25nLXRlbXBsYXRlPmAsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdldC1vdmVybGF5JyxcbiAgICB0YWJpbmRleDogJy0xJyxcbiAgICAnW2F0dHIuYXJpYS1tb2RhbF0nOiAnX2NvbmZpZy5hcmlhTW9kYWwnLFxuICAgICdbaWRdJzogJ19jb25maWcuaWQnLFxuICAgICdbYXR0ci5yb2xlXSc6ICdfY29uZmlnLnJvbGUnLFxuICAgICdbYXR0ci5hcmlhLWxhYmVsbGVkYnldJzogJ19jb25maWcuYXJpYUxhYmVsID8gbnVsbCA6IF9hcmlhTGFiZWxsZWRCeScsXG4gICAgJ1thdHRyLmFyaWEtbGFiZWxdJzogJ19jb25maWcuYXJpYUxhYmVsJyxcbiAgICAnW2F0dHIuYXJpYS1kZXNjcmliZWRieV0nOiAnX2NvbmZpZy5hcmlhRGVzY3JpYmVkQnkgfHwgbnVsbCcsXG4gICAgJ1tjbGFzcy5ldC13aXRoLWRlZmF1bHQtYW5pbWF0aW9uXSc6ICchX2NvbmZpZy5jdXN0b21BbmltYXRlZCcsXG4gIH0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtQb3J0YWxNb2R1bGVdLFxuICBob3N0RGlyZWN0aXZlczogW0FuaW1hdGVkTGlmZWN5Y2xlRGlyZWN0aXZlLCBQcm92aWRlVGhlbWVEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBPdmVybGF5Q29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgQ2RrRGlhbG9nQ29udGFpbmVyPE92ZXJsYXlDb25maWc+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3dpcGVIYW5kbGVyU2VydmljZSA9IGluamVjdChTd2lwZUhhbmRsZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJhZ1RvRGlzbWlzc1N0b3AkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdGhlbWVQcm92aWRlciA9IGluamVjdChUSEVNRV9QUk9WSURFUik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3BhcmVudFRoZW1lUHJvdmlkZXIgPSBpbmplY3QoVEhFTUVfUFJPVklERVIsIHsgb3B0aW9uYWw6IHRydWUsIHNraXBTZWxmOiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IF9hbmltYXRlZExpZmVjeWNsZSA9IGluamVjdChBTklNQVRFRF9MSUZFQ1lDTEVfVE9LRU4pO1xuICByZWFkb25seSBjZGtPdmVybGF5UmVmID0gaW5qZWN0KENka092ZXJsYXlSZWYpO1xuXG4gIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYgfCBudWxsID0gbnVsbDtcblxuICByZWFkb25seSBlbGVtZW50UmVmID0gdGhpcy5fZWxlbWVudFJlZjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihcbiAgICAgIGluamVjdChFbGVtZW50UmVmKSxcbiAgICAgIGluamVjdChGb2N1c1RyYXBGYWN0b3J5KSxcbiAgICAgIGluamVjdChET0NVTUVOVCksXG4gICAgICBpbmplY3QoT1ZFUkxBWV9DT05GSUcpLFxuICAgICAgaW5qZWN0KEludGVyYWN0aXZpdHlDaGVja2VyKSxcbiAgICAgIGluamVjdChOZ1pvbmUpLFxuICAgICAgaW5qZWN0KENka092ZXJsYXlSZWYpLFxuICAgICAgaW5qZWN0KEZvY3VzTW9uaXRvciksXG4gICAgKTtcblxuICAgIGlmICh0aGlzLl9wYXJlbnRUaGVtZVByb3ZpZGVyKSB7XG4gICAgICB0aGlzLl90aGVtZVByb3ZpZGVyLnN5bmNXaXRoUHJvdmlkZXIodGhpcy5fcGFyZW50VGhlbWVQcm92aWRlcik7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIF9jb250ZW50QXR0YWNoZWQoKTogdm9pZCB7XG4gICAgc3VwZXIuX2NvbnRlbnRBdHRhY2hlZCgpO1xuXG4gICAgbmV4dEZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMuX2FuaW1hdGVkTGlmZWN5Y2xlLmVudGVyKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgX2NhcHR1cmVJbml0aWFsRm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jb25maWcuZGVsYXlGb2N1c1RyYXApIHtcbiAgICAgIHRoaXMuX3RyYXBGb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfb3BlbkFuaW1hdGlvbkRvbmUoKSB7XG4gICAgaWYgKHRoaXMuX2NvbmZpZy5kZWxheUZvY3VzVHJhcCkge1xuICAgICAgdGhpcy5fdHJhcEZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgX2VuYWJsZURyYWdUb0Rpc21pc3MoY29uZmlnOiBPdmVybGF5RHJhZ1RvRGlzbWlzc0NvbmZpZykge1xuICAgIGlmICghdGhpcy5vdmVybGF5UmVmKSByZXR1cm47XG5cbiAgICB0aGlzLl9kcmFnVG9EaXNtaXNzU3RvcCQubmV4dCgpO1xuXG4gICAgY29uc3QgZWwgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgbGV0IHN3aXBlSWQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICAgIGxldCBpc1NlbGVjdGlvbkFjdGl2ZSA9IGZhbHNlO1xuXG4gICAgY29uc3QgY2FuY2VsRHJhZyA9ICgpID0+IHtcbiAgICAgIGVsLnN0eWxlLnNldFByb3BlcnR5KCd0cmFuc2l0aW9uJywgJ3RyYW5zZm9ybSAxMDBtcyB2YXIoLS1lYXNlLW91dC0xKScpO1xuICAgICAgZWwuc3R5bGUudHJhbnNmb3JtID1cbiAgICAgICAgY29uZmlnLmRpcmVjdGlvbiA9PT0gJ3RvLWJvdHRvbScgfHwgY29uZmlnLmRpcmVjdGlvbiA9PT0gJ3RvLXRvcCcgPyAndHJhbnNsYXRlWSgwKScgOiAndHJhbnNsYXRlWCgwKSc7XG4gICAgICBzd2lwZUlkID0gbnVsbDtcblxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGVsLnN0eWxlLnJlbW92ZVByb3BlcnR5KCd0cmFuc2l0aW9uJyk7XG4gICAgICAgIGVsLnN0eWxlLnJlbW92ZVByb3BlcnR5KCd0cmFuc2Zvcm0nKTtcbiAgICAgIH0sIDEwMCk7XG4gICAgfTtcblxuICAgIG1lcmdlKGZyb21FdmVudDxUb3VjaEV2ZW50PihlbCwgJ3RvdWNoc3RhcnQnKSwgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGVsLCAnbW91c2Vkb3duJykpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2RyYWdUb0Rpc21pc3NTdG9wJCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm92ZXJsYXlSZWYuYWZ0ZXJDbG9zZWQoKSksXG4gICAgICAgIHRhcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICBpZiAoaXNTZWxlY3Rpb25BY3RpdmUpIHJldHVybjtcblxuICAgICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICBjb25zdCB0YWcgPSB0YXJnZXQudGFnTmFtZS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgICAgICAgaWYgKHRhZyA9PT0gJ2lucHV0JyB8fCB0YWcgPT09ICd0ZXh0YXJlYScgfHwgdGFnID09PSAnc2VsZWN0JyB8fCB0YWcgPT09ICdidXR0b24nIHx8IHRhZyA9PT0gJ2EnKSByZXR1cm47XG5cbiAgICAgICAgICBzd2lwZUlkID0gdGhpcy5fc3dpcGVIYW5kbGVyU2VydmljZS5zdGFydFN3aXBlKGV2ZW50KTtcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG5cbiAgICBmcm9tRXZlbnQ8RXZlbnQ+KGRvY3VtZW50LCAnc2VsZWN0aW9uY2hhbmdlJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kcmFnVG9EaXNtaXNzU3RvcCQpLCB0YWtlVW50aWwodGhpcy5vdmVybGF5UmVmLmFmdGVyQ2xvc2VkKCkpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IGRvY3VtZW50LmdldFNlbGVjdGlvbigpO1xuXG4gICAgICAgIGlmICghc2VsZWN0aW9uIHx8ICFzZWxlY3Rpb24udG9TdHJpbmcoKS5sZW5ndGgpIHtcbiAgICAgICAgICBpc1NlbGVjdGlvbkFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlzU2VsZWN0aW9uQWN0aXZlID0gdHJ1ZTtcblxuICAgICAgICBjYW5jZWxEcmFnKCk7XG4gICAgICB9KTtcblxuICAgIG1lcmdlKGZyb21FdmVudDxUb3VjaEV2ZW50PihlbCwgJ3RvdWNobW92ZScpLCBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZWwsICdtb3VzZW1vdmUnKSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZHJhZ1RvRGlzbWlzc1N0b3AkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMub3ZlcmxheVJlZi5hZnRlckNsb3NlZCgpKSxcbiAgICAgICAgdGFwKChldmVudCkgPT4ge1xuICAgICAgICAgIGlmIChzd2lwZUlkID09PSBudWxsIHx8IGlzU2VsZWN0aW9uQWN0aXZlKSByZXR1cm47XG5cbiAgICAgICAgICBpZiAoaXNUb3VjaEV2ZW50KGV2ZW50KSkge1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgICAgICBjb25zdCByZWN1cnNpdmVGaW5kU2Nyb2xsYWJsZVBhcmVudCA9IChlbDogSFRNTEVsZW1lbnQpOiBIVE1MRWxlbWVudCB8IG51bGwgPT4ge1xuICAgICAgICAgICAgICBpZiAoIWVsKSByZXR1cm4gbnVsbDtcblxuICAgICAgICAgICAgICBpZiAoY29uZmlnLmRpcmVjdGlvbiA9PT0gJ3RvLWJvdHRvbScgfHwgY29uZmlnLmRpcmVjdGlvbiA9PT0gJ3RvLXRvcCcpIHtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudENhblNjcm9sbChlbCwgJ3knKSkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGVsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudENhblNjcm9sbChlbCwgJ3gnKSkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGVsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlmICghZWwucGFyZW50RWxlbWVudCB8fCBlbC50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdldC1vdmVybGF5LWNvbnRhaW5lcicpIHJldHVybiBudWxsO1xuXG4gICAgICAgICAgICAgIHJldHVybiByZWN1cnNpdmVGaW5kU2Nyb2xsYWJsZVBhcmVudChlbC5wYXJlbnRFbGVtZW50KTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IHNjcm9sbGFibGVFbGVtZW50ID0gcmVjdXJzaXZlRmluZFNjcm9sbGFibGVQYXJlbnQodGFyZ2V0KTtcblxuICAgICAgICAgICAgaWYgKHNjcm9sbGFibGVFbGVtZW50KSB7XG4gICAgICAgICAgICAgIGxldCBjYW5jZWwgPSBmYWxzZTtcbiAgICAgICAgICAgICAgaWYgKGNvbmZpZy5kaXJlY3Rpb24gPT09ICd0by1ib3R0b20nKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNjcm9sbGFibGVFbGVtZW50LnNjcm9sbFRvcCAhPT0gMCkge1xuICAgICAgICAgICAgICAgICAgY2FuY2VsID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoY29uZmlnLmRpcmVjdGlvbiA9PT0gJ3RvLXRvcCcpIHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICBNYXRoLnJvdW5kKHNjcm9sbGFibGVFbGVtZW50LnNjcm9sbFRvcCkgIT09XG4gICAgICAgICAgICAgICAgICBzY3JvbGxhYmxlRWxlbWVudC5zY3JvbGxIZWlnaHQgLSBzY3JvbGxhYmxlRWxlbWVudC5jbGllbnRIZWlnaHRcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgIGNhbmNlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNvbmZpZy5kaXJlY3Rpb24gPT09ICd0by1yaWdodCcpIHtcbiAgICAgICAgICAgICAgICBpZiAoc2Nyb2xsYWJsZUVsZW1lbnQuc2Nyb2xsTGVmdCAhPT0gMCkge1xuICAgICAgICAgICAgICAgICAgY2FuY2VsID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgTWF0aC5yb3VuZChzY3JvbGxhYmxlRWxlbWVudC5zY3JvbGxMZWZ0KSAhPT1cbiAgICAgICAgICAgICAgICAgIHNjcm9sbGFibGVFbGVtZW50LnNjcm9sbFdpZHRoIC0gc2Nyb2xsYWJsZUVsZW1lbnQuY2xpZW50V2lkdGhcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgIGNhbmNlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaWYgKGNhbmNlbCkge1xuICAgICAgICAgICAgICAgIGNhbmNlbERyYWcoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHN3aXBlRGF0YSA9IHRoaXMuX3N3aXBlSGFuZGxlclNlcnZpY2UudXBkYXRlU3dpcGUoc3dpcGVJZCwgZXZlbnQpO1xuXG4gICAgICAgICAgaWYgKCFzd2lwZURhdGEpIHJldHVybjtcblxuICAgICAgICAgIGNvbnN0IGNzcyA9IHRoaXMuX2RlZmF1bHRTd2lwZU1vdmVTdHlsZUludGVycG9sYXRvcihzd2lwZURhdGEsIGNvbmZpZyk7XG5cbiAgICAgICAgICBPYmplY3QuZW50cmllcyhjc3MpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgZWwuc3R5bGUuc2V0UHJvcGVydHkoa2V5LCB2YWx1ZSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgbWVyZ2UoZnJvbUV2ZW50PFRvdWNoRXZlbnQ+KGVsLCAndG91Y2hlbmQnKSwgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGVsLCAnbW91c2V1cCcpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kcmFnVG9EaXNtaXNzU3RvcCQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5vdmVybGF5UmVmLmFmdGVyQ2xvc2VkKCkpLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIGlmIChzd2lwZUlkID09PSBudWxsIHx8IGlzU2VsZWN0aW9uQWN0aXZlKSByZXR1cm47XG5cbiAgICAgICAgICBjb25zdCBzd2lwZURhdGEgPSB0aGlzLl9zd2lwZUhhbmRsZXJTZXJ2aWNlLmVuZFN3aXBlKHN3aXBlSWQpO1xuICAgICAgICAgIHN3aXBlSWQgPSBudWxsO1xuXG4gICAgICAgICAgaWYgKCFzd2lwZURhdGEpIHJldHVybjtcblxuICAgICAgICAgIGNvbnN0IGNzcyA9IHRoaXMuX2RlZmF1bHRTd2lwZUVuZFN0eWxlSW50ZXJwb2xhdG9yKHN3aXBlRGF0YSwgY29uZmlnKTtcblxuICAgICAgICAgIGlmICghY3NzKSB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlSZWY/Ll9jbG9zZU92ZXJsYXlWaWEoJ3RvdWNoJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgT2JqZWN0LmVudHJpZXMoY3NzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgICAgIGlmIChrZXkgPT09ICdjbGVhblVwJykge1xuICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyB8fCAhdmFsdWUpIHJldHVybjtcblxuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5mbihlbCk7XG4gICAgICAgICAgICAgIH0sIHZhbHVlLmRlbGF5KTtcblxuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGVsLnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFsdWUgYXMgc3RyaW5nKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBfZGlzYWJsZURyYWdUb0Rpc21pc3MoKSB7XG4gICAgdGhpcy5fZHJhZ1RvRGlzbWlzc1N0b3AkLm5leHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2RlZmF1bHRTd2lwZU1vdmVTdHlsZUludGVycG9sYXRvcihldmVudDogU3dpcGVVcGRhdGVFdmVudCwgY29uZmlnOiBPdmVybGF5RHJhZ1RvRGlzbWlzc0NvbmZpZykge1xuICAgIGNvbnN0IHsgZGlyZWN0aW9uIH0gPSBjb25maWc7XG4gICAgY29uc3QgeyBtb3ZlbWVudFgsIG1vdmVtZW50WSB9ID0gZXZlbnQ7XG5cbiAgICBpZiAoZGlyZWN0aW9uID09PSAndG8tYm90dG9tJykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke21vdmVtZW50WSA8IDAgPyAwIDogbW92ZW1lbnRZfXB4KWAsXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAndG8tdG9wJykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke21vdmVtZW50WSA+IDAgPyAwIDogbW92ZW1lbnRZfXB4KWAsXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAndG8tbGVmdCcpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVgoJHttb3ZlbWVudFggPiAwID8gMCA6IG1vdmVtZW50WH1weClgLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWCgke21vdmVtZW50WCA8IDAgPyAwIDogbW92ZW1lbnRYfXB4KWAsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2RlZmF1bHRTd2lwZUVuZFN0eWxlSW50ZXJwb2xhdG9yKGV2ZW50OiBTd2lwZUVuZEV2ZW50LCBjb25maWc6IE92ZXJsYXlEcmFnVG9EaXNtaXNzQ29uZmlnKSB7XG4gICAgY29uc3QgeyBkaXJlY3Rpb24sIG1pbkRpc3RhbmNlVG9EaXNtaXNzID0gMTUwLCBtaW5WZWxvY2l0eVRvRGlzbWlzcyA9IDE1MCB9ID0gY29uZmlnO1xuICAgIGNvbnN0IHsgbW92ZW1lbnRYLCBtb3ZlbWVudFksIHBpeGVsUGVyU2Vjb25kWCwgcGl4ZWxQZXJTZWNvbmRZIH0gPSBldmVudDtcblxuICAgIGNvbnN0IGNsZWFuVXAgPSB7XG4gICAgICBkZWxheTogMTAwLFxuICAgICAgZm46IChlbDogSFRNTEVsZW1lbnQpID0+IGVsLnN0eWxlLnJlbW92ZVByb3BlcnR5KCd0cmFuc2l0aW9uJyksXG4gICAgfTtcblxuICAgIGlmIChkaXJlY3Rpb24gPT09ICd0by1ib3R0b20nKSB7XG4gICAgICBpZiAobW92ZW1lbnRZIDwgbWluRGlzdGFuY2VUb0Rpc21pc3MgJiYgcGl4ZWxQZXJTZWNvbmRZIDwgbWluVmVsb2NpdHlUb0Rpc21pc3MpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDApYCxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAndHJhbnNmb3JtIDEwMG1zIHZhcigtLWVhc2Utb3V0LTEpJyxcbiAgICAgICAgICBjbGVhblVwOiBtb3ZlbWVudFkgPyBjbGVhblVwIDogdW5kZWZpbmVkLFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09ICd0by10b3AnKSB7XG4gICAgICBpZiAobW92ZW1lbnRZID4gLW1pbkRpc3RhbmNlVG9EaXNtaXNzICYmIHBpeGVsUGVyU2Vjb25kWSA+IC1taW5WZWxvY2l0eVRvRGlzbWlzcykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoMClgLFxuICAgICAgICAgIHRyYW5zaXRpb246ICd0cmFuc2Zvcm0gMTAwbXMgdmFyKC0tZWFzZS1vdXQtMSknLFxuICAgICAgICAgIGNsZWFuVXA6IG1vdmVtZW50WSA/IGNsZWFuVXAgOiB1bmRlZmluZWQsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ3RvLWxlZnQnKSB7XG4gICAgICBpZiAobW92ZW1lbnRYID4gLW1pbkRpc3RhbmNlVG9EaXNtaXNzICYmIHBpeGVsUGVyU2Vjb25kWCA+IC1taW5WZWxvY2l0eVRvRGlzbWlzcykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVgoMClgLFxuICAgICAgICAgIHRyYW5zaXRpb246ICd0cmFuc2Zvcm0gMTAwbXMgdmFyKC0tZWFzZS1vdXQtMSknLFxuICAgICAgICAgIGNsZWFuVXA6IG1vdmVtZW50WCA/IGNsZWFuVXAgOiB1bmRlZmluZWQsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKG1vdmVtZW50WCA8IG1pbkRpc3RhbmNlVG9EaXNtaXNzICYmIHBpeGVsUGVyU2Vjb25kWCA8IG1pblZlbG9jaXR5VG9EaXNtaXNzKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWCgwKWAsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ3RyYW5zZm9ybSAxMDBtcyB2YXIoLS1lYXNlLW91dC0xKScsXG4gICAgICAgICAgY2xlYW5VcDogbW92ZW1lbnRYID8gY2xlYW5VcCA6IHVuZGVmaW5lZCxcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
281
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9vdmVybGF5L2NvbXBvbmVudHMvb3ZlcmxheS1jb250YWluZXIvb3ZlcmxheS1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxJQUFJLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDBCQUEwQixFQUMxQixxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQ2hCLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxN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O2tCQXJCckMsU0FBUzsrQkFDRSxzQkFBc0IsWUFFdEIsNkNBQTZDLGlCQUN4QyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxZQUFZO3dCQUNuQixRQUFRLEVBQUUsSUFBSTt3QkFDZCxtQkFBbUIsRUFBRSxtQkFBbUI7d0JBQ3hDLE1BQU0sRUFBRSxZQUFZO3dCQUNwQixhQUFhLEVBQUUsY0FBYzt3QkFDN0Isd0JBQXdCLEVBQUUsNENBQTRDO3dCQUN0RSxtQkFBbUIsRUFBRSxtQkFBbUI7d0JBQ3hDLHlCQUF5QixFQUFFLGlDQUFpQzt3QkFDNUQsbUNBQW1DLEVBQUUseUJBQXlCO3FCQUMvRCxjQUNXLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxrQkFDUCxDQUFDLHFCQUFxQixFQUFFLDBCQUEwQixFQUFFLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNNb25pdG9yLCBGb2N1c1RyYXBGYWN0b3J5LCBJbnRlcmFjdGl2aXR5Q2hlY2tlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IENka0RpYWxvZ0NvbnRhaW5lciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiBhcyBDZGtPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBOZ1pvbmUsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFOSU1BVEVEX0xJRkVDWUNMRV9UT0tFTixcbiAgQW5pbWF0ZWRMaWZlY3ljbGVEaXJlY3RpdmUsXG4gIFJvb3RCb3VuZGFyeURpcmVjdGl2ZSxcbiAgZWxlbWVudENhblNjcm9sbCxcbiAgbmV4dEZyYW1lLFxufSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IFByb3ZpZGVUaGVtZURpcmVjdGl2ZSwgVEhFTUVfUFJPVklERVIgfSBmcm9tICdAZXRobGV0ZS90aGVtaW5nJztcbmltcG9ydCB7IFN1YmplY3QsIGZyb21FdmVudCwgbWVyZ2UsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTd2lwZUhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgU3dpcGVFbmRFdmVudCwgU3dpcGVVcGRhdGVFdmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IE9WRVJMQVlfQ09ORklHIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IE92ZXJsYXlDb25maWcsIE92ZXJsYXlEcmFnVG9EaXNtaXNzQ29uZmlnIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuY29uc3QgaXNUb3VjaEV2ZW50ID0gKGV2ZW50OiBFdmVudCk6IGV2ZW50IGlzIFRvdWNoRXZlbnQgPT4ge1xuICByZXR1cm4gZXZlbnQudHlwZVswXSA9PT0gJ3QnO1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtb3ZlcmxheS1jb250YWluZXInLFxuICBzdHlsZVVybHM6IFsnLi9vdmVybGF5LWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZTogYDxuZy10ZW1wbGF0ZSBjZGtQb3J0YWxPdXRsZXQ+PC9uZy10ZW1wbGF0ZT5gLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtb3ZlcmxheScsXG4gICAgdGFiaW5kZXg6ICctMScsXG4gICAgJ1thdHRyLmFyaWEtbW9kYWxdJzogJ19jb25maWcuYXJpYU1vZGFsJyxcbiAgICAnW2lkXSc6ICdfY29uZmlnLmlkJyxcbiAgICAnW2F0dHIucm9sZV0nOiAnX2NvbmZpZy5yb2xlJyxcbiAgICAnW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XSc6ICdfY29uZmlnLmFyaWFMYWJlbCA/IG51bGwgOiBfYXJpYUxhYmVsbGVkQnknLFxuICAgICdbYXR0ci5hcmlhLWxhYmVsXSc6ICdfY29uZmlnLmFyaWFMYWJlbCcsXG4gICAgJ1thdHRyLmFyaWEtZGVzY3JpYmVkYnldJzogJ19jb25maWcuYXJpYURlc2NyaWJlZEJ5IHx8IG51bGwnLFxuICAgICdbY2xhc3MuZXQtd2l0aC1kZWZhdWx0LWFuaW1hdGlvbl0nOiAnIV9jb25maWcuY3VzdG9tQW5pbWF0ZWQnLFxuICB9LFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbUG9ydGFsTW9kdWxlXSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtSb290Qm91bmRhcnlEaXJlY3RpdmUsIEFuaW1hdGVkTGlmZWN5Y2xlRGlyZWN0aXZlLCBQcm92aWRlVGhlbWVEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBPdmVybGF5Q29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgQ2RrRGlhbG9nQ29udGFpbmVyPE92ZXJsYXlDb25maWc+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3dpcGVIYW5kbGVyU2VydmljZSA9IGluamVjdChTd2lwZUhhbmRsZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHJhZ1RvRGlzbWlzc1N0b3AkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcmVhZG9ubHkgX3RoZW1lUHJvdmlkZXIgPSBpbmplY3QoVEhFTUVfUFJPVklERVIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnRUaGVtZVByb3ZpZGVyID0gaW5qZWN0KFRIRU1FX1BST1ZJREVSLCB7IG9wdGlvbmFsOiB0cnVlLCBza2lwU2VsZjogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgX3Jvb3RCb3VuZGFyeSA9IGluamVjdChSb290Qm91bmRhcnlEaXJlY3RpdmUpO1xuXG4gIHJlYWRvbmx5IF9hbmltYXRlZExpZmVjeWNsZSA9IGluamVjdChBTklNQVRFRF9MSUZFQ1lDTEVfVE9LRU4pO1xuICByZWFkb25seSBjZGtPdmVybGF5UmVmID0gaW5qZWN0KENka092ZXJsYXlSZWYpO1xuXG4gIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYgfCBudWxsID0gbnVsbDtcblxuICByZWFkb25seSBlbGVtZW50UmVmID0gdGhpcy5fZWxlbWVudFJlZjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihcbiAgICAgIGluamVjdChFbGVtZW50UmVmKSxcbiAgICAgIGluamVjdChGb2N1c1RyYXBGYWN0b3J5KSxcbiAgICAgIGluamVjdChET0NVTUVOVCksXG4gICAgICBpbmplY3QoT1ZFUkxBWV9DT05GSUcpLFxuICAgICAgaW5qZWN0KEludGVyYWN0aXZpdHlDaGVja2VyKSxcbiAgICAgIGluamVjdChOZ1pvbmUpLFxuICAgICAgaW5qZWN0KENka092ZXJsYXlSZWYpLFxuICAgICAgaW5qZWN0KEZvY3VzTW9uaXRvciksXG4gICAgKTtcblxuICAgIGlmICh0aGlzLl9wYXJlbnRUaGVtZVByb3ZpZGVyKSB7XG4gICAgICB0aGlzLl90aGVtZVByb3ZpZGVyLnN5bmNXaXRoUHJvdmlkZXIodGhpcy5fcGFyZW50VGhlbWVQcm92aWRlcik7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIF9jb250ZW50QXR0YWNoZWQoKTogdm9pZCB7XG4gICAgc3VwZXIuX2NvbnRlbnRBdHRhY2hlZCgpO1xuXG4gICAgdGhpcy5fcm9vdEJvdW5kYXJ5LmJvdW5kYXJ5RWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgIG5leHRGcmFtZSgoKSA9PiB7XG4gICAgICB0aGlzLl9hbmltYXRlZExpZmVjeWNsZS5lbnRlcigpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIF9jYXB0dXJlSW5pdGlhbEZvY3VzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fY29uZmlnLmRlbGF5Rm9jdXNUcmFwKSB7XG4gICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgX29wZW5BbmltYXRpb25Eb25lKCkge1xuICAgIGlmICh0aGlzLl9jb25maWcuZGVsYXlGb2N1c1RyYXApIHtcbiAgICAgIHRoaXMuX3RyYXBGb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIF9lbmFibGVEcmFnVG9EaXNtaXNzKGNvbmZpZzogT3ZlcmxheURyYWdUb0Rpc21pc3NDb25maWcpIHtcbiAgICBpZiAoIXRoaXMub3ZlcmxheVJlZikgcmV0dXJuO1xuXG4gICAgdGhpcy5fZHJhZ1RvRGlzbWlzc1N0b3AkLm5leHQoKTtcblxuICAgIGNvbnN0IGVsID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuICAgIGxldCBzd2lwZUlkOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBsZXQgaXNTZWxlY3Rpb25BY3RpdmUgPSBmYWxzZTtcblxuICAgIGNvbnN0IGNhbmNlbERyYWcgPSAoKSA9PiB7XG4gICAgICBlbC5zdHlsZS5zZXRQcm9wZXJ0eSgndHJhbnNpdGlvbicsICd0cmFuc2Zvcm0gMTAwbXMgdmFyKC0tZWFzZS1vdXQtMSknKTtcbiAgICAgIGVsLnN0eWxlLnRyYW5zZm9ybSA9XG4gICAgICAgIGNvbmZpZy5kaXJlY3Rpb24gPT09ICd0by1ib3R0b20nIHx8IGNvbmZpZy5kaXJlY3Rpb24gPT09ICd0by10b3AnID8gJ3RyYW5zbGF0ZVkoMCknIDogJ3RyYW5zbGF0ZVgoMCknO1xuICAgICAgc3dpcGVJZCA9IG51bGw7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBlbC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgndHJhbnNpdGlvbicpO1xuICAgICAgICBlbC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgndHJhbnNmb3JtJyk7XG4gICAgICB9LCAxMDApO1xuICAgIH07XG5cbiAgICBtZXJnZShmcm9tRXZlbnQ8VG91Y2hFdmVudD4oZWwsICd0b3VjaHN0YXJ0JyksIGZyb21FdmVudDxNb3VzZUV2ZW50PihlbCwgJ21vdXNlZG93bicpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kcmFnVG9EaXNtaXNzU3RvcCQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5vdmVybGF5UmVmLmFmdGVyQ2xvc2VkKCkpLFxuICAgICAgICB0YXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgaWYgKGlzU2VsZWN0aW9uQWN0aXZlKSByZXR1cm47XG5cbiAgICAgICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgY29uc3QgdGFnID0gdGFyZ2V0LnRhZ05hbWUudG9Mb3dlckNhc2UoKTtcblxuICAgICAgICAgIGlmICh0YWcgPT09ICdpbnB1dCcgfHwgdGFnID09PSAndGV4dGFyZWEnIHx8IHRhZyA9PT0gJ3NlbGVjdCcgfHwgdGFnID09PSAnYnV0dG9uJyB8fCB0YWcgPT09ICdhJykgcmV0dXJuO1xuXG4gICAgICAgICAgc3dpcGVJZCA9IHRoaXMuX3N3aXBlSGFuZGxlclNlcnZpY2Uuc3RhcnRTd2lwZShldmVudCk7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgZnJvbUV2ZW50PEV2ZW50Pihkb2N1bWVudCwgJ3NlbGVjdGlvbmNoYW5nZScpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZHJhZ1RvRGlzbWlzc1N0b3AkKSwgdGFrZVVudGlsKHRoaXMub3ZlcmxheVJlZi5hZnRlckNsb3NlZCgpKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKTtcblxuICAgICAgICBpZiAoIXNlbGVjdGlvbiB8fCAhc2VsZWN0aW9uLnRvU3RyaW5nKCkubGVuZ3RoKSB7XG4gICAgICAgICAgaXNTZWxlY3Rpb25BY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpc1NlbGVjdGlvbkFjdGl2ZSA9IHRydWU7XG5cbiAgICAgICAgY2FuY2VsRHJhZygpO1xuICAgICAgfSk7XG5cbiAgICBtZXJnZShmcm9tRXZlbnQ8VG91Y2hFdmVudD4oZWwsICd0b3VjaG1vdmUnKSwgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGVsLCAnbW91c2Vtb3ZlJykpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2RyYWdUb0Rpc21pc3NTdG9wJCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm92ZXJsYXlSZWYuYWZ0ZXJDbG9zZWQoKSksXG4gICAgICAgIHRhcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICBpZiAoc3dpcGVJZCA9PT0gbnVsbCB8fCBpc1NlbGVjdGlvbkFjdGl2ZSkgcmV0dXJuO1xuXG4gICAgICAgICAgaWYgKGlzVG91Y2hFdmVudChldmVudCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgcmVjdXJzaXZlRmluZFNjcm9sbGFibGVQYXJlbnQgPSAoZWw6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnQgfCBudWxsID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFlbCkgcmV0dXJuIG51bGw7XG5cbiAgICAgICAgICAgICAgaWYgKGNvbmZpZy5kaXJlY3Rpb24gPT09ICd0by1ib3R0b20nIHx8IGNvbmZpZy5kaXJlY3Rpb24gPT09ICd0by10b3AnKSB7XG4gICAgICAgICAgICAgICAgaWYgKGVsZW1lbnRDYW5TY3JvbGwoZWwsICd5JykpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBlbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKGVsZW1lbnRDYW5TY3JvbGwoZWwsICd4JykpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBlbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpZiAoIWVsLnBhcmVudEVsZW1lbnQgfHwgZWwudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnZXQtb3ZlcmxheS1jb250YWluZXInKSByZXR1cm4gbnVsbDtcblxuICAgICAgICAgICAgICByZXR1cm4gcmVjdXJzaXZlRmluZFNjcm9sbGFibGVQYXJlbnQoZWwucGFyZW50RWxlbWVudCk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBzY3JvbGxhYmxlRWxlbWVudCA9IHJlY3Vyc2l2ZUZpbmRTY3JvbGxhYmxlUGFyZW50KHRhcmdldCk7XG5cbiAgICAgICAgICAgIGlmIChzY3JvbGxhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgICBsZXQgY2FuY2VsID0gZmFsc2U7XG4gICAgICAgICAgICAgIGlmIChjb25maWcuZGlyZWN0aW9uID09PSAndG8tYm90dG9tJykge1xuICAgICAgICAgICAgICAgIGlmIChzY3JvbGxhYmxlRWxlbWVudC5zY3JvbGxUb3AgIT09IDApIHtcbiAgICAgICAgICAgICAgICAgIGNhbmNlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNvbmZpZy5kaXJlY3Rpb24gPT09ICd0by10b3AnKSB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgTWF0aC5yb3VuZChzY3JvbGxhYmxlRWxlbWVudC5zY3JvbGxUb3ApICE9PVxuICAgICAgICAgICAgICAgICAgc2Nyb2xsYWJsZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0IC0gc2Nyb2xsYWJsZUVsZW1lbnQuY2xpZW50SGVpZ2h0XG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICBjYW5jZWwgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChjb25maWcuZGlyZWN0aW9uID09PSAndG8tcmlnaHQnKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNjcm9sbGFibGVFbGVtZW50LnNjcm9sbExlZnQgIT09IDApIHtcbiAgICAgICAgICAgICAgICAgIGNhbmNlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgIE1hdGgucm91bmQoc2Nyb2xsYWJsZUVsZW1lbnQuc2Nyb2xsTGVmdCkgIT09XG4gICAgICAgICAgICAgICAgICBzY3JvbGxhYmxlRWxlbWVudC5zY3JvbGxXaWR0aCAtIHNjcm9sbGFibGVFbGVtZW50LmNsaWVudFdpZHRoXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICBjYW5jZWwgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlmIChjYW5jZWwpIHtcbiAgICAgICAgICAgICAgICBjYW5jZWxEcmFnKCk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBzd2lwZURhdGEgPSB0aGlzLl9zd2lwZUhhbmRsZXJTZXJ2aWNlLnVwZGF0ZVN3aXBlKHN3aXBlSWQsIGV2ZW50KTtcblxuICAgICAgICAgIGlmICghc3dpcGVEYXRhKSByZXR1cm47XG5cbiAgICAgICAgICBjb25zdCBjc3MgPSB0aGlzLl9kZWZhdWx0U3dpcGVNb3ZlU3R5bGVJbnRlcnBvbGF0b3Ioc3dpcGVEYXRhLCBjb25maWcpO1xuXG4gICAgICAgICAgT2JqZWN0LmVudHJpZXMoY3NzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgICAgIGVsLnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFsdWUpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIG1lcmdlKGZyb21FdmVudDxUb3VjaEV2ZW50PihlbCwgJ3RvdWNoZW5kJyksIGZyb21FdmVudDxNb3VzZUV2ZW50PihlbCwgJ21vdXNldXAnKSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZHJhZ1RvRGlzbWlzc1N0b3AkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMub3ZlcmxheVJlZi5hZnRlckNsb3NlZCgpKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICBpZiAoc3dpcGVJZCA9PT0gbnVsbCB8fCBpc1NlbGVjdGlvbkFjdGl2ZSkgcmV0dXJuO1xuXG4gICAgICAgICAgY29uc3Qgc3dpcGVEYXRhID0gdGhpcy5fc3dpcGVIYW5kbGVyU2VydmljZS5lbmRTd2lwZShzd2lwZUlkKTtcbiAgICAgICAgICBzd2lwZUlkID0gbnVsbDtcblxuICAgICAgICAgIGlmICghc3dpcGVEYXRhKSByZXR1cm47XG5cbiAgICAgICAgICBjb25zdCBjc3MgPSB0aGlzLl9kZWZhdWx0U3dpcGVFbmRTdHlsZUludGVycG9sYXRvcihzd2lwZURhdGEsIGNvbmZpZyk7XG5cbiAgICAgICAgICBpZiAoIWNzcykge1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmPy5fY2xvc2VPdmVybGF5VmlhKCd0b3VjaCcpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIE9iamVjdC5lbnRyaWVzKGNzcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICBpZiAoa2V5ID09PSAnY2xlYW5VcCcpIHtcbiAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgfHwgIXZhbHVlKSByZXR1cm47XG5cbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdmFsdWUuZm4oZWwpO1xuICAgICAgICAgICAgICB9LCB2YWx1ZS5kZWxheSk7XG5cbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBlbC5zdHlsZS5zZXRQcm9wZXJ0eShrZXksIHZhbHVlIGFzIHN0cmluZyk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgX2Rpc2FibGVEcmFnVG9EaXNtaXNzKCkge1xuICAgIHRoaXMuX2RyYWdUb0Rpc21pc3NTdG9wJC5uZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIF9kZWZhdWx0U3dpcGVNb3ZlU3R5bGVJbnRlcnBvbGF0b3IoZXZlbnQ6IFN3aXBlVXBkYXRlRXZlbnQsIGNvbmZpZzogT3ZlcmxheURyYWdUb0Rpc21pc3NDb25maWcpIHtcbiAgICBjb25zdCB7IGRpcmVjdGlvbiB9ID0gY29uZmlnO1xuICAgIGNvbnN0IHsgbW92ZW1lbnRYLCBtb3ZlbWVudFkgfSA9IGV2ZW50O1xuXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gJ3RvLWJvdHRvbScpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHttb3ZlbWVudFkgPCAwID8gMCA6IG1vdmVtZW50WX1weClgLFxuICAgICAgfTtcbiAgICB9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ3RvLXRvcCcpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHttb3ZlbWVudFkgPiAwID8gMCA6IG1vdmVtZW50WX1weClgLFxuICAgICAgfTtcbiAgICB9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ3RvLWxlZnQnKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVYKCR7bW92ZW1lbnRYID4gMCA/IDAgOiBtb3ZlbWVudFh9cHgpYCxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVgoJHttb3ZlbWVudFggPCAwID8gMCA6IG1vdmVtZW50WH1weClgLFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9kZWZhdWx0U3dpcGVFbmRTdHlsZUludGVycG9sYXRvcihldmVudDogU3dpcGVFbmRFdmVudCwgY29uZmlnOiBPdmVybGF5RHJhZ1RvRGlzbWlzc0NvbmZpZykge1xuICAgIGNvbnN0IHsgZGlyZWN0aW9uLCBtaW5EaXN0YW5jZVRvRGlzbWlzcyA9IDE1MCwgbWluVmVsb2NpdHlUb0Rpc21pc3MgPSAxNTAgfSA9IGNvbmZpZztcbiAgICBjb25zdCB7IG1vdmVtZW50WCwgbW92ZW1lbnRZLCBwaXhlbFBlclNlY29uZFgsIHBpeGVsUGVyU2Vjb25kWSB9ID0gZXZlbnQ7XG5cbiAgICBjb25zdCBjbGVhblVwID0ge1xuICAgICAgZGVsYXk6IDEwMCxcbiAgICAgIGZuOiAoZWw6IEhUTUxFbGVtZW50KSA9PiBlbC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgndHJhbnNpdGlvbicpLFxuICAgIH07XG5cbiAgICBpZiAoZGlyZWN0aW9uID09PSAndG8tYm90dG9tJykge1xuICAgICAgaWYgKG1vdmVtZW50WSA8IG1pbkRpc3RhbmNlVG9EaXNtaXNzICYmIHBpeGVsUGVyU2Vjb25kWSA8IG1pblZlbG9jaXR5VG9EaXNtaXNzKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgwKWAsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ3RyYW5zZm9ybSAxMDBtcyB2YXIoLS1lYXNlLW91dC0xKScsXG4gICAgICAgICAgY2xlYW5VcDogbW92ZW1lbnRZID8gY2xlYW5VcCA6IHVuZGVmaW5lZCxcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoZGlyZWN0aW9uID09PSAndG8tdG9wJykge1xuICAgICAgaWYgKG1vdmVtZW50WSA+IC1taW5EaXN0YW5jZVRvRGlzbWlzcyAmJiBwaXhlbFBlclNlY29uZFkgPiAtbWluVmVsb2NpdHlUb0Rpc21pc3MpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDApYCxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAndHJhbnNmb3JtIDEwMG1zIHZhcigtLWVhc2Utb3V0LTEpJyxcbiAgICAgICAgICBjbGVhblVwOiBtb3ZlbWVudFkgPyBjbGVhblVwIDogdW5kZWZpbmVkLFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICd0by1sZWZ0Jykge1xuICAgICAgaWYgKG1vdmVtZW50WCA+IC1taW5EaXN0YW5jZVRvRGlzbWlzcyAmJiBwaXhlbFBlclNlY29uZFggPiAtbWluVmVsb2NpdHlUb0Rpc21pc3MpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVYKDApYCxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAndHJhbnNmb3JtIDEwMG1zIHZhcigtLWVhc2Utb3V0LTEpJyxcbiAgICAgICAgICBjbGVhblVwOiBtb3ZlbWVudFggPyBjbGVhblVwIDogdW5kZWZpbmVkLFxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChtb3ZlbWVudFggPCBtaW5EaXN0YW5jZVRvRGlzbWlzcyAmJiBwaXhlbFBlclNlY29uZFggPCBtaW5WZWxvY2l0eVRvRGlzbWlzcykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVgoMClgLFxuICAgICAgICAgIHRyYW5zaXRpb246ICd0cmFuc2Zvcm0gMTAwbXMgdmFyKC0tZWFzZS1vdXQtMSknLFxuICAgICAgICAgIGNsZWFuVXA6IG1vdmVtZW50WCA/IGNsZWFuVXAgOiB1bmRlZmluZWQsXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==