@odx/angular 2.0.0 → 2.1.2

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 (94) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/breakpoints/README.md +3 -0
  3. package/breakpoints/index.d.ts +7 -0
  4. package/breakpoints/lib/breakpoints.config.d.ts +21 -0
  5. package/breakpoints/lib/breakpoints.module.d.ts +7 -0
  6. package/breakpoints/lib/breakpoints.service.d.ts +13 -0
  7. package/breakpoints/lib/breakpoints.typings.d.ts +8 -0
  8. package/breakpoints/lib/directives/index.d.ts +1 -0
  9. package/breakpoints/lib/directives/match-breakpoints.directive.d.ts +16 -0
  10. package/breakpoints/lib/helpers/configure-breakpoint.d.ts +4 -0
  11. package/breakpoints/lib/helpers/index.d.ts +1 -0
  12. package/breakpoints/lib/models/breakpoint.d.ts +5 -0
  13. package/breakpoints/lib/models/index.d.ts +1 -0
  14. package/cdk/autocomplete-control/lib/autocomplete-control.d.ts +1 -1
  15. package/cdk/autocomplete-control/lib/pipes/base-search-filter-pipe.d.ts +3 -3
  16. package/cdk/expandable/lib/directives/expandable-item.directive.d.ts +1 -1
  17. package/components/autocomplete/lib/pipes/autocomplete-search-filter.pipe.d.ts +4 -4
  18. package/components/menu/lib/menu.module.d.ts +3 -2
  19. package/components/rail-navigation/index.d.ts +2 -1
  20. package/components/rail-navigation/lib/components/index.d.ts +1 -0
  21. package/components/rail-navigation/lib/models/index.d.ts +1 -0
  22. package/components/rail-navigation/lib/models/rail-navigation-variant.d.ts +5 -0
  23. package/components/rail-navigation/lib/rail-navigation.component.d.ts +4 -2
  24. package/components/rail-navigation/lib/rail-navigation.module.d.ts +2 -2
  25. package/components/select/lib/pipes/select-search-filter.pipe.d.ts +4 -4
  26. package/esm2020/breakpoints/index.mjs +8 -0
  27. package/esm2020/breakpoints/lib/breakpoints.config.mjs +13 -0
  28. package/esm2020/breakpoints/lib/breakpoints.module.mjs +17 -0
  29. package/esm2020/breakpoints/lib/breakpoints.service.mjs +34 -0
  30. package/esm2020/breakpoints/lib/breakpoints.typings.mjs +2 -0
  31. package/esm2020/breakpoints/lib/directives/index.mjs +2 -0
  32. package/esm2020/breakpoints/lib/directives/match-breakpoints.directive.mjs +48 -0
  33. package/esm2020/breakpoints/lib/helpers/configure-breakpoint.mjs +8 -0
  34. package/esm2020/breakpoints/lib/helpers/index.mjs +2 -0
  35. package/esm2020/breakpoints/lib/models/breakpoint.mjs +2 -0
  36. package/esm2020/breakpoints/lib/models/index.mjs +2 -0
  37. package/esm2020/breakpoints/odx-angular-breakpoints.mjs +5 -0
  38. package/esm2020/cdk/autocomplete-control/lib/autocomplete-control.mjs +1 -1
  39. package/esm2020/cdk/autocomplete-control/lib/pipes/base-search-filter-pipe.mjs +1 -1
  40. package/esm2020/cdk/expandable/lib/directives/expandable-item.directive.mjs +5 -5
  41. package/esm2020/components/autocomplete/lib/pipes/autocomplete-search-filter.pipe.mjs +1 -1
  42. package/esm2020/components/checkbox/lib/checkbox.component.mjs +2 -2
  43. package/esm2020/components/main-menu/lib/main-menu.service.mjs +2 -11
  44. package/esm2020/components/menu/lib/menu.module.mjs +5 -4
  45. package/esm2020/components/rail-navigation/index.mjs +3 -2
  46. package/esm2020/components/rail-navigation/lib/components/index.mjs +2 -0
  47. package/esm2020/components/rail-navigation/lib/components/{rail-navigation-item.component.mjs → rail-navigation-item/rail-navigation-item.component.mjs} +3 -3
  48. package/esm2020/components/rail-navigation/lib/models/index.mjs +2 -0
  49. package/esm2020/components/rail-navigation/lib/models/rail-navigation-variant.mjs +5 -0
  50. package/esm2020/components/rail-navigation/lib/rail-navigation.component.mjs +19 -11
  51. package/esm2020/components/rail-navigation/lib/rail-navigation.module.mjs +4 -4
  52. package/esm2020/components/select/lib/pipes/select-search-filter.pipe.mjs +1 -1
  53. package/esm2020/internal/decorators/css-component.mjs +1 -1
  54. package/esm2020/internal/decorators/css-modifier.mjs +16 -21
  55. package/esm2020/internal/helpers/get-css-variables.mjs +12 -19
  56. package/fesm2015/odx-angular-breakpoints.mjs +111 -0
  57. package/fesm2015/odx-angular-breakpoints.mjs.map +1 -0
  58. package/fesm2015/odx-angular-cdk-autocomplete-control.mjs.map +1 -1
  59. package/fesm2015/odx-angular-cdk-expandable.mjs +4 -4
  60. package/fesm2015/odx-angular-cdk-expandable.mjs.map +1 -1
  61. package/fesm2015/odx-angular-components-autocomplete.mjs.map +1 -1
  62. package/fesm2015/odx-angular-components-checkbox.mjs +1 -1
  63. package/fesm2015/odx-angular-components-checkbox.mjs.map +1 -1
  64. package/fesm2015/odx-angular-components-main-menu.mjs +2 -10
  65. package/fesm2015/odx-angular-components-main-menu.mjs.map +1 -1
  66. package/fesm2015/odx-angular-components-menu.mjs +4 -3
  67. package/fesm2015/odx-angular-components-menu.mjs.map +1 -1
  68. package/fesm2015/odx-angular-components-rail-navigation.mjs +23 -11
  69. package/fesm2015/odx-angular-components-rail-navigation.mjs.map +1 -1
  70. package/fesm2015/odx-angular-components-select.mjs.map +1 -1
  71. package/fesm2015/odx-angular-internal.mjs +27 -40
  72. package/fesm2015/odx-angular-internal.mjs.map +1 -1
  73. package/fesm2020/odx-angular-breakpoints.mjs +117 -0
  74. package/fesm2020/odx-angular-breakpoints.mjs.map +1 -0
  75. package/fesm2020/odx-angular-cdk-autocomplete-control.mjs.map +1 -1
  76. package/fesm2020/odx-angular-cdk-expandable.mjs +4 -4
  77. package/fesm2020/odx-angular-cdk-expandable.mjs.map +1 -1
  78. package/fesm2020/odx-angular-components-autocomplete.mjs.map +1 -1
  79. package/fesm2020/odx-angular-components-checkbox.mjs +1 -1
  80. package/fesm2020/odx-angular-components-checkbox.mjs.map +1 -1
  81. package/fesm2020/odx-angular-components-main-menu.mjs +2 -10
  82. package/fesm2020/odx-angular-components-main-menu.mjs.map +1 -1
  83. package/fesm2020/odx-angular-components-menu.mjs +4 -3
  84. package/fesm2020/odx-angular-components-menu.mjs.map +1 -1
  85. package/fesm2020/odx-angular-components-rail-navigation.mjs +23 -11
  86. package/fesm2020/odx-angular-components-rail-navigation.mjs.map +1 -1
  87. package/fesm2020/odx-angular-components-select.mjs.map +1 -1
  88. package/fesm2020/odx-angular-internal.mjs +26 -38
  89. package/fesm2020/odx-angular-internal.mjs.map +1 -1
  90. package/internal/decorators/css-component.d.ts +1 -1
  91. package/internal/decorators/css-modifier.d.ts +2 -2
  92. package/internal/helpers/get-css-variables.d.ts +2 -3
  93. package/package.json +12 -4
  94. /package/components/rail-navigation/lib/components/{rail-navigation-item.component.d.ts → rail-navigation-item/rail-navigation-item.component.d.ts} +0 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,24 @@
1
+ ## @odx/angular 2.1.2 (2023-07-17)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * callback type ([7ba4efe](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/7ba4efe386a5167401a651bba0e66e3c82d24219))
7
+
8
+ ## @odx/angular 2.1.1 (2023-07-13)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * broken release 2.1.0 ([f04938d](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/f04938d5aca6fde5c85471ed01a3cf40cda7c832))
14
+
15
+ # @odx/angular 2.1.0 (2023-07-11)
16
+
17
+ ### Bug Fixes
18
+
19
+ - indeterminate icon ([11d6d49](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/11d6d4948972c49bd4ddfaf4195153ffac234575))
20
+
21
+ ### Features
22
+
23
+ - add breakpoints module ([7475fe7](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/7475fe73bb20c4aeb1e143ec2f82156d8cf6e9e1))
24
+ - new component ([cfa5d43](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/cfa5d4354ac24191da9e794d735511ddf021fef7))
@@ -0,0 +1,3 @@
1
+ # @odx/angular/breakpoints
2
+
3
+ Secondary entry point of `@odx/angular`. It can be used by importing from `@odx/angular/breakpoints`.
@@ -0,0 +1,7 @@
1
+ export * from './lib/breakpoints.config';
2
+ export * from './lib/breakpoints.module';
3
+ export * from './lib/breakpoints.service';
4
+ export * from './lib/breakpoints.typings';
5
+ export * from './lib/directives';
6
+ export * from './lib/helpers';
7
+ export * from './lib/models';
@@ -0,0 +1,21 @@
1
+ export declare const DEFAULT_BREAKPOINTS: {
2
+ readonly "<desktop": string;
3
+ readonly "=desktop": string;
4
+ readonly ">desktop": string;
5
+ readonly "<desktop-s": string;
6
+ readonly "=desktop-s": string;
7
+ readonly ">desktop-s": string;
8
+ readonly "<tablet": string;
9
+ readonly "=tablet": string;
10
+ readonly ">tablet": string;
11
+ readonly "<phone": string;
12
+ readonly "=phone": string;
13
+ readonly ">phone": string;
14
+ readonly "<phone-s": string;
15
+ readonly "=phone-s": string;
16
+ readonly ">phone-s": string;
17
+ };
18
+ export interface BreakpointsConfig {
19
+ breakpoints: Partial<OdxAngular.Breakpoints>;
20
+ }
21
+ export declare const BreakpointsConfig: import("@angular/core").InjectionToken<Partial<BreakpointsConfig>>, BreakpointsDefaultConfig: BreakpointsConfig, injectBreakpointsConfig: () => BreakpointsConfig, provideBreakpointsConfig: <D extends import("@odx/angular/utils").ConfigDependencies<unknown> = import("@odx/angular/utils").ConfigDependencies<BreakpointsConfig>>(config: import("@odx/angular/utils").ConfigProvider<Partial<BreakpointsConfig>, D>) => import("@angular/core").FactoryProvider | import("@angular/core").ValueProvider;
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./directives/match-breakpoints.directive";
3
+ export declare class BreakpointsModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<BreakpointsModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<BreakpointsModule, never, [typeof i1.MatchBreakpointsDirective], [typeof i1.MatchBreakpointsDirective]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<BreakpointsModule>;
7
+ }
@@ -0,0 +1,13 @@
1
+ import { Observable } from 'rxjs';
2
+ import { BreakpointName } from './models';
3
+ import * as i0 from "@angular/core";
4
+ export declare class BreakpointsService {
5
+ private readonly breakpointObserver;
6
+ private readonly config;
7
+ observe(breakpoints: BreakpointName[]): Observable<boolean>;
8
+ matches(breakpoints: BreakpointName[]): boolean;
9
+ private getMediaQueries;
10
+ private createBreakpointObserver;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<BreakpointsService, never>;
12
+ static ɵprov: i0.ɵɵInjectableDeclaration<BreakpointsService>;
13
+ }
@@ -0,0 +1,8 @@
1
+ import { DEFAULT_BREAKPOINTS } from './breakpoints.config';
2
+ declare global {
3
+ namespace OdxAngular {
4
+ interface Breakpoints extends Record<keyof typeof DEFAULT_BREAKPOINTS, string> {
5
+ }
6
+ }
7
+ }
8
+ export {};
@@ -0,0 +1 @@
1
+ export * from './match-breakpoints.directive';
@@ -0,0 +1,16 @@
1
+ import { OnInit, TemplateRef } from '@angular/core';
2
+ import { BreakpointName } from '../models';
3
+ import * as i0 from "@angular/core";
4
+ export declare class MatchBreakpointsDirective implements OnInit {
5
+ private readonly breakpoints$$;
6
+ private readonly breakpointsService;
7
+ private readonly takeUntilDestroyed;
8
+ private readonly template;
9
+ private readonly viewContainer;
10
+ set breakpoints(value: BreakpointName | BreakpointName[] | null | undefined);
11
+ elseTemplate?: TemplateRef<unknown> | null;
12
+ ngOnInit(): void;
13
+ private render;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<MatchBreakpointsDirective, never>;
15
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MatchBreakpointsDirective, "ng-template[odxMatchBreakpoints]", never, { "breakpoints": "odxMatchBreakpoints"; "elseTemplate": "odxMatchBreakpointsElse"; }, {}, never, never, true, never>;
16
+ }
@@ -0,0 +1,4 @@
1
+ type BreakpointOperators = '<' | '=' | '>';
2
+ type BreakpointConfig<T extends string> = Record<`${BreakpointOperators}${T}`, string>;
3
+ export declare function configureBreakpoint<T extends string>(name: T, min: number, max: number): BreakpointConfig<T>;
4
+ export {};
@@ -0,0 +1 @@
1
+ export * from './configure-breakpoint';
@@ -0,0 +1,5 @@
1
+ export type BreakpointName = keyof OdxAngular.Breakpoints;
2
+ export interface Breakpoint {
3
+ min: number;
4
+ max: number;
5
+ }
@@ -0,0 +1 @@
1
+ export * from './breakpoint';
@@ -20,7 +20,7 @@ export declare abstract class AutocompleteControl<T> extends CustomFormControl<T
20
20
  get hasOptions(): boolean;
21
21
  get isOpen(): boolean;
22
22
  isLoading: boolean;
23
- stringify?: StringifyFn<unknown>;
23
+ stringify?: StringifyFn<T>;
24
24
  optionSelected: EventEmitter<T>;
25
25
  constructor();
26
26
  ngAfterViewInit(): void;
@@ -1,11 +1,11 @@
1
1
  import { StringifyFn, StringSearchHandler } from '@odx/angular';
2
2
  import { BaseSearchFieldDirective } from '../abstract';
3
- export declare abstract class BaseSearchFilterPipe {
3
+ export declare abstract class BaseSearchFilterPipe<T> {
4
4
  private readonly stringSearchHandler;
5
5
  protected readonly stringify: StringifyFn<unknown>;
6
- transform<T>(items: T[] | null, searchHandler?: StringSearchHandler): T[] | null;
6
+ transform(items: T[] | null, searchHandler?: StringSearchHandler): T[] | null;
7
7
  protected abstract get searchField(): BaseSearchFieldDirective | undefined;
8
- protected abstract get searchBy(): StringifyFn<unknown>;
8
+ protected abstract get searchBy(): StringifyFn<T>;
9
9
  protected abstract queryHandler(query: string): string;
10
10
  private filter;
11
11
  }
@@ -9,7 +9,7 @@ export declare class ExpandableItemDirective implements ExpandableItem {
9
9
  readonly id: string;
10
10
  set expanded(value: boolean);
11
11
  get expanded(): boolean;
12
- toggle(): void;
12
+ toggle(forceState?: boolean): void;
13
13
  open(): void;
14
14
  close(): void;
15
15
  static ɵfac: i0.ɵɵFactoryDeclaration<ExpandableItemDirective, never>;
@@ -2,11 +2,11 @@ import { PipeTransform } from '@angular/core';
2
2
  import { StringifyFn } from '@odx/angular';
3
3
  import { BaseSearchFieldDirective, BaseSearchFilterPipe } from '@odx/angular/cdk/autocomplete-control';
4
4
  import * as i0 from "@angular/core";
5
- export declare class AutocompleteSearchFilterPipe extends BaseSearchFilterPipe implements PipeTransform {
5
+ export declare class AutocompleteSearchFilterPipe<T> extends BaseSearchFilterPipe<T> implements PipeTransform {
6
6
  protected readonly hostController: import("@odx/angular/components/autocomplete").AutocompleteComponent<unknown> | null;
7
7
  protected get searchField(): BaseSearchFieldDirective | undefined;
8
8
  protected queryHandler(query: string): string;
9
- protected get searchBy(): StringifyFn<unknown>;
10
- static ɵfac: i0.ɵɵFactoryDeclaration<AutocompleteSearchFilterPipe, never>;
11
- static ɵpipe: i0.ɵɵPipeDeclaration<AutocompleteSearchFilterPipe, "odxAutocompleteSearchFilter", true>;
9
+ protected get searchBy(): StringifyFn<T>;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<AutocompleteSearchFilterPipe<any>, never>;
11
+ static ɵpipe: i0.ɵɵPipeDeclaration<AutocompleteSearchFilterPipe<any>, "odxAutocompleteSearchFilter", true>;
12
12
  }
@@ -2,9 +2,10 @@ import * as i0 from "@angular/core";
2
2
  import * as i1 from "./menu.component";
3
3
  import * as i2 from "./menu.directive";
4
4
  import * as i3 from "./directives/menu-item.directive";
5
- import * as i4 from "@odx/angular";
5
+ import * as i4 from "@odx/angular/components/icon";
6
+ import * as i5 from "@odx/angular";
6
7
  export declare class MenuModule {
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<MenuModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<MenuModule, never, [typeof i1.MenuComponent, typeof i2.MenuDirective, typeof i3.MenuItemDirective], [typeof i4.CoreModule, typeof i1.MenuComponent, typeof i2.MenuDirective, typeof i3.MenuItemDirective]>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MenuModule, never, [typeof i1.MenuComponent, typeof i2.MenuDirective, typeof i3.MenuItemDirective, typeof i4.IconComponent], [typeof i5.CoreModule, typeof i1.MenuComponent, typeof i2.MenuDirective, typeof i3.MenuItemDirective, typeof i4.IconComponent]>;
9
10
  static ɵinj: i0.ɵɵInjectorDeclaration<MenuModule>;
10
11
  }
@@ -1,3 +1,4 @@
1
- export * from './lib/components/rail-navigation-item.component';
1
+ export * from './lib/components';
2
+ export * from './lib/models';
2
3
  export * from './lib/rail-navigation.component';
3
4
  export * from './lib/rail-navigation.module';
@@ -0,0 +1 @@
1
+ export * from './rail-navigation-item/rail-navigation-item.component';
@@ -0,0 +1 @@
1
+ export * from './rail-navigation-variant';
@@ -0,0 +1,5 @@
1
+ export type RailNavigationVariant = (typeof RailNavigationVariant)[keyof typeof RailNavigationVariant];
2
+ export declare const RailNavigationVariant: {
3
+ readonly DEFAULT: "default";
4
+ readonly BAR: "bar";
5
+ };
@@ -1,14 +1,16 @@
1
1
  import { BooleanInput } from '@angular/cdk/coercion';
2
2
  import { EventEmitter } from '@angular/core';
3
+ import { RailNavigationVariant } from './models';
3
4
  import * as i0 from "@angular/core";
4
5
  export declare class RailNavigationComponent {
5
6
  static ngAcceptInputType_isOpen: BooleanInput;
6
7
  readonly element: import("@angular/core").ElementRef<HTMLElement>;
7
8
  isOpen: boolean;
9
+ variant: RailNavigationVariant;
8
10
  isOpenChange: EventEmitter<boolean>;
9
- toggle(): void;
11
+ toggle(forceState?: boolean): void;
10
12
  open(): void;
11
13
  close(): void;
12
14
  static ɵfac: i0.ɵɵFactoryDeclaration<RailNavigationComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<RailNavigationComponent, "odx-rail-navigation", never, { "isOpen": "isOpen"; }, { "isOpenChange": "isOpenChange"; }, never, ["*"], true, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<RailNavigationComponent, "odx-rail-navigation", never, { "isOpen": "isOpen"; "variant": "variant"; }, { "isOpenChange": "isOpenChange"; }, never, ["*"], true, never>;
14
16
  }
@@ -1,9 +1,9 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./rail-navigation.component";
3
- import * as i2 from "./components/rail-navigation-item.component";
3
+ import * as i2 from "./components/rail-navigation-item/rail-navigation-item.component";
4
4
  import * as i3 from "@odx/angular";
5
5
  export declare class RailNavigationModule {
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<RailNavigationModule, never>;
7
- static ɵmod: i0.ɵɵNgModuleDeclaration<RailNavigationModule, never, [typeof i1.RailNavigationComponent, typeof i2.RailNavigationItemComponent], [typeof i1.RailNavigationComponent, typeof i2.RailNavigationItemComponent, typeof i3.CoreModule]>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<RailNavigationModule, never, [typeof i1.RailNavigationComponent, typeof i2.RailNavigationItemComponent], [typeof i3.CoreModule, typeof i1.RailNavigationComponent, typeof i2.RailNavigationItemComponent]>;
8
8
  static ɵinj: i0.ɵɵInjectorDeclaration<RailNavigationModule>;
9
9
  }
@@ -3,11 +3,11 @@ import { StringifyFn } from '@odx/angular';
3
3
  import { BaseSearchFilterPipe } from '@odx/angular/cdk/autocomplete-control';
4
4
  import { SelectSearchFieldDirective } from '../directives';
5
5
  import * as i0 from "@angular/core";
6
- export declare class SelectSearchFilterPipe extends BaseSearchFilterPipe implements PipeTransform {
6
+ export declare class SelectSearchFilterPipe<T> extends BaseSearchFilterPipe<T> implements PipeTransform {
7
7
  protected readonly hostController: import("@odx/angular/components/select").SelectComponent<unknown> | null;
8
8
  protected get searchField(): SelectSearchFieldDirective | undefined;
9
9
  protected queryHandler(query: string): string;
10
- protected get searchBy(): StringifyFn<unknown>;
11
- static ɵfac: i0.ɵɵFactoryDeclaration<SelectSearchFilterPipe, never>;
12
- static ɵpipe: i0.ɵɵPipeDeclaration<SelectSearchFilterPipe, "odxSelectSearchFilter", true>;
10
+ protected get searchBy(): StringifyFn<T>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectSearchFilterPipe<any>, never>;
12
+ static ɵpipe: i0.ɵɵPipeDeclaration<SelectSearchFilterPipe<any>, "odxSelectSearchFilter", true>;
13
13
  }
@@ -0,0 +1,8 @@
1
+ export * from './lib/breakpoints.config';
2
+ export * from './lib/breakpoints.module';
3
+ export * from './lib/breakpoints.service';
4
+ export * from './lib/breakpoints.typings';
5
+ export * from './lib/directives';
6
+ export * from './lib/helpers';
7
+ export * from './lib/models';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWtwb2ludHMvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2JyZWFrcG9pbnRzLmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9icmVha3BvaW50cy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnJlYWtwb2ludHMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9icmVha3BvaW50cy50eXBpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuIl19
@@ -0,0 +1,13 @@
1
+ import { createConfigTokens } from '@odx/angular/utils';
2
+ import { configureBreakpoint } from './helpers/configure-breakpoint';
3
+ export const DEFAULT_BREAKPOINTS = {
4
+ ...configureBreakpoint('phone-s', 360, 480),
5
+ ...configureBreakpoint('phone', 480, 768),
6
+ ...configureBreakpoint('tablet', 768, 960),
7
+ ...configureBreakpoint('desktop-s', 960, 1200),
8
+ ...configureBreakpoint('desktop', 1200, 9999),
9
+ };
10
+ export const { BreakpointsConfig, BreakpointsDefaultConfig, injectBreakpointsConfig, provideBreakpointsConfig } = createConfigTokens('Breakpoints', '@odx/angular/breakpoints', {
11
+ breakpoints: DEFAULT_BREAKPOINTS,
12
+ });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludHMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2JyZWFrcG9pbnRzL3NyYy9saWIvYnJlYWtwb2ludHMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLEdBQUcsbUJBQW1CLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7SUFDM0MsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQztJQUN6QyxHQUFHLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO0lBQzFDLEdBQUcsbUJBQW1CLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUM7SUFDOUMsR0FBRyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQztDQUNyQyxDQUFDO0FBTVgsTUFBTSxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBRSx1QkFBdUIsRUFBRSx3QkFBd0IsRUFBRSxHQUFHLGtCQUFrQixDQUNsSSxhQUFhLEVBQ2IsMEJBQTBCLEVBQzFCO0lBQ0UsV0FBVyxFQUFFLG1CQUFtQjtDQUNaLENBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVDb25maWdUb2tlbnMgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgY29uZmlndXJlQnJlYWtwb2ludCB9IGZyb20gJy4vaGVscGVycy9jb25maWd1cmUtYnJlYWtwb2ludCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0JSRUFLUE9JTlRTID0ge1xuICAuLi5jb25maWd1cmVCcmVha3BvaW50KCdwaG9uZS1zJywgMzYwLCA0ODApLFxuICAuLi5jb25maWd1cmVCcmVha3BvaW50KCdwaG9uZScsIDQ4MCwgNzY4KSxcbiAgLi4uY29uZmlndXJlQnJlYWtwb2ludCgndGFibGV0JywgNzY4LCA5NjApLFxuICAuLi5jb25maWd1cmVCcmVha3BvaW50KCdkZXNrdG9wLXMnLCA5NjAsIDEyMDApLFxuICAuLi5jb25maWd1cmVCcmVha3BvaW50KCdkZXNrdG9wJywgMTIwMCwgOTk5OSksXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgaW50ZXJmYWNlIEJyZWFrcG9pbnRzQ29uZmlnIHtcbiAgYnJlYWtwb2ludHM6IFBhcnRpYWw8T2R4QW5ndWxhci5CcmVha3BvaW50cz47XG59XG5cbmV4cG9ydCBjb25zdCB7IEJyZWFrcG9pbnRzQ29uZmlnLCBCcmVha3BvaW50c0RlZmF1bHRDb25maWcsIGluamVjdEJyZWFrcG9pbnRzQ29uZmlnLCBwcm92aWRlQnJlYWtwb2ludHNDb25maWcgfSA9IGNyZWF0ZUNvbmZpZ1Rva2VucyhcbiAgJ0JyZWFrcG9pbnRzJyxcbiAgJ0BvZHgvYW5ndWxhci9icmVha3BvaW50cycsXG4gIHtcbiAgICBicmVha3BvaW50czogREVGQVVMVF9CUkVBS1BPSU5UUyxcbiAgfSBhcyBCcmVha3BvaW50c0NvbmZpZ1xuKTtcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { MatchBreakpointsDirective } from './directives';
3
+ import * as i0 from "@angular/core";
4
+ const modules = [MatchBreakpointsDirective];
5
+ export class BreakpointsModule {
6
+ }
7
+ BreakpointsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BreakpointsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ BreakpointsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: BreakpointsModule, imports: [MatchBreakpointsDirective], exports: [MatchBreakpointsDirective] });
9
+ BreakpointsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BreakpointsModule });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BreakpointsModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ imports: modules,
14
+ exports: modules,
15
+ }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2JyZWFrcG9pbnRzL3NyYy9saWIvYnJlYWtwb2ludHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUV6RCxNQUFNLE9BQU8sR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFNNUMsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLFlBTmIseUJBQXlCLGFBQXpCLHlCQUF5QjsrR0FNN0IsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBSjdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLE9BQU87b0JBQ2hCLE9BQU8sRUFBRSxPQUFPO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRjaEJyZWFrcG9pbnRzRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzJztcblxuY29uc3QgbW9kdWxlcyA9IFtNYXRjaEJyZWFrcG9pbnRzRGlyZWN0aXZlXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogbW9kdWxlcyxcbiAgZXhwb3J0czogbW9kdWxlcyxcbn0pXG5leHBvcnQgY2xhc3MgQnJlYWtwb2ludHNNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,34 @@
1
+ import { BreakpointObserver } from '@angular/cdk/layout';
2
+ import { inject, Injectable } from '@angular/core';
3
+ import { distinctUntilChanged, map, of, shareReplay } from 'rxjs';
4
+ import { injectBreakpointsConfig } from './breakpoints.config';
5
+ import * as i0 from "@angular/core";
6
+ export class BreakpointsService {
7
+ constructor() {
8
+ this.breakpointObserver = inject(BreakpointObserver);
9
+ this.config = injectBreakpointsConfig();
10
+ }
11
+ observe(breakpoints) {
12
+ const mediaQueries = this.getMediaQueries(breakpoints);
13
+ return this.createBreakpointObserver(mediaQueries);
14
+ }
15
+ matches(breakpoints) {
16
+ const mediaQueries = this.getMediaQueries(breakpoints);
17
+ return this.breakpointObserver.isMatched(mediaQueries);
18
+ }
19
+ getMediaQueries(breakpointNames) {
20
+ return breakpointNames.map((name) => this.config.breakpoints[name]).filter(Boolean);
21
+ }
22
+ createBreakpointObserver(mediaQueries) {
23
+ if (mediaQueries.length < 1)
24
+ return of(false);
25
+ return this.breakpointObserver.observe(mediaQueries).pipe(map(({ matches }) => matches), distinctUntilChanged(), shareReplay({ refCount: true }));
26
+ }
27
+ }
28
+ BreakpointsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BreakpointsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
+ BreakpointsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BreakpointsService, providedIn: 'root' });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BreakpointsService, decorators: [{
31
+ type: Injectable,
32
+ args: [{ providedIn: 'root' }]
33
+ }] });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9icmVha3BvaW50cy9zcmMvbGliL2JyZWFrcG9pbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUkvRCxNQUFNLE9BQU8sa0JBQWtCO0lBRC9CO1FBRW1CLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2hELFdBQU0sR0FBRyx1QkFBdUIsRUFBRSxDQUFDO0tBMkJyRDtJQXpCUSxPQUFPLENBQUMsV0FBNkI7UUFDMUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV2RCxPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sT0FBTyxDQUFDLFdBQTZCO1FBQzFDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFdkQsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxlQUFlLENBQUMsZUFBaUM7UUFDdkQsT0FBTyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRU8sd0JBQXdCLENBQUMsWUFBc0I7UUFDckQsSUFBSSxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5QyxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUN2RCxHQUFHLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFDN0Isb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQ2hDLENBQUM7SUFDSixDQUFDOzsrR0E1QlUsa0JBQWtCO21IQUFsQixrQkFBa0IsY0FETCxNQUFNOzJGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIE9ic2VydmFibGUsIG9mLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaW5qZWN0QnJlYWtwb2ludHNDb25maWcgfSBmcm9tICcuL2JyZWFrcG9pbnRzLmNvbmZpZyc7XG5pbXBvcnQgeyBCcmVha3BvaW50TmFtZSB9IGZyb20gJy4vbW9kZWxzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBCcmVha3BvaW50c1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGJyZWFrcG9pbnRPYnNlcnZlciA9IGluamVjdChCcmVha3BvaW50T2JzZXJ2ZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdEJyZWFrcG9pbnRzQ29uZmlnKCk7XG5cbiAgcHVibGljIG9ic2VydmUoYnJlYWtwb2ludHM6IEJyZWFrcG9pbnROYW1lW10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBtZWRpYVF1ZXJpZXMgPSB0aGlzLmdldE1lZGlhUXVlcmllcyhicmVha3BvaW50cyk7XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVCcmVha3BvaW50T2JzZXJ2ZXIobWVkaWFRdWVyaWVzKTtcbiAgfVxuXG4gIHB1YmxpYyBtYXRjaGVzKGJyZWFrcG9pbnRzOiBCcmVha3BvaW50TmFtZVtdKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbWVkaWFRdWVyaWVzID0gdGhpcy5nZXRNZWRpYVF1ZXJpZXMoYnJlYWtwb2ludHMpO1xuXG4gICAgcmV0dXJuIHRoaXMuYnJlYWtwb2ludE9ic2VydmVyLmlzTWF0Y2hlZChtZWRpYVF1ZXJpZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNZWRpYVF1ZXJpZXMoYnJlYWtwb2ludE5hbWVzOiBCcmVha3BvaW50TmFtZVtdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBicmVha3BvaW50TmFtZXMubWFwKChuYW1lKSA9PiB0aGlzLmNvbmZpZy5icmVha3BvaW50c1tuYW1lXSBhcyBzdHJpbmcpLmZpbHRlcihCb29sZWFuKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQnJlYWtwb2ludE9ic2VydmVyKG1lZGlhUXVlcmllczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBpZiAobWVkaWFRdWVyaWVzLmxlbmd0aCA8IDEpIHJldHVybiBvZihmYWxzZSk7XG5cbiAgICByZXR1cm4gdGhpcy5icmVha3BvaW50T2JzZXJ2ZXIub2JzZXJ2ZShtZWRpYVF1ZXJpZXMpLnBpcGUoXG4gICAgICBtYXAoKHsgbWF0Y2hlcyB9KSA9PiBtYXRjaGVzKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBzaGFyZVJlcGxheSh7IHJlZkNvdW50OiB0cnVlIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludHMudHlwaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9icmVha3BvaW50cy9zcmMvbGliL2JyZWFrcG9pbnRzLnR5cGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERFRkFVTFRfQlJFQUtQT0lOVFMgfSBmcm9tICcuL2JyZWFrcG9pbnRzLmNvbmZpZyc7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1uYW1lc3BhY2VcbiAgbmFtZXNwYWNlIE9keEFuZ3VsYXIge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlXG4gICAgZXhwb3J0IGludGVyZmFjZSBCcmVha3BvaW50cyBleHRlbmRzIFJlY29yZDxrZXlvZiB0eXBlb2YgREVGQVVMVF9CUkVBS1BPSU5UUywgc3RyaW5nPiB7fVxuICB9XG59XG5cbmV4cG9ydCB7fTtcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './match-breakpoints.directive';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWtwb2ludHMvc3JjL2xpYi9kaXJlY3RpdmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21hdGNoLWJyZWFrcG9pbnRzLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,48 @@
1
+ import { coerceArray } from '@angular/cdk/coercion';
2
+ import { Directive, inject, Input, TemplateRef, ViewContainerRef } from '@angular/core';
3
+ import { untilDestroyed } from '@odx/angular/utils';
4
+ import { BehaviorSubject, switchMap, tap } from 'rxjs';
5
+ import { BreakpointsService } from '../breakpoints.service';
6
+ import * as i0 from "@angular/core";
7
+ export class MatchBreakpointsDirective {
8
+ constructor() {
9
+ this.breakpoints$$ = new BehaviorSubject([]);
10
+ this.breakpointsService = inject(BreakpointsService);
11
+ this.takeUntilDestroyed = untilDestroyed();
12
+ this.template = inject(TemplateRef);
13
+ this.viewContainer = inject(ViewContainerRef);
14
+ // eslint-disable-next-line @angular-eslint/no-input-rename
15
+ this.elseTemplate = null;
16
+ }
17
+ set breakpoints(value) {
18
+ this.breakpoints$$.next(coerceArray(value ?? []));
19
+ }
20
+ ngOnInit() {
21
+ this.breakpoints$$
22
+ .pipe(switchMap((breakpoints) => this.breakpointsService.observe(breakpoints)), tap((matchesBreakpoints) => this.render(matchesBreakpoints)), this.takeUntilDestroyed())
23
+ .subscribe();
24
+ }
25
+ render(matchesBreakpoints) {
26
+ this.viewContainer.clear();
27
+ const template = matchesBreakpoints ? this.template : this.elseTemplate;
28
+ if (template) {
29
+ this.viewContainer.createEmbeddedView(template);
30
+ }
31
+ }
32
+ }
33
+ MatchBreakpointsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MatchBreakpointsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
34
+ MatchBreakpointsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: MatchBreakpointsDirective, isStandalone: true, selector: "ng-template[odxMatchBreakpoints]", inputs: { breakpoints: ["odxMatchBreakpoints", "breakpoints"], elseTemplate: ["odxMatchBreakpointsElse", "elseTemplate"] }, ngImport: i0 });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MatchBreakpointsDirective, decorators: [{
36
+ type: Directive,
37
+ args: [{
38
+ standalone: true,
39
+ selector: 'ng-template[odxMatchBreakpoints]',
40
+ }]
41
+ }], propDecorators: { breakpoints: [{
42
+ type: Input,
43
+ args: ['odxMatchBreakpoints']
44
+ }], elseTemplate: [{
45
+ type: Input,
46
+ args: ['odxMatchBreakpointsElse']
47
+ }] } });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2gtYnJlYWtwb2ludHMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2JyZWFrcG9pbnRzL3NyYy9saWIvZGlyZWN0aXZlcy9tYXRjaC1icmVha3BvaW50cy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFPNUQsTUFBTSxPQUFPLHlCQUF5QjtJQUp0QztRQUttQixrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFtQixFQUFFLENBQUMsQ0FBQztRQUMxRCx1QkFBa0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNoRCx1QkFBa0IsR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUN0QyxhQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQy9CLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFPMUQsMkRBQTJEO1FBRXBELGlCQUFZLEdBQWlDLElBQUksQ0FBQztLQW1CMUQ7SUExQkMsSUFDVyxXQUFXLENBQUMsS0FBMkQ7UUFDaEYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFNTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGFBQWE7YUFDZixJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQ3hFLEdBQUcsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsRUFDNUQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQzFCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxrQkFBMkI7UUFDeEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixNQUFNLFFBQVEsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN4RSxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDOztzSEFoQ1UseUJBQXlCOzBHQUF6Qix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGtDQUFrQztpQkFDN0M7OEJBU1ksV0FBVztzQkFEckIsS0FBSzt1QkFBQyxxQkFBcUI7Z0JBT3JCLFlBQVk7c0JBRGxCLEtBQUs7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCcmVha3BvaW50c1NlcnZpY2UgfSBmcm9tICcuLi9icmVha3BvaW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IEJyZWFrcG9pbnROYW1lIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnbmctdGVtcGxhdGVbb2R4TWF0Y2hCcmVha3BvaW50c10nLFxufSlcbmV4cG9ydCBjbGFzcyBNYXRjaEJyZWFrcG9pbnRzRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBicmVha3BvaW50cyQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxCcmVha3BvaW50TmFtZVtdPihbXSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgYnJlYWtwb2ludHNTZXJ2aWNlID0gaW5qZWN0KEJyZWFrcG9pbnRzU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFrZVVudGlsRGVzdHJveWVkID0gdW50aWxEZXN0cm95ZWQoKTtcbiAgcHJpdmF0ZSByZWFkb25seSB0ZW1wbGF0ZSA9IGluamVjdChUZW1wbGF0ZVJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lciA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcblxuICBASW5wdXQoJ29keE1hdGNoQnJlYWtwb2ludHMnKVxuICBwdWJsaWMgc2V0IGJyZWFrcG9pbnRzKHZhbHVlOiBCcmVha3BvaW50TmFtZSB8IEJyZWFrcG9pbnROYW1lW10gfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5icmVha3BvaW50cyQkLm5leHQoY29lcmNlQXJyYXkodmFsdWUgPz8gW10pKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgnb2R4TWF0Y2hCcmVha3BvaW50c0Vsc2UnKVxuICBwdWJsaWMgZWxzZVRlbXBsYXRlPzogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5icmVha3BvaW50cyQkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChicmVha3BvaW50cykgPT4gdGhpcy5icmVha3BvaW50c1NlcnZpY2Uub2JzZXJ2ZShicmVha3BvaW50cykpLFxuICAgICAgICB0YXAoKG1hdGNoZXNCcmVha3BvaW50cykgPT4gdGhpcy5yZW5kZXIobWF0Y2hlc0JyZWFrcG9pbnRzKSksXG4gICAgICAgIHRoaXMudGFrZVVudGlsRGVzdHJveWVkKClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVuZGVyKG1hdGNoZXNCcmVha3BvaW50czogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMudmlld0NvbnRhaW5lci5jbGVhcigpO1xuICAgIGNvbnN0IHRlbXBsYXRlID0gbWF0Y2hlc0JyZWFrcG9pbnRzID8gdGhpcy50ZW1wbGF0ZSA6IHRoaXMuZWxzZVRlbXBsYXRlO1xuICAgIGlmICh0ZW1wbGF0ZSkge1xuICAgICAgdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyh0ZW1wbGF0ZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ export function configureBreakpoint(name, min, max) {
2
+ return {
3
+ [`<${name}`]: `(max-width: ${min - 1}px)`,
4
+ [`=${name}`]: `(min-width: ${min}px) and (max-width: ${max - 1}px)`,
5
+ [`>${name}`]: `(min-width: ${min}px)`,
6
+ };
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlLWJyZWFrcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWtwb2ludHMvc3JjL2xpYi9oZWxwZXJzL2NvbmZpZ3VyZS1icmVha3BvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxtQkFBbUIsQ0FBbUIsSUFBTyxFQUFFLEdBQVcsRUFBRSxHQUFXO0lBQ3JGLE9BQU87UUFDTCxDQUFDLElBQUksSUFBSSxFQUFXLENBQUMsRUFBRSxlQUFlLEdBQUcsR0FBRyxDQUFDLEtBQUs7UUFDbEQsQ0FBQyxJQUFJLElBQUksRUFBVyxDQUFDLEVBQUUsZUFBZSxHQUFHLHVCQUF1QixHQUFHLEdBQUcsQ0FBQyxLQUFLO1FBQzVFLENBQUMsSUFBSSxJQUFJLEVBQVcsQ0FBQyxFQUFFLGVBQWUsR0FBRyxLQUFLO0tBQ3hCLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbInR5cGUgQnJlYWtwb2ludE9wZXJhdG9ycyA9ICc8JyB8ICc9JyB8ICc+JztcbnR5cGUgQnJlYWtwb2ludENvbmZpZzxUIGV4dGVuZHMgc3RyaW5nPiA9IFJlY29yZDxgJHtCcmVha3BvaW50T3BlcmF0b3JzfSR7VH1gLCBzdHJpbmc+O1xuXG5leHBvcnQgZnVuY3Rpb24gY29uZmlndXJlQnJlYWtwb2ludDxUIGV4dGVuZHMgc3RyaW5nPihuYW1lOiBULCBtaW46IG51bWJlciwgbWF4OiBudW1iZXIpOiBCcmVha3BvaW50Q29uZmlnPFQ+IHtcbiAgcmV0dXJuIHtcbiAgICBbYDwke25hbWV9YCBhcyBjb25zdF06IGAobWF4LXdpZHRoOiAke21pbiAtIDF9cHgpYCxcbiAgICBbYD0ke25hbWV9YCBhcyBjb25zdF06IGAobWluLXdpZHRoOiAke21pbn1weCkgYW5kIChtYXgtd2lkdGg6ICR7bWF4IC0gMX1weClgLFxuICAgIFtgPiR7bmFtZX1gIGFzIGNvbnN0XTogYChtaW4td2lkdGg6ICR7bWlufXB4KWAsXG4gIH0gYXMgQnJlYWtwb2ludENvbmZpZzxUPjtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './configure-breakpoint';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWtwb2ludHMvc3JjL2xpYi9oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbmZpZ3VyZS1icmVha3BvaW50JztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9icmVha3BvaW50cy9zcmMvbGliL21vZGVscy9icmVha3BvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBCcmVha3BvaW50TmFtZSA9IGtleW9mIE9keEFuZ3VsYXIuQnJlYWtwb2ludHM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnJlYWtwb2ludCB7XG4gIG1pbjogbnVtYmVyO1xuICBtYXg6IG51bWJlcjtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './breakpoint';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWtwb2ludHMvc3JjL2xpYi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2JyZWFrcG9pbnQnO1xuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2R4LWFuZ3VsYXItYnJlYWtwb2ludHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvYnJlYWtwb2ludHMvc3JjL29keC1hbmd1bGFyLWJyZWFrcG9pbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
87
87
  type: HostListener,
88
88
  args: ['focusout', ['$event']]
89
89
  }] } });
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWNvbnRyb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2F1dG9jb21wbGV0ZS1jb250cm9sL3NyYy9saWIvYXV0b2NvbXBsZXRlLWNvbnRyb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9ELE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQWlCLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySixPQUFPLEVBQUUsdUJBQXVCLEVBQWUsTUFBTSxjQUFjLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQVUxRixNQUFNLE9BQWdCLG1CQUF1QixTQUFRLGlCQUEyQjtJQW9COUUsSUFBVyxVQUFVO1FBQ25CLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBWUQ7UUFDRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFsQ0osd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBT25CLHVCQUFrQixHQUFHLGNBQWMsRUFBRSxDQUFDO1FBRXRDLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFJOUMsWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBWW5DLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFNbEIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBSyxDQUFDO1FBSTVDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU0sb0JBQW9CLENBQUMsRUFBRSxPQUFPLEVBQW9CO1FBQ3ZELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDakUsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNwRCxPQUFPLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztTQUNyRTtJQUNILENBQUM7SUFRUyxjQUFjLENBQUMsT0FBb0M7UUFDM0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzdFLENBQUM7SUFFUyxtQkFBbUI7UUFDM0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7SUFDbEMsQ0FBQztJQUVTLFlBQVk7UUFDcEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRVMsYUFBYTtRQUNyQixJQUFJLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFHUyxjQUFjLENBQUMsS0FBaUI7UUFDeEMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsS0FBSyxDQUFDLHdCQUF3QixFQUFFLENBQUM7U0FDbEM7UUFDRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7Z0hBMUZtQixtQkFBbUI7b0dBQW5CLG1CQUFtQix5VkFPNUIsaUJBQWlCO0FBcUI1QjtJQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQzs7c0RBRVI7MkZBOUJMLG1CQUFtQjtrQkFQeEMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLGlCQUFpQixFQUFFLFFBQVE7d0JBQzNCLHNCQUFzQixFQUFFLG9CQUFvQjtxQkFDN0M7aUJBQ0Y7MEVBU29CLFFBQVE7c0JBRDFCLFNBQVM7dUJBQUMsaUJBQWlCO2dCQXVCckIsU0FBUztzQkFEZixLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxjQUFjO3NCQURwQixNQUFNO2dCQWtERyxjQUFjO3NCQUR2QixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2ZURlc2NlbmRhbnRLZXlNYW5hZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRldGVjdENvbnRyb2xsZXJDaGFuZ2VzLCBTdHJpbmdpZnlGbiB9IGZyb20gJ0BvZHgvYW5ndWxhcic7XG5pbXBvcnQgeyBDdXN0b21Gb3JtQ29udHJvbCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvY3VzdG9tLWZvcm0tY29udHJvbCc7XG5pbXBvcnQgeyBPcHRpb25Db250cm9sIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9vcHRpb24tY29udHJvbCc7XG5pbXBvcnQgeyBEcm9wZG93bkRpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQsIGlzRnVuY3Rpb24sIFRyYW5zZm9ybSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi9hYnN0cmFjdCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5pcy1vcGVuXSc6ICdpc09wZW4nLFxuICAgICdbYXR0ci5hcmlhLWRpc2FibGVkXSc6ICdpc0Rpc2FibGVkIHx8IG51bGwnLFxuICB9LFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBdXRvY29tcGxldGVDb250cm9sPFQ+IGV4dGVuZHMgQ3VzdG9tRm9ybUNvbnRyb2w8VCB8IG51bGw+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHB1YmxpYyBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaXNMb2FkaW5nOiBCb29sZWFuSW5wdXQ7XG5cbiAgcHJvdGVjdGVkIGtleU1hbmFnZXI/OiBBY3RpdmVEZXNjZW5kYW50S2V5TWFuYWdlcjxPcHRpb25Db250cm9sPFQ+PjtcblxuICBwcm90ZWN0ZWQgc21vb3RoU2Nyb2xsRW5hYmxlZCA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoRHJvcGRvd25EaXJlY3RpdmUpXG4gIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93bj86IERyb3Bkb3duRGlyZWN0aXZlO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZWFkb25seSBvcHRpb25zPzogUXVlcnlMaXN0PE9wdGlvbkNvbnRyb2w8VD4+O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSB0YWtlVW50aWxEZXN0cm95ZWQgPSB1bnRpbERlc3Ryb3llZCgpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBjaGFuZ2VEZXRlY3RvciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgcHVibGljIGFic3RyYWN0IHNlYXJjaEZpZWxkPzogQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIHB1YmxpYyBnZXQgaGFzT3B0aW9ucygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLm9wdGlvbnM/Lmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuZHJvcGRvd24/LmlzT3BlbjtcbiAgfVxuXG4gIEBUcmFuc2Zvcm0oY29lcmNlQm9vbGVhblByb3BlcnR5KVxuICBASW5wdXQoKVxuICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHN0cmluZ2lmeT86IFN0cmluZ2lmeUZuPHVua25vd24+O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3B0aW9uU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIobnVsbCk7XG4gICAgZGV0ZWN0Q29udHJvbGxlckNoYW5nZXModGhpcykuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5vcHRpb25zKSByZXR1cm47XG5cbiAgICB0aGlzLmluaXRLZXlNYW5hZ2VyKHRoaXMub3B0aW9ucyk7XG4gICAgdGhpcy5oYW5kbGVRdWVyeUxpc3RPcHRpb24odGhpcy5vcHRpb25zKTtcbiAgICB0aGlzLmhhbmRsZVNlYXJjaEZpZWxkQ2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIHNjcm9sbE9wdGlvbkludG9WaWV3KHsgZWxlbWVudCB9OiBPcHRpb25Db250cm9sPFQ+KTogdm9pZCB7XG4gICAgY29uc3QgYmVoYXZpb3IgPSB0aGlzLnNtb290aFNjcm9sbEVuYWJsZWQgPyAnc21vb3RoJyA6IHVuZGVmaW5lZDtcbiAgICBpZiAoaXNGdW5jdGlvbihlbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcpKSB7XG4gICAgICBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ2NlbnRlcicsIGJlaGF2aW9yIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBoYW5kbGVRdWVyeUxpc3RPcHRpb24ob3B0aW9uczogUXVlcnlMaXN0PE9wdGlvbkNvbnRyb2w8VD4+KTogdm9pZDtcblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgaGFuZGxlU2VhcmNoRmllbGRDaGFuZ2VzKCk6IHZvaWQ7XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGFjdGl2YXRlU2VsZWN0ZWRPcHRpb24oKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgaW5pdEtleU1hbmFnZXIob3B0aW9uczogUXVlcnlMaXN0PE9wdGlvbkNvbnRyb2w8VD4+KTogdm9pZCB7XG4gICAgdGhpcy5rZXlNYW5hZ2VyID0gbmV3IEFjdGl2ZURlc2NlbmRhbnRLZXlNYW5hZ2VyKG9wdGlvbnMpLndpdGhIb21lQW5kRW5kKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGlzYWJsZVNtb290aFNjcm9sbCgpOiB2b2lkIHtcbiAgICB0aGlzLnNtb290aFNjcm9sbEVuYWJsZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBlbmFibGVTbW9vdGhTY3JvbGwoKTogdm9pZCB7XG4gICAgdGhpcy5zbW9vdGhTY3JvbGxFbmFibGVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvcGVuRHJvcGRvd24oKTogdm9pZCB7XG4gICAgdGhpcy5kcm9wZG93bj8ub3BlbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNsb3NlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgdGhpcy5kcm9wZG93bj8uY2xvc2UoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgWyckZXZlbnQnXSlcbiAgcHJvdGVjdGVkIGhhbmRsZUZvY3VzT3V0KGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxufVxuIl19
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWNvbnRyb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2F1dG9jb21wbGV0ZS1jb250cm9sL3NyYy9saWIvYXV0b2NvbXBsZXRlLWNvbnRyb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9ELE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQWlCLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySixPQUFPLEVBQUUsdUJBQXVCLEVBQWUsTUFBTSxjQUFjLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQVUxRixNQUFNLE9BQWdCLG1CQUF1QixTQUFRLGlCQUEyQjtJQW9COUUsSUFBVyxVQUFVO1FBQ25CLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBWUQ7UUFDRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFsQ0osd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBT25CLHVCQUFrQixHQUFHLGNBQWMsRUFBRSxDQUFDO1FBRXRDLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFJOUMsWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBWW5DLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFNbEIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBSyxDQUFDO1FBSTVDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU0sb0JBQW9CLENBQUMsRUFBRSxPQUFPLEVBQW9CO1FBQ3ZELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDakUsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNwRCxPQUFPLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztTQUNyRTtJQUNILENBQUM7SUFRUyxjQUFjLENBQUMsT0FBb0M7UUFDM0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzdFLENBQUM7SUFFUyxtQkFBbUI7UUFDM0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7SUFDbEMsQ0FBQztJQUVTLFlBQVk7UUFDcEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRVMsYUFBYTtRQUNyQixJQUFJLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFHUyxjQUFjLENBQUMsS0FBaUI7UUFDeEMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsS0FBSyxDQUFDLHdCQUF3QixFQUFFLENBQUM7U0FDbEM7UUFDRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs7Z0hBMUZtQixtQkFBbUI7b0dBQW5CLG1CQUFtQix5VkFPNUIsaUJBQWlCO0FBcUI1QjtJQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQzs7c0RBRVI7MkZBOUJMLG1CQUFtQjtrQkFQeEMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLGlCQUFpQixFQUFFLFFBQVE7d0JBQzNCLHNCQUFzQixFQUFFLG9CQUFvQjtxQkFDN0M7aUJBQ0Y7MEVBU29CLFFBQVE7c0JBRDFCLFNBQVM7dUJBQUMsaUJBQWlCO2dCQXVCckIsU0FBUztzQkFEZixLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxjQUFjO3NCQURwQixNQUFNO2dCQWtERyxjQUFjO3NCQUR2QixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2ZURlc2NlbmRhbnRLZXlNYW5hZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRldGVjdENvbnRyb2xsZXJDaGFuZ2VzLCBTdHJpbmdpZnlGbiB9IGZyb20gJ0BvZHgvYW5ndWxhcic7XG5pbXBvcnQgeyBDdXN0b21Gb3JtQ29udHJvbCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvY3VzdG9tLWZvcm0tY29udHJvbCc7XG5pbXBvcnQgeyBPcHRpb25Db250cm9sIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9vcHRpb24tY29udHJvbCc7XG5pbXBvcnQgeyBEcm9wZG93bkRpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQsIGlzRnVuY3Rpb24sIFRyYW5zZm9ybSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi9hYnN0cmFjdCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5pcy1vcGVuXSc6ICdpc09wZW4nLFxuICAgICdbYXR0ci5hcmlhLWRpc2FibGVkXSc6ICdpc0Rpc2FibGVkIHx8IG51bGwnLFxuICB9LFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBdXRvY29tcGxldGVDb250cm9sPFQ+IGV4dGVuZHMgQ3VzdG9tRm9ybUNvbnRyb2w8VCB8IG51bGw+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHB1YmxpYyBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaXNMb2FkaW5nOiBCb29sZWFuSW5wdXQ7XG5cbiAgcHJvdGVjdGVkIGtleU1hbmFnZXI/OiBBY3RpdmVEZXNjZW5kYW50S2V5TWFuYWdlcjxPcHRpb25Db250cm9sPFQ+PjtcblxuICBwcm90ZWN0ZWQgc21vb3RoU2Nyb2xsRW5hYmxlZCA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoRHJvcGRvd25EaXJlY3RpdmUpXG4gIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93bj86IERyb3Bkb3duRGlyZWN0aXZlO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZWFkb25seSBvcHRpb25zPzogUXVlcnlMaXN0PE9wdGlvbkNvbnRyb2w8VD4+O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSB0YWtlVW50aWxEZXN0cm95ZWQgPSB1bnRpbERlc3Ryb3llZCgpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBjaGFuZ2VEZXRlY3RvciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgcHVibGljIGFic3RyYWN0IHNlYXJjaEZpZWxkPzogQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIHB1YmxpYyBnZXQgaGFzT3B0aW9ucygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLm9wdGlvbnM/Lmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuZHJvcGRvd24/LmlzT3BlbjtcbiAgfVxuXG4gIEBUcmFuc2Zvcm0oY29lcmNlQm9vbGVhblByb3BlcnR5KVxuICBASW5wdXQoKVxuICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHN0cmluZ2lmeT86IFN0cmluZ2lmeUZuPFQ+O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3B0aW9uU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIobnVsbCk7XG4gICAgZGV0ZWN0Q29udHJvbGxlckNoYW5nZXModGhpcykuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5vcHRpb25zKSByZXR1cm47XG5cbiAgICB0aGlzLmluaXRLZXlNYW5hZ2VyKHRoaXMub3B0aW9ucyk7XG4gICAgdGhpcy5oYW5kbGVRdWVyeUxpc3RPcHRpb24odGhpcy5vcHRpb25zKTtcbiAgICB0aGlzLmhhbmRsZVNlYXJjaEZpZWxkQ2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIHNjcm9sbE9wdGlvbkludG9WaWV3KHsgZWxlbWVudCB9OiBPcHRpb25Db250cm9sPFQ+KTogdm9pZCB7XG4gICAgY29uc3QgYmVoYXZpb3IgPSB0aGlzLnNtb290aFNjcm9sbEVuYWJsZWQgPyAnc21vb3RoJyA6IHVuZGVmaW5lZDtcbiAgICBpZiAoaXNGdW5jdGlvbihlbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcpKSB7XG4gICAgICBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoeyBibG9jazogJ2NlbnRlcicsIGJlaGF2aW9yIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBoYW5kbGVRdWVyeUxpc3RPcHRpb24ob3B0aW9uczogUXVlcnlMaXN0PE9wdGlvbkNvbnRyb2w8VD4+KTogdm9pZDtcblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgaGFuZGxlU2VhcmNoRmllbGRDaGFuZ2VzKCk6IHZvaWQ7XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGFjdGl2YXRlU2VsZWN0ZWRPcHRpb24oKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgaW5pdEtleU1hbmFnZXIob3B0aW9uczogUXVlcnlMaXN0PE9wdGlvbkNvbnRyb2w8VD4+KTogdm9pZCB7XG4gICAgdGhpcy5rZXlNYW5hZ2VyID0gbmV3IEFjdGl2ZURlc2NlbmRhbnRLZXlNYW5hZ2VyKG9wdGlvbnMpLndpdGhIb21lQW5kRW5kKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGlzYWJsZVNtb290aFNjcm9sbCgpOiB2b2lkIHtcbiAgICB0aGlzLnNtb290aFNjcm9sbEVuYWJsZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBlbmFibGVTbW9vdGhTY3JvbGwoKTogdm9pZCB7XG4gICAgdGhpcy5zbW9vdGhTY3JvbGxFbmFibGVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvcGVuRHJvcGRvd24oKTogdm9pZCB7XG4gICAgdGhpcy5kcm9wZG93bj8ub3BlbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNsb3NlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgdGhpcy5kcm9wZG93bj8uY2xvc2UoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgWyckZXZlbnQnXSlcbiAgcHJvdGVjdGVkIGhhbmRsZUZvY3VzT3V0KGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxufVxuIl19
@@ -29,4 +29,4 @@ __decorate([
29
29
  __metadata("design:paramtypes", [Object, String, Function]),
30
30
  __metadata("design:returntype", Object)
31
31
  ], BaseSearchFilterPipe.prototype, "filter", null);
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zZWFyY2gtZmlsdGVyLXBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2F1dG9jb21wbGV0ZS1jb250cm9sL3NyYy9saWIvcGlwZXMvYmFzZS1zZWFyY2gtZmlsdGVyLXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSx5QkFBeUIsRUFBb0MsTUFBTSxjQUFjLENBQUM7QUFDMUcsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRzFDLE1BQU0sT0FBZ0Isb0JBQW9CO0lBQTFDO1FBQ21CLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3RELGNBQVMsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUF5QnZELENBQUM7SUF2QlEsU0FBUyxDQUFJLEtBQWlCLEVBQUUsYUFBbUM7UUFDeEUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxhQUFhLENBQUMsQ0FBQztTQUMvRTtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQU9PLE1BQU0sQ0FBSSxLQUFpQixFQUFFLEtBQWEsRUFBRSxhQUFtQztRQUNyRixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXhCLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWpDLElBQUksS0FBSyxLQUFLLEVBQUU7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUUvQixNQUFNLE1BQU0sR0FBRyxhQUFhLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBRXpELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQU8sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0NBQ0Y7QUFaQztJQUFDLElBQUk7Ozs7a0RBV0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9EWF9TVFJJTkdJRlksIE9EWF9TVFJJTkdfU0VBUkNIX0hBTkRMRVIsIFN0cmluZ2lmeUZuLCBTdHJpbmdTZWFyY2hIYW5kbGVyIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IFB1cmUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi4vYWJzdHJhY3QnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVNlYXJjaEZpbHRlclBpcGUge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0cmluZ1NlYXJjaEhhbmRsZXIgPSBpbmplY3QoT0RYX1NUUklOR19TRUFSQ0hfSEFORExFUik7XG4gIHByb3RlY3RlZCByZWFkb25seSBzdHJpbmdpZnkgPSBpbmplY3QoT0RYX1NUUklOR0lGWSk7XG5cbiAgcHVibGljIHRyYW5zZm9ybTxUPihpdGVtczogVFtdIHwgbnVsbCwgc2VhcmNoSGFuZGxlcj86IFN0cmluZ1NlYXJjaEhhbmRsZXIpOiBUW10gfCBudWxsIHtcbiAgICBpZiAodGhpcy5zZWFyY2hGaWVsZCkge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyKGl0ZW1zLCB0aGlzLnNlYXJjaEZpZWxkLm5hdGl2ZUVsZW1lbnRWYWx1ZSwgc2VhcmNoSGFuZGxlcik7XG4gICAgfVxuICAgIHJldHVybiBpdGVtcztcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXQgc2VhcmNoRmllbGQoKTogQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIHwgdW5kZWZpbmVkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0IHNlYXJjaEJ5KCk6IFN0cmluZ2lmeUZuPHVua25vd24+O1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcXVlcnlIYW5kbGVyKHF1ZXJ5OiBzdHJpbmcpOiBzdHJpbmc7XG5cbiAgQFB1cmVcbiAgcHJpdmF0ZSBmaWx0ZXI8VD4oaXRlbXM6IFRbXSB8IG51bGwsIHF1ZXJ5OiBzdHJpbmcsIHNlYXJjaEhhbmRsZXI/OiBTdHJpbmdTZWFyY2hIYW5kbGVyKTogVFtdIHwgbnVsbCB7XG4gICAgaWYgKCFpdGVtcykgcmV0dXJuIG51bGw7XG5cbiAgICBxdWVyeSA9IHRoaXMucXVlcnlIYW5kbGVyKHF1ZXJ5KTtcblxuICAgIGlmIChxdWVyeSA9PT0gJycpIHJldHVybiBpdGVtcztcblxuICAgIGNvbnN0IHNlYXJjaCA9IHNlYXJjaEhhbmRsZXIgPz8gdGhpcy5zdHJpbmdTZWFyY2hIYW5kbGVyO1xuXG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbTogVCkgPT4gc2VhcmNoKHRoaXMuc2VhcmNoQnkoaXRlbSksIHF1ZXJ5KSk7XG4gIH1cbn1cbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zZWFyY2gtZmlsdGVyLXBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2F1dG9jb21wbGV0ZS1jb250cm9sL3NyYy9saWIvcGlwZXMvYmFzZS1zZWFyY2gtZmlsdGVyLXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSx5QkFBeUIsRUFBb0MsTUFBTSxjQUFjLENBQUM7QUFDMUcsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRzFDLE1BQU0sT0FBZ0Isb0JBQW9CO0lBQTFDO1FBQ21CLHdCQUFtQixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3RELGNBQVMsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUF5QnZELENBQUM7SUF2QlEsU0FBUyxDQUFDLEtBQWlCLEVBQUUsYUFBbUM7UUFDckUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxhQUFhLENBQUMsQ0FBQztTQUMvRTtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQU9PLE1BQU0sQ0FBQyxLQUFpQixFQUFFLEtBQWEsRUFBRSxhQUFtQztRQUNsRixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXhCLEtBQUssR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWpDLElBQUksS0FBSyxLQUFLLEVBQUU7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUUvQixNQUFNLE1BQU0sR0FBRyxhQUFhLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBRXpELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0NBQ0Y7QUFaQztJQUFDLElBQUk7Ozs7a0RBV0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9EWF9TVFJJTkdJRlksIE9EWF9TVFJJTkdfU0VBUkNIX0hBTkRMRVIsIFN0cmluZ2lmeUZuLCBTdHJpbmdTZWFyY2hIYW5kbGVyIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IFB1cmUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi4vYWJzdHJhY3QnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVNlYXJjaEZpbHRlclBpcGU8VD4ge1xuICBwcml2YXRlIHJlYWRvbmx5IHN0cmluZ1NlYXJjaEhhbmRsZXIgPSBpbmplY3QoT0RYX1NUUklOR19TRUFSQ0hfSEFORExFUik7XG4gIHByb3RlY3RlZCByZWFkb25seSBzdHJpbmdpZnkgPSBpbmplY3QoT0RYX1NUUklOR0lGWSk7XG5cbiAgcHVibGljIHRyYW5zZm9ybShpdGVtczogVFtdIHwgbnVsbCwgc2VhcmNoSGFuZGxlcj86IFN0cmluZ1NlYXJjaEhhbmRsZXIpOiBUW10gfCBudWxsIHtcbiAgICBpZiAodGhpcy5zZWFyY2hGaWVsZCkge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyKGl0ZW1zLCB0aGlzLnNlYXJjaEZpZWxkLm5hdGl2ZUVsZW1lbnRWYWx1ZSwgc2VhcmNoSGFuZGxlcik7XG4gICAgfVxuICAgIHJldHVybiBpdGVtcztcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXQgc2VhcmNoRmllbGQoKTogQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIHwgdW5kZWZpbmVkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0IHNlYXJjaEJ5KCk6IFN0cmluZ2lmeUZuPFQ+O1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcXVlcnlIYW5kbGVyKHF1ZXJ5OiBzdHJpbmcpOiBzdHJpbmc7XG5cbiAgQFB1cmVcbiAgcHJpdmF0ZSBmaWx0ZXIoaXRlbXM6IFRbXSB8IG51bGwsIHF1ZXJ5OiBzdHJpbmcsIHNlYXJjaEhhbmRsZXI/OiBTdHJpbmdTZWFyY2hIYW5kbGVyKTogVFtdIHwgbnVsbCB7XG4gICAgaWYgKCFpdGVtcykgcmV0dXJuIG51bGw7XG5cbiAgICBxdWVyeSA9IHRoaXMucXVlcnlIYW5kbGVyKHF1ZXJ5KTtcblxuICAgIGlmIChxdWVyeSA9PT0gJycpIHJldHVybiBpdGVtcztcblxuICAgIGNvbnN0IHNlYXJjaCA9IHNlYXJjaEhhbmRsZXIgPz8gdGhpcy5zdHJpbmdTZWFyY2hIYW5kbGVyO1xuXG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gc2VhcmNoKHRoaXMuc2VhcmNoQnkoaXRlbSksIHF1ZXJ5KSk7XG4gIH1cbn1cbiJdfQ==
@@ -23,14 +23,14 @@ export class ExpandableItemDirective {
23
23
  get expanded() {
24
24
  return this._expanded;
25
25
  }
26
- toggle() {
27
- this.expanded = !this.expanded;
26
+ toggle(forceState) {
27
+ this.expanded = forceState ?? !this.expanded;
28
28
  }
29
29
  open() {
30
- this.expanded = true;
30
+ this.toggle(true);
31
31
  }
32
32
  close() {
33
- this.expanded = false;
33
+ this.toggle(false);
34
34
  }
35
35
  }
36
36
  ExpandableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExpandableItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
@@ -44,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
44
44
  }], propDecorators: { expanded: [{
45
45
  type: Input
46
46
  }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jZGsvZXhwYW5kYWJsZS9zcmMvbGliL2RpcmVjdGl2ZXMvZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFPNUQsTUFBTSxPQUFPLHVCQUF1QjtJQUpwQztRQU9tQixjQUFTLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RSxzQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN2RCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRVYsT0FBRSxHQUFHLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBMkJ6RDtJQXpCQyxJQUNXLFFBQVEsQ0FBQyxLQUFjO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzVCO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBQ0QsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxJQUFJO1FBQ1QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDdkIsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDOztvSEFqQ1UsdUJBQXVCO3dHQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OEJBV1ksUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIElucHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldFVuaXF1ZUlkIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IEVYUEFOREFCTEVfQ09OVEFJTkVSIH0gZnJvbSAnLi4vZXhwYW5kYWJsZS50b2tlbnMnO1xuaW1wb3J0IHsgRXhwYW5kYWJsZUl0ZW0gfSBmcm9tICcuLi9mYWNhZGUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbb2R4RXhwYW5kYWJsZUl0ZW1dJyxcbn0pXG5leHBvcnQgY2xhc3MgRXhwYW5kYWJsZUl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBFeHBhbmRhYmxlSXRlbSB7XG4gIHB1YmxpYyBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZXhwYW5kZWQ6IEJvb2xlYW5JbnB1dDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRhaW5lciA9IGluamVjdChFWFBBTkRBQkxFX0NPTlRBSU5FUiwgeyBvcHRpb25hbDogdHJ1ZSwgc2tpcFNlbGY6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIF9leHBhbmRlZCA9IGZhbHNlO1xuXG4gIHB1YmxpYyByZWFkb25seSBpZCA9IGdldFVuaXF1ZUlkKCdvZHgtZXhwYW5kYWJsZS1pdGVtJyk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBleHBhbmRlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2V4cGFuZGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodGhpcy5fZXhwYW5kZWQpIHtcbiAgICAgIHRoaXMuY29udGFpbmVyPy5vcGVuKHRoaXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbnRhaW5lcj8uY2xvc2UodGhpcyk7XG4gICAgfVxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHVibGljIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZXhwYW5kZWQ7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQgPSBmYWxzZTtcbiAgfVxufVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jZGsvZXhwYW5kYWJsZS9zcmMvbGliL2RpcmVjdGl2ZXMvZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFPNUQsTUFBTSxPQUFPLHVCQUF1QjtJQUpwQztRQU9tQixjQUFTLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RSxzQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN2RCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRVYsT0FBRSxHQUFHLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0tBMkJ6RDtJQXpCQyxJQUNXLFFBQVEsQ0FBQyxLQUFjO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzVCO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBQ0QsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQW9CO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUMvQyxDQUFDO0lBRU0sSUFBSTtRQUNULElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLENBQUM7O29IQWpDVSx1QkFBdUI7d0dBQXZCLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUscUJBQXFCO2lCQUNoQzs4QkFXWSxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgSW5wdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0VW5pcXVlSWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgRVhQQU5EQUJMRV9DT05UQUlORVIgfSBmcm9tICcuLi9leHBhbmRhYmxlLnRva2Vucyc7XG5pbXBvcnQgeyBFeHBhbmRhYmxlSXRlbSB9IGZyb20gJy4uL2ZhY2FkZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tvZHhFeHBhbmRhYmxlSXRlbV0nLFxufSlcbmV4cG9ydCBjbGFzcyBFeHBhbmRhYmxlSXRlbURpcmVjdGl2ZSBpbXBsZW1lbnRzIEV4cGFuZGFibGVJdGVtIHtcbiAgcHVibGljIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9leHBhbmRlZDogQm9vbGVhbklucHV0O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgY29udGFpbmVyID0gaW5qZWN0KEVYUEFOREFCTEVfQ09OVEFJTkVSLCB7IG9wdGlvbmFsOiB0cnVlLCBza2lwU2VsZjogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gIHByaXZhdGUgX2V4cGFuZGVkID0gZmFsc2U7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlkID0gZ2V0VW5pcXVlSWQoJ29keC1leHBhbmRhYmxlLWl0ZW0nKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGV4cGFuZGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZXhwYW5kZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIGlmICh0aGlzLl9leHBhbmRlZCkge1xuICAgICAgdGhpcy5jb250YWluZXI/Lm9wZW4odGhpcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29udGFpbmVyPy5jbG9zZSh0aGlzKTtcbiAgICB9XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwdWJsaWMgZ2V0IGV4cGFuZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9leHBhbmRlZDtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGUoZm9yY2VTdGF0ZT86IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmV4cGFuZGVkID0gZm9yY2VTdGF0ZSA/PyAhdGhpcy5leHBhbmRlZDtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlKHRydWUpO1xuICB9XG5cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlKGZhbHNlKTtcbiAgfVxufVxuIl19
@@ -27,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
27
27
  standalone: true,
28
28
  }]
29
29
  }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2F1dG9jb21wbGV0ZS9zcmMvbGliL3BpcGVzL2F1dG9jb21wbGV0ZS1zZWFyY2gtZmlsdGVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRTVELE9BQU8sRUFBNEIsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFPOUQsTUFBTSxPQUFPLDRCQUE2QixTQUFRLG9CQUFvQjtJQUx0RTs7UUFNcUIsbUJBQWMsR0FBRyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQWF0RjtJQVhDLElBQWMsV0FBVztRQUN2QixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsV0FBVyxDQUFDO0lBQzFDLENBQUM7SUFFUyxZQUFZLENBQUMsS0FBYTtRQUNsQyxPQUFPLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQWMsUUFBUTtRQUNwQixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUQsQ0FBQzs7eUhBYlUsNEJBQTRCO3VIQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFMeEMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsS0FBSztvQkFDWCxJQUFJLEVBQUUsNkJBQTZCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0cmluZ2lmeUZuIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IEJhc2VTZWFyY2hGaWVsZERpcmVjdGl2ZSwgQmFzZVNlYXJjaEZpbHRlclBpcGUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2F1dG9jb21wbGV0ZS1jb250cm9sJztcbmltcG9ydCB7IEFVVE9DT01QTEVURV9DT05UUk9MIH0gZnJvbSAnLi4vYXV0b2NvbXBsZXRlLnRva2Vucyc7XG5cbkBQaXBlKHtcbiAgcHVyZTogZmFsc2UsXG4gIG5hbWU6ICdvZHhBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXJQaXBlIGV4dGVuZHMgQmFzZVNlYXJjaEZpbHRlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhvc3RDb250cm9sbGVyID0gaW5qZWN0KEFVVE9DT01QTEVURV9DT05UUk9MLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHByb3RlY3RlZCBnZXQgc2VhcmNoRmllbGQoKTogQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5ob3N0Q29udHJvbGxlcj8uc2VhcmNoRmllbGQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgcXVlcnlIYW5kbGVyKHF1ZXJ5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBxdWVyeT8udHJpbSgpIHx8ICcnO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBzZWFyY2hCeSgpOiBTdHJpbmdpZnlGbjx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdENvbnRyb2xsZXI/LnN0cmluZ2lmeSA/PyB0aGlzLnN0cmluZ2lmeTtcbiAgfVxufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2F1dG9jb21wbGV0ZS9zcmMvbGliL3BpcGVzL2F1dG9jb21wbGV0ZS1zZWFyY2gtZmlsdGVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRTVELE9BQU8sRUFBNEIsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFPOUQsTUFBTSxPQUFPLDRCQUFnQyxTQUFRLG9CQUF1QjtJQUw1RTs7UUFNcUIsbUJBQWMsR0FBRyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQWF0RjtJQVhDLElBQWMsV0FBVztRQUN2QixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsV0FBVyxDQUFDO0lBQzFDLENBQUM7SUFFUyxZQUFZLENBQUMsS0FBYTtRQUNsQyxPQUFPLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQWMsUUFBUTtRQUNwQixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUQsQ0FBQzs7eUhBYlUsNEJBQTRCO3VIQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFMeEMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsS0FBSztvQkFDWCxJQUFJLEVBQUUsNkJBQTZCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0cmluZ2lmeUZuIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IEJhc2VTZWFyY2hGaWVsZERpcmVjdGl2ZSwgQmFzZVNlYXJjaEZpbHRlclBpcGUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2F1dG9jb21wbGV0ZS1jb250cm9sJztcbmltcG9ydCB7IEFVVE9DT01QTEVURV9DT05UUk9MIH0gZnJvbSAnLi4vYXV0b2NvbXBsZXRlLnRva2Vucyc7XG5cbkBQaXBlKHtcbiAgcHVyZTogZmFsc2UsXG4gIG5hbWU6ICdvZHhBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXJQaXBlPFQ+IGV4dGVuZHMgQmFzZVNlYXJjaEZpbHRlclBpcGU8VD4gaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhvc3RDb250cm9sbGVyID0gaW5qZWN0KEFVVE9DT01QTEVURV9DT05UUk9MLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHByb3RlY3RlZCBnZXQgc2VhcmNoRmllbGQoKTogQmFzZVNlYXJjaEZpZWxkRGlyZWN0aXZlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5ob3N0Q29udHJvbGxlcj8uc2VhcmNoRmllbGQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgcXVlcnlIYW5kbGVyKHF1ZXJ5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBxdWVyeT8udHJpbSgpIHx8ICcnO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBzZWFyY2hCeSgpOiBTdHJpbmdpZnlGbjxUPiB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdENvbnRyb2xsZXI/LnN0cmluZ2lmeSA/PyB0aGlzLnN0cmluZ2lmeTtcbiAgfVxufVxuIl19