@odx/angular 1.0.0-rc.7 → 1.0.0-rc.8

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 (75) hide show
  1. package/cdk/active-indicator/lib/active-indicator.directive.d.ts +1 -0
  2. package/components/dropdown/index.d.ts +1 -0
  3. package/components/dropdown/lib/dropdown.directive.d.ts +5 -1
  4. package/components/dropdown/lib/models/dropdown-options.d.ts +1 -1
  5. package/components/launch-tile/README.md +3 -0
  6. package/components/launch-tile/index.d.ts +5 -0
  7. package/components/launch-tile/lib/components/launch-tile-footer/launch-tile-footer.component.d.ts +5 -0
  8. package/components/launch-tile/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.d.ts +5 -0
  9. package/components/launch-tile/lib/directives/launch-tile-menu/launch-tile-menu.directive.d.ts +5 -0
  10. package/components/launch-tile/lib/launch-tile.component.d.ts +11 -0
  11. package/components/launch-tile/lib/launch-tile.module.d.ts +16 -0
  12. package/components/tab-bar/README.md +3 -0
  13. package/components/tab-bar/index.d.ts +4 -0
  14. package/components/tab-bar/lib/components/index.d.ts +1 -0
  15. package/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.d.ts +20 -0
  16. package/components/tab-bar/lib/models/index.d.ts +1 -0
  17. package/components/tab-bar/lib/models/tab-change-event.d.ts +5 -0
  18. package/components/tab-bar/lib/tab-bar.component.d.ts +31 -0
  19. package/components/tab-bar/lib/tab-bar.config.d.ts +3 -0
  20. package/components/tab-bar/lib/tab-bar.module.d.ts +9 -0
  21. package/esm2020/cdk/active-indicator/lib/active-indicator.directive.mjs +8 -7
  22. package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-options.mjs +2 -2
  23. package/esm2020/components/dropdown/index.mjs +2 -1
  24. package/esm2020/components/dropdown/lib/dropdown.directive.mjs +20 -6
  25. package/esm2020/components/dropdown/lib/models/dropdown-options.mjs +2 -1
  26. package/esm2020/components/launch-tile/index.mjs +6 -0
  27. package/esm2020/components/launch-tile/lib/components/launch-tile-footer/launch-tile-footer.component.mjs +13 -0
  28. package/esm2020/components/launch-tile/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.mjs +13 -0
  29. package/esm2020/components/launch-tile/lib/directives/launch-tile-menu/launch-tile-menu.directive.mjs +17 -0
  30. package/esm2020/components/launch-tile/lib/launch-tile.component.mjs +40 -0
  31. package/esm2020/components/launch-tile/lib/launch-tile.module.mjs +59 -0
  32. package/esm2020/components/launch-tile/odx-angular-components-launch-tile.mjs +5 -0
  33. package/esm2020/components/select/lib/select.component.mjs +3 -3
  34. package/esm2020/components/tab-bar/index.mjs +5 -0
  35. package/esm2020/components/tab-bar/lib/components/index.mjs +2 -0
  36. package/esm2020/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.mjs +70 -0
  37. package/esm2020/components/tab-bar/lib/models/index.mjs +2 -0
  38. package/esm2020/components/tab-bar/lib/models/tab-change-event.mjs +2 -0
  39. package/esm2020/components/tab-bar/lib/tab-bar.component.mjs +116 -0
  40. package/esm2020/components/tab-bar/lib/tab-bar.config.mjs +3 -0
  41. package/esm2020/components/tab-bar/lib/tab-bar.module.mjs +19 -0
  42. package/esm2020/components/tab-bar/odx-angular-components-tab-bar.mjs +5 -0
  43. package/esm2020/rxjs/index.mjs +2 -1
  44. package/esm2020/rxjs/lib/form-query-list.mjs +5 -0
  45. package/fesm2015/odx-angular-cdk-active-indicator.mjs +9 -6
  46. package/fesm2015/odx-angular-cdk-active-indicator.mjs.map +1 -1
  47. package/fesm2015/odx-angular-cdk-connected-overlay.mjs +1 -1
  48. package/fesm2015/odx-angular-cdk-connected-overlay.mjs.map +1 -1
  49. package/fesm2015/odx-angular-components-dropdown.mjs +47 -30
  50. package/fesm2015/odx-angular-components-dropdown.mjs.map +1 -1
  51. package/fesm2015/odx-angular-components-launch-tile.mjs +133 -0
  52. package/fesm2015/odx-angular-components-launch-tile.mjs.map +1 -0
  53. package/fesm2015/odx-angular-components-select.mjs +2 -2
  54. package/fesm2015/odx-angular-components-select.mjs.map +1 -1
  55. package/fesm2015/odx-angular-components-tab-bar.mjs +201 -0
  56. package/fesm2015/odx-angular-components-tab-bar.mjs.map +1 -0
  57. package/fesm2015/odx-angular-rxjs.mjs +6 -2
  58. package/fesm2015/odx-angular-rxjs.mjs.map +1 -1
  59. package/fesm2020/odx-angular-cdk-active-indicator.mjs +7 -6
  60. package/fesm2020/odx-angular-cdk-active-indicator.mjs.map +1 -1
  61. package/fesm2020/odx-angular-cdk-connected-overlay.mjs +1 -1
  62. package/fesm2020/odx-angular-cdk-connected-overlay.mjs.map +1 -1
  63. package/fesm2020/odx-angular-components-dropdown.mjs +45 -30
  64. package/fesm2020/odx-angular-components-dropdown.mjs.map +1 -1
  65. package/fesm2020/odx-angular-components-launch-tile.mjs +132 -0
  66. package/fesm2020/odx-angular-components-launch-tile.mjs.map +1 -0
  67. package/fesm2020/odx-angular-components-select.mjs +2 -2
  68. package/fesm2020/odx-angular-components-select.mjs.map +1 -1
  69. package/fesm2020/odx-angular-components-tab-bar.mjs +196 -0
  70. package/fesm2020/odx-angular-components-tab-bar.mjs.map +1 -0
  71. package/fesm2020/odx-angular-rxjs.mjs +6 -2
  72. package/fesm2020/odx-angular-rxjs.mjs.map +1 -1
  73. package/package.json +18 -2
  74. package/rxjs/index.d.ts +1 -0
  75. package/rxjs/lib/form-query-list.d.ts +3 -0
@@ -11,6 +11,7 @@ export declare class ActiveIndicatorDirective implements OnChanges, AfterViewIni
11
11
  protected isActive: boolean;
12
12
  activeElement?: HTMLElement | null;
13
13
  set parent(value: HTMLElement | null);
14
+ get parent(): HTMLElement | null;
14
15
  direction: ActiveIndicatorDirection;
15
16
  position: ActiveIndicatorPosition;
16
17
  ngAfterViewInit(): void;
@@ -1,3 +1,4 @@
1
+ export * from './lib/dropdown.component';
1
2
  export * from './lib/dropdown.directive';
2
3
  export * from './lib/dropdown.module';
3
4
  export * from './lib/models';
@@ -18,6 +18,10 @@ export declare class DropdownDirective implements AfterViewInit, OnChanges {
18
18
  showLoader: boolean;
19
19
  options?: Partial<DropdownOptions> | null;
20
20
  referenceElement?: HTMLElement | null;
21
+ triggerElement?: HTMLElement | null;
22
+ host?: HTMLElement | null;
23
+ openTrigger?: string[] | null;
24
+ closeTrigger?: string[] | null;
21
25
  beforeOpen: EventEmitter<void>;
22
26
  afterOpen: EventEmitter<void>;
23
27
  beforeClose: EventEmitter<void>;
@@ -28,5 +32,5 @@ export declare class DropdownDirective implements AfterViewInit, OnChanges {
28
32
  close(): void;
29
33
  private createOverlayOptions;
30
34
  static ɵfac: i0.ɵɵFactoryDeclaration<DropdownDirective, never>;
31
- static ɵdir: i0.ɵɵDirectiveDeclaration<DropdownDirective, "[odxDropdown]", ["odxDropdown"], { "content": "odxDropdown"; "disabled": "odxDropdownDisabled"; "showLoader": "odxDropdownShowLoader"; "options": "odxDropdownOptions"; "referenceElement": "odxDropdownReferenceElement"; }, { "beforeOpen": "odxDropdownBeforeOpen"; "afterOpen": "odxDropdownAfterOpen"; "beforeClose": "odxDropdownBeforeClose"; "afterClose": "odxDropdownAfterClose"; }, never, never, true>;
35
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DropdownDirective, "[odxDropdown]", ["odxDropdown"], { "content": "odxDropdown"; "disabled": "odxDropdownDisabled"; "showLoader": "odxDropdownShowLoader"; "options": "odxDropdownOptions"; "referenceElement": "odxDropdownReferenceElement"; "triggerElement": "odxDropdownTriggerElement"; "host": "odxDropdownHost"; "openTrigger": "odxDropdownOpenTrigger"; "closeTrigger": "odxDropdownCloseTrigger"; }, { "beforeOpen": "odxDropdownBeforeOpen"; "afterOpen": "odxDropdownAfterOpen"; "beforeClose": "odxDropdownBeforeClose"; "afterClose": "odxDropdownAfterClose"; }, never, never, true>;
32
36
  }
@@ -1,3 +1,3 @@
1
1
  import { ConnectedOverlayOptions } from '@odx/angular/cdk/connected-overlay';
2
- export declare type DropdownOptions = Pick<ConnectedOverlayOptions, 'position' | 'enableFallback' | 'matchReferenceWidth' | 'minHeight'>;
2
+ export declare type DropdownOptions = Pick<ConnectedOverlayOptions, 'position' | 'containerClass' | 'enableFallback' | 'matchReferenceWidth' | 'minHeight' | 'offset' | 'showArrow'>;
3
3
  export declare const DefaultDropdownOptions: DropdownOptions;
@@ -0,0 +1,3 @@
1
+ # @odx/angular/components/launch-tile
2
+
3
+ Secondary entry point of `@odx/angular`. It can be used by importing from `@odx/angular/components/launch-tile`.
@@ -0,0 +1,5 @@
1
+ export * from './lib/components/launch-tile-footer/launch-tile-footer.component';
2
+ export * from './lib/components/launch-tile-subtitle/launch-tile-subtitle.component';
3
+ export * from './lib/directives/launch-tile-menu/launch-tile-menu.directive';
4
+ export * from './lib/launch-tile.component';
5
+ export * from './lib/launch-tile.module';
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LaunchTileFooterComponent {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<LaunchTileFooterComponent, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<LaunchTileFooterComponent, "odx-launch-tile-footer", never, {}, {}, never, ["*"], true>;
5
+ }
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LaunchTileSubtitleComponent {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<LaunchTileSubtitleComponent, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<LaunchTileSubtitleComponent, "odx-launch-tile-subtitle", never, {}, {}, never, ["*"], true>;
5
+ }
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class LaunchTileMenuListDirective {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<LaunchTileMenuListDirective, never>;
4
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LaunchTileMenuListDirective, "[odxLaunchTileMenuList]", never, {}, {}, never, never, true>;
5
+ }
@@ -0,0 +1,11 @@
1
+ import { DisabledController } from '@odx/angular';
2
+ import { LaunchTileMenuListDirective } from './directives/launch-tile-menu/launch-tile-menu.directive';
3
+ import * as i0 from "@angular/core";
4
+ export declare class LaunchTileComponent {
5
+ protected readonly disabledController: DisabledController | null;
6
+ readonly element: import("@angular/core").ElementRef<HTMLElement>;
7
+ get isDisabled(): boolean;
8
+ readonly menuList?: LaunchTileMenuListDirective;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<LaunchTileComponent, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<LaunchTileComponent, "odx-launch-tile", never, {}, {}, ["menuList"], ["odx-list[odxLaunchTileMenuList]", "odx-avatar", "*", "odx-launch-tile-subtitle", "odx-launch-tile-footer"], true>;
11
+ }
@@ -0,0 +1,16 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./launch-tile.component";
3
+ import * as i2 from "./directives/launch-tile-menu/launch-tile-menu.directive";
4
+ import * as i3 from "./components/launch-tile-footer/launch-tile-footer.component";
5
+ import * as i4 from "./components/launch-tile-subtitle/launch-tile-subtitle.component";
6
+ import * as i5 from "@odx/angular/components/avatar";
7
+ import * as i6 from "@odx/angular/components/button-group";
8
+ import * as i7 from "@odx/angular/components/button";
9
+ import * as i8 from "@odx/angular/components/icon";
10
+ import * as i9 from "@odx/angular/components/list";
11
+ import * as i10 from "@odx/angular";
12
+ export declare class LaunchTileModule {
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<LaunchTileModule, never>;
14
+ static ɵmod: i0.ɵɵNgModuleDeclaration<LaunchTileModule, never, [typeof i1.LaunchTileComponent, typeof i2.LaunchTileMenuListDirective, typeof i3.LaunchTileFooterComponent, typeof i4.LaunchTileSubtitleComponent, typeof i5.AvatarComponent, typeof i6.ButtonGroupComponent, typeof i7.ButtonComponent, typeof i8.IconComponent, typeof i9.ListModule], [typeof i10.CoreModule, typeof i1.LaunchTileComponent, typeof i2.LaunchTileMenuListDirective, typeof i3.LaunchTileFooterComponent, typeof i4.LaunchTileSubtitleComponent, typeof i5.AvatarComponent, typeof i6.ButtonGroupComponent, typeof i7.ButtonComponent, typeof i8.IconComponent, typeof i9.ListModule]>;
15
+ static ɵinj: i0.ɵɵInjectorDeclaration<LaunchTileModule>;
16
+ }
@@ -0,0 +1,3 @@
1
+ # @odx/angular/components/tab-bar
2
+
3
+ Secondary entry point of `@odx/angular`. It can be used by importing from `@odx/angular/components/tab-bar`.
@@ -0,0 +1,4 @@
1
+ export * from './lib/components';
2
+ export * from './lib/models';
3
+ export * from './lib/tab-bar.component';
4
+ export * from './lib/tab-bar.module';
@@ -0,0 +1 @@
1
+ export * from './tab-bar-item/tab-bar-item.component';
@@ -0,0 +1,20 @@
1
+ import { Highlightable } from '@angular/cdk/a11y';
2
+ import { BooleanInput } from '@angular/cdk/coercion';
3
+ import { ElementRef, EventEmitter } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ export declare class TabBarItemComponent implements Highlightable {
6
+ static ngAcceptInputType_closable: BooleanInput;
7
+ private readonly disabledController;
8
+ private readonly tabBar;
9
+ protected isActive: boolean;
10
+ readonly element: ElementRef<HTMLElement>;
11
+ get disabled(): boolean;
12
+ closable: boolean;
13
+ tabClose: EventEmitter<TabBarItemComponent>;
14
+ setActiveStyles(): void;
15
+ setInactiveStyles(): void;
16
+ protected onClick(): void;
17
+ protected handleClose(event: Event): void;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<TabBarItemComponent, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<TabBarItemComponent, "odx-tab-bar-item", never, { "closable": "closable"; }, { "tabClose": "tabClose"; }, never, ["odx-icon", "*"], true>;
20
+ }
@@ -0,0 +1 @@
1
+ export * from './tab-change-event';
@@ -0,0 +1,5 @@
1
+ import { TabBarItemComponent } from '../components';
2
+ export interface TabChangeEvent {
3
+ selectedIndex: number;
4
+ selectedTab: TabBarItemComponent | null;
5
+ }
@@ -0,0 +1,31 @@
1
+ import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';
2
+ import { NumberInput } from '@angular/cdk/coercion';
3
+ import { AfterViewInit, ElementRef, EventEmitter, QueryList } from '@angular/core';
4
+ import { TabBarItemComponent } from './components';
5
+ import { TabChangeEvent } from './models';
6
+ import * as i0 from "@angular/core";
7
+ export declare class TabBarComponent implements AfterViewInit {
8
+ static ngAcceptInputType_selectedIndex: NumberInput;
9
+ private readonly changeDetector;
10
+ private readonly takeUntilDestroyed;
11
+ private readonly selectedIndex$$;
12
+ protected activeItem: TabBarItemComponent | null;
13
+ protected keyManager?: ActiveDescendantKeyManager<TabBarItemComponent>;
14
+ protected tabBarPanelElement: ElementRef<HTMLElement>;
15
+ protected tabActionElements: QueryList<ElementRef<HTMLElement>>;
16
+ protected tabs: QueryList<TabBarItemComponent>;
17
+ protected overflowLeft: boolean;
18
+ protected overflowRight: boolean;
19
+ readonly element: ElementRef<HTMLElement>;
20
+ set selectedIndex(value: unknown);
21
+ selectedTabChanged: EventEmitter<TabChangeEvent>;
22
+ ngAfterViewInit(): void;
23
+ activateItem(item?: TabBarItemComponent | null): void;
24
+ removeItem(item: TabBarItemComponent): void;
25
+ protected onKeydown(event: KeyboardEvent): void;
26
+ private updatePanelPosition;
27
+ private updateActionVisbility;
28
+ private activeItemChange;
29
+ static ɵfac: i0.ɵɵFactoryDeclaration<TabBarComponent, never>;
30
+ static ɵcmp: i0.ɵɵComponentDeclaration<TabBarComponent, "odx-tab-bar", never, { "selectedIndex": "selectedIndex"; }, { "selectedTabChanged": "selectedTabChanged"; }, ["tabs"], ["*"], true>;
31
+ }
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { TabBarComponent } from './tab-bar.component';
3
+ export declare const TAB_BAR: InjectionToken<TabBarComponent>;
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./tab-bar.component";
3
+ import * as i2 from "./components/tab-bar-item/tab-bar-item.component";
4
+ import * as i3 from "@odx/angular";
5
+ export declare class TabBarModule {
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<TabBarModule, never>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TabBarModule, never, [typeof i1.TabBarComponent, typeof i2.TabBarItemComponent], [typeof i3.CoreModule, typeof i1.TabBarComponent, typeof i2.TabBarItemComponent]>;
8
+ static ɵinj: i0.ɵɵInjectorDeclaration<TabBarModule>;
9
+ }
@@ -2,7 +2,7 @@ import { __decorate, __metadata } from "tslib";
2
2
  import { Directive, Input } from '@angular/core';
3
3
  import { CSSComponent, CSSModifier } from '@odx/angular/internal';
4
4
  import { fromElementResize$ } from '@odx/angular/rxjs';
5
- import { applyStyles, disableCSSTransitions, hasChanged, injectElement, px, untilDestroyed } from '@odx/angular/utils';
5
+ import { applyStyles, disableCSSTransitions, hasChanged, injectElement, isPresent, px, untilDestroyed } from '@odx/angular/utils';
6
6
  import { BehaviorSubject, distinctUntilChanged, EMPTY, switchMap } from 'rxjs';
7
7
  import { ActiveIndicatorPosition } from './models';
8
8
  import { ActiveIndicatorDirection } from './models/active-indicator-direction';
@@ -23,18 +23,19 @@ let ActiveIndicatorDirective = class ActiveIndicatorDirective {
23
23
  set parent(value) {
24
24
  this.parentElement$$.next(value);
25
25
  }
26
+ get parent() {
27
+ return this.parentElement$$.getValue();
28
+ }
26
29
  ngAfterViewInit() {
27
- this.onResize$.pipe(this.takeUntilDestroyed()).subscribe(() => this.updateStyles(true));
28
- if (!this.parentElement$$.getValue()) {
29
- this.parentElement$$.next(this.element.nativeElement.parentElement);
30
- }
30
+ this.onResize$.pipe(this.takeUntilDestroyed()).subscribe(() => this.updateStyles());
31
+ this.parent ?? (this.parent = this.element.nativeElement.parentElement);
31
32
  }
32
33
  ngOnChanges(changes) {
33
34
  if (hasChanged(changes, 'activeElement', false)) {
34
35
  this.isActive = !!this.activeElement;
35
36
  }
36
37
  if (hasChanged(changes, ['activeElement', 'direction', 'position'])) {
37
- this.updateStyles();
38
+ this.updateStyles(!isPresent(changes.activeElement?.previousValue));
38
39
  }
39
40
  }
40
41
  updateStyles(disableTransition = false) {
@@ -124,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
124
125
  type: Input,
125
126
  args: ['odxActiveIndicatorPosition']
126
127
  }] } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWluZGljYXRvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2FjdGl2ZS1pbmRpY2F0b3Ivc3JjL2xpYi9hY3RpdmUtaW5kaWNhdG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFhLEVBQUUsRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsSSxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOztBQU94RSxJQUFNLHdCQUF3QixHQUE5QixNQUFNLHdCQUF3QjtJQUE5QjtRQUNZLHVCQUFrQixHQUFHLGNBQWMsRUFBRSxDQUFDO1FBQ3RDLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQXFCLElBQUksQ0FBQyxDQUFDO1FBQ2hFLGNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FDcEQsb0JBQW9CLEVBQUUsRUFDdEIsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDMUIsT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7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QztJQUFDLFdBQVcsRUFBRTs7MERBQ2E7QUFVM0I7SUFBQyxXQUFXLEVBQUU7OzJEQUVtRTtBQXhCdEUsd0JBQXdCO0lBTHBDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQztHQUt4Qix3QkFBd0IsQ0FzR3BDO1NBdEdZLHdCQUF3Qjs0RkFBeEIsd0JBQXdCO2tCQUpwQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsc0JBQXNCO2lCQUNqQzs4QkFhVyxRQUFRLE1BR1gsYUFBYTtzQkFEbkIsS0FBSzt1QkFBQyxvQkFBb0I7Z0JBSWhCLE1BQU07c0JBRGhCLEtBQUs7dUJBQUMsMEJBQTBCO2dCQU8xQixTQUFTO3NCQURmLEtBQUs7dUJBQUMsNkJBQTZCO2dCQUk3QixRQUFRO3NCQURkLEtBQUs7dUJBQUMsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQsIENTU01vZGlmaWVyIH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGZyb21FbGVtZW50UmVzaXplJCB9IGZyb20gJ0BvZHgvYW5ndWxhci9yeGpzJztcbmltcG9ydCB7IGFwcGx5U3R5bGVzLCBkaXNhYmxlQ1NTVHJhbnNpdGlvbnMsIGhhc0NoYW5nZWQsIGluamVjdEVsZW1lbnQsIE5nQ2hhbmdlcywgcHgsIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIEVNUFRZLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFjdGl2ZUluZGljYXRvclBvc2l0aW9uIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWN0aXZlSW5kaWNhdG9yRGlyZWN0aW9uIH0gZnJvbSAnLi9tb2RlbHMvYWN0aXZlLWluZGljYXRvci1kaXJlY3Rpb24nO1xuXG5AQ1NTQ29tcG9uZW50KCdjZGstYWN0aXZlLWluZGljYXRvcicpXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbb2R4QWN0aXZlSW5kaWNhdG9yXScsXG59KVxuZXhwb3J0IGNsYXNzIEFjdGl2ZUluZGljYXRvckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFrZVVudGlsRGVzdHJveWVkID0gdW50aWxEZXN0cm95ZWQoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBwYXJlbnRFbGVtZW50JCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEhUTUxFbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgb25SZXNpemUkID0gdGhpcy5wYXJlbnRFbGVtZW50JCQucGlwZShcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHN3aXRjaE1hcCgocGFyZW50RWxlbWVudCkgPT4ge1xuICAgICAgcmV0dXJuIHBhcmVudEVsZW1lbnQgPyBmcm9tRWxlbWVudFJlc2l6ZSQocGFyZW50RWxlbWVudCkgOiBFTVBUWTtcbiAgICB9KVxuICApO1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICBAQ1NTTW9kaWZpZXIoKVxuICBwcm90ZWN0ZWQgaXNBY3RpdmUgPSBmYWxzZTtcblxuICBASW5wdXQoJ29keEFjdGl2ZUluZGljYXRvcicpXG4gIHB1YmxpYyBhY3RpdmVFbGVtZW50PzogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoJ29keEFjdGl2ZUluZGljYXRvclBhcmVudCcpXG4gIHB1YmxpYyBzZXQgcGFyZW50KHZhbHVlOiBIVE1MRWxlbWVudCB8IG51bGwpIHtcbiAgICB0aGlzLnBhcmVudEVsZW1lbnQkJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIEBDU1NNb2RpZmllcigpXG4gIEBJbnB1dCgnb2R4QWN0aXZlSW5kaWNhdG9yRGlyZWN0aW9uJylcbiAgcHVibGljIGRpcmVjdGlvbjogQWN0aXZlSW5kaWNhdG9yRGlyZWN0aW9uID0gQWN0aXZlSW5kaWNhdG9yRGlyZWN0aW9uLkhPUklaT05UQUw7XG5cbiAgQElucHV0KCdvZHhBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbicpXG4gIHB1YmxpYyBwb3NpdGlvbjogQWN0aXZlSW5kaWNhdG9yUG9zaXRpb24gPSBBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbi5DRU5URVI7XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm9uUmVzaXplJC5waXBlKHRoaXMudGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnVwZGF0ZVN0eWxlcyh0cnVlKSk7XG4gICAgaWYgKCF0aGlzLnBhcmVudEVsZW1lbnQkJC5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnBhcmVudEVsZW1lbnQkJC5uZXh0KHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBOZ0NoYW5nZXM8QWN0aXZlSW5kaWNhdG9yRGlyZWN0aXZlPik6IHZvaWQge1xuICAgIGlmIChoYXNDaGFuZ2VkKGNoYW5nZXMsICdhY3RpdmVFbGVtZW50JywgZmFsc2UpKSB7XG4gICAgICB0aGlzLmlzQWN0aXZlID0gISF0aGlzLmFjdGl2ZUVsZW1lbnQ7XG4gICAgfVxuICAgIGlmIChoYXNDaGFuZ2VkKGNoYW5nZXMsIFsnYWN0aXZlRWxlbWVudCcsICdkaXJlY3Rpb24nLCAncG9zaXRpb24nXSkpIHtcbiAgICAgIHRoaXMudXBkYXRlU3R5bGVzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVTdHlsZXMoZGlzYWJsZVRyYW5zaXRpb24gPSBmYWxzZSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5hY3RpdmVFbGVtZW50KSByZXR1cm47XG4gICAgY29uc3QgaXNIb3Jpem9udGFsID0gdGhpcy5kaXJlY3Rpb24gPT09IEFjdGl2ZUluZGljYXRvckRpcmVjdGlvbi5IT1JJWk9OVEFMO1xuICAgIGNvbnN0IGlzVmVydGljYWwgPSB0aGlzLmRpcmVjdGlvbiA9PT0gQWN0aXZlSW5kaWNhdG9yRGlyZWN0aW9uLlZFUlRJQ0FMO1xuICAgIGNvbnN0IHJlbGF0aXZlT2Zmc2V0ID0gdGhpcy5nZXRJbmRpY2F0b3JSZWxhdGl2ZU9mZnNldCgpO1xuXG4gICAgbGV0IHRyYW5zZm9ybSA9IG51bGw7XG4gICAgaWYgKGlzSG9yaXpvbnRhbCkge1xuICAgICAgY29uc3QgcG9zaXRpb25YID0gdGhpcy5nZXRJbmRpY2F0b3JQb3NpdGlvblgodGhpcy5hY3RpdmVFbGVtZW50KTtcbiAgICAgIHRyYW5zZm9ybSA9IGB0cmFuc2xhdGVYKCR7cHgocG9zaXRpb25YKX0pIHRyYW5zbGF0ZVgoJHtyZWxhdGl2ZU9mZnNldH0lKWA7XG4gICAgfVxuICAgIGlmIChpc1ZlcnRpY2FsKSB7XG4gICAgICBjb25zdCBwb3NpdGlvblkgPSB0aGlzLmdldEluZGljYXRvclBvc2l0aW9uWSh0aGlzLmFjdGl2ZUVsZW1lbnQpO1xuICAgICAgdHJhbnNmb3JtID0gYHRyYW5zbGF0ZVkoJHtweChwb3NpdGlvblkpfSkgdHJhbnNsYXRlWSgke3JlbGF0aXZlT2Zmc2V0fSUpYDtcbiAgICB9XG5cbiAgICBkaXNhYmxlVHJhbnNpdGlvbiAmJiBkaXNhYmxlQ1NTVHJhbnNpdGlvbnModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHRydWUpO1xuICAgIGFwcGx5U3R5bGVzKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCB7XG4gICAgICB0cmFuc2Zvcm0sXG4gICAgICB3aWR0aDogaXNIb3Jpem9udGFsID8gcHgodGhpcy5hY3RpdmVFbGVtZW50Lm9mZnNldFdpZHRoKSA6IG51bGwsXG4gICAgICBoZWlnaHQ6IGlzVmVydGljYWwgPyBweCh0aGlzLmFjdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0KSA6IG51bGwsXG4gICAgfSk7XG4gICAgZGlzYWJsZVRyYW5zaXRpb24gJiYgZGlzYWJsZUNTU1RyYW5zaXRpb25zKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCBmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIGdldEluZGljYXRvclBvc2l0aW9uWChhY3RpdmVFbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgc3dpdGNoICh0aGlzLnBvc2l0aW9uKSB7XG4gICAgICBjYXNlIEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLlNUQVJUOlxuICAgICAgICByZXR1cm4gYWN0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xuICAgICAgY2FzZSBBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbi5DRU5URVI6XG4gICAgICAgIHJldHVybiBhY3RpdmVFbGVtZW50Lm9mZnNldExlZnQgKyBhY3RpdmVFbGVtZW50Lm9mZnNldFdpZHRoIC8gMjtcbiAgICAgIGNhc2UgQWN0aXZlSW5kaWNhdG9yUG9zaXRpb24uRU5EOlxuICAgICAgICByZXR1cm4gYWN0aXZlRWxlbWVudC5vZmZzZXRMZWZ0ICsgYWN0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEluZGljYXRvclBvc2l0aW9uWShhY3RpdmVFbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgc3dpdGNoICh0aGlzLnBvc2l0aW9uKSB7XG4gICAgICBjYXNlIEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLlNUQVJUOlxuICAgICAgICByZXR1cm4gYWN0aXZlRWxlbWVudC5vZmZzZXRUb3A7XG4gICAgICBjYXNlIEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLkNFTlRFUjpcbiAgICAgICAgcmV0dXJuIGFjdGl2ZUVsZW1lbnQub2Zmc2V0VG9wICsgYWN0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQgLyAyO1xuICAgICAgY2FzZSBBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbi5FTkQ6XG4gICAgICAgIHJldHVybiBhY3RpdmVFbGVtZW50Lm9mZnNldFRvcCArIGFjdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0SW5kaWNhdG9yUmVsYXRpdmVPZmZzZXQoKTogbnVtYmVyIHtcbiAgICBzd2l0Y2ggKHRoaXMucG9zaXRpb24pIHtcbiAgICAgIGNhc2UgQWN0aXZlSW5kaWNhdG9yUG9zaXRpb24uU1RBUlQ6XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgY2FzZSBBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbi5DRU5URVI6XG4gICAgICAgIHJldHVybiAtNTA7XG4gICAgICBjYXNlIEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLkVORDpcbiAgICAgICAgcmV0dXJuIC0xMDA7XG4gICAgfVxuICB9XG59XG4iXX0=
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWluZGljYXRvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2FjdGl2ZS1pbmRpY2F0b3Ivc3JjL2xpYi9hY3RpdmUtaW5kaWNhdG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBYSxFQUFFLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDN0ksT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFPeEUsSUFBTSx3QkFBd0IsR0FBOUIsTUFBTSx3QkFBd0I7SUFBOUI7UUFDWSx1QkFBa0IsR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUN0QyxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFxQixJQUFJLENBQUMsQ0FBQztRQUNoRSxjQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQ3BELG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQzFCLE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMs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QixPQUFPLENBQUMsR0FBRyxDQUFDO1NBQ2Y7SUFDSCxDQUFDOztzSEF0R1Usd0JBQXdCOzBHQUF4Qix3QkFBd0I7QUFXbkM7SUFBQyxXQUFXLEVBQUU7OzBEQUNhO0FBYTNCO0lBQUMsV0FBVyxFQUFFOzsyREFFbUU7QUEzQnRFLHdCQUF3QjtJQUxwQyxZQUFZLENBQUMsc0JBQXNCLENBQUM7R0FLeEIsd0JBQXdCLENBdUdwQztTQXZHWSx3QkFBd0I7NEZBQXhCLHdCQUF3QjtrQkFKcEMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHNCQUFzQjtpQkFDakM7OEJBYVcsUUFBUSxNQUdYLGFBQWE7c0JBRG5CLEtBQUs7dUJBQUMsb0JBQW9CO2dCQUloQixNQUFNO3NCQURoQixLQUFLO3VCQUFDLDBCQUEwQjtnQkFVMUIsU0FBUztzQkFEZixLQUFLO3VCQUFDLDZCQUE2QjtnQkFJN0IsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBmcm9tRWxlbWVudFJlc2l6ZSQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvcnhqcyc7XG5pbXBvcnQgeyBhcHBseVN0eWxlcywgZGlzYWJsZUNTU1RyYW5zaXRpb25zLCBoYXNDaGFuZ2VkLCBpbmplY3RFbGVtZW50LCBpc1ByZXNlbnQsIE5nQ2hhbmdlcywgcHgsIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIEVNUFRZLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFjdGl2ZUluZGljYXRvclBvc2l0aW9uIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWN0aXZlSW5kaWNhdG9yRGlyZWN0aW9uIH0gZnJvbSAnLi9tb2RlbHMvYWN0aXZlLWluZGljYXRvci1kaXJlY3Rpb24nO1xuXG5AQ1NTQ29tcG9uZW50KCdjZGstYWN0aXZlLWluZGljYXRvcicpXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbb2R4QWN0aXZlSW5kaWNhdG9yXScsXG59KVxuZXhwb3J0IGNsYXNzIEFjdGl2ZUluZGljYXRvckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFrZVVudGlsRGVzdHJveWVkID0gdW50aWxEZXN0cm95ZWQoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBwYXJlbnRFbGVtZW50JCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEhUTUxFbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgb25SZXNpemUkID0gdGhpcy5wYXJlbnRFbGVtZW50JCQucGlwZShcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHN3aXRjaE1hcCgocGFyZW50RWxlbWVudCkgPT4ge1xuICAgICAgcmV0dXJuIHBhcmVudEVsZW1lbnQgPyBmcm9tRWxlbWVudFJlc2l6ZSQocGFyZW50RWxlbWVudCkgOiBFTVBUWTtcbiAgICB9KVxuICApO1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICBAQ1NTTW9kaWZpZXIoKVxuICBwcm90ZWN0ZWQgaXNBY3RpdmUgPSBmYWxzZTtcblxuICBASW5wdXQoJ29keEFjdGl2ZUluZGljYXRvcicpXG4gIHB1YmxpYyBhY3RpdmVFbGVtZW50PzogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoJ29keEFjdGl2ZUluZGljYXRvclBhcmVudCcpXG4gIHB1YmxpYyBzZXQgcGFyZW50KHZhbHVlOiBIVE1MRWxlbWVudCB8IG51bGwpIHtcbiAgICB0aGlzLnBhcmVudEVsZW1lbnQkJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHBhcmVudCgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnBhcmVudEVsZW1lbnQkJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgQENTU01vZGlmaWVyKClcbiAgQElucHV0KCdvZHhBY3RpdmVJbmRpY2F0b3JEaXJlY3Rpb24nKVxuICBwdWJsaWMgZGlyZWN0aW9uOiBBY3RpdmVJbmRpY2F0b3JEaXJlY3Rpb24gPSBBY3RpdmVJbmRpY2F0b3JEaXJlY3Rpb24uSE9SSVpPTlRBTDtcblxuICBASW5wdXQoJ29keEFjdGl2ZUluZGljYXRvclBvc2l0aW9uJylcbiAgcHVibGljIHBvc2l0aW9uOiBBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbiA9IEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLkNFTlRFUjtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMub25SZXNpemUkLnBpcGUodGhpcy50YWtlVW50aWxEZXN0cm95ZWQoKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMudXBkYXRlU3R5bGVzKCkpO1xuICAgIHRoaXMucGFyZW50ID8/PSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IE5nQ2hhbmdlczxBY3RpdmVJbmRpY2F0b3JEaXJlY3RpdmU+KTogdm9pZCB7XG4gICAgaWYgKGhhc0NoYW5nZWQoY2hhbmdlcywgJ2FjdGl2ZUVsZW1lbnQnLCBmYWxzZSkpIHtcbiAgICAgIHRoaXMuaXNBY3RpdmUgPSAhIXRoaXMuYWN0aXZlRWxlbWVudDtcbiAgICB9XG4gICAgaWYgKGhhc0NoYW5nZWQoY2hhbmdlcywgWydhY3RpdmVFbGVtZW50JywgJ2RpcmVjdGlvbicsICdwb3NpdGlvbiddKSkge1xuICAgICAgdGhpcy51cGRhdGVTdHlsZXMoIWlzUHJlc2VudChjaGFuZ2VzLmFjdGl2ZUVsZW1lbnQ/LnByZXZpb3VzVmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVN0eWxlcyhkaXNhYmxlVHJhbnNpdGlvbiA9IGZhbHNlKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmFjdGl2ZUVsZW1lbnQpIHJldHVybjtcbiAgICBjb25zdCBpc0hvcml6b250YWwgPSB0aGlzLmRpcmVjdGlvbiA9PT0gQWN0aXZlSW5kaWNhdG9yRGlyZWN0aW9uLkhPUklaT05UQUw7XG4gICAgY29uc3QgaXNWZXJ0aWNhbCA9IHRoaXMuZGlyZWN0aW9uID09PSBBY3RpdmVJbmRpY2F0b3JEaXJlY3Rpb24uVkVSVElDQUw7XG4gICAgY29uc3QgcmVsYXRpdmVPZmZzZXQgPSB0aGlzLmdldEluZGljYXRvclJlbGF0aXZlT2Zmc2V0KCk7XG5cbiAgICBsZXQgdHJhbnNmb3JtID0gbnVsbDtcbiAgICBpZiAoaXNIb3Jpem9udGFsKSB7XG4gICAgICBjb25zdCBwb3NpdGlvblggPSB0aGlzLmdldEluZGljYXRvclBvc2l0aW9uWCh0aGlzLmFjdGl2ZUVsZW1lbnQpO1xuICAgICAgdHJhbnNmb3JtID0gYHRyYW5zbGF0ZVgoJHtweChwb3NpdGlvblgpfSkgdHJhbnNsYXRlWCgke3JlbGF0aXZlT2Zmc2V0fSUpYDtcbiAgICB9XG4gICAgaWYgKGlzVmVydGljYWwpIHtcbiAgICAgIGNvbnN0IHBvc2l0aW9uWSA9IHRoaXMuZ2V0SW5kaWNhdG9yUG9zaXRpb25ZKHRoaXMuYWN0aXZlRWxlbWVudCk7XG4gICAgICB0cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke3B4KHBvc2l0aW9uWSl9KSB0cmFuc2xhdGVZKCR7cmVsYXRpdmVPZmZzZXR9JSlgO1xuICAgIH1cblxuICAgIGRpc2FibGVUcmFuc2l0aW9uICYmIGRpc2FibGVDU1NUcmFuc2l0aW9ucyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgdHJ1ZSk7XG4gICAgYXBwbHlTdHlsZXModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHtcbiAgICAgIHRyYW5zZm9ybSxcbiAgICAgIHdpZHRoOiBpc0hvcml6b250YWwgPyBweCh0aGlzLmFjdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGgpIDogbnVsbCxcbiAgICAgIGhlaWdodDogaXNWZXJ0aWNhbCA/IHB4KHRoaXMuYWN0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQpIDogbnVsbCxcbiAgICB9KTtcbiAgICBkaXNhYmxlVHJhbnNpdGlvbiAmJiBkaXNhYmxlQ1NTVHJhbnNpdGlvbnModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0SW5kaWNhdG9yUG9zaXRpb25YKGFjdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICBzd2l0Y2ggKHRoaXMucG9zaXRpb24pIHtcbiAgICAgIGNhc2UgQWN0aXZlSW5kaWNhdG9yUG9zaXRpb24uU1RBUlQ6XG4gICAgICAgIHJldHVybiBhY3RpdmVFbGVtZW50Lm9mZnNldExlZnQ7XG4gICAgICBjYXNlIEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLkNFTlRFUjpcbiAgICAgICAgcmV0dXJuIGFjdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCArIGFjdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggLyAyO1xuICAgICAgY2FzZSBBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbi5FTkQ6XG4gICAgICAgIHJldHVybiBhY3RpdmVFbGVtZW50Lm9mZnNldExlZnQgKyBhY3RpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0SW5kaWNhdG9yUG9zaXRpb25ZKGFjdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICBzd2l0Y2ggKHRoaXMucG9zaXRpb24pIHtcbiAgICAgIGNhc2UgQWN0aXZlSW5kaWNhdG9yUG9zaXRpb24uU1RBUlQ6XG4gICAgICAgIHJldHVybiBhY3RpdmVFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgIGNhc2UgQWN0aXZlSW5kaWNhdG9yUG9zaXRpb24uQ0VOVEVSOlxuICAgICAgICByZXR1cm4gYWN0aXZlRWxlbWVudC5vZmZzZXRUb3AgKyBhY3RpdmVFbGVtZW50Lm9mZnNldEhlaWdodCAvIDI7XG4gICAgICBjYXNlIEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLkVORDpcbiAgICAgICAgcmV0dXJuIGFjdGl2ZUVsZW1lbnQub2Zmc2V0VG9wICsgYWN0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRJbmRpY2F0b3JSZWxhdGl2ZU9mZnNldCgpOiBudW1iZXIge1xuICAgIHN3aXRjaCAodGhpcy5wb3NpdGlvbikge1xuICAgICAgY2FzZSBBY3RpdmVJbmRpY2F0b3JQb3NpdGlvbi5TVEFSVDpcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICBjYXNlIEFjdGl2ZUluZGljYXRvclBvc2l0aW9uLkNFTlRFUjpcbiAgICAgICAgcmV0dXJuIC01MDtcbiAgICAgIGNhc2UgQWN0aXZlSW5kaWNhdG9yUG9zaXRpb24uRU5EOlxuICAgICAgICByZXR1cm4gLTEwMDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -2,9 +2,9 @@ export const DefaultConnectedOverlayOptions = {
2
2
  hiddenClass: 'is-hidden',
3
3
  enableFallback: false,
4
4
  matchReferenceWidth: false,
5
- offset: 4,
5
+ offset: 8,
6
6
  outerPadding: 12,
7
7
  position: 'bottom',
8
8
  strategy: 'fixed',
9
9
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGVkLW92ZXJsYXktb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jZGsvY29ubmVjdGVkLW92ZXJsYXkvc3JjL2xpYi9tb2RlbHMvY29ubmVjdGVkLW92ZXJsYXktb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QkEsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQTRCO0lBQ3JFLFdBQVcsRUFBRSxXQUFXO0lBQ3hCLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLG1CQUFtQixFQUFFLEtBQUs7SUFDMUIsTUFBTSxFQUFFLENBQUM7SUFDVCxZQUFZLEVBQUUsRUFBRTtJQUNoQixRQUFRLEVBQUUsUUFBUTtJQUNsQixRQUFRLEVBQUUsT0FBTztDQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhY2VtZW50LCBTdHJhdGVneSB9IGZyb20gJ0BmbG9hdGluZy11aS9kb20nO1xuaW1wb3J0IHsgRHluYW1pY0NvbnRlbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2R5bmFtaWMtdmlldyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29ubmVjdGVkT3ZlcmxheU9wdGlvbnMge1xuICBjb250ZW50PzogRHluYW1pY0NvbnRlbnQgfCBudWxsO1xuICBjb250ZXh0PzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIGNvbnRhaW5lckNsYXNzPzogc3RyaW5nIHwgbnVsbDtcbiAgaGlkZGVuQ2xhc3M6IHN0cmluZyB8IG51bGw7XG4gIGVuYWJsZUZhbGxiYWNrOiBib29sZWFuO1xuICBtYXRjaFJlZmVyZW5jZVdpZHRoOiBib29sZWFuO1xuICBtaW5IZWlnaHQ/OiBudW1iZXIgfCBudWxsO1xuICBvZmZzZXQ6IG51bWJlcjtcbiAgb3V0ZXJQYWRkaW5nOiBudW1iZXI7XG4gIHBvc2l0aW9uOiBQbGFjZW1lbnQ7XG4gIHN0cmF0ZWd5OiBTdHJhdGVneTtcbiAgc2hvd0Fycm93PzogYm9vbGVhbjtcbiAgaG9va3M/OiB7XG4gICAgYmVmb3JlT3Blbj86ICgpID0+IHZvaWQ7XG4gICAgYWZ0ZXJPcGVuPzogKCkgPT4gdm9pZDtcbiAgICBiZWZvcmVDbG9zZT86ICgpID0+IHZvaWQ7XG4gICAgYWZ0ZXJDbG9zZT86ICgpID0+IHZvaWQ7XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0Q29ubmVjdGVkT3ZlcmxheU9wdGlvbnM6IENvbm5lY3RlZE92ZXJsYXlPcHRpb25zID0ge1xuICBoaWRkZW5DbGFzczogJ2lzLWhpZGRlbicsXG4gIGVuYWJsZUZhbGxiYWNrOiBmYWxzZSxcbiAgbWF0Y2hSZWZlcmVuY2VXaWR0aDogZmFsc2UsXG4gIG9mZnNldDogNCxcbiAgb3V0ZXJQYWRkaW5nOiAxMixcbiAgcG9zaXRpb246ICdib3R0b20nLFxuICBzdHJhdGVneTogJ2ZpeGVkJyxcbn07XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGVkLW92ZXJsYXktb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jZGsvY29ubmVjdGVkLW92ZXJsYXkvc3JjL2xpYi9tb2RlbHMvY29ubmVjdGVkLW92ZXJsYXktb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QkEsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQTRCO0lBQ3JFLFdBQVcsRUFBRSxXQUFXO0lBQ3hCLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLG1CQUFtQixFQUFFLEtBQUs7SUFDMUIsTUFBTSxFQUFFLENBQUM7SUFDVCxZQUFZLEVBQUUsRUFBRTtJQUNoQixRQUFRLEVBQUUsUUFBUTtJQUNsQixRQUFRLEVBQUUsT0FBTztDQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhY2VtZW50LCBTdHJhdGVneSB9IGZyb20gJ0BmbG9hdGluZy11aS9kb20nO1xuaW1wb3J0IHsgRHluYW1pY0NvbnRlbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2R5bmFtaWMtdmlldyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29ubmVjdGVkT3ZlcmxheU9wdGlvbnMge1xuICBjb250ZW50PzogRHluYW1pY0NvbnRlbnQgfCBudWxsO1xuICBjb250ZXh0PzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIGNvbnRhaW5lckNsYXNzPzogc3RyaW5nIHwgbnVsbDtcbiAgaGlkZGVuQ2xhc3M6IHN0cmluZyB8IG51bGw7XG4gIGVuYWJsZUZhbGxiYWNrOiBib29sZWFuO1xuICBtYXRjaFJlZmVyZW5jZVdpZHRoOiBib29sZWFuO1xuICBtaW5IZWlnaHQ/OiBudW1iZXIgfCBudWxsO1xuICBvZmZzZXQ6IG51bWJlcjtcbiAgb3V0ZXJQYWRkaW5nOiBudW1iZXI7XG4gIHBvc2l0aW9uOiBQbGFjZW1lbnQ7XG4gIHN0cmF0ZWd5OiBTdHJhdGVneTtcbiAgc2hvd0Fycm93PzogYm9vbGVhbjtcbiAgaG9va3M/OiB7XG4gICAgYmVmb3JlT3Blbj86ICgpID0+IHZvaWQ7XG4gICAgYWZ0ZXJPcGVuPzogKCkgPT4gdm9pZDtcbiAgICBiZWZvcmVDbG9zZT86ICgpID0+IHZvaWQ7XG4gICAgYWZ0ZXJDbG9zZT86ICgpID0+IHZvaWQ7XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0Q29ubmVjdGVkT3ZlcmxheU9wdGlvbnM6IENvbm5lY3RlZE92ZXJsYXlPcHRpb25zID0ge1xuICBoaWRkZW5DbGFzczogJ2lzLWhpZGRlbicsXG4gIGVuYWJsZUZhbGxiYWNrOiBmYWxzZSxcbiAgbWF0Y2hSZWZlcmVuY2VXaWR0aDogZmFsc2UsXG4gIG9mZnNldDogOCxcbiAgb3V0ZXJQYWRkaW5nOiAxMixcbiAgcG9zaXRpb246ICdib3R0b20nLFxuICBzdHJhdGVneTogJ2ZpeGVkJyxcbn07XG4iXX0=
@@ -1,4 +1,5 @@
1
+ export * from './lib/dropdown.component';
1
2
  export * from './lib/dropdown.directive';
2
3
  export * from './lib/dropdown.module';
3
4
  export * from './lib/models';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kcm9wZG93bi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuIl19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9kcm9wZG93bi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuIl19
@@ -16,6 +16,8 @@ let DropdownDirective = class DropdownDirective {
16
16
  this.element = injectElement();
17
17
  this.disabled = false;
18
18
  this.showLoader = false;
19
+ this.openTrigger = ['click', 'keydown.enter'];
20
+ this.closeTrigger = ['keyup.esc'];
19
21
  this.beforeOpen = new EventEmitter();
20
22
  this.afterOpen = new EventEmitter();
21
23
  this.beforeClose = new EventEmitter();
@@ -25,8 +27,8 @@ let DropdownDirective = class DropdownDirective {
25
27
  return this.overlayRef !== null;
26
28
  }
27
29
  ngAfterViewInit() {
28
- this.eventManager.register(['click', 'keydown.enter'], (event) => this.open(event), this.referenceElement);
29
- this.eventManager.register(['keyup.esc'], () => this.close(), 'document');
30
+ this.eventManager.register(this.openTrigger ?? [], (event) => this.open(event), this.triggerElement ?? this.referenceElement);
31
+ this.eventManager.register(this.closeTrigger ?? [], () => this.close(), 'document');
30
32
  }
31
33
  ngOnChanges(changes) {
32
34
  if (hasChanged(changes, 'disabled') && this.disabled) {
@@ -41,7 +43,7 @@ let DropdownDirective = class DropdownDirective {
41
43
  if (this.isOpen || !this.content || this.disabled)
42
44
  return;
43
45
  this.overlayRef = this.connectedOverlayService.createOverlay(this.referenceElement ?? this.element.nativeElement, this.createOverlayOptions(), {
44
- host: this.referenceElement,
46
+ host: this.host === undefined ? this.referenceElement : this.host,
45
47
  injector: this.injector,
46
48
  });
47
49
  }
@@ -53,7 +55,7 @@ let DropdownDirective = class DropdownDirective {
53
55
  return {
54
56
  ...DefaultDropdownOptions,
55
57
  ...this.options,
56
- containerClass: 'odx-dropdown-overlay',
58
+ containerClass: [this.options?.containerClass, 'odx-dropdown-overlay'].filter(Boolean).join(' '),
57
59
  content: DropdownComponent,
58
60
  context: { content: this.content },
59
61
  hooks: {
@@ -66,7 +68,7 @@ let DropdownDirective = class DropdownDirective {
66
68
  }
67
69
  };
68
70
  DropdownDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DropdownDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
69
- DropdownDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DropdownDirective, isStandalone: true, selector: "[odxDropdown]", inputs: { content: ["odxDropdown", "content"], disabled: ["odxDropdownDisabled", "disabled"], showLoader: ["odxDropdownShowLoader", "showLoader"], options: ["odxDropdownOptions", "options"], referenceElement: ["odxDropdownReferenceElement", "referenceElement"] }, outputs: { beforeOpen: "odxDropdownBeforeOpen", afterOpen: "odxDropdownAfterOpen", beforeClose: "odxDropdownBeforeClose", afterClose: "odxDropdownAfterClose" }, providers: [EventManager], exportAs: ["odxDropdown"], usesOnChanges: true, ngImport: i0 });
71
+ DropdownDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DropdownDirective, isStandalone: true, selector: "[odxDropdown]", inputs: { content: ["odxDropdown", "content"], disabled: ["odxDropdownDisabled", "disabled"], showLoader: ["odxDropdownShowLoader", "showLoader"], options: ["odxDropdownOptions", "options"], referenceElement: ["odxDropdownReferenceElement", "referenceElement"], triggerElement: ["odxDropdownTriggerElement", "triggerElement"], host: ["odxDropdownHost", "host"], openTrigger: ["odxDropdownOpenTrigger", "openTrigger"], closeTrigger: ["odxDropdownCloseTrigger", "closeTrigger"] }, outputs: { beforeOpen: "odxDropdownBeforeOpen", afterOpen: "odxDropdownAfterOpen", beforeClose: "odxDropdownBeforeClose", afterClose: "odxDropdownAfterClose" }, providers: [EventManager], exportAs: ["odxDropdown"], usesOnChanges: true, ngImport: i0 });
70
72
  __decorate([
71
73
  CSSModifier(),
72
74
  __metadata("design:type", Boolean),
@@ -107,6 +109,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
107
109
  }], referenceElement: [{
108
110
  type: Input,
109
111
  args: ['odxDropdownReferenceElement']
112
+ }], triggerElement: [{
113
+ type: Input,
114
+ args: ['odxDropdownTriggerElement']
115
+ }], host: [{
116
+ type: Input,
117
+ args: ['odxDropdownHost']
118
+ }], openTrigger: [{
119
+ type: Input,
120
+ args: ['odxDropdownOpenTrigger']
121
+ }], closeTrigger: [{
122
+ type: Input,
123
+ args: ['odxDropdownCloseTrigger']
110
124
  }], beforeOpen: [{
111
125
  type: Output,
112
126
  args: ['odxDropdownBeforeOpen']
@@ -120,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
120
134
  type: Output,
121
135
  args: ['odxDropdownAfterClose']
122
136
  }] } });
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZHJvcGRvd24vc3JjL2xpYi9kcm9wZG93bi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFnRCx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTNILE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBYSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQW1CLE1BQU0sVUFBVSxDQUFDOztBQVM1RCxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQUF2QjtRQUlZLDRCQUF1QixHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzFELGlCQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BDLGFBQVEsR0FBRyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxlQUFVLEdBQStCLElBQUksQ0FBQztRQUV0QyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFZbkMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUlqQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBU25CLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBR3RDLGNBQVMsR0FB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RVA7QUF6QmYsaUJBQWlCO0lBUDdCLFlBQVksQ0FBQyxlQUFlLENBQUM7R0FPakIsaUJBQWlCLENBd0Y3QjtTQXhGWSxpQkFBaUI7NEZBQWpCLGlCQUFpQjtrQkFON0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxhQUFhO29CQUN2QixTQUFTLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQzFCOzhCQWFZLE1BQU0sTUFLVixPQUFPO3NCQURiLEtBQUs7dUJBQUMsYUFBYTtnQkFLYixRQUFRO3NCQURkLEtBQUs7dUJBQUMscUJBQXFCO2dCQUtyQixVQUFVO3NCQURoQixLQUFLO3VCQUFDLHVCQUF1QjtnQkFJdkIsT0FBTztzQkFEYixLQUFLO3VCQUFDLG9CQUFvQjtnQkFJcEIsZ0JBQWdCO3NCQUR0QixLQUFLO3VCQUFDLDZCQUE2QjtnQkFJN0IsVUFBVTtzQkFEaEIsTUFBTTt1QkFBQyx1QkFBdUI7Z0JBSXhCLFNBQVM7c0JBRGYsTUFBTTt1QkFBQyxzQkFBc0I7Z0JBSXZCLFdBQVc7c0JBRGpCLE1BQU07dUJBQUMsd0JBQXdCO2dCQUl6QixVQUFVO3NCQURoQixNQUFNO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29ubmVjdGVkT3ZlcmxheU9wdGlvbnMsIENvbm5lY3RlZE92ZXJsYXlSZWYsIENvbm5lY3RlZE92ZXJsYXlTZXJ2aWNlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9jb25uZWN0ZWQtb3ZlcmxheSc7XG5pbXBvcnQgeyBEeW5hbWljQ29udGVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvZHluYW1pYy12aWV3JztcbmltcG9ydCB7IENTU0NvbXBvbmVudCwgQ1NTTW9kaWZpZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgRXZlbnRNYW5hZ2VyLCBnZXRJbmplY3RvciwgaGFzQ2hhbmdlZCwgaW5qZWN0RWxlbWVudCwgTmdDaGFuZ2VzLCBUcmFuc2Zvcm0gfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZWZhdWx0RHJvcGRvd25PcHRpb25zLCBEcm9wZG93bk9wdGlvbnMgfSBmcm9tICcuL21vZGVscyc7XG5cbkBDU1NDb21wb25lbnQoJ2Ryb3Bkb3duLWhvc3QnKVxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW29keERyb3Bkb3duXScsXG4gIGV4cG9ydEFzOiAnb2R4RHJvcGRvd24nLFxuICBwcm92aWRlcnM6IFtFdmVudE1hbmFnZXJdLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG4gIHB1YmxpYyBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dDtcbiAgcHVibGljIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9sb2FkaW5nOiBCb29sZWFuSW5wdXQ7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb25uZWN0ZWRPdmVybGF5U2VydmljZSA9IGluamVjdChDb25uZWN0ZWRPdmVybGF5U2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRNYW5hZ2VyID0gaW5qZWN0KEV2ZW50TWFuYWdlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3IgPSBnZXRJbmplY3RvcigpO1xuICBwcml2YXRlIG92ZXJsYXlSZWY6IENvbm5lY3RlZE92ZXJsYXlSZWYgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICBAQ1NTTW9kaWZpZXIoKVxuICBwdWJsaWMgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5UmVmICE9PSBudWxsO1xuICB9XG5cbiAgQElucHV0KCdvZHhEcm9wZG93bicpXG4gIHB1YmxpYyBjb250ZW50PzogRHluYW1pY0NvbnRlbnQgfCBudWxsO1xuXG4gIEBUcmFuc2Zvcm0oY29lcmNlQm9vbGVhblByb3BlcnR5KVxuICBASW5wdXQoJ29keERyb3Bkb3duRGlzYWJsZWQnKVxuICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBAVHJhbnNmb3JtKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSlcbiAgQElucHV0KCdvZHhEcm9wZG93blNob3dMb2FkZXInKVxuICBwdWJsaWMgc2hvd0xvYWRlciA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnb2R4RHJvcGRvd25PcHRpb25zJylcbiAgcHVibGljIG9wdGlvbnM/OiBQYXJ0aWFsPERyb3Bkb3duT3B0aW9ucz4gfCBudWxsO1xuXG4gIEBJbnB1dCgnb2R4RHJvcGRvd25SZWZlcmVuY2VFbGVtZW50JylcbiAgcHVibGljIHJlZmVyZW5jZUVsZW1lbnQ/OiBIVE1MRWxlbWVudCB8IG51bGw7XG5cbiAgQE91dHB1dCgnb2R4RHJvcGRvd25CZWZvcmVPcGVuJylcbiAgcHVibGljIGJlZm9yZU9wZW4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgnb2R4RHJvcGRvd25BZnRlck9wZW4nKVxuICBwdWJsaWMgYWZ0ZXJPcGVuID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoJ29keERyb3Bkb3duQmVmb3JlQ2xvc2UnKVxuICBwdWJsaWMgYmVmb3JlQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgnb2R4RHJvcGRvd25BZnRlckNsb3NlJylcbiAgcHVibGljIGFmdGVyQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50TWFuYWdlci5yZWdpc3RlcihbJ2NsaWNrJywgJ2tleWRvd24uZW50ZXInXSwgKGV2ZW50KSA9PiB0aGlzLm9wZW4oZXZlbnQpLCB0aGlzLnJlZmVyZW5jZUVsZW1lbnQpO1xuICAgIHRoaXMuZXZlbnRNYW5hZ2VyLnJlZ2lzdGVyKFsna2V5dXAuZXNjJ10sICgpID0+IHRoaXMuY2xvc2UoKSwgJ2RvY3VtZW50Jyk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogTmdDaGFuZ2VzPERyb3Bkb3duRGlyZWN0aXZlPikge1xuICAgIGlmIChoYXNDaGFuZ2VkKGNoYW5nZXMsICdkaXNhYmxlZCcpICYmIHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gICAgaWYgKGhhc0NoYW5nZWQoY2hhbmdlcywgWydvcHRpb25zJywgJ2NvbnRlbnQnLCAnc2hvd0xvYWRlciddKSkge1xuICAgICAgdGhpcy5vdmVybGF5UmVmPy51cGRhdGUodGhpcy5jcmVhdGVPdmVybGF5T3B0aW9ucygpKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlbihldmVudD86IEV2ZW50KSB7XG4gICAgZXZlbnQ/LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKHRoaXMuaXNPcGVuIHx8ICF0aGlzLmNvbnRlbnQgfHwgdGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMuY29ubmVjdGVkT3ZlcmxheVNlcnZpY2UuY3JlYXRlT3ZlcmxheSh0aGlzLnJlZmVyZW5jZUVsZW1lbnQgPz8gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHRoaXMuY3JlYXRlT3ZlcmxheU9wdGlvbnMoKSwge1xuICAgICAgaG9zdDogdGhpcy5yZWZlcmVuY2VFbGVtZW50LFxuICAgICAgaW5qZWN0b3I6IHRoaXMuaW5qZWN0b3IsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgdGhpcy5vdmVybGF5UmVmPy5jbG9zZSgpO1xuICAgIHRoaXMub3ZlcmxheVJlZiA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZU92ZXJsYXlPcHRpb25zKCk6IFBhcnRpYWw8Q29ubmVjdGVkT3ZlcmxheU9wdGlvbnM+IHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uRGVmYXVsdERyb3Bkb3duT3B0aW9ucyxcbiAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgIGNvbnRhaW5lckNsYXNzOiAnb2R4LWRyb3Bkb3duLW92ZXJsYXknLFxuICAgICAgY29udGVudDogRHJvcGRvd25Db21wb25lbnQsXG4gICAgICBjb250ZXh0OiB7IGNvbnRlbnQ6IHRoaXMuY29udGVudCB9LFxuICAgICAgaG9va3M6IHtcbiAgICAgICAgYmVmb3JlT3BlbjogKCkgPT4gdGhpcy5iZWZvcmVPcGVuLmVtaXQoKSxcbiAgICAgICAgYWZ0ZXJPcGVuOiAoKSA9PiB0aGlzLmFmdGVyT3Blbi5lbWl0KCksXG4gICAgICAgIGJlZm9yZUNsb3NlOiAoKSA9PiB0aGlzLmJlZm9yZUNsb3NlLmVtaXQoKSxcbiAgICAgICAgYWZ0ZXJDbG9zZTogKCkgPT4gdGhpcy5hZnRlckNsb3NlLmVtaXQoKSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxufVxuIl19
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvZHJvcGRvd24vc3JjL2xpYi9kcm9wZG93bi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFnRCx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTNILE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBYSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQW1CLE1BQU0sVUFBVSxDQUFDOztBQVM1RCxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQUF2QjtRQUlZLDRCQUF1QixHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzFELGlCQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BDLGFBQVEsR0FBRyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxlQUFVLEdBQStCLElBQUksQ0FBQztRQUV0QyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFZbkMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUlqQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBZW5CLGdCQUFXLEdBQXFCLENBQUMsT0FBTyxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBRzNELGlCQUFZLEdBQXFCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFHL0MsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFHdEMsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFHckMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBR3ZDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBNkM5QztJQXpGQyxJQUNXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLEtBQUssSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUEyQ00sZUFBZTtRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlILElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRU0sV0FBVyxDQUFDLE9BQXFDO1FBQ3RELElBQUksVUFBVSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3BELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNkO1FBQ0QsSUFBSSxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQyxFQUFFO1lBQzdELElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7U0FDdEQ7SUFDSCxDQUFDO0lBRU0sSUFBSSxDQUFDLEtBQWE7UUFDdkIsS0FBSyxFQUFFLGNBQWMsRUFBRSxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzFELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUU7WUFDN0ksSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQ2pFLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN4QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixPQUFPO1lBQ0wsR0FBRyxzQkFBc0I7WUFDekIsR0FBRyxJQUFJLENBQUMsT0FBTztZQUNmLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLHNCQUFzQixDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDaEcsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxLQUFLLEVBQUU7Z0JBQ0wsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFO2dCQUN4QyxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7Z0JBQ3RDLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRTtnQkFDMUMsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFO2FBQ3pDO1NBQ0YsQ0FBQztJQUNKLENBQUM7OytHQW5HVSxpQkFBaUI7bUdBQWpCLGlCQUFpQiw0ckJBRmpCLENBQUMsWUFBWSxDQUFDO0FBYXpCO0lBQUMsV0FBVyxFQUFFOzs7K0NBR2I7QUFLRDtJQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQzs7bURBRVQ7QUFFeEI7SUFBQyxTQUFTLENBQUMscUJBQXFCLENBQUM7O3FEQUVQO0FBekJmLGlCQUFpQjtJQVA3QixZQUFZLENBQUMsZUFBZSxDQUFDO0dBT2pCLGlCQUFpQixDQW9HN0I7U0FwR1ksaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBTjdCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxlQUFlO29CQUN6QixRQUFRLEVBQUUsYUFBYTtvQkFDdkIsU0FBUyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUMxQjs4QkFhWSxNQUFNLE1BS1YsT0FBTztzQkFEYixLQUFLO3VCQUFDLGFBQWE7Z0JBS2IsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLHFCQUFxQjtnQkFLckIsVUFBVTtzQkFEaEIsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBSXZCLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxvQkFBb0I7Z0JBSXBCLGdCQUFnQjtzQkFEdEIsS0FBSzt1QkFBQyw2QkFBNkI7Z0JBSTdCLGNBQWM7c0JBRHBCLEtBQUs7dUJBQUMsMkJBQTJCO2dCQUkzQixJQUFJO3NCQURWLEtBQUs7dUJBQUMsaUJBQWlCO2dCQUlqQixXQUFXO3NCQURqQixLQUFLO3VCQUFDLHdCQUF3QjtnQkFJeEIsWUFBWTtzQkFEbEIsS0FBSzt1QkFBQyx5QkFBeUI7Z0JBSXpCLFVBQVU7c0JBRGhCLE1BQU07dUJBQUMsdUJBQXVCO2dCQUl4QixTQUFTO3NCQURmLE1BQU07dUJBQUMsc0JBQXNCO2dCQUl2QixXQUFXO3NCQURqQixNQUFNO3VCQUFDLHdCQUF3QjtnQkFJekIsVUFBVTtzQkFEaEIsTUFBTTt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbm5lY3RlZE92ZXJsYXlPcHRpb25zLCBDb25uZWN0ZWRPdmVybGF5UmVmLCBDb25uZWN0ZWRPdmVybGF5U2VydmljZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvY29ubmVjdGVkLW92ZXJsYXknO1xuaW1wb3J0IHsgRHluYW1pY0NvbnRlbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2R5bmFtaWMtdmlldyc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQsIENTU01vZGlmaWVyIH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IEV2ZW50TWFuYWdlciwgZ2V0SW5qZWN0b3IsIGhhc0NoYW5nZWQsIGluamVjdEVsZW1lbnQsIE5nQ2hhbmdlcywgVHJhbnNmb3JtIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGVmYXVsdERyb3Bkb3duT3B0aW9ucywgRHJvcGRvd25PcHRpb25zIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5AQ1NTQ29tcG9uZW50KCdkcm9wZG93bi1ob3N0JylcbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tvZHhEcm9wZG93bl0nLFxuICBleHBvcnRBczogJ29keERyb3Bkb3duJyxcbiAgcHJvdmlkZXJzOiBbRXZlbnRNYW5hZ2VyXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJvcGRvd25EaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBwdWJsaWMgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVkOiBCb29sZWFuSW5wdXQ7XG4gIHB1YmxpYyBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfbG9hZGluZzogQm9vbGVhbklucHV0O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgY29ubmVjdGVkT3ZlcmxheVNlcnZpY2UgPSBpbmplY3QoQ29ubmVjdGVkT3ZlcmxheVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50TWFuYWdlciA9IGluamVjdChFdmVudE1hbmFnZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yID0gZ2V0SW5qZWN0b3IoKTtcbiAgcHJpdmF0ZSBvdmVybGF5UmVmOiBDb25uZWN0ZWRPdmVybGF5UmVmIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgQENTU01vZGlmaWVyKClcbiAgcHVibGljIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3ZlcmxheVJlZiAhPT0gbnVsbDtcbiAgfVxuXG4gIEBJbnB1dCgnb2R4RHJvcGRvd24nKVxuICBwdWJsaWMgY29udGVudD86IER5bmFtaWNDb250ZW50IHwgbnVsbDtcblxuICBAVHJhbnNmb3JtKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSlcbiAgQElucHV0KCdvZHhEcm9wZG93bkRpc2FibGVkJylcbiAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQFRyYW5zZm9ybShjb2VyY2VCb29sZWFuUHJvcGVydHkpXG4gIEBJbnB1dCgnb2R4RHJvcGRvd25TaG93TG9hZGVyJylcbiAgcHVibGljIHNob3dMb2FkZXIgPSBmYWxzZTtcblxuICBASW5wdXQoJ29keERyb3Bkb3duT3B0aW9ucycpXG4gIHB1YmxpYyBvcHRpb25zPzogUGFydGlhbDxEcm9wZG93bk9wdGlvbnM+IHwgbnVsbDtcblxuICBASW5wdXQoJ29keERyb3Bkb3duUmVmZXJlbmNlRWxlbWVudCcpXG4gIHB1YmxpYyByZWZlcmVuY2VFbGVtZW50PzogSFRNTEVsZW1lbnQgfCBudWxsO1xuXG4gIEBJbnB1dCgnb2R4RHJvcGRvd25UcmlnZ2VyRWxlbWVudCcpXG4gIHB1YmxpYyB0cmlnZ2VyRWxlbWVudD86IEhUTUxFbGVtZW50IHwgbnVsbDtcblxuICBASW5wdXQoJ29keERyb3Bkb3duSG9zdCcpXG4gIHB1YmxpYyBob3N0PzogSFRNTEVsZW1lbnQgfCBudWxsO1xuXG4gIEBJbnB1dCgnb2R4RHJvcGRvd25PcGVuVHJpZ2dlcicpXG4gIHB1YmxpYyBvcGVuVHJpZ2dlcj86IHN0cmluZ1tdIHwgbnVsbCA9IFsnY2xpY2snLCAna2V5ZG93bi5lbnRlciddO1xuXG4gIEBJbnB1dCgnb2R4RHJvcGRvd25DbG9zZVRyaWdnZXInKVxuICBwdWJsaWMgY2xvc2VUcmlnZ2VyPzogc3RyaW5nW10gfCBudWxsID0gWydrZXl1cC5lc2MnXTtcblxuICBAT3V0cHV0KCdvZHhEcm9wZG93bkJlZm9yZU9wZW4nKVxuICBwdWJsaWMgYmVmb3JlT3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KCdvZHhEcm9wZG93bkFmdGVyT3BlbicpXG4gIHB1YmxpYyBhZnRlck9wZW4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgnb2R4RHJvcGRvd25CZWZvcmVDbG9zZScpXG4gIHB1YmxpYyBiZWZvcmVDbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KCdvZHhEcm9wZG93bkFmdGVyQ2xvc2UnKVxuICBwdWJsaWMgYWZ0ZXJDbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnRNYW5hZ2VyLnJlZ2lzdGVyKHRoaXMub3BlblRyaWdnZXIgPz8gW10sIChldmVudCkgPT4gdGhpcy5vcGVuKGV2ZW50KSwgdGhpcy50cmlnZ2VyRWxlbWVudCA/PyB0aGlzLnJlZmVyZW5jZUVsZW1lbnQpO1xuICAgIHRoaXMuZXZlbnRNYW5hZ2VyLnJlZ2lzdGVyKHRoaXMuY2xvc2VUcmlnZ2VyID8/IFtdLCAoKSA9PiB0aGlzLmNsb3NlKCksICdkb2N1bWVudCcpO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IE5nQ2hhbmdlczxEcm9wZG93bkRpcmVjdGl2ZT4pIHtcbiAgICBpZiAoaGFzQ2hhbmdlZChjaGFuZ2VzLCAnZGlzYWJsZWQnKSAmJiB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICAgIGlmIChoYXNDaGFuZ2VkKGNoYW5nZXMsIFsnb3B0aW9ucycsICdjb250ZW50JywgJ3Nob3dMb2FkZXInXSkpIHtcbiAgICAgIHRoaXMub3ZlcmxheVJlZj8udXBkYXRlKHRoaXMuY3JlYXRlT3ZlcmxheU9wdGlvbnMoKSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9wZW4oZXZlbnQ/OiBFdmVudCkge1xuICAgIGV2ZW50Py5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmICh0aGlzLmlzT3BlbiB8fCAhdGhpcy5jb250ZW50IHx8IHRoaXMuZGlzYWJsZWQpIHJldHVybjtcbiAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLmNvbm5lY3RlZE92ZXJsYXlTZXJ2aWNlLmNyZWF0ZU92ZXJsYXkodGhpcy5yZWZlcmVuY2VFbGVtZW50ID8/IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCB0aGlzLmNyZWF0ZU92ZXJsYXlPcHRpb25zKCksIHtcbiAgICAgIGhvc3Q6IHRoaXMuaG9zdCA9PT0gdW5kZWZpbmVkID8gdGhpcy5yZWZlcmVuY2VFbGVtZW50IDogdGhpcy5ob3N0LFxuICAgICAgaW5qZWN0b3I6IHRoaXMuaW5qZWN0b3IsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgdGhpcy5vdmVybGF5UmVmPy5jbG9zZSgpO1xuICAgIHRoaXMub3ZlcmxheVJlZiA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZU92ZXJsYXlPcHRpb25zKCk6IFBhcnRpYWw8Q29ubmVjdGVkT3ZlcmxheU9wdGlvbnM+IHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uRGVmYXVsdERyb3Bkb3duT3B0aW9ucyxcbiAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgIGNvbnRhaW5lckNsYXNzOiBbdGhpcy5vcHRpb25zPy5jb250YWluZXJDbGFzcywgJ29keC1kcm9wZG93bi1vdmVybGF5J10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyAnKSxcbiAgICAgIGNvbnRlbnQ6IERyb3Bkb3duQ29tcG9uZW50LFxuICAgICAgY29udGV4dDogeyBjb250ZW50OiB0aGlzLmNvbnRlbnQgfSxcbiAgICAgIGhvb2tzOiB7XG4gICAgICAgIGJlZm9yZU9wZW46ICgpID0+IHRoaXMuYmVmb3JlT3Blbi5lbWl0KCksXG4gICAgICAgIGFmdGVyT3BlbjogKCkgPT4gdGhpcy5hZnRlck9wZW4uZW1pdCgpLFxuICAgICAgICBiZWZvcmVDbG9zZTogKCkgPT4gdGhpcy5iZWZvcmVDbG9zZS5lbWl0KCksXG4gICAgICAgIGFmdGVyQ2xvc2U6ICgpID0+IHRoaXMuYWZ0ZXJDbG9zZS5lbWl0KCksXG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -3,5 +3,6 @@ export const DefaultDropdownOptions = {
3
3
  matchReferenceWidth: false,
4
4
  enableFallback: true,
5
5
  minHeight: 0,
6
+ offset: 8,
6
7
  };
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2Ryb3Bkb3duL3NyYy9saWIvbW9kZWxzL2Ryb3Bkb3duLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQW9CO0lBQ3JELFFBQVEsRUFBRSxRQUFRO0lBQ2xCLG1CQUFtQixFQUFFLEtBQUs7SUFDMUIsY0FBYyxFQUFFLElBQUk7SUFDcEIsU0FBUyxFQUFFLENBQUM7Q0FDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29ubmVjdGVkT3ZlcmxheU9wdGlvbnMgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2Nvbm5lY3RlZC1vdmVybGF5JztcblxuZXhwb3J0IHR5cGUgRHJvcGRvd25PcHRpb25zID0gUGljazxDb25uZWN0ZWRPdmVybGF5T3B0aW9ucywgJ3Bvc2l0aW9uJyB8ICdlbmFibGVGYWxsYmFjaycgfCAnbWF0Y2hSZWZlcmVuY2VXaWR0aCcgfCAnbWluSGVpZ2h0Jz47XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0RHJvcGRvd25PcHRpb25zOiBEcm9wZG93bk9wdGlvbnMgPSB7XG4gIHBvc2l0aW9uOiAnYm90dG9tJyxcbiAgbWF0Y2hSZWZlcmVuY2VXaWR0aDogZmFsc2UsXG4gIGVuYWJsZUZhbGxiYWNrOiB0cnVlLFxuICBtaW5IZWlnaHQ6IDAsXG59O1xuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2Ryb3Bkb3duL3NyYy9saWIvbW9kZWxzL2Ryb3Bkb3duLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQW9CO0lBQ3JELFFBQVEsRUFBRSxRQUFRO0lBQ2xCLG1CQUFtQixFQUFFLEtBQUs7SUFDMUIsY0FBYyxFQUFFLElBQUk7SUFDcEIsU0FBUyxFQUFFLENBQUM7SUFDWixNQUFNLEVBQUUsQ0FBQztDQUNWLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25uZWN0ZWRPdmVybGF5T3B0aW9ucyB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvY29ubmVjdGVkLW92ZXJsYXknO1xuXG5leHBvcnQgdHlwZSBEcm9wZG93bk9wdGlvbnMgPSBQaWNrPFxuICBDb25uZWN0ZWRPdmVybGF5T3B0aW9ucyxcbiAgJ3Bvc2l0aW9uJyB8ICdjb250YWluZXJDbGFzcycgfCAnZW5hYmxlRmFsbGJhY2snIHwgJ21hdGNoUmVmZXJlbmNlV2lkdGgnIHwgJ21pbkhlaWdodCcgfCAnb2Zmc2V0JyB8ICdzaG93QXJyb3cnXG4+O1xuXG5leHBvcnQgY29uc3QgRGVmYXVsdERyb3Bkb3duT3B0aW9uczogRHJvcGRvd25PcHRpb25zID0ge1xuICBwb3NpdGlvbjogJ2JvdHRvbScsXG4gIG1hdGNoUmVmZXJlbmNlV2lkdGg6IGZhbHNlLFxuICBlbmFibGVGYWxsYmFjazogdHJ1ZSxcbiAgbWluSGVpZ2h0OiAwLFxuICBvZmZzZXQ6IDgsXG59O1xuIl19
@@ -0,0 +1,6 @@
1
+ export * from './lib/components/launch-tile-footer/launch-tile-footer.component';
2
+ export * from './lib/components/launch-tile-subtitle/launch-tile-subtitle.component';
3
+ export * from './lib/directives/launch-tile-menu/launch-tile-menu.directive';
4
+ export * from './lib/launch-tile.component';
5
+ export * from './lib/launch-tile.module';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9sYXVuY2gtdGlsZS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sYXVuY2gtdGlsZS1mb290ZXIvbGF1bmNoLXRpbGUtZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xhdW5jaC10aWxlLXN1YnRpdGxlL2xhdW5jaC10aWxlLXN1YnRpdGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2xhdW5jaC10aWxlLW1lbnUvbGF1bmNoLXRpbGUtbWVudS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGF1bmNoLXRpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xhdW5jaC10aWxlLm1vZHVsZSc7XG4iXX0=
@@ -0,0 +1,13 @@
1
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class LaunchTileFooterComponent {
4
+ }
5
+ LaunchTileFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ LaunchTileFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileFooterComponent, isStandalone: true, selector: "odx-launch-tile-footer", host: { properties: { "class.odx-launch-tile__footer": "true" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileFooterComponent, decorators: [{
8
+ type: Component,
9
+ args: [{ selector: 'odx-launch-tile-footer', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
10
+ '[class.odx-launch-tile__footer]': 'true',
11
+ }, template: "<ng-content></ng-content>\n" }]
12
+ }] });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLXRpbGUtZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2xhdW5jaC10aWxlL3NyYy9saWIvY29tcG9uZW50cy9sYXVuY2gtdGlsZS1mb290ZXIvbGF1bmNoLXRpbGUtZm9vdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2xhdW5jaC10aWxlL3NyYy9saWIvY29tcG9uZW50cy9sYXVuY2gtdGlsZS1mb290ZXIvbGF1bmNoLXRpbGUtZm9vdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBWXRGLE1BQU0sT0FBTyx5QkFBeUI7O3VIQUF6Qix5QkFBeUI7MkdBQXpCLHlCQUF5QixxSkNadEMsNkJBQ0E7NEZEV2EseUJBQXlCO2tCQVZyQyxTQUFTOytCQUNFLHdCQUF3QixjQUV0QixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osaUNBQWlDLEVBQUUsTUFBTTtxQkFDMUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtbGF1bmNoLXRpbGUtZm9vdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xhdW5jaC10aWxlLWZvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vZHgtbGF1bmNoLXRpbGVfX2Zvb3Rlcl0nOiAndHJ1ZScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIExhdW5jaFRpbGVGb290ZXJDb21wb25lbnQge31cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
@@ -0,0 +1,13 @@
1
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class LaunchTileSubtitleComponent {
4
+ }
5
+ LaunchTileSubtitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileSubtitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ LaunchTileSubtitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileSubtitleComponent, isStandalone: true, selector: "odx-launch-tile-subtitle", host: { properties: { "class.odx-launch-tile__subtitle": "true" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileSubtitleComponent, decorators: [{
8
+ type: Component,
9
+ args: [{ selector: 'odx-launch-tile-subtitle', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
10
+ '[class.odx-launch-tile__subtitle]': 'true',
11
+ }, template: "<ng-content></ng-content>\n" }]
12
+ }] });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLXRpbGUtc3VidGl0bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbGF1bmNoLXRpbGUvc3JjL2xpYi9jb21wb25lbnRzL2xhdW5jaC10aWxlLXN1YnRpdGxlL2xhdW5jaC10aWxlLXN1YnRpdGxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2xhdW5jaC10aWxlL3NyYy9saWIvY29tcG9uZW50cy9sYXVuY2gtdGlsZS1zdWJ0aXRsZS9sYXVuY2gtdGlsZS1zdWJ0aXRsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVl0RixNQUFNLE9BQU8sMkJBQTJCOzt5SEFBM0IsMkJBQTJCOzZHQUEzQiwyQkFBMkIseUpDWnhDLDZCQUNBOzRGRFdhLDJCQUEyQjtrQkFWdkMsU0FBUzsrQkFDRSwwQkFBMEIsY0FFeEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CO3dCQUNKLG1DQUFtQyxFQUFFLE1BQU07cUJBQzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2R4LWxhdW5jaC10aWxlLXN1YnRpdGxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xhdW5jaC10aWxlLXN1YnRpdGxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLm9keC1sYXVuY2gtdGlsZV9fc3VidGl0bGVdJzogJ3RydWUnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBMYXVuY2hUaWxlU3VidGl0bGVDb21wb25lbnQge31cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class LaunchTileMenuListDirective {
4
+ }
5
+ LaunchTileMenuListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileMenuListDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
+ LaunchTileMenuListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileMenuListDirective, isStandalone: true, selector: "[odxLaunchTileMenuList]", host: { properties: { "class.odx-launch-tile__menu-list": "true" } }, ngImport: i0 });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileMenuListDirective, decorators: [{
8
+ type: Directive,
9
+ args: [{
10
+ standalone: true,
11
+ selector: '[odxLaunchTileMenuList]',
12
+ host: {
13
+ '[class.odx-launch-tile__menu-list]': 'true',
14
+ },
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLXRpbGUtbWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9sYXVuY2gtdGlsZS9zcmMvbGliL2RpcmVjdGl2ZXMvbGF1bmNoLXRpbGUtbWVudS9sYXVuY2gtdGlsZS1tZW51LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVMxQyxNQUFNLE9BQU8sMkJBQTJCOzt5SEFBM0IsMkJBQTJCOzZHQUEzQiwyQkFBMkI7NEZBQTNCLDJCQUEyQjtrQkFQdkMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsSUFBSSxFQUFFO3dCQUNKLG9DQUFvQyxFQUFFLE1BQU07cUJBQzdDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tvZHhMYXVuY2hUaWxlTWVudUxpc3RdJyxcbiAgaG9zdDoge1xuICAgICdbY2xhc3Mub2R4LWxhdW5jaC10aWxlX19tZW51LWxpc3RdJzogJ3RydWUnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBMYXVuY2hUaWxlTWVudUxpc3REaXJlY3RpdmUge31cbiJdfQ==
@@ -0,0 +1,40 @@
1
+ import { __decorate } from "tslib";
2
+ import { ChangeDetectionStrategy, Component, ContentChild, ViewEncapsulation } from '@angular/core';
3
+ import { DisabledController } from '@odx/angular';
4
+ import { ActionGroupComponent } from '@odx/angular/components/action-group';
5
+ import { ButtonComponent } from '@odx/angular/components/button';
6
+ import { DropdownModule } from '@odx/angular/components/dropdown';
7
+ import { IconComponent } from '@odx/angular/components/icon';
8
+ import { CSSComponent } from '@odx/angular/internal';
9
+ import { injectElement } from '@odx/angular/utils';
10
+ import { LaunchTileMenuListDirective } from './directives/launch-tile-menu/launch-tile-menu.directive';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@angular/common";
13
+ import * as i2 from "@odx/angular";
14
+ import * as i3 from "@odx/angular/components/dropdown";
15
+ let LaunchTileComponent = class LaunchTileComponent {
16
+ constructor() {
17
+ this.disabledController = DisabledController.inject();
18
+ this.element = injectElement();
19
+ }
20
+ get isDisabled() {
21
+ return !!this.disabledController?.disabled;
22
+ }
23
+ };
24
+ LaunchTileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
25
+ LaunchTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileComponent, isStandalone: true, selector: "odx-launch-tile", host: { properties: { "class.is-disabled": "isDisabled", "attr.tabindex": "isDisabled ? -1 : 0" } }, providers: [DisabledController.connect()], queries: [{ propertyName: "menuList", first: true, predicate: LaunchTileMenuListDirective, descendants: true }], ngImport: i0, template: "<odx-action-group *ngIf=\"!!menuList\">\n <button [disabled]=\"isDisabled\" odxButton [odxDropdown]=\"menu\" [odxDropdownOptions]=\"{ position: 'bottom-end' }\" [odxDropdownHost]=\"element.nativeElement\">\n <odx-icon name=\"more\"></odx-icon>\n </button>\n\n <ng-template #menu>\n <ng-content select=\"odx-list[odxLaunchTileMenuList]\"></ng-content>\n </ng-template>\n</odx-action-group>\n\n<div class=\"odx-launch-tile__container\">\n <ng-content select=\"odx-avatar\"></ng-content>\n <div class=\"odx-launch-tile__content\">\n <div class=\"odx-launch-tile__title\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"odx-launch-tile-subtitle\"></ng-content>\n </div>\n</div>\n\n<ng-content select=\"odx-launch-tile-footer\"></ng-content>\n", dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "directive", type: i3.DropdownDirective, selector: "[odxDropdown]", inputs: ["odxDropdown", "odxDropdownDisabled", "odxDropdownShowLoader", "odxDropdownOptions", "odxDropdownReferenceElement", "odxDropdownTriggerElement", "odxDropdownHost", "odxDropdownOpenTrigger", "odxDropdownCloseTrigger"], outputs: ["odxDropdownBeforeOpen", "odxDropdownAfterOpen", "odxDropdownBeforeClose", "odxDropdownAfterClose"], exportAs: ["odxDropdown"] }, { kind: "component", type: ActionGroupComponent, selector: "odx-action-group", inputs: ["reverse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
26
+ LaunchTileComponent = __decorate([
27
+ CSSComponent('launch-tile')
28
+ ], LaunchTileComponent);
29
+ export { LaunchTileComponent };
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileComponent, decorators: [{
31
+ type: Component,
32
+ args: [{ selector: 'odx-launch-tile', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [DisabledController.connect()], imports: [ButtonComponent, IconComponent, DropdownModule, ActionGroupComponent], host: {
33
+ '[class.is-disabled]': 'isDisabled',
34
+ '[attr.tabindex]': 'isDisabled ? -1 : 0',
35
+ }, template: "<odx-action-group *ngIf=\"!!menuList\">\n <button [disabled]=\"isDisabled\" odxButton [odxDropdown]=\"menu\" [odxDropdownOptions]=\"{ position: 'bottom-end' }\" [odxDropdownHost]=\"element.nativeElement\">\n <odx-icon name=\"more\"></odx-icon>\n </button>\n\n <ng-template #menu>\n <ng-content select=\"odx-list[odxLaunchTileMenuList]\"></ng-content>\n </ng-template>\n</odx-action-group>\n\n<div class=\"odx-launch-tile__container\">\n <ng-content select=\"odx-avatar\"></ng-content>\n <div class=\"odx-launch-tile__content\">\n <div class=\"odx-launch-tile__title\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"odx-launch-tile-subtitle\"></ng-content>\n </div>\n</div>\n\n<ng-content select=\"odx-launch-tile-footer\"></ng-content>\n" }]
36
+ }], propDecorators: { menuList: [{
37
+ type: ContentChild,
38
+ args: [LaunchTileMenuListDirective]
39
+ }] } });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLXRpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvbGF1bmNoLXRpbGUvc3JjL2xpYi9sYXVuY2gtdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9sYXVuY2gtdGlsZS9zcmMvbGliL2xhdW5jaC10aWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQzs7Ozs7QUFnQmhHLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBQXpCO1FBQ2MsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFcEQsWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO0tBUTNDO0lBTkMsSUFBVyxVQUFVO1FBQ25CLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxRQUFRLENBQUM7SUFDN0MsQ0FBQzs7aUhBUFUsbUJBQW1CO3FHQUFuQixtQkFBbUIsbUtBUG5CLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLENBQUMsZ0VBZ0IzQiwyQkFBMkIsZ0RDakMzQyw0d0JBcUJBLDRDREhZLGVBQWUseUdBQUUsYUFBYSx3RkFBRSxjQUFjLGdxQkFBRSxvQkFBb0I7QUFNbkUsbUJBQW1CO0lBZC9CLFlBQVksQ0FBQyxhQUFhLENBQUM7R0FjZixtQkFBbUIsQ0FXL0I7U0FYWSxtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFiL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FFZixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUIsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxXQUNoQyxDQUFDLGVBQWUsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixDQUFDLFFBQ3pFO3dCQUNKLHFCQUFxQixFQUFFLFlBQVk7d0JBQ25DLGlCQUFpQixFQUFFLHFCQUFxQjtxQkFDekM7OEJBWWUsUUFBUTtzQkFEdkIsWUFBWTt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaXNhYmxlZENvbnRyb2xsZXIgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQWN0aW9uR3JvdXBDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY29tcG9uZW50cy9hY3Rpb24tZ3JvdXAnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgTGF1bmNoVGlsZU1lbnVMaXN0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2xhdW5jaC10aWxlLW1lbnUvbGF1bmNoLXRpbGUtbWVudS5kaXJlY3RpdmUnO1xuXG5AQ1NTQ29tcG9uZW50KCdsYXVuY2gtdGlsZScpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtbGF1bmNoLXRpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGF1bmNoLXRpbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbRGlzYWJsZWRDb250cm9sbGVyLmNvbm5lY3QoKV0sXG4gIGltcG9ydHM6IFtCdXR0b25Db21wb25lbnQsIEljb25Db21wb25lbnQsIERyb3Bkb3duTW9kdWxlLCBBY3Rpb25Hcm91cENvbXBvbmVudF0sXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmlzLWRpc2FibGVkXSc6ICdpc0Rpc2FibGVkJyxcbiAgICAnW2F0dHIudGFiaW5kZXhdJzogJ2lzRGlzYWJsZWQgPyAtMSA6IDAnLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBMYXVuY2hUaWxlQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpc2FibGVkQ29udHJvbGxlciA9IERpc2FibGVkQ29udHJvbGxlci5pbmplY3QoKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICBwdWJsaWMgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5kaXNhYmxlZENvbnRyb2xsZXI/LmRpc2FibGVkO1xuICB9XG5cbiAgQENvbnRlbnRDaGlsZChMYXVuY2hUaWxlTWVudUxpc3REaXJlY3RpdmUpXG4gIHB1YmxpYyByZWFkb25seSBtZW51TGlzdD86IExhdW5jaFRpbGVNZW51TGlzdERpcmVjdGl2ZTtcbn1cbiIsIjxvZHgtYWN0aW9uLWdyb3VwICpuZ0lmPVwiISFtZW51TGlzdFwiPlxuICA8YnV0dG9uIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCIgb2R4QnV0dG9uIFtvZHhEcm9wZG93bl09XCJtZW51XCIgW29keERyb3Bkb3duT3B0aW9uc109XCJ7IHBvc2l0aW9uOiAnYm90dG9tLWVuZCcgfVwiIFtvZHhEcm9wZG93bkhvc3RdPVwiZWxlbWVudC5uYXRpdmVFbGVtZW50XCI+XG4gICAgPG9keC1pY29uIG5hbWU9XCJtb3JlXCI+PC9vZHgtaWNvbj5cbiAgPC9idXR0b24+XG5cbiAgPG5nLXRlbXBsYXRlICNtZW51PlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIm9keC1saXN0W29keExhdW5jaFRpbGVNZW51TGlzdF1cIj48L25nLWNvbnRlbnQ+XG4gIDwvbmctdGVtcGxhdGU+XG48L29keC1hY3Rpb24tZ3JvdXA+XG5cbjxkaXYgY2xhc3M9XCJvZHgtbGF1bmNoLXRpbGVfX2NvbnRhaW5lclwiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJvZHgtYXZhdGFyXCI+PC9uZy1jb250ZW50PlxuICA8ZGl2IGNsYXNzPVwib2R4LWxhdW5jaC10aWxlX19jb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cIm9keC1sYXVuY2gtdGlsZV9fdGl0bGVcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJvZHgtbGF1bmNoLXRpbGUtc3VidGl0bGVcIj48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy1jb250ZW50IHNlbGVjdD1cIm9keC1sYXVuY2gtdGlsZS1mb290ZXJcIj48L25nLWNvbnRlbnQ+XG4iXX0=